atomadic-forge 0.83.0__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.83.0 → atomadic_forge-0.87.0}/.github/actions/forge-action/README.md +1 -1
  2. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/CHANGELOG.md +52 -21
  3. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/PKG-INFO +42 -30
  4. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/README.md +40 -28
  5. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/05-faq.md +7 -21
  6. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/AGENTS_GUIDE.md +45 -147
  7. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/CI_CD.md +9 -4
  8. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/CODEX_WALKTHROUGH.md +1 -1
  9. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/COMMANDS.md +39 -37
  10. {atomadic_forge-0.83.0 → 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.83.0 → atomadic_forge-0.87.0}/docs/FORMALIZATION.md +5 -5
  13. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/HIVE_STATUS.md +6 -1
  14. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/IDE_INTEGRATION.md +3 -1
  15. {atomadic_forge-0.83.0 → 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.83.0 → atomadic_forge-0.87.0}/docs/RECEIPT.md +8 -5
  18. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/ROADMAP.md +3 -2
  19. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/V0.46.0_JUSTIFICATION_REPORT.md +1 -1
  20. {atomadic_forge-0.83.0 → 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.83.0 → atomadic_forge-0.87.0}/docs/handoffs/WORKER_AUTO_DEPLOY_2026-05-06.md +3 -3
  23. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/pyproject.toml +7 -7
  24. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/handoff_constants.py +6 -0
  25. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/hive_constants.py +17 -0
  26. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/schema_version_registry.py +5 -0
  27. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/welcome_constants.py +1 -1
  28. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/agent_context_pack.py +191 -2
  29. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/doc_auto_update.py +40 -118
  30. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/graft_extract_js.py +23 -3
  31. atomadic_forge-0.87.0/src/atomadic_forge/a1_at_functions/graft_extract_polyglot.py +354 -0
  32. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/handoff_builder.py +5 -1
  33. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/mcp_protocol.py +143 -6
  34. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/recipes.py +71 -0
  35. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/recon_cache.py +70 -6
  36. atomadic_forge-0.87.0/src/atomadic_forge/a1_at_functions/repo_state_capsule.py +251 -0
  37. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/scout_walk.py +192 -62
  38. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/test_runner.py +1 -1
  39. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/welcome_narrator.py +52 -12
  40. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_metrics_feature.py +3 -5
  41. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_pipeline.py +43 -2
  42. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/graft_feature.py +155 -25
  43. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/handoff_feature.py +3 -0
  44. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/mcp_server.py +1 -0
  45. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/welcome_feature.py +118 -8
  46. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a4_sy_orchestration/cli.py +1 -1
  47. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/create.py +3 -3
  48. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/welcome.py +3 -0
  49. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/PKG-INFO +42 -30
  50. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/SOURCES.txt +5 -0
  51. atomadic_forge-0.87.0/tests/test_a_certify_smoke.py +31 -0
  52. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_codex_5_complete.py +1 -1
  53. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_copilots_copilot.py +146 -0
  54. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_doc_auto_update.py +62 -12
  55. atomadic_forge-0.87.0/tests/test_graft_polyglot.py +131 -0
  56. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_handoff.py +127 -2
  57. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_hive_sync.py +24 -0
  58. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_mcp_protocol.py +139 -0
  59. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_pipeline.py +37 -0
  60. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_recon_cache.py +30 -0
  61. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_welcome.py +274 -0
  62. atomadic_forge-0.83.0/docs/README.md +0 -163
  63. atomadic_forge-0.83.0/docs/commands/welcome.md +0 -9
  64. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/FUNDING.yml +0 -0
  65. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  66. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  67. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  68. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/actions/forge-action/action.yml +0 -0
  69. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/dependabot.yml +0 -0
  70. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/pull_request_template.md +0 -0
  71. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/workflows/ci.yml +0 -0
  72. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/workflows/customer-refactor.yml +0 -0
  73. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/workflows/forge-self-certify.yml +0 -0
  74. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/workflows/mcp-registry-publish.yml +0 -0
  75. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/workflows/metrics-auto-regen.yml +0 -0
  76. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/workflows/metrics-drift.yml +0 -0
  77. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/workflows/publish-on-tag.yml +0 -0
  78. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/workflows/release-readiness.yml +0 -0
  79. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/workflows/release.yml +0 -0
  80. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/workflows/surface-drift.yml +0 -0
  81. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/.github/workflows/uptime.yml +0 -0
  82. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/ARCHITECTURE.md +0 -0
  83. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/CONTRIBUTING.md +0 -0
  84. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/LICENSE +0 -0
  85. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/MANIFEST.in +0 -0
  86. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/SECURITY.md +0 -0
  87. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/assets/Atomadic-Forge-01.png +0 -0
  88. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/01-getting-started.md +0 -0
  89. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/02-commands.md +0 -0
  90. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/03-tutorial.md +0 -0
  91. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/04-llm-loops.md +0 -0
  92. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/AIR_GAPPED.md +0 -0
  93. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/HIVE_PRIMITIVES.md +0 -0
  94. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/LANDSCAPE.md +0 -0
  95. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/MARKET_POSITIONING.md +0 -0
  96. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/MIGRATION.md +0 -0
  97. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/MULTI_REPO.md +0 -0
  98. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/PROVIDERS.md +0 -0
  99. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/RELAY_PROTOCOL.md +0 -0
  100. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/RELEASE_CHECKLIST.md +0 -0
  101. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/RELEASE_MESSAGING.md +0 -0
  102. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/SHOWCASE.md +0 -0
  103. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/SIDECAR.md +0 -0
  104. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/STUDIO.md +0 -0
  105. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/TOOL_FACTORY_WALKTHROUGH.md +0 -0
  106. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/WHY_NOW.md +0 -0
  107. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/WORKER_VS_LOCAL_MCP.md +0 -0
  108. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/WORLD_COLLISION.md +0 -0
  109. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/INDEX.md +0 -0
  110. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/absorb.md +0 -0
  111. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/audit.md +0 -0
  112. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/chat.md +0 -0
  113. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/commandsmith.md +0 -0
  114. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/config.md +0 -0
  115. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/create.md +0 -0
  116. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/demo.md +0 -0
  117. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/emergent-swarm.md +0 -0
  118. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/emergent-then-synergy.md +0 -0
  119. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/emergent.md +0 -0
  120. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/enhancement.md +0 -0
  121. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/evolve-then-iterate.md +0 -0
  122. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/evolve.md +0 -0
  123. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/feature-then-emergent.md +0 -0
  124. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/guard-install.md +0 -0
  125. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/handoff.md +0 -0
  126. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/harvest.md +0 -0
  127. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/hive.md +0 -0
  128. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/iterate.md +0 -0
  129. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/materialize.md +0 -0
  130. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/metrics.md +0 -0
  131. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/recon-swarm.md +0 -0
  132. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/relay.md +0 -0
  133. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/surface.md +0 -0
  134. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/synergy-then-emergent.md +0 -0
  135. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/synergy.md +0 -0
  136. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/commands/wisdom.md +0 -0
  137. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/compliance/CMMC_AI_MAPPING.md +0 -0
  138. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/compliance/CS-1.md +0 -0
  139. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/compliance/EU_AI_ACT_ANNEX_IV.md +0 -0
  140. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/compliance/FDA_PCCP_MAPPING.md +0 -0
  141. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/compliance/SR_11-7_MAPPING.md +0 -0
  142. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/tutorials/01-quickstart.md +0 -0
  143. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/tutorials/02-your-first-package.md +0 -0
  144. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/tutorials/03-the-five-tier-law.md +0 -0
  145. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/tutorials/04-plug-in-llms.md +0 -0
  146. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/tutorials/05-multi-repo-absorb.md +0 -0
  147. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/docs/tutorials/06-javascript-quickstart.md +0 -0
  148. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/setup.cfg +0 -0
  149. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/__init__.py +0 -0
  150. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/__main__.py +0 -0
  151. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/__init__.py +0 -0
  152. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/agent_plan_schema.py +0 -0
  153. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/auth_constants.py +0 -0
  154. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/commandsmith_types.py +0 -0
  155. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/config_defaults.py +0 -0
  156. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/emergent_types.py +0 -0
  157. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/enhancement_proposal_constants.py +0 -0
  158. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/error_codes.py +0 -0
  159. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/forge_types.py +0 -0
  160. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/gen_language.py +0 -0
  161. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/lang_extensions.py +0 -0
  162. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/lifetime_savings_constants.py +0 -0
  163. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/materialize_types.py +0 -0
  164. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/mhed_invariants.py +0 -0
  165. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/nexus_constants.py +0 -0
  166. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/policy_schema.py +0 -0
  167. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/receipt_schema.py +0 -0
  168. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/response_enrichment.py +0 -0
  169. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/roi_constants.py +0 -0
  170. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/semantic_types.py +0 -0
  171. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/sidecar_schema.py +0 -0
  172. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/synergy_types.py +0 -0
  173. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/tier_names.py +0 -0
  174. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a0_qk_constants/wisdom_constants.py +0 -0
  175. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/__init__.py +0 -0
  176. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/abstract_method_repair.py +0 -0
  177. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/agent_memory.py +0 -0
  178. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/agent_plan_emitter.py +0 -0
  179. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/agent_summary.py +0 -0
  180. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/ast_scope_lock.py +0 -0
  181. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/body_extractor.py +0 -0
  182. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/call_graph.py +0 -0
  183. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/capability_scout.py +0 -0
  184. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/card_renderer.py +0 -0
  185. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/certify_checks.py +0 -0
  186. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/chat_context.py +0 -0
  187. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/cherry_pick.py +0 -0
  188. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/classify_tier.py +0 -0
  189. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/closest_match.py +0 -0
  190. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/code_signature.py +0 -0
  191. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/commandsmith_discover.py +0 -0
  192. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/commandsmith_render.py +0 -0
  193. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/compiler_feedback.py +0 -0
  194. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/compliance_checker.py +0 -0
  195. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/config_io.py +0 -0
  196. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/cosine_similarity.py +0 -0
  197. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/cs1_renderer.py +0 -0
  198. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/custom_provider_client.py +0 -0
  199. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/dead_code_check.py +0 -0
  200. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/doc_synthesizer.py +0 -0
  201. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/emergent_compose.py +0 -0
  202. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/emergent_rank.py +0 -0
  203. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/emergent_signature_extract.py +0 -0
  204. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/emergent_synthesize.py +0 -0
  205. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/enforce_planner.py +0 -0
  206. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/enhancement_proposal_builder.py +0 -0
  207. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/error_hints.py +0 -0
  208. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/evolution_log.py +0 -0
  209. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/exported_api_check.py +0 -0
  210. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/forge_auth.py +0 -0
  211. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/forge_feedback.py +0 -0
  212. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/forge_locate.py +0 -0
  213. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/forge_metrics.py +0 -0
  214. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/generation_quality.py +0 -0
  215. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/git_churn.py +0 -0
  216. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/graft_extract.py +0 -0
  217. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/harvest_absorb.py +0 -0
  218. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/harvest_concept_bridge.py +0 -0
  219. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/hive_consensus_math.py +0 -0
  220. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/hive_io.py +0 -0
  221. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/ifwc_fuzz.py +0 -0
  222. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/import_repair.py +0 -0
  223. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/import_smoke.py +0 -0
  224. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/intent_similarity.py +0 -0
  225. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/js_parser.py +0 -0
  226. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/levenshtein_distance.py +0 -0
  227. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/lifetime_savings.py +0 -0
  228. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/lineage_chain.py +0 -0
  229. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/lineage_reader.py +0 -0
  230. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/llm_client.py +0 -0
  231. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/local_signer.py +0 -0
  232. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/lsp_protocol.py +0 -0
  233. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/maintainability_index.py +0 -0
  234. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/manifest_diff.py +0 -0
  235. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/monadic_laws.py +0 -0
  236. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/patch_scorer.py +0 -0
  237. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/plan_adapter.py +0 -0
  238. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/policy_loader.py +0 -0
  239. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/polyglot_classify.py +0 -0
  240. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/polyglot_imports.py +0 -0
  241. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/polyglot_surface.py +0 -0
  242. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/preflight_change.py +0 -0
  243. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/progress_reporter.py +0 -0
  244. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/provider_detect.py +0 -0
  245. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/provider_resolver.py +0 -0
  246. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/receipt_emitter.py +0 -0
  247. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/repo_explainer.py +0 -0
  248. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/repo_public_surface.py +0 -0
  249. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/research_note_distiller.py +0 -0
  250. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/response_enricher.py +0 -0
  251. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/roi_calculator.py +0 -0
  252. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/rollback_planner.py +0 -0
  253. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/sbom_emitter.py +0 -0
  254. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/scaffold_js.py +0 -0
  255. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/scaffold_polyglot.py +0 -0
  256. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/scaffold_pyproject.py +0 -0
  257. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/scaffold_starter.py +0 -0
  258. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/sidecar_parser.py +0 -0
  259. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/sidecar_validator.py +0 -0
  260. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/smell_scan.py +0 -0
  261. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/steersman_pack.py +0 -0
  262. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/stub_detector.py +0 -0
  263. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/surface_gap_check.py +0 -0
  264. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/synergy_detect.py +0 -0
  265. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/synergy_render.py +0 -0
  266. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/synergy_surface_extract.py +0 -0
  267. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/test_selector.py +0 -0
  268. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/tier_init_rebuild.py +0 -0
  269. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/tool_composer.py +0 -0
  270. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/transcript_log.py +0 -0
  271. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/trust_gate_response.py +0 -0
  272. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/validation_commands.py +0 -0
  273. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wire_check.py +0 -0
  274. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wire_stubs_gen.py +0 -0
  275. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wisdom_capture.py +0 -0
  276. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wisdom_io.py +0 -0
  277. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wisdom_promote.py +0 -0
  278. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/wisdom_recall.py +0 -0
  279. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a1_at_functions/worktree_status.py +0 -0
  280. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/__init__.py +0 -0
  281. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/cost_circuit_breaker.py +0 -0
  282. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/cross_agent_intent_deduplicator.py +0 -0
  283. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/evolve_session_store.py +0 -0
  284. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/forge_auth_client.py +0 -0
  285. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/hierarchical_memory.py +0 -0
  286. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/iterate_session_store.py +0 -0
  287. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/lineage_chain_store.py +0 -0
  288. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/manifest_store.py +0 -0
  289. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/nexus_client.py +0 -0
  290. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/plan_store.py +0 -0
  291. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/receipt_signer.py +0 -0
  292. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/remote_seed_store.py +0 -0
  293. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a2_mo_composites/repo_public_surface_sync.py +0 -0
  294. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/__init__.py +0 -0
  295. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/absorb_feature.py +0 -0
  296. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/agent_hire_protocol.py +0 -0
  297. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/cherry_hunter.py +0 -0
  298. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/cna_check.py +0 -0
  299. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/commandsmith_feature.py +0 -0
  300. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/commit_compose.py +0 -0
  301. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/create_feature.py +0 -0
  302. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/dedup_engine.py +0 -0
  303. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/demo_packages/mixed_py_js/src/mixed_pkg/__init__.py +0 -0
  304. {atomadic_forge-0.83.0 → 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
  305. {atomadic_forge-0.83.0 → 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
  306. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/demo_packages/mixed_py_js/tests/conftest.py +0 -0
  307. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/demo_packages/mixed_py_js/tests/test_mixed.py +0 -0
  308. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/demo_runner.py +0 -0
  309. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/emergent_feature.py +0 -0
  310. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/emergent_pipeline_integration.py +0 -0
  311. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/emergent_swarm.py +0 -0
  312. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/enhancement_proposal_feature.py +0 -0
  313. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_enforce.py +0 -0
  314. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_evolve.py +0 -0
  315. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_evolve_session.py +0 -0
  316. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_loop.py +0 -0
  317. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_loop_session.py +0 -0
  318. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/forge_plan_apply.py +0 -0
  319. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/guard_install.py +0 -0
  320. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/hive_sync.py +0 -0
  321. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/lsp_server.py +0 -0
  322. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/materialize_feature.py +0 -0
  323. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/nexus_bridge.py +0 -0
  324. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/recipe_replay.py +0 -0
  325. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/relay_daemon.py +0 -0
  326. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/setup_wizard.py +0 -0
  327. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/surface_export.py +0 -0
  328. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/synergy_feature.py +0 -0
  329. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/tool_factory.py +0 -0
  330. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/verify_umbrella.py +0 -0
  331. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a3_og_features/wisdom_feature.py +0 -0
  332. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a4_sy_orchestration/__init__.py +0 -0
  333. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a4_sy_orchestration/copilots_cmd.py +0 -0
  334. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a4_sy_orchestration/login_cmd.py +0 -0
  335. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/a4_sy_orchestration/whoami_cmd.py +0 -0
  336. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/__init__.py +0 -0
  337. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/_monadic_laws_shared.py +0 -0
  338. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/_registry.py +0 -0
  339. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/absorb.py +0 -0
  340. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/aiom_check.py +0 -0
  341. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/audit.py +0 -0
  342. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/chat.py +0 -0
  343. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/commandsmith.py +0 -0
  344. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/config_cmd.py +0 -0
  345. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/demo.py +0 -0
  346. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/emergent.py +0 -0
  347. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/emergent_swarm.py +0 -0
  348. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/emergent_then_synergy.py +0 -0
  349. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/enhancement.py +0 -0
  350. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/evolve.py +0 -0
  351. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/evolve_then_iterate.py +0 -0
  352. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/feature_then_emergent.py +0 -0
  353. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/fingerprint.py +0 -0
  354. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/fuzz.py +0 -0
  355. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/graft.py +0 -0
  356. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/guard_install.py +0 -0
  357. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/handoff.py +0 -0
  358. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/harvest.py +0 -0
  359. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/hive.py +0 -0
  360. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/iterate.py +0 -0
  361. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/materialize.py +0 -0
  362. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/mcb_check.py +0 -0
  363. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/metrics.py +0 -0
  364. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/recon_swarm.py +0 -0
  365. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/relay.py +0 -0
  366. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/replay.py +0 -0
  367. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/surface.py +0 -0
  368. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/synergy.py +0 -0
  369. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/synergy_then_emergent.py +0 -0
  370. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/token_savings.py +0 -0
  371. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge/commands/wisdom.py +0 -0
  372. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/dependency_links.txt +0 -0
  373. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/entry_points.txt +0 -0
  374. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/requires.txt +0 -0
  375. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/src/atomadic_forge.egg-info/top_level.txt +0 -0
  376. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_aaaa_nexus_client.py +0 -0
  377. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_abstract_method_repair.py +0 -0
  378. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_agent_hire_protocol.py +0 -0
  379. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_agent_plan.py +0 -0
  380. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_agent_plan_pkg_label.py +0 -0
  381. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_agent_summary.py +0 -0
  382. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_ast_scope_lock.py +0 -0
  383. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_audit_verb.py +0 -0
  384. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_body_extractor_repairs.py +0 -0
  385. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_call_graph_summary.py +0 -0
  386. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_capability_scout.py +0 -0
  387. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_card_renderer.py +0 -0
  388. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_certify_operational_axis.py +0 -0
  389. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_chat.py +0 -0
  390. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_cherry_dedup_class_methods.py +0 -0
  391. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_cherry_pick.py +0 -0
  392. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_classify_tier.py +0 -0
  393. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_classify_tier_ast_signals.py +0 -0
  394. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_cli_smoke.py +0 -0
  395. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_cli_swarm_aliases.py +0 -0
  396. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_codex_6_enforce_polyglot.py +0 -0
  397. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_commandsmith.py +0 -0
  398. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_compiler_feedback.py +0 -0
  399. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_compliance_checker.py +0 -0
  400. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_config.py +0 -0
  401. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_cost_circuit_breaker.py +0 -0
  402. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_create_feature.py +0 -0
  403. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_cs1_renderer.py +0 -0
  404. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_custom_provider.py +0 -0
  405. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_dead_code_check.py +0 -0
  406. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_dedup_engine.py +0 -0
  407. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_demo.py +0 -0
  408. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_emergent_compose.py +0 -0
  409. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_emergent_signature_extract.py +0 -0
  410. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_emergent_synthesize_imports.py +0 -0
  411. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_enhancement_proposal.py +0 -0
  412. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_error_codes.py +0 -0
  413. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_error_hints.py +0 -0
  414. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_evolve_js.py +0 -0
  415. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_exported_api_check.py +0 -0
  416. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_finalize_scaffold.py +0 -0
  417. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_forge_action.py +0 -0
  418. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_forge_auth_a1.py +0 -0
  419. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_forge_auth_a2.py +0 -0
  420. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_forge_enforce.py +0 -0
  421. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_generation_quality.py +0 -0
  422. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_git_churn.py +0 -0
  423. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_graft_feature.py +0 -0
  424. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_graft_js.py +0 -0
  425. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_harvest_concept_bridge.py +0 -0
  426. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_harvest_source_warnings.py +0 -0
  427. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_hierarchical_memory.py +0 -0
  428. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_ifwc_fuzz.py +0 -0
  429. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_ignore_and_docs.py +0 -0
  430. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_import_smoke.py +0 -0
  431. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_iterate_evolve.py +0 -0
  432. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_js_certify.py +0 -0
  433. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_js_parser.py +0 -0
  434. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_js_recon.py +0 -0
  435. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_js_wire.py +0 -0
  436. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_lineage_chain.py +0 -0
  437. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_ling_provider.py +0 -0
  438. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_local_signer.py +0 -0
  439. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_lsp_protocol.py +0 -0
  440. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_maintainability_index.py +0 -0
  441. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_manifest_diff.py +0 -0
  442. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_materialize_feature.py +0 -0
  443. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_mcp_lazy_bootstrap.py +0 -0
  444. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_monadic_laws.py +0 -0
  445. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_nexus_bridge.py +0 -0
  446. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_ollama_client.py +0 -0
  447. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_plan_apply.py +0 -0
  448. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_polyglot_cli_mcp.py +0 -0
  449. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_polyglot_full_pipeline.py +0 -0
  450. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_polyglot_hardening.py +0 -0
  451. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_polyglot_swift_kotlin_go.py +0 -0
  452. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_polyglot_symbol_parity.py +0 -0
  453. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_pre_audit_smoke.py +0 -0
  454. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_precommit_hooks.py +0 -0
  455. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_progress_reporter.py +0 -0
  456. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_receipt_emitter.py +0 -0
  457. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_receipt_schema.py +0 -0
  458. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_receipt_signer.py +0 -0
  459. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_recipe_replay.py +0 -0
  460. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_remote_seed_store.py +0 -0
  461. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_repo_public_surface.py +0 -0
  462. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_response_enricher.py +0 -0
  463. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_roi_calculator.py +0 -0
  464. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_sbom_cmd_text_summary.py +0 -0
  465. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_sbom_emitter.py +0 -0
  466. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_scaffold.py +0 -0
  467. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_sidecar.py +0 -0
  468. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_sidecar_validate.py +0 -0
  469. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_smell_score_formula.py +0 -0
  470. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_stagnation.py +0 -0
  471. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_steersman_pack.py +0 -0
  472. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_stub_detector.py +0 -0
  473. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_surface_export.py +0 -0
  474. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_surface_gap_check.py +0 -0
  475. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_synergy.py +0 -0
  476. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_test_runner.py +0 -0
  477. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_tier_init_rebuild.py +0 -0
  478. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_token_savings_ledger.py +0 -0
  479. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_trust_gate_response.py +0 -0
  480. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_verify_suggested_recipe.py +0 -0
  481. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_welcome_enhancements.py +0 -0
  482. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_whoami_cmd.py +0 -0
  483. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_wire_certify.py +0 -0
  484. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_wire_stubs_gen.py +0 -0
  485. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_wire_suggest_repairs.py +0 -0
  486. {atomadic_forge-0.83.0 → atomadic_forge-0.87.0}/tests/test_wire_type_checking.py +0 -0
  487. {atomadic_forge-0.83.0 → 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,15 +2,46 @@
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
+
26
+ ## v0.84.1 — 2026-05-08
27
+
28
+ - fix(mcp): add missing `items` to `repos` and `queries` array schemas in `explore` tool — resolves VS Code MCP validator rejection
29
+
30
+
31
+ ## v0.84.0 — 2026-05-08
32
+
33
+ - feat(forge): v0.84 — full polyglot graft + dynamic capabilities SoT
34
+
35
+
5
36
  ## v0.83.0 — 2026-05-08
6
37
 
7
- - 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
8
39
 
9
40
 
10
41
  ## v0.82.0 — 2026-05-08
11
42
 
12
- - feat(forge): v0.82 — graft sibling-ref auto-import + 2 grafted helpers
13
- - 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
14
45
 
15
46
 
16
47
  ## v0.81.0 — 2026-05-08
@@ -78,72 +109,72 @@
78
109
  ### Changed
79
110
 
80
111
  - 7f63594 feat(metrics): add repo public surface sync (GP Lane C W6)
81
- - 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
82
113
 
83
114
 
84
115
  ## v0.75.0 — 2026-05-08
85
116
 
86
- - docs: HARVEST_LEDGER — 🎯🎯🎯🎯 HOLY GRAIL: 300 SEEDS ABSORBED (v0.75.0)
117
+ - docs: HARVEST_LEDGER 🎯🎯🎯🎯 HOLY GRAIL: 300 SEEDS ABSORBED (v0.75.0)
87
118
 
88
119
 
89
120
  ## v0.74.0 — 2026-05-08
90
121
 
91
- - docs: HARVEST_LEDGER — 275 seeds (v0.74.0)
122
+ - docs: HARVEST_LEDGER 275 seeds (v0.74.0)
92
123
 
93
124
 
94
125
  ## v0.73.0 — 2026-05-08
95
126
 
96
- - docs: HARVEST_LEDGER — 🎯🎯🎯 QUARTER-THOUSAND: 250 SEEDS (v0.73.0)
127
+ - docs: HARVEST_LEDGER 🎯🎯🎯 QUARTER-THOUSAND: 250 SEEDS (v0.73.0)
97
128
 
98
129
 
99
130
  ## v0.72.0 — 2026-05-08
100
131
 
101
- - docs: HARVEST_LEDGER — v0.72.0 milestone, 225 seeds
132
+ - docs: HARVEST_LEDGER v0.72.0 milestone, 225 seeds
102
133
 
103
134
 
104
135
  ## v0.71.0 — 2026-05-08
105
136
 
106
- - docs: HARVEST_LEDGER — 🎯🎯 BICENTENNIAL: 200 SEEDS ABSORBED (v0.71.0)
137
+ - docs: HARVEST_LEDGER 🎯🎯 BICENTENNIAL: 200 SEEDS ABSORBED (v0.71.0)
107
138
 
108
139
 
109
140
  ## v0.70.0 — 2026-05-08
110
141
 
111
- - docs: HARVEST_LEDGER — 🎯 175-seed milestone (v0.70.0)
142
+ - docs: HARVEST_LEDGER 🎯 175-seed milestone (v0.70.0)
112
143
 
113
144
 
114
145
  ## v0.69.0 — 2026-05-08
115
146
 
116
- - docs: HARVEST_LEDGER — 🎯 150-seed milestone (v0.69.0)
147
+ - docs: HARVEST_LEDGER 🎯 150-seed milestone (v0.69.0)
117
148
 
118
149
 
119
150
  ## v0.68.0 — 2026-05-08
120
151
 
121
- - docs: HARVEST_LEDGER — 125-seed milestone (v0.68.0)
152
+ - docs: HARVEST_LEDGER 125-seed milestone (v0.68.0)
122
153
 
123
154
 
124
155
  ## v0.67.0 — 2026-05-08
125
156
 
126
- - docs: HARVEST_LEDGER — 🎯 century mark, 101 seeds absorbed
157
+ - docs: HARVEST_LEDGER 🎯 century mark, 101 seeds absorbed
127
158
 
128
159
 
129
160
  ## v0.66.0 — 2026-05-08
130
161
 
131
- - docs: HARVEST_LEDGER refresh — 97 absorbed, full domain coverage
162
+ - docs: HARVEST_LEDGER refresh 97 absorbed, full domain coverage
132
163
 
133
164
 
134
165
  ## v0.65.0 — 2026-05-08
135
166
 
136
- - 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
137
168
 
138
169
 
139
170
  ## v0.64.0 — 2026-05-08
140
171
 
141
- - docs: HARVEST_LEDGER refresh — 50+ seeds, fastapi/cookiecutter/copier landed
172
+ - docs: HARVEST_LEDGER refresh 50+ seeds, fastapi/cookiecutter/copier landed
142
173
 
143
174
 
144
175
  ## v0.63.0 — 2026-05-08
145
176
 
146
- - 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
147
178
 
148
179
 
149
180
  ## v0.62.0 — 2026-05-08
@@ -153,7 +184,7 @@
153
184
 
154
185
  ## v0.61.0 — 2026-05-08
155
186
 
156
- - 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
157
188
 
158
189
 
159
190
  ## v0.60.0 — 2026-05-08 — Forge spec met: 100/100 absorbed packages + auto-repair
@@ -270,7 +301,7 @@
270
301
 
271
302
  ### Changed
272
303
 
273
- - 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
274
305
 
275
306
 
276
307
  ## v0.57.0 — 2026-05-08
@@ -1230,7 +1261,7 @@ classifier is now a true polyglot architecture engine.
1230
1261
  cp1252 (was breaking ``make release`` step 2).
1231
1262
  - ``scripts/version-sync-check.sh`` — paths are now passed to embedded
1232
1263
  Python via ``sys.argv[1]`` instead of interpolated into source code,
1233
- so ``!!AtomadicStandard``-style paths can't be misread as Python
1264
+ so ``0_AtomadicStandard``-style paths can't be misread as Python
1234
1265
  escape sequences (was breaking the cross-repo sync check on Windows).
1235
1266
 
1236
1267
  ### Score
@@ -1325,7 +1356,7 @@ clean paths.
1325
1356
  and require an explicit ``scan`` subcommand. Both pipes now run
1326
1357
  end-to-end and emit producer-payload-keys summaries.
1327
1358
 
1328
- ### Stress-test evidence captured at C:\!!AtomadicStandard\Demo-Rehearsal\
1359
+ ### Stress-test evidence captured at C:\0_AtomadicStandard\Demo-Rehearsal\
1329
1360
 
1330
1361
  - ``forge welcome`` on three Python repos: 2635 / 1854 / 7592 symbols.
1331
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.83.0
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