atomadic-forge 0.84.1__tar.gz → 0.87.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (487) hide show
  1. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/actions/forge-action/README.md +1 -1
  2. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/CHANGELOG.md +43 -22
  3. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/PKG-INFO +42 -30
  4. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/README.md +40 -28
  5. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/05-faq.md +7 -21
  6. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/AGENTS_GUIDE.md +45 -147
  7. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/CI_CD.md +9 -4
  8. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/CODEX_WALKTHROUGH.md +1 -1
  9. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/COMMANDS.md +39 -37
  10. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/FIRST_10_MINUTES.md +4 -3
  11. atomadic_forge-0.87.0/docs/FORGE_USAGE.md +37 -0
  12. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/FORMALIZATION.md +5 -5
  13. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/HIVE_STATUS.md +6 -1
  14. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/IDE_INTEGRATION.md +3 -1
  15. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/MCP_TOOLS.md +44 -22
  16. atomadic_forge-0.87.0/docs/README.md +55 -0
  17. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/RECEIPT.md +8 -5
  18. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/ROADMAP.md +3 -2
  19. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/V0.46.0_JUSTIFICATION_REPORT.md +1 -1
  20. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/V0.47.0_SELF_TEST_REPORT.md +1 -1
  21. atomadic_forge-0.87.0/docs/commands/welcome.md +15 -0
  22. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/handoffs/WORKER_AUTO_DEPLOY_2026-05-06.md +3 -3
  23. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/pyproject.toml +7 -7
  24. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/handoff_constants.py +6 -0
  25. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/hive_constants.py +17 -0
  26. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/schema_version_registry.py +5 -0
  27. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/welcome_constants.py +1 -1
  28. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/agent_context_pack.py +191 -2
  29. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/doc_auto_update.py +40 -118
  30. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/graft_extract_js.py +23 -3
  31. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/handoff_builder.py +5 -1
  32. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/mcp_protocol.py +141 -6
  33. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/recipes.py +71 -0
  34. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/recon_cache.py +70 -6
  35. atomadic_forge-0.87.0/src/atomadic_forge/a1_at_functions/repo_state_capsule.py +251 -0
  36. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/scout_walk.py +192 -62
  37. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/test_runner.py +1 -1
  38. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/welcome_narrator.py +52 -12
  39. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_metrics_feature.py +3 -5
  40. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_pipeline.py +43 -2
  41. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/handoff_feature.py +3 -0
  42. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/mcp_server.py +1 -0
  43. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/welcome_feature.py +118 -8
  44. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a4_sy_orchestration/cli.py +1 -1
  45. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/create.py +3 -3
  46. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/welcome.py +3 -0
  47. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/PKG-INFO +42 -30
  48. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/SOURCES.txt +3 -0
  49. atomadic_forge-0.87.0/tests/test_a_certify_smoke.py +31 -0
  50. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_codex_5_complete.py +1 -1
  51. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_copilots_copilot.py +146 -0
  52. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_doc_auto_update.py +62 -12
  53. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_handoff.py +127 -2
  54. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_hive_sync.py +24 -0
  55. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_mcp_protocol.py +139 -0
  56. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_pipeline.py +37 -0
  57. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_recon_cache.py +30 -0
  58. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_welcome.py +274 -0
  59. atomadic_forge-0.84.1/docs/README.md +0 -163
  60. atomadic_forge-0.84.1/docs/commands/welcome.md +0 -9
  61. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/FUNDING.yml +0 -0
  62. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  63. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  64. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  65. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/actions/forge-action/action.yml +0 -0
  66. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/dependabot.yml +0 -0
  67. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/pull_request_template.md +0 -0
  68. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/workflows/ci.yml +0 -0
  69. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/workflows/customer-refactor.yml +0 -0
  70. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/workflows/forge-self-certify.yml +0 -0
  71. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/workflows/mcp-registry-publish.yml +0 -0
  72. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/workflows/metrics-auto-regen.yml +0 -0
  73. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/workflows/metrics-drift.yml +0 -0
  74. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/workflows/publish-on-tag.yml +0 -0
  75. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/workflows/release-readiness.yml +0 -0
  76. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/workflows/release.yml +0 -0
  77. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/workflows/surface-drift.yml +0 -0
  78. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/.github/workflows/uptime.yml +0 -0
  79. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/ARCHITECTURE.md +0 -0
  80. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/CONTRIBUTING.md +0 -0
  81. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/LICENSE +0 -0
  82. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/MANIFEST.in +0 -0
  83. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/SECURITY.md +0 -0
  84. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/assets/Atomadic-Forge-01.png +0 -0
  85. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/01-getting-started.md +0 -0
  86. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/02-commands.md +0 -0
  87. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/03-tutorial.md +0 -0
  88. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/04-llm-loops.md +0 -0
  89. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/AIR_GAPPED.md +0 -0
  90. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/HIVE_PRIMITIVES.md +0 -0
  91. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/LANDSCAPE.md +0 -0
  92. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/MARKET_POSITIONING.md +0 -0
  93. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/MIGRATION.md +0 -0
  94. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/MULTI_REPO.md +0 -0
  95. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/PROVIDERS.md +0 -0
  96. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/RELAY_PROTOCOL.md +0 -0
  97. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/RELEASE_CHECKLIST.md +0 -0
  98. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/RELEASE_MESSAGING.md +0 -0
  99. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/SHOWCASE.md +0 -0
  100. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/SIDECAR.md +0 -0
  101. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/STUDIO.md +0 -0
  102. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/TOOL_FACTORY_WALKTHROUGH.md +0 -0
  103. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/WHY_NOW.md +0 -0
  104. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/WORKER_VS_LOCAL_MCP.md +0 -0
  105. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/WORLD_COLLISION.md +0 -0
  106. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/INDEX.md +0 -0
  107. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/absorb.md +0 -0
  108. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/audit.md +0 -0
  109. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/chat.md +0 -0
  110. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/commandsmith.md +0 -0
  111. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/config.md +0 -0
  112. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/create.md +0 -0
  113. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/demo.md +0 -0
  114. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/emergent-swarm.md +0 -0
  115. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/emergent-then-synergy.md +0 -0
  116. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/emergent.md +0 -0
  117. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/enhancement.md +0 -0
  118. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/evolve-then-iterate.md +0 -0
  119. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/evolve.md +0 -0
  120. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/feature-then-emergent.md +0 -0
  121. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/guard-install.md +0 -0
  122. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/handoff.md +0 -0
  123. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/harvest.md +0 -0
  124. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/hive.md +0 -0
  125. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/iterate.md +0 -0
  126. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/materialize.md +0 -0
  127. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/metrics.md +0 -0
  128. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/recon-swarm.md +0 -0
  129. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/relay.md +0 -0
  130. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/surface.md +0 -0
  131. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/synergy-then-emergent.md +0 -0
  132. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/synergy.md +0 -0
  133. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/commands/wisdom.md +0 -0
  134. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/compliance/CMMC_AI_MAPPING.md +0 -0
  135. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/compliance/CS-1.md +0 -0
  136. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/compliance/EU_AI_ACT_ANNEX_IV.md +0 -0
  137. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/compliance/FDA_PCCP_MAPPING.md +0 -0
  138. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/compliance/SR_11-7_MAPPING.md +0 -0
  139. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/tutorials/01-quickstart.md +0 -0
  140. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/tutorials/02-your-first-package.md +0 -0
  141. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/tutorials/03-the-five-tier-law.md +0 -0
  142. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/tutorials/04-plug-in-llms.md +0 -0
  143. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/tutorials/05-multi-repo-absorb.md +0 -0
  144. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/docs/tutorials/06-javascript-quickstart.md +0 -0
  145. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/setup.cfg +0 -0
  146. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/__init__.py +0 -0
  147. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/__main__.py +0 -0
  148. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/__init__.py +0 -0
  149. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/agent_plan_schema.py +0 -0
  150. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/auth_constants.py +0 -0
  151. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/commandsmith_types.py +0 -0
  152. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/config_defaults.py +0 -0
  153. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/emergent_types.py +0 -0
  154. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/enhancement_proposal_constants.py +0 -0
  155. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/error_codes.py +0 -0
  156. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/forge_types.py +0 -0
  157. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/gen_language.py +0 -0
  158. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/lang_extensions.py +0 -0
  159. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/lifetime_savings_constants.py +0 -0
  160. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/materialize_types.py +0 -0
  161. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/mhed_invariants.py +0 -0
  162. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/nexus_constants.py +0 -0
  163. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/policy_schema.py +0 -0
  164. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/receipt_schema.py +0 -0
  165. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/response_enrichment.py +0 -0
  166. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/roi_constants.py +0 -0
  167. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/semantic_types.py +0 -0
  168. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/sidecar_schema.py +0 -0
  169. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/synergy_types.py +0 -0
  170. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/tier_names.py +0 -0
  171. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/wisdom_constants.py +0 -0
  172. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/__init__.py +0 -0
  173. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/abstract_method_repair.py +0 -0
  174. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/agent_memory.py +0 -0
  175. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/agent_plan_emitter.py +0 -0
  176. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/agent_summary.py +0 -0
  177. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/ast_scope_lock.py +0 -0
  178. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/body_extractor.py +0 -0
  179. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/call_graph.py +0 -0
  180. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/capability_scout.py +0 -0
  181. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/card_renderer.py +0 -0
  182. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/certify_checks.py +0 -0
  183. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/chat_context.py +0 -0
  184. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/cherry_pick.py +0 -0
  185. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/classify_tier.py +0 -0
  186. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/closest_match.py +0 -0
  187. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/code_signature.py +0 -0
  188. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/commandsmith_discover.py +0 -0
  189. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/commandsmith_render.py +0 -0
  190. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/compiler_feedback.py +0 -0
  191. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/compliance_checker.py +0 -0
  192. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/config_io.py +0 -0
  193. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/cosine_similarity.py +0 -0
  194. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/cs1_renderer.py +0 -0
  195. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/custom_provider_client.py +0 -0
  196. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/dead_code_check.py +0 -0
  197. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/doc_synthesizer.py +0 -0
  198. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/emergent_compose.py +0 -0
  199. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/emergent_rank.py +0 -0
  200. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/emergent_signature_extract.py +0 -0
  201. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/emergent_synthesize.py +0 -0
  202. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/enforce_planner.py +0 -0
  203. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/enhancement_proposal_builder.py +0 -0
  204. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/error_hints.py +0 -0
  205. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/evolution_log.py +0 -0
  206. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/exported_api_check.py +0 -0
  207. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/forge_auth.py +0 -0
  208. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/forge_feedback.py +0 -0
  209. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/forge_locate.py +0 -0
  210. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/forge_metrics.py +0 -0
  211. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/generation_quality.py +0 -0
  212. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/git_churn.py +0 -0
  213. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/graft_extract.py +0 -0
  214. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/graft_extract_polyglot.py +0 -0
  215. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/harvest_absorb.py +0 -0
  216. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/harvest_concept_bridge.py +0 -0
  217. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/hive_consensus_math.py +0 -0
  218. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/hive_io.py +0 -0
  219. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/ifwc_fuzz.py +0 -0
  220. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/import_repair.py +0 -0
  221. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/import_smoke.py +0 -0
  222. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/intent_similarity.py +0 -0
  223. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/js_parser.py +0 -0
  224. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/levenshtein_distance.py +0 -0
  225. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/lifetime_savings.py +0 -0
  226. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/lineage_chain.py +0 -0
  227. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/lineage_reader.py +0 -0
  228. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/llm_client.py +0 -0
  229. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/local_signer.py +0 -0
  230. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/lsp_protocol.py +0 -0
  231. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/maintainability_index.py +0 -0
  232. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/manifest_diff.py +0 -0
  233. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/monadic_laws.py +0 -0
  234. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/patch_scorer.py +0 -0
  235. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/plan_adapter.py +0 -0
  236. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/policy_loader.py +0 -0
  237. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/polyglot_classify.py +0 -0
  238. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/polyglot_imports.py +0 -0
  239. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/polyglot_surface.py +0 -0
  240. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/preflight_change.py +0 -0
  241. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/progress_reporter.py +0 -0
  242. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/provider_detect.py +0 -0
  243. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/provider_resolver.py +0 -0
  244. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/receipt_emitter.py +0 -0
  245. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/repo_explainer.py +0 -0
  246. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/repo_public_surface.py +0 -0
  247. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/research_note_distiller.py +0 -0
  248. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/response_enricher.py +0 -0
  249. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/roi_calculator.py +0 -0
  250. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/rollback_planner.py +0 -0
  251. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/sbom_emitter.py +0 -0
  252. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/scaffold_js.py +0 -0
  253. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/scaffold_polyglot.py +0 -0
  254. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/scaffold_pyproject.py +0 -0
  255. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/scaffold_starter.py +0 -0
  256. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/sidecar_parser.py +0 -0
  257. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/sidecar_validator.py +0 -0
  258. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/smell_scan.py +0 -0
  259. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/steersman_pack.py +0 -0
  260. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/stub_detector.py +0 -0
  261. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/surface_gap_check.py +0 -0
  262. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/synergy_detect.py +0 -0
  263. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/synergy_render.py +0 -0
  264. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/synergy_surface_extract.py +0 -0
  265. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/test_selector.py +0 -0
  266. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/tier_init_rebuild.py +0 -0
  267. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/tool_composer.py +0 -0
  268. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/transcript_log.py +0 -0
  269. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/trust_gate_response.py +0 -0
  270. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/validation_commands.py +0 -0
  271. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wire_check.py +0 -0
  272. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wire_stubs_gen.py +0 -0
  273. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wisdom_capture.py +0 -0
  274. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wisdom_io.py +0 -0
  275. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wisdom_promote.py +0 -0
  276. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wisdom_recall.py +0 -0
  277. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/worktree_status.py +0 -0
  278. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/__init__.py +0 -0
  279. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/cost_circuit_breaker.py +0 -0
  280. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/cross_agent_intent_deduplicator.py +0 -0
  281. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/evolve_session_store.py +0 -0
  282. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/forge_auth_client.py +0 -0
  283. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/hierarchical_memory.py +0 -0
  284. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/iterate_session_store.py +0 -0
  285. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/lineage_chain_store.py +0 -0
  286. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/manifest_store.py +0 -0
  287. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/nexus_client.py +0 -0
  288. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/plan_store.py +0 -0
  289. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/receipt_signer.py +0 -0
  290. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/remote_seed_store.py +0 -0
  291. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/repo_public_surface_sync.py +0 -0
  292. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/__init__.py +0 -0
  293. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/absorb_feature.py +0 -0
  294. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/agent_hire_protocol.py +0 -0
  295. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/cherry_hunter.py +0 -0
  296. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/cna_check.py +0 -0
  297. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/commandsmith_feature.py +0 -0
  298. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/commit_compose.py +0 -0
  299. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/create_feature.py +0 -0
  300. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/dedup_engine.py +0 -0
  301. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/demo_packages/mixed_py_js/src/mixed_pkg/__init__.py +0 -0
  302. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/demo_packages/mixed_py_js/src/mixed_pkg/a0_qk_constants/__init__.py +0 -0
  303. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/demo_packages/mixed_py_js/src/mixed_pkg/a1_at_functions/__init__.py +0 -0
  304. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/demo_packages/mixed_py_js/tests/conftest.py +0 -0
  305. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/demo_packages/mixed_py_js/tests/test_mixed.py +0 -0
  306. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/demo_runner.py +0 -0
  307. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/emergent_feature.py +0 -0
  308. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/emergent_pipeline_integration.py +0 -0
  309. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/emergent_swarm.py +0 -0
  310. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/enhancement_proposal_feature.py +0 -0
  311. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_enforce.py +0 -0
  312. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_evolve.py +0 -0
  313. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_evolve_session.py +0 -0
  314. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_loop.py +0 -0
  315. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_loop_session.py +0 -0
  316. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_plan_apply.py +0 -0
  317. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/graft_feature.py +0 -0
  318. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/guard_install.py +0 -0
  319. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/hive_sync.py +0 -0
  320. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/lsp_server.py +0 -0
  321. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/materialize_feature.py +0 -0
  322. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/nexus_bridge.py +0 -0
  323. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/recipe_replay.py +0 -0
  324. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/relay_daemon.py +0 -0
  325. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/setup_wizard.py +0 -0
  326. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/surface_export.py +0 -0
  327. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/synergy_feature.py +0 -0
  328. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/tool_factory.py +0 -0
  329. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/verify_umbrella.py +0 -0
  330. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/wisdom_feature.py +0 -0
  331. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a4_sy_orchestration/__init__.py +0 -0
  332. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a4_sy_orchestration/copilots_cmd.py +0 -0
  333. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a4_sy_orchestration/login_cmd.py +0 -0
  334. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/a4_sy_orchestration/whoami_cmd.py +0 -0
  335. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/__init__.py +0 -0
  336. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/_monadic_laws_shared.py +0 -0
  337. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/_registry.py +0 -0
  338. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/absorb.py +0 -0
  339. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/aiom_check.py +0 -0
  340. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/audit.py +0 -0
  341. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/chat.py +0 -0
  342. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/commandsmith.py +0 -0
  343. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/config_cmd.py +0 -0
  344. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/demo.py +0 -0
  345. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/emergent.py +0 -0
  346. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/emergent_swarm.py +0 -0
  347. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/emergent_then_synergy.py +0 -0
  348. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/enhancement.py +0 -0
  349. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/evolve.py +0 -0
  350. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/evolve_then_iterate.py +0 -0
  351. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/feature_then_emergent.py +0 -0
  352. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/fingerprint.py +0 -0
  353. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/fuzz.py +0 -0
  354. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/graft.py +0 -0
  355. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/guard_install.py +0 -0
  356. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/handoff.py +0 -0
  357. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/harvest.py +0 -0
  358. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/hive.py +0 -0
  359. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/iterate.py +0 -0
  360. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/materialize.py +0 -0
  361. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/mcb_check.py +0 -0
  362. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/metrics.py +0 -0
  363. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/recon_swarm.py +0 -0
  364. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/relay.py +0 -0
  365. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/replay.py +0 -0
  366. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/surface.py +0 -0
  367. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/synergy.py +0 -0
  368. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/synergy_then_emergent.py +0 -0
  369. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/token_savings.py +0 -0
  370. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/wisdom.py +0 -0
  371. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/dependency_links.txt +0 -0
  372. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/entry_points.txt +0 -0
  373. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/requires.txt +0 -0
  374. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/top_level.txt +0 -0
  375. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_aaaa_nexus_client.py +0 -0
  376. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_abstract_method_repair.py +0 -0
  377. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_agent_hire_protocol.py +0 -0
  378. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_agent_plan.py +0 -0
  379. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_agent_plan_pkg_label.py +0 -0
  380. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_agent_summary.py +0 -0
  381. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_ast_scope_lock.py +0 -0
  382. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_audit_verb.py +0 -0
  383. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_body_extractor_repairs.py +0 -0
  384. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_call_graph_summary.py +0 -0
  385. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_capability_scout.py +0 -0
  386. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_card_renderer.py +0 -0
  387. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_certify_operational_axis.py +0 -0
  388. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_chat.py +0 -0
  389. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_cherry_dedup_class_methods.py +0 -0
  390. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_cherry_pick.py +0 -0
  391. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_classify_tier.py +0 -0
  392. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_classify_tier_ast_signals.py +0 -0
  393. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_cli_smoke.py +0 -0
  394. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_cli_swarm_aliases.py +0 -0
  395. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_codex_6_enforce_polyglot.py +0 -0
  396. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_commandsmith.py +0 -0
  397. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_compiler_feedback.py +0 -0
  398. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_compliance_checker.py +0 -0
  399. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_config.py +0 -0
  400. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_cost_circuit_breaker.py +0 -0
  401. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_create_feature.py +0 -0
  402. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_cs1_renderer.py +0 -0
  403. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_custom_provider.py +0 -0
  404. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_dead_code_check.py +0 -0
  405. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_dedup_engine.py +0 -0
  406. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_demo.py +0 -0
  407. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_emergent_compose.py +0 -0
  408. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_emergent_signature_extract.py +0 -0
  409. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_emergent_synthesize_imports.py +0 -0
  410. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_enhancement_proposal.py +0 -0
  411. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_error_codes.py +0 -0
  412. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_error_hints.py +0 -0
  413. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_evolve_js.py +0 -0
  414. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_exported_api_check.py +0 -0
  415. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_finalize_scaffold.py +0 -0
  416. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_forge_action.py +0 -0
  417. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_forge_auth_a1.py +0 -0
  418. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_forge_auth_a2.py +0 -0
  419. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_forge_enforce.py +0 -0
  420. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_generation_quality.py +0 -0
  421. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_git_churn.py +0 -0
  422. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_graft_feature.py +0 -0
  423. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_graft_js.py +0 -0
  424. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_graft_polyglot.py +0 -0
  425. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_harvest_concept_bridge.py +0 -0
  426. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_harvest_source_warnings.py +0 -0
  427. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_hierarchical_memory.py +0 -0
  428. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_ifwc_fuzz.py +0 -0
  429. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_ignore_and_docs.py +0 -0
  430. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_import_smoke.py +0 -0
  431. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_iterate_evolve.py +0 -0
  432. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_js_certify.py +0 -0
  433. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_js_parser.py +0 -0
  434. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_js_recon.py +0 -0
  435. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_js_wire.py +0 -0
  436. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_lineage_chain.py +0 -0
  437. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_ling_provider.py +0 -0
  438. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_local_signer.py +0 -0
  439. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_lsp_protocol.py +0 -0
  440. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_maintainability_index.py +0 -0
  441. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_manifest_diff.py +0 -0
  442. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_materialize_feature.py +0 -0
  443. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_mcp_lazy_bootstrap.py +0 -0
  444. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_monadic_laws.py +0 -0
  445. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_nexus_bridge.py +0 -0
  446. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_ollama_client.py +0 -0
  447. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_plan_apply.py +0 -0
  448. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_polyglot_cli_mcp.py +0 -0
  449. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_polyglot_full_pipeline.py +0 -0
  450. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_polyglot_hardening.py +0 -0
  451. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_polyglot_swift_kotlin_go.py +0 -0
  452. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_polyglot_symbol_parity.py +0 -0
  453. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_pre_audit_smoke.py +0 -0
  454. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_precommit_hooks.py +0 -0
  455. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_progress_reporter.py +0 -0
  456. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_receipt_emitter.py +0 -0
  457. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_receipt_schema.py +0 -0
  458. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_receipt_signer.py +0 -0
  459. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_recipe_replay.py +0 -0
  460. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_remote_seed_store.py +0 -0
  461. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_repo_public_surface.py +0 -0
  462. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_response_enricher.py +0 -0
  463. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_roi_calculator.py +0 -0
  464. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_sbom_cmd_text_summary.py +0 -0
  465. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_sbom_emitter.py +0 -0
  466. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_scaffold.py +0 -0
  467. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_sidecar.py +0 -0
  468. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_sidecar_validate.py +0 -0
  469. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_smell_score_formula.py +0 -0
  470. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_stagnation.py +0 -0
  471. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_steersman_pack.py +0 -0
  472. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_stub_detector.py +0 -0
  473. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_surface_export.py +0 -0
  474. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_surface_gap_check.py +0 -0
  475. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_synergy.py +0 -0
  476. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_test_runner.py +0 -0
  477. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_tier_init_rebuild.py +0 -0
  478. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_token_savings_ledger.py +0 -0
  479. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_trust_gate_response.py +0 -0
  480. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_verify_suggested_recipe.py +0 -0
  481. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_welcome_enhancements.py +0 -0
  482. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_whoami_cmd.py +0 -0
  483. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_wire_certify.py +0 -0
  484. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_wire_stubs_gen.py +0 -0
  485. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_wire_suggest_repairs.py +0 -0
  486. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_wire_type_checking.py +0 -0
  487. {atomadic_forge-0.84.1 → atomadic_forge-0.87.0}/tests/test_wisdom.py +0 -0
