@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
@@ -1,6 +1,6 @@
1
1
  // Shared helpers for the agent-security corpus linters (road-to-security-pillar.md P1).
2
2
  //
3
- // TypeScript twin of `src/scripts/_lib/security_lint.py` (ADR-200 — Python→TS
3
+ // Ported from the retired Python `src/scripts/_lib/security_lint.py` (ADR-200 — Python→TS
4
4
  // migration). Public API mirrors the Python module exactly (snake_case kept
5
5
  // deliberately) so the two dependent linters — lint_hidden_unicode and
6
6
  // lint_instruction_smuggling — depend on one source of truth.
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Surface-tier (core vs lab) resolution for the install split.
3
3
  *
4
- * TypeScript twin of `src/scripts/_lib/surface_tiers.py` (ADR-200 — Python→TS
4
+ * Ported from the retired Python `src/scripts/_lib/surface_tiers.py` (ADR-200 — Python→TS
5
5
  * migration). Public API mirrors the Python module exactly (snake_case kept
6
6
  * deliberately — fidelity over TS idiom).
7
7
  *
@@ -9,7 +9,7 @@
9
9
  * below WARN_THRESHOLD → no conflict, proceed to create
10
10
  *
11
11
  * Deliberately does NOT touch `memory_signal.ts` — that script is a
12
- * byte-faithful parity twin of its retired Python original ("no
12
+ * byte-faithful parity port of the retired Python implementation ("no
13
13
  * behaviour changes" is a load-bearing contract of that file). This
14
14
  * module is consumed as an ADDITIONAL, advisory check layered on top,
15
15
  * from `check_memory_similarity.ts` and later the knowledge-page
@@ -1,14 +1,14 @@
1
1
  /**
2
2
  * Daily update-check banner for the `agent-config` dispatcher.
3
3
  *
4
- * TypeScript twin of `src/scripts/_lib/update_check.py` (ADR-200,
4
+ * Ported from the retired Python `src/scripts/_lib/update_check.py` (ADR-200,
5
5
  * Phase 2 / Wave 1 batch B). Pure functions: `check_for_update()`
6
6
  * decides whether a banner should be emitted and returns the banner
7
7
  * string (or `null`). The dispatcher prints the returned string to
8
8
  * `stderr` after the subcommand finishes — never delaying the work,
9
9
  * never prompting.
10
10
  *
11
- * Design constraints (mirrored from the Python original):
11
+ * Design constraints (mirrored from the retired Python implementation):
12
12
  *
13
13
  * - Node builtins only (global `fetch` on Node >= 20).
14
14
  * - 1 s hard timeout on the registry call; network failure is silent.
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Vendor-namespaced user-global path resolution.
3
3
  *
4
- * TypeScript twin of `src/scripts/_lib/user_global_paths.py` (ADR-200,
4
+ * Ported from the retired Python `src/scripts/_lib/user_global_paths.py` (ADR-200,
5
5
  * Phase 2 / Wave 1 batch B). Mirrors the Python module's public API
6
6
  * exactly — same exported snake_case names, same semantics, same
7
7
  * path-resolution behavior. Single source of truth for "where does this
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Pure normaliser: raw bench reports → `value-v1` rung dicts.
3
3
  *
4
- * TypeScript twin of `src/scripts/_lib/value_ladder.py` (ADR-200 py2ts
4
+ * Ported from the retired Python `src/scripts/_lib/value_ladder.py` (ADR-200 py2ts
5
5
  * Phase 2 / Wave 2a). Phase 1 Step 2 of the readable-value-dashboard roadmap.
6
6
  *
7
7
  * This module is **pure** — no I/O, no file reads, no clock. Inputs are
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Assemble `value-v1` JSON from on-disk raw bench reports.
3
3
  *
4
- * TypeScript twin of `src/scripts/_lib/value_report.py` (ADR-200 py2ts
4
+ * Ported from the retired Python `src/scripts/_lib/value_report.py` (ADR-200 py2ts
5
5
  * Phase 2 / Wave 2a). Phase 1 Step 3 of the readable-value-dashboard roadmap.
6
6
  *
7
7
  * Reads:
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * Minimal ZIP writer/reader on Node builtins only (`node:zlib`).
3
3
  *
4
- * Internal helper for the TypeScript twin of
5
- * `src/scripts/_lib/claude_desktop_bundler.py` (ADR-200 py2ts Phase 2):
4
+ * Internal helper for the port of the retired Python
5
+ * `src/scripts/_lib/claude_desktop_bundler.py` (ADR-200):
6
6
  * the repo ships no ZIP dependency, and the ADR contract forbids adding
7
7
  * one — so the bundler twin writes the (well-specified) ZIP container
8
8
  * itself and compresses entries with `zlib.deflateRawSync`
@@ -2,15 +2,15 @@
2
2
  /**
3
3
  * Roll up `adoption-snapshots.jsonl` into a Markdown trend report.
4
4
  *
5
- * TypeScript twin of `src/scripts/adoption_report.py` (ADR-200, Phase 8 /
6
- * Wave 8a). The CLI contract is mirrored EXACTLY — the flags `--in` /
5
+ * Ported from the retired Python `src/scripts/adoption_report.py` (ADR-200, Phase 8 /
6
+ * Wave 8a). The CLI contract is pinned — the flags `--in` /
7
7
  * `--out` / `--weeks`, exit codes (0 written · 1 IO failure on read/write),
8
8
  * the stdout/stderr split, byte-identical messages, AND byte-identical
9
9
  * generated Markdown (the report is a write target). Mirrors the shape of
10
10
  * `skill_usage_report.py`: a single file, no external deps. The report is
11
11
  * regenerated on every invocation (idempotent for a given JSONL state).
12
12
  *
13
- * No behaviour changes — latent Python quirks replicated.
13
+ * Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
14
14
  */
15
15
  import * as fs from 'node:fs';
16
16
  import * as path from 'node:path';
@@ -2,8 +2,8 @@
2
2
  /**
3
3
  * Pull the four public adoption signals into a single dated JSONL row.
4
4
  *
5
- * TypeScript twin of `src/scripts/adoption_snapshot.py` (ADR-200, Phase 8
6
- * Wave 8a). Mirrors the Python CLI contract EXACTLY — flags (`--out`,
5
+ * Ported from the retired Python `src/scripts/adoption_snapshot.py` (ADR-200, Phase 8
6
+ * Wave 8a). The CLI contract is pinned — flags (`--out`,
7
7
  * `--no-network`), exit codes (0 / 1 / 2), stdout/stderr split, and the
8
8
  * byte-identical JSONL row (`json.dumps(row)` default separators,
9
9
  * ensure_ascii=True, no trailing space differences).
@@ -59,7 +59,7 @@ const GH_SEARCH_URL_TEMPLATE =
59
59
 
60
60
  const TIMEOUT_S = 10;
61
61
 
62
- // Free-form JSON-ish value type for signal payloads. The Python original uses
62
+ // Free-form JSON-ish value type for signal payloads. the retired Python implementation uses
63
63
  // `dict[str, Any]`; the only documented `any`-shaped surface (HTTP JSON).
64
64
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
65
65
  type Json = any;
@@ -2,13 +2,13 @@
2
2
  /**
3
3
  * One-screen adoption dashboard for the maintainer's weekly review.
4
4
  *
5
- * TypeScript twin of `src/scripts/adoption_status.py` (ADR-200 —
5
+ * Ported from the retired Python `src/scripts/adoption_status.py` (ADR-200 —
6
6
  * Python→TS migration, Phase 8 / Wave 8a). The CLI contract is mirrored
7
7
  * EXACTLY: same flags (`--json`, `--branch`), same exit codes (0 normal,
8
8
  * 1 on registry-read IO error), same byte-identical text + JSON output,
9
9
  * same `ci_status` shell-out (now the `.ts` twin run via `tsx` — no
10
10
  * python3), same `unknown` best-effort fallbacks. No behaviour
11
- * changes — latent bugs replicated.
11
+ * changes — historical quirks preserved (consumers pin the exact behaviour).
12
12
  *
13
13
  * Prints three things in one short block:
14
14
  *
@@ -5,11 +5,11 @@
5
5
  * non-numbered ADRs into an Unnumbered table, hard-fails on duplicate
6
6
  * numbers, filename/frontmatter mismatch, or broken supersedes links.
7
7
  *
8
- * TypeScript twin of `src/scripts/adr/regenerate_index.py` (ADR-200, Phase 8).
9
- * The CLI contract is mirrored EXACTLY — `--dir` (default `docs/adr/`),
8
+ * Ported from the retired Python `src/scripts/adr/regenerate_index.py` (ADR-200).
9
+ * The CLI contract is pinned — `--dir` (default `docs/adr/`),
10
10
  * `--check`, exit codes (0 / 1 / 2), the stdout/stderr split, byte-identical
11
11
  * messages, AND byte-identical generated `INDEX.md`. No behaviour changes —
12
- * latent Python quirks replicated.
12
+ * historical quirks preserved (consumers pin the exact behaviour).
13
13
  */
14
14
  import * as fs from 'node:fs';
15
15
  import * as path from 'node:path';
@@ -1,10 +1,9 @@
1
1
  /**
2
2
  * Shipped baseline prices for the AI Council.
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/_default_prices.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/_default_prices.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 8 / Wave 8g; ported as a prerequisite of
6
- * `update_prices.ts`). Values + ordering + `as_rows()` semantics mirror the
7
- * Python original EXACTLY.
6
+ * `update_prices.ts`). Values + ordering + `as_rows()` semantics are pinned by tests.
8
7
  *
9
8
  * This module is the bootstrap source for `agents/runtime/.agent-prices.md`
10
9
  * when the runtime file is missing, and the network-fallback source for
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Thinking-style advisors — replace-mode call planning (Phase 6).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/advisors.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/advisors.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1). When the user-global
6
6
  * `~/.event4u/agent-config/settings/.ai-council.yml` (always global —
7
7
  * ADR-104) enables an advisor (e.g. `contrarian` bound to
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Airgap detection for the AI Council installer / first-run (step-9 P11 · U1).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/airgap.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/airgap.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1; ai_council FOUNDATION wave). Public surface
6
6
  * mirrors the Python module exactly (snake_case kept deliberately):
7
7
  * `COUNCIL_PROBE_HOSTS`, `DEFAULT_TIMEOUT_S`, `AIRGAP_BANNER`,
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Per-day rolling cost-budget guard for the council (D3).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/budget_guard.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/budget_guard.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1; ai_council FOUNDATION wave). Mirrors the
6
6
  * Python public surface exactly (snake_case kept deliberately):
7
7
  * `LEDGER_FILENAME`, `LEDGER_PATH`, `ROLLING_WINDOW_HOURS`, `SpendEntry`,
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Context bundling for council consultations.
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/bundler.py` (ADR-094 —
4
+ * Ported from the retired Python `src/scripts/ai_council/bundler.py` (ADR-094 —
5
5
  * Python→TS migration, Phase 1).
6
6
  *
7
7
  * Takes a raw artefact (free-form prompt, roadmap path, diff range, or
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Per-provider CLI install hints for `mode: cli` members (step-9 P2).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/cli_hints.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/cli_hints.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1; ai_council FOUNDATION wave). Public surface
6
6
  * mirrors the Python module exactly (snake_case kept deliberately):
7
7
  * `INSTALL_HINTS`, `hint_for`, `format_install_hints`.
@@ -1,5 +1,5 @@
1
- // External-AI clients for the council — byte-identical TypeScript twin of
2
- // `src/scripts/ai_council/clients.py` (py2ts migration, ADR-200).
1
+ // External-AI clients for the council — ported from the retired Python
2
+ // `src/scripts/ai_council/clients.py` (ADR-200).
3
3
  //
4
4
  // Mirrors the contract from `scripts/skill_trigger_eval.py`:
5
5
  // - Tokens come exclusively from `~/.event4u/agent-config/<provider>.key`
@@ -31,7 +31,7 @@
31
31
  // `cli_call_budget.max_calls_per_day.<provider>` quota with state persisted at
32
32
  // `~/.event4u/agent-config/cli-calls.json` (daily UTC reset).
33
33
  //
34
- // TRANSPORT SEAM (TS-only, for tests): the Python original calls
34
+ // TRANSPORT SEAM (TS-only, for tests): the retired Python implementation calls
35
35
  // `subprocess.run` directly inside `CliClient.ask`. The twin routes that one
36
36
  // call through the protected `_runSubprocess(cmd, stdinPayload)` instance
37
37
  // method so a test subclass can stub the transport without live processes —
@@ -154,7 +154,7 @@ export class CouncilResponse {
154
154
  // Python uses `time.monotonic()`. latency_ms is non-deterministic; tests
155
155
  // normalise it. Exposed so tests can pin it if they choose.
156
156
  let _monotonicSource: () => number = () => {
157
- // performance.now() is monotonic milliseconds; the Python original is
157
+ // performance.now() is monotonic milliseconds; the retired Python implementation is
158
158
  // seconds, but we only ever compute `int((now - t0) * 1000)`, so feeding
159
159
  // milliseconds here and dropping the *1000 keeps the same arithmetic.
160
160
  return performance.now();
@@ -967,7 +967,7 @@ export abstract class CliClient extends ExternalAIClient {
967
967
  * `subprocess.run(cmd, input=..., capture_output=True, text=True,
968
968
  * timeout=..., check=False)`. Throws `SubprocessError` for the timeout /
969
969
  * ENOENT / OSError branches so `ask()` can classify them exactly as the
970
- * Python original does. Tests override this to inject canned output without
970
+ * historical contract requires. Tests override this to inject canned output without
971
971
  * spawning a process.
972
972
  */
973
973
  protected _runSubprocess(cmd: string[], stdinPayload: string | null): SubprocessResult {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Compile the human-edited low-impact corpus Markdown to a YAML lockfile.
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/compile_corpus.py`
4
+ * Ported from the retired Python `src/scripts/ai_council/compile_corpus.py`
5
5
  * (ADR-200 — Python→TS migration, Phase 1).
6
6
  *
7
7
  * Step-10 — see `agents/roadmaps/step-10-corpus-yaml-lockfile.md`.
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Confidence gate for solo-member dispatch (step-9 P13).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/confidence_gate.py`
4
+ * Ported from the retired Python `src/scripts/ai_council/confidence_gate.py`
5
5
  * (ADR-200 — Python→TS migration, Phase 1). Defense-in-depth on top of
6
6
  * shadow-mode SLO: when a single member's response signals uncertainty,
7
7
  * presents unresolved alternatives, or refuses, the dispatcher escalates
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Council configuration loader — single source of truth.
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/config.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/config.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 12). Mirrors the Python module's public
6
6
  * surface and validation behaviour byte-for-byte: same exported
7
7
  * snake_case names, same defaults, same error messages, same precedence.
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Consensus scoring for the analysis lens (Phase 4 / F3).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/consensus.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/consensus.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1). After the final deliberation round, members
6
6
  * score each other's findings. The renderer ranks findings by consensus and
7
7
  * surfaces a "Minority Views" section for sub-threshold items so they remain
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Persistent council events log (step-8 phase 3).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/events_log.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/events_log.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1). Appends one JSON line per council event to
6
6
  * `<project_root>/agents/runtime/council/events.log`. Schema v1 carries the
7
7
  * minimum needed to answer the "why did the council skip / block this?"
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Preview builder for `/memory learn-low-impact` (step-9 Phase 7).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/learn_low_impact_preview.py`
4
+ * Ported from the retired Python `src/scripts/ai_council/learn_low_impact_preview.py`
5
5
  * (ADR-200 — Python→TS migration, Phase 1).
6
6
  *
7
7
  * Default invocation is `--preview`: build a structured plan describing
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Hardened parser for `agents/decisions/low-impact-decisions.md` (step-9 P4).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/low_impact_corpus.py`
4
+ * Ported from the retired Python `src/scripts/ai_council/low_impact_corpus.py`
5
5
  * (ADR-200 — Python→TS migration, Phase 1).
6
6
  *
7
7
  * Replaces the silent-skip behaviour of the inline regex in
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Intake trigger + dedup for `agents/decisions/low-impact-decisions.md` (Phase 12).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/low_impact_intake.py`
4
+ * Ported from the retired Python `src/scripts/ai_council/low_impact_intake.py`
5
5
  * (ADR-200 — Python→TS migration, Phase 1). Pure-text, deterministic.
6
6
  *
7
7
  * User signals "leichte Frage" / "low-impact question" / equivalents
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Mode resolution for council members (Phase 2b).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/modes.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/modes.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1). Pure resolver — never touches the
6
6
  * filesystem or environment. Callers pass in already-loaded values from
7
7
  * `.agent-settings.yml`.
@@ -1,7 +1,7 @@
1
1
  // Council orchestrator — fan out one question to multiple members.
2
2
  //
3
- // py2ts twin of orchestrator.py (ADR-200). Byte-for-byte parity with the
4
- // Python original: member dispatch order, sequential cost gating, the overrun
3
+ // Port of the retired Python orchestrator.py (ADR-200). The historical contract
4
+ // is pinned byte-for-byte by tests: member dispatch order, sequential cost gating, the overrun
5
5
  // callback contract, multi-round debate / peer-review / consensus passes, and
6
6
  // the Markdown render assembly are all mirrored exactly.
7
7
  //
@@ -69,7 +69,7 @@ import {
69
69
  // The orchestrator formats USD / scores / strengths via Python f-string
70
70
  // specs (`:.4f`, `:.2f`, `:.1f`) which round half-to-even on the decimal
71
71
  // representation. JS `toFixed` rounds half away from zero, so the spec
72
- // formatting is reimplemented to stay byte-exact with the Python original.
72
+ // formatting is reimplemented to stay byte-exact with the retired Python implementation.
73
73
 
74
74
  /**
75
75
  * Format `x` to `ndigits` decimals using round-half-to-even, matching
@@ -1,14 +1,14 @@
1
1
  /**
2
2
  * Runtime pricing layer for the AI Council.
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/pricing.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/pricing.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 8 / Wave 8g; ported as a prerequisite of
6
6
  * `update_prices.ts`). Mirrors the Python public surface used by the
7
7
  * caller: `PRICES_FILE`, `load_prices`, `is_stale`, `_render_markdown`,
8
8
  * plus `bootstrap_from_defaults` / `last_monday_utc` for completeness.
9
9
  *
10
10
  * Reads `agents/runtime/.agent-prices.md`, parses YAML frontmatter + the
11
- * Markdown table. No behaviour changes — latent Python quirks replicated,
11
+ * Markdown table. Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.,
12
12
  * including the byte-identical `{x:>6.2f}` row formatting.
13
13
  */
14
14
  import * as fs from 'node:fs';
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Probation promote-and-prune for `agents/decisions/low-impact-decisions.md`.
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/probation_gate.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/probation_gate.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1; ai_council FOUNDATION wave). Public surface
6
6
  * mirrors the Python module exactly (snake_case kept deliberately):
7
7
  * `WINDOW_DAYS`, `PROMOTION_THRESHOLD`, `GateRun`, `run_gate`.
@@ -20,7 +20,7 @@
20
20
  *
21
21
  * PARITY NOTES
22
22
  * - The line regex uses U+2014 (em-dash) and U+00B7 (middle dot) literals,
23
- * byte-identical to the Python `re` pattern; matched with the `u` flag so
23
+ * matching the historical `re` pattern byte-for-byte; the `u` flag keeps
24
24
  * `\s` / `\d` align with Python's defaults (no MULTILINE).
25
25
  * - `splitlines()` is mirrored by `_splitlines` (full CPython boundary set).
26
26
  * - Date math is done on tz-aware UTC epoch-millis; `d >= cutoff` matches
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Lightweight project-context detector for the council handoff preamble.
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/project_context.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/project_context.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1). Reads the bare minimum from the repo root —
6
6
  * `composer.json`, `package.json`, root `README.md` — and returns a neutral
7
7
  * `ProjectContext`. All fields are optional; missing data is `null` and the
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Neutrality system prompts for the council.
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/prompts.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/prompts.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1). Council members must NOT see the host
6
6
  * agent's reasoning, internal state, or framing language. Each prompt asks
7
7
  * for an independent critique on the artefact's own merits.
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * Privacy floor for `agents/decisions/low-impact-decisions.md` (Phase 12).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/redact_low_impact_entry.py`
4
+ * Ported from the retired Python `src/scripts/ai_council/redact_low_impact_entry.py`
5
5
  * (ADR-200 — Python→TS migration, Phase 1). Security-sensitive: the
6
6
  * redaction regexes and refusal markers are matched byte-for-byte against
7
- * the Python original.
7
+ * the retired Python implementation.
8
8
  *
9
9
  * Non-bypassable redactor invoked on intake (write-side) AND on
10
10
  * upstream (`/learn-low-impact`, leave-the-repo side). Both gates call
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Session persistence for council consultations (D2).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/session.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/session.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1).
6
6
  *
