@event4u/agent-config 9.7.0 → 9.9.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 (901) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +314 -190
  3. package/CONTRIBUTING.md +23 -7
  4. package/MIGRATION.md +20 -0
  5. package/README.md +57 -11
  6. package/dist/agent-src/commands/agents/audit.md +1 -1
  7. package/dist/agent-src/commands/agents/optimize.md +2 -2
  8. package/dist/agent-src/commands/agents/user.md +1 -1
  9. package/dist/agent-src/commands/agents.md +1 -1
  10. package/dist/agent-src/commands/check-current-md.md +3 -3
  11. package/dist/agent-src/commands/commit/in-chunks.md +8 -0
  12. package/dist/agent-src/commands/commit.md +17 -0
  13. package/dist/agent-src/commands/fix/portability.md +2 -2
  14. package/dist/agent-src/commands/fix/pr-comments-loop.md +136 -0
  15. package/dist/agent-src/commands/fix/refs.md +2 -2
  16. package/dist/agent-src/commands/fix/route.md +4 -3
  17. package/dist/agent-src/commands/fix.md +9 -6
  18. package/dist/agent-src/commands/ghostwriter.md +1 -1
  19. package/dist/agent-src/commands/image.md +1 -1
  20. package/dist/agent-src/commands/optimize/augmentignore.md +1 -1
  21. package/dist/agent-src/commands/optimize/skills.md +2 -2
  22. package/dist/agent-src/commands/post-as.md +1 -1
  23. package/dist/agent-src/commands/pr/create.md +4 -0
  24. package/dist/agent-src/commands/research.md +1 -1
  25. package/dist/agent-src/commands/roadmap/ai-council.md +1 -1
  26. package/dist/agent-src/commands/security-audit-config.md +1 -1
  27. package/dist/agent-src/commands/team/delegate.md +4 -0
  28. package/dist/agent-src/commands/video.md +1 -1
  29. package/dist/agent-src/contexts/authority/kernel-rule-edits.md +1 -1
  30. package/dist/agent-src/contexts/contracts/emergency-triage-block.md +2 -2
  31. package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +48 -2
  32. package/dist/agent-src/contexts/execution/orchestration-telemetry.md +10 -0
  33. package/dist/agent-src/contexts/execution/subagent-modes-detail.md +109 -8
  34. package/dist/agent-src/contexts/execution/subagent-response-contract.md +20 -0
  35. package/dist/agent-src/contexts/execution/subagent-spawn-contract.md +53 -3
  36. package/dist/agent-src/contexts/override-system.md +75 -5
  37. package/dist/agent-src/rules/code-provenance.md +112 -0
  38. package/dist/agent-src/rules/context-hygiene.md +2 -0
  39. package/dist/agent-src/rules/doc-screenshot-hygiene.md +97 -0
  40. package/dist/agent-src/rules/domain-safety-pii.md +1 -0
  41. package/dist/agent-src/rules/external-code-graph-interop.md +13 -3
  42. package/dist/agent-src/rules/framework-neutrality-in-generic-skills.md +2 -0
  43. package/dist/agent-src/rules/git-history-discipline.md +2 -0
  44. package/dist/agent-src/rules/history-discipline.md +80 -0
  45. package/dist/agent-src/rules/language-and-tone.md +2 -0
  46. package/dist/agent-src/rules/lethal-trifecta-guard.md +3 -0
  47. package/dist/agent-src/rules/media-governance-routing.md +2 -0
  48. package/dist/agent-src/rules/minimal-safe-diff.md +2 -0
  49. package/dist/agent-src/rules/no-roadmap-references.md +4 -1
  50. package/dist/agent-src/rules/non-destructive-by-default.md +20 -0
  51. package/dist/agent-src/rules/onboarding-gate.md +2 -0
  52. package/dist/agent-src/rules/output-discipline.md +2 -0
  53. package/dist/agent-src/rules/persona-governance.md +2 -0
  54. package/dist/agent-src/rules/php-coding.md +1 -0
  55. package/dist/agent-src/rules/preservation-guard.md +3 -0
  56. package/dist/agent-src/rules/reviewer-awareness.md +1 -0
  57. package/dist/agent-src/rules/roadmap-ci-steps-policy.md +1 -0
  58. package/dist/agent-src/rules/roadmap-progress-sync.md +9 -0
  59. package/dist/agent-src/rules/scale-discipline.md +92 -0
  60. package/dist/agent-src/rules/secret-vcs-guard.md +106 -0
  61. package/dist/agent-src/rules/security-sensitive-stop.md +11 -1
  62. package/dist/agent-src/rules/session-canary.md +77 -0
  63. package/dist/agent-src/rules/skill-quality.md +2 -0
  64. package/dist/agent-src/rules/source-confidentiality.md +2 -0
  65. package/dist/agent-src/rules/source-of-truth.md +2 -0
  66. package/dist/agent-src/rules/telegraph-speak.md +2 -0
  67. package/dist/agent-src/rules/token-optimizer-maintenance.md +3 -1
  68. package/dist/agent-src/rules/tool-safety.md +4 -1
  69. package/dist/agent-src/rules/untrusted-input-defense.md +10 -0
  70. package/dist/agent-src/rules/verify-before-complete.md +2 -0
  71. package/dist/agent-src/skills/adr-create/SKILL.md +17 -1
  72. package/dist/agent-src/skills/agent-security-review/SKILL.md +1 -1
  73. package/dist/agent-src/skills/code-intelligence/SKILL.md +97 -0
  74. package/dist/agent-src/skills/condense-memory/SKILL.md +1 -1
  75. package/dist/agent-src/skills/corpus-grounding/SKILL.md +0 -3
  76. package/dist/agent-src/skills/description-assist/SKILL.md +1 -1
  77. package/dist/agent-src/skills/design-review/SKILL.md +5 -6
  78. package/dist/agent-src/skills/design-tokens/SKILL.md +0 -1
  79. package/dist/agent-src/skills/gated-reach/SKILL.md +185 -0
  80. package/dist/agent-src/skills/gated-reach/evals/triggers.json +72 -0
  81. package/dist/agent-src/skills/history-design/SKILL.md +101 -0
  82. package/dist/agent-src/skills/history-design/evals/triggers.json +17 -0
  83. package/dist/agent-src/skills/humanizer/SKILL.md +3 -3
  84. package/dist/agent-src/skills/image-analyser/SKILL.md +14 -12
  85. package/dist/agent-src/skills/image-editing/SKILL.md +2 -1
  86. package/dist/agent-src/skills/image-generation/SKILL.md +2 -1
  87. package/dist/agent-src/skills/image-provider-routing/SKILL.md +2 -2
  88. package/dist/agent-src/skills/launch-readiness/SKILL.md +1 -1
  89. package/dist/agent-src/skills/license-compliance-audit/SKILL.md +161 -0
  90. package/dist/agent-src/skills/license-compliance-audit/evals/triggers.json +52 -0
  91. package/dist/agent-src/skills/license-compliance-borrow-check/SKILL.md +145 -0
  92. package/dist/agent-src/skills/license-compliance-borrow-check/evals/triggers.json +52 -0
  93. package/dist/agent-src/skills/license-compliance-credits/SKILL.md +97 -0
  94. package/dist/agent-src/skills/license-compliance-credits/evals/triggers.json +52 -0
  95. package/dist/agent-src/skills/md-language-check/SKILL.md +1 -1
  96. package/dist/agent-src/skills/override-management/SKILL.md +1 -1
  97. package/dist/agent-src/skills/prediction-pool-optimizer/SKILL.md +7 -7
  98. package/dist/agent-src/skills/project-analysis-core/SKILL.md +1 -1
  99. package/dist/agent-src/skills/prompt-engineering-image/SKILL.md +3 -2
  100. package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +2 -2
  101. package/dist/agent-src/skills/readme-writing/SKILL.md +6 -1
  102. package/dist/agent-src/skills/recursive-verification/SKILL.md +6 -0
  103. package/dist/agent-src/skills/refine-ticket/SKILL.md +3 -3
  104. package/dist/agent-src/skills/roadmap-writing/SKILL.md +4 -0
  105. package/dist/agent-src/skills/rtk-output-filtering/SKILL.md +31 -12
  106. package/dist/agent-src/skills/rule-refactor/SKILL.md +3 -3
  107. package/dist/agent-src/skills/schema-review/SKILL.md +92 -0
  108. package/dist/agent-src/skills/schema-review/evals/triggers.json +17 -0
  109. package/dist/agent-src/skills/screenshot-hygiene/SKILL.md +171 -0
  110. package/dist/agent-src/skills/secrets-management/SKILL.md +43 -1
  111. package/dist/agent-src/skills/security-audit/SKILL.md +1 -1
  112. package/dist/agent-src/skills/security-maturity-assessment/SKILL.md +1 -1
  113. package/dist/agent-src/skills/skill-improvement-pipeline/SKILL.md +3 -3
  114. package/dist/agent-src/skills/skill-writing/SKILL.md +2 -2
  115. package/dist/agent-src/skills/source-discovery/SKILL.md +5 -5
  116. package/dist/agent-src/skills/subagent-orchestration/SKILL.md +45 -85
  117. package/dist/agent-src/skills/subagent-orchestration/prompts/README.md +5 -4
  118. package/dist/agent-src/skills/subagent-orchestration/prompts/adversarial-verification-council.md +29 -0
  119. package/dist/agent-src/skills/subagent-orchestration/prompts/do-and-judge-two-stage.md +29 -0
  120. package/dist/agent-src/skills/subagent-orchestration/prompts/do-and-judge.md +29 -0
  121. package/dist/agent-src/skills/subagent-orchestration/prompts/do-competitively.md +29 -0
  122. package/dist/agent-src/skills/subagent-orchestration/prompts/do-in-parallel.md +29 -0
  123. package/dist/agent-src/skills/subagent-orchestration/prompts/do-in-steps.md +29 -0
  124. package/dist/agent-src/skills/subagent-orchestration/prompts/do-in-worktrees.md +29 -0
  125. package/dist/agent-src/skills/subagent-orchestration/prompts/judge-with-debate.md +29 -0
  126. package/dist/agent-src/skills/systematic-debugging/SKILL.md +2 -2
  127. package/dist/agent-src/skills/tailwind-engineer/SKILL.md +2 -3
  128. package/dist/agent-src/skills/token-optimizer/SKILL.md +4 -4
  129. package/dist/agent-src/skills/verify-repair-loop/SKILL.md +4 -0
  130. package/dist/agent-src/skills/worktree-lifecycle/SKILL.md +2 -3
  131. package/dist/agent-src/templates/AGENTS.md +1 -1
  132. package/dist/agent-src/templates/agents/.gitattributes.fragment +25 -6
  133. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  134. package/dist/agent-src/templates/command.md +3 -3
  135. package/dist/agent-src/templates/github-workflows/secret-scan.yml +65 -0
  136. package/dist/agent-src/templates/persona.md +2 -2
  137. package/dist/agent-src/templates/rule.md +2 -2
  138. package/dist/agent-src/templates/scripts/telemetry/engagement.ts +77 -0
  139. package/dist/agent-src/templates/scripts/telemetry_record.ts +33 -1
  140. package/dist/cli/commands/doctorShell.js +20 -0
  141. package/dist/cli/commands/doctorShell.js.map +1 -1
  142. package/dist/cli/commands/rtkDetect.js +58 -0
  143. package/dist/cli/commands/rtkDetect.js.map +1 -0
  144. package/dist/cli/configRoot.js +112 -0
  145. package/dist/cli/configRoot.js.map +1 -0
  146. package/dist/cli/configRoot.test.js +97 -0
  147. package/dist/cli/configRoot.test.js.map +1 -0
  148. package/dist/cli/firstRunNotice.js +70 -0
  149. package/dist/cli/firstRunNotice.js.map +1 -0
  150. package/dist/cli/help.js +4 -1
  151. package/dist/cli/help.js.map +1 -1
  152. package/dist/cli/main.js +54 -5
  153. package/dist/cli/main.js.map +1 -1
  154. package/dist/cli/registry.js +8 -1
  155. package/dist/cli/registry.js.map +1 -1
  156. package/dist/discovery/deprecation-report.md +1 -1
  157. package/dist/discovery/discovery-manifest.json +502 -101
  158. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  159. package/dist/discovery/discovery-manifest.summary.md +6 -4
  160. package/dist/discovery/orphan-report.md +1 -1
  161. package/dist/discovery/packs.json +95 -8
  162. package/dist/discovery/trust-report.md +11 -11
  163. package/dist/discovery/workspaces.json +36 -7
  164. package/dist/hooks/dispatch.js +19475 -0
  165. package/dist/install/agentSwitchDetection.js +75 -0
  166. package/dist/install/agentSwitchDetection.js.map +1 -0
  167. package/dist/install/agentSwitchProfile.js +117 -0
  168. package/dist/install/agentSwitchProfile.js.map +1 -0
  169. package/dist/install/atomic.js +1 -1
  170. package/dist/install/detect.js +1 -1
  171. package/dist/install/install.mjs +791 -486
  172. package/dist/install/rtkDetection.js +213 -0
  173. package/dist/install/rtkDetection.js.map +1 -0
  174. package/dist/install/rule_scope.js +2 -1
  175. package/dist/install/rule_scope.js.map +1 -1
  176. package/dist/install/types.js +2 -2
  177. package/dist/install/wizard-plan.js +1 -1
  178. package/dist/install/wizardDismissals.js +58 -0
  179. package/dist/install/wizardDismissals.js.map +1 -0
  180. package/dist/mcp/awesome-mcp-servers.row.md +1 -1
  181. package/dist/mcp/mcp-cloudflare-catalogue.json +1 -1
  182. package/dist/mcp/registry-manifest.json +15 -4
  183. package/dist/mcp/server.json +20 -0
  184. package/dist/mcp/server.mjs +44292 -0
  185. package/dist/router.json +1 -1
  186. package/dist/scripts/condense.js +14 -7
  187. package/dist/scripts/condense.js.map +1 -1
  188. package/dist/server/app.js +12 -0
  189. package/dist/server/app.js.map +1 -1
  190. package/dist/server/io/sharedWriteCheck.js +101 -0
  191. package/dist/server/io/sharedWriteCheck.js.map +1 -0
  192. package/dist/server/routes/ping.js +32 -0
  193. package/dist/server/routes/ping.js.map +1 -1
  194. package/dist/server/routes/settings.js +21 -4
  195. package/dist/server/routes/settings.js.map +1 -1
  196. package/dist/server/routes/userMd.js +21 -4
  197. package/dist/server/routes/userMd.js.map +1 -1
  198. package/dist/server/routes/wizard.js +68 -25
  199. package/dist/server/routes/wizard.js.map +1 -1
  200. package/dist/server/schemas/settings.js +12 -2
  201. package/dist/server/schemas/settings.js.map +1 -1
  202. package/dist/server/serverInfo.js +6 -2
  203. package/dist/server/serverInfo.js.map +1 -1
  204. package/dist/server/token.js +11 -4
  205. package/dist/server/token.js.map +1 -1
  206. package/dist/server/writeRoot.js +15 -1
  207. package/dist/server/writeRoot.js.map +1 -1
  208. package/dist/shared/capabilities.js +33 -0
  209. package/dist/shared/capabilities.js.map +1 -0
  210. package/dist/shared/capabilities.test.js +39 -0
  211. package/dist/shared/capabilities.test.js.map +1 -0
  212. package/dist/ui/assets/index-BpSQt5vm.js +40 -0
  213. package/dist/ui/assets/index-BpSQt5vm.js.map +1 -0
  214. package/dist/ui/assets/index-jSfMW8_t.css +1 -0
  215. package/dist/ui/index.html +15 -6
  216. package/docs/MIGRATION.md +16 -0
  217. package/docs/guidelines/component-oriented-and-oop-development.md +4 -2
  218. package/package.json +22 -9
  219. package/src/agent-src/templates/AGENTS.md +1 -1
  220. package/src/agent-src/templates/scripts/telemetry/engagement.ts +77 -0
  221. package/src/agent-src/templates/scripts/telemetry_record.ts +33 -1
  222. package/src/config/agent-settings.template.yml +94 -13
  223. package/src/config/discovery/packs.yml +22 -0
  224. package/src/config/discovery/workspaces.yml +1 -1
  225. package/src/config/evaluator-budgets.json +47 -0
  226. package/src/config/hook-latency-budget.json +20 -0
  227. package/src/config/reach-channels.yml +217 -0
  228. package/src/config/reach-prescriptions-intake.yml +200 -0
  229. package/src/install/agentSwitchDetection.ts +90 -0
  230. package/src/install/agentSwitchProfile.ts +131 -0
  231. package/src/install/atomic.ts +1 -1
  232. package/src/install/detect.ts +1 -1
  233. package/src/install/rtkDetection.ts +274 -0
  234. package/src/install/rule_scope.ts +9 -2
  235. package/src/install/types.ts +2 -2
  236. package/src/install/wizard-plan.ts +1 -1
  237. package/src/install/wizardDismissals.ts +60 -0
  238. package/src/scripts/_cli/cmd_doctor.ts +62 -1
  239. package/src/scripts/_cli/cmd_memory_get.ts +197 -0
  240. package/src/scripts/_cli/cmd_refresh.ts +30 -0
  241. package/src/scripts/_dispatch.bash +96 -0
  242. package/src/scripts/_lib/auto_dispatch.corpus.test.ts +64 -1
  243. package/src/scripts/_lib/auto_dispatch.ts +76 -0
  244. package/src/scripts/_lib/detect_target_license.ts +714 -0
  245. package/src/scripts/_lib/exec_evidence.ts +251 -0
  246. package/src/scripts/_lib/fixtures/secret-detector/negatives.txt +15 -0
  247. package/src/scripts/_lib/fixtures/secret-detector/positives.txt +15 -0
  248. package/src/scripts/_lib/install_drift.ts +194 -0
  249. package/src/scripts/_lib/kernel_rules.ts +46 -0
  250. package/src/scripts/_lib/memory_fts_index.ts +390 -0
  251. package/src/scripts/_lib/orchestration_record.ts +91 -2
  252. package/src/scripts/_lib/persistence/adapter_raw_sql.ts +443 -0
  253. package/src/scripts/_lib/persistence/detect_audit_coverage.ts +423 -0
  254. package/src/scripts/_lib/persistence/detect_bounded_reads.ts +154 -0
  255. package/src/scripts/_lib/persistence/detect_index_parity.ts +576 -0
  256. package/src/scripts/_lib/persistence/detect_n1_eloquent.ts +226 -0
  257. package/src/scripts/_lib/persistence/detect_offload.ts +441 -0
  258. package/src/scripts/_lib/persistence/detect_prisma_growth.ts +74 -0
  259. package/src/scripts/_lib/persistence/offload_catalog.ts +73 -0
  260. package/src/scripts/_lib/persistence/types.ts +109 -0
  261. package/src/scripts/_lib/reddit_thread_parse.ts +598 -0
  262. package/src/scripts/_lib/risk_paths.ts +160 -0
  263. package/src/scripts/_lib/rtk_allowlist.ts +44 -0
  264. package/src/scripts/_lib/secret_detector.test.ts +108 -0
  265. package/src/scripts/_lib/secret_detector.ts +328 -0
  266. package/src/scripts/_lib/secret_detector_adversarial.test.ts +116 -0
  267. package/src/scripts/_lib/spawn_env.ts +7 -0
  268. package/src/scripts/_lib/sqlite_guard.ts +191 -0
  269. package/src/scripts/_lib/subagent_spawn.ts +53 -0
  270. package/src/scripts/_lib/tool_probe.ts +359 -0
  271. package/src/scripts/_lib/worker_budget.ts +107 -0
  272. package/src/scripts/adr/regenerate_index.ts +81 -6
  273. package/src/scripts/ai_council/blind_review.ts +0 -0
  274. package/src/scripts/ai_council/config.ts +12 -6
  275. package/src/scripts/ai_council/orchestrator.ts +73 -3
  276. package/src/scripts/ai_team/review_gate.ts +8 -10
  277. package/src/scripts/ai_team/team_dispatch.ts +48 -0
  278. package/src/scripts/audit_adr_coverage.ts +33 -0
  279. package/src/scripts/audit_initial_context.ts +1 -1
  280. package/src/scripts/bench_cross_source_eval.ts +400 -0
  281. package/src/scripts/bench_honesty_score.ts +1093 -0
  282. package/src/scripts/bench_hook_latency.ts +218 -0
  283. package/src/scripts/build_mcp_catalog.ts +275 -0
  284. package/src/scripts/build_mcp_registry_manifest.ts +46 -0
  285. package/src/scripts/build_proof.ts +207 -0
  286. package/src/scripts/chat_history.ts +8 -5
  287. package/src/scripts/check_adr_frontmatter.ts +195 -0
  288. package/src/scripts/check_artefact_count_messaging.ts +4 -0
  289. package/src/scripts/check_backstop_debt.ts +210 -0
  290. package/src/scripts/check_bundle_path_leakage.ts +343 -0
  291. package/src/scripts/check_claims.ts +188 -8
  292. package/src/scripts/check_comparison.ts +12 -0
  293. package/src/scripts/check_enforcement_coverage.ts +592 -0
  294. package/src/scripts/check_evaluator_budgets.ts +99 -0
  295. package/src/scripts/check_kernel_rule_bundle.ts +16 -12
  296. package/src/scripts/check_knowledge_sharing.ts +12 -1
  297. package/src/scripts/check_no_external_sources.ts +2 -2
  298. package/src/scripts/check_reach_channels.ts +407 -0
  299. package/src/scripts/check_reach_staleness.ts +364 -0
  300. package/src/scripts/check_secret_leak.test.ts +47 -0
  301. package/src/scripts/check_secret_leak.ts +290 -0
  302. package/src/scripts/check_source_pointer_freshness.ts +28 -3
  303. package/src/scripts/code_graph/build.ts +0 -0
  304. package/src/scripts/code_graph/cli.ts +379 -0
  305. package/src/scripts/code_graph/detect.ts +186 -0
  306. package/src/scripts/code_graph/extract.ts +386 -0
  307. package/src/scripts/code_graph/intent.ts +45 -0
  308. package/src/scripts/code_graph/loader.ts +123 -0
  309. package/src/scripts/code_graph/query.ts +290 -0
  310. package/src/scripts/code_graph/sanitize.ts +30 -0
  311. package/src/scripts/code_graph/sqlite_store.ts +174 -0
  312. package/src/scripts/code_graph/types.ts +83 -0
  313. package/src/scripts/code_graph/validate.ts +63 -0
  314. package/src/scripts/condense.ts +14 -6
  315. package/src/scripts/context_hygiene_hook.ts +8 -5
  316. package/src/scripts/council_cli.ts +126 -12
  317. package/src/scripts/detect_target_license.ts +203 -0
  318. package/src/scripts/evaluator_umbrella.sh +145 -0
  319. package/src/scripts/external_sources_denylist.json +8 -4
  320. package/src/scripts/first_run_gate_hook.ts +9 -5
  321. package/src/scripts/generate_subagent_floor.ts +194 -0
  322. package/src/scripts/hermetic-install.sh +3 -3
  323. package/src/scripts/hook_manifest.yaml +65 -16
  324. package/src/scripts/hooks/block_kernel_rule_writes.ts +212 -0
  325. package/src/scripts/hooks/block_no_verify.ts +9 -9
  326. package/src/scripts/hooks/code_graph_nudge_hook.ts +191 -0
  327. package/src/scripts/hooks/concern_registry.ts +75 -0
  328. package/src/scripts/hooks/design_slop_hook.ts +8 -5
  329. package/src/scripts/hooks/dispatch_entry.ts +37 -0
  330. package/src/scripts/hooks/dispatch_hook.ts +176 -3
  331. package/src/scripts/hooks/hook_stdin.ts +42 -0
  332. package/src/scripts/hooks/rtk_wrap_hook.ts +26 -12
  333. package/src/scripts/hot_context_hook.ts +7 -6
  334. package/src/scripts/injection_scan_hook.ts +9 -1
  335. package/src/scripts/install +6 -6
  336. package/src/scripts/install-hooks.sh +4 -4
  337. package/src/scripts/install.sh +5 -4
  338. package/src/scripts/install.ts +264 -23
  339. package/src/scripts/iron_law_sha.ts +3 -12
  340. package/src/scripts/learning_sidecar.ts +0 -0
  341. package/src/scripts/lint_budget_ownership.ts +89 -0
  342. package/src/scripts/lint_command_routing.ts +35 -5
  343. package/src/scripts/lint_command_verbs.ts +42 -9
  344. package/src/scripts/lint_consumer_internal_refs.ts +211 -0
  345. package/src/scripts/lint_discovery_vocabulary.ts +2 -0
  346. package/src/scripts/lint_documented_commands.ts +670 -0
  347. package/src/scripts/lint_framework_leakage.ts +17 -3
  348. package/src/scripts/lint_framework_leakage_allowlist.json +32 -0
  349. package/src/scripts/lint_governed_writes.ts +335 -0
  350. package/src/scripts/lint_hidden_unicode.ts +6 -0
  351. package/src/scripts/lint_mcp_registry_manifest.ts +26 -1
  352. package/src/scripts/lint_memory_tripwire.ts +186 -0
  353. package/src/scripts/lint_override_kernel_guard.ts +267 -0
  354. package/src/scripts/lint_persistence.ts +171 -0
  355. package/src/scripts/lint_pre_migration_refs.ts +106 -0
  356. package/src/scripts/lint_provenance.ts +547 -0
  357. package/src/scripts/lint_provenance_vocabulary.ts +437 -0
  358. package/src/scripts/lint_spawn_payload.ts +283 -0
  359. package/src/scripts/lint_store_boundary.ts +152 -0
  360. package/src/scripts/lint_versioned_cache.ts +7 -1
  361. package/src/scripts/mcp_server/__main__.ts +7 -2
  362. package/src/scripts/mcp_server/catalog.ts +23 -1
  363. package/src/scripts/mcp_server/consumer_tool_catalog.json +563 -193
  364. package/src/scripts/mcp_server/prompts.ts +6 -0
  365. package/src/scripts/mcp_server/tool_catalog_source.ts +332 -0
  366. package/src/scripts/mcp_server/tools.ts +56 -5
  367. package/src/scripts/mcp_telemetry_query.ts +2 -33
  368. package/src/scripts/mcp_telemetry_store.ts +64 -34
  369. package/src/scripts/measure_rule_budget.ts +3 -12
  370. package/src/scripts/memory_learn_hook.ts +126 -0
  371. package/src/scripts/memory_lookup.ts +0 -0
  372. package/src/scripts/memory_replay_24.ts +312 -0
  373. package/src/scripts/memory_report.ts +16 -3
  374. package/src/scripts/memory_signal.ts +48 -0
  375. package/src/scripts/memory_status.ts +6 -0
  376. package/src/scripts/minimal_safe_diff_hook.ts +8 -5
  377. package/src/scripts/onboarding_gate_hook.ts +8 -5
  378. package/src/scripts/orchestration_record.ts +16 -0
  379. package/src/scripts/pr_url_reminder_hook.ts +8 -1
  380. package/src/scripts/prepack-check.mjs +17 -0
  381. package/src/scripts/prepack_lifecycle_check.d.mts +8 -0
  382. package/src/scripts/prepack_lifecycle_check.mjs +82 -0
  383. package/src/scripts/profile_staleness_hook.ts +8 -7
  384. package/src/scripts/reach_doctor.ts +1651 -0
  385. package/src/scripts/release.ts +24 -3
  386. package/src/scripts/report_install_drift.ts +109 -0
  387. package/src/scripts/risk_escalation_shadow.ts +160 -0
  388. package/src/scripts/roadmap_progress_hook.ts +8 -5
  389. package/src/scripts/schemas/agent-settings.schema.json +23 -0
  390. package/src/scripts/schemas/license-policy.schema.json +89 -0
  391. package/src/scripts/schemas/provenance-borrow.schema.json +46 -0
  392. package/src/scripts/schemas/reach-channels.schema.json +134 -0
  393. package/src/scripts/schemas/reach-doctor-payload.schema.json +220 -0
  394. package/src/scripts/schemas/rule.schema.json +20 -0
  395. package/src/scripts/self_review_gate.test.ts +173 -1
  396. package/src/scripts/self_review_gate.ts +155 -15
  397. package/src/scripts/session_canary_hook.ts +182 -0
  398. package/src/scripts/skill_linter.ts +55 -0
  399. package/src/scripts/smoke_quickstart.ts +2 -2
  400. package/src/scripts/surface_probe_hook.ts +8 -7
  401. package/src/scripts/sync_gitattributes.ts +310 -0
  402. package/src/scripts/team_review_gate_hook.ts +13 -16
  403. package/src/scripts/validate_reach_prescriptions.ts +751 -0
  404. package/src/scripts/verify_before_complete_hook.ts +8 -5
  405. package/src/scripts/wrapper_freshness_hook.ts +8 -7
  406. package/src/server/schemas/settings.ts +24 -2
  407. package/src/shared/capabilities.test.ts +43 -0
  408. package/src/shared/capabilities.ts +75 -0
  409. package/src/templates/minimal/agents-overrides-readme.md +20 -0
  410. package/dist/ui/assets/index-BPFMZWUs.css +0 -1
  411. package/dist/ui/assets/index-BiEZiZ31.js +0 -40
  412. package/dist/ui/assets/index-BiEZiZ31.js.map +0 -1
  413. package/docs/CLAIMS.md +0 -261
  414. package/docs/DISTRIBUTION_CHECKLIST.md +0 -170
  415. package/docs/RELEASE_STORY_TEMPLATE.md +0 -37
  416. package/docs/SKILL_CENSUS.md +0 -352
  417. package/docs/adrs/cost/0001-hard-stop-hook.md +0 -114
  418. package/docs/adrs/cost/README.md +0 -9
  419. package/docs/adrs/memory/0001-consumer-side-snapshot.md +0 -119
  420. package/docs/adrs/memory/README.md +0 -10
  421. package/docs/adrs/router/0001-three-tier-routing.md +0 -119
  422. package/docs/adrs/router/README.md +0 -9
  423. package/docs/adrs/schema/0001-json-schema-frontmatter.md +0 -102
  424. package/docs/adrs/schema/README.md +0 -9
  425. package/docs/adrs/smoke/0001-per-tier-smoke-scripts.md +0 -99
  426. package/docs/adrs/smoke/README.md +0 -9
  427. package/docs/adrs/telegraph/0001-default-off-until-bench.md +0 -93
  428. package/docs/adrs/telegraph/README.md +0 -9
  429. package/docs/announcements/2026-05-non-dev-launch.md +0 -79
  430. package/docs/announcements/2026-07-honest-cost-sweep-launch.md +0 -84
  431. package/docs/anti-reskin-gate.md +0 -60
  432. package/docs/architecture/augment-projection.md +0 -70
  433. package/docs/architecture/claude-bundle.md +0 -77
  434. package/docs/architecture/current-onboard-baseline.md +0 -126
  435. package/docs/architecture/current-safety-behavior.md +0 -137
  436. package/docs/architecture/multi-tool-projection.md +0 -125
  437. package/docs/architecture/setup-vs-settings-shared-surface.md +0 -114
  438. package/docs/architecture/source-projection.md +0 -85
  439. package/docs/architecture.md +0 -390
  440. package/docs/archive/CHANGELOG-6.0.0-overview.md +0 -953
  441. package/docs/archive/CHANGELOG-7.0.0.md +0 -419
  442. package/docs/archive/CHANGELOG-pre-2.11.0.md +0 -141
  443. package/docs/archive/CHANGELOG-pre-2.15.0.md +0 -244
  444. package/docs/archive/CHANGELOG-pre-2.16.0.md +0 -48
  445. package/docs/archive/CHANGELOG-pre-2.17.0.md +0 -63
  446. package/docs/archive/CHANGELOG-pre-2.2.0.md +0 -2138
  447. package/docs/archive/CHANGELOG-pre-2.20.0.md +0 -159
  448. package/docs/archive/CHANGELOG-pre-2.25.0.md +0 -191
  449. package/docs/archive/CHANGELOG-pre-2.7.0.md +0 -185
  450. package/docs/archive/CHANGELOG-pre-3.0.0.md +0 -130
  451. package/docs/archive/CHANGELOG-pre-3.1.0.md +0 -167
  452. package/docs/archive/CHANGELOG-pre-3.2.0.md +0 -268
  453. package/docs/archive/CHANGELOG-pre-4.0.0.md +0 -80
  454. package/docs/archive/CHANGELOG-pre-4.5.0.md +0 -289
  455. package/docs/archive/CHANGELOG-pre-5.4.0.md +0 -260
  456. package/docs/archive/CHANGELOG-pre-5.9.0.md +0 -270
  457. package/docs/archive/CHANGELOG-pre-6.0.0.md +0 -473
  458. package/docs/archive/CHANGELOG-pre-7.0.0.md +0 -126
  459. package/docs/archive/CHANGELOG-pre-8.0.0.md +0 -301
  460. package/docs/archive/CHANGELOG-pre-8.1.0.md +0 -316
  461. package/docs/archive/CHANGELOG-pre-8.12.0.md +0 -304
  462. package/docs/archive/CHANGELOG-pre-8.9.0.md +0 -306
  463. package/docs/archive/CHANGELOG-pre-9.2.0.md +0 -276
  464. package/docs/artefact-census.md +0 -71
  465. package/docs/benchmark.md +0 -648
  466. package/docs/benchmark.pinned.yml +0 -31
  467. package/docs/benchmarks.md +0 -85
  468. package/docs/capability-matrix.md +0 -33
  469. package/docs/case-studies/_template.md +0 -60
  470. package/docs/case-studies/frontend-design-positioning.md +0 -86
  471. package/docs/catalog.md +0 -721
  472. package/docs/command-flows.md +0 -272
  473. package/docs/command-naming-audit.md +0 -60
  474. package/docs/comparison.yaml +0 -45
  475. package/docs/contracts/CHANGELOG-conventions.md +0 -149
  476. package/docs/contracts/STABILITY.md +0 -188
  477. package/docs/contracts/adoption-signal-floor.md +0 -127
  478. package/docs/contracts/adr-architectural-consensus-mechanism.md +0 -68
  479. package/docs/contracts/adr-chat-history-split.md +0 -140
  480. package/docs/contracts/adr-command-suggestion.md +0 -144
  481. package/docs/contracts/adr-forecast-construction-shape.md +0 -90
  482. package/docs/contracts/adr-gtm-context-spine.md +0 -116
  483. package/docs/contracts/adr-implement-ticket-runtime.md +0 -121
  484. package/docs/contracts/adr-install-user-type-axis.md +0 -107
  485. package/docs/contracts/adr-layout.md +0 -107
  486. package/docs/contracts/adr-level-6-productization.md +0 -145
  487. package/docs/contracts/adr-mcp-runtime.md +0 -128
  488. package/docs/contracts/adr-product-ui-track.md +0 -381
  489. package/docs/contracts/adr-prompt-driven-execution.md +0 -186
  490. package/docs/contracts/adr-settings-sync-engine.md +0 -128
  491. package/docs/contracts/adr-user-types-axis.md +0 -127
  492. package/docs/contracts/adr-wing4-context-spine.md +0 -126
  493. package/docs/contracts/agent-user-schema.md +0 -170
  494. package/docs/contracts/agents-layout.md +0 -148
  495. package/docs/contracts/agents-md-tech-stack.md +0 -75
  496. package/docs/contracts/ai-council-config.md +0 -829
  497. package/docs/contracts/ai-team-config.md +0 -224
  498. package/docs/contracts/analysis-memory-loop.md +0 -149
  499. package/docs/contracts/at-rest-encryption.md +0 -191
  500. package/docs/contracts/audit-log-v1.md +0 -150
  501. package/docs/contracts/auto-orchestration-v1.md +0 -70
  502. package/docs/contracts/benchmark-ab-contract.md +0 -106
  503. package/docs/contracts/benchmark-corpus-spec.md +0 -125
  504. package/docs/contracts/benchmark-report-schema.md +0 -113
  505. package/docs/contracts/branch-protection-policy.md +0 -139
  506. package/docs/contracts/brand-token-consumption.md +0 -74
  507. package/docs/contracts/capability-boundary.md +0 -69
  508. package/docs/contracts/capability-packs.md +0 -217
  509. package/docs/contracts/ci-cost-budget.md +0 -111
  510. package/docs/contracts/ci-green-floor.md +0 -141
  511. package/docs/contracts/command-category-governance.md +0 -84
  512. package/docs/contracts/command-clusters.md +0 -399
  513. package/docs/contracts/command-surface-tiers.md +0 -176
  514. package/docs/contracts/command-taxonomy.md +0 -137
  515. package/docs/contracts/condensation-default-kill-criterion.md +0 -116
  516. package/docs/contracts/config-presets.md +0 -144
  517. package/docs/contracts/conformance.md +0 -84
  518. package/docs/contracts/consumer-bridge.md +0 -73
  519. package/docs/contracts/context-paths.md +0 -101
  520. package/docs/contracts/context-spine.md +0 -179
  521. package/docs/contracts/cost-dashboard.md +0 -143
  522. package/docs/contracts/cost-enforcement.md +0 -134
  523. package/docs/contracts/cost-profile-defaults.md +0 -110
  524. package/docs/contracts/cost-summary-schema.md +0 -107
  525. package/docs/contracts/creative-pack-boundary.md +0 -63
  526. package/docs/contracts/cross-repo-retrieval.md +0 -64
  527. package/docs/contracts/cross-wing-handoff.md +0 -134
  528. package/docs/contracts/daily-workspace.md +0 -147
  529. package/docs/contracts/decision-engine-gates.md +0 -120
  530. package/docs/contracts/decision-trace-v1.md +0 -177
  531. package/docs/contracts/design-artifact-lifecycle.md +0 -93
  532. package/docs/contracts/design-artifact-verification.md +0 -153
  533. package/docs/contracts/discovery-manifest.md +0 -209
  534. package/docs/contracts/discovery-manifest.schema.json +0 -254
  535. package/docs/contracts/evidence-based-pruning.md +0 -102
  536. package/docs/contracts/explain-modes.md +0 -187
  537. package/docs/contracts/explain-trace.schema.json +0 -144
  538. package/docs/contracts/file-ownership-matrix.json +0 -13941
  539. package/docs/contracts/file-ownership-matrix.md +0 -135
  540. package/docs/contracts/frontmatter-contract.md +0 -140
  541. package/docs/contracts/ghostwriter-schema.md +0 -337
  542. package/docs/contracts/governance-enforcement-projection.md +0 -159
  543. package/docs/contracts/gui-wizard.md +0 -350
  544. package/docs/contracts/harness-expectations.md +0 -128
  545. package/docs/contracts/hook-architecture-v1.md +0 -325
  546. package/docs/contracts/host-agent-protocol.md +0 -110
  547. package/docs/contracts/implement-ticket-flow.md +0 -625
  548. package/docs/contracts/init-telemetry.md +0 -132
  549. package/docs/contracts/injected-block-authenticity-model.md +0 -66
  550. package/docs/contracts/install-layout.md +0 -249
  551. package/docs/contracts/install-scopes.md +0 -82
  552. package/docs/contracts/installed-tools-lockfile.md +0 -144
  553. package/docs/contracts/installer-agent-mode.md +0 -137
  554. package/docs/contracts/iron-law-overrides.txt +0 -26
  555. package/docs/contracts/kernel-membership.md +0 -339
  556. package/docs/contracts/linear-ai-rules-inclusion.md +0 -143
  557. package/docs/contracts/linear-ai-three-layers.md +0 -130
  558. package/docs/contracts/linter-structural-model.md +0 -181
  559. package/docs/contracts/load-context-budget-model.md +0 -259
  560. package/docs/contracts/load-context-schema.md +0 -220
  561. package/docs/contracts/local-analytics.md +0 -160
  562. package/docs/contracts/local-knowledge-ingestion.md +0 -96
  563. package/docs/contracts/local-server-api.md +0 -134
  564. package/docs/contracts/low-impact-corpus-format.md +0 -95
  565. package/docs/contracts/mcp-beta-criteria.md +0 -130
  566. package/docs/contracts/mcp-cloud-scope.md +0 -355
  567. package/docs/contracts/mcp-discovery-phase-notice.md +0 -60
  568. package/docs/contracts/mcp-phase-1-scope.md +0 -272
  569. package/docs/contracts/mcp-registry-manifest.schema.json +0 -129
  570. package/docs/contracts/mcp-tool-inventory.md +0 -64
  571. package/docs/contracts/mcp-tool-stub-envelope.md +0 -78
  572. package/docs/contracts/measurement-baseline.md +0 -103
  573. package/docs/contracts/memory-visibility-v1.md +0 -160
  574. package/docs/contracts/mental-models.md +0 -336
  575. package/docs/contracts/migrate-command.md +0 -233
  576. package/docs/contracts/multi-tool-projection-fidelity.md +0 -134
  577. package/docs/contracts/namespace.md +0 -125
  578. package/docs/contracts/no-runtime-boundary.md +0 -61
  579. package/docs/contracts/one-off-script-lifecycle.md +0 -110
  580. package/docs/contracts/orchestration-dsl-v1.md +0 -153
  581. package/docs/contracts/package-self-orientation.md +0 -163
  582. package/docs/contracts/pilot/agent-authority.md +0 -24
  583. package/docs/contracts/pilot/direct-answers.md +0 -70
  584. package/docs/contracts/pilot/language-and-tone.md +0 -63
  585. package/docs/contracts/plain-language-surface.md +0 -117
  586. package/docs/contracts/prelaunch-diagnostics.md +0 -151
  587. package/docs/contracts/profile-system.md +0 -167
  588. package/docs/contracts/reasoning-discipline-protocol.md +0 -83
  589. package/docs/contracts/release-pr-gating.md +0 -151
  590. package/docs/contracts/release-sizing.md +0 -107
  591. package/docs/contracts/release-trunk-sync.md +0 -105
  592. package/docs/contracts/review-lens-schema.md +0 -64
  593. package/docs/contracts/roadmap-complexity-standard.md +0 -138
  594. package/docs/contracts/role-experience.md +0 -125
  595. package/docs/contracts/router-blending.md +0 -71
  596. package/docs/contracts/rule-classification.md +0 -171
  597. package/docs/contracts/rule-interactions.md +0 -132
  598. package/docs/contracts/rule-interactions.yml +0 -260
  599. package/docs/contracts/rule-priority-hierarchy.md +0 -88
  600. package/docs/contracts/rule-router.md +0 -287
  601. package/docs/contracts/safety-model.md +0 -129
  602. package/docs/contracts/session-profile-overlay.md +0 -157
  603. package/docs/contracts/settings-api.md +0 -264
  604. package/docs/contracts/settings-gui-agent-mode.schema.json +0 -128
  605. package/docs/contracts/settings-sync-yaml-subset.md +0 -139
  606. package/docs/contracts/skill-bundled-assets.md +0 -62
  607. package/docs/contracts/skill-discovery.md +0 -80
  608. package/docs/contracts/skill-distribution-channels.md +0 -66
  609. package/docs/contracts/skill-domains.md +0 -144
  610. package/docs/contracts/skill-dry-run.md +0 -47
  611. package/docs/contracts/skill-family-map.yml +0 -915
  612. package/docs/contracts/smoke-contracts.md +0 -144
  613. package/docs/contracts/subagent-boundary.md +0 -59
  614. package/docs/contracts/surface-agent-contracts.md +0 -153
  615. package/docs/contracts/surface-matrix.md +0 -108
  616. package/docs/contracts/surface-tiers.md +0 -81
  617. package/docs/contracts/telegraph-telemetry.md +0 -83
  618. package/docs/contracts/ticket-bundle-format.md +0 -233
  619. package/docs/contracts/tier-3-contrib-plugin.md +0 -137
  620. package/docs/contracts/trust-and-safety.md +0 -144
  621. package/docs/contracts/ui-stack-extension.md +0 -237
  622. package/docs/contracts/ui-track-flow.md +0 -329
  623. package/docs/contracts/universal-skills.md +0 -91
  624. package/docs/contracts/user-type-schema.md +0 -146
  625. package/docs/contracts/value-dashboard-spec.md +0 -378
  626. package/docs/contracts/value-report-schema.md +0 -168
  627. package/docs/contracts/workflow-packs.md +0 -121
  628. package/docs/contracts/workspace-boundary.md +0 -84
  629. package/docs/contracts/workspace-documents.md +0 -144
  630. package/docs/contracts/write-engine.md +0 -182
  631. package/docs/cookbook.md +0 -152
  632. package/docs/customization.md +0 -685
  633. package/docs/decisions/ADR-001-kernel-swap-deferred.md +0 -109
  634. package/docs/decisions/ADR-002-kernel-bucket-overrides.md +0 -135
  635. package/docs/decisions/ADR-003-flat-cluster-subs-and-colon-syntax.md +0 -137
  636. package/docs/decisions/ADR-004-rule-governance-pruning.md +0 -240
  637. package/docs/decisions/ADR-005-subagent-worktrees.md +0 -120
  638. package/docs/decisions/ADR-006-skill-tools-python-pilot.md +0 -114
  639. package/docs/decisions/ADR-007-agent-discovery-scopes.md +0 -371
  640. package/docs/decisions/ADR-008-installed-tools-manifest.md +0 -160
  641. package/docs/decisions/ADR-009-event4u-namespace.md +0 -188
  642. package/docs/decisions/ADR-010-profile-pack-preset-boundary.md +0 -168
  643. package/docs/decisions/ADR-011-domain-pack-readiness.md +0 -213
  644. package/docs/decisions/ADR-012-typescript-cli-shell.md +0 -162
  645. package/docs/decisions/ADR-013-discovery-frontmatter-contract.md +0 -342
  646. package/docs/decisions/ADR-014-gui-framework-choice.md +0 -136
  647. package/docs/decisions/ADR-015-discovery-manifest-contract.md +0 -146
  648. package/docs/decisions/ADR-016-installer-architecture.md +0 -189
  649. package/docs/decisions/ADR-017-monorepo-physical-layout.md +0 -261
  650. package/docs/decisions/ADR-018-trust-and-safety-layer.md +0 -159
  651. package/docs/decisions/ADR-019-router-json-dist-location.md +0 -124
  652. package/docs/decisions/ADR-020-global-only-consumer-scope.md +0 -213
  653. package/docs/decisions/ADR-021-deployment-shape.md +0 -153
  654. package/docs/decisions/ADR-022-daily-workspace-decomposition.md +0 -140
  655. package/docs/decisions/ADR-023-host-agent-protocol.md +0 -129
  656. package/docs/decisions/ADR-024-workspace-v0-feature-floor.md +0 -126
  657. package/docs/decisions/ADR-025-workspace-chrome.md +0 -119
  658. package/docs/decisions/ADR-026-explain-mode-translation.md +0 -117
  659. package/docs/decisions/ADR-027-changelog-machine-vs-manual.md +0 -129
  660. package/docs/decisions/ADR-028-root-layout.md +0 -147
  661. package/docs/decisions/ADR-029-multi-workspace-deferred.md +0 -122
  662. package/docs/decisions/ADR-030-claude-code-command-projection.md +0 -147
  663. package/docs/decisions/ADR-031-validation-severity-tiers-and-projection-roundtrip.md +0 -97
  664. package/docs/decisions/ADR-032-linked-projects-scope.md +0 -122
  665. package/docs/decisions/ADR-033-distribution-identity-npm-primary.md +0 -81
  666. package/docs/decisions/ADR-034-per-skill-model-recommendation-transport.md +0 -63
  667. package/docs/decisions/ADR-035-model-capability-tiers.md +0 -104
  668. package/docs/decisions/ADR-036-global-install-browser-wizard-handoff.md +0 -106
  669. package/docs/decisions/ADR-037-cost-profile-untangle.md +0 -117
  670. package/docs/decisions/ADR-038-canonical-settings-path.md +0 -96
  671. package/docs/decisions/ADR-039-claude-skills-untracked.md +0 -139
  672. package/docs/decisions/ADR-040-execution-model-projection-time-filtering.md +0 -244
  673. package/docs/decisions/ADR-041-controlled-command-verbs.md +0 -133
  674. package/docs/decisions/ADR-042-runtime-resolver-decision-gate.md +0 -113
  675. package/docs/decisions/ADR-043-monorepo-collapse-to-src-domains.md +0 -128
  676. package/docs/decisions/ADR-044-command-naming-scheme-hyphenated.md +0 -250
  677. package/docs/decisions/ADR-045-src-source-layout-and-profiles-as-views.md +0 -111
  678. package/docs/decisions/ADR-046-thin-command-principle.md +0 -93
  679. package/docs/decisions/ADR-047-framework-neutral-stack-adaptive-commands.md +0 -94
  680. package/docs/decisions/ADR-048-command-justification-rule.md +0 -106
  681. package/docs/decisions/ADR-049-configuration-trust-boundary.md +0 -132
  682. package/docs/decisions/ADR-050-workspace-vs-package-root-boundary.md +0 -121
  683. package/docs/decisions/ADR-051-uncondensed-source-container-relocation.md +0 -114
  684. package/docs/decisions/ADR-052-packages-removal-and-pack-home-migration.md +0 -86
  685. package/docs/decisions/ADR-053-agents-namespace-dual-role-resolution.md +0 -132
  686. package/docs/decisions/ADR-054-rule-adherence-decay-triggered-restate.md +0 -143
  687. package/docs/decisions/ADR-055-flow-layer-data-model.md +0 -235
  688. package/docs/decisions/ADR-056-unvalidated-video-adapters-disposition.md +0 -124
  689. package/docs/decisions/ADR-057-consolidation-evidence-gate-outcomes.md +0 -135
  690. package/docs/decisions/ADR-058-condensed-output-relocation-to-dist.md +0 -94
  691. package/docs/decisions/ADR-059-render-resume-filesystem-as-state.md +0 -161
  692. package/docs/decisions/ADR-060-comfyui-sandbox-model.md +0 -154
  693. package/docs/decisions/ADR-061-corpus-grounding-layer.md +0 -230
  694. package/docs/decisions/ADR-062-encrypt-at-rest-store-architecture.md +0 -121
  695. package/docs/decisions/ADR-063-append-jsonl-encryption-deferred.md +0 -83
  696. package/docs/decisions/ADR-064-append-jsonl-per-record-encryption.md +0 -113
  697. package/docs/decisions/ADR-065-tier3-inbox-handoff-v0.md +0 -86
  698. package/docs/decisions/ADR-066-skill-body-prerendering.md +0 -93
  699. package/docs/decisions/ADR-067-glama-registry-listing.md +0 -259
  700. package/docs/decisions/ADR-068-host-tier-detection.md +0 -90
  701. package/docs/decisions/ADR-069-prompt-renderer.md +0 -97
  702. package/docs/decisions/ADR-070-tier1-drive-loop.md +0 -94
  703. package/docs/decisions/ADR-071-launch-drive-integration.md +0 -95
  704. package/docs/decisions/ADR-072-codex-gemini-drive-configs.md +0 -90
  705. package/docs/decisions/ADR-073-drive-health-kill-switch.md +0 -81
  706. package/docs/decisions/ADR-074-drive-kill-switch-auto-recovery.md +0 -84
  707. package/docs/decisions/ADR-075-workspace-gui-drive.md +0 -83
  708. package/docs/decisions/ADR-076-workspace-multi-turn.md +0 -92
  709. package/docs/decisions/ADR-077-workspace-followup-gui.md +0 -70
  710. package/docs/decisions/ADR-078-drive-health-panel.md +0 -70
  711. package/docs/decisions/ADR-079-workspace-host-picker.md +0 -81
  712. package/docs/decisions/ADR-080-host-session-expired-410.md +0 -92
  713. package/docs/decisions/ADR-081-drive-health-reset-and-410-affordance.md +0 -71
  714. package/docs/decisions/ADR-082-410-one-click-relaunch.md +0 -58
  715. package/docs/decisions/ADR-083-session-thread-and-arbitrary-continuation.md +0 -85
  716. package/docs/decisions/ADR-084-drive-health-refresh-on-drive.md +0 -52
  717. package/docs/decisions/ADR-085-mcp-stdio-end-user-distribution-shape.md +0 -158
  718. package/docs/decisions/ADR-086-read-only-cross-agent-mcp-discovery-helper.md +0 -171
  719. package/docs/decisions/ADR-087-installer-e2e-test-strategy.md +0 -111
  720. package/docs/decisions/ADR-088-no-external-runtime-federation.md +0 -144
  721. package/docs/decisions/ADR-089-lean-local-plugin-install.md +0 -111
  722. package/docs/decisions/ADR-090-visibility-command-frontmatter-field.md +0 -95
  723. package/docs/decisions/ADR-091-split-meta-capability-packs.md +0 -113
  724. package/docs/decisions/ADR-092-defer-command-tier-alias-removal.md +0 -117
  725. package/docs/decisions/ADR-093-ai-council-config-user-global.md +0 -117
  726. package/docs/decisions/ADR-094-agent-memory-layer-removal.md +0 -94
  727. package/docs/decisions/ADR-095-workspace-boundary-contract.md +0 -108
  728. package/docs/decisions/ADR-096-analysis-workbench.md +0 -110
  729. package/docs/decisions/ADR-097-mission-recipe-privilege-boundary.md +0 -121
  730. package/docs/decisions/ADR-098-evidence-first-structure-discovery.md +0 -154
  731. package/docs/decisions/ADR-099-file-first-pattern-library.md +0 -87
  732. package/docs/decisions/ADR-100-global-knowledge-card-sharing.md +0 -140
  733. package/docs/decisions/ADR-101-ticket-bundle-emission.md +0 -109
  734. package/docs/decisions/ADR-102-ticket-handoff-paste-and-mcp.md +0 -72
  735. package/docs/decisions/ADR-103-global-knowledge-default-off-until-measured.md +0 -92
  736. package/docs/decisions/ADR-104-ai-council-config-global-only.md +0 -119
  737. package/docs/decisions/ADR-105-automatic-subagent-orchestration.md +0 -108
  738. package/docs/decisions/ADR-106-recursive-verification-benchmark-gate.md +0 -126
  739. package/docs/decisions/ADR-107-legal-domain-pack-adoption.md +0 -70
  740. package/docs/decisions/ADR-108-open-source-forever-no-commercial-tier.md +0 -46
  741. package/docs/decisions/ADR-109-subagent-v1-contract.md +0 -246
  742. package/docs/decisions/ADR-110-discipline-profile-resolution-locus.md +0 -110
  743. package/docs/decisions/ADR-111-canonical-glama-listing.md +0 -97
  744. package/docs/decisions/ADR-112-stdio-lite-stays-read-only.md +0 -92
  745. package/docs/decisions/ADR-113-ci-native-release-label-trigger.md +0 -201
  746. package/docs/decisions/ADR-114-commit-policy-iron-law-override.md +0 -85
  747. package/docs/decisions/ADR-115-command-cluster-consolidation-phase-4.md +0 -91
  748. package/docs/decisions/ADR-116-memory-tripwire-activation-path.md +0 -144
  749. package/docs/decisions/ADR-117-subagents-auto-default-on.md +0 -89
  750. package/docs/decisions/ADR-118-loop-engineering-boundaries.md +0 -162
  751. package/docs/decisions/ADR-119-global-knowledge-default-on.md +0 -104
  752. package/docs/decisions/ADR-120-council-chairman-mode.md +0 -70
  753. package/docs/decisions/ADR-121-knowledge-sensitivity-classes.md +0 -90
  754. package/docs/decisions/ADR-122-adversarial-verification-council.md +0 -166
  755. package/docs/decisions/ADR-123-runtime-security-scope-and-spawn-hardening.md +0 -142
  756. package/docs/decisions/ADR-200-python-to-typescript-migration.md +0 -203
  757. package/docs/decisions/ADR-rule-kernel-and-router.md +0 -133
  758. package/docs/decisions/INDEX.md +0 -136
  759. package/docs/deploy/connector-setup.md +0 -129
  760. package/docs/deploy/env-vars.md +0 -70
  761. package/docs/deploy/policy-cookbook.md +0 -130
  762. package/docs/deploy/quickstart.md +0 -112
  763. package/docs/deploy/small-team-recipe.md +0 -148
  764. package/docs/deploy/team-deployment-posture.md +0 -111
  765. package/docs/design/adversarial-council-eval.md +0 -106
  766. package/docs/design/council-vs-solo-baseline.md +0 -92
  767. package/docs/design/cross-model-parity-eval.md +0 -82
  768. package/docs/design/length-neutral-judge-rerun.md +0 -92
  769. package/docs/design/utilization-window-criteria.md +0 -51
  770. package/docs/development.md +0 -230
  771. package/docs/distribution/awesome-list-submission.md +0 -46
  772. package/docs/distribution/consumer-matrix.md +0 -96
  773. package/docs/distribution/launch-story-draft.md +0 -58
  774. package/docs/distribution/mcp-submission-checklist.md +0 -95
  775. package/docs/distribution/public-install-smoke.md +0 -68
  776. package/docs/distribution/registries.md +0 -117
  777. package/docs/distribution/registry-submissions.md +0 -85
  778. package/docs/distribution/telemetry-privacy.md +0 -128
  779. package/docs/distribution/telemetry-schema.md +0 -174
  780. package/docs/distribution/topics-equivalents-decay-policy.md +0 -51
  781. package/docs/end-to-end-walkthroughs.md +0 -165
  782. package/docs/enforcement-by-host.md +0 -44
  783. package/docs/examples/agent-user.example.md +0 -22
  784. package/docs/experiences/agency.md +0 -49
  785. package/docs/experiences/content_creator.md +0 -49
  786. package/docs/experiences/developer.md +0 -49
  787. package/docs/experiences/finance.md +0 -50
  788. package/docs/experiences/founder.md +0 -49
  789. package/docs/experiences/ops.md +0 -49
  790. package/docs/featured-commands.md +0 -27
  791. package/docs/featured-skills.md +0 -95
  792. package/docs/flows.md +0 -67
  793. package/docs/getting-started-by-role.md +0 -190
  794. package/docs/getting-started-laravel.md +0 -72
  795. package/docs/getting-started-local-stdio.md +0 -77
  796. package/docs/getting-started.md +0 -254
  797. package/docs/github-topics.md +0 -93
  798. package/docs/governance-advantage.md +0 -72
  799. package/docs/governance.md +0 -96
  800. package/docs/guides/cross-repo-linked-projects.md +0 -93
  801. package/docs/guides/cross-repo-retrieval.md +0 -61
  802. package/docs/guides/frontend-design-corpus-refresh.md +0 -83
  803. package/docs/guides/local-analytics.md +0 -125
  804. package/docs/guides/local-knowledge.md +0 -127
  805. package/docs/guides/skill-discovery.md +0 -71
  806. package/docs/guides/skill-preview.md +0 -71
  807. package/docs/hook-payload-capture.md +0 -221
  808. package/docs/install-friction-report.md +0 -66
  809. package/docs/installation.md +0 -959
  810. package/docs/maintainers/branch-protection.md +0 -105
  811. package/docs/maintainers/dev-mode.md +0 -106
  812. package/docs/maintainers/optional-media-deps.md +0 -50
  813. package/docs/maintainers/system-map.md +0 -85
  814. package/docs/mcp-registries.md +0 -94
  815. package/docs/mcp-server.md +0 -175
  816. package/docs/mcp.md +0 -147
  817. package/docs/media/proof-demo.cast +0 -14
  818. package/docs/media/proof-demo.gif +0 -0
  819. package/docs/migration/consumer-template-consumption-model.md +0 -145
  820. package/docs/migration/divergences/README.md +0 -55
  821. package/docs/migration/divergences/_template.md +0 -50
  822. package/docs/migration/divergences/bench-stats-float-precision.md +0 -72
  823. package/docs/migration/divergences/mcp-telemetry-node-sqlite.md +0 -61
  824. package/docs/migration/divergences/pack-mcp-content-gzip-body.md +0 -53
  825. package/docs/migration/divergences/src-scripts-build_cloud_bundle.md +0 -63
  826. package/docs/migration/divergences/src-scripts-check_memory.md +0 -91
  827. package/docs/migration/divergences/src-scripts-inventory_abstraction_budget.md +0 -65
  828. package/docs/migration/divergences/src-scripts-lint_marketplace.md +0 -57
  829. package/docs/migration/divergences/src-scripts-lint_mcp_registry_manifest.md +0 -70
  830. package/docs/migration/divergences/src-scripts-spotcheck_thin_root.md +0 -60
  831. package/docs/migration/divergences/src-scripts-validate_agent_settings.md +0 -58
  832. package/docs/migration/node-floor.md +0 -86
  833. package/docs/migration/v1-to-v2.md +0 -156
  834. package/docs/migration/yaml-roundtrip-spike.md +0 -163
  835. package/docs/migrations/commands-1.15.0.md +0 -117
  836. package/docs/parity/bench-external.json +0 -58
  837. package/docs/parity/bench.json +0 -41
  838. package/docs/parity/command-frontmatter.md +0 -60
  839. package/docs/parity/external-runtime.md +0 -46
  840. package/docs/personas.md +0 -178
  841. package/docs/positioning-evidence.md +0 -86
  842. package/docs/profiles.md +0 -108
  843. package/docs/proof.md +0 -176
  844. package/docs/quality.md +0 -98
  845. package/docs/readme-split-plan.md +0 -102
  846. package/docs/recruits/_template.md +0 -81
  847. package/docs/release-runbook.md +0 -141
  848. package/docs/role-experiences.md +0 -19
  849. package/docs/safety.md +0 -30
  850. package/docs/second-brain-scope.md +0 -116
  851. package/docs/self-review-gate.md +0 -65
  852. package/docs/setup/enterprise-and-offline.md +0 -201
  853. package/docs/setup/mcp-client-config.md +0 -358
  854. package/docs/setup/mcp-cloud-endpoints.md +0 -116
  855. package/docs/setup/mcp-cloud-registry-listing.md +0 -99
  856. package/docs/setup/mcp-cloud-setup.md +0 -183
  857. package/docs/setup/mcp-r2-bootstrap.md +0 -82
  858. package/docs/setup/mcp-server-docker.md +0 -101
  859. package/docs/setup/per-ide/aider.md +0 -48
  860. package/docs/setup/per-ide/antigravity.md +0 -68
  861. package/docs/setup/per-ide/augment.md +0 -89
  862. package/docs/setup/per-ide/claude-code.md +0 -97
  863. package/docs/setup/per-ide/claude-desktop.md +0 -207
  864. package/docs/setup/per-ide/cline.md +0 -43
  865. package/docs/setup/per-ide/codebuddy.md +0 -63
  866. package/docs/setup/per-ide/codex.md +0 -46
  867. package/docs/setup/per-ide/continue.md +0 -68
  868. package/docs/setup/per-ide/copilot.md +0 -80
  869. package/docs/setup/per-ide/cursor.md +0 -125
  870. package/docs/setup/per-ide/droid.md +0 -65
  871. package/docs/setup/per-ide/gemini-cli.md +0 -45
  872. package/docs/setup/per-ide/jetbrains.md +0 -76
  873. package/docs/setup/per-ide/kilocode.md +0 -66
  874. package/docs/setup/per-ide/kiro.md +0 -72
  875. package/docs/setup/per-ide/opencode.md +0 -62
  876. package/docs/setup/per-ide/qoder.md +0 -63
  877. package/docs/setup/per-ide/roocode.md +0 -68
  878. package/docs/setup/per-ide/trae.md +0 -63
  879. package/docs/setup/per-ide/warp.md +0 -63
  880. package/docs/setup/per-ide/windsurf.md +0 -109
  881. package/docs/setup/per-ide/zed.md +0 -73
  882. package/docs/showcase.md +0 -209
  883. package/docs/skill-duplication-findings.md +0 -91
  884. package/docs/skills-catalog.md +0 -265
  885. package/docs/skills-taxonomy.md +0 -90
  886. package/docs/spawn-site-policy.md +0 -72
  887. package/docs/succession.md +0 -80
  888. package/docs/threat-model.md +0 -29
  889. package/docs/troubleshooting.md +0 -155
  890. package/docs/ui-track-mental-model.md +0 -121
  891. package/docs/us-vs-the-category.md +0 -38
  892. package/docs/value.md +0 -86
  893. package/docs/walkthroughs/assets/workspace-role-grid.png +0 -0
  894. package/docs/walkthroughs/assets/workspace-session-started.png +0 -0
  895. package/docs/walkthroughs/assets/workspace-task-picker.png +0 -0
  896. package/docs/walkthroughs/daily-workspace-a11y.md +0 -87
  897. package/docs/walkthroughs/daily-workspace.md +0 -127
  898. package/docs/wedge/production-validator/README.md +0 -81
  899. package/docs/wedge/production-validator/first-run-check.sh +0 -42
  900. package/docs/wedge/production-validator/production-validator.md +0 -83
  901. package/docs/wizard.md +0 -173