@@ -104,7 +104,7 @@ That's it. The action will:
104
104
 
105
105
  ╔══════════════════════════════════════════════════════════╗
106
106
  │ Atomadic Forge Receipt atomadic-forge.receipt/v1 │
107
- │ ✓ PASS forge 0.2.2
107
+ │ ✓ PASS forge x.y.z
108
108
  │ atomadic-forge │
109
109
  │ CERTIFY 100.0 / 100 │
110
110
  │ docs ✓ tests ✓ layout ✓ wire ✓ │
@@ -2,6 +2,27 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## v0.87.0 — 2026-05-10
6
+
7
+ - feat(context-pack): add a deterministic, token-budgeted `repo_map` and shared `repo_state` capsule so first-call agent context stays anchored without broad rescans
8
+ - feat(recon): add per-file recon-cache manifests and incremental merge logic so changed, removed, and rename-only file edits do not force full scout walks or return stale paths
9
+ - feat(welcome): reuse fresh scout artifacts when possible, default to structural-first certify for speed, and route non-PASS certify outcomes back to full `forge certify . --json`
10
+ - fix(docs): refresh registry metadata, agent docs, release guides, and usage docs so the published Forge surface matches 11 tools, 92 actions, 10 recipes, and the current release flow
11
+
12
+ ## v0.86.0 — 2026-05-09
13
+
14
+ - feat(mcp): add `inspect` tool — 10 schema-validated AST inspection actions split from explore's undocumented catch-all dispatch (body, symbol, class_signals, ast_scope_blueprint, mint_ast_locks, add_node, classify_repo_layout, fingerprint_repo, synthesis_plan, swarm_repo_specs)
15
+ - fix(metrics): remove `max()` inflation guard in `forge_metrics_feature.py` — mcp_action_count now reflects the live schema count (92) instead of holding an inflated historical value (116)
16
+ - chore(release): bump to v0.86.0; update forge_metrics.json (11 tools, 92 actions); update MCP_TOOLS.md and module docstring
17
+
18
+ ## v0.85.1 — 2026-05-09
19
+
20
+ - fix(certify): bump `run_pytest` default timeout from 60 s → 180 s so the full 1635-test suite completes on Windows without hitting the timeout gate
21
+ - fix(metrics): regenerate `forge_metrics.json` to v0.85.0 — cli_verb_count (79→84), test_file_count (122→123)
22
+ - fix(docs): wire stale action counts in README, WHITEPAPER, CLAUDE.md (78/64/79/112 actions → 116; CLI verbs 71/79 → 84)
23
+ - feat(readme): add "What Forge Does For You" section — token savings ledger, emergent scan, BYOLLM, enforcement-at-AI-velocity
24
+ - chore(swarm): verified recon_swarm + emergent_swarm fully wired in MCP explore tool; CLI verbs registered; real implementation confirmed
25
+
5
26
  ## v0.84.1 — 2026-05-08
