@event4u/agent-config 8.4.0 → 8.5.0

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 (682) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +73 -0
  3. package/README.md +17 -5
  4. package/dist/agent-src/README.md +1 -1
  5. package/dist/agent-src/commands/{analyze-reference-repo.md → analyze/reference-repo.md} +3 -1
  6. package/dist/agent-src/commands/analyze.md +9 -6
  7. package/dist/agent-src/commands/{bug-fix.md → bug/fix.md} +3 -1
  8. package/dist/agent-src/commands/{bug-investigate.md → bug/investigate.md} +4 -2
  9. package/dist/agent-src/commands/bug.md +59 -0
  10. package/dist/agent-src/commands/{set-cost-profile.md → cost/profile.md} +9 -6
  11. package/dist/agent-src/commands/{cost-report.md → cost/report.md} +18 -17
  12. package/dist/agent-src/commands/cost.md +57 -0
  13. package/dist/agent-src/commands/evals/{review-changes.json → review.json} +12 -8
  14. package/dist/agent-src/commands/{quality-fix.md → fix/quality.md} +5 -2
  15. package/dist/agent-src/commands/fix.md +7 -4
  16. package/dist/agent-src/commands/optimize/project.md +250 -0
  17. package/dist/agent-src/commands/{optimize-prompt.md → optimize/prompt.md} +3 -2
  18. package/dist/agent-src/commands/optimize.md +17 -12
  19. package/dist/agent-src/commands/{package-reset.md → package/reset.md} +2 -0
  20. package/dist/agent-src/commands/{package-test.md → package/test.md} +3 -1
  21. package/dist/agent-src/commands/package.md +56 -0
  22. package/dist/agent-src/commands/{project-analyze.md → project/analyze.md} +10 -8
  23. package/dist/agent-src/commands/{project-health.md → project/health.md} +2 -0
  24. package/dist/agent-src/commands/project.md +60 -0
  25. package/dist/agent-src/commands/{review-changes.md → review/changes.md} +26 -24
  26. package/dist/agent-src/commands/{review-routing.md → review/routing.md} +21 -17
  27. package/dist/agent-src/commands/review.md +61 -0
  28. package/dist/agent-src/commands/security-audit-config.md +24 -23
  29. package/dist/agent-src/commands/{sync-agent-settings.md → sync/agent-settings.md} +11 -7
  30. package/dist/agent-src/commands/{sync-gitignore → sync/gitignore}/fix.md +36 -27
  31. package/dist/agent-src/commands/{sync-gitignore.md → sync/gitignore.md} +22 -21
  32. package/dist/agent-src/commands/sync.md +58 -0
  33. package/dist/agent-src/commands/{e2e-heal.md → tests/e2e-heal.md} +5 -2
  34. package/dist/agent-src/commands/{e2e-plan.md → tests/e2e-plan.md} +5 -2
  35. package/dist/agent-src/commands/tests.md +11 -5
  36. package/dist/agent-src/contexts/augment-infrastructure.md +3 -3
  37. package/dist/agent-src/contexts/execution/toolchain-resolver.md +1 -1
  38. package/dist/agent-src/contexts/skills-and-commands.md +2 -2
  39. package/dist/agent-src/rules/external-reference-deep-dive.md +1 -1
  40. package/dist/agent-src/skills/finishing-a-development-branch/SKILL.md +2 -2
  41. package/dist/agent-src/skills/judge-artifact-completeness/SKILL.md +1 -1
  42. package/dist/agent-src/skills/judge-bug-hunter/SKILL.md +1 -1
  43. package/dist/agent-src/skills/judge-code-quality/SKILL.md +1 -1
  44. package/dist/agent-src/skills/judge-security-auditor/SKILL.md +1 -1
  45. package/dist/agent-src/skills/judge-synthesis/SKILL.md +1 -1
  46. package/dist/agent-src/skills/judge-test-coverage/SKILL.md +1 -1
  47. package/dist/agent-src/skills/markitdown/SKILL.md +1 -1
  48. package/dist/agent-src/skills/mobile-e2e-strategy/SKILL.md +5 -5
  49. package/dist/agent-src/skills/prompt-optimizer/SKILL.md +2 -2
  50. package/dist/agent-src/skills/quality-tools/SKILL.md +1 -1
  51. package/dist/agent-src/skills/repomix-packer/SKILL.md +1 -1
  52. package/dist/agent-src/skills/requesting-code-review/SKILL.md +2 -2
  53. package/dist/agent-src/skills/verify-repair-loop/SKILL.md +2 -2
  54. package/dist/agent-src/templates/agent-settings.md +1 -1
  55. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +2 -2
  56. package/dist/agent-src/templates/scripts/work_engine/stack/runner.ts +1 -1
  57. package/dist/cli/commands/config.js +44 -0
  58. package/dist/cli/commands/config.js.map +1 -0
  59. package/dist/cli/commands/uiServe.js +1 -0
  60. package/dist/cli/commands/uiServe.js.map +1 -1
  61. package/dist/cli/help.js +38 -0
  62. package/dist/cli/help.js.map +1 -0
  63. package/dist/cli/initRouting.js +16 -1
  64. package/dist/cli/initRouting.js.map +1 -1
  65. package/dist/cli/main.js +43 -37
  66. package/dist/cli/main.js.map +1 -1
  67. package/dist/cli/registry.js +45 -44
  68. package/dist/cli/registry.js.map +1 -1
  69. package/dist/discovery/deprecation-report.md +1 -1
  70. package/dist/discovery/discovery-manifest.json +419 -210
  71. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  72. package/dist/discovery/discovery-manifest.summary.md +4 -4
  73. package/dist/discovery/orphan-report.md +1 -1
  74. package/dist/discovery/packs.json +31 -25
  75. package/dist/discovery/trust-report.md +2 -2
  76. package/dist/discovery/workspaces.json +30 -24
  77. package/dist/install/install.mjs +6064 -159
  78. package/dist/install/selectedTools.js +39 -10
  79. package/dist/install/selectedTools.js.map +1 -1
  80. package/dist/mcp/registry-manifest.json +3 -3
  81. package/dist/server/app.js +15 -3
  82. package/dist/server/app.js.map +1 -1
  83. package/dist/server/routes/ping.js +16 -0
  84. package/dist/server/routes/ping.js.map +1 -1
  85. package/dist/server/routes/settings.js +42 -6
  86. package/dist/server/routes/settings.js.map +1 -1
  87. package/dist/server/routes/settingsChanges.js +55 -0
  88. package/dist/server/routes/settingsChanges.js.map +1 -0
  89. package/dist/server/routes/userMd.js +7 -2
  90. package/dist/server/routes/userMd.js.map +1 -1
  91. package/dist/server/routes/wizard.js +76 -14
  92. package/dist/server/routes/wizard.js.map +1 -1
  93. package/dist/server/writeRoot.js +17 -0
  94. package/dist/server/writeRoot.js.map +1 -1
  95. package/dist/shared/settingsSurface.js +120 -0
  96. package/dist/shared/settingsSurface.js.map +1 -0
  97. package/dist/ui/assets/index-BPFMZWUs.css +1 -0
  98. package/dist/ui/assets/index-BiEZiZ31.js +40 -0
  99. package/dist/ui/assets/index-BiEZiZ31.js.map +1 -0
  100. package/dist/ui/index.html +15 -2
  101. package/docs/CLAIMS.md +20 -15
  102. package/docs/architecture.md +1 -1
  103. package/docs/catalog.md +37 -31
  104. package/docs/command-flows.md +22 -16
  105. package/docs/contracts/command-clusters.md +39 -9
  106. package/docs/contracts/file-ownership-matrix.json +21 -0
  107. package/docs/contracts/frontmatter-contract.md +1 -1
  108. package/docs/contracts/gui-wizard.md +16 -4
  109. package/docs/contracts/iron-law-overrides.txt +1 -0
  110. package/docs/contracts/rule-classification.md +2 -2
  111. package/docs/contracts/settings-api.md +58 -2
  112. package/docs/contracts/surface-matrix.md +5 -0
  113. package/docs/cookbook.md +7 -7
  114. package/docs/decisions/ADR-114-commit-policy-iron-law-override.md +74 -0
  115. package/docs/decisions/ADR-115-command-cluster-consolidation-phase-4.md +91 -0
  116. package/docs/decisions/INDEX.md +2 -0
  117. package/docs/featured-commands.md +1 -1
  118. package/docs/featured-skills.md +4 -4
  119. package/docs/flows.md +2 -2
  120. package/docs/getting-started-by-role.md +1 -1
  121. package/docs/getting-started-laravel.md +1 -1
  122. package/docs/getting-started.md +6 -3
  123. package/docs/governance-advantage.md +1 -1
  124. package/docs/guidelines/agent-infra/5w2h-analysis.md +1 -1
  125. package/docs/guidelines/agent-infra/ios-simulator-guide.md +1 -1
  126. package/docs/proof.md +11 -2
  127. package/package.json +6 -1
  128. package/src/agent-src/README.md +64 -0
  129. package/src/agent-src/scripts/archive_completed_roadmaps.ts +497 -0
  130. package/src/agent-src/scripts/scan-seeder-violations.php +145 -0
  131. package/src/agent-src/scripts/update_roadmap_progress.ts +1087 -0
  132. package/src/agent-src/templates/AGENTS.md +34 -0
  133. package/src/agent-src/templates/scripts/README.md +195 -0
  134. package/src/agent-src/templates/scripts/check_memory.ts +662 -0
  135. package/src/agent-src/templates/scripts/check_memory_proposal.ts +370 -0
  136. package/src/agent-src/templates/scripts/historical-bug-patterns.example.yml +84 -0
  137. package/src/agent-src/templates/scripts/implement_ticket/__main__.ts +27 -0
  138. package/src/agent-src/templates/scripts/memory_hash.ts +355 -0
  139. package/src/agent-src/templates/scripts/memory_lookup.ts +1089 -0
  140. package/src/agent-src/templates/scripts/memory_report.ts +868 -0
  141. package/src/agent-src/templates/scripts/memory_signal.ts +444 -0
  142. package/src/agent-src/templates/scripts/memory_status.ts +215 -0
  143. package/src/agent-src/templates/scripts/ownership-map.example.yml +87 -0
  144. package/src/agent-src/templates/scripts/pr-risk-config.example.yml +76 -0
  145. package/src/agent-src/templates/scripts/pr_review_routing.ts +544 -0
  146. package/src/agent-src/templates/scripts/pr_risk_review.ts +0 -0
  147. package/src/agent-src/templates/scripts/telemetry/aggregator.ts +0 -0
  148. package/src/agent-src/templates/scripts/telemetry/boundary.ts +164 -0
  149. package/src/agent-src/templates/scripts/telemetry/engagement.ts +479 -0
  150. package/src/agent-src/templates/scripts/telemetry/report_renderer.ts +394 -0
  151. package/src/agent-src/templates/scripts/telemetry/settings.ts +210 -0
  152. package/src/agent-src/templates/scripts/telemetry_record.ts +276 -0
  153. package/src/agent-src/templates/scripts/telemetry_report.ts +211 -0
  154. package/src/agent-src/templates/scripts/telemetry_status.ts +333 -0
  155. package/src/agent-src/templates/scripts/tier_usage_report.ts +619 -0
  156. package/src/agent-src/templates/scripts/work_engine/__main__.ts +14 -0
  157. package/src/agent-src/templates/scripts/work_engine/_lib/agent_settings.ts +1261 -0
  158. package/src/agent-src/templates/scripts/work_engine/_lib/user_global_paths.ts +329 -0
  159. package/src/agent-src/templates/scripts/work_engine/cli.ts +206 -0
  160. package/src/agent-src/templates/scripts/work_engine/cli_args.ts +249 -0
  161. package/src/agent-src/templates/scripts/work_engine/delivery_state.ts +225 -0
  162. package/src/agent-src/templates/scripts/work_engine/directives/backend/analyze.ts +125 -0
  163. package/src/agent-src/templates/scripts/work_engine/directives/backend/implement.ts +189 -0
  164. package/src/agent-src/templates/scripts/work_engine/directives/backend/index.ts +94 -0
  165. package/src/agent-src/templates/scripts/work_engine/directives/backend/memory.ts +193 -0
  166. package/src/agent-src/templates/scripts/work_engine/directives/backend/plan.ts +267 -0
  167. package/src/agent-src/templates/scripts/work_engine/directives/backend/refine.ts +518 -0
  168. package/src/agent-src/templates/scripts/work_engine/directives/backend/report.ts +379 -0
  169. package/src/agent-src/templates/scripts/work_engine/directives/backend/test.ts +268 -0
  170. package/src/agent-src/templates/scripts/work_engine/directives/backend/verify.ts +258 -0
  171. package/src/agent-src/templates/scripts/work_engine/directives/index.ts +32 -0
  172. package/src/agent-src/templates/scripts/work_engine/directives/mixed/contract.ts +243 -0
  173. package/src/agent-src/templates/scripts/work_engine/directives/mixed/index.ts +108 -0
  174. package/src/agent-src/templates/scripts/work_engine/directives/mixed/stitch.ts +259 -0
  175. package/src/agent-src/templates/scripts/work_engine/directives/mixed/ui.ts +216 -0
  176. package/src/agent-src/templates/scripts/work_engine/directives/ui/_passthrough.ts +40 -0
  177. package/src/agent-src/templates/scripts/work_engine/directives/ui/app_spec.ts +241 -0
  178. package/src/agent-src/templates/scripts/work_engine/directives/ui/apply.ts +216 -0
  179. package/src/agent-src/templates/scripts/work_engine/directives/ui/audit.ts +506 -0
  180. package/src/agent-src/templates/scripts/work_engine/directives/ui/design.ts +325 -0
  181. package/src/agent-src/templates/scripts/work_engine/directives/ui/index.ts +102 -0
  182. package/src/agent-src/templates/scripts/work_engine/directives/ui/polish.ts +462 -0
  183. package/src/agent-src/templates/scripts/work_engine/directives/ui/review.ts +474 -0
  184. package/src/agent-src/templates/scripts/work_engine/directives/ui/scaffold.ts +352 -0
  185. package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/_skipped.ts +33 -0
  186. package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/apply.ts +213 -0
  187. package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/index.ts +111 -0
  188. package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/refine.ts +126 -0
  189. package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/report.ts +112 -0
  190. package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/test.ts +164 -0
  191. package/src/agent-src/templates/scripts/work_engine/dispatcher.ts +515 -0
  192. package/src/agent-src/templates/scripts/work_engine/emitters.ts +119 -0
  193. package/src/agent-src/templates/scripts/work_engine/errors.ts +24 -0
  194. package/src/agent-src/templates/scripts/work_engine/hook_bootstrap.ts +104 -0
  195. package/src/agent-src/templates/scripts/work_engine/hooks/builtin/_chat_history_base.ts +189 -0
  196. package/src/agent-src/templates/scripts/work_engine/hooks/builtin/chat_history_append.ts +41 -0
  197. package/src/agent-src/templates/scripts/work_engine/hooks/builtin/chat_history_halt_append.ts +89 -0
  198. package/src/agent-src/templates/scripts/work_engine/hooks/builtin/decision_gate.ts +193 -0
  199. package/src/agent-src/templates/scripts/work_engine/hooks/builtin/decision_trace.ts +304 -0
  200. package/src/agent-src/templates/scripts/work_engine/hooks/builtin/directive_set_guard.ts +110 -0
  201. package/src/agent-src/templates/scripts/work_engine/hooks/builtin/halt_surface_audit.ts +118 -0
  202. package/src/agent-src/templates/scripts/work_engine/hooks/builtin/index.ts +17 -0
  203. package/src/agent-src/templates/scripts/work_engine/hooks/builtin/memory_visibility.ts +161 -0
  204. package/src/agent-src/templates/scripts/work_engine/hooks/builtin/state_shape_validation.ts +45 -0
  205. package/src/agent-src/templates/scripts/work_engine/hooks/builtin/trace.ts +134 -0
  206. package/src/agent-src/templates/scripts/work_engine/hooks/context.ts +94 -0
  207. package/src/agent-src/templates/scripts/work_engine/hooks/events.ts +58 -0
  208. package/src/agent-src/templates/scripts/work_engine/hooks/exceptions.ts +85 -0
  209. package/src/agent-src/templates/scripts/work_engine/hooks/index.ts +27 -0
  210. package/src/agent-src/templates/scripts/work_engine/hooks/registry.ts +66 -0
  211. package/src/agent-src/templates/scripts/work_engine/hooks/runner.ts +90 -0
  212. package/src/agent-src/templates/scripts/work_engine/hooks/settings.ts +260 -0
  213. package/src/agent-src/templates/scripts/work_engine/input_builders.ts +260 -0
  214. package/src/agent-src/templates/scripts/work_engine/intent/classify.ts +466 -0
  215. package/src/agent-src/templates/scripts/work_engine/migration/v0_to_v1.ts +531 -0
  216. package/src/agent-src/templates/scripts/work_engine/orchestration.ts +366 -0
  217. package/src/agent-src/templates/scripts/work_engine/persona_policy.ts +97 -0
  218. package/src/agent-src/templates/scripts/work_engine/resolvers/diff.ts +135 -0
  219. package/src/agent-src/templates/scripts/work_engine/resolvers/file.ts +175 -0
  220. package/src/agent-src/templates/scripts/work_engine/resolvers/prompt.ts +115 -0
  221. package/src/agent-src/templates/scripts/work_engine/scoring/confidence.ts +415 -0
  222. package/src/agent-src/templates/scripts/work_engine/scoring/decision_engine.ts +466 -0
  223. package/src/agent-src/templates/scripts/work_engine/scoring/decision_trace.ts +298 -0
  224. package/src/agent-src/templates/scripts/work_engine/scoring/memory_visibility.ts +444 -0
  225. package/src/agent-src/templates/scripts/work_engine/stack/detect.ts +252 -0
  226. package/src/agent-src/templates/scripts/work_engine/stack/runner.ts +745 -0
  227. package/src/agent-src/templates/scripts/work_engine/state.ts +1151 -0
  228. package/src/agent-src/templates/scripts/work_engine/state_io.ts +413 -0
  229. package/src/config/agent-settings.template.yml +1 -1
  230. package/src/install/atomic.ts +111 -0
  231. package/src/install/conflict.ts +226 -0
  232. package/src/install/detect.ts +280 -0
  233. package/src/install/paths.ts +90 -0
  234. package/src/install/plan.ts +205 -0
  235. package/src/install/preflight.ts +210 -0
  236. package/src/install/selectedTools.ts +80 -0
  237. package/src/install/toolDetection.ts +120 -0
  238. package/src/install/txlog.ts +161 -0
  239. package/src/install/types.ts +175 -0
  240. package/src/install/wizard-plan.ts +216 -0
  241. package/src/scripts/_cli/cmd_converge.ts +38 -0
  242. package/src/scripts/_cli/cmd_doctor.ts +113 -2
  243. package/src/scripts/_cli/cmd_explain.ts +2 -2
  244. package/src/scripts/_cli/cmd_export.ts +3 -3
  245. package/src/scripts/_cli/cmd_fleet.ts +13 -1
  246. package/src/scripts/_cli/cmd_migrate.ts +3 -3
  247. package/src/scripts/_cli/cmd_prune.ts +2 -2
  248. package/src/scripts/_cli/cmd_refresh.ts +4 -4
  249. package/src/scripts/_cli/cmd_settings_check.ts +2 -2
  250. package/src/scripts/_cli/cmd_settings_migrate.ts +2 -2
  251. package/src/scripts/_cli/cmd_sync.ts +2 -2
  252. package/src/scripts/_cli/cmd_uninstall.ts +2 -2
  253. package/src/scripts/_cli/cmd_update.ts +8 -8
  254. package/src/scripts/_cli/cmd_upgrade.ts +4 -3
  255. package/src/scripts/_cli/cmd_validate.ts +3 -3
  256. package/src/scripts/_cli/cmd_versions.ts +2 -2
  257. package/src/scripts/_cli/explain_last/assumptions.ts +2 -2
  258. package/src/scripts/_cli/explain_last/council.ts +2 -2
  259. package/src/scripts/_cli/explain_last/halt.ts +2 -2
  260. package/src/scripts/_cli/explain_last/index.ts +2 -2
  261. package/src/scripts/_cli/explain_last/inputs.ts +4 -4
  262. package/src/scripts/_cli/explain_last/memory.ts +2 -2
  263. package/src/scripts/_cli/explain_last/provider.ts +2 -2
  264. package/src/scripts/_cli/explain_last/render.ts +2 -2
  265. package/src/scripts/_cli/explain_last/route.ts +2 -2
  266. package/src/scripts/_cli/explain_last/scrubber.ts +2 -2
  267. package/src/scripts/_cli/explain_last/sections/assumptions.ts +2 -2
  268. package/src/scripts/_cli/explain_last/sections/council.ts +2 -2
  269. package/src/scripts/_cli/explain_last/sections/halt.ts +2 -2
  270. package/src/scripts/_cli/explain_last/sections/header.ts +2 -2
  271. package/src/scripts/_cli/explain_last/sections/index.ts +1 -1
  272. package/src/scripts/_cli/explain_last/sections/inputs.ts +2 -2
  273. package/src/scripts/_cli/explain_last/sections/memory.ts +2 -2
  274. package/src/scripts/_cli/explain_last/sections/pack.ts +2 -2
  275. package/src/scripts/_cli/explain_last/sections/provider.ts +2 -2
  276. package/src/scripts/_cli/explain_last/sections/route.ts +2 -2
  277. package/src/scripts/_cli/explain_last/state_loader.ts +2 -2
  278. package/src/scripts/_dispatch.bash +20 -1
  279. package/src/scripts/_lib/agent_settings.ts +1 -1
  280. package/src/scripts/_lib/agent_src.ts +7 -7
  281. package/src/scripts/_lib/agents_overlay.ts +1 -1
  282. package/src/scripts/_lib/bench_ab_cache.ts +1 -1
  283. package/src/scripts/_lib/bench_ab_scoring.ts +1 -1
  284. package/src/scripts/_lib/bench_ab_scoring_v2.ts +3 -3
  285. package/src/scripts/_lib/bench_cost.ts +1 -1
  286. package/src/scripts/_lib/bench_quality.ts +3 -3
  287. package/src/scripts/_lib/bench_report.ts +4 -4
  288. package/src/scripts/_lib/bench_telegraph.ts +1 -1
  289. package/src/scripts/_lib/bench_telegraph_report.ts +4 -4
  290. package/src/scripts/_lib/changelog_eras.ts +1 -1
  291. package/src/scripts/_lib/claude_desktop_bundler.ts +1 -1
  292. package/src/scripts/_lib/cli_wrapper.ts +1 -1
  293. package/src/scripts/_lib/fs_atomic.ts +1 -1
  294. package/src/scripts/_lib/global_deploy_inventory.ts +1 -1
  295. package/src/scripts/_lib/install_layout.ts +1 -1
  296. package/src/scripts/_lib/install_regenerator.ts +1 -1
  297. package/src/scripts/_lib/installed_lock.ts +1 -1
  298. package/src/scripts/_lib/installed_tools.ts +1 -1
  299. package/src/scripts/_lib/json_pointers.ts +1 -1
  300. package/src/scripts/_lib/knowledge_global.ts +1 -1
  301. package/src/scripts/_lib/knowledge_global_promote.ts +2 -2
  302. package/src/scripts/_lib/knowledge_global_redaction.ts +2 -2
  303. package/src/scripts/_lib/link_crypto.ts +4 -4
  304. package/src/scripts/_lib/linked_projects.ts +4 -4
  305. package/src/scripts/_lib/model_tier.ts +1 -1
  306. package/src/scripts/_lib/module_detection.ts +2 -2
  307. package/src/scripts/_lib/pin_resolver.ts +1 -1
  308. package/src/scripts/_lib/script_output.ts +1 -1
  309. package/src/scripts/_lib/security_lint.ts +1 -1
  310. package/src/scripts/_lib/surface_tiers.ts +1 -1
  311. package/src/scripts/_lib/text_similarity.ts +1 -1
  312. package/src/scripts/_lib/update_check.ts +2 -2
  313. package/src/scripts/_lib/user_global_paths.ts +1 -1
  314. package/src/scripts/_lib/value_ladder.ts +1 -1
  315. package/src/scripts/_lib/value_report.ts +1 -1
  316. package/src/scripts/_lib/zip_min.ts +2 -2
  317. package/src/scripts/adoption_report.ts +3 -3
  318. package/src/scripts/adoption_snapshot.ts +3 -3
  319. package/src/scripts/adoption_status.ts +2 -2
  320. package/src/scripts/adr/regenerate_index.ts +3 -3
  321. package/src/scripts/ai_council/_default_prices.ts +2 -3
  322. package/src/scripts/ai_council/advisors.ts +1 -1
  323. package/src/scripts/ai_council/airgap.ts +1 -1
  324. package/src/scripts/ai_council/budget_guard.ts +1 -1
  325. package/src/scripts/ai_council/bundler.ts +1 -1
  326. package/src/scripts/ai_council/cli_hints.ts +1 -1
  327. package/src/scripts/ai_council/clients.ts +5 -5
  328. package/src/scripts/ai_council/compile_corpus.ts +1 -1
  329. package/src/scripts/ai_council/confidence_gate.ts +1 -1
  330. package/src/scripts/ai_council/config.ts +1 -1
  331. package/src/scripts/ai_council/consensus.ts +1 -1
  332. package/src/scripts/ai_council/events_log.ts +1 -1
  333. package/src/scripts/ai_council/learn_low_impact_preview.ts +1 -1
  334. package/src/scripts/ai_council/low_impact_corpus.ts +1 -1
  335. package/src/scripts/ai_council/low_impact_intake.ts +1 -1
  336. package/src/scripts/ai_council/modes.ts +1 -1
  337. package/src/scripts/ai_council/orchestrator.ts +3 -3
  338. package/src/scripts/ai_council/pricing.ts +2 -2
  339. package/src/scripts/ai_council/probation_gate.ts +2 -2
  340. package/src/scripts/ai_council/project_context.ts +1 -1
  341. package/src/scripts/ai_council/prompts.ts +1 -1
  342. package/src/scripts/ai_council/redact_low_impact_entry.ts +2 -2
  343. package/src/scripts/ai_council/session.ts +1 -1
  344. package/src/scripts/ai_council/shadow_dispatch.ts +1 -1
  345. package/src/scripts/ai_council/solo_dispatch.ts +1 -1
  346. package/src/scripts/analysis_freshness.ts +2 -2
  347. package/src/scripts/annotate_discovery.ts +2 -2
  348. package/src/scripts/apply_modules_config.ts +2 -2
  349. package/src/scripts/audit_adr_coverage.ts +3 -3
  350. package/src/scripts/audit_auto_rules.ts +2 -2
  351. package/src/scripts/audit_cloud_compatibility.ts +3 -3
  352. package/src/scripts/audit_command_surface.ts +2 -2
  353. package/src/scripts/audit_initial_context.ts +7 -6
  354. package/src/scripts/audit_likelihood.ts +5 -5
  355. package/src/scripts/audit_mcp_tools.ts +3 -3
  356. package/src/scripts/audit_overlap.ts +2 -2
  357. package/src/scripts/audit_skill_descriptions.ts +2 -2
  358. package/src/scripts/audit_skill_overlap.ts +5 -5
  359. package/src/scripts/audit_user_type_axis.ts +4 -4
  360. package/src/scripts/backfill_model_tier.ts +1 -1
  361. package/src/scripts/bench_ab_cache_dispatch.ts +2 -2
  362. package/src/scripts/bench_ab_clone.ts +2 -2
  363. package/src/scripts/bench_ab_diff.ts +3 -3
  364. package/src/scripts/bench_ab_integrity.ts +2 -2
  365. package/src/scripts/bench_ab_run.ts +4 -4
  366. package/src/scripts/bench_ab_task_runner.ts +1 -1
  367. package/src/scripts/bench_ab_tracka_run.ts +2 -2
  368. package/src/scripts/bench_ab_v2_run.ts +1 -1
  369. package/src/scripts/bench_ab_v2_stats.ts +2 -2
  370. package/src/scripts/bench_baseline_ready.ts +1 -1
  371. package/src/scripts/bench_condense_memory.ts +4 -4
  372. package/src/scripts/bench_drift_check.ts +3 -3
  373. package/src/scripts/bench_per_tool.ts +1 -1
  374. package/src/scripts/bench_rtk_savings.ts +4 -4
  375. package/src/scripts/bench_run.ts +4 -4
  376. package/src/scripts/bench_runner.ts +1 -1
  377. package/src/scripts/build_cloud_bundle.ts +3 -3
  378. package/src/scripts/build_discovery_manifest.ts +13 -15
  379. package/src/scripts/build_linear_digest.ts +2 -2
  380. package/src/scripts/build_mcp_registry_manifest.ts +3 -3
  381. package/src/scripts/build_proof.ts +6 -0
  382. package/src/scripts/build_rule_trigger_matrix.ts +2 -2
  383. package/src/scripts/capture_showcase_session.ts +3 -3
  384. package/src/scripts/chat_history.ts +1 -1
  385. package/src/scripts/check_always_budget.ts +1 -1
  386. package/src/scripts/check_artefact_checksums.ts +4 -4
  387. package/src/scripts/check_artefact_count_messaging.ts +197 -0
  388. package/src/scripts/check_augment_description_cap.ts +3 -3
  389. package/src/scripts/check_augmentignore.ts +1 -1
  390. package/src/scripts/check_beta_review_markers.ts +3 -3
  391. package/src/scripts/check_bite_sized_granularity.ts +1 -1
  392. package/src/scripts/check_cluster_patterns.ts +47 -3
  393. package/src/scripts/check_command_count_messaging.ts +2 -2
  394. package/src/scripts/check_condensation.ts +2 -2
  395. package/src/scripts/check_condensed_paths.ts +6 -6
  396. package/src/scripts/check_context_paths.ts +1 -1
  397. package/src/scripts/check_council_config_location.ts +3 -3
  398. package/src/scripts/check_council_layout.ts +2 -2
  399. package/src/scripts/check_council_references.ts +2 -2
  400. package/src/scripts/check_discovery_determinism.ts +3 -3
  401. package/src/scripts/check_gate_paths.ts +4 -4
  402. package/src/scripts/check_iron_law_prominence.ts +2 -2
  403. package/src/scripts/check_kernel_rule_bundle.ts +3 -3
  404. package/src/scripts/check_knowledge_cards.ts +4 -4
  405. package/src/scripts/check_knowledge_pages.ts +1 -1
  406. package/src/scripts/check_md_language.ts +3 -3
  407. package/src/scripts/check_memory.ts +3 -3
  408. package/src/scripts/check_memory_proposal.ts +2 -2
  409. package/src/scripts/check_module_management_neutral.ts +1 -1
  410. package/src/scripts/check_no_conflict_markers.ts +1 -1
  411. package/src/scripts/check_no_external_sources.ts +1 -1
  412. package/src/scripts/check_no_local_settings_committed.ts +2 -2
  413. package/src/scripts/check_no_new_legacy_path.ts +3 -3
  414. package/src/scripts/check_no_roadmap_refs.ts +3 -3
  415. package/src/scripts/check_one_off_location.ts +3 -3
  416. package/src/scripts/check_overlay_cascade_subdirs.ts +3 -3
  417. package/src/scripts/check_portability.ts +3 -3
  418. package/src/scripts/check_proposal.ts +0 -0
  419. package/src/scripts/check_public_catalog_links.ts +1 -1
  420. package/src/scripts/check_public_links.ts +2 -2
  421. package/src/scripts/check_references.ts +3 -3
  422. package/src/scripts/check_release_includes_discovery.ts +2 -2
  423. package/src/scripts/check_release_pr_shape.ts +2 -2
  424. package/src/scripts/check_release_published.ts +1 -1
  425. package/src/scripts/check_release_trunk_sync.ts +3 -3
  426. package/src/scripts/check_reply_consistency.ts +1 -1
  427. package/src/scripts/check_roadmap_trackable.ts +2 -2
  428. package/src/scripts/check_role_doc_links.ts +2 -2
  429. package/src/scripts/check_safety_floor_untouched.ts +3 -3
  430. package/src/scripts/check_skill_requires.ts +2 -2
  431. package/src/scripts/check_structural_breaking.ts +2 -2
  432. package/src/scripts/check_surface_tiers.ts +2 -2
  433. package/src/scripts/check_template_pin_drift.ts +1 -1
  434. package/src/scripts/check_test_coverage_diff.ts +2 -2
  435. package/src/scripts/check_token_optimizer_freshness.ts +3 -3
  436. package/src/scripts/check_trigger_evals.ts +2 -2
  437. package/src/scripts/check_update_banner.ts +1 -1
  438. package/src/scripts/ci_status.ts +0 -0
  439. package/src/scripts/ci_summary.ts +3 -3
  440. package/src/scripts/ci_time_ratio.ts +1 -1
  441. package/src/scripts/command_suggester/cooldown.ts +1 -1
  442. package/src/scripts/command_suggester/index.ts +1 -1
  443. package/src/scripts/command_suggester/loader.ts +1 -1
  444. package/src/scripts/command_suggester/match.ts +1 -1
  445. package/src/scripts/command_suggester/rank.ts +1 -1
  446. package/src/scripts/command_suggester/render.ts +1 -1
  447. package/src/scripts/command_suggester/sanitize.ts +1 -1
  448. package/src/scripts/command_suggester/settings.ts +1 -1
  449. package/src/scripts/command_suggester/types.ts +0 -0
  450. package/src/scripts/compile_router.ts +4 -4
  451. package/src/scripts/condense.ts +3 -3
  452. package/src/scripts/condense_memory.ts +1 -1
  453. package/src/scripts/config/index.ts +1 -1
  454. package/src/scripts/config/packs.ts +1 -1
  455. package/src/scripts/config/presets.ts +1 -1
  456. package/src/scripts/config/profile_explain.ts +1 -1
  457. package/src/scripts/config/profiles.ts +1 -1
  458. package/src/scripts/config/session_profiles.ts +1 -1
  459. package/src/scripts/context_hygiene_hook.ts +2 -2
  460. package/src/scripts/cost_by_conversation.ts +1 -1
  461. package/src/scripts/cost_summary.ts +2 -2
  462. package/src/scripts/council_cli.ts +1 -1
  463. package/src/scripts/council_prune.ts +1 -1
  464. package/src/scripts/cross_repo_retrieve.ts +2 -2
  465. package/src/scripts/discovery_stats.ts +3 -3
  466. package/src/scripts/evidence_report.ts +4 -4
  467. package/src/scripts/extract_audit_patterns.ts +2 -2
  468. package/src/scripts/first_run_gate_hook.ts +1 -1
  469. package/src/scripts/gen_discovery_baseline.ts +2 -2
  470. package/src/scripts/generate_capabilities_index.ts +2 -2
  471. package/src/scripts/generate_capability_matrix.ts +2 -2
  472. package/src/scripts/generate_catalog.ts +2 -2
  473. package/src/scripts/generate_command_flows.ts +2 -2
  474. package/src/scripts/generate_cookbook.ts +1 -1
  475. package/src/scripts/generate_index.ts +3 -3
  476. package/src/scripts/generate_ownership_matrix.ts +2 -2
  477. package/src/scripts/generate_pack_manifests.ts +2 -2
  478. package/src/scripts/generate_role_experiences_catalog.ts +3 -3
  479. package/src/scripts/hooks/block_no_verify.ts +2 -2
  480. package/src/scripts/hooks/dispatch_hook.ts +2 -2
  481. package/src/scripts/hooks/dispatch_issues.ts +1 -1
  482. package/src/scripts/hooks/envelope.ts +1 -1
  483. package/src/scripts/hooks/replay_hook.ts +1 -1
  484. package/src/scripts/hooks/state_io.ts +1 -1
  485. package/src/scripts/hooks_doctor.ts +1 -1
  486. package/src/scripts/hooks_status.ts +1 -1
  487. package/src/scripts/injection_scan_hook.ts +1 -1
  488. package/src/scripts/install.ts +145 -3
  489. package/src/scripts/inventory_abstraction_budget.ts +5 -5
  490. package/src/scripts/inventory_frontmatter.ts +1 -1
  491. package/src/scripts/inventory_meta_layers.ts +1 -1
  492. package/src/scripts/iron_law_sha.ts +1 -1
  493. package/src/scripts/knowledge_global_cli.ts +3 -3
  494. package/src/scripts/linked_projects_list.ts +1 -1
  495. package/src/scripts/lint_agent_security.ts +4 -4
  496. package/src/scripts/lint_agent_skill_names.ts +1 -1
  497. package/src/scripts/lint_agents_layout.ts +2 -2
  498. package/src/scripts/lint_agents_md.ts +3 -3
  499. package/src/scripts/lint_archived_skills.ts +2 -2
  500. package/src/scripts/lint_artefact_frontmatter.ts +2 -2
  501. package/src/scripts/lint_bench_ab.ts +2 -2
  502. package/src/scripts/lint_bench_corpus.ts +1 -1
  503. package/src/scripts/lint_command_flow_coverage.ts +1 -1
  504. package/src/scripts/lint_command_routing.ts +2 -2
  505. package/src/scripts/lint_command_tiers.ts +1 -1
  506. package/src/scripts/lint_command_verbs.ts +4 -4
  507. package/src/scripts/lint_commit_subjects.ts +2 -2
  508. package/src/scripts/lint_context_spine_usage.ts +3 -3
  509. package/src/scripts/lint_discovery_manifest.ts +4 -4
  510. package/src/scripts/lint_discovery_vocabulary.ts +2 -2
  511. package/src/scripts/lint_empty_roadmaps.ts +3 -3
  512. package/src/scripts/lint_eval_freshness.ts +2 -2
  513. package/src/scripts/lint_examples.ts +2 -2
  514. package/src/scripts/lint_explain_trace.ts +2 -2
  515. package/src/scripts/lint_featured_skills.ts +0 -0
  516. package/src/scripts/lint_flows.ts +5 -5
  517. package/src/scripts/lint_framework_leakage.ts +1 -1
  518. package/src/scripts/lint_framework_leakage_allowlist.json +10 -2
  519. package/src/scripts/lint_frontmatter_boilerplate.ts +2 -2
  520. package/src/scripts/lint_ghostwriter_source.ts +3 -3
  521. package/src/scripts/lint_global_paths.ts +1 -1
  522. package/src/scripts/lint_handoffs.ts +1 -1
  523. package/src/scripts/lint_hidden_unicode.ts +1 -1
  524. package/src/scripts/lint_hook_concern_budget.ts +2 -2
  525. package/src/scripts/lint_hook_manifest.ts +2 -2
  526. package/src/scripts/lint_instruction_smuggling.ts +1 -1
  527. package/src/scripts/lint_load_context.ts +2 -2
  528. package/src/scripts/lint_marketplace.ts +1 -1
  529. package/src/scripts/lint_marketplace_install_completeness.ts +2 -2
  530. package/src/scripts/lint_mcp_config_security.ts +1 -1
  531. package/src/scripts/lint_mcp_registry_manifest.ts +1 -1
  532. package/src/scripts/lint_media_policy_linkage.ts +3 -3
  533. package/src/scripts/lint_missions.ts +3 -3
  534. package/src/scripts/lint_model_tier_coverage.ts +3 -3
  535. package/src/scripts/lint_namespace.ts +2 -2
  536. package/src/scripts/lint_namespace_collisions.ts +2 -2
  537. package/src/scripts/lint_new_skill_gate.ts +3 -3
  538. package/src/scripts/lint_no_new_atomic_commands.ts +9 -6
  539. package/src/scripts/lint_no_python_twin_rationale.ts +102 -0
  540. package/src/scripts/lint_one_off_age.ts +2 -2
  541. package/src/scripts/lint_orchestration_dsl.ts +3 -3
  542. package/src/scripts/lint_orchestrator_auto_detect.ts +1 -1
  543. package/src/scripts/lint_pack_boundaries.ts +2 -2
  544. package/src/scripts/lint_pack_dependencies.ts +2 -2
  545. package/src/scripts/lint_pack_first_win.ts +2 -2
  546. package/src/scripts/lint_persona_governance.ts +3 -3
  547. package/src/scripts/lint_positioning.ts +1 -1
  548. package/src/scripts/lint_profile_overlay_set_only.ts +2 -2
  549. package/src/scripts/lint_readme_jargon.ts +2 -2
  550. package/src/scripts/lint_readme_size.ts +2 -2
  551. package/src/scripts/lint_regression.ts +3 -3
  552. package/src/scripts/lint_roadmap_ci_steps.ts +3 -3
  553. package/src/scripts/lint_roadmap_complexity.ts +1 -1
  554. package/src/scripts/lint_roadmap_later_disposition.ts +2 -2
  555. package/src/scripts/lint_role_experiences.ts +2 -2
  556. package/src/scripts/lint_rule_interactions.ts +1 -1
  557. package/src/scripts/lint_rule_tiers.ts +1 -1
  558. package/src/scripts/lint_showcase_sessions.ts +2 -2
  559. package/src/scripts/lint_skill_frontmatter_safety.ts +1 -1
  560. package/src/scripts/lint_skill_originality.ts +1 -1
  561. package/src/scripts/lint_skill_tools.ts +3 -3
  562. package/src/scripts/lint_ticket_buildable.ts +2 -2
  563. package/src/scripts/lint_topics_yaml.ts +3 -3
  564. package/src/scripts/lint_trust_coherence.ts +3 -3
  565. package/src/scripts/lint_value_dashboard.ts +3 -3
  566. package/src/scripts/lint_workflow_security.ts +3 -3
  567. package/src/scripts/lint_workspace_boundary.ts +2 -2
  568. package/src/scripts/mcp_parity_smoke.ts +1 -1
  569. package/src/scripts/mcp_render.ts +1 -1
  570. package/src/scripts/mcp_server/catalog.ts +1 -1
  571. package/src/scripts/mcp_server/index.ts +1 -1
  572. package/src/scripts/mcp_server/metadata.ts +1 -1
  573. package/src/scripts/mcp_server/prompts.ts +1 -1
  574. package/src/scripts/mcp_server/resources.ts +1 -1
  575. package/src/scripts/mcp_server/server.ts +1 -1
  576. package/src/scripts/mcp_server/telemetry.ts +1 -1
  577. package/src/scripts/mcp_server/tools.ts +1 -1
  578. package/src/scripts/mcp_telemetry_health.ts +1 -1
  579. package/src/scripts/mcp_telemetry_query.ts +3 -3
  580. package/src/scripts/mcp_telemetry_store.ts +3 -3
  581. package/src/scripts/measure_augment_budget.ts +2 -2
  582. package/src/scripts/measure_density.ts +2 -2
  583. package/src/scripts/measure_frugality_savings.ts +3 -3
  584. package/src/scripts/measure_markitdown_lift.ts +1 -1
  585. package/src/scripts/measure_patterns.ts +1 -1
  586. package/src/scripts/measure_projection_bytes.ts +1 -1
  587. package/src/scripts/measure_rule_budget.ts +1 -1
  588. package/src/scripts/measure_skill_reduction.ts +1 -1
  589. package/src/scripts/memory_hash.ts +1 -1
  590. package/src/scripts/memory_lookup.ts +6 -6
  591. package/src/scripts/memory_report.ts +1 -1
  592. package/src/scripts/memory_signal.ts +1 -1
  593. package/src/scripts/memory_status.ts +2 -2
  594. package/src/scripts/migrate_command_suggestions.ts +1 -1
  595. package/src/scripts/migrate_frontmatter_defaults.ts +1 -1
  596. package/src/scripts/mine_session.ts +3 -3
  597. package/src/scripts/minimal_safe_diff_hook.ts +2 -2
  598. package/src/scripts/move_artefact.ts +3 -3
  599. package/src/scripts/new_skill.ts +3 -3
  600. package/src/scripts/onboarding_gate_hook.ts +2 -2
  601. package/src/scripts/pack_mcp_content.ts +1 -1
  602. package/src/scripts/parity/replay.ts +3 -2
  603. package/src/scripts/pattern_share.ts +2 -2
  604. package/src/scripts/plan_physical_move.ts +3 -3
  605. package/src/scripts/prediction-pool/poisson_sim.ts +2 -2
  606. package/src/scripts/prediction-pool/pool_winsim.ts +2 -2
  607. package/src/scripts/prediction-pool/score_ev.ts +2 -2
  608. package/src/scripts/prepack-check.mjs +108 -5
  609. package/src/scripts/print_required_checks.ts +2 -2
  610. package/src/scripts/probe_projection_fidelity.ts +2 -2
  611. package/src/scripts/probe_skill_registration.ts +2 -2
  612. package/src/scripts/profile_staleness_hook.ts +2 -2
  613. package/src/scripts/profile_use.ts +2 -2
  614. package/src/scripts/project_thin_rules.ts +3 -3
  615. package/src/scripts/propose_modules_config.ts +2 -2
  616. package/src/scripts/prototype_lint_contradictions.ts +2 -2
  617. package/src/scripts/prove_pack_extractable.ts +1 -1
  618. package/src/scripts/readme_linter.ts +4 -4
  619. package/src/scripts/redact_hook_capture.ts +2 -2
  620. package/src/scripts/refine_ticket_detect.ts +1 -1
  621. package/src/scripts/release.ts +30 -19
  622. package/src/scripts/render_benchmark_md.ts +2 -2
  623. package/src/scripts/render_value_md.ts +2 -2
  624. package/src/scripts/roadmap_progress_hook.ts +1 -1
  625. package/src/scripts/router_telemetry.ts +1 -1
  626. package/src/scripts/run_skill_evals.ts +2 -2
  627. package/src/scripts/runtime_dispatcher.ts +1 -1
  628. package/src/scripts/runtime_handler.ts +1 -1
  629. package/src/scripts/runtime_registry.ts +3 -3
  630. package/src/scripts/score_skill_selection.ts +1 -1
  631. package/src/scripts/security_audit_config.ts +2 -2
  632. package/src/scripts/skill_collision_clusters.ts +1 -1
  633. package/src/scripts/skill_discovery.ts +1 -1
  634. package/src/scripts/skill_linter.ts +8 -7
  635. package/src/scripts/skill_overlap.ts +2 -2
  636. package/src/scripts/skill_preview.ts +1 -1
  637. package/src/scripts/skill_tools/audit_persona_coverage.ts +3 -3
  638. package/src/scripts/skill_tools/audit_user_type_coverage.ts +3 -3
  639. package/src/scripts/skill_tools/index.ts +1 -1
  640. package/src/scripts/skill_tools/run_block_d_eval.ts +3 -3
  641. package/src/scripts/skill_tools/score_skill_relevance.ts +3 -3
  642. package/src/scripts/skill_tools/suggest_skill_for_task.ts +3 -3
  643. package/src/scripts/skill_trigger_eval.ts +2 -2
  644. package/src/scripts/skill_usage_collect.ts +2 -2
  645. package/src/scripts/skill_usage_report.ts +2 -2
  646. package/src/scripts/smoke_path_resolution.ts +2 -2
  647. package/src/scripts/smoke_quickstart.ts +4 -4
  648. package/src/scripts/snapshot_agent_outputs.ts +2 -2
  649. package/src/scripts/spotcheck_thin_root.ts +2 -2
  650. package/src/scripts/surface-tiers.yml +1 -0
  651. package/src/scripts/sync_agent_settings.ts +2 -2
  652. package/src/scripts/sync_github_metadata.ts +4 -4
  653. package/src/scripts/sync_gitignore.ts +3 -3
  654. package/src/scripts/sync_yaml_rt.ts +2 -2
  655. package/src/scripts/telegraph_stats.ts +1 -1
  656. package/src/scripts/tool_registry.ts +2 -2
  657. package/src/scripts/tools/adapter_errors.ts +1 -1
  658. package/src/scripts/tools/base_adapter.ts +1 -1
  659. package/src/scripts/tools/github_adapter.ts +1 -1
  660. package/src/scripts/tools/jira_adapter.ts +1 -1
  661. package/src/scripts/trigger_coverage.ts +2 -2
  662. package/src/scripts/update_counts.ts +68 -6
  663. package/src/scripts/update_prices.ts +3 -3
  664. package/src/scripts/validate_agent_settings.ts +3 -3
  665. package/src/scripts/validate_decision_engine.ts +2 -2
  666. package/src/scripts/validate_discovery_manifest.ts +3 -3
  667. package/src/scripts/validate_frontmatter.ts +5 -5
  668. package/src/scripts/validate_pack_yaml.ts +0 -0
  669. package/src/scripts/validate_safe_paths.ts +2 -2
  670. package/src/scripts/validate_telegraph_carveouts.ts +3 -3
  671. package/src/scripts/verify_before_complete_hook.ts +2 -2
  672. package/src/scripts/verify_physical_move.ts +2 -2
  673. package/src/scripts/wrapper_freshness_hook.ts +3 -3
  674. package/src/server/schemas/settings.ts +426 -0
  675. package/src/shared/settingsSurface.ts +184 -0
  676. package/src/shared/userMd/formAdapter.ts +86 -0
  677. package/src/shared/userMd/schema.ts +59 -0
  678. package/src/shared/userMd/utils.ts +91 -0
  679. package/dist/agent-src/commands/optimize-project.md +0 -243
  680. package/dist/ui/assets/index-BbWWuFrF.css +0 -1
  681. package/dist/ui/assets/index-UjcTG_9O.js +0 -40
  682. package/dist/ui/assets/index-UjcTG_9O.js.map +0 -1
