@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,171 +0,0 @@
1
- ---
2
- stability: beta
3
- keep-beta-until: 2026-08-12
4
- ---
5
-
6
-
7
- # Rule Classification — Phase 1.2 of road-to-kernel-and-router
8
-
9
- > **Status:** active · **Stability:** beta · **Owner:** road-to-kernel-and-router P1.2
10
- > · **Source of truth:** `.agent-src.uncondensed/rules/*.md`
11
-
12
- Migration plan for all 56 source rules. **No edits land here** — this
13
- document is the disposition map P2 / P4 will execute against.
14
-
15
- ## § 1 — Disposition codes
16
-
17
- | code | meaning |
18
- |---|---|
19
- | `keep-in-kernel` | Iron Law floor / behaviour / safety / tone / ask-policy. Loaded every session. Condensed to ≤ 2.5k chars (P2.2; raised from 1.5k per Council R2). |
20
- | `condense-and-keep` | Behavioural rule that stays in `rules/` as auto-tier. Condensed in place per the P2.2 playbook. Loaded by router on trigger match. |
21
- | `move-to-skill:<id>` | Procedural how-to content. Body migrates into the named skill (P4.1); rule shrinks to Iron Law one-liner + `routes_to:`. |
22
- | `move-to-guideline:<id>` | Reference / examples / mechanics tables. Body migrates into `docs/guidelines/<id>.md` (P4.2); rule keeps Iron Law + pointer. |
23
-
24
- ## § 2 — Baseline numbers (measured 2026-05-06)
25
-
26
- | bucket | rules | chars | target after roadmap |
27
- |---|---:|---:|---|
28
- | always (kernel proxy) | 9 | 32 403 | ≤ 25 000 hard, ≤ 20 000 target |
29
- | auto | 47 | 142 297 | ≤ 60 000 |
30
- | **total** | **56** | **174 700** | **≤ 85 000** |
31
-
32
- Source: `./scripts-run src/scripts/measure_rule_budget`.
33
-
34
- ## § 3 — Disposition table
35
-
36
- Sorted by current `type` then `id`. `chars` = body chars after
37
- frontmatter strip. Disposition is the migration call, **not** an edit
38
- yet.
39
-
40
- ### § 3.1 — always-rules (kernel candidates)
41
-
42
- | id | chars | disposition | rationale |
43
- |---|---:|---|---|
44
- | agent-authority | 1217 | `keep-in-kernel` | Priority index for the four authority rules; routes-of-routers |
45
- | ask-when-uncertain | 4096 | `keep-in-kernel` | Iron Law: one-question-per-turn, mirror the user, vague-trigger list |
46
- | commit-policy | 2972 | `keep-in-kernel` | Iron Law (safety-floor): NEVER commit / NEVER ask about committing |
47
- | direct-answers | 3991 | `keep-in-kernel` | Three Iron Laws (no flattery, no invented facts, brevity) |
48
- | language-and-tone | 5318 | `keep-in-kernel` | Iron Law: mirror the user's language; .md always English |
49
- | no-cheap-questions | 3875 | `keep-in-kernel` | Iron Law: no-cheap-questions self-check; mode-independent |
50
- | non-destructive-by-default | 4222 | `keep-in-kernel` | Iron Law (safety-floor): Hard Floor for prod / push / bulk-destructive |
51
- | scope-control | 4368 | `keep-in-kernel` | Iron Law (safety-floor): no unsolicited refactors / git-ops gate |
52
- | verify-before-complete | 2344 | `keep-in-kernel` | Iron Law: no completion claims without fresh verification |
53
-
54
- **Always-bucket total: 32 403 chars.** Pilot condensation rate `r`
55
- locked at **median 0.712** (P1.3, Council R2 amendment); projection
56
- sum = 23 071 chars, under the 25k hard cap with 1 929 chars headroom.
57
- Per-rule cap raised to ≤ 2.5k (Council R2). Iron-Law-override ADRs
58
- may lift individual rules above 2.5k where Iron-Law density forbids
59
- further condensation — currently 2 expected (`direct-answers` +342,
60
- `language-and-tone` +1286). See `kernel-membership.md` § 5.
61
-
62
- > **Council swap ADR (P2.1 input).** Sonnet 4.5 flagged
63
- > `agent-authority` as a routing index (no Iron-Law fence; should
64
- > demote to auto-tier-3) and `autonomous-execution` (currently
65
- > `condense-and-keep` below) as a mode-independent Band-4 authority
66
- > that should promote to kernel. Swap accepted ⇒ +1213 chars over
67
- > the 25k cap. Decision deferred to P2.1 ADR; current dispositions
68
- > below remain locked until the ADR resolves.
69
-
70
- ### § 3.2 — auto-rules: condense-and-keep (22)
71
-
72
- Behavioural rules with too much Iron-Law content for migration; condense
73
- in place per P2.2 playbook. Loaded by router on trigger match.
74
-
75
- | id | chars | tier | rationale |
76
- |---|---:|---|---|
77
- | architecture | 2491 | 3 | Behavioural; project-organization gates |
78
- | artifact-drafting-protocol | 2957 | 2a | Iron-Law-shaped Understand→Research→Draft sequence |
79
- | source-of-truth | 2439 | 1 | Behavioural Iron Law: never edit generated dirs |
80
- | autonomous-execution | 5631 | 3 | Trivial-vs-blocking decision; tier-1 on `balanced` |
81
- | context-hygiene | 3811 | 1 | Behavioural Iron Law: 3-failure stop, fresh-chat trigger |
82
- | downstream-changes | 2940 | 2b | Behavioural: every code edit |
83
- | guidelines | 4184 | 3 | Meta-rule: consult guidelines before code |
84
- | improve-before-implement | 3838 | 2b | Behavioural: validate before building |
85
- | markdown-safe-codeblocks | 535 | 2b | Already small; behavioural |
86
- | minimal-safe-diff | 3324 | 2a | Behavioural Iron Law: smallest change |
87
- | missing-tool-handling | 2633 | 2a | Behavioural Iron Law: ask, don't install silently |
88
- | no-attribution-footers | 1462 | 3 | Iron Law (recently trimmed); within budget |
89
- | no-roadmap-references | 2502 | mech | Scoped Iron Law: no stable→roadmap refs |
90
- | preservation-guard | 3825 | 2b | Quality gate during merges/refactors |
91
- | role-mode-adherence | 1682 | 2a | Behavioural: mode-marker contract |
92
- | runtime-safety | 1133 | 2b | Safety policy for execution metadata |
93
- | security-sensitive-stop | 3004 | 2a | Safety Iron Law: stop+threat-model |
94
- | size-enforcement | 865 | mech | Budget enforcement (ties into P5 CI gate) |
95
- | think-before-action | 5298 | 2b | Behavioural Iron Law: analyze first |
96
- | token-efficiency | 3885 | 2a | Behavioural: redirect verbose output |
97
- | tool-safety | 1242 | 2b | Safety: allowlist, deny-by-default |
98
- | user-interaction | 7657 | 3 | Numbered-options Iron Law |
99
-
100
- ### § 3.3 — auto-rules: move-to-skill (18)
101
-
102
- Procedural how-to. Rule body migrates into named skill (P4.1); rule
103
- shrinks to Iron-Law one-liner + `routes_to:`. Skill IDs reference
104
- existing skills under `.agent-src.uncondensed/skills/`.
105
-
106
- | id | chars | target skill | rationale |
107
- |---|---:|---|---|
108
- | agent-docs | 2575 | `agent-docs-writing` | Procedural: how to author agent-docs |
109
- | analysis-skill-routing | 1325 | `analysis-skill-router` | Routing procedure |
110
- | capture-learnings | 2820 | `learning-to-rule-or-skill` | Capture procedure |
111
- | cli-output-handling | 1801 | `rtk-output-filtering` | Tool-wrapping procedure |
112
- | commit-conventions | 1938 | `conventional-commits-writing` | Format procedure |
113
- | docker-commands | 1830 | `docker` | Stack-specific procedure |
114
- | docs-sync | 3131 | `agent-docs-writing` | Mechanical sync procedure |
115
- | e2e-testing | 1807 | `tests-e2e-heal` | Procedural; project-specific |
116
- | laravel-translations | 995 | `laravel` | Stack-specific |
117
- | model-recommendation | 2909 | `cost-profile` | Routing procedure |
118
- | onboarding-gate | 4881 | `onboard` | Mechanical: meta-rule about /onboard |
119
- | package-ci-checks | 1342 | `lint-skills` | Repo-specific procedure |
120
- | reviewer-awareness | 3573 | `review-routing` | Skill exists; consolidates former `review-routing-awareness` (2026-05-08, see `agents/settings/contexts/adr-auto-rule-consolidation.md`) |
121
- | skill-improvement-trigger | 1597 | `skill-improvement-pipeline` | Trigger procedure |
122
- | slash-command-routing-policy | 3218 | `command-routing` | Routing procedure |
123
- | ui-audit-gate | 3285 | `existing-ui-audit` | Audit procedure |
124
- | upstream-proposal | 2424 | `upstream-contribute` | Procedural |
125
-
126
- ### § 3.4 — auto-rules: move-to-guideline (7)
127
-
128
- Reference / examples / mechanics. Body migrates into
129
- `docs/guidelines/<id>.md` (P4.2); rule keeps Iron Law + pointer.
130
-
131
- | id | chars | target guideline | rationale |
132
- |---|---:|---|---|
133
- | artifact-engagement-recording | 3462 | `artifact-engagement-flow` | Mechanics doc lives in `.agent-src.uncondensed/contexts/contracts/` (P4.1) |
134
- | augment-portability | 2956 | `augment-portability-patterns` | Project-agnostic-patterns reference |
135
- | command-suggestion-policy | 3954 | `command-suggestion-flow` | Flow doc already exists |
136
- | php-coding | 3433 | `php-coding-patterns` | Reference table; per-stack |
137
- | roadmap-progress-sync | 7455 | `roadmap-progress-mechanics` | Mostly mechanics + checkbox grammar |
138
- | rule-type-governance | 2661 | `rule-type-governance` | Reference: when always vs auto |
139
- | skill-quality | 5367 | `skill-quality-checklist` | Reference checklist |
140
-
141
- ## § 4 — Verification
142
-
143
- | check | command | acceptance |
144
- |---|---|---|
145
- | Coverage | `./scripts-run src/scripts/measure_rule_budget` | 56 rules total → 9 kernel + 22 condense + 18 skill + 7 guideline |
146
- | Determinism | `./scripts-run src/scripts/measure_rule_budget --json` × 2 | byte-identical output |
147
- | No-edits | `git diff --stat .agent-src.uncondensed/rules/` | clean (this is plan-only) |
148
-
149
- ## § 5 — Open questions
150
-
151
- 1. **Kernel swap ADR (P2.1).** `agent-authority` ↔
152
- `autonomous-execution`. See `kernel-membership.md` § 5.2 for the
153
- three resolution variants; this file syncs once the ADR lands.
154
- 2. **`reviewer-awareness` + `review-routing-awareness` merge.** ✅ resolved
155
- 2026-05-08 — merged into `reviewer-awareness` per
156
- `agents/settings/contexts/adr-auto-rule-consolidation.md`.
157
- 3. **`onboarding-gate` migration shape.** The rule fires only on the
158
- first turn; the migrated form must keep that trigger latch.
159
- Router state-machine primitives (once / every-turn / on-mode-
160
- switch) are a P3.1 deliverable dependency before P4 ships
161
- (Council R2).
162
- 4. **P4 migration shapes spec.** Per-disposition contract
163
- (replace / merge / stub / disappear) for `move-to-skill` and
164
- `move-to-guideline` — frontmatter handling, conflict resolution,
165
- one-liner + `routes_to:` shape vs body merge. P4 deliverable
166
- spec; flagged by Council R2 to prevent inconsistent implementer
167
- calls.
168
- 5. **`think-before-action` / `context-hygiene` / `augment-source-of-
169
- truth` boundary.** Currently `condense-and-keep` (auto). Council
170
- did not flag for promotion; revisit only if the swap ADR (#1)
171
- forces a re-projection.
@@ -1,132 +0,0 @@
1
- ---
2
- stability: beta
3
- keep-beta-until: 2026-08-12
4
- ---
5
-
6
- # Rule-Interaction Matrix
7
-
8
- > **Audience:** rule authors and reviewers — anyone editing
9
- > `.agent-src.uncondensed/rules/*.md` or proposing a new always-rule.
10
- > **Authoritative source:** [`rule-interactions.yml`](rule-interactions.yml).
11
- > **Linter:** `scripts/lint_rule_interactions.py` (run via `task lint-rule-interactions`).
12
-
13
- The matrix captures how the package's `always` rules relate when more
14
- than one fires on the same turn. It exists because rules at this size
15
- (55 rules, ~49k tokens budget) develop emergent precedence relationships
16
- that no single rule file can document on its own.
17
-
18
- The anchor pair is `non-destructive-by-default` — the universal safety
19
- floor — paired with the five rules most likely to be invoked in the
20
- same turn:
21
-
22
- - `autonomous-execution` — autonomy never lifts the floor.
23
- - `scope-control` — git-ops permission gate; floor is the never-overridable subset.
24
- - `commit-policy` — four exception paths to commit; floor still gates the diff content.
25
- - `ask-when-uncertain` — both rules push toward the same response on a destructive ambiguous request.
26
- - `verify-before-complete` — independent gates; both must be satisfied.
27
-
28
- ## Diagram
29
-
30
- ```mermaid
31
- graph LR
32
- NDD["non-destructive-by-default<br/>(Hard Floor)"]
33
- AE["autonomous-execution"]
34
- SC["scope-control"]
35
- CP["commit-policy"]
36
- AWU["ask-when-uncertain"]
37
- VBC["verify-before-complete"]
38
-
39
- NDD -- "overrides" --> AE
40
- NDD -- "restates" --> SC
41
- NDD -- "gates diff" --> CP
42
- NDD -- "complements" --> AWU
43
- NDD -- "complements" --> VBC
44
-
45
- SC -- "gates git ops" --> AE
46
- CP -- "overrides<br/>commit Q" --> AE
47
-
48
- classDef floor fill:#7a1f1f,stroke:#fff,color:#fff,font-weight:bold
49
- classDef gate fill:#1f4f7a,stroke:#fff,color:#fff
50
- class NDD floor
51
- class SC,CP gate
52
- ```
53
-
54
- ## Relations
55
-
56
- The YAML uses six relation kinds. Definitions:
57
-
58
- | Relation | Meaning |
59
- |---|---|
60
- | `overrides` | Senior rule's outcome wins when both fire — junior's permission cannot proceed past senior's stop. |
61
- | `narrows` | Senior shrinks the surface area on which junior applies, but does not stop it. |
62
- | `defers_to` | Junior explicitly hands over to senior on the overlapping surface. |
63
- | `restates` | The two rules cover overlapping ground intentionally — the restatement prevents future weakening of one side. |
64
- | `gates` | Senior fires *in addition to* junior on a specific subset, not instead of. |
65
- | `complements` | Both rules independently apply; outcomes are additive and harmonious. |
66
-
67
- ## Reading a pair entry
68
-
69
- ```yaml
70
- - id: ndd-x-autonomous-execution
71
- rules: [non-destructive-by-default, autonomous-execution] # senior, junior
72
- relation: overrides
73
- conflict: … # what triggers both
74
- resolution: … # what the agent does
75
- evidence:
76
- - .agent-src.uncondensed/rules/non-destructive-by-default.md#the-iron-law
77
- - .agent-src.uncondensed/rules/autonomous-execution.md#hard-floor--see-non-destructive-by-default
78
- ```
79
-
80
- `rules: [a, b]` is ordered: `a` is senior (wins on conflict), `b` is
81
- junior (yields). For `complements`, ordering is documentary only.
82
-
83
- ## Adding a new pair
84
-
85
- 1. Edit `rule-interactions.yml`, append a pair under `pairs:` with all
86
- six required fields.
87
- 2. Add both rule slugs to the top-level `rules:` block if not already
88
- listed.
89
- 3. Run `task lint-rule-interactions` — must exit 0.
90
- 4. Update the Mermaid diagram above if the pair is anchor-relevant
91
- (involves `non-destructive-by-default` or one of its five partners).
92
- 5. Reference the matrix from the rule files that are involved (one
93
- line each — the matrix is the source, not the rules).
94
-
95
- ## When **not** to add a pair
96
-
97
- - Two rules that never fire on the same turn — no interaction means
98
- no entry; the matrix is for *active* relationships.
99
- - Documentation-only cross-references (e.g. "see also") — those stay
100
- in the rule files.
101
- - Skill ↔ rule interactions — the matrix is rule-only. Skills are
102
- invoked, not always-active.
103
- - **Orchestration-layer surfaces** (AI Council, Memory, Work-Engine /
104
- Decision-Engine): these are runtime systems, not `always`-rules.
105
- Their interactions are governed by their own contracts and stay
106
- out of this matrix by design — see "Out of scope" below.
107
-
108
- ## Out of scope — orchestration surfaces (Council × Memory × Work-Engine)
109
-
110
- The matrix is **rule-only**. The orchestration layer is governed by
111
- dedicated contracts; cross-referencing them here would duplicate the
112
- source of truth and weaken it. Canonical contracts:
113
-
114
- | Surface | Canonical contract |
115
- |---|---|
116
- | Decision-Engine gates (`min_confidence`, `block_on_risk`, `require_memory_hits`, `on_block`) | [`decision-engine-gates.md`](decision-engine-gates.md) |
117
- | Decision-trace shape (what the engine emits per phase) | [`decision-trace-v1.md`](decision-trace-v1.md) |
118
- | Memory contract (entries, scopes, retention) | [`../guidelines/agent-infra/memory-access.md`](../guidelines/agent-infra/memory-access.md) |
119
- | Memory visibility in the trace (`affected` keys) | [`memory-visibility-v1.md`](memory-visibility-v1.md) |
120
- | AI-Council consultation flow | [`../skills/ai-council/SKILL.md`](../../.agent-src.uncondensed/skills/ai-council/SKILL.md) |
121
-
122
- Where an `always`-rule **does** interact with one of these surfaces
123
- (e.g. `non-destructive-by-default` gating a memory-driven action), the
124
- gate lives in the rule and the precedence is captured in this matrix
125
- as a rule-pair (the orchestration surface is the *occasion*, not a
126
- participant). For Council ↔ Memory ↔ Work-Engine interactions among
127
- themselves, the dedicated contracts above are authoritative.
128
-
129
- ## See also
130
-
131
- - [`docs/contracts/STABILITY.md`](STABILITY.md) — public-surface stability tiers.
132
- - [`docs/contracts/adr-chat-history-split.md`](adr-chat-history-split.md) — ADR pattern for major rule structural changes.
@@ -1,260 +0,0 @@
1
- # Rule-Interaction Matrix
2
- # -----------------------
3
- # Machine-readable contract for how the package's `always` rules relate
4
- # when more than one fires on the same turn. Linted by
5
- # `scripts/lint_rule_interactions.py`. Rendered diagram in
6
- # `docs/contracts/rule-interactions.md`.
7
- #
8
- # Schema:
9
- # version: integer
10
- # rules: list of rule slugs that participate in any interaction (each
11
- # must exist as `.agent-src.uncondensed/rules/<slug>.md`)
12
- # pairs: list of pairwise interactions
13
- # - id: kebab-case stable identifier
14
- # rules: [senior, junior] — `senior` wins on conflict
15
- # relation: overrides | narrows | defers_to | restates | gates | complements
16
- # conflict: one-line trigger that causes both to fire
17
- # resolution: one paragraph — what the agent does
18
- # evidence: list of `file#anchor` citations
19
- # tests: optional list of test paths
20
- #
21
- # Anchor pair: `non-destructive-by-default` × five rules per
22
- # `road-to-post-pr29-optimize.md` Phase 2.
23
-
24
- version: 1
25
-
26
- rules:
27
- - non-destructive-by-default
28
- - autonomous-execution
29
- - scope-control
30
- - commit-policy
31
- - ask-when-uncertain
32
- - verify-before-complete
33
- - agent-authority
34
- - language-and-tone
35
- - direct-answers
36
-
37
- pairs:
38
-
39
- - id: ndd-x-autonomous-execution
40
- rules: [non-destructive-by-default, autonomous-execution]
41
- relation: overrides
42
- conflict: >-
43
- Standing autonomy directive ("arbeite selbstständig") is active and
44
- the next step crosses a Hard-Floor trigger (production-branch merge,
45
- deploy, push, prod data/infra, whimsical bulk deletion, commit with
46
- bulk deletion / infra change).
47
- resolution: >-
48
- Autonomy never lifts the floor. Stop, surface the action via one
49
- numbered-options block, wait for explicit user confirmation on
50
- this turn before proceeding.
51
- evidence:
52
- - .agent-src.uncondensed/rules/non-destructive-by-default.md#the-iron-law
53
- - .agent-src.uncondensed/rules/autonomous-execution.md#hard-floor--see-non-destructive-by-default
54
-
55
- - id: ndd-x-scope-control
56
- rules: [non-destructive-by-default, scope-control]
57
- relation: restates
58
- conflict: >-
59
- Push, merge, branch creation, PR ops, tag pushes — both rules speak
60
- to the same git operations.
61
- resolution: >-
62
- `scope-control` is the canonical permission gate; the floor restates
63
- the prod-trunk and deploy-tied subset so the never-overridable layer
64
- cannot be weakened by future scope-control edits. On any conflict,
65
- the floor wins.
66
- evidence:
67
- - .agent-src.uncondensed/rules/non-destructive-by-default.md#the-iron-law
68
- - .agent-src.uncondensed/rules/scope-control.md#git-operations--permission-gated
69
- - .agent-src.uncondensed/rules/scope-control.md#production-infrastructure-bulk-destructive--hard-floor
70
-
71
- - id: ndd-x-commit-policy
72
- rules: [non-destructive-by-default, commit-policy]
73
- relation: gates
74
- conflict: >-
75
- A commit is otherwise authorized by one of `commit-policy`'s four
76
- paths (user-this-turn, standing instruction, `/commit*` invocation,
77
- roadmap pre-scan), but the diff contains bulk deletions or infra
78
- changes (row 6 of the Hard Floor).
79
- resolution: >-
80
- The commit pre-scan triggers regardless of which authorization path
81
- applies. Surface the diff (paths + counts), confirm this turn,
82
- then commit. The four exceptions cover *whether* commits happen;
83
- the floor covers *which diffs* still need a separate confirmation.
84
- evidence:
85
- - .agent-src.uncondensed/rules/non-destructive-by-default.md#the-iron-law
86
- - .agent-src.uncondensed/rules/commit-policy.md#hard-floor-still-applies--bulk-deletions-and-infra-changes
87
-
88
- - id: ndd-x-ask-when-uncertain
89
- rules: [non-destructive-by-default, ask-when-uncertain]
90
- relation: complements
91
- conflict: >-
92
- A floor trigger fires AND the request is ambiguous (e.g. "delete
93
- the legacy folder" without a file list).
94
- resolution: >-
95
- Both rules require the same response — stop and ask. The floor
96
- provides the categorical reason (destructive); ask-when-uncertain
97
- provides the question shape (one numbered-options block, blocking).
98
- No conflict; both fire harmoniously.
99
- evidence:
100
- - .agent-src.uncondensed/rules/non-destructive-by-default.md#failure-modes
101
- - .agent-src.uncondensed/rules/ask-when-uncertain.md#vague-request-triggers--must-ask
102
-
103
- - id: ndd-x-verify-before-complete
104
- rules: [non-destructive-by-default, verify-before-complete]
105
- relation: complements
106
- conflict: >-
107
- A floor-crossing action (deploy, prod-data write) was authorized
108
- and executed; agent is about to claim "done".
109
- resolution: >-
110
- Both rules apply independently. Floor is satisfied by user
111
- confirmation; verify-before-complete is satisfied by fresh
112
- verification evidence in the same message. Skipping either is a
113
- rule violation.
114
- evidence:
115
- - .agent-src.uncondensed/rules/non-destructive-by-default.md#the-iron-law
116
- - .agent-src.uncondensed/rules/verify-before-complete.md#the-iron-law
117
-
118
- - id: autonomy-x-scope-control
119
- rules: [scope-control, autonomous-execution]
120
- relation: gates
121
- conflict: >-
122
- Autonomy is `on` and the next step is a permission-gated git
123
- operation (push, branch create/delete, PR open, tag push) below
124
- the floor threshold.
125
- resolution: >-
126
- `scope-control`'s permission gate stays in force. Autonomy
127
- suppresses *trivial* questions only; git-shape decisions are
128
- blocking. Stop and ask.
129
- evidence:
130
- - .agent-src.uncondensed/rules/scope-control.md#git-operations--permission-gated
131
- - .agent-src.uncondensed/rules/autonomous-execution.md#blocking--still-ask-regardless-of-personalautonomy
132
-
133
- - id: autonomy-x-commit-policy
134
- rules: [commit-policy, autonomous-execution]
135
- relation: overrides
136
- conflict: >-
137
- Autonomy is `on` and the agent could plausibly "just commit" after
138
- a green verification step.
139
- resolution: >-
140
- `commit-policy` Iron Law forbids both committing AND asking about
141
- committing unless one of the four exceptions applies. Autonomy
142
- does not add a fifth exception.
143
- evidence:
144
- - .agent-src.uncondensed/rules/commit-policy.md#the-iron-law
145
- - .agent-src.uncondensed/rules/autonomous-execution.md#commit-policy--see-commit-policy
146
-
147
- - id: authority-x-ndd
148
- rules: [agent-authority, non-destructive-by-default]
149
- relation: defers_to
150
- conflict: >-
151
- Both rules speak to "may the agent do this autonomously?" — the
152
- Priority Index points to the Hard Floor as Band 1.
153
- resolution: >-
154
- `agent-authority` is a router, never a source of truth. The Hard
155
- Floor's Iron Law lives verbatim in `non-destructive-by-default`
156
- and wins every conflict. The index points; it never restates.
157
- evidence:
158
- - .agent-src.uncondensed/rules/agent-authority.md#index-rules
159
- - .agent-src.uncondensed/rules/non-destructive-by-default.md#the-iron-law
160
-
161
- - id: authority-x-scope-control
162
- rules: [agent-authority, scope-control]
163
- relation: defers_to
164
- conflict: >-
165
- Permission Gate questions (push, branch, PR, architectural change)
166
- surface during routine work — the index labels Band 2.
167
- resolution: >-
168
- The Priority Index routes to `scope-control` for git-shape and
169
- scope-expansion decisions. Index never narrows or weakens the
170
- gate; canonical rule wins on any wording divergence.
171
- evidence:
172
- - .agent-src.uncondensed/rules/agent-authority.md#index-rules
173
- - .agent-src.uncondensed/rules/scope-control.md#git-operations--permission-gated
174
-
175
- - id: authority-x-commit-policy
176
- rules: [agent-authority, commit-policy]
177
- relation: defers_to
178
- conflict: >-
179
- The "about to commit" decision arises — the index labels it Band 3
180
- (Commit Default = never, with four exceptions).
181
- resolution: >-
182
- `commit-policy` Iron Law is canonical. The Priority Index points
183
- to it; it does not enumerate the four exceptions itself. Future
184
- edits to commit-policy do not require Index updates unless the
185
- band ordering changes.
186
- evidence:
187
- - .agent-src.uncondensed/rules/agent-authority.md#index-rules
188
- - .agent-src.uncondensed/rules/commit-policy.md#exceptions--when-committing-is-allowed
189
-
190
- - id: scope-x-commit-policy
191
- rules: [scope-control, commit-policy]
192
- relation: narrows
193
- conflict: >-
194
- `scope-control` § "Git operations" forbids committing without
195
- explicit permission as one of several git-op gates; `commit-policy`
196
- narrows the commit case to a never-ask default with four named
197
- exceptions.
198
- resolution: >-
199
- `commit-policy` is the narrower, canonical rule for the commit
200
- sub-case. `scope-control` continues to govern push, branch, PR,
201
- tag operations. On commit specifics, defer to `commit-policy`;
202
- on other git ops, defer to `scope-control`.
203
- evidence:
204
- - .agent-src.uncondensed/rules/scope-control.md#git-operations--permission-gated
205
- - .agent-src.uncondensed/rules/commit-policy.md#the-iron-law
206
-
207
- - id: ask-x-direct-answers
208
- rules: [ask-when-uncertain, direct-answers]
209
- relation: complements
210
- conflict: >-
211
- A vague request triggers `ask-when-uncertain` (must ask), but
212
- `direct-answers` Iron Law 3 (brevity by default) discourages
213
- overlong replies; could read as tension when the question needs
214
- framing.
215
- resolution: >-
216
- Both rules apply. `ask-when-uncertain` decides *whether* to ask
217
- and demands one question per turn with numbered options.
218
- `direct-answers` shapes *how* the question reads — no flattery,
219
- no padding, shortest form that fully states the choice.
220
- evidence:
221
- - .agent-src.uncondensed/rules/ask-when-uncertain.md#iron-law--one-question-per-turn-always
222
- - .agent-src.uncondensed/rules/direct-answers.md#iron-law-3--brevity-by-default
223
-
224
- - id: scope-x-verify-before-complete
225
- rules: [verify-before-complete, scope-control]
226
- relation: complements
227
- conflict: >-
228
- Agent has just finished a change that touches user-permission-gated
229
- operations (push, branch, PR, tag) and is preparing to claim "done"
230
- in the same turn. Both rules can fire: `verify-before-complete`
231
- gates the completion claim on fresh evidence; `scope-control`
232
- gates the git operation on explicit permission this turn.
233
- resolution: >-
234
- Both rules apply independently and compose. The
235
- `verify-before-complete` Iron Law still requires fresh
236
- verification output in this message before any "done" claim,
237
- regardless of whether the user has authorised the next git op.
238
- Conversely, verification passing does not authorise pushing or
239
- merging — those stay behind the `scope-control` permission gate.
240
- Skipping either is a rule violation; satisfying one does not
241
- satisfy the other.
242
- evidence:
243
- - .agent-src.uncondensed/rules/verify-before-complete.md#the-iron-law
244
- - .agent-src.uncondensed/rules/scope-control.md#git-operations--permission-gated
245
-
246
- - id: language-x-direct-answers
247
- rules: [language-and-tone, direct-answers]
248
- relation: complements
249
- conflict: >-
250
- User writes German; agent must mirror language AND avoid flattery,
251
- invented facts, padding. Both rules speak to reply shape.
252
- resolution: >-
253
- `language-and-tone` decides the language token (mirror user's last
254
- chat message); `direct-answers` decides content discipline (no
255
- flattery, verified facts, brevity). They compose: a brief, direct,
256
- flattery-free reply in the user's language. Neither weakens the
257
- other.
258
- evidence:
259
- - .agent-src.uncondensed/rules/language-and-tone.md#iron-law--mirror-the-users-language-always
260
- - .agent-src.uncondensed/rules/direct-answers.md#iron-law-1--no-flattery
@@ -1,88 +0,0 @@
1
- ---
2
- stability: beta
3
- keep-beta-until: 2026-08-12
4
- ---
5
-
6
- # Rule Priority Hierarchy
7
-
8
- > **Audience:** anyone reading or editing `.agent-src.uncondensed/rules/*.md`,
9
- > or trying to predict which rule wins when several fire on the same turn.
10
- > **Machine-readable counterpart:** [`rule-interactions.yml`](rule-interactions.yml)
11
- > (linted by `scripts/lint_rule_interactions.py`).
12
- > **Diagram + pair-by-pair narrative:** [`rule-interactions.md`](rule-interactions.md).
13
-
14
- This document is the **ordered list** view. The matrix files describe
15
- how *pairs* of rules interact; this file states **which band wins**
16
- when the bands themselves disagree.
17
-
18
- ## The four-line principle
19
-
20
- ```
21
- Safety beats autonomy.
22
- Scope beats helpfulness.
23
- Verification beats completion.
24
- User intent beats command suggestion.
25
- ```
26
-
27
- Every band below is a concrete instance of one of those four lines.
28
- When in doubt, walk the list top-down and stop at the first band that
29
- fires — that band's canonical rule decides the turn.
30
-
31
- ## The ordered list
32
-
33
- | Band | Rule | What it gates | Lifts under |
34
- |---|---|---|---|
35
- | 1 | [`non-destructive-by-default`](../../.agent-src.uncondensed/rules/non-destructive-by-default.md) | Prod-trunk merge · deploy · push · prod data/infra · whimsical bulk deletion · bulk-deletion or infra commit | **Never.** Explicit user confirmation *this turn* only. |
36
- | 2 | [`security-sensitive-stop`](../../.agent-src.uncondensed/rules/security-sensitive-stop.md) | Auth · billing · tenant boundaries · secrets · file uploads · webhooks · public endpoints | Threat-model pass completed and recorded *before* the edit. |
37
- | 3 | [`scope-control`](../../.agent-src.uncondensed/rules/scope-control.md) | Git ops (branch · PR · tag · push · merge · rebase) · architectural changes · new libraries · scope expansion | Explicit user permission *this turn* or unrevoked standing instruction. |
38
- | 4 | [`ask-when-uncertain`](../../.agent-src.uncondensed/rules/ask-when-uncertain.md) | Ambiguous requirements · vague-request triggers · fenced steps | Concrete evidence resolves the ambiguity, **or** user answers the single question. |
39
- | 5 | [`commit-policy`](../../.agent-src.uncondensed/rules/commit-policy.md) | Any `git commit` | Four exceptions only — explicit "commit now", standing instruction, `/commit*` invocation, roadmap authorization. |
40
- | 6 | [`verify-before-complete`](../../.agent-src.uncondensed/rules/verify-before-complete.md) | "Done" / "complete" claims · suggestions to commit, push, or PR | Fresh verification evidence in *this* message. |
41
- | 7 | [`autonomous-execution`](../../.agent-src.uncondensed/rules/autonomous-execution.md) | Trivial-vs-blocking classification · autonomy opt-in detection | Per-step decision; never above bands 1–6. |
42
- | 8 | [`command-suggestion-policy`](../../.agent-src.uncondensed/rules/command-suggestion-policy.md) | Surfacing slash-command matches as numbered options | User always picks; nothing auto-executes. |
43
- | 9 | [`language-and-tone`](../../.agent-src.uncondensed/rules/language-and-tone.md) | First-token language of every reply · `.md` always English | Mirror the user's last chat message — no momentum exception. |
44
-
45
- **Read direction:** top-to-bottom is *priority on conflict*, not chronology.
46
- A turn typically touches several bands at once; the hierarchy decides
47
- which one's Iron Law gets the final say.
48
-
49
- ## Index rules
50
-
51
- - **Higher band wins.** A band-3 permission does not lift band-1; a band-5
52
- commit exception does not lift band-3. Each band's "Lifts under" column
53
- is its own escape hatch and only its own.
54
- - **No band restates an Iron Law.** Iron Laws live verbatim in the
55
- canonical rule files. This hierarchy points; it does not paraphrase.
56
- - **Bands 1–2 are *Hard Floors*.** No autonomy setting, no roadmap step,
57
- no standing instruction lifts them. See
58
- [`agent-authority`](../../.agent-src.uncondensed/rules/agent-authority.md)
59
- § Index rules for the matching authority statement.
60
- - **Unsure → ask.** [`ask-when-uncertain`](../../.agent-src.uncondensed/rules/ask-when-uncertain.md)
61
- is the universal escape hatch when the band is unclear.
62
-
63
- ## Worked examples
64
-
65
- | Situation | Bands that fire | Winner | Why |
66
- |---|---|---|---|
67
- | Standing autonomy + roadmap step says "merge to `main`" | 1, 7 | **1** | Hard Floor predates and outranks autonomy; surface the merge, ask. |
68
- | `/commit:in-chunks` on a diff that removes a directory | 1, 5 | **1** | Commit exception authorizes *commits*, not *bulk deletions*. Confirm diff this turn. |
69
- | User asks "improve this" with no metric named | 4, 7 | **4** | Vague-request trigger fires before any autonomy decision; ask the one clarifying question. |
70
- | Editing `app/Auth/PasswordReset.php` mid-feature | 2, 7 | **2** | Security-sensitive surface stops the edit until threat-model is recorded. |
71
- | Agent about to claim "ready to merge" with no fresh test output | 5, 6 | **6** | Verification gate fires before the commit/push question is even valid. |
72
- | User types free-form prompt that matches `/refine-ticket` | 8, 9 | **8 + 9** | Suggestion runs as numbered options, mirrored to user's language. No conflict. |
73
-
74
- ## Cross-references
75
-
76
- - [`agent-authority`](../../.agent-src.uncondensed/rules/agent-authority.md) — the four-band authority router (bands 1–3 + 7 of this hierarchy).
77
- - [`rule-interactions.md`](rule-interactions.md) — pairwise interaction narrative + Mermaid diagram.
78
- - [`rule-interactions.yml`](rule-interactions.yml) — machine-readable, CI-linted matrix.
79
- - [`STABILITY.md`](STABILITY.md) — what the `stability: beta` tag means for breaking changes.
80
-
81
- ## Stability
82
-
83
- `beta` — the band ordering and four-line principle are settled, but
84
- the *worked examples* and the inclusion of band 8 (`command-suggestion-policy`)
85
- in the public hierarchy have not yet shipped through one major release.
86
- A breaking change to the band ordering is a SemVer-minor-pre-1.0 bump
87
- or a SemVer-major bump after 1.0. Adding a row, refining a "Lifts under"
88
- clause, or expanding the worked-examples table is non-breaking.