6
27
 
7
28
  - fix(mcp): add missing `items` to `repos` and `queries` array schemas in `explore` tool — resolves VS Code MCP validator rejection
@@ -9,18 +30,18 @@
9
30
 
10
31
  ## v0.84.0 — 2026-05-08
11
32
 
12
- - feat(forge): v0.84 — full polyglot graft + dynamic capabilities SoT
33
+ - feat(forge): v0.84 full polyglot graft + dynamic capabilities SoT
13
34
 
14
35
 
15
36
  ## v0.83.0 — 2026-05-08
16
37
 
17
- - feat(forge): v0.83 — JS/TS graft support; arm Atomadic with capability transfer
38
+ - feat(forge): v0.83 JS/TS graft support; arm Atomadic with capability transfer
18
39
 
19
40
 
20
41
  ## v0.82.0 — 2026-05-08
21
42
 
22
- - feat(forge): v0.82 — graft sibling-ref auto-import + 2 grafted helpers
23
- - docs: README + CHANGELOG + docs/ updated for v0.76–v0.81
43
+ - feat(forge): v0.82 graft sibling-ref auto-import + 2 grafted helpers
44
+ - docs: README + CHANGELOG + docs/ updated for v0.76v0.81
24
45
 
25
46
 
26
47
  ## v0.81.0 — 2026-05-08