7
7
  * Every `/council` call that completes (success or partial) writes an
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Shadow-mode dispatch for low-impact solo-member decisions (step-9 P10).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/shadow_dispatch.py`
4
+ * Ported from the retired Python `src/scripts/ai_council/shadow_dispatch.py`
5
5
  * (ADR-200 — Python→TS migration, Phase 1).
6
6
  *
7
7
  * When `low_impact.dispatch: single` is active, a Bernoulli-sampled subset
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Solo-member dispatch — step-9 P9 (U2).
3
3
  *
4
- * TypeScript twin of `src/scripts/ai_council/solo_dispatch.py` (ADR-200 —
4
+ * Ported from the retired Python `src/scripts/ai_council/solo_dispatch.py` (ADR-200 —
5
5
  * Python→TS migration, Phase 1). Picks the first enabled, auth-valid member
6
6
  * from `routing.solo_member_fallback_chain` so low-impact decisions can
7
7
  * optionally route to a single member instead of the full council. The
@@ -2,8 +2,8 @@
2
2
  /**
3
3
  * Project-analysis freshness loop — a cheap *heuristic* staleness signal.
4
4
  *
5
- * TypeScript twin of `src/scripts/analysis_freshness.py` (ADR-200,
6
- * Python→TypeScript migration). The CLI contract is mirrored EXACTLY — the
5
+ * Ported from the retired Python `src/scripts/analysis_freshness.py` (ADR-200,
6
+ * Python→TypeScript migration). The CLI contract is pinned — the
7
7
  * required mutually-exclusive group (`--stamp FILE | --stamp-all | --check FILE