@@ -2,8 +2,8 @@
2
2
  /**
3
3
  * Sync `.github/topics.yml` + `.github/about.yml` to the GitHub repo.
4
4
  *
5
- * TypeScript twin of `src/scripts/sync_github_metadata.py` (ADR-200, Phase 5).
6
- * The CLI contract is mirrored EXACTLY — every flag (`--apply`, `--strict`,
5
+ * Ported from the retired Python `src/scripts/sync_github_metadata.py` (ADR-200).
6
+ * The CLI contract is pinned — every flag (`--apply`, `--strict`,
7
7
  * `--quiet`, `--repo`), exit codes (0 = synced / applied; 2 = drift under
8
8
  * `--strict` dry-run; 1 = error via SystemExit — missing token, unresolvable
9
9
  * repo, HTTP/transport error), the stdout/stderr split, byte-identical
@@ -14,7 +14,7 @@
14
14
  * against a stub with zero network. Error-swallowing is mirrored exactly:
15
15
  * any HTTP / transport failure raises `ExitError` → message to stderr, exit 1.
16
16
  *
17
- * No behaviour changes — latent Python quirks replicated. NOTE: the audit log
17
+ * Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour. NOTE: the audit log
18
18
  * path mirrors the CODE constant (`agents/notes/visibility-sync-audit.md`),
19
19
  * not the docstring's `agents/evidence/notes/…` — DIVERGENCE CANDIDATE below.
20
20
  *
@@ -32,7 +32,7 @@ type Json = unknown;
32
32
  type JsonObject = Record<string, Json>;
33
33
 
34
34
  const _HERE = fileURLToPath(import.meta.url);
35
- // _HERE === <repo>/src/scripts/sync_github_metadata.ts ; the Python original
35
+ // _HERE === <repo>/src/scripts/sync_github_metadata.ts ; the retired Python implementation
36
36
  // derives ROOT = <file>.parents[2] — two dirs up from src/scripts.
37
37
  export const ROOT = path.resolve(path.dirname(_HERE), '..', '..');
38
38
 
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Sync the `event4u/agent-config` block in a project's `.gitignore`.
4
4
  *
5
- * TypeScript twin of `src/scripts/sync_gitignore.py` (ADR-200, Phase 5). The
5
+ * Ported from the retired Python `src/scripts/sync_gitignore.py` (ADR-200). The
6
6
  * CLI contract is mirrored EXACTLY — every flag (`--path`, `--template`,
7
7
  * `--dry-run`, `--replace`, `--cleanup-legacy`, `--quiet`), exit codes
8
8
  * (0 = no change / changed / dry-run; 2 = invalid args / template missing),
@@ -11,7 +11,7 @@
11
11
  * unified-diff format). Exported helpers keep their Python snake_case names so
12
12
  * the ported pytest suite can call them 1:1.
13
13
  *
14
- * No behaviour changes — latent Python quirks replicated.
14
+ * Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
15
15
  *
16
16
  * Reads the canonical block body from `src/config/gitignore-block.txt` and
17
17
  * ensures every managed entry is present in `.gitignore` between the
@@ -37,7 +37,7 @@ export const DEFAULT_GITIGNORE = '.gitignore';
37
37
 
38
38
  const _HERE = fileURLToPath(import.meta.url);
39
39
  // _HERE === <repo>/src/scripts/sync_gitignore.ts ; parents[2] of the .py file
40
- // is the repo root — two dirs up from src/scripts. The Python original derives
40
+ // is the repo root — two dirs up from src/scripts. the retired Python implementation derives
41
41
  // DEFAULT_TEMPLATE = <file>.parent.parent.parent / "src" / "config" /
42
42
  // "gitignore-block.txt".
43
43
  export const DEFAULT_TEMPLATE = path.join(
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Round-trip YAML layer for `.agent-settings.yml` syncs.
3
3
  *
4
- * TypeScript twin of `src/scripts/sync_yaml_rt.py` (ADR-200). Self-
4
+ * Ported from the retired Python `src/scripts/sync_yaml_rt.py` (ADR-200). Self-
5
5
  * contained, zero-dependency. Implements a narrow YAML subset with the
6
6
  * property *user-line preservation*: every line in the user input that
7
7
  * `parse` attaches to a `Node` is reproduced character-for-character by
@@ -35,7 +35,7 @@
35
35
  * - `heal_user_block(user, template) -> Node`
36
36
  * - `sync(user_text, template_text) -> string`
37
37
  *
38
- * No behaviour changes vs. the Python original — latent bugs replicated.
38
+ * No behaviour changes vs. the retired Python implementation — historical quirks preserved (consumers pin the exact behaviour).
39
39
  */