@@ -88,72 +109,72 @@
88
109
  ### Changed
89
110
 
90
111
  - 7f63594 feat(metrics): add repo public surface sync (GP Lane C W6)
91
- - d8ac951 docs: sync README + metrics for v0.75.0 — 300-seed proof banner
112
+ - d8ac951 docs: sync README + metrics for v0.75.0 300-seed proof banner
92
113
 
93
114
 
94
115
  ## v0.75.0 — 2026-05-08
95
116
 
96
- - docs: HARVEST_LEDGER — 🎯🎯🎯🎯 HOLY GRAIL: 300 SEEDS ABSORBED (v0.75.0)
117
+ - docs: HARVEST_LEDGER 🎯🎯🎯🎯 HOLY GRAIL: 300 SEEDS ABSORBED (v0.75.0)
97
118
 
98
119
 
99
120
  ## v0.74.0 — 2026-05-08
100
121
 
101
- - docs: HARVEST_LEDGER — 275 seeds (v0.74.0)
122
+ - docs: HARVEST_LEDGER 275 seeds (v0.74.0)
102
123
 
103
124
 
104
125
  ## v0.73.0 — 2026-05-08
105
126
 
106
- - docs: HARVEST_LEDGER — 🎯🎯🎯 QUARTER-THOUSAND: 250 SEEDS (v0.73.0)
127
+ - docs: HARVEST_LEDGER 🎯🎯🎯 QUARTER-THOUSAND: 250 SEEDS (v0.73.0)
107
128
 