@@ -1,132 +0,0 @@
1
- ---
2
- adr: 053
3
- status: accepted
4
- date: 2026-06-05
5
- decision: agents-namespace-dual-role-resolution
6
- supersedes: —
7
- superseded_by: —
8
- phase: v6.0.x · workspace structural cleanup · Phase 2 (Step 4 design gate)
9
- type: structural
10
- ---
11
-
12
- # ADR-053 — The maintainer `agents/` namespace is the dogfooded consumer convention (collision resolution)
13
-
14
- ## Status
15
-
16
- **Accepted** · 2026-06-05. Resolves the deferred Step-4 design gate of the
17
- 6.0.x workspace-structural-cleanup roadmap, closing the `agents/`-namespace
18
- remainder that [`ADR-050`](ADR-050-workspace-vs-package-root-boundary.md)
19
- explicitly deferred.
20
- Routed through the AI council (anthropic/claude-sonnet-4-5 + openai/gpt-4o,
21
- design mode, 2-round debate, 2026-06-05). Both members converged independently
22
- on Option B in round 1; the round-2 adversarial pass steel-manned Option A and is
23
- recorded under *Alternatives considered* with the reason it does not hold.
24
-
25
- ## Context
26
-
27
- ADR-050 kept the maintainer `agents/` workspace at repo root ("workspace tooling
28
- + namespace") and deferred two coupled questions to this roadmap:
29
-
30
- 1. Resolve the **maintainer-vs-consumer `agents/` collision** — the directory
31
- `agents/` in this repo is simultaneously the maintainer workspace AND the
32
- consumer-facing convention the package ships.
33
- 2. Resolve the **settings-loader self-reference** — `agents/settings/.agent-settings.yml`
34
- is read at runtime by `src/scripts/_lib/agent_settings.py`, so a naive move of
35
- the workspace could brick the loader mid-move.
36
-
37
- Three facts, verified against the codebase on 2026-06-05, define the decision space:
38
-
39
- - **`agents/` is one name with two roles by design.** This repo's `agents/`
40
- (`roadmaps/`, `settings/`, `runtime/`, `decisions/`) is a *compliant instance*
41
- of the `agents/` tree the package installs into consumer projects
42
- (`agents/settings/`, `agents/overrides/`, `agents/roadmaps/`, `.event4u-bridge.yml`).
43
- The maintainer workspace and the shipped convention are the same directory name
44
- because the package dogfoods its own convention.
45
- - **The loader is coupled to the convention, not to a maintainer-special path.**
46
- `agent_settings.py` keys on `LOCAL_PROJECT_SUBDIR = ("agents", "settings")`,
47
- anchors on a directory named `agents/` carrying any of `_AGENTS_DIR_MARKERS`
48
- (`roadmaps/`, `settings/.ai-council.yml`, `roadmaps-progress.md`,
49
- `.event4u-bridge.yml`), and defaults `MODULES_DEFAULTS["agent_folder"] = "agents"`.
50
- These are *convention* identifiers — the same strings a consumer project carries.
51
- - **Reference scale.** 1106 tracked files outside `agents/` and `internal/`
52
- reference `agents/` (~511 `src/`, ~260 generated `.agent-src/`, ~220 `docs/`,
53
- ~93 `tests/`). The majority describe the *consumer convention* (templates,
54
- generators, skills, docs), not this repo's workspace.
55
-
56
- ## Decision
57
-
58
- 1. **Keep `agents/` at repo root. The "collision" is conceptual, not structural,
59
- and is resolved by naming the dual role — not by moving the directory.** The
60
- maintainer workspace *is* a dogfooded instance of the shipped `agents/`
61
- convention; that overlap is intentional and is the forcing function that keeps
62
- the convention usable. There is nothing to physically separate.
63
-
64
- 2. **Add an explicit, reviewable marker.** A tracked
65
- [`agents/.maintainer-workspace.md`](../../agents/.maintainer-workspace.md)
66
- names the dual role at the directory itself, so a reviewer encountering the
67
- overlap sees the intent in place rather than inferring a mistake.
68
-
69
- 3. **The loader needs no structural change; its relocation-safety is locked by a
70
- pre-flight test.** `agent_settings.py` already resolves the project root from
71
- `AGENT_CONFIG_PROJECT_ROOT` / `--root` / an anchor walk / `.git`, and reads
72
- settings via a cascade. A regression test
73
- (`tests/test_agent_settings_relocation_resilience.py`) proves the loader
74
- resolves a settings file at an arbitrary relocated root with the default
75
- location absent, and degrades to defaults (never bricks) when the file is gone.
76
-
77
- 4. **No mass ref repoint.** Because the directory name does not change, the ~1106
78
- `agents/` references stay valid. Step 6's "execute the disposition" reduces to
79
- landing the marker + ADR + loader test; the full path-audit surface is
80
- unchanged by this decision.
81
-
82
- ## Consequences
83
-
84
- - **Positive.** The collision is resolved at the lowest defensible blast radius:
85
- zero ref churn, zero loader fork, dogfooding integrity preserved, and the dual
86
- role is now explicit rather than tribal knowledge.
87
- - **Positive.** Consistent with ADR-050 (which already placed `agents/` at root)
88
- and with the package's "dogfood the convention" posture.
89
- - **Negative / accepted.** A reviewer must understand the dual role; the marker
90
- file and this ADR are the mitigation. New contributors are pointed at both.
91
- - **Negative / accepted.** The maintainer workspace can never diverge in *name*
92
- from the consumer convention without forking the loader — which is the point:
93
- the constraint keeps the shipped convention honest.
94
-
95
- ## Alternatives considered
96
-
97
- - **Option A — rename the maintainer workspace (`agents/` → `.agents/` /
98
- `internal/agents/`).** Steel-manned in the round-2 debate as breaking a
99
- "circular dogfooding" dependency and claimed to need only ~47 maintainer-tooling
100
- ref changes with "no loader change". **Rejected** because the claim is
101
- self-refuting: `agents/settings/` *is* the convention path the loader hardcodes
102
- (`LOCAL_PROJECT_SUBDIR`), so moving the maintainer settings either (a) requires
103
- dual-path loader logic ("maintainer ⇒ `.agents/`, consumer ⇒ `agents/`") — which
104
- both members rejected in round 1 as strictly worse — or (b) leaves
105
- `agents/settings/` in place, which does not resolve the collision it set out to
106
- fix. Renaming a directory does not resolve a clash between that directory and a
107
- *shipped convention of the same name*.
108
- - **Option C — relocate `agents/` contents to typed root homes
109
- (`roadmaps/`, `settings/`, `runtime/`).** Rejected: removes the `agents/`
110
- umbrella, breaks the loader anchor and the dogfooded convention, and forces a
111
- doc/template rewrite for the largest blast radius of the three.
112
-
113
- ## Inversion check
114
-
115
- This verdict flips only if external consumer projects are shown to organize their
116
- `agents/` tree identically to this maintainer workspace (project ADRs in
117
- `agents/decisions/`, runtime logs in `agents/runtime/`) — which would make the
118
- dual role convention-native rather than maintainer-specific and *strengthen* B —
119
- **or** if a consumer integration is shown to require a maintainer-distinct
120
- directory name, which would reopen A. Absent either, B stands.
121
-
122
- ## References
123
-
124
- - [`ADR-050`](ADR-050-workspace-vs-package-root-boundary.md) — kept `agents/` at
125
- root and deferred this collision + loader self-reference to here.
126
- - [`ADR-020`](ADR-020-global-only-consumer-scope.md) — the
127
- `.event4u-bridge.yml` consumer anchor that the loader keys on.
128
- - [`agents/.maintainer-workspace.md`](../../agents/.maintainer-workspace.md) — the
129
- explicit dual-role marker landed by this decision.
130
- - AI council, design mode, 2-round debate, 2026-06-05 (anthropic/claude-sonnet-4-5
131
- + openai/gpt-4o) — round-1 convergence on Option B; round-2 adversarial pass
132
- recorded above.
@@ -1,143 +0,0 @@
1
- ---
2
- adr: 054
3
- status: proposed
4
- date: 2026-06-05
5
- decision: rule-adherence-decay-triggered-restate
6
- supersedes: —
7
- superseded_by: —
8
- phase: v6.x · governance-loading reliability
9
- type: structural
10
- ---
11
-
12
- # ADR-054 — Counter "the model ignores ALL rules" with decay-triggered re-state, not per-turn injection
13
-
14
- ## Status
15
-
16
- **Proposed** · 2026-06-05. Drafted for maintainer review (design-first). Routed
17
- through the AI council (anthropic/claude-sonnet-4-5 + openai/gpt-4o, design
18
- mode, 2-round debate, 2026-06-05). Round 1 was split (per-turn injection vs.
19
- decay-triggered + kernel discipline); the round-2 adversarial pass **converged**
20
- both members against per-turn injection. Two council inaccuracies are corrected
21
- below under *Context* rather than carried forward.
22
-
23
- ## Context
24
-
25
- **The narrow problem (operator-stated):** Claude *sometimes ignores the whole
26
- rule/skill layer at once* — the governance block silently drops out for a turn.
27
- The goal is narrow: **Always-rules respected always; Auto-rules respected when
28
- their trigger fires; do not force everything** (no blanket injection, no forcing
29
- Skill invocation).
30
-
31
- This is **not** a presence gap (in the default `eager-all` projection the kernel
32
- + rules are already in context every turn) and **not** a routing-coverage gap
33
- (`dist/router.json` maps triggers fine). It is an **attention/adherence**
34
- problem: the content is present but intermittently dismissed.
35
-
36
- **Verified mechanism facts:**
37
-
38
- - The 10-rule Always-kernel is ~25,590 **characters** (≤ 26k char cap, ~98%
39
- full). *Correcting the council's "25k tokens":* that is ≈ 6–7k tokens, not 25k
40
- — so the failure is **not** "the kernel fills 60% of the window". It is that a
41
- large, invariant, governance-toned block in a long conversation reads as
42
- low-information-density boilerplate and gets actively deprioritised as the
43
- user's turn-by-turn history grows.
44
- - `context-hygiene` is an **Auto** rule (trigger-routed, with a `PostToolUse`
45
- hook), **not** part of the kernel. *Correcting the council's claim* that it is
46
- kernel — but its premise (long-context decay is real and tracked) is exactly
47
- why it is the right state source for the trigger below.
48
- - The 7 shipped hooks are **state-only**; none re-surface or remind.
49
- - Claude Code hooks can **inject** context (`UserPromptSubmit` / `SessionStart`,
50
- stdout or `hookSpecificOutput.additionalContext`, exit 0) but **cannot force**
51
- the model to apply a rule or invoke a Skill (verified). The ceiling is real.
52
-
53
- ## Decision
54
-
55
- Adopt a **decay-triggered compact re-state**, not a per-turn injection.
56
-
57
- 1. **Trigger on decay, reuse existing state — do not fire every turn.** Hook into
58
- the freshness signal `context-hygiene` already maintains
59
- (`agents/runtime/state/context-hygiene.json`: turn count + the 20/40/60
60
- milestones). A `UserPromptSubmit` hook injects the re-state **only** when a
61
- decay threshold is crossed (and on `SessionStart`). Per-turn firing is
62
- rejected (see *Alternatives*): an identical reminder every turn habituates the
63
- model to dismiss it within 3–4 turns and worsens the signal-to-noise ratio
64
- that caused the dismissal.
65
-
66
- 2. **Payload = salience, not content.**
67
- - **Always:** a compact roster of the kernel by Iron-Law heading (one line
68
- each), not full bodies — the bodies are already projected.
69
- - **Auto:** for each rule the *current prompt* matches in `dist/router.json`,
70
- a one-line pointer ("in force this turn: `<rule>` — apply it"). Never inject
71
- unmatched Auto-rules; never escalate an Auto-rule to always-on.
72
- - Never inject skill bodies; never attempt to force a Skill call.
73
-
74
- 3. **Always unconditional, Auto only on router match.** The re-state re-surfaces
75
- the Always layer whenever it fires, and Auto pointers only for prompts that
76
- match a trigger — preserving the always/auto contract exactly.
77
-
78
- 4. **Claude Code first; graceful no-op elsewhere.** The hook writes to stdout /
79
- `additionalContext` and exits 0. Tools without a context-injecting hook
80
- ignore it; no new contract, no per-tool branching beyond the existing
81
- dispatchers (Cursor/Cline already have them).
82
-
83
- 5. **Honest ceiling, stated in-band.** The re-state counters decay-driven
84
- *dismissal*; it cannot *force* adherence. The roster is phrased as a
85
- directive the model is told to re-read, not as a guarantee.
86
-
87
- 6. **Root-cause follow-up (separate gate, not bundled):** the deeper lever is
88
- **kernel discipline** — keep the Always-kernel small and high-signal enough
89
- that dropping it creates obvious incoherence (the council's "shrink to the
90
- load-bearing Iron-Laws" argument). That touches the **contract-locked**
91
- `kernel-membership` surface and must run as its own ADR + slow-rollout PR. It
92
- is recorded here as the cure; this ADR ships the mitigation.
93
-
94
- ## Consequences
95
-
96
- - **Positive.** Targets the actual failure (decay-driven total dismissal) with
97
- the cheapest reversible lever, reusing machinery the package already runs
98
- (context-hygiene state, `dist/router.json`). No per-turn token tax; no new
99
- always-on surface; the always/auto split is preserved.
100
- - **Positive.** Delta-based, infrequent injection stays novel (avoids the
101
- habituation that sinks per-turn injection).
102
- - **Negative / accepted.** It cannot guarantee adherence — a model can still
103
- ignore an injected reminder. The honest mitigation, not a fix.
104
- - **Negative / accepted.** Adds a runtime evaluation of `dist/router.json` in the
105
- `UserPromptSubmit` path; must stay fast and exit 0 on any error (hooks never
106
- block the loop).
107
- - **Deferred.** The kernel-shrink cure is not executed here.
108
-
109
- ## Alternatives considered
110
-
111
- - **Per-turn salience injection (round-1 minority, then rejected).** Inject the
112
- kernel roster + matched-Auto pointers on *every* prompt. Rejected: an invariant
113
- per-turn reminder trains the model to filter it as boilerplate within a few
114
- turns and adds 500–1000 tokens/turn of governance text on top of an already
115
- governance-heavy context — accelerating the very dismissal it tries to cure.
116
- "Reliable firing" ≠ "reliable efficacy".
117
- - **Do nothing / rely on `eager-all` presence.** Rejected: presence is already
118
- high; the failure is dismissal, which presence alone does not fix.
119
- - **Shrink the kernel now, in this ADR.** Deferred, not rejected: it is the
120
- root-cause cure but edits a contract-locked surface (`kernel-membership`) and
121
- needs its own slow-rollout gate — bundling it here would violate the
122
- one-kernel-rule-per-PR discipline.
123
-
124
- ## Inversion check
125
-
126
- This verdict flips if a measurement shows the model ignores a *small,
127
- decay-triggered* re-state just as readily as the projected block — in which case
128
- the only remaining lever is kernel-shrink (the follow-up), and the hook is
129
- dropped as theatre. The cheap way to find out: a trigger-adherence probe
130
- (does a known-trigger prompt produce rule-consistent behaviour with vs. without
131
- the re-state) before investing in per-tool rollout.
132
-
133
- ## References
134
-
135
- - `docs/contracts/rule-router.md` — `dist/router.json` trigger→rule mapping the
136
- re-state reads.
137
- - `docs/contracts/kernel-membership.md` — the contract-locked Always-kernel the
138
- follow-up cure would touch.
139
- - `.agent-src/rules/context-hygiene.md` + `scripts/context_hygiene_hook.py` —
140
- the freshness/turn-count state the decay trigger reuses.
141
- - AI council, design mode, 2-round debate, 2026-06-05 (anthropic/claude-sonnet-4-5
142
- + openai/gpt-4o) — round-1 split, round-2 convergence on decay-triggered +
143
- kernel discipline over per-turn injection.
@@ -1,235 +0,0 @@
1
- ---
2
- adr: 055
3
- status: proposed
4
- date: 2026-06-06
5
- decision: flow-layer-data-model
6
- supersedes: —
7
- superseded_by: —
8
- phase: v6.1 · product consolidation (Step 8b)
9
- type: structural
10
- ---
11
-
12
- # ADR-055 — The flow-layer data model: a schema + validate-on-load lint, not a live resolver
13
-
14
- ## Status
15
-
16
- **Proposed** · 2026-06-06. Drafted for maintainer review (design-first), as the
17
- data-model foundation for road-to-6.1.0 Step 8b. Routed through the AI council
18
- (anthropic/claude-sonnet-4-5 + openai/gpt-4o, design mode, deep) — convergence
19
- recorded under *Council convergence* below.
20
-
21
- ## Context
22
-
23
- `Profile → Pack → Flow → Command → Skill → Rule` is the layered model the
24
- 6.1.0 consolidation is built around. Four flows were scaffolded as inert stubs
25
- in 6.0.0-D Step 15b (`src/flows/{discovery,implementation,review,delivery}.yaml`),
26
- each carrying only `id` / `title` / `summary` / a `commands:` seed lifted from
27
- the command-classification worksheet `·_flow:` tags. They were "parsed by
28
- nothing" — documentation, not data.
29
-
30
- Step 8b's job is narrow: **make a flow a real, validated artefact** — define the
31
- schema for the three activation fields (`entry_points`, `default_path`,
32
- `skills`) and lint that every reference resolves. This is explicitly *not*
33
- Step 9 ("make the flow the primary view of the command surface"), which the
34
- prior 6.1 council flagged HIGH-risk and deferred to land last. Step 8b is the
35
- data-model floor Step 9 stands on.
36
-
37
- A prior council round (deliberating whether `process-full` should proceed at
38
- all now that PR2 merged) raised a hard objection: **you cannot write a flow
39
- schema before the data model exists**, and "stub file existence ≠ structure
40
- defined." This ADR answers that objection by *defining and committing to* the
41
- data model here — not merely writing it down, but binding it to a stated Step 9
42
- scope so the schema encodes a decided structure, not a guessed one.
43
-
44
- **Committed Step 9 scope (the schema is designed for exactly this):** "Primary
45
- view" means flows become the **first-class navigation surface** — the agent
46
- surfaces the four flows, lets the user pick an `entry_point`, and presents the
47
- `default_path` as a *suggested* command sequence with the flow's `skills` as
48
- context. Step 9 does **not** execute flows as branching workflow graphs (no
49
- conditional `transitions`, no automated skill invocation). Flows are **curated,
50
- navigable command lists**, not workflow engines. The three activated fields are
51
- sufficient for that scope, as this usage sketch shows:
52
-
53
- ```python
54
- flow = load_flow("discovery") # id/title/summary + 3 fields
55
- show_menu(flow["entry_points"]) # daily front doors
56
- chosen = user_pick(flow["entry_points"])
57
- for cmd in flow["default_path"]: # suggested sequence (not auto-run)
58
- suggest(resolve_command(cmd))
59
- surface(flow["skills"]) # contextual help
60
- ```
61
-
62
- If Step 9's scope later widens to executable graphs, that is a **schema v2**
63
- event with a migration plan (see *Consequences*), not a silent in-place change.
64
-
65
- **Verified facts (this branch):**
66
-
67
- - Skills resolve at `src/skills/<slug>/SKILL.md` (223 skills); commands resolve
68
- via `resolve_logical("commands/<ref>.md")` in `src/scripts/_lib/agent_src.py`,
69
- which maps a logical command path to its physical backing (top-level stem or
70
- `cluster/sub`). Every command + skill referenced by the four populated flows
71
- resolves (verified: zero misses).
72
- - The established schema home is `src/scripts/schemas/` (`pack.schema.json`,
73
- Draft-07), validated by `validate_pack_yaml.py` with a **shape-vs-resolution
74
- split**: the JSON Schema fixes shape; the Python lint resolves references.
75
- - The worksheet/flow seeds use future-canonical names (`git-commit`,
76
- `git-pr-create`). Per `pack.schema.json`'s own `$comment`, those are pack
77
- `slug_prefix` *projections* (the `git` pack with `slug_prefix: git` projects
78
- `commit` → `git-commit`) that land with Step 8 — they do **not** resolve in
79
- the current layout.
80
-
81
- ## Decision
82
-
83
- 1. **Schema fixes shape; the lint enforces referential integrity.** Mirror the
84
- `pack.schema.json` + `validate_pack_yaml.py` split. The JSON Schema
85
- (`flow.schema.json`, Draft-07) requires `id`, `title`, `summary`,
86
- `entry_points`, `default_path`, `skills`; `commands` stays optional
87
- (descriptive seed). The schema validates slug/path *shape* only.
88
- `lint_flows.py` validates that every `entry_points` / `default_path` /
89
- `commands` entry resolves to a real command, every `skills` slug to a real
90
- skill, the `id` equals the filename stem, the `id` is in the closed flow set,
91
- and all four flows have a file. Errors are **granular and partial** — each
92
- unresolved ref is its own line (not a generic "flow invalid"), with a
93
- `difflib` "did you mean 'X'?" hint when a near-match exists. The `commands`
94
- field stays optional and descriptive (the worksheet seed); Step 9 decides
95
- whether to require it, drop it, or keep it as a human-readable index — Step 8b
96
- does not force that call.
97
-
98
- 2. **Schema location follows the repo convention, not the roadmap's literal
99
- path.** Every JSON Schema in this repo lives in `src/scripts/schemas/`
100
- alongside its validator (`pack.schema.json` + `validate_pack_yaml.py`); none
101
- live at `src/schemas/`. Step 8b's prose said `src/schemas/flow.schema.json` —
102
- almost certainly a path slip, since that directory holds no schemas. The file
103
- lands at `src/scripts/schemas/flow.schema.json` next to `pack.schema.json`.
104
- (Deviation noted so the roadmap text is not read as a contradiction.)
105
-
106
- 3. **The flow set is closed and curated `{discovery, implementation, review,
107
- delivery}`.** Enforced by the lint, **not** a schema `enum` — not because
108
- enums are "brittle" in the abstract, but for two concrete reasons: (a) the
109
- lint gives a readable "id 'x' not in {…}" error instead of a generic
110
- schema-enum failure that reads as "malformed YAML"; (b) a developer can author
111
- an experimental flow on a local branch without the schema rejecting the file —
112
- the lint blocks it at PR time. `agent-admin` is **not** a flow (feedback-6):
113
- it is the platform/system surface, not a user-work journey. **Design rule for
114
- any future flow:** it must be a user-work journey with (a) distinct entry
115
- points, (b) a coherent value stream, and (c) exit conditions. Cross-cutting
116
- concerns (debugging, onboarding, config) are platform features or pack
117
- surfaces, **not** flows. Adding one is an ADR-gated governance decision that
118
- argues it as a *fifth user-work journey*.
119
-
120
- 4. **Flows reference current LOGICAL command paths** (`pr/create`,
121
- `fix/pr-comments`), not future slug-prefix projections (`git-pr-create`).
122
- This keeps the validate-on-load gate green today. **This is a real coupling to
123
- Step 8, not a trivial follow-up:** when Step 8 lands the pack `slug_prefix`
124
- projections, `pr/create` may stop resolving (or resolve elsewhere) and the
125
- flows go red. Migration plan: **Step 8's PR includes the one-time rewrite of
126
- every flow ref** to its projected slug, and `lint_flows.py` accepts *both* the
127
- logical and the projected form during a transition window so in-flight
128
- branches still merge. If Step 8 slips, the dual-form acceptance becomes
129
- permanent with a deprecation warning on the logical form. The coupling is
130
- tracked here, not discovered later.
131
-
132
- 5. **The four headline flows are the user-work journey discovery →
133
- implementation → review → delivery.** Acceptance Criterion 5 of the 6.1
134
- roadmap says "the 5 headline flows"; that "5" predates feedback-6 (which
135
- demoted `agent-admin` from a 5th flow to the platform surface). The headline
136
- count is **four user-work flows**; AC5 is updated to match.
137
-
138
- 6. **Validation is CI-time in Step 8b; load-time validation is Step 9's
139
- responsibility.** Today the flow files are **inert** — nothing in the agent
140
- loop loads or executes them — so there is no time-of-check/time-of-use gap to
141
- close: the only consumer is CI (`task lint-flows`), and a malformed flow that
142
- somehow bypassed CI (emergency merge, lint override) still does nothing at
143
- runtime. When Step 9 makes flows **load-bearing**, it MUST add a load-time
144
- check at agent startup with an explicit failure mode (fail-safe: refuse to
145
- start and name the offending file/field; opt-in graceful-degradation: drop the
146
- broken flow with a warning). That load-time contract is called out here as a
147
- Step 9 prerequisite so it is not forgotten, but it is **out of scope for
148
- Step 8b** precisely because flows are still inert.
149
-
150
- ## Consequences
151
-
152
- - **Positive.** Flows become first-class validated artefacts; a typo in an
153
- `entry_point` or a renamed/removed command fails CI instead of rotting
154
- silently. The data model Step 9 needs is now decided and encoded, unblocking
155
- the higher-risk "primary view" work without committing to it. The
156
- shape-vs-resolution split keeps the schema small and the policy in reviewable
157
- Python.
158
- - **Negative / cost.** One new CI lint (`task lint-flows`, ~ms). When Step 8's
159
- slug-prefix projections land, the flow refs need a one-time update (Decision 4
160
- migration plan) — tracked, not silent.
161
- - **Rollback scope is *deferred*, not *independent*.** Today reverting Step 8b is
162
- trivial (delete schema + lint + restore stubs; nothing depends on them). But
163
- the instant Step 9 makes flows load-bearing, the rollback boundary **expands to
164
- include both steps** — you can no longer revert 8b without reverting 9. This
165
- ADR claims rollback-*deferred*, not rollback-*independent*; the honest cost is
166
- stated rather than implied away.
167
- - **Risk: schema insufficiency discovered in Step 9.** If Step 9 cannot render
168
- the primary view with `entry_points` / `default_path` / `skills` (e.g. it turns
169
- out to need `transitions` / `exit_conditions` / per-command `skill_bindings`),
170
- the schema needs a breaking change. Mitigation: **versioned schema** —
171
- `flow.schema.json` is implicitly v1; a v2 ships its own file, and
172
- `lint_flows.py` accepts both during a transition while the four flows migrate
173
- (est. 4–6 h, carried in Step 9's PR). **Success metric for this ADR: Step 9
174
- ships without a schema change.** If it cannot, the v2 path above applies — a
175
- budgeted contingency, not a surprise. (Reserved speculative fields were
176
- considered and rejected — see *Alternatives*.)
177
- - **No known external consumers.** The flow files were inert stubs (parsed by
178
- nothing); making `entry_points` / `default_path` / `skills` required is a
179
- breaking change only for a tool that *reads* the YAML, and there is no such
180
- consumer today (no docs generator, IDE plugin, or script parses `src/flows/`).
181
- If one appears, it must handle the three required fields.
182
- - **Neutral.** No runtime behavior change: nothing *executes* or even *loads* a
183
- flow yet. The flow files remain inert to the agent loop; only CI now reads
184
- them.
185
-
186
- ## Alternatives considered
187
-
188
- - **Schema `enum` for the flow id.** Rejected — hard-locks the set in the
189
- schema; growing/renaming a flow would mean editing the schema and the lint.
190
- The closed set lives in the lint (one constant) instead.
191
- - **Resolve future-canonical slugs (`git-commit`) now.** Rejected — those
192
- projections do not exist until Step 8's pack `slug_prefix` work; encoding them
193
- now would make the gate red against a layout that does not yet exist.
194
- - **Put the schema at `src/schemas/` (roadmap's literal path).** Rejected —
195
- splits the schema home; `pack.schema.json` and every validator expect
196
- `src/scripts/schemas/`.
197
- - **Do Step 8b and Step 9 together.** Rejected — Step 9 (primary-view rewrite of
198
- the command surface) is HIGH-risk and was deferred by the prior council; this
199
- ADR delivers only the data-model floor.
200
- - **Reserve speculative workflow fields now** (`transitions`, `exit_conditions`,
201
- `skill_bindings`, ignored by the lint). Rejected — unvalidated fields with no
202
- current consumer are YAGNI and quietly commit v1 to a *guessed* execution
203
- model. The schema-insufficiency risk they hedge is addressed more honestly by
204
- the explicit **v2 + transition-window** migration (Decision-scope commitment +
205
- *Consequences*), which keeps v1 minimal and surfaces a real schema change as a
206
- real change rather than a silently-pre-blessed field.
207
-
208
- ## Council convergence
209
-
210
- Two design-mode rounds (anthropic/claude-sonnet-4-5 + openai/gpt-4o, deep,
211
- 2026-06-06). The first (scope) converged that: (a) the flow schema must encode a
212
- *decided* data model — "stub existence ≠ structure"; (b) Step 8b is legitimate
213
- only as the data-model definition, decoupled from Step 9's primary-view rewrite;
214
- (c) a mega-PR collapsing the remaining deferred steps is rejected. The second
215
- (this ADR) judged the design **sound but under-honest about risk** and converged
216
- on six fixes, all integrated above: the CI-time-vs-load-time boundary
217
- (Decision 6), the rollback-*deferred* framing + schema-versioning contingency +
218
- success metric (*Consequences*), the explicit Step 8 coupling + migration plan
219
- (Decision 4), the committed Step 9 scope + usage sketch (*Context*), the
220
- lint-not-`enum` rationale + future-flow design rule (Decision 3), and granular
221
- "did you mean?" lint errors (Decision 1). This ADR + the schema + lint is the
222
- minimal, rollback-**deferred** unit that satisfies the convergence.
223
-
224
- ## References
225
-
226
- - `agents/roadmaps/road-to-6.1.0-product-consolidation.md` — Step 8b, AC5.
227
- - `src/flows/README.md` — flow-set definition + feedback-6 (`agent-admin` is not
228
- a flow).
229
- - `src/scripts/schemas/flow.schema.json` · `src/scripts/lint_flows.py` — the
230
- artefacts this ADR governs.
231
- - `src/scripts/schemas/pack.schema.json` · `src/scripts/validate_pack_yaml.py` —
232
- the shape-vs-resolution pattern mirrored here.
233
- - `agents/reports/command-classification-6.0.0-d.md` — the `·_flow:` seed tags.
234
- - ADR-044 (amendment A3) — pack `slug_prefix` projection (the future-canonical
235
- command names).
@@ -1,124 +0,0 @@
1
- ---
2
- adr: 056
3
- status: accepted
4
- date: 2026-06-06
5
- decision: unvalidated-video-adapters-disposition
6
- supersedes: —
7
- superseded_by: —
8
- phase: video foundation validation (road-to-video-foundation-validation, Phase 4)
9
- type: structural
10
- ---
11
-
12
- # ADR-056 — Disposition of the five unvalidated AI-video adapters
13
-
14
- ## Status
15
-
16
- **Accepted** · 2026-06-10 (maintainer decision, in-session). Outcome: the
17
- alternative this draft originally rejected as wasteful — **validate all
18
- five** — is what the maintainer chose interactively, and it was the right
19
- call: provider keys were at hand, total validation spend stayed ~$30, and
20
- the live runs exposed real contract bugs in four adapters (Kling keypair/JWT
21
- auth, Replicate community-model create route, fal server-side duration
22
- validation, Higgsfield auth-header/upload/poll shapes — re-read from the
23
- official higgsfield-js SDK) that mocks could never have caught.
24
-
25
- **Disposition: all five validated, all five kept, all five promoted
26
- `experimental → stable`** (none removed; option A's removal rationale
27
- dissolved once every adapter actually worked):
28
-
29
- | Adapter | Validation | Promotion |
30
- |---|---|---|
31
- | `gemini-veo` | 10/10 renders (native audio) | stable (PR #457) |
32
- | `kling` | 1/1 (keypair/JWT rework) | stable (PR #459) |
33
- | `sora` | 1/1 (newly wired, OpenAI Videos API, native audio) | stable |
34
- | `openai-images` | 2/2 (sync adapter; real PNGs) | stable |
35
- | `higgsfield` | 1/1 image2video (SDK-corrected upload/auth/poll) | stable |
36
-
37
- The multiplexers (`fal`, `replicate` — also validated 3 models each, also
38
- stable) remain the preferred batch path; the per-model adapters are now
39
- honest, validated direct integrations rather than dead stubs.
40
-
41
- Original proposal text below is retained for provenance.
42
-
43
- ---
44
-
45
- ## Context
46
-
47
- Five adapters ship under `src/scripts/ai-video/adapters/`:
48
- `gemini-veo`, `higgsfield`, `kling`, `openai-images`, `sora`. All five are:
49
-
50
- - `lifecycle: experimental` — structural shape conformant only;
51
- - **stubs** — `submit`/`poll`/`fetch` each `aiv_die 9 "live … not yet wired"`; only `dry-run` (committed fixture) works;
52
- - **never validated** — `agents/reference/ai-video/smoke-traces/` does not exist; no adapter has ever round-tripped a real API call.
53
-
54
- The AI council flagged this as the foundation risk: downstream roadmaps
55
- (`road-to-video-provider-multiplexers`, `road-to-music-video-orchestration`)
56
- proposed shimming or falling back to these adapters — but you cannot shim or
57
- fall back to code that has never worked. Both members independently raised it;
58
- one recommended "delete four, validate one." Deletion is destructive and is the
59
- maintainer's call (per `non-destructive-by-default`), hence this ADR rather than
60
- an autonomous removal.
61
-
62
- The provider strategy also changed the calculus: the multiplexer roadmap
63
- adopts **fal.ai + Replicate** aggregator adapters, each reaching Kling / Wan2.2 /
64
- LTX-2 / Veo / Hunyuan through one `model_id`. That makes the per-model
65
- `kling` / `gemini-veo` / `sora` adapters largely redundant once the
66
- aggregators land — they would ride the multiplexers instead.
67
-
68
- ## Decision (proposed — maintainer picks)
69
-
70
- Validate one first, then choose the disposition of the other four:
71
-
72
- 1. **Validate one end-to-end.** Pick the single most stable shipped provider
73
- (candidate: `gemini-veo` or `sora`), wire its real `submit/poll/fetch`
74
- through the contract-v2 trust-boundary helpers (`aiv_scene_dir`,
75
- `aiv_fetch_url`, `aiv_validate_artifact_path`), capture a smoke trace under
76
- `agents/reference/ai-video/smoke-traces/`, and promote it `experimental →
77
- stable`. This proves the contract before any multiplexer is built.
78
-
79
- 2. **Disposition of the remaining four — choose one:**
80
- - **(A) Remove** the per-model video stubs (`kling`, plus whichever of
81
- `gemini-veo`/`sora` was not validated) once the fal/Replicate multiplexers
82
- reach the same models. Keep `openai-images` (image path, still used by the
83
- image render step) and the one validated video adapter. *Recommended* —
84
- least dead code, no shim-to-nothing.
85
- - **(B) Keep as thin reference shims** — retain one stub as a documented
86
- "minimal adapter" example, delete the rest.
87
- - **(C) Keep all, relabel** — leave the stubs in place, clearly marked
88
- `experimental · unwired`, and let the multiplexers supersede them over time.
89
-
90
- **Recommendation:** validate `gemini-veo` (native-audio, relevant to music
91
- video), then path **(A)** — remove `kling` and `sora` stubs once the fal
92
- multiplexer reaches them, keep `openai-images` + validated `gemini-veo`.
93
- `higgsfield` is the only one with a distinct capability not covered by the
94
- aggregators (the `speak` lip-sync hook); keep it pending the lip-sync adapter
95
- decision in the music-video roadmap.
96
-
97
- No adapter is removed without explicit maintainer sign-off in this ADR
98
- (status → accepted with the chosen path).
99
-
100
- ## Consequences
101
-
102
- - **If accepted:** the suite stops carrying four never-run code paths as
103
- "foundation"; the multiplexers become the single video path; `higgsfield`'s
104
- lip-sync hook is the one first-party capability retained.
105
- - **Trade-off:** removing per-model adapters loses the (theoretical) option of a
106
- direct provider integration without an aggregator key. Mitigated — the
107
- aggregators reach the same models, and ComfyUI (deferred) covers the
108
- local-free path.
109
- - **Until decided:** the stubs stay; the multiplexer roadmap must NOT shim to
110
- them (they would `aiv_die 9`).
111
-
112
- ## Alternatives considered
113
-
114
- - **Validate all five before deciding** — rejected: wasteful given the
115
- aggregators supersede most of them; validate one to prove the contract, then
116
- decide.
117
- - **Autonomous deletion of four** — rejected: destructive, maintainer's call.
118
-
119
- ## References
120
-
121
- - `road-to-video-foundation-validation.md` (Phase 4) — the step this ADR closes.
122
- - `src/scripts/media/lib/adapter-contract.md` (v2) — the trust-boundary helpers a validated adapter must use.
123
- - `provider-lifecycle-discipline` rule — the `experimental → stable` promotion gate.
124
- - AI council convergence (claude-sonnet-4-5 + gpt-4o, 2026-06-06): validation-first; multiplexer pivot supersedes per-model adapters.