8
8
  * | --check-all`), the argparse usage banner + error text (missing required
9
9
  * group → exit 2, conflicting args → exit 2, missing value → exit 2,
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * R3 Phase 4 mass-annotator — discovery frontmatter helper.
4
4
  *
5
- * TypeScript twin of `src/scripts/annotate_discovery.py` (ADR-200 —
5
+ * Ported from the retired Python `src/scripts/annotate_discovery.py` (ADR-200 —
6
6
  * Python→TS migration, Phase 8 / Wave 8g). Mirrors the Python CLI contract
7
7
  * EXACTLY — the `--pack` choice flag + positional `paths`, exit code (0),
8
8
  * the stdout/stderr split, byte-identical messages, and byte-identical
@@ -20,7 +20,7 @@
20
20
  * Idempotent: re-runs leave already-annotated files untouched.
21
21
  *
22
22
  * Mapping table (`PACK_DEFAULTS`) is the council-locked authority. No
23
- * behaviour changes — latent Python quirks replicated.
23
+ * behaviour changes — historical quirks preserved (consumers pin the exact behaviour).
24
24
  */
25
25
  import * as crypto from 'node:crypto';
26
26
  import * as fs from 'node:fs';
@@ -2,8 +2,8 @@
2
2
  /**
3
3
  * Persist a `modules:` block into `.agent-project-settings.yml`.
4
4
  *
5
- * TypeScript twin of `src/scripts/apply_modules_config.py` (ADR-200,
6
- * Phase 8 / Wave 8g). Mirrors the Python CLI contract EXACTLY — `--project`
5
+ * Ported from the retired Python `src/scripts/apply_modules_config.py` (ADR-200,
6
+ * Phase 8 / Wave 8g). The CLI contract is pinned — `--project`
7
7
  * / `--input-file` / `--decline` / `--acknowledge-only` flags, JSON payload
8
8
  * shape + validation, comment-preserving line-patch (byte-identical written
9
9
  * output), exit codes (0 ok/no-op, 2 args/unreachable/malformed-JSON,
@@ -3,8 +3,8 @@
3
3
  * Audit per-area ADR coverage against docs/contracts/ and the canonical
4
4
  * AREAS inventory. Contract: docs/contracts/adr-layout.md.
5
5
  *
6
- * TypeScript twin of `src/scripts/audit_adr_coverage.py` (ADR-200, Phase 8 /
7
- * Wave 8a). The CLI contract is mirrored EXACTLY — the mutually exclusive
6
+ * Ported from the retired Python `src/scripts/audit_adr_coverage.py` (ADR-200, Phase 8 /
7
+ * Wave 8a). The CLI contract is pinned — the mutually exclusive
8
8
  * `--check` / `--regen-area-readme AREA` group (default `--report`), exit
9
9
  * codes, the stdout/stderr split, byte-identical messages, AND byte-identical
10
10
  * generated `README.md` for `--regen-area-readme`.
@@ -15,7 +15,7 @@
15
15
  * ADRs and dangling references.
16
16
  * --regen-area-readme <area> rewrite docs/adrs/<area>/README.md. Idempotent.
17
17
  *
18
- * No behaviour changes — latent Python quirks replicated.
18
+ * Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
19
19
  */
20
20
  import * as fs from 'node:fs';
21
21
  import * as path from 'node:path';
@@ -3,7 +3,7 @@
3
3
  * Audit auto-rules for the Rule-Governance pass (Phase 5.1 of
4
4
  * road-to-augment-limit-fit).
5
5
  *
6
- * TypeScript twin of `src/scripts/audit_auto_rules.py` (ADR-200 —
6
+ * Ported from the retired Python `src/scripts/audit_auto_rules.py` (ADR-200 —
7
7
  * Python→TS migration, Phase 8 / Wave 8c). Mirrors the Python CLI
8
8
  * contract EXACTLY — no flags, exit codes (0 ok / 1 no source rules),
9
9
  * the stdout/stderr split, byte-identical stdout messages, and
@@ -12,7 +12,7 @@
12
12
  *
13
13
  * Imports the `_lib/agent_src` twin (the SAME surface the Python
14
14
  * original imports `artefact_roots` from). No behaviour changes —
15
- * latent Python quirks replicated.
15
+ * historical quirks preserved (consumers pin the exact behaviour).
16
16
  *
17
17
  * Walk every artefact root's `rules/*.md`, collect per-rule
18
18
  * frontmatter (`description`, `triggers`, `routes_to`, `tier`),
@@ -2,8 +2,8 @@
2
2
  /**
3
3
  * audit_cloud_compatibility.ts — tier each artefact for cloud distribution.
4
4
  *
5
- * TypeScript twin of `src/scripts/audit_cloud_compatibility.py` (ADR-200,
6
- * Phase 8 / Wave 8a). The CLI contract is mirrored EXACTLY — the flags
5
+ * Ported from the retired Python `src/scripts/audit_cloud_compatibility.py` (ADR-200,
6
+ * Phase 8 / Wave 8a). The CLI contract is pinned — the flags
7
7
  * `--details` / `--tier` / `--cloud-action` / `--format` / `--iron-law`,
8
8
  * exit codes, the stdout/stderr split, byte-identical messages, AND
9
9
  * byte-identical JSON output (`json.dumps(indent=2)` — insertion-order keys,
@@ -14,7 +14,7 @@
14
14
  * `<!-- cloud_safe: noop|degrade -->` markers, and emits a JSON summary
15
15
  * (or `--details` rows, or the `--iron-law` bypass scan).
16
16
  *
17
- * No behaviour changes — latent Python quirks replicated (including the
17
+ * Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour. (including the
18
18
  * Counter.most_common tie-ordering and the regex-findall set dedup).
19
19
  */
20
20
  import * as fs from 'node:fs';
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Command-surface inventory + overlap detection + usage signal.
4
4
  *
5
- * TypeScript twin of `src/scripts/audit_command_surface.py` (ADR-200, Phase 8 /
5
+ * Ported from the retired Python `src/scripts/audit_command_surface.py` (ADR-200, Phase 8 /
6
6
  * Wave 8b). Mirrors the CLI contract EXACTLY — the `--root`, `--budget`,
7
7
  * `--check-new`, `--baseline`, `--quiet` flags, exit codes (0 ok / 1 budget
8
8
  * violation / 2 root-missing / 3 git error), the stdout/stderr split,
@@ -14,7 +14,7 @@
14
14
  * overlap pairs by keyword-cosine similarity, and adds a usage signal from
15
15
  * git history.
16
16
  *
17
- * No behaviour changes — latent Python quirks replicated (incl. git-history
17
+ * Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour. (incl. git-history
18
18
  * `days_since_*` values, which depend on the wall clock and the worktree's
19
19
  * git log — golden parity is run in the SAME repo so both sides observe the
20
20
  * identical history; the day arithmetic is reproduced with the same floor).