108
129
 
109
130
  ## v0.72.0 — 2026-05-08
110
131
 
111
- - docs: HARVEST_LEDGER — v0.72.0 milestone, 225 seeds
132
+ - docs: HARVEST_LEDGER v0.72.0 milestone, 225 seeds
112
133
 
113
134
 
114
135
  ## v0.71.0 — 2026-05-08
115
136
 
116
- - docs: HARVEST_LEDGER — 🎯🎯 BICENTENNIAL: 200 SEEDS ABSORBED (v0.71.0)
137
+ - docs: HARVEST_LEDGER 🎯🎯 BICENTENNIAL: 200 SEEDS ABSORBED (v0.71.0)
117
138
 
118
139
 
119
140
  ## v0.70.0 — 2026-05-08
120
141
 
121
- - docs: HARVEST_LEDGER — 🎯 175-seed milestone (v0.70.0)
142
+ - docs: HARVEST_LEDGER 🎯 175-seed milestone (v0.70.0)
122
143
 
123
144
 
124
145
  ## v0.69.0 — 2026-05-08
125
146
 
126
- - docs: HARVEST_LEDGER — 🎯 150-seed milestone (v0.69.0)
147
+ - docs: HARVEST_LEDGER 🎯 150-seed milestone (v0.69.0)
127
148
 
128
149
 
129
150
  ## v0.68.0 — 2026-05-08
130
151
 
131
- - docs: HARVEST_LEDGER — 125-seed milestone (v0.68.0)
152
+ - docs: HARVEST_LEDGER 125-seed milestone (v0.68.0)
132
153
 
133
154
 
134
155
  ## v0.67.0 — 2026-05-08
135
156
 
136
- - docs: HARVEST_LEDGER — 🎯 century mark, 101 seeds absorbed
157
+ - docs: HARVEST_LEDGER 🎯 century mark, 101 seeds absorbed
137
158
 
138
159
 
139
160
  ## v0.66.0 — 2026-05-08
140
161
 
141
- - docs: HARVEST_LEDGER refresh — 97 absorbed, full domain coverage
162
+ - docs: HARVEST_LEDGER refresh 97 absorbed, full domain coverage
142
163
 
143
164
 
144
165
  ## v0.65.0 — 2026-05-08
145
166
 
146
- - docs: HARVEST_LEDGER refresh — 73 seeds, 31 at 100/100, 0 below 60
167
+ - docs: HARVEST_LEDGER refresh 73 seeds, 31 at 100/100, 0 below 60
147
168
 
148
169
 
149
170
  ## v0.64.0 — 2026-05-08
150
171
 
151
- - docs: HARVEST_LEDGER refresh — 50+ seeds, fastapi/cookiecutter/copier landed
172
+ - docs: HARVEST_LEDGER refresh 50+ seeds, fastapi/cookiecutter/copier landed
152
173
 
153
174
 
154
175
  ## v0.63.0 — 2026-05-08
155
176
 
156
- - docs: HARVEST_LEDGER.md — proof the prompt-to-shippable spec is met
177
+ - docs: HARVEST_LEDGER.md proof the prompt-to-shippable spec is met
157
178
 
158
179
 
159
180
  ## v0.62.0 — 2026-05-08
@@ -163,7 +184,7 @@
163
184
 
164
185
  ## v0.61.0 — 2026-05-08
165
186
 
166
- - fix(forge): close audit findings — doc-update schema drift + GAP-009/010 + CHANGELOG gate
187
+ - fix(forge): close audit findings doc-update schema drift + GAP-009/010 + CHANGELOG gate
167
188
 
168
189
 
169
190
  ## v0.60.0 — 2026-05-08 — Forge spec met: 100/100 absorbed packages + auto-repair
@@ -280,7 +301,7 @@
280
301
 
281
302
  ### Changed
282
303
 
283
- - 582dc31 fix(ci): repair v0.57.0 CI failures — metrics, changelog, surface
304
+ - 582dc31 fix(ci): repair v0.57.0 CI failures metrics, changelog, surface
284
305
 
285
306
 
286
307
  ## v0.57.0 — 2026-05-08
@@ -1240,7 +1261,7 @@ classifier is now a true polyglot architecture engine.
1240
1261
  cp1252 (was breaking ``make release`` step 2).
1241
1262
  - ``scripts/version-sync-check.sh`` — paths are now passed to embedded
1242
1263
  Python via ``sys.argv[1]`` instead of interpolated into source code,
1243
- so ``!!AtomadicStandard``-style paths can't be misread as Python
1264
+ so ``0_AtomadicStandard``-style paths can't be misread as Python
1244
1265
  escape sequences (was breaking the cross-repo sync check on Windows).
1245
1266
 
1246
1267
  ### Score
@@ -1335,7 +1356,7 @@ clean paths.
1335
1356
  and require an explicit ``scan`` subcommand. Both pipes now run
1336
1357
  end-to-end and emit producer-payload-keys summaries.
1337
1358
 
1338
- ### Stress-test evidence captured at C:\!!AtomadicStandard\Demo-Rehearsal\
1359
+ ### Stress-test evidence captured at C:\0_AtomadicStandard\Demo-Rehearsal\
1339
1360
 
1340
1361
  - ``forge welcome`` on three Python repos: 2635 / 1854 / 7592 symbols.
1341
1362
  - ``forge emergent_swarm`` across forge+langgraph+crewai: 16 cross-repo
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: atomadic-forge
3
- Version: 0.84.1
4
- Summary: Atomadic Forge absorb, enforce, emerge. Polyglot (Python · JavaScript/TypeScript · Rust · Go · Swift · Kotlin) architecture guardian for AI-generated code.
3
+ Version: 0.87.0
4
+ Summary: Atomadic Forge ? absorb, enforce, emerge. Polyglot (Python ? JavaScript/TypeScript ? Rust ? Go ? Swift ? Kotlin) architecture guardian for AI-generated code.
5
5
  Author: Atomadic
6
6
  License-Expression: BUSL-1.1
7
7
  Keywords: atomadic,ass-ade,monadic,architecture,forge,code-quality,ai,agents,javascript,typescript,polyglot
@@ -89,6 +89,24 @@ AI agents write code **10x faster** than humans can review it. Pattern violation
89
89
 
90
90
  ---
91
91
 
92
+ ## What Forge Does For You
93
+
94
+ Forge is an architecture enforcement engine, not a linter. It imposes deterministic structure on AI-generated code — and it ships proof that the structure holds.
95
+
96
+ - **Architectural drift stops here.** `forge auto` runs recon, detects every upward-import violation, re-tiers mislaid files, and emits a signed conformance receipt — all in one command. Validated against 300+ OSS repositories: Wire-PASS holds across the entire corpus.
97
+
98
+ - **Context overhead you can actually measure.** `forge context_pack` pre-bundles repo context into a single optimized payload for AI agents, cutting redundant re-reads. Every Forge verb logs its savings to a file-backed JSONL ledger at `<project>/.atomadic-forge/lifetime_savings.jsonl` — run `forge token-savings` to see the auditable running total, line by line.
99
+
100
+ - **Composition opportunities no human would find.** `forge emergent scan` performs cross-repo AST analysis to surface capability combinations that exist in your codebase but have never been wired together. Discovery is deterministic — no LLM guessing, no hallucination false positives.
101
+
102
+ - **One command: spaghetti to certified.** `forge auto` takes any Python, JS, TS, Rust, Go, Swift, or Kotlin repo from chaos to 5-tier-organized, 0 wire violations, 100/100 certify score. The before/after is not a demo — receipts are in [`HARVEST_LEDGER.md`](HARVEST_LEDGER.md).
103
+
104
+ - **Bring your own LLM — any of them.** OpenAI, Anthropic, Gemini, OpenRouter, Ollama, DeepSeek, Groq, Mistral, and 10+ more ship as built-in presets. Add any OpenAI-compatible endpoint with `forge config provider add`. No vendor lock-in, no rewiring required.
105
+
106
+ - **Enforcement that scales with AI output velocity.** Forge's tier-law scanner is pure AST — no LLM in the loop, no nondeterminism. Promote violations from advisory to `--fail-on-violations` and it becomes a hard CI gate. Architecture holds at the speed AI generates code.
107
+
108
+ ---
109
+
92
110
  ## Quick Start
93
111
 
94
112
  ```bash
@@ -192,11 +210,11 @@ Forge enforces a **5-tier monadic law** — every source file belongs to exactly
192
210
  | `forge plan` | Bounded execution plan with risk + rollback |
193
211
  | `forge chat` | Terminal copilot over forge docs |
194
212
 
195
- **79 CLI verbs total.** Full reference: [docs/02-commands.md](docs/02-commands.md)
213
+ Live CLI verb count: see [forge_metrics.json](forge_metrics.json). Full reference: [docs/02-commands.md](docs/02-commands.md)
196
214
 
197
215
  ---
198
216
 
199
- ## MCP Server — 10 Tools, 116 Actions
217
+ ## MCP Server
200
218
 
201
219
  Forge ships a Model Context Protocol server. Add it to Cursor, Claude Code, Aider, Devin, or any MCP-compatible agent:
202
220
 
@@ -211,20 +229,21 @@ Forge ships a Model Context Protocol server. Add it to Cursor, Claude Code, Aide
211
229
  }
212
230
  ```
213
231
 