40
40
 
41
41
  // --- Public node ----------------------------------------------------
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Telegraph per-session / per-conversation / lifetime token-delta lens.
4
4
  *
5
- * TypeScript twin of `src/scripts/telegraph_stats.py` (ADR-200 — Python→TS
5
+ * Ported from the retired Python `src/scripts/telegraph_stats.py` (ADR-200 — Python→TS
6
6
  * migration, Phase 8 / Wave 8e). Public surface mirrors the Python module
7
7
  * exactly: same CLI flags (`--input`, `--format`), same exit code (0), same
8
8
  * stdout, and byte-identical `json.dumps(..., indent=2)` output.
@@ -2,8 +2,8 @@
2
2
  /**
3
3
  * Tool Registry — manages available external tools and their permissions.
4
4
  *
5
- * TypeScript twin of `src/scripts/tool_registry.py` (ADR-200 — Python→TS
6
- * migration, Phase 8 / Wave 8e). The CLI contract is mirrored EXACTLY:
5
+ * Ported from the retired Python `src/scripts/tool_registry.py` (ADR-200 — Python→TS
6
+ * migration, Phase 8 / Wave 8e). The CLI contract is pinned:
7
7
  * same flags (`--format text|json`, `--validate-tools [...]`), same exit
8
8
  * codes (0 on success / valid, 1 when validation finds errors), same
9
9
  * byte-identical text + JSON output (json.dumps indent=2), same emoji
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Shared error types for tool adapters.
3
3
  *
4
- * TypeScript twin of `src/scripts/tools/adapter_errors.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/tools/adapter_errors.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1 / tools adapter cluster). Public API mirrors
6
6
  * the Python module exactly (snake_case kept deliberately — fidelity over TS
7
7
  * idiom): the `AdapterErrorType` string enum, the `AdapterError` value shape
@@ -9,7 +9,7 @@
9
9
  *
10
10
  * No real API calls are made by the base — adapters return structured results.
11
11
  *
12
- * TypeScript twin of `src/scripts/tools/base_adapter.py` (ADR-200 — Python→TS
12
+ * Ported from the retired Python `src/scripts/tools/base_adapter.py` (ADR-200 — Python→TS
13
13
  * migration, Phase 1 / tools adapter cluster). Public API mirrors the Python
14
14
  * module exactly (snake_case kept deliberately — fidelity over TS idiom):
15
15
  * the `ToolAction` / `ToolResult` value shapes, `ToolResult.to_dict()` with
@@ -5,7 +5,7 @@
5
5
  * Write actions remain scaffold-only (never auto-executed).
6
6
  * Falls back to scaffold data when no token is present.
7
7
  *
8
- * TypeScript twin of `src/scripts/tools/github_adapter.py` (ADR-200 —
8
+ * Ported from the retired Python `src/scripts/tools/github_adapter.py` (ADR-200 —
9
9
  * Python→TS migration, Phase 1 / tools adapter cluster). Public API mirrors
10
10
  * the Python module exactly (snake_case kept deliberately): the
11
11
  * `read_pr` / `read_issue` / `list_files` / `read_commit` / `create_pr`
@@ -5,7 +5,7 @@
5
5
  * set. Write actions remain scaffold-only (never auto-executed). Falls back to
6
6
  * scaffold data when no credentials are present.
7
7
  *
8
- * TypeScript twin of `src/scripts/tools/jira_adapter.py` (ADR-200 — Python→TS
8
+ * Ported from the retired Python `src/scripts/tools/jira_adapter.py` (ADR-200 — Python→TS
9
9
  * migration, Phase 1 / tools adapter cluster). Public API mirrors the Python
10
10
  * module exactly (snake_case kept deliberately): the
11
11
  * `read_ticket` / `search_tickets` / `add_comment` / `transition_ticket`
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Trigger-coverage suite (roadmap Phase 2.1 / 2.2).
4
4
  *
5
- * TypeScript twin of `src/scripts/trigger_coverage.py` (ADR-200, Phase 8 /
5
+ * Ported from the retired Python `src/scripts/trigger_coverage.py` (ADR-200, Phase 8 /
6
6
  * Wave 8b). Mirrors the CLI contract EXACTLY — the `--json` flag, exit codes
7
7
  * (0 pass / 1 miss / 2 missing-router-or-PyYAML), the stdout/stderr split,
8
8
  * byte-identical human + JSON report.
@@ -25,7 +25,7 @@
25
25
  * A case fails when an expected rule is NOT in the fired set. Exit 1 on any
26
26
  * miss → the merge that would have shrunk the rule is blocked (2.2).
27
27
  *
28
- * No behaviour changes — latent Python quirks replicated.
28
+ * Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
29
29
  */
30
30
  import * as fs from 'node:fs';
31
31
  import * as path from 'node:path';
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Sync package-content counts (skills/rules/commands/guidelines) across docs.
4
4
  *
5
- * TypeScript twin of `src/scripts/update_counts.py` (ADR-200, Phase 5). The
5
+ * Ported from the retired Python `src/scripts/update_counts.py` (ADR-200). The
6
6
  * CLI contract is mirrored EXACTLY — the single `--check` flag, exit codes
7
7
  * (0 = synced / updated; 1 = stale under --check, missing target), the
8
8
  * stdout/stderr split, and byte-identical messages AND byte-identical rewritten
@@ -11,9 +11,9 @@
11
11
  * call them 1:1.
12
12
  *
13
13
  * Imports the `_lib/agent_src` twin (`artefact_roots`, `iter_commands`) — the
14
- * SAME functions the Python original imports.
14
+ * SAME functions the retired Python implementation imports.
15
15
  *
16
- * No behaviour changes — latent Python quirks replicated.
16
+ * Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
17
17
  *
18
18
  * Source of truth: `.agent-src.uncondensed/`.
19
19
  *
@@ -28,7 +28,7 @@ import { fileURLToPath, pathToFileURL } from 'node:url';
28
28
  import { artefact_roots, iter_commands } from './_lib/agent_src.js';
29
29
 
30
30
  const _HERE = fileURLToPath(import.meta.url);
31
- // _HERE === <repo>/src/scripts/update_counts.ts ; the Python original derives
31
+ // _HERE === <repo>/src/scripts/update_counts.ts ; the retired Python implementation derives
32
32
  // REPO_ROOT = <file>.parent.parent.parent — two dirs up from src/scripts.
33
33
  export const REPO_ROOT = path.resolve(path.dirname(_HERE), '..', '..');
34
34
 
@@ -78,6 +78,23 @@ function _exists(p: string): boolean {
78
78
  }
79
79
 
80
80
  export function count(kind: string): number {
81
+ if (kind === 'router_rules') {
82
+ // Routed rule entries in the compiled router (kernel + tier_1 +
83
+ // tier_2). Read from dist/router.json — the artifact hosts consume —
84
+ // so prose citing "the router routes N rules" tracks the compiled
85
+ // truth, not a hand-typed snapshot.
86
+ const routerPath = path.join(REPO_ROOT, 'dist', 'router.json');
87
+ const router = JSON.parse(fs.readFileSync(routerPath, 'utf-8')) as {
88
+ kernel?: unknown[];
89
+ tier_1?: unknown[];
90
+ tier_2?: unknown[];
91
+ };
92
+ return (
93
+ (router.kernel?.length ?? 0) +
94
+ (router.tier_1?.length ?? 0) +
95
+ (router.tier_2?.length ?? 0)
96
+ );
97
+ }
81
98
  if (kind === 'guidelines') {
82
99
  // Guidelines live under docs/guidelines/{topic}/ — they are reference
83
100
  // material, not packaged artefacts. Recursive walk to count every .md.
@@ -150,6 +167,51 @@ export const TARGETS: ReadonlyArray<[string, ReadonlyArray<[string, string]>]> =
150
167
  ['(/badge/Rules-)(\\d+)(-)', 'rules'],
151
168
  ['(/badge/Guidelines-)(\\d+)(-)', 'guidelines'],
152
169
  ['(/badge/Personas-)(\\d+)(-)', 'personas'],
170
+ // Hero prose sentence: `**N skills, N commands, N governed rules**`
171
+ // (road-to-truth-and-reference-hygiene Phase 1: prose counts are
172
+ // generated, never hand-typed).
173
+ ['(\\*\\*)(\\d+)( skills, )', 'skills'],
174
+ ['( skills, )(\\d+)( commands, )', 'commands'],
175
+ ['( commands, )(\\d+)( governed rules\\*\\*)', 'rules'],
176
+ // Feature-list line: `— N skills + N commands, with a capability router`
177
+ ['(— )(\\d+)( skills \\+ )', 'skills'],
178
+ ['( skills \\+ )(\\d+)( commands,)', 'commands'],
179
+ // Work-journey line: `You don't memorize N commands`
180
+ ['(memorize )(\\d+)( commands)', 'commands'],
181
+ ],
182
+ ],
183
+ [
184
+ 'docs/CLAIMS.md',
185
+ [
186
+ // The three count claims — their numbers are generated from the
187
+ // same source the gate checks, closing the ledger's own
188
+ // "count-source binding" debt (B1.2).
189
+ ['(- claim: )(\\d+)( skills \\(README hero)', 'skills'],
190
+ ['(- claim: )(\\d+)( commands\\.)', 'commands'],
191
+ ['(- claim: )(\\d+)( governed rules\\.)', 'rules'],
192
+ ],
193
+ ],
194
+ [
195
+ 'docs/getting-started-by-role.md',
196
+ [
197
+ ['(ships )(\\d+)( skills, )', 'skills'],
198
+ ['( skills, )(\\d+)( governed rules, and )', 'rules'],
199
+ ['( governed rules, and )(\\d+)( commands\\.)', 'commands'],
200
+ ],
201
+ ],
202
+ [
203
+ 'docs/featured-skills.md',
204
+ [
205
+ ['(subset of the )(\\d+)( skills)', 'skills'],
206
+ ['(Browse all )(\\d+)( skills)', 'skills'],
207
+ ['(all )(\\d+)( commands: \\[)', 'commands'],
208
+ ],
209
+ ],
210
+ [
211
+ 'docs/governance-advantage.md',
212
+ [
213
+ ['(load all )(\\d+)( skills)', 'skills'],
214
+ ['(\\()(\\d+)( routed rules,)', 'router_rules'],
153
215
  ],
154
216
  ],
155
217
  [
@@ -204,7 +266,7 @@ export function apply_to_text(
204
266
  return [new_text, drifts];
205
267
  }
206
268
 
207
- const KINDS = ['skills', 'rules', 'commands', 'guidelines', 'personas'] as const;
269
+ const KINDS = ['skills', 'rules', 'commands', 'guidelines', 'personas', 'router_rules'] as const;
208
270
 
209
271
  function parse_args(argv: readonly string[]): { check: boolean } {
210
272
  const args = { check: false };
@@ -234,7 +296,7 @@ export function main(argv: readonly string[] = process.argv.slice(2)): number {
234
296
  process.stdout.write(
235
297
  `📊 Truth: skills=${counts['skills']} rules=${counts['rules']} ` +
236
298
  `commands=${counts['commands']} guidelines=${counts['guidelines']} ` +
237
- `personas=${counts['personas']}\n`,
299
+ `personas=${counts['personas']} router_rules=${counts['router_rules']}\n`,
238
300
  );
239
301
 
240
302
  let any_drift = false;
@@ -2,8 +2,8 @@
2
2
  /**
3
3
  * Refresh `agents/runtime/.agent-prices.md` from the LiteLLM model-prices feed.
4
4
  *
5
- * TypeScript twin of `src/scripts/update_prices.py` (ADR-200 — Python→TS
6
- * migration, Phase 8 / Wave 8g). Mirrors the Python CLI contract EXACTLY —
5
+ * Ported from the retired Python `src/scripts/update_prices.py` (ADR-200 — Python→TS
6
+ * migration, Phase 8 / Wave 8g). The CLI contract is pinned —
7
7
  * the `--check` / `--path` flags, exit codes (0 ok / 1 stale-or-missing in
8
8
  * --check), the stdout/stderr split, byte-identical messages, and the
9
9
  * byte-identical written `agents/runtime/.agent-prices.md`.
@@ -15,7 +15,7 @@
15
15
  * Network fetch + `today` (UTC date) are non-deterministic; golden parity
16
16
  * exercises `--check` (no network, fixed fixture) and the no-network write
17
17
  * path with `--path` to a temp file (timestamp line excluded). No behaviour
18
- * changes — latent Python quirks replicated.
18
+ * changes — historical quirks preserved (consumers pin the exact behaviour).
19
19
  */
20
20
  import * as fs from 'node:fs';
21
21
  import * as https from 'node:https';
@@ -2,14 +2,14 @@
2
2
  /**
3
3
  * Agent-settings schema validator (rule_loading_tier untangle, 2026-06-01).
4
4
  *
5
- * TypeScript twin of `src/scripts/validate_agent_settings.py` (ADR-200,
6
- * Phase 4 / Wave 4c). The CLI contract is mirrored EXACTLY — no flags,
5
+ * Ported from the retired Python `src/scripts/validate_agent_settings.py` (ADR-200,
6
+ * Phase 4 / Wave 4c). The CLI contract is pinned — no flags,
7
7
  * exit codes (0 every file validates, 1 schema violation, 3 bootstrap
8
8
  * failure), stdout output (GitHub `::error::` annotations + summary line),
9
9
  * the same template-placeholder substitution, the same checked-file set
10
10
  * (template + local settings via the `_lib/agent_settings` twin), and the
11
11
  * same Draft-07 enum/type constraints from the shared schema JSON. No
12
- * behaviour changes — latent bugs replicated.
12
+ * behaviour changes — historical quirks preserved (consumers pin the exact behaviour).
13
13
  *
14
14
  * DIVERGENCE NOTE (documented per ADR-200 §6): the underlying jsonschema
15
15
  * error PROSE is Python-version-dependent. This twin reproduces the schema's
@@ -2,8 +2,8 @@
2
2
  /**
3
3
  * Decision-engine settings validator (road-to-productization P2).
4
4
  *
5
- * TypeScript twin of `src/scripts/validate_decision_engine.py` (ADR-200,
6
- * Phase 4 / Wave 4c). Mirrors the Python CLI contract EXACTLY — no flags,
5
+ * Ported from the retired Python `src/scripts/validate_decision_engine.py` (ADR-200,
6
+ * Phase 4 / Wave 4c). The CLI contract is pinned — no flags,
7
7
  * exit codes (0 clean/warn, 1 hard error, 3 internal), stdout (the
8
8
  * `::error::` / `::warning::` GitHub-annotation lines + the summary), same
9
9
  * file set (template + project local settings) and order. No behaviour
@@ -3,13 +3,13 @@
3
3
  * Stale-manifest guard — re-builds the manifest in memory and diffs it
4
4
  * against the committed `dist/discovery/discovery-manifest.json`.
5
5
  *
6
- * TypeScript twin of `src/scripts/validate_discovery_manifest.py` (ADR-200,
7
- * Phase 4 / Wave 4c). The CLI contract is mirrored EXACTLY — `--quiet`
6
+ * Ported from the retired Python `src/scripts/validate_discovery_manifest.py` (ADR-200,
7
+ * Phase 4 / Wave 4c). The CLI contract is pinned — `--quiet`
8
8
  * flag, exit codes (0 match, 1 drift / missing committed manifest),
9
9
  * stdout/stderr split, byte-identical messages, and the same `generated_at`
10
10
  * normalization + sorted-key JSON comparison + first-diff-line report. The
11
11
  * scanner (`build_discovery_manifest.ts`) is run via the repo-local `tsx`
12
- * binary, mirroring how the Python original invoked the scanner via
12
+ * binary, mirroring how the retired Python implementation invoked the scanner via
13
13
  * `sys.executable`. No behaviour changes.
14
14
  *
15
15
  * Exit codes:
@@ -2,10 +2,10 @@
2
2
  /**
3
3
  * validate_frontmatter.ts — frontmatter validator (Draft-07 subset).
4
4
  *
5
- * TypeScript twin of `src/scripts/validate_frontmatter.py` (ADR-200 —
5
+ * Ported from the retired Python `src/scripts/validate_frontmatter.py` (ADR-200 —
6
6
  * Python→TS migration, Phase 4 / Wave 4a). The public surface, CLI flags,
7
- * exit codes, stdout/stderr split, and finding-message strings mirror the
8
- * Python original byte-for-byte. The Python original is deleted in the same
7
+ * exit codes, stdout/stderr split, and finding-message strings are pinned
8
+ * byte-for-byte by tests. The retired Python implementation was deleted in the same
9
9
  * PR; the dispatcher resolves this `.ts`.
10
10
  *
11
11
  * Validates the YAML frontmatter of an agent artefact (skill, rule, command,
@@ -19,7 +19,7 @@
19
19
  * - apply_schema_defaults(data, schema) -> data (in place)
20
20
  * - validate(data, schema) -> SchemaError[]
21
21
  *
22
- * No behaviour changes — latent Python quirks replicated. The lenient subset
22
+ * Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour. The lenient subset
23
23
  * parser (used for schema validation) supports scalar / boolean / integer /
24
24
  * inline-list / block-list / one-level-nested-block. The `strict_yaml_error`
25
25
  * gate uses the `yaml` package as the source of truth (same parser real
@@ -835,7 +835,7 @@ export function _iter_artefacts(root: string): Array<[string, string]> {
835
835
  return targets;
836
836
  }
837
837
 
838
- // argparse parity. `prog` matches the Python original's `sys.argv[0]` basename
838
+ // argparse parity. `prog` matches the retired Python implementation's `sys.argv[0]` basename
839
839
  // (`validate_frontmatter.py`) so the usage/error text is byte-identical to the
840
840
  // pre-migration CLI the golden corpus captured.
841
841
  const _PROG = 'validate_frontmatter.py';
Binary file
@@ -2,12 +2,12 @@
2
2
  /**
3
3
  * Sensitive-path denylist — refuses files that almost certainly hold secrets or PII.
4
4
  *
5
- * TypeScript twin of `src/scripts/validate_safe_paths.py` (ADR-200, Phase 4 /
5
+ * Ported from the retired Python `src/scripts/validate_safe_paths.py` (ADR-200, Phase 4 /
6
6
  * Wave 4c). The public API and CLI contract are mirrored EXACTLY — same
7
7
  * exported snake_case names (`is_sensitive`, `assert_safe`,
8
8
  * `SensitivePathError`), same denylist regex / component set / token list,
9
9
  * same CLI exit codes (0 safe, 2 sensitive / usage), stdout/stderr split, and
10
- * byte-identical messages. No behaviour changes — latent bugs replicated.
10
+ * byte-identical messages. Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
11
11
  *
12
12
  * Phase 0 of step-16-telegraph-substance. Gates Phase 2 (`scripts/condense_memory.py`):
13
13
  * any consumer-supplied path must pass `assert_safe()` before bytes are read or
@@ -2,12 +2,12 @@
2
2
  /**
3
3
  * Mechanical carve-out validator for telegraph-condensed replies.
4
4
  *
5
- * TypeScript twin of `src/scripts/validate_telegraph_carveouts.py` (ADR-200,
6
- * Phase 4 / Wave 4c). The CLI contract is mirrored EXACTLY — two positional
5
+ * Ported from the retired Python `src/scripts/validate_telegraph_carveouts.py` (ADR-200,
6
+ * Phase 4 / Wave 4c). The CLI contract is pinned — two positional
7
7
  * `pre` / `post` file args, exit codes (0 preserved, 1 drift, 2 missing
8
8
  * file), stdout/stderr split, byte-identical messages, the same carve-out
9
9
  * extractors and the same `difflib.unified_diff` rendering. No behaviour
10
- * changes — latent bugs replicated.
10
+ * changes — historical quirks preserved (consumers pin the exact behaviour).
11
11
  *
12
12
  * Given a pre-condensation reply and a post-condensation reply, assert that
13
13
  * every carve-out region from `.agent-src.uncondensed/rules/telegraph-speak.md`
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Platform-agnostic hook for the `verify-before-complete` rule.
4
4
  *
5
- * TypeScript twin of `src/scripts/verify_before_complete_hook.py` (ADR-200 —
5
+ * Ported from the retired Python `src/scripts/verify_before_complete_hook.py` (ADR-200 —
6
6
  * Python→TS migration, Phase 6 / hooks). Public API mirrors the Python
7
7
  * module exactly (snake_case kept deliberately — fidelity over TS idiom).
8
8
  *
@@ -40,7 +40,7 @@ import { atomic_write_json } from "./hooks/state_io.js";
40
40
 
41
41
  // NOTE: the Python docstring says `agents/runtime/state/`, but the code
42
42
  // constant is `agents/state/`. Replicated verbatim — latent docstring/code
43
- // divergence in the Python original (ADR-200 § replicate latent bugs).
43
+ // divergence in the retired Python implementation (ADR-200 § replicate latent bugs).
44
44
  export const STATE_FILE = path.join("agents", "state", "verify-before-complete.json");
45
45
 
46
46
  // Tool names across platforms whose `command` / `tool_input.command` field
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Verify the post-move state matches the pre-move snapshot byte-for-byte.
4
4
  *
5
- * TypeScript twin of `src/scripts/verify_physical_move.py` (ADR-200, Phase 8 /
5
+ * Ported from the retired Python `src/scripts/verify_physical_move.py` (ADR-200, Phase 8 /
6
6
  * Wave 8b). Mirrors the CLI contract EXACTLY — the `--snapshot`, `--json`
7
7
  * flags, exit codes (0 OK / 1 regression / 2 snapshot-missing), the
8
8
  * stdout/stderr split, byte-identical human + JSON output.
@@ -11,7 +11,7 @@
11
11
  * this script), then loads the fresh outputs and compares them against
12
12
  * `dist/migration/pre-move-snapshot.json`.
13
13
  *
14
- * No behaviour changes — latent Python quirks replicated.
14
+ * Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
15
15
  */
16
16
  import * as fs from 'node:fs';
17
17
  import * as path from 'node:path';
@@ -3,11 +3,11 @@
3
3
  * session_start concern — keep the project-local `./agent-config` wrapper
4
4
  * AND the installed `.git/hooks/pre-commit` gate fresh.
5
5
  *
6
- * TypeScript twin of `src/scripts/wrapper_freshness_hook.py` (ADR-200 —
6
+ * Ported from the retired Python `src/scripts/wrapper_freshness_hook.py` (ADR-200 —
7
7
  * Python→TS migration, Phase 6 / hooks). Public API mirrors the Python
8
8
  * module exactly (snake_case kept deliberately — fidelity over TS idiom).
9
9
  *
10
- * Defense-in-depth twin of the update-command refresh (`upgrade` /
10
+ * Defense-in-depth companion of the update-command refresh (`upgrade` /
11
11
  * `refresh --project`). On every session_start the dispatcher runs this in
12
12
  * the consumer workspace; if a `./agent-config` wrapper exists there and
13
13
  * differs from the canonical template, it is re-stamped so an outdated,
@@ -70,7 +70,7 @@ function _isFile(p: string): boolean {
70
70
  /**
71
71
  * True when project_root is the agent-config package itself.
72
72
  *
73
- * TypeScript twin of `src/scripts/_cli/cmd_refresh.py::_is_source_repo`
73
+ * Ported from the retired Python `src/scripts/_cli/cmd_refresh.py::_is_source_repo`
74
74
  * (unported standalone — inlined here so the hook stays dependency-free
75
75
  * and crash-safe). The broader check (condensed output, packaged source,
76
76
  * or the package's own `package.json` name) makes the freshness self-heal