214
- **10 tools, 116 actions locally.** All legacy tool names redirect automatically — existing callers keep working. Deployed Worker at [forge.atomadic.tech/mcp](https://forge.atomadic.tech/mcp). Listed in the [MCP Official Registry](https://registry.modelcontextprotocol.io/).
215
-
216
- | Tool | Actions | What it does |
217
- |------|---------|-------------|
218
- | `welcome` | | RECOMMENDED FIRST CALL: onboarding scan, score, narrative, capability tour |
219
- | `explore` | 17 | Analyze, understand, discover — recon/explain/call_graph/call_graph_summary/smell/lineage/harvest/synergy/scan/swarm/churn/surface_gaps/capability_scout/dead_code/maintainability/concept_bridge |
220
- | `audit` | 23 | Quality gates, change safety, trust |
221
- | `plan` | 10 | Orient + dev utilities — context/compose/policy/recipes/generate/apply/locate/commit/scaffold/steersman |
222
- | `transmute` | 3 | **FLAGSHIP** spaghetti→certified pipeline — auto/cherry/finalize |
223
- | `loop` | 4 | LLM iteration loops — iterate/resume/evolve/evolve_step |
224
- | `hive` | 13 | Multi-agent coordination — lifecycle, consensus, handoffs, enhancements |
225
- | `wisdom` | 5 | Institutional memory DB — record/query/list/recall/promote |
226
- | `nexus` | 7 | AAAA-Nexus auth primitives (uses `op=` not `action=`) — identity/federation/authorize/trust/contract/lineage/ratchet |
227
- | `create` | | Intent + seed repos shippable pip package (Phase 1 pipeline: emergent_swarm + materialize) |
232
+ Current live surface: see [surface.json](surface.json) and [forge_metrics.json](forge_metrics.json). All legacy tool names redirect automatically — existing callers keep working. Deployed Worker at [forge.atomadic.tech/mcp](https://forge.atomadic.tech/mcp). Listed in the [MCP Official Registry](https://registry.modelcontextprotocol.io/).
233
+
234
+ | Tool | Dispatch | What it does |
235
+ |------|----------|-------------|
236
+ | `welcome` | none | RECOMMENDED FIRST CALL: onboarding scan, score, narrative, capability tour |
237
+ | `explore` | `action=` | Analyze, understand, discover — recon/explain/call_graph/call_graph_summary/smell/lineage/harvest/synergy/scan/swarm/churn/surface_gaps/capability_scout/dead_code/maintainability/concept_bridge |
238
+ | `audit` | `action=` | Quality gates, change safety, trust |
239
+ | `plan` | `action=` | Orient + dev utilities — context/compose/policy/recipes/generate/apply/locate/commit/scaffold/steersman |
240
+ | `transmute` | `action=` | **FLAGSHIP** spaghetti→certified pipeline — auto/cherry/finalize |
241
+ | `loop` | `action=` | LLM iteration loops — iterate/resume/evolve/evolve_step |
242
+ | `hive` | `action=` | Multi-agent coordination — lifecycle, consensus, handoffs, enhancements |
243
+ | `wisdom` | `action=` | Institutional memory DB — record/query/list/recall/promote |
244
+ | `nexus` | `op=` | AAAA-Nexus auth primitives — identity/federation/authorize/trust/contract/lineage/ratchet |
245
+ | `inspect` | `action=` | Low-level AST inspection body/symbol/class_signals/ast_scope_blueprint/mint_ast_locks/add_node/classify_repo_layout/fingerprint_repo/synthesis_plan/swarm_repo_specs |
246
+ | `create` | none | Intent + seed repos → shippable pip package (Phase 1 pipeline: emergent_swarm + materialize) |
228
247
 
229
248
  > **Note:** `nexus` uses `op=` as its dispatch key instead of `action=` to avoid collision with the `authorize_action` operation's own `action` parameter that passes through to the Nexus API.
230
249
 
@@ -234,21 +253,14 @@ Full tool reference: [docs/MCP_TOOLS.md](docs/MCP_TOOLS.md) | First call: `welco
234
253
 
235
254
  ## By the Numbers
236
255
 
237
- > Every number below is a live read from [`forge_metrics.json`](forge_metrics.json) the canonical metrics artifact regenerated on every push by `forge metrics --apply`. CI fails any PR that lets the file drift.
256
+ > Live repo metrics come from [forge_metrics.json](forge_metrics.json). Live MCP surface shape and legacy redirects come from [surface.json](surface.json). Historical release counts stay in [CHANGELOG.md](CHANGELOG.md) and [receipts/](receipts/).
238
257
 
239
258
  | Metric | Value |
240
259
  |--------|-------|
241
260
 
242
- | MCP tools | **10 tools · 116 actions** |
243
- | CLI verbs | **79** |
244
- | Source files | **246** (~49K LOC) |
245
- | Tests | **1625 passing** across **121 test files** |
246
- | Lean4 formal proofs | **872 theorems** (mathematically verified core logic) |
247
- | Monadic tiers | **5** (a0 → a4, strict upward-only composition) |
248
- | Languages | Python, JS/TS, Swift, Kotlin, Go, Rust |
249
- | Infrastructure cost | **$5/mo** |
250
- | Self-score | **100/100** certify · 0 wire violations |
251
- | License | BSL 1.1 (Apache 2.0 after 2030-04-27) |
261
+ | Current version, CLI, source, test, and proof counts | [`forge_metrics.json`](forge_metrics.json) |
262
+ | Current MCP tools, actions, recipes, and legacy redirects | [`surface.json`](surface.json) |
263
+ | Historical release snapshots | [`CHANGELOG.md`](CHANGELOG.md), [`receipts/`](receipts/) |
252
264
 
253
265
  Forge eats its own cooking. Every CI run scores itself.
254
266
 
@@ -265,7 +277,7 @@ Forge eats its own cooking. Every CI run scores itself.
265
277
  |------|-------|-------------|
266
278
  | **Free** | $0 | OSS, 25 calls/day, read-only tools |
267
279
  | **One-Time Refactor** | ~~$149~~ **$99** | We run `auto` on your repo -> PR targeting 100/100. One revision included. |
268
- | **Starter** | $79/mo | All 10 tools (112 actions), 5k calls/mo, signed receipts, custom recipes |
280
+ | **Starter** | $79/mo | Full current Forge surface, 5k calls/mo, signed receipts, custom recipes |
269
281
  | **Pro** | $249/mo | + notarization, compliance attestations, cross-repo telemetry |
270
282
  | **Founding Member** | $999/yr | Everything. Forever. First 25 only. |
271
283
  | **Enterprise** | Custom | BSL commercial license, SSO, self-host, SLA |
@@ -57,6 +57,24 @@ AI agents write code **10x faster** than humans can review it. Pattern violation
57
57
 
58
58
  ---
59
59
 
60
+ ## What Forge Does For You
61
+
62
+ Forge is an architecture enforcement engine, not a linter. It imposes deterministic structure on AI-generated code — and it ships proof that the structure holds.
63
+
64
+ - **Architectural drift stops here.** `forge auto` runs recon, detects every upward-import violation, re-tiers mislaid files, and emits a signed conformance receipt — all in one command. Validated against 300+ OSS repositories: Wire-PASS holds across the entire corpus.
65
+
66
+ - **Context overhead you can actually measure.** `forge context_pack` pre-bundles repo context into a single optimized payload for AI agents, cutting redundant re-reads. Every Forge verb logs its savings to a file-backed JSONL ledger at `<project>/.atomadic-forge/lifetime_savings.jsonl` — run `forge token-savings` to see the auditable running total, line by line.
67
+
68
+ - **Composition opportunities no human would find.** `forge emergent scan` performs cross-repo AST analysis to surface capability combinations that exist in your codebase but have never been wired together. Discovery is deterministic — no LLM guessing, no hallucination false positives.
69
+
70
+ - **One command: spaghetti to certified.** `forge auto` takes any Python, JS, TS, Rust, Go, Swift, or Kotlin repo from chaos to 5-tier-organized, 0 wire violations, 100/100 certify score. The before/after is not a demo — receipts are in [`HARVEST_LEDGER.md`](HARVEST_LEDGER.md).
71
+
72
+ - **Bring your own LLM — any of them.** OpenAI, Anthropic, Gemini, OpenRouter, Ollama, DeepSeek, Groq, Mistral, and 10+ more ship as built-in presets. Add any OpenAI-compatible endpoint with `forge config provider add`. No vendor lock-in, no rewiring required.
73
+
74
+ - **Enforcement that scales with AI output velocity.** Forge's tier-law scanner is pure AST — no LLM in the loop, no nondeterminism. Promote violations from advisory to `--fail-on-violations` and it becomes a hard CI gate. Architecture holds at the speed AI generates code.
75
+
76
+ ---
77
+
60
78
  ## Quick Start
61
79
 
62
80
  ```bash
@@ -160,11 +178,11 @@ Forge enforces a **5-tier monadic law** — every source file belongs to exactly
160
178
  | `forge plan` | Bounded execution plan with risk + rollback |
161
179
  | `forge chat` | Terminal copilot over forge docs |
162
180
 
163
- **79 CLI verbs total.** Full reference: [docs/02-commands.md](docs/02-commands.md)
181
+ Live CLI verb count: see [forge_metrics.json](forge_metrics.json). Full reference: [docs/02-commands.md](docs/02-commands.md)
164
182
 
165
183
  ---
166
184
 
167
- ## MCP Server — 10 Tools, 116 Actions
185
+ ## MCP Server
168
186
 
169
187
  Forge ships a Model Context Protocol server. Add it to Cursor, Claude Code, Aider, Devin, or any MCP-compatible agent:
170
188
 
@@ -179,20 +197,21 @@ Forge ships a Model Context Protocol server. Add it to Cursor, Claude Code, Aide
179
197
  }
180
198
  ```
181
199
 
182
- **10 tools, 116 actions locally.** All legacy tool names redirect automatically — existing callers keep working. Deployed Worker at [forge.atomadic.tech/mcp](https://forge.atomadic.tech/mcp). Listed in the [MCP Official Registry](https://registry.modelcontextprotocol.io/).
183
-
184
- | Tool | Actions | What it does |
185
- |------|---------|-------------|
186
- | `welcome` | | RECOMMENDED FIRST CALL: onboarding scan, score, narrative, capability tour |
187
- | `explore` | 17 | Analyze, understand, discover — recon/explain/call_graph/call_graph_summary/smell/lineage/harvest/synergy/scan/swarm/churn/surface_gaps/capability_scout/dead_code/maintainability/concept_bridge |
188
- | `audit` | 23 | Quality gates, change safety, trust |
189
- | `plan` | 10 | Orient + dev utilities — context/compose/policy/recipes/generate/apply/locate/commit/scaffold/steersman |
190
- | `transmute` | 3 | **FLAGSHIP** spaghetti→certified pipeline — auto/cherry/finalize |
191
- | `loop` | 4 | LLM iteration loops — iterate/resume/evolve/evolve_step |
192
- | `hive` | 13 | Multi-agent coordination — lifecycle, consensus, handoffs, enhancements |
193
- | `wisdom` | 5 | Institutional memory DB — record/query/list/recall/promote |
194
- | `nexus` | 7 | AAAA-Nexus auth primitives (uses `op=` not `action=`) — identity/federation/authorize/trust/contract/lineage/ratchet |
195
- | `create` | | Intent + seed repos shippable pip package (Phase 1 pipeline: emergent_swarm + materialize) |
200
+ Current live surface: see [surface.json](surface.json) and [forge_metrics.json](forge_metrics.json). All legacy tool names redirect automatically — existing callers keep working. Deployed Worker at [forge.atomadic.tech/mcp](https://forge.atomadic.tech/mcp). Listed in the [MCP Official Registry](https://registry.modelcontextprotocol.io/).
201
+
202
+ | Tool | Dispatch | What it does |
203
+ |------|----------|-------------|
204
+ | `welcome` | none | RECOMMENDED FIRST CALL: onboarding scan, score, narrative, capability tour |
205
+ | `explore` | `action=` | Analyze, understand, discover — recon/explain/call_graph/call_graph_summary/smell/lineage/harvest/synergy/scan/swarm/churn/surface_gaps/capability_scout/dead_code/maintainability/concept_bridge |
206
+ | `audit` | `action=` | Quality gates, change safety, trust |
207
+ | `plan` | `action=` | Orient + dev utilities — context/compose/policy/recipes/generate/apply/locate/commit/scaffold/steersman |
208
+ | `transmute` | `action=` | **FLAGSHIP** spaghetti→certified pipeline — auto/cherry/finalize |
209
+ | `loop` | `action=` | LLM iteration loops — iterate/resume/evolve/evolve_step |
210
+ | `hive` | `action=` | Multi-agent coordination — lifecycle, consensus, handoffs, enhancements |
211
+ | `wisdom` | `action=` | Institutional memory DB — record/query/list/recall/promote |
212
+ | `nexus` | `op=` | AAAA-Nexus auth primitives — identity/federation/authorize/trust/contract/lineage/ratchet |
213
+ | `inspect` | `action=` | Low-level AST inspection body/symbol/class_signals/ast_scope_blueprint/mint_ast_locks/add_node/classify_repo_layout/fingerprint_repo/synthesis_plan/swarm_repo_specs |
214
+ | `create` | none | Intent + seed repos → shippable pip package (Phase 1 pipeline: emergent_swarm + materialize) |
196
215
 
197
216
  > **Note:** `nexus` uses `op=` as its dispatch key instead of `action=` to avoid collision with the `authorize_action` operation's own `action` parameter that passes through to the Nexus API.
198
217
 
@@ -202,21 +221,14 @@ Full tool reference: [docs/MCP_TOOLS.md](docs/MCP_TOOLS.md) | First call: `welco
202
221
 
203
222
  ## By the Numbers
204
223
 
205
- > Every number below is a live read from [`forge_metrics.json`](forge_metrics.json) the canonical metrics artifact regenerated on every push by `forge metrics --apply`. CI fails any PR that lets the file drift.
224
+ > Live repo metrics come from [forge_metrics.json](forge_metrics.json). Live MCP surface shape and legacy redirects come from [surface.json](surface.json). Historical release counts stay in [CHANGELOG.md](CHANGELOG.md) and [receipts/](receipts/).
206
225
 
207
226
  | Metric | Value |
208
227
  |--------|-------|
209
228
 
210
- | MCP tools | **10 tools · 116 actions** |
211
- | CLI verbs | **79** |
212
- | Source files | **246** (~49K LOC) |
213
- | Tests | **1625 passing** across **121 test files** |
214
- | Lean4 formal proofs | **872 theorems** (mathematically verified core logic) |
215
- | Monadic tiers | **5** (a0 → a4, strict upward-only composition) |
216
- | Languages | Python, JS/TS, Swift, Kotlin, Go, Rust |
217
- | Infrastructure cost | **$5/mo** |
218
- | Self-score | **100/100** certify · 0 wire violations |
219
- | License | BSL 1.1 (Apache 2.0 after 2030-04-27) |
229
+ | Current version, CLI, source, test, and proof counts | [`forge_metrics.json`](forge_metrics.json) |
230
+ | Current MCP tools, actions, recipes, and legacy redirects | [`surface.json`](surface.json) |
231
+ | Historical release snapshots | [`CHANGELOG.md`](CHANGELOG.md), [`receipts/`](receipts/) |
220
232
 
221
233
  Forge eats its own cooking. Every CI run scores itself.
222
234
 
@@ -233,7 +245,7 @@ Forge eats its own cooking. Every CI run scores itself.
233
245
  |------|-------|-------------|
234
246
  | **Free** | $0 | OSS, 25 calls/day, read-only tools |
235
247
  | **One-Time Refactor** | ~~$149~~ **$99** | We run `auto` on your repo -> PR targeting 100/100. One revision included. |
236
- | **Starter** | $79/mo | All 10 tools (112 actions), 5k calls/mo, signed receipts, custom recipes |
248
+ | **Starter** | $79/mo | Full current Forge surface, 5k calls/mo, signed receipts, custom recipes |
237
249
  | **Pro** | $249/mo | + notarization, compliance attestations, cross-repo telemetry |
238
250
  | **Founding Member** | $999/yr | Everything. Forever. First 25 only. |
239
251
  | **Enterprise** | Custom | BSL commercial license, SSO, self-host, SLA |
@@ -518,27 +518,13 @@ config:
518
518
  }
519
519
  ```
520
520
 
521
- Once registered (Forge ≥ v0.14.0a10), the agent gets **61 tools** + **5
522
- resources**. The 61 tools group into *inventory / utility* (`recon` /
523
- `wire` / `certify` / `verify` / `enforce` / `lineage` /
524
- `emergent_scan` / `emergent_swarm` / `synergy_scan` / `doctor` /
525
- `sidecar_validate` / `manifest_diff` / `call_graph` / `smell_scan` /
526
- `wisdom_record` + `wisdom_query` + `wisdom_list` + `wisdom_recall` /
527
- `surface`), *action loop* (`plan` / `plan_apply`), *Copilot's
528
- Copilot* (`context_pack` / `preflight_change` / `score_patch` /
529
- `select_tests` / `rollback_plan` / `explain_repo` / `compose_tools` /
530
- `load_policy` / `recipes` / `forge_locate` / `commit_compose` /
531
- `cna_check` / `trust_gate_response`), *transmuter / cross-repo*
532
- (`auto` / `cherry` / `finalize` / `iterate_start` /
533
- `iterate_continue` / `evolve_start` / `evolve_step` / `harvest` /
534
- `recon_swarm` / `tool_factory` / `guard_install`), *hive
535
- coordination* (`hive_register` / `hive_observe` / `hive_propose` /
536
- `hive_vote` / `hive_result` / `hive_list` / `hive_deactivate` /
537
- `hive_needs_vote` / `hive_recap` since v0.14.0a9–v0.14.0a10), and
538
- *AAAA-Nexus primitives* (`nexus_identity_verify` / `nexus_federation_mint` /
539
- `nexus_authorize_action` / `nexus_sys_trust_gate` / `nexus_contract_verify` /
540
- `nexus_lineage_record` / `nexus_ratchet_register` since v0.14.0a7).
541
- See the full **[Agents Guide](AGENTS_GUIDE.md)** for
521
+ Once registered, the agent gets the current live umbrella surface recorded in
522
+ [`../forge_metrics.json`](../forge_metrics.json) and [`surface.json`](../surface.json),
523
+ with legacy endpoint names resolving through `surface.json -> legacy_endpoint_map`.
524
+ For day-to-day work, agents mostly live in `welcome`, `explore`,
525
+ `audit`, and `plan`; the deeper lanes are `inspect`, `transmute`,
526
+ `loop`, `hive`, `wisdom`, `nexus`, and `create`. See the full
527
+ **[Agents Guide](AGENTS_GUIDE.md)** for
542
528
  integration patterns, the agent-friendly `context_pack` and
543
529
  `explain_repo` tools, the Forge Receipt schema agents should
544
530
  consume, F-code routing for mechanical fixes, the proposal-engine