@event4u/agent-config 9.8.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 (817) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +278 -298
  3. package/CONTRIBUTING.md +23 -7
  4. package/MIGRATION.md +20 -0
  5. package/README.md +55 -9
  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/fix/portability.md +2 -2
  12. package/dist/agent-src/commands/fix/pr-comments-loop.md +136 -0
  13. package/dist/agent-src/commands/fix/refs.md +2 -2
  14. package/dist/agent-src/commands/fix/route.md +4 -3
  15. package/dist/agent-src/commands/fix.md +9 -6
  16. package/dist/agent-src/commands/ghostwriter.md +1 -1
  17. package/dist/agent-src/commands/image.md +1 -1
  18. package/dist/agent-src/commands/optimize/augmentignore.md +1 -1
  19. package/dist/agent-src/commands/optimize/skills.md +2 -2
  20. package/dist/agent-src/commands/post-as.md +1 -1
  21. package/dist/agent-src/commands/research.md +1 -1
  22. package/dist/agent-src/commands/roadmap/ai-council.md +1 -1
  23. package/dist/agent-src/commands/security-audit-config.md +1 -1
  24. package/dist/agent-src/commands/team/delegate.md +4 -0
  25. package/dist/agent-src/commands/video.md +1 -1
  26. package/dist/agent-src/contexts/authority/kernel-rule-edits.md +1 -1
  27. package/dist/agent-src/contexts/contracts/emergency-triage-block.md +2 -2
  28. package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +48 -2
  29. package/dist/agent-src/contexts/execution/orchestration-telemetry.md +10 -0
  30. package/dist/agent-src/contexts/execution/subagent-modes-detail.md +109 -8
  31. package/dist/agent-src/contexts/execution/subagent-response-contract.md +20 -0
  32. package/dist/agent-src/contexts/execution/subagent-spawn-contract.md +53 -3
  33. package/dist/agent-src/rules/code-provenance.md +112 -0
  34. package/dist/agent-src/rules/external-code-graph-interop.md +4 -4
  35. package/dist/agent-src/rules/history-discipline.md +80 -0
  36. package/dist/agent-src/rules/no-roadmap-references.md +1 -1
  37. package/dist/agent-src/rules/php-coding.md +1 -0
  38. package/dist/agent-src/rules/reviewer-awareness.md +1 -0
  39. package/dist/agent-src/rules/roadmap-ci-steps-policy.md +1 -0
  40. package/dist/agent-src/rules/roadmap-progress-sync.md +7 -0
  41. package/dist/agent-src/rules/scale-discipline.md +92 -0
  42. package/dist/agent-src/rules/security-sensitive-stop.md +10 -0
  43. package/dist/agent-src/rules/session-canary.md +77 -0
  44. package/dist/agent-src/rules/token-optimizer-maintenance.md +1 -1
  45. package/dist/agent-src/rules/tool-safety.md +3 -1
  46. package/dist/agent-src/rules/untrusted-input-defense.md +10 -0
  47. package/dist/agent-src/skills/agent-security-review/SKILL.md +1 -1
  48. package/dist/agent-src/skills/code-intelligence/SKILL.md +17 -14
  49. package/dist/agent-src/skills/condense-memory/SKILL.md +1 -1
  50. package/dist/agent-src/skills/corpus-grounding/SKILL.md +0 -3
  51. package/dist/agent-src/skills/description-assist/SKILL.md +1 -1
  52. package/dist/agent-src/skills/design-review/SKILL.md +5 -6
  53. package/dist/agent-src/skills/design-tokens/SKILL.md +0 -1
  54. package/dist/agent-src/skills/history-design/SKILL.md +101 -0
  55. package/dist/agent-src/skills/history-design/evals/triggers.json +17 -0
  56. package/dist/agent-src/skills/humanizer/SKILL.md +3 -3
  57. package/dist/agent-src/skills/image-editing/SKILL.md +1 -1
  58. package/dist/agent-src/skills/image-generation/SKILL.md +2 -1
  59. package/dist/agent-src/skills/image-provider-routing/SKILL.md +2 -2
  60. package/dist/agent-src/skills/launch-readiness/SKILL.md +1 -1
  61. package/dist/agent-src/skills/license-compliance-audit/SKILL.md +161 -0
  62. package/dist/agent-src/skills/license-compliance-audit/evals/triggers.json +52 -0
  63. package/dist/agent-src/skills/license-compliance-borrow-check/SKILL.md +145 -0
  64. package/dist/agent-src/skills/license-compliance-borrow-check/evals/triggers.json +52 -0
  65. package/dist/agent-src/skills/license-compliance-credits/SKILL.md +97 -0
  66. package/dist/agent-src/skills/license-compliance-credits/evals/triggers.json +52 -0
  67. package/dist/agent-src/skills/md-language-check/SKILL.md +1 -1
  68. package/dist/agent-src/skills/override-management/SKILL.md +1 -1
  69. package/dist/agent-src/skills/prediction-pool-optimizer/SKILL.md +7 -7
  70. package/dist/agent-src/skills/project-analysis-core/SKILL.md +1 -1
  71. package/dist/agent-src/skills/prompt-engineering-image/SKILL.md +3 -2
  72. package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +2 -2
  73. package/dist/agent-src/skills/recursive-verification/SKILL.md +6 -0
  74. package/dist/agent-src/skills/refine-ticket/SKILL.md +3 -3
  75. package/dist/agent-src/skills/roadmap-writing/SKILL.md +4 -0
  76. package/dist/agent-src/skills/rtk-output-filtering/SKILL.md +31 -12
  77. package/dist/agent-src/skills/rule-refactor/SKILL.md +3 -3
  78. package/dist/agent-src/skills/schema-review/SKILL.md +92 -0
  79. package/dist/agent-src/skills/schema-review/evals/triggers.json +17 -0
  80. package/dist/agent-src/skills/secrets-management/SKILL.md +3 -4
  81. package/dist/agent-src/skills/security-audit/SKILL.md +1 -1
  82. package/dist/agent-src/skills/security-maturity-assessment/SKILL.md +1 -1
  83. package/dist/agent-src/skills/skill-improvement-pipeline/SKILL.md +3 -3
  84. package/dist/agent-src/skills/skill-writing/SKILL.md +2 -2
  85. package/dist/agent-src/skills/source-discovery/SKILL.md +5 -5
  86. package/dist/agent-src/skills/subagent-orchestration/SKILL.md +45 -85
  87. package/dist/agent-src/skills/subagent-orchestration/prompts/README.md +5 -4
  88. package/dist/agent-src/skills/systematic-debugging/SKILL.md +2 -2
  89. package/dist/agent-src/skills/tailwind-engineer/SKILL.md +2 -3
  90. package/dist/agent-src/skills/token-optimizer/SKILL.md +4 -4
  91. package/dist/agent-src/skills/verify-repair-loop/SKILL.md +1 -1
  92. package/dist/agent-src/skills/worktree-lifecycle/SKILL.md +2 -3
  93. package/dist/agent-src/templates/AGENTS.md +1 -1
  94. package/dist/agent-src/templates/agents/.gitattributes.fragment +25 -6
  95. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  96. package/dist/agent-src/templates/command.md +3 -3
  97. package/dist/agent-src/templates/persona.md +2 -2
  98. package/dist/agent-src/templates/rule.md +2 -2
  99. package/dist/agent-src/templates/scripts/telemetry/engagement.ts +77 -0
  100. package/dist/agent-src/templates/scripts/telemetry_record.ts +33 -1
  101. package/dist/cli/commands/doctorShell.js +20 -0
  102. package/dist/cli/commands/doctorShell.js.map +1 -1
  103. package/dist/cli/commands/rtkDetect.js +58 -0
  104. package/dist/cli/commands/rtkDetect.js.map +1 -0
  105. package/dist/cli/firstRunNotice.js +70 -0
  106. package/dist/cli/firstRunNotice.js.map +1 -0
  107. package/dist/cli/main.js +35 -3
  108. package/dist/cli/main.js.map +1 -1
  109. package/dist/cli/registry.js +7 -1
  110. package/dist/cli/registry.js.map +1 -1
  111. package/dist/discovery/deprecation-report.md +1 -1
  112. package/dist/discovery/discovery-manifest.json +362 -78
  113. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  114. package/dist/discovery/discovery-manifest.summary.md +6 -4
  115. package/dist/discovery/orphan-report.md +1 -1
  116. package/dist/discovery/packs.json +90 -8
  117. package/dist/discovery/trust-report.md +11 -11
  118. package/dist/discovery/workspaces.json +31 -7
  119. package/dist/hooks/dispatch.js +19475 -0
  120. package/dist/install/agentSwitchDetection.js +75 -0
  121. package/dist/install/agentSwitchDetection.js.map +1 -0
  122. package/dist/install/agentSwitchProfile.js +117 -0
  123. package/dist/install/agentSwitchProfile.js.map +1 -0
  124. package/dist/install/atomic.js +1 -1
  125. package/dist/install/detect.js +1 -1
  126. package/dist/install/install.mjs +775 -486
  127. package/dist/install/rtkDetection.js +213 -0
  128. package/dist/install/rtkDetection.js.map +1 -0
  129. package/dist/install/rule_scope.js +2 -1
  130. package/dist/install/rule_scope.js.map +1 -1
  131. package/dist/install/types.js +2 -2
  132. package/dist/install/wizard-plan.js +1 -1
  133. package/dist/install/wizardDismissals.js +58 -0
  134. package/dist/install/wizardDismissals.js.map +1 -0
  135. package/dist/mcp/awesome-mcp-servers.row.md +1 -1
  136. package/dist/mcp/mcp-cloudflare-catalogue.json +1 -1
  137. package/dist/mcp/registry-manifest.json +15 -4
  138. package/dist/mcp/server.json +20 -0
  139. package/dist/mcp/server.mjs +44292 -0
  140. package/dist/router.json +1 -1
  141. package/dist/scripts/condense.js +14 -7
  142. package/dist/scripts/condense.js.map +1 -1
  143. package/dist/server/app.js +4 -2
  144. package/dist/server/app.js.map +1 -1
  145. package/dist/server/io/sharedWriteCheck.js +101 -0
  146. package/dist/server/io/sharedWriteCheck.js.map +1 -0
  147. package/dist/server/routes/ping.js +14 -0
  148. package/dist/server/routes/ping.js.map +1 -1
  149. package/dist/server/routes/settings.js +21 -4
  150. package/dist/server/routes/settings.js.map +1 -1
  151. package/dist/server/routes/userMd.js +21 -4
  152. package/dist/server/routes/userMd.js.map +1 -1
  153. package/dist/server/routes/wizard.js +68 -25
  154. package/dist/server/routes/wizard.js.map +1 -1
  155. package/dist/server/schemas/settings.js +4 -2
  156. package/dist/server/schemas/settings.js.map +1 -1
  157. package/dist/ui/assets/index-BpSQt5vm.js +40 -0
  158. package/dist/ui/assets/index-BpSQt5vm.js.map +1 -0
  159. package/dist/ui/assets/index-jSfMW8_t.css +1 -0
  160. package/dist/ui/index.html +2 -2
  161. package/docs/MIGRATION.md +16 -0
  162. package/docs/guidelines/component-oriented-and-oop-development.md +4 -2
  163. package/package.json +21 -11
  164. package/src/agent-src/templates/AGENTS.md +1 -1
  165. package/src/agent-src/templates/scripts/telemetry/engagement.ts +77 -0
  166. package/src/agent-src/templates/scripts/telemetry_record.ts +33 -1
  167. package/src/config/agent-settings.template.yml +52 -14
  168. package/src/config/discovery/packs.yml +22 -0
  169. package/src/config/discovery/workspaces.yml +1 -1
  170. package/src/config/evaluator-budgets.json +47 -0
  171. package/src/config/hook-latency-budget.json +20 -0
  172. package/src/install/agentSwitchDetection.ts +90 -0
  173. package/src/install/agentSwitchProfile.ts +131 -0
  174. package/src/install/atomic.ts +1 -1
  175. package/src/install/detect.ts +1 -1
  176. package/src/install/rtkDetection.ts +274 -0
  177. package/src/install/rule_scope.ts +9 -2
  178. package/src/install/types.ts +2 -2
  179. package/src/install/wizard-plan.ts +1 -1
  180. package/src/install/wizardDismissals.ts +60 -0
  181. package/src/scripts/_cli/cmd_doctor.ts +62 -1
  182. package/src/scripts/_cli/cmd_memory_get.ts +197 -0
  183. package/src/scripts/_cli/cmd_refresh.ts +30 -0
  184. package/src/scripts/_dispatch.bash +81 -0
  185. package/src/scripts/_lib/auto_dispatch.corpus.test.ts +64 -1
  186. package/src/scripts/_lib/auto_dispatch.ts +76 -0
  187. package/src/scripts/_lib/detect_target_license.ts +714 -0
  188. package/src/scripts/_lib/fixtures/secret-detector/negatives.txt +5 -0
  189. package/src/scripts/_lib/fixtures/secret-detector/positives.txt +4 -0
  190. package/src/scripts/_lib/install_drift.ts +194 -0
  191. package/src/scripts/_lib/memory_fts_index.ts +390 -0
  192. package/src/scripts/_lib/orchestration_record.ts +91 -2
  193. package/src/scripts/_lib/persistence/adapter_raw_sql.ts +443 -0
  194. package/src/scripts/_lib/persistence/detect_audit_coverage.ts +423 -0
  195. package/src/scripts/_lib/persistence/detect_bounded_reads.ts +154 -0
  196. package/src/scripts/_lib/persistence/detect_index_parity.ts +576 -0
  197. package/src/scripts/_lib/persistence/detect_n1_eloquent.ts +226 -0
  198. package/src/scripts/_lib/persistence/detect_offload.ts +441 -0
  199. package/src/scripts/_lib/persistence/detect_prisma_growth.ts +74 -0
  200. package/src/scripts/_lib/persistence/offload_catalog.ts +73 -0
  201. package/src/scripts/_lib/persistence/types.ts +109 -0
  202. package/src/scripts/_lib/rtk_allowlist.ts +44 -0
  203. package/src/scripts/_lib/secret_detector.test.ts +5 -0
  204. package/src/scripts/_lib/secret_detector.ts +9 -0
  205. package/src/scripts/_lib/secret_detector_adversarial.test.ts +116 -0
  206. package/src/scripts/_lib/spawn_env.ts +7 -0
  207. package/src/scripts/_lib/sqlite_guard.ts +191 -0
  208. package/src/scripts/_lib/subagent_spawn.ts +53 -0
  209. package/src/scripts/_lib/worker_budget.ts +107 -0
  210. package/src/scripts/ai_council/blind_review.ts +0 -0
  211. package/src/scripts/ai_council/config.ts +12 -6
  212. package/src/scripts/ai_council/orchestrator.ts +73 -3
  213. package/src/scripts/ai_team/review_gate.ts +8 -10
  214. package/src/scripts/ai_team/team_dispatch.ts +48 -0
  215. package/src/scripts/audit_initial_context.ts +1 -1
  216. package/src/scripts/bench_cross_source_eval.ts +400 -0
  217. package/src/scripts/bench_honesty_score.ts +1093 -0
  218. package/src/scripts/bench_hook_latency.ts +218 -0
  219. package/src/scripts/build_mcp_catalog.ts +275 -0
  220. package/src/scripts/build_mcp_registry_manifest.ts +46 -0
  221. package/src/scripts/build_proof.ts +45 -0
  222. package/src/scripts/chat_history.ts +8 -5
  223. package/src/scripts/check_backstop_debt.ts +23 -13
  224. package/src/scripts/check_bundle_path_leakage.ts +343 -0
  225. package/src/scripts/check_evaluator_budgets.ts +99 -0
  226. package/src/scripts/check_knowledge_sharing.ts +12 -1
  227. package/src/scripts/check_no_external_sources.ts +2 -2
  228. package/src/scripts/check_source_pointer_freshness.ts +28 -3
  229. package/src/scripts/code_graph/build.ts +0 -0
  230. package/src/scripts/code_graph/cli.ts +181 -9
  231. package/src/scripts/code_graph/detect.ts +52 -0
  232. package/src/scripts/code_graph/intent.ts +45 -0
  233. package/src/scripts/code_graph/query.ts +143 -29
  234. package/src/scripts/code_graph/sqlite_store.ts +174 -0
  235. package/src/scripts/condense.ts +14 -6
  236. package/src/scripts/context_hygiene_hook.ts +8 -5
  237. package/src/scripts/council_cli.ts +126 -12
  238. package/src/scripts/detect_target_license.ts +203 -0
  239. package/src/scripts/evaluator_umbrella.sh +145 -0
  240. package/src/scripts/external_sources_denylist.json +5 -3
  241. package/src/scripts/first_run_gate_hook.ts +9 -5
  242. package/src/scripts/hermetic-install.sh +3 -3
  243. package/src/scripts/hook_manifest.yaml +55 -16
  244. package/src/scripts/hooks/block_kernel_rule_writes.ts +212 -0
  245. package/src/scripts/hooks/block_no_verify.ts +9 -9
  246. package/src/scripts/hooks/code_graph_nudge_hook.ts +11 -4
  247. package/src/scripts/hooks/concern_registry.ts +75 -0
  248. package/src/scripts/hooks/design_slop_hook.ts +8 -5
  249. package/src/scripts/hooks/dispatch_entry.ts +37 -0
  250. package/src/scripts/hooks/dispatch_hook.ts +176 -3
  251. package/src/scripts/hooks/hook_stdin.ts +42 -0
  252. package/src/scripts/hooks/rtk_wrap_hook.ts +26 -12
  253. package/src/scripts/hot_context_hook.ts +7 -6
  254. package/src/scripts/injection_scan_hook.ts +9 -1
  255. package/src/scripts/install +6 -6
  256. package/src/scripts/install-hooks.sh +4 -4
  257. package/src/scripts/install.sh +5 -4
  258. package/src/scripts/install.ts +264 -23
  259. package/src/scripts/learning_sidecar.ts +0 -0
  260. package/src/scripts/lint_budget_ownership.ts +89 -0
  261. package/src/scripts/lint_command_routing.ts +35 -5
  262. package/src/scripts/lint_command_verbs.ts +42 -9
  263. package/src/scripts/lint_consumer_internal_refs.ts +211 -0
  264. package/src/scripts/lint_discovery_vocabulary.ts +2 -0
  265. package/src/scripts/lint_documented_commands.ts +670 -0
  266. package/src/scripts/lint_framework_leakage.ts +17 -3
  267. package/src/scripts/lint_framework_leakage_allowlist.json +32 -0
  268. package/src/scripts/lint_governed_writes.ts +335 -0
  269. package/src/scripts/lint_hidden_unicode.ts +6 -0
  270. package/src/scripts/lint_mcp_registry_manifest.ts +26 -1
  271. package/src/scripts/lint_memory_tripwire.ts +186 -0
  272. package/src/scripts/lint_override_kernel_guard.ts +74 -26
  273. package/src/scripts/lint_persistence.ts +171 -0
  274. package/src/scripts/lint_pre_migration_refs.ts +106 -0
  275. package/src/scripts/lint_provenance.ts +547 -0
  276. package/src/scripts/lint_provenance_vocabulary.ts +437 -0
  277. package/src/scripts/lint_spawn_payload.ts +283 -0
  278. package/src/scripts/lint_store_boundary.ts +152 -0
  279. package/src/scripts/lint_versioned_cache.ts +7 -1
  280. package/src/scripts/mcp_server/__main__.ts +7 -2
  281. package/src/scripts/mcp_server/catalog.ts +23 -1
  282. package/src/scripts/mcp_server/consumer_tool_catalog.json +563 -193
  283. package/src/scripts/mcp_server/prompts.ts +6 -0
  284. package/src/scripts/mcp_server/tool_catalog_source.ts +332 -0
  285. package/src/scripts/mcp_server/tools.ts +56 -5
  286. package/src/scripts/mcp_telemetry_query.ts +2 -33
  287. package/src/scripts/mcp_telemetry_store.ts +64 -34
  288. package/src/scripts/memory_learn_hook.ts +126 -0
  289. package/src/scripts/memory_lookup.ts +0 -0
  290. package/src/scripts/memory_replay_24.ts +312 -0
  291. package/src/scripts/memory_report.ts +16 -3
  292. package/src/scripts/memory_signal.ts +48 -0
  293. package/src/scripts/memory_status.ts +6 -0
  294. package/src/scripts/minimal_safe_diff_hook.ts +8 -5
  295. package/src/scripts/onboarding_gate_hook.ts +8 -5
  296. package/src/scripts/orchestration_record.ts +16 -0
  297. package/src/scripts/pr_url_reminder_hook.ts +8 -1
  298. package/src/scripts/prepack-check.mjs +17 -0
  299. package/src/scripts/prepack_lifecycle_check.d.mts +8 -0
  300. package/src/scripts/prepack_lifecycle_check.mjs +82 -0
  301. package/src/scripts/profile_staleness_hook.ts +8 -7
  302. package/src/scripts/report_install_drift.ts +109 -0
  303. package/src/scripts/roadmap_progress_hook.ts +8 -5
  304. package/src/scripts/schemas/license-policy.schema.json +89 -0
  305. package/src/scripts/schemas/provenance-borrow.schema.json +46 -0
  306. package/src/scripts/schemas/rule.schema.json +10 -0
  307. package/src/scripts/self_review_gate.test.ts +173 -1
  308. package/src/scripts/self_review_gate.ts +155 -15
  309. package/src/scripts/session_canary_hook.ts +182 -0
  310. package/src/scripts/smoke_quickstart.ts +2 -2
  311. package/src/scripts/surface_probe_hook.ts +8 -7
  312. package/src/scripts/sync_gitattributes.ts +310 -0
  313. package/src/scripts/team_review_gate_hook.ts +13 -16
  314. package/src/scripts/verify_before_complete_hook.ts +8 -5
  315. package/src/scripts/wrapper_freshness_hook.ts +8 -7
  316. package/src/server/schemas/settings.ts +8 -2
  317. package/dist/ui/assets/index-BPFMZWUs.css +0 -1
  318. package/dist/ui/assets/index-CrmZ34Rg.js +0 -40
  319. package/dist/ui/assets/index-CrmZ34Rg.js.map +0 -1
  320. package/docs/CLAIMS.md +0 -286
  321. package/docs/DISTRIBUTION_CHECKLIST.md +0 -170
  322. package/docs/RELEASE_STORY_TEMPLATE.md +0 -37
  323. package/docs/SKILL_CENSUS.md +0 -352
  324. package/docs/adrs/cost/0001-hard-stop-hook.md +0 -114
  325. package/docs/adrs/cost/README.md +0 -9
  326. package/docs/adrs/memory/0001-consumer-side-snapshot.md +0 -119
  327. package/docs/adrs/memory/README.md +0 -10
  328. package/docs/adrs/router/0001-three-tier-routing.md +0 -119
  329. package/docs/adrs/router/README.md +0 -9
  330. package/docs/adrs/schema/0001-json-schema-frontmatter.md +0 -102
  331. package/docs/adrs/schema/README.md +0 -9
  332. package/docs/adrs/smoke/0001-per-tier-smoke-scripts.md +0 -99
  333. package/docs/adrs/smoke/README.md +0 -9
  334. package/docs/adrs/telegraph/0001-default-off-until-bench.md +0 -93
  335. package/docs/adrs/telegraph/README.md +0 -9
  336. package/docs/announcements/2026-05-non-dev-launch.md +0 -79
  337. package/docs/announcements/2026-07-honest-cost-sweep-launch.md +0 -84
  338. package/docs/anti-reskin-gate.md +0 -60
  339. package/docs/architecture/augment-projection.md +0 -70
  340. package/docs/architecture/claude-bundle.md +0 -77
  341. package/docs/architecture/current-onboard-baseline.md +0 -126
  342. package/docs/architecture/current-safety-behavior.md +0 -137
  343. package/docs/architecture/multi-tool-projection.md +0 -125
  344. package/docs/architecture/setup-vs-settings-shared-surface.md +0 -114
  345. package/docs/architecture/source-projection.md +0 -85
  346. package/docs/architecture.md +0 -390
  347. package/docs/archive/CHANGELOG-6.0.0-overview.md +0 -953
  348. package/docs/archive/CHANGELOG-7.0.0.md +0 -419
  349. package/docs/archive/CHANGELOG-pre-2.11.0.md +0 -141
  350. package/docs/archive/CHANGELOG-pre-2.15.0.md +0 -244
  351. package/docs/archive/CHANGELOG-pre-2.16.0.md +0 -48
  352. package/docs/archive/CHANGELOG-pre-2.17.0.md +0 -63
  353. package/docs/archive/CHANGELOG-pre-2.2.0.md +0 -2138
  354. package/docs/archive/CHANGELOG-pre-2.20.0.md +0 -159
  355. package/docs/archive/CHANGELOG-pre-2.25.0.md +0 -191
  356. package/docs/archive/CHANGELOG-pre-2.7.0.md +0 -185
  357. package/docs/archive/CHANGELOG-pre-3.0.0.md +0 -130
  358. package/docs/archive/CHANGELOG-pre-3.1.0.md +0 -167
  359. package/docs/archive/CHANGELOG-pre-3.2.0.md +0 -268
  360. package/docs/archive/CHANGELOG-pre-4.0.0.md +0 -80
  361. package/docs/archive/CHANGELOG-pre-4.5.0.md +0 -289
  362. package/docs/archive/CHANGELOG-pre-5.4.0.md +0 -260
  363. package/docs/archive/CHANGELOG-pre-5.9.0.md +0 -270
  364. package/docs/archive/CHANGELOG-pre-6.0.0.md +0 -473
  365. package/docs/archive/CHANGELOG-pre-7.0.0.md +0 -126
  366. package/docs/archive/CHANGELOG-pre-8.0.0.md +0 -301
  367. package/docs/archive/CHANGELOG-pre-8.1.0.md +0 -316
  368. package/docs/archive/CHANGELOG-pre-8.12.0.md +0 -304
  369. package/docs/archive/CHANGELOG-pre-8.9.0.md +0 -306
  370. package/docs/archive/CHANGELOG-pre-9.2.0.md +0 -276
  371. package/docs/artefact-census.md +0 -71
  372. package/docs/benchmark.md +0 -785
  373. package/docs/benchmark.pinned.yml +0 -31
  374. package/docs/benchmarks.md +0 -85
  375. package/docs/capability-matrix.md +0 -33
  376. package/docs/case-studies/_template.md +0 -60
  377. package/docs/case-studies/frontend-design-positioning.md +0 -86
  378. package/docs/catalog.md +0 -726
  379. package/docs/command-flows.md +0 -272
  380. package/docs/command-naming-audit.md +0 -60
  381. package/docs/comparison.yaml +0 -87
  382. package/docs/contracts/CHANGELOG-conventions.md +0 -149
  383. package/docs/contracts/STABILITY.md +0 -188
  384. package/docs/contracts/adoption-signal-floor.md +0 -127
  385. package/docs/contracts/adr-architectural-consensus-mechanism.md +0 -68
  386. package/docs/contracts/adr-chat-history-split.md +0 -140
  387. package/docs/contracts/adr-command-suggestion.md +0 -144
  388. package/docs/contracts/adr-forecast-construction-shape.md +0 -90
  389. package/docs/contracts/adr-gtm-context-spine.md +0 -116
  390. package/docs/contracts/adr-implement-ticket-runtime.md +0 -121
  391. package/docs/contracts/adr-install-user-type-axis.md +0 -107
  392. package/docs/contracts/adr-layout.md +0 -107
  393. package/docs/contracts/adr-level-6-productization.md +0 -145
  394. package/docs/contracts/adr-mcp-runtime.md +0 -128
  395. package/docs/contracts/adr-product-ui-track.md +0 -381
  396. package/docs/contracts/adr-prompt-driven-execution.md +0 -186
  397. package/docs/contracts/adr-settings-sync-engine.md +0 -128
  398. package/docs/contracts/adr-user-types-axis.md +0 -127
  399. package/docs/contracts/adr-wing4-context-spine.md +0 -126
  400. package/docs/contracts/agent-user-schema.md +0 -170
  401. package/docs/contracts/agents-layout.md +0 -148
  402. package/docs/contracts/agents-md-tech-stack.md +0 -75
  403. package/docs/contracts/ai-council-config.md +0 -829
  404. package/docs/contracts/ai-team-config.md +0 -224
  405. package/docs/contracts/analysis-memory-loop.md +0 -149
  406. package/docs/contracts/at-rest-encryption.md +0 -191
  407. package/docs/contracts/audit-log-v1.md +0 -150
  408. package/docs/contracts/auto-orchestration-v1.md +0 -70
  409. package/docs/contracts/benchmark-ab-contract.md +0 -106
  410. package/docs/contracts/benchmark-corpus-spec.md +0 -125
  411. package/docs/contracts/benchmark-report-schema.md +0 -113
  412. package/docs/contracts/branch-protection-policy.md +0 -139
  413. package/docs/contracts/brand-token-consumption.md +0 -74
  414. package/docs/contracts/capability-boundary.md +0 -69
  415. package/docs/contracts/capability-packs.md +0 -217
  416. package/docs/contracts/ci-cost-budget.md +0 -111
  417. package/docs/contracts/ci-green-floor.md +0 -141
  418. package/docs/contracts/command-category-governance.md +0 -84
  419. package/docs/contracts/command-clusters.md +0 -399
  420. package/docs/contracts/command-surface-tiers.md +0 -176
  421. package/docs/contracts/command-taxonomy.md +0 -137
  422. package/docs/contracts/condensation-default-kill-criterion.md +0 -116
  423. package/docs/contracts/config-presets.md +0 -144
  424. package/docs/contracts/conformance.md +0 -84
  425. package/docs/contracts/consumer-bridge.md +0 -73
  426. package/docs/contracts/context-paths.md +0 -101
  427. package/docs/contracts/context-spine.md +0 -179
  428. package/docs/contracts/cost-dashboard.md +0 -143
  429. package/docs/contracts/cost-enforcement.md +0 -134
  430. package/docs/contracts/cost-profile-defaults.md +0 -110
  431. package/docs/contracts/cost-summary-schema.md +0 -107
  432. package/docs/contracts/creative-pack-boundary.md +0 -63
  433. package/docs/contracts/cross-repo-retrieval.md +0 -64
  434. package/docs/contracts/cross-wing-handoff.md +0 -134
  435. package/docs/contracts/daily-workspace.md +0 -147
  436. package/docs/contracts/decision-engine-gates.md +0 -120
  437. package/docs/contracts/decision-trace-v1.md +0 -177
  438. package/docs/contracts/design-artifact-lifecycle.md +0 -93
  439. package/docs/contracts/design-artifact-verification.md +0 -153
  440. package/docs/contracts/discovery-manifest.md +0 -209
  441. package/docs/contracts/discovery-manifest.schema.json +0 -254
  442. package/docs/contracts/evidence-based-pruning.md +0 -102
  443. package/docs/contracts/explain-modes.md +0 -187
  444. package/docs/contracts/explain-trace.schema.json +0 -144
  445. package/docs/contracts/file-ownership-matrix.json +0 -13941
  446. package/docs/contracts/file-ownership-matrix.md +0 -135
  447. package/docs/contracts/frontmatter-contract.md +0 -140
  448. package/docs/contracts/ghostwriter-schema.md +0 -337
  449. package/docs/contracts/governance-enforcement-projection.md +0 -159
  450. package/docs/contracts/gui-wizard.md +0 -350
  451. package/docs/contracts/harness-expectations.md +0 -128
  452. package/docs/contracts/hook-architecture-v1.md +0 -325
  453. package/docs/contracts/host-agent-protocol.md +0 -110
  454. package/docs/contracts/implement-ticket-flow.md +0 -625
  455. package/docs/contracts/init-telemetry.md +0 -132
  456. package/docs/contracts/injected-block-authenticity-model.md +0 -66
  457. package/docs/contracts/install-layout.md +0 -249
  458. package/docs/contracts/install-scopes.md +0 -82
  459. package/docs/contracts/installed-tools-lockfile.md +0 -144
  460. package/docs/contracts/installer-agent-mode.md +0 -137
  461. package/docs/contracts/iron-law-overrides.txt +0 -26
  462. package/docs/contracts/kernel-membership.md +0 -339
  463. package/docs/contracts/linear-ai-rules-inclusion.md +0 -143
  464. package/docs/contracts/linear-ai-three-layers.md +0 -130
  465. package/docs/contracts/linter-structural-model.md +0 -181
  466. package/docs/contracts/load-context-budget-model.md +0 -259
  467. package/docs/contracts/load-context-schema.md +0 -220
  468. package/docs/contracts/local-analytics.md +0 -160
  469. package/docs/contracts/local-knowledge-ingestion.md +0 -96
  470. package/docs/contracts/local-server-api.md +0 -134
  471. package/docs/contracts/local-server-ports.md +0 -53
  472. package/docs/contracts/low-impact-corpus-format.md +0 -95
  473. package/docs/contracts/mcp-beta-criteria.md +0 -130
  474. package/docs/contracts/mcp-cloud-scope.md +0 -355
  475. package/docs/contracts/mcp-discovery-phase-notice.md +0 -60
  476. package/docs/contracts/mcp-phase-1-scope.md +0 -272
  477. package/docs/contracts/mcp-registry-manifest.schema.json +0 -129
  478. package/docs/contracts/mcp-tool-inventory.md +0 -64
  479. package/docs/contracts/mcp-tool-stub-envelope.md +0 -78
  480. package/docs/contracts/measurement-baseline.md +0 -103
  481. package/docs/contracts/memory-visibility-v1.md +0 -160
  482. package/docs/contracts/mental-models.md +0 -336
  483. package/docs/contracts/migrate-command.md +0 -233
  484. package/docs/contracts/multi-tool-projection-fidelity.md +0 -134
  485. package/docs/contracts/namespace.md +0 -125
  486. package/docs/contracts/no-runtime-boundary.md +0 -61
  487. package/docs/contracts/one-off-script-lifecycle.md +0 -110
  488. package/docs/contracts/orchestration-dsl-v1.md +0 -153
  489. package/docs/contracts/package-self-orientation.md +0 -163
  490. package/docs/contracts/pilot/agent-authority.md +0 -24
  491. package/docs/contracts/pilot/direct-answers.md +0 -70
  492. package/docs/contracts/pilot/language-and-tone.md +0 -63
  493. package/docs/contracts/plain-language-surface.md +0 -117
  494. package/docs/contracts/prelaunch-diagnostics.md +0 -151
  495. package/docs/contracts/profile-system.md +0 -167
  496. package/docs/contracts/reasoning-discipline-protocol.md +0 -83
  497. package/docs/contracts/release-pr-gating.md +0 -151
  498. package/docs/contracts/release-sizing.md +0 -107
  499. package/docs/contracts/release-trunk-sync.md +0 -105
  500. package/docs/contracts/review-lens-schema.md +0 -64
  501. package/docs/contracts/roadmap-complexity-standard.md +0 -138
  502. package/docs/contracts/role-experience.md +0 -125
  503. package/docs/contracts/router-blending.md +0 -71
  504. package/docs/contracts/rule-classification.md +0 -171
  505. package/docs/contracts/rule-interactions.md +0 -132
  506. package/docs/contracts/rule-interactions.yml +0 -260
  507. package/docs/contracts/rule-priority-hierarchy.md +0 -88
  508. package/docs/contracts/rule-router.md +0 -287
  509. package/docs/contracts/safety-model.md +0 -129
  510. package/docs/contracts/session-profile-overlay.md +0 -157
  511. package/docs/contracts/settings-api.md +0 -264
  512. package/docs/contracts/settings-gui-agent-mode.schema.json +0 -128
  513. package/docs/contracts/settings-sync-yaml-subset.md +0 -139
  514. package/docs/contracts/skill-bundled-assets.md +0 -62
  515. package/docs/contracts/skill-discovery.md +0 -80
  516. package/docs/contracts/skill-distribution-channels.md +0 -66
  517. package/docs/contracts/skill-domains.md +0 -144
  518. package/docs/contracts/skill-dry-run.md +0 -47
  519. package/docs/contracts/skill-family-map.yml +0 -915
  520. package/docs/contracts/smoke-contracts.md +0 -144
  521. package/docs/contracts/subagent-boundary.md +0 -74
  522. package/docs/contracts/surface-agent-contracts.md +0 -153
  523. package/docs/contracts/surface-matrix.md +0 -108
  524. package/docs/contracts/surface-tiers.md +0 -81
  525. package/docs/contracts/telegraph-telemetry.md +0 -83
  526. package/docs/contracts/ticket-bundle-format.md +0 -233
  527. package/docs/contracts/tier-3-contrib-plugin.md +0 -137
  528. package/docs/contracts/trust-and-safety.md +0 -144
  529. package/docs/contracts/ui-stack-extension.md +0 -237
  530. package/docs/contracts/ui-track-flow.md +0 -329
  531. package/docs/contracts/universal-skills.md +0 -91
  532. package/docs/contracts/user-type-schema.md +0 -146
  533. package/docs/contracts/value-dashboard-spec.md +0 -378
  534. package/docs/contracts/value-report-schema.md +0 -168
  535. package/docs/contracts/workflow-packs.md +0 -121
  536. package/docs/contracts/workspace-boundary.md +0 -84
  537. package/docs/contracts/workspace-documents.md +0 -144
  538. package/docs/contracts/write-engine.md +0 -182
  539. package/docs/cookbook.md +0 -152
  540. package/docs/customization.md +0 -696
  541. package/docs/decisions/ADR-001-kernel-swap-deferred.md +0 -109
  542. package/docs/decisions/ADR-002-kernel-bucket-overrides.md +0 -135
  543. package/docs/decisions/ADR-003-flat-cluster-subs-and-colon-syntax.md +0 -137
  544. package/docs/decisions/ADR-004-rule-governance-pruning.md +0 -240
  545. package/docs/decisions/ADR-005-subagent-worktrees.md +0 -120
  546. package/docs/decisions/ADR-006-skill-tools-python-pilot.md +0 -114
  547. package/docs/decisions/ADR-007-agent-discovery-scopes.md +0 -371
  548. package/docs/decisions/ADR-008-installed-tools-manifest.md +0 -160
  549. package/docs/decisions/ADR-009-event4u-namespace.md +0 -188
  550. package/docs/decisions/ADR-010-profile-pack-preset-boundary.md +0 -168
  551. package/docs/decisions/ADR-011-domain-pack-readiness.md +0 -213
  552. package/docs/decisions/ADR-012-typescript-cli-shell.md +0 -162
  553. package/docs/decisions/ADR-013-discovery-frontmatter-contract.md +0 -342
  554. package/docs/decisions/ADR-014-gui-framework-choice.md +0 -136
  555. package/docs/decisions/ADR-015-discovery-manifest-contract.md +0 -146
  556. package/docs/decisions/ADR-016-installer-architecture.md +0 -191
  557. package/docs/decisions/ADR-017-monorepo-physical-layout.md +0 -261
  558. package/docs/decisions/ADR-018-trust-and-safety-layer.md +0 -159
  559. package/docs/decisions/ADR-019-router-json-dist-location.md +0 -124
  560. package/docs/decisions/ADR-020-global-only-consumer-scope.md +0 -213
  561. package/docs/decisions/ADR-021-deployment-shape.md +0 -153
  562. package/docs/decisions/ADR-022-daily-workspace-decomposition.md +0 -140
  563. package/docs/decisions/ADR-023-host-agent-protocol.md +0 -129
  564. package/docs/decisions/ADR-024-workspace-v0-feature-floor.md +0 -126
  565. package/docs/decisions/ADR-025-workspace-chrome.md +0 -119
  566. package/docs/decisions/ADR-026-explain-mode-translation.md +0 -117
  567. package/docs/decisions/ADR-027-changelog-machine-vs-manual.md +0 -129
  568. package/docs/decisions/ADR-028-root-layout.md +0 -147
  569. package/docs/decisions/ADR-029-multi-workspace-deferred.md +0 -122
  570. package/docs/decisions/ADR-030-claude-code-command-projection.md +0 -147
  571. package/docs/decisions/ADR-031-validation-severity-tiers-and-projection-roundtrip.md +0 -97
  572. package/docs/decisions/ADR-032-linked-projects-scope.md +0 -122
  573. package/docs/decisions/ADR-033-distribution-identity-npm-primary.md +0 -81
  574. package/docs/decisions/ADR-034-per-skill-model-recommendation-transport.md +0 -63
  575. package/docs/decisions/ADR-035-model-capability-tiers.md +0 -104
  576. package/docs/decisions/ADR-036-global-install-browser-wizard-handoff.md +0 -106
  577. package/docs/decisions/ADR-037-cost-profile-untangle.md +0 -117
  578. package/docs/decisions/ADR-038-canonical-settings-path.md +0 -96
  579. package/docs/decisions/ADR-039-claude-skills-untracked.md +0 -139
  580. package/docs/decisions/ADR-040-execution-model-projection-time-filtering.md +0 -244
  581. package/docs/decisions/ADR-041-controlled-command-verbs.md +0 -133
  582. package/docs/decisions/ADR-042-runtime-resolver-decision-gate.md +0 -113
  583. package/docs/decisions/ADR-043-monorepo-collapse-to-src-domains.md +0 -128
  584. package/docs/decisions/ADR-044-command-naming-scheme-hyphenated.md +0 -250
  585. package/docs/decisions/ADR-045-src-source-layout-and-profiles-as-views.md +0 -111
  586. package/docs/decisions/ADR-046-thin-command-principle.md +0 -93
  587. package/docs/decisions/ADR-047-framework-neutral-stack-adaptive-commands.md +0 -94
  588. package/docs/decisions/ADR-048-command-justification-rule.md +0 -106
  589. package/docs/decisions/ADR-049-configuration-trust-boundary.md +0 -132
  590. package/docs/decisions/ADR-050-workspace-vs-package-root-boundary.md +0 -121
  591. package/docs/decisions/ADR-051-uncondensed-source-container-relocation.md +0 -114
  592. package/docs/decisions/ADR-052-packages-removal-and-pack-home-migration.md +0 -86
  593. package/docs/decisions/ADR-053-agents-namespace-dual-role-resolution.md +0 -132
  594. package/docs/decisions/ADR-054-rule-adherence-decay-triggered-restate.md +0 -143
  595. package/docs/decisions/ADR-055-flow-layer-data-model.md +0 -235
  596. package/docs/decisions/ADR-056-unvalidated-video-adapters-disposition.md +0 -124
  597. package/docs/decisions/ADR-057-consolidation-evidence-gate-outcomes.md +0 -135
  598. package/docs/decisions/ADR-058-condensed-output-relocation-to-dist.md +0 -94
  599. package/docs/decisions/ADR-059-render-resume-filesystem-as-state.md +0 -161
  600. package/docs/decisions/ADR-060-comfyui-sandbox-model.md +0 -154
  601. package/docs/decisions/ADR-061-corpus-grounding-layer.md +0 -230
  602. package/docs/decisions/ADR-062-encrypt-at-rest-store-architecture.md +0 -121
  603. package/docs/decisions/ADR-063-append-jsonl-encryption-deferred.md +0 -83
  604. package/docs/decisions/ADR-064-append-jsonl-per-record-encryption.md +0 -113
  605. package/docs/decisions/ADR-065-tier3-inbox-handoff-v0.md +0 -86
  606. package/docs/decisions/ADR-066-skill-body-prerendering.md +0 -93
  607. package/docs/decisions/ADR-067-glama-registry-listing.md +0 -259
  608. package/docs/decisions/ADR-068-host-tier-detection.md +0 -90
  609. package/docs/decisions/ADR-069-prompt-renderer.md +0 -97
  610. package/docs/decisions/ADR-070-tier1-drive-loop.md +0 -94
  611. package/docs/decisions/ADR-071-launch-drive-integration.md +0 -95
  612. package/docs/decisions/ADR-072-codex-gemini-drive-configs.md +0 -90
  613. package/docs/decisions/ADR-073-drive-health-kill-switch.md +0 -81
  614. package/docs/decisions/ADR-074-drive-kill-switch-auto-recovery.md +0 -84
  615. package/docs/decisions/ADR-075-workspace-gui-drive.md +0 -83
  616. package/docs/decisions/ADR-076-workspace-multi-turn.md +0 -92
  617. package/docs/decisions/ADR-077-workspace-followup-gui.md +0 -70
  618. package/docs/decisions/ADR-078-drive-health-panel.md +0 -70
  619. package/docs/decisions/ADR-079-workspace-host-picker.md +0 -81
  620. package/docs/decisions/ADR-080-host-session-expired-410.md +0 -92
  621. package/docs/decisions/ADR-081-drive-health-reset-and-410-affordance.md +0 -71
  622. package/docs/decisions/ADR-082-410-one-click-relaunch.md +0 -58
  623. package/docs/decisions/ADR-083-session-thread-and-arbitrary-continuation.md +0 -85
  624. package/docs/decisions/ADR-084-drive-health-refresh-on-drive.md +0 -52
  625. package/docs/decisions/ADR-085-mcp-stdio-end-user-distribution-shape.md +0 -158
  626. package/docs/decisions/ADR-086-read-only-cross-agent-mcp-discovery-helper.md +0 -171
  627. package/docs/decisions/ADR-087-installer-e2e-test-strategy.md +0 -111
  628. package/docs/decisions/ADR-088-no-external-runtime-federation.md +0 -144
  629. package/docs/decisions/ADR-089-lean-local-plugin-install.md +0 -111
  630. package/docs/decisions/ADR-090-visibility-command-frontmatter-field.md +0 -95
  631. package/docs/decisions/ADR-091-split-meta-capability-packs.md +0 -113
  632. package/docs/decisions/ADR-092-defer-command-tier-alias-removal.md +0 -117
  633. package/docs/decisions/ADR-093-ai-council-config-user-global.md +0 -117
  634. package/docs/decisions/ADR-094-agent-memory-layer-removal.md +0 -94
  635. package/docs/decisions/ADR-095-workspace-boundary-contract.md +0 -108
  636. package/docs/decisions/ADR-096-analysis-workbench.md +0 -110
  637. package/docs/decisions/ADR-097-mission-recipe-privilege-boundary.md +0 -121
  638. package/docs/decisions/ADR-098-evidence-first-structure-discovery.md +0 -154
  639. package/docs/decisions/ADR-099-file-first-pattern-library.md +0 -87
  640. package/docs/decisions/ADR-100-global-knowledge-card-sharing.md +0 -140
  641. package/docs/decisions/ADR-101-ticket-bundle-emission.md +0 -109
  642. package/docs/decisions/ADR-102-ticket-handoff-paste-and-mcp.md +0 -72
  643. package/docs/decisions/ADR-103-global-knowledge-default-off-until-measured.md +0 -92
  644. package/docs/decisions/ADR-104-ai-council-config-global-only.md +0 -119
  645. package/docs/decisions/ADR-105-automatic-subagent-orchestration.md +0 -108
  646. package/docs/decisions/ADR-106-recursive-verification-benchmark-gate.md +0 -126
  647. package/docs/decisions/ADR-107-legal-domain-pack-adoption.md +0 -70
  648. package/docs/decisions/ADR-108-open-source-forever-no-commercial-tier.md +0 -46
  649. package/docs/decisions/ADR-109-subagent-v1-contract.md +0 -248
  650. package/docs/decisions/ADR-110-discipline-profile-resolution-locus.md +0 -112
  651. package/docs/decisions/ADR-111-canonical-glama-listing.md +0 -97
  652. package/docs/decisions/ADR-112-stdio-lite-stays-read-only.md +0 -92
  653. package/docs/decisions/ADR-113-ci-native-release-label-trigger.md +0 -209
  654. package/docs/decisions/ADR-114-commit-policy-iron-law-override.md +0 -85
  655. package/docs/decisions/ADR-115-command-cluster-consolidation-phase-4.md +0 -91
  656. package/docs/decisions/ADR-116-memory-tripwire-activation-path.md +0 -144
  657. package/docs/decisions/ADR-117-subagents-auto-default-on.md +0 -89
  658. package/docs/decisions/ADR-118-loop-engineering-boundaries.md +0 -162
  659. package/docs/decisions/ADR-119-global-knowledge-default-on.md +0 -104
  660. package/docs/decisions/ADR-120-council-chairman-mode.md +0 -70
  661. package/docs/decisions/ADR-121-knowledge-sensitivity-classes.md +0 -90
  662. package/docs/decisions/ADR-122-adversarial-verification-council.md +0 -166
  663. package/docs/decisions/ADR-123-runtime-security-scope-and-spawn-hardening.md +0 -142
  664. package/docs/decisions/ADR-124-embedded-engine-doctrine.md +0 -255
  665. package/docs/decisions/ADR-125-doc-screenshot-anonymization.md +0 -131
  666. package/docs/decisions/ADR-126-internet-reach-operator-tooling.md +0 -254
  667. package/docs/decisions/ADR-127-enforcement-claims-must-resolve.md +0 -150
  668. package/docs/decisions/ADR-128-executable-evidence-and-measured-escalation.md +0 -201
  669. package/docs/decisions/ADR-200-python-to-typescript-migration.md +0 -203
  670. package/docs/decisions/ADR-rule-kernel-and-router.md +0 -133
  671. package/docs/decisions/INDEX.md +0 -157
  672. package/docs/decisions/engine-reclassification-2026-07.md +0 -104
  673. package/docs/deploy/connector-setup.md +0 -129
  674. package/docs/deploy/env-vars.md +0 -70
  675. package/docs/deploy/policy-cookbook.md +0 -130
  676. package/docs/deploy/quickstart.md +0 -112
  677. package/docs/deploy/small-team-recipe.md +0 -148
  678. package/docs/deploy/team-deployment-posture.md +0 -111
  679. package/docs/design/adversarial-council-eval.md +0 -106
  680. package/docs/design/council-vs-solo-baseline.md +0 -92
  681. package/docs/design/cross-model-parity-eval.md +0 -82
  682. package/docs/design/length-neutral-judge-rerun.md +0 -92
  683. package/docs/design/utilization-window-criteria.md +0 -51
  684. package/docs/development.md +0 -230
  685. package/docs/distribution/awesome-list-submission.md +0 -46
  686. package/docs/distribution/consumer-matrix.md +0 -96
  687. package/docs/distribution/launch-story-draft.md +0 -58
  688. package/docs/distribution/mcp-submission-checklist.md +0 -95
  689. package/docs/distribution/public-install-smoke.md +0 -68
  690. package/docs/distribution/registries.md +0 -126
  691. package/docs/distribution/registry-submissions.md +0 -85
  692. package/docs/distribution/telemetry-privacy.md +0 -128
  693. package/docs/distribution/telemetry-schema.md +0 -174
  694. package/docs/distribution/topics-equivalents-decay-policy.md +0 -51
  695. package/docs/end-to-end-walkthroughs.md +0 -165
  696. package/docs/enforcement-by-host.md +0 -51
  697. package/docs/examples/agent-user.example.md +0 -22
  698. package/docs/experiences/agency.md +0 -49
  699. package/docs/experiences/content_creator.md +0 -49
  700. package/docs/experiences/developer.md +0 -49
  701. package/docs/experiences/finance.md +0 -50
  702. package/docs/experiences/founder.md +0 -49
  703. package/docs/experiences/ops.md +0 -49
  704. package/docs/featured-commands.md +0 -27
  705. package/docs/featured-skills.md +0 -95
  706. package/docs/flows.md +0 -67
  707. package/docs/getting-started-by-role.md +0 -190
  708. package/docs/getting-started-laravel.md +0 -72
  709. package/docs/getting-started-local-stdio.md +0 -77
  710. package/docs/getting-started.md +0 -254
  711. package/docs/github-topics.md +0 -93
  712. package/docs/governance-advantage.md +0 -72
  713. package/docs/governance.md +0 -96
  714. package/docs/guides/cross-repo-linked-projects.md +0 -93
  715. package/docs/guides/cross-repo-retrieval.md +0 -61
  716. package/docs/guides/frontend-design-corpus-refresh.md +0 -83
  717. package/docs/guides/gated-platform-reads.md +0 -221
  718. package/docs/guides/local-analytics.md +0 -125
  719. package/docs/guides/local-knowledge.md +0 -127
  720. package/docs/guides/skill-discovery.md +0 -71
  721. package/docs/guides/skill-preview.md +0 -71
  722. package/docs/hook-payload-capture.md +0 -221
  723. package/docs/install-friction-report.md +0 -66
  724. package/docs/installation.md +0 -959
  725. package/docs/maintainers/branch-protection.md +0 -105
  726. package/docs/maintainers/dev-mode.md +0 -106
  727. package/docs/maintainers/optional-media-deps.md +0 -50
  728. package/docs/maintainers/system-map.md +0 -85
  729. package/docs/mcp-registries.md +0 -94
  730. package/docs/mcp-server.md +0 -175
  731. package/docs/mcp.md +0 -147
  732. package/docs/media/proof-demo.cast +0 -14
  733. package/docs/media/proof-demo.gif +0 -0
  734. package/docs/migration/consumer-template-consumption-model.md +0 -145
  735. package/docs/migration/divergences/README.md +0 -55
  736. package/docs/migration/divergences/_template.md +0 -50
  737. package/docs/migration/divergences/bench-stats-float-precision.md +0 -72
  738. package/docs/migration/divergences/mcp-telemetry-node-sqlite.md +0 -61
  739. package/docs/migration/divergences/pack-mcp-content-gzip-body.md +0 -53
  740. package/docs/migration/divergences/src-scripts-build_cloud_bundle.md +0 -63
  741. package/docs/migration/divergences/src-scripts-check_memory.md +0 -91
  742. package/docs/migration/divergences/src-scripts-inventory_abstraction_budget.md +0 -65
  743. package/docs/migration/divergences/src-scripts-lint_marketplace.md +0 -57
  744. package/docs/migration/divergences/src-scripts-lint_mcp_registry_manifest.md +0 -70
  745. package/docs/migration/divergences/src-scripts-spotcheck_thin_root.md +0 -60
  746. package/docs/migration/divergences/src-scripts-validate_agent_settings.md +0 -58
  747. package/docs/migration/node-floor.md +0 -86
  748. package/docs/migration/v1-to-v2.md +0 -156
  749. package/docs/migration/yaml-roundtrip-spike.md +0 -163
  750. package/docs/migrations/commands-1.15.0.md +0 -117
  751. package/docs/parity/bench-external.json +0 -58
  752. package/docs/parity/bench.json +0 -41
  753. package/docs/parity/command-frontmatter.md +0 -60
  754. package/docs/parity/external-runtime.md +0 -46
  755. package/docs/personas.md +0 -178
  756. package/docs/positioning-evidence.md +0 -86
  757. package/docs/profiles.md +0 -108
  758. package/docs/proof.md +0 -252
  759. package/docs/quality.md +0 -98
  760. package/docs/readme-split-plan.md +0 -102
  761. package/docs/recruits/_template.md +0 -81
  762. package/docs/release-runbook.md +0 -141
  763. package/docs/role-experiences.md +0 -19
  764. package/docs/safety.md +0 -30
  765. package/docs/second-brain-scope.md +0 -116
  766. package/docs/self-review-gate.md +0 -65
  767. package/docs/setup/enterprise-and-offline.md +0 -201
  768. package/docs/setup/mcp-client-config.md +0 -358
  769. package/docs/setup/mcp-cloud-endpoints.md +0 -116
  770. package/docs/setup/mcp-cloud-registry-listing.md +0 -99
  771. package/docs/setup/mcp-cloud-setup.md +0 -183
  772. package/docs/setup/mcp-r2-bootstrap.md +0 -82
  773. package/docs/setup/mcp-server-docker.md +0 -101
  774. package/docs/setup/per-ide/aider.md +0 -48
  775. package/docs/setup/per-ide/antigravity.md +0 -68
  776. package/docs/setup/per-ide/augment.md +0 -89
  777. package/docs/setup/per-ide/claude-code.md +0 -97
  778. package/docs/setup/per-ide/claude-desktop.md +0 -207
  779. package/docs/setup/per-ide/cline.md +0 -43
  780. package/docs/setup/per-ide/codebuddy.md +0 -63
  781. package/docs/setup/per-ide/codex.md +0 -46
  782. package/docs/setup/per-ide/continue.md +0 -68
  783. package/docs/setup/per-ide/copilot.md +0 -80
  784. package/docs/setup/per-ide/cursor.md +0 -125
  785. package/docs/setup/per-ide/droid.md +0 -65
  786. package/docs/setup/per-ide/gemini-cli.md +0 -45
  787. package/docs/setup/per-ide/jetbrains.md +0 -76
  788. package/docs/setup/per-ide/kilocode.md +0 -66
  789. package/docs/setup/per-ide/kiro.md +0 -72
  790. package/docs/setup/per-ide/opencode.md +0 -62
  791. package/docs/setup/per-ide/qoder.md +0 -63
  792. package/docs/setup/per-ide/roocode.md +0 -68
  793. package/docs/setup/per-ide/trae.md +0 -63
  794. package/docs/setup/per-ide/warp.md +0 -63
  795. package/docs/setup/per-ide/windsurf.md +0 -109
  796. package/docs/setup/per-ide/zed.md +0 -73
  797. package/docs/showcase.md +0 -209
  798. package/docs/skill-duplication-findings.md +0 -91
  799. package/docs/skills-catalog.md +0 -265
  800. package/docs/skills-taxonomy.md +0 -90
  801. package/docs/spawn-site-policy.md +0 -72
  802. package/docs/succession.md +0 -80
  803. package/docs/threat-model.md +0 -30
  804. package/docs/troubleshooting.md +0 -155
  805. package/docs/ui-track-mental-model.md +0 -121
  806. package/docs/us-vs-the-category.md +0 -38
  807. package/docs/value.md +0 -86
  808. package/docs/walkthroughs/assets/workspace-role-grid.png +0 -0
  809. package/docs/walkthroughs/assets/workspace-session-started.png +0 -0
  810. package/docs/walkthroughs/assets/workspace-task-picker.png +0 -0
  811. package/docs/walkthroughs/daily-workspace-a11y.md +0 -87
  812. package/docs/walkthroughs/daily-workspace.md +0 -127
  813. package/docs/wedge/production-validator/README.md +0 -81
  814. package/docs/wedge/production-validator/first-run-check.sh +0 -42
  815. package/docs/wedge/production-validator/production-validator.md +0 -83
  816. package/docs/wizard.md +0 -173
  817. package/src/scripts/postinstall_gui.ts +0 -129
@@ -1,287 +0,0 @@
1
- ---
2
- stability: beta
3
- keep-beta-until: 2026-08-12
4
- ---
5
-
6
-
7
- # Rule Router — Frontmatter Schema and Compiled Output
8
-
9
- Status: locked for Phase 3 of `road-to-kernel-and-router.md`.
10
- Owners: this contract; `scripts/compile_router.py` (Phase 3.2);
11
- `scripts/skill_linter.py` extension (Phase 3.3).
12
-
13
- ## Why a router
14
-
15
- The kernel (9 rules, ≤ 26k chars per ADR-002) loads on every session.
16
- Every other rule must declare **when it activates** and **which
17
- artifacts (skills / guidelines) carry the body**. The router compiles
18
- those declarations into a deterministic lookup table that host agents
19
- read once at session start.
20
-
21
- Kernel rules never appear in the router — they are unconditional.
22
-
23
- ## Frontmatter schema
24
-
25
- All keys live in the rule's existing YAML frontmatter. Existing fields
26
- (`type`, `tier`, `description`, `alwaysApply`, `source`, `load_context`)
27
- are preserved. New / formalized fields:
28
-
29
- | Key | Required | Values | Purpose |
30
- |---|---|---|---|
31
- | `type` | yes | `always` \| `auto` | Existing. Kernel = `always`; everything else = `auto`. |
32
- | `tier` | yes | `kernel` \| `tier-1` \| `tier-2` | New names. Kernel = always-loaded; tier-1 / tier-2 = trigger-routed on demand, in every discipline profile (ADR-040 / ADR-110). |
33
- | `triggers` | yes for non-kernel | list of objects | When the rule activates. **Forbidden** on kernel rules. |
34
- | `routes_to` | yes for non-kernel | list of strings | Skills / guidelines whose body fulfils the rule. **Forbidden** on kernel rules. |
35
- | `profile` | no | `minimal` \| `essential` \| `full` | Override the tier-derived default profile. Rare; currently unused by any shipped rule. |
36
- | `triggered_by` | back-ref, on routed artifact | list of strings | Skill / guideline frontmatter declares which rule(s) route to it. Bidirectional check (P3.3). |
37
-
38
- ### `triggers:` shape
39
-
40
- Each item is an object with exactly one match key plus an optional
41
- `reason:` for the linter / docs. Match keys (any of):
42
-
43
- ```yaml
44
- triggers:
45
- - keyword: "commit" # case-insensitive substring of user prompt
46
- - phrase: "should I commit" # case-insensitive substring, multi-word
47
- - intent: "git-write" # named intent token (router-defined vocabulary)
48
- - file_pattern: "*.tf" # glob over edited / opened paths
49
- - path_prefix: "agents/" # directory prefix over edited / opened paths
50
- - command: "/commit" # literal slash-command invocation
51
- ```
52
-
53
- Multiple `triggers:` entries are OR-combined — any match activates the rule.
54
- Within one entry, only one match key is allowed. The router-defined
55
- intent vocabulary lives in `docs/contracts/router-intents.md` (Phase 3.2).
56
-
57
- ### `routes_to:` shape
58
-
59
- Plain string list. Each entry is `<kind>:<id>`:
60
-
61
- ```yaml
62
- routes_to:
63
- - skill:php-coder
64
- - guideline:agent-infra/asking-and-brevity-examples
65
- - command:onboard
66
- - contract:command-suggestion-flow
67
- ```
68
-
69
- `kind` is one of `skill`, `guideline`, `command`, `contract`. `id`
70
- resolves to the target file under:
71
-
72
- | kind | path |
73
- |---|---|
74
- | `skill` | `.agent-src.uncondensed/skills/<id>/SKILL.md` |
75
- | `guideline` | `docs/guidelines/<id>.md` |
76
- | `command` | `.agent-src.uncondensed/commands/<id>.md` |
77
- | `contract` | `docs/contracts/<id>.md` |
78
-
79
- Linter checks each target exists. `command` is for procedural rules
80
- that route to a slash-command's source file. `contract` is for rules
81
- whose body is fully covered by an existing architectural contract.
82
-
83
- ## Compiled output — `router.json`
84
-
85
- `src/scripts/compile_router.ts` reads every rule frontmatter and emits
86
- `dist/router.json` (tracked in git), used by host agents at session
87
- start. Deterministic key order, sorted lists, stable across runs.
88
-
89
- ```json
90
- {
91
- "schema_version": 2,
92
- "kernel": ["agent-authority", "ask-when-uncertain", "commit-policy",
93
- "direct-answers", "language-and-tone", "no-cheap-questions",
94
- "non-destructive-by-default", "scope-control",
95
- "verify-before-complete"],
96
- "tier_1": [{"id": "source-of-truth",
97
- "triggers": [{"path_prefix": "agents/"},
98
- {"path_prefix": "dist/agent-src/"}],
99
- "routes_to": ["skill:agent-docs-writing"],
100
- "workspaces": ["agent-config-maintainer"],
101
- "packs": ["meta"]}],
102
- "tier_2": [/* same shape as tier_1 */],
103
- "profiles": {
104
- "minimal": ["__kernel__"],
105
- "essential": ["__kernel__", "downstream-changes"],
106
- "full": ["__kernel__", "__tier_1__", "__tier_2__"]
107
- }
108
- }
109
- ```
110
-
111
- Generated alongside `marketplace.json` during `task generate-tools`.
112
-
113
- ### Schema v2 — installation-scoping fields (2026-07-07)
114
-
115
- Every **non-kernel** entry carries `workspaces:` and `packs:`, copied
116
- verbatim (sorted) from the rule's frontmatter. They let projection- and
117
- install-time tooling filter rule bodies AND thin-projection pointer lines
118
- by the installed workspace/pack set (`road-to-request-scoped-rule-load`
119
- Phase 1) — per ADR-040 the filtering happens at projection time; there is
120
- no runtime resolver.
121
-
122
- - **Additive only.** v1 readers ignore unknown keys; nothing else in the
123
- shape changed. Readers MUST NOT hard-fail on `schema_version: 2`.
124
- - **Kernel entries stay bare id strings.** The kernel is unconditional
125
- and workspace-independent by definition — it never carries scoping
126
- fields and is never filtered by installation.
127
- - **Source of the values:** `src/rules/*.md` frontmatter.
128
- `lint_artefact_frontmatter` (wired into `task ci`) enforces that every
129
- rule declares non-empty `workspaces:` + `packs:` lists whose ids exist
130
- in `src/config/discovery/{workspaces,packs}.yml` — unknown ids fail
131
- lint before they can reach the router.
132
-
133
- ## Host-native glob activation (Cursor / Windsurf)
134
-
135
- Since 2026-07-07 (`road-to-request-scoped-rule-load` Phase 2) the
136
- Cursor/Windsurf projectors derive `globs:` from the rule's path-shaped
137
- triggers: `file_pattern` maps verbatim, `path_prefix` maps as
138
- `<prefix>**`. Rules with ≥1 path-shaped trigger auto-attach host-natively
139
- (Cursor auto-attach / Windsurf `trigger: glob`) — deterministic, no
140
- model-compliance dependency. Keyword/phrase/intent-only rules keep
141
- description-based activation (Agent-Requested / `model_decision`).
142
-
143
- **No-double-fire invariant:** when thin projection lands on those hosts, a
144
- glob-attached rule must NOT also ship an eager inline body there — the
145
- host-native attach IS its conditional load. The thin projector treats
146
- glob-capable rules on glob-capable hosts as already-conditional; the
147
- pointer mechanism is for hosts without a native equivalent (Claude Code).
148
-
149
- ### Profiles — the always-honoured surface (ADR-110)
150
-
151
- Profiles name the **always-honoured** rule surface per discipline tier;
152
- entries without the `__` wrapper are individual rule ids. Trigger routing of
153
- tier-1/tier-2 stays active under **every** profile — trigger semantics are
154
- configuration-independent (ADR-040). The runtime knob is
155
- `discipline_profile: auto | off | essential | full` (`off` → `minimal`
156
- surface); resolution semantics (including the legacy `rule_loading_tier`
157
- mapping and the `auto` host-capability check against
158
- `src/config/host-capabilities.yml`) live in `resolve_discipline_profile()`
159
- in the work-engine settings lib.
160
-
161
- **`balanced` was retired 2026-07-07** (deleted, not renamed): the size cut
162
- (kernel + tier_1) measured a NULL discipline lift (p=0.81, n=24 —
163
- `docs/benchmark.md § Cost-factor sweep`) because it missed the lift-carrying
164
- `downstream-changes`. Its successor `essential` is cut by measured content
165
- (kernel + the lift-carrying rules; +0.458 lift at ~3.3x tokens, p=0.0135).
166
- Legacy `rule_loading_tier: balanced` values map to `essential`.
167
-
168
- ## Activation semantics
169
-
170
- The host agent reads `dist/router.json` once per session. Per turn:
171
-
172
- 1. Always evaluate kernel rules.
173
- 2. If `profile = minimal` → stop after kernel.
174
- 3. Otherwise, walk tier_1 (and tier_2 if `profile = full`); a rule
175
- activates when **any** of its `triggers:` matches the current
176
- prompt + open files + invoked command.
177
- 4. Active rules are loaded inline; their routed artifacts (`skill:`
178
- or `guideline:`) are surfaced to the agent for that turn.
179
-
180
- No runtime profile resolution — the profile is fixed at session
181
- start, the router lookup is keyword/phrase/path/intent matching only.
182
-
183
- ### Intent-trigger semantics — two gates, two purposes (reconciled 2026-07-07)
184
-
185
- Two tools consume `intent:` triggers with deliberately different semantics.
186
- This divergence is **justified and locked**, not drift
187
- (`road-to-token-proof-and-story` Phase 2):
188
-
189
- | Tool | Intent semantics | Purpose |
190
- |---|---|---|
191
- | `trigger_coverage.ts` + the golden-set fires-check | word-set inclusion (every alpha word >2 chars of the intent appears in the prompt) | **Falsifiability floor** — a deliberately generous mechanical proxy proving a rule CAN fire on a phrasing; gates coverage claims. |
192
- | `router_telemetry.ts` (replay / field evidence) | informational-only — never auto-matches | **Field estimation** — real hosts resolve intents by model judgment, which cannot be replayed deterministically; pretending the word-set proxy models host behaviour would fabricate activation counts. |
193
-
194
- Consequence: **replay UNDERCOUNTS intent-triggered rule loads.** Every
195
- replay-derived figure (field-token-evidence report, benchmark refresh,
196
- release story) MUST state the chosen semantics and carry this caveat. Rules
197
- relying on intent triggers alone have no mechanical signal at all — hence
198
- the intent-only backstop audit (Phase 0 of
199
- `road-to-request-scoped-rule-load`: every intent-only rule gained
200
- keyword/phrase backstops or a written disposition).
201
-
202
- ## Activation end-state — one runtime knob (token program, 2026-07-07)
203
-
204
- Locked by the token-program integration council
205
- (`agents/settings/contexts/token-program-integration-verdict.md`) so no
206
- track ships a competing setting:
207
-
208
- - **Runtime:** ONE knob — `discipline_profile: auto | off | essential |
209
- full` (shipped default `auto` = ON once its evidence gates pass; owned by
210
- `road-to-discipline-profile-tiering`). Thin projection, when un-deferred,
211
- folds under `essential` as an implementation detail; `lean_projection.mode`
212
- is then absorbed/retired. No new runtime toggles for this layer.
213
- - **Install-time (not a runtime setting):** consumer scoping via
214
- `projection.rule_workspaces` / `projection.rule_packs` — default flips
215
- `legacy-all` → scoped as a reviewed release decision after the
216
- misclassification audit (done 2026-07-07) + measured before/after.
217
- - **Host-native (no setting):** Cursor/Windsurf glob auto-attach (§ above)
218
- is always on — deterministic, no compliance risk.
219
-
220
- ## Kill-switch — thin-projection rollback (lean-initial-context Phase 2.3)
221
-
222
- Phase 3 of the lean-initial-context migration makes the per-tool projector
223
- emit the kernel full-bodied and every non-kernel rule as a one-line
224
- router-resolved pointer. That is the suite's biggest behavioural change, so
225
- it ships behind a **single documented flip** that restores today's
226
- full-eager projection:
227
-
228
- ```yaml
229
- # .agent-settings.yml
230
- lean_projection:
231
- # thin = kernel full-bodied + non-kernel rules as router pointers (Phase 3)
232
- # eager-all = every rule body inlined into every projection (today's behaviour)
233
- mode: eager-all # DEFAULT until Phase 3.1 ships + its benchmark gate is green
234
- ```
235
-
236
- Revert procedure (one flip, no code change): set `lean_projection.mode:
237
- eager-all`, run `task generate-tools` (regenerates `.claude/`, `.cursor/`,
238
- `.clinerules/`, `.windsurfrules`) + `task sync` (`dist/agent-src/`, `.augment/`).
239
- The thin projector (Phase 3.1) MUST honour this key; with it absent or
240
- `eager-all` the projector behaves exactly as today. Default stays
241
- `eager-all` so the migration is opt-in and reversible by one line.
242
-
243
- ### Staleness guard — `src → dist`
244
-
245
- A projection or router that drifts from source silently re-introduces the
246
- eager bytes (or a missing pointer target). Three CI gates enforce
247
- `src == dist`, all already wired into `task ci`:
248
-
249
- - `task check-router` (`compile_router.py --check`) — `dist/router.json`
250
- must equal a fresh compile from frontmatter `triggers:`/`routes_to:`.
251
- - `task check-artefact-checksums` — every artefact's committed checksum
252
- must match its current source bytes.
253
- - `task lint-projection-fidelity` — the per-tool projections must match
254
- what the projector would emit from source.
255
-
256
- The thin projector inherits all three: a thin projection whose recorded
257
- source hash ≠ current source fails CI before it can ship a stale pointer.
258
-
259
- ## Linter contract (Phase 3.3)
260
-
261
- `scripts/skill_linter.py` extension enforces:
262
-
263
- - Every kernel rule has **no** `triggers:` and **no** `routes_to:`.
264
- - Every non-kernel rule has ≥ 1 `triggers:` entry and ≥ 1 `routes_to:` entry.
265
- - Every `routes_to:` target exists on disk.
266
- - Every routed skill / guideline declares `triggered_by:` listing the rule(s)
267
- that route to it (bidirectional check; mirrors the existing back-ref
268
- pattern in `scripts/check_references.py`).
269
- - `tier` and `profile` are in the allowed value sets.
270
-
271
- ## Backward compatibility
272
-
273
- - The legacy `tier: "1" | "2" | "2a" | "3" | "mechanical-already"` values
274
- remain readable; the compiler maps them to `kernel` / `tier-1` / `tier-2`
275
- as locked in `kernel-membership.md` § 4 (status-quo bucket model).
276
- - Rules without `triggers:` keep firing under their current `description`-
277
- matching behaviour until P4.x migrations land — the linter only enforces
278
- presence; activation falls back to `description` for unmigrated rules.
279
- - The router is **additive** to the existing always/auto split; no
280
- existing rule changes behaviour until its frontmatter is migrated.
281
-
282
- ## Source-of-truth
283
-
284
- - This file: schema specification.
285
- - `kernel-membership.md` § 4: kernel locked count + SHAs.
286
- - `rule-classification.md`: per-rule tier + disposition pre-Phase-4.
287
- - `dist/router.json` (generated): runtime artifact, never hand-edited.
@@ -1,129 +0,0 @@
1
- ---
2
- stability: beta
3
- keep-beta-until: 2026-08-12
4
- ---
5
-
6
- # Universal safety model
7
-
8
- > **Status:** beta — first draft 2026-05-16 (Phase 2 Item 9 of
9
- > `step-15-product-refinement`).
10
- >
11
- > **Baseline:** [`docs/architecture/current-safety-behavior.md`](../architecture/current-safety-behavior.md)
12
- > documents the pre-step-15 surface this contract replaces.
13
-
14
- A **per-profile, per-domain safety policy** declared as a single
15
- machine-readable table. Replaces the legacy "one autonomy switch for
16
- everything" model documented in the baseline. Does **not** weaken the
17
- four non-overridable floors — those keep their universal scope and
18
- are referenced by id, not redeclared here.
19
-
20
- ## The Iron Floor
21
-
22
- ```
23
- NO POLICY ENTRY MAY WIDEN AN EXISTING FLOOR.
24
- ANY ENTRY THAT WOULD ALLOW A FLOOR-BLOCKED ACTION IS REJECTED AT LINT.
25
- ```
26
-
27
- The four floors are listed in
28
- [`current-safety-behavior § The four non-overridable floors`](../architecture/current-safety-behavior.md#the-four-non-overridable-floors):
29
- `non-destructive-by-default`, `scope-control § git-ops`,
30
- `commit-policy`, `security-sensitive-stop`. Floor membership is
31
- maintained in [`kernel-membership`](kernel-membership.md); a domain
32
- listed there cannot be set to `allow` here.
33
-
34
- ## Schema
35
-
36
- ```yaml
37
- # .agent-src.uncondensed/profiles/<id>.yml — new top-level key
38
- profile:
39
- id: <profile.id>
40
- # ... existing fields ...
41
- safety:
42
- domains:
43
- <domain-id>:
44
- policy: <deny | ask | allow>
45
- rationale: "<= 280 chars — why this policy for this profile>"
46
- ```
47
-
48
- ### Domain registry
49
-
50
- Domains are declared in this contract, **not** invented per profile.
51
- A profile may only reference an id from the table below.
52
-
53
- | Domain id | What it gates | Floor reference |
54
- |---|---|---|
55
- | `prod_data` | Reads / writes against production data stores. | `non-destructive-by-default` |
56
- | `prod_infra` | Terraform / k8s / cloud config touching prod. | `non-destructive-by-default` |
57
- | `secrets` | Secret values in env, config, or output. | `security-sensitive-stop` |
58
- | `auth_changes` | Auth, session, tenant-boundary, IAM edits. | `security-sensitive-stop` |
59
- | `billing` | Pricing, invoicing, refund, payout logic. | `security-sensitive-stop` |
60
- | `bulk_delete` | `rm -rf`, `DROP`, `TRUNCATE`, ≥ 5-file deletion. | `non-destructive-by-default` |
61
- | `git_push` | `git push` to any remote. | `scope-control § git-ops` |
62
- | `git_branch` | branch create / switch / delete. | `scope-control § git-ops` |
63
- | `commit` | Any git commit. | `commit-policy` |
64
- | `mcp_call_costly` | MCP / web / model call ≥ preset's `per_call_max_usd`. | — (advisory) |
65
- | `pii_redact` | PII redaction in support / finance / recruiting / marketing outputs. | `domain-safety-pii-*` |
66
- | `pii_log` | Logging of raw PII. | `domain-safety-logging-pii-floor` |
67
- | `legal_advice` | Output shaped as legal advice. | `domain-safety-disclaimer-legal` |
68
- | `medical_advice` | Output shaped as medical advice. | `domain-safety-disclaimer-medical` |
69
- | `financial_advice` | Investment / tax / valuation positions. | `domain-safety-disclaimer-financial` |
70
- | `pr_create` | Pull-request open / close / retarget. | `scope-control § git-ops` |
71
- | `deploy` | Deploy / release / tag / pipeline trigger. | `non-destructive-by-default` |
72
-
73
- ### Policy semantics
74
-
75
- | Policy | Behaviour | Floor interaction |
76
- |---|---|---|
77
- | `deny` | The agent refuses. Numbered-option block surfaces the refusal and the rationale field; no override path. | `deny` is the default for every floor domain — it cannot be relaxed. |
78
- | `ask` | The agent stops and asks a single numbered question per [`user-interaction`](../../dist/agent-src/rules/user-interaction.md). One question per turn. | `ask` is the default for every floor domain in a profile that has not opted out — the floor remains operative even when `policy=allow` is set elsewhere. |
79
- | `allow` | The agent proceeds without asking. Trivial-question suppression applies. | `allow` is **forbidden** on any domain whose `Floor reference` column is non-empty. Linter rejects it. |
80
-
81
- The legacy single switch (`personal.autonomy`) is preserved as a
82
- **fallback** for any domain a profile does not declare — keeping
83
- existing installs functional while profiles migrate.
84
-
85
- ## Resolution
86
-
87
- Order (last writer wins, subject to the Iron Floor):
88
-
89
- 1. Domain default = `ask` for floor domains, `allow` otherwise.
90
- 2. Profile `safety.domains.<id>.policy`.
91
- 3. Active pack's profile (if `--pack <id>` is active).
92
- 4. `.agent-settings.yml` user override under `profile.safety.domains`.
93
-
94
- The explain command at [`explain config`](../../dist/agent-src/scripts/agent-config)
95
- (Phase 1 Item 3 deliverable) surfaces the resolved policy per domain,
96
- with the writer source per row.
97
-
98
- ## Validation
99
-
100
- `scripts/lint_safety_model.py` (Phase 2 deliverable — not yet
101
- shipped) fails CI on:
102
-
103
- - Unknown domain id.
104
- - `allow` on a floor-referenced domain.
105
- - Missing `rationale` (≤ 280 chars, plain prose).
106
- - Profile declaring `safety` without at least one entry.
107
-
108
- Until the linter lands, profiles are reviewed by hand at PR time.
109
-
110
- ## What this contract does **not** do
111
-
112
- - **Does not** introduce new safety rules. Every domain row maps to
113
- an existing rule or to advisory cost guidance.
114
- - **Does not** ship the loader. `scripts/config/safety.py` is a
115
- Phase 2 deliverable deferred to its own step.
116
- - **Does not** override domain-safety output floors. PII redaction
117
- and disclaimer rules apply regardless of `safety.domains.*` —
118
- `policy=allow` on `pii_redact` means "do not ask before redacting",
119
- not "skip redaction".
120
- - **Does not** authorize per-tool MCP overrides. Cost caps live in
121
- [`config-presets`](config-presets.md).
122
-
123
- ## See also
124
-
125
- - [`current-safety-behavior`](../architecture/current-safety-behavior.md) — pre-step-15 baseline (what this replaces)
126
- - [`config-presets`](config-presets.md) — cost caps and enforcement
127
- - [`profile-system`](profile-system.md) — profile axis
128
- - [`workflow-packs`](workflow-packs.md) — pack-level overrides
129
- - `step-15-product-refinement` § Phase 2 Item 9
@@ -1,157 +0,0 @@
1
- ---
2
- stability: beta
3
- keep-beta-until: 2026-09-02
4
- ---
5
-
6
- # Session-profile overlay — contract
7
-
8
- > **Status:** beta · **Owner:** package maintainer · **Last reviewed:** 2026-06-02
9
- >
10
- > Schema and semantics for the `runtime.active_packs` overlay shipped by the
11
- > `/profile` command cluster. The overlay lets a developer activate a
12
- > profile for the **current session** so only the matching packs'
13
- > commands/skills are the surfaced set, then switch freely without
14
- > persisting the choice. Locked decisions: the session-profile-activation
15
- > roadmap Phase 0. Axis boundary: the
16
- > [ADR-010 addendum](../decisions/ADR-010-profile-pack-preset-boundary.md).
17
-
18
- ## Decision
19
-
20
- The overlay is an **ephemeral, runtime modulation of the `pack` axis** — an
21
- instance of the resolution chain's existing
22
- `… → user/env/runtime overrides` link. It is **not** a fifth axis.
23
-
24
- It selects which already-installed packs are *surfaced* this session; it
25
- never installs, never persists, never gates execution.
26
-
27
- ## On-disk shape
28
-
29
- Written to `agents/settings/.agent-settings.local.yml` (gitignored,
30
- deepest-winning cascade layer) — **never** the committed `.agent-settings.yml`.
31
-
32
- ```yaml
33
- runtime:
34
- active_packs: [engineering-base, laravel, php] # expanded closure, sorted
35
- ```
36
-
37
- - `runtime.active_packs` — a list of installed pack ids: the transitive
38
- `requires_hint` closure of the activated profile/pack seed set.
39
- - Absent / empty / wrong-type → **no overlay** (full surface).
40
-
41
- ## Activatable tokens
42
-
43
- `/profile activate <name…>` accepts, for each name:
44
-
45
- 1. a **session-profile alias** from `src/config/discovery/session-profiles.yml`
46
- (`developer`, `po`, `finance`, `gtm`, `content`) → its seed pack list, or
47
- 2. a **raw pack id** from `src/config/discovery/packs.yml` (`laravel`, `php`, …).
48
-
49
- Multiple names union their closures. The seed set's transitive
50
- `requires_hint` closure is expanded before writing. **Only installed packs
51
- are activatable** — a not-installed seed pack fails fast (exit 2). Installed
52
- set = the top-level `packs:` block in settings, or the full vocabulary when
53
- no block is present (maintainer repo / base-only install).
54
-
55
- ## Surface filter (recommendation-bias)
56
-
57
- For each `command` / `skill` artefact in `dist/discovery/discovery-manifest.json`:
58
-
59
- - **always surfaced** when it is **core-trust** (`trust.level == "core"`) or
60
- unscoped (no `packs`);
61
- - otherwise **surfaced iff** `packs ∩ active_packs ≠ ∅`;
62
- - **no overlay → everything surfaced.**
63
-
64
- Execution is **never gated**: an inactive-pack artefact still runs, with a
65
- one-line "from inactive pack X" notice. Hard execution-gating is deferred
66
- (host-dependent — see
67
- [`session-host-capability-audit`](../../agents/settings/contexts/session-host-capability-audit.md)).
68
-
69
- ## Lifecycle (locked: option a)
70
-
71
- - **Activate / switch / deactivate** are explicit `/profile` sub-commands.
72
- - The overlay **survives an IDE restart** (task-scoped). A new session emits
73
- a **staleness notice** via the `profile-staleness` `session_start` hook —
74
- it never silently resets (the registry-refresh Catch-22).
75
- - **Kill-switch:** delete `runtime.active_packs` (or the local file).
76
-
77
- ## Robustness invariants
78
-
79
- - **Fail-open read** — a corrupt / unparseable / schema-invalid overlay is
80
- ignored; the full surface returns. A misconfigured overlay never hides
81
- artefacts.
82
- - **Atomic write** — the helper writes via a temp file + `os.replace`, so a
83
- concurrent reader never sees a half-written overlay.
84
- - **Closure self-heal** — a closure dependency that is not installed is
85
- dropped from the written set with a note, never blocking activation.
86
- - **Set-only — precedence intentionally undefined.** The overlay is an
87
- order-independent **union of pack ids**: no precedence, no scalar
88
- "audience hint", no ordering. `set_overlay` always writes `sorted(set(...))`,
89
- and the static definitions are frozen at the data layer by
90
- `scripts/lint_profile_overlay_set_only.py` (aliases resolve only to pack-id
91
- sets; no profile/pack file declares a scalar `active_packs` or a
92
- `precedence`/`priority`/`order` key). A future scalar-precedence regression
93
- fails the build rather than silently re-introducing a precedence concept.
94
-
95
- ## Reconciliation with the existing `--profile=<id>` install flag
96
-
97
- The install/CLI flag `--profile=<minimal|balanced|full>`
98
- (`scripts/install.py`) is a **legacy alias for `rule_loading_tier`** — it
99
- sets the rule-loading cost tier, not an audience profile. The word
100
- "profile" is overloaded across three distinct, orthogonal things; this
101
- command does **not** add a fourth meaning:
102
-
103
- | Surface | What it sets | Axis | Persists? |
104
- |---|---|---|---|
105
- | `install --profile=<minimal\|balanced\|full>` | `rule_loading_tier` (cost tier) | rule_loading_tier | yes |
106
- | `profile.id` in settings (`founder`/`developer`/…) | audience identity → default surface + personas ([`profile-system`](profile-system.md)) | profile | yes |
107
- | **`/profile activate <name>`** (this command) | `runtime.active_packs` — which installed packs are *surfaced* this session | pack (runtime overlay) | **no** |
108
-
109
- The session overlay answers *which installed packs are surfaced right now?*.
110
- It does **not** change `rule_loading_tier`, does **not** change
111
- `profile.id`, and writes only the gitignored local file. The naming
112
- collision is pre-existing; the overlay deliberately keeps to the `pack`
113
- axis (ADR-010 addendum) so it adds no new axis despite sharing the word.
114
-
115
- ## Implementation
116
-
117
- - Library + CLI: `scripts/config/session_profiles.py`
118
- (`activate` · `deactivate` · `show` · `surface` · `stale-notice`).
119
- - Aliases: `src/config/discovery/session-profiles.yml`.
120
- - Hook: `scripts/profile_staleness_hook.py` (session_start staleness notice).
121
- - Tests: `tests/test_session_profiles.py`.
122
-
123
- ## Plain status surface
124
-
125
- `/profile show --plain` renders the active-overlay state in plain language for a
126
- **non-technical employee** — "which profile, what it surfaces/hides, why the
127
- agent behaves differently" — over the existing `show` state, with **zero new
128
- overlay logic**.
129
-
130
- It is a **deterministic, template-based** render (`session_profiles.format_plain_status`),
131
- **never LLM-generated**: a pure function of the `show` JSON
132
- (`active_packs`, `commands_shown`, `skills_shown`, `hidden_total`). This is a hard
133
- constraint — it removes any hidden-pack-name leak or hallucination surface, and
134
- lets the golden tests pin the output byte-for-byte.
135
-
136
- The render says, for an active overlay:
137
-
138
- 1. the active profile/pack name(s);
139
- 2. how many commands + skills you'll **see**;
140
- 3. how many items are **hidden** behind packs you haven't turned on (this doubles
141
- as the "what changed vs the full surface" line);
142
- 4. that the overlay **persists across sessions** until `/profile deactivate`.
143
-
144
- With no overlay it states the full surface is active.
145
-
146
- **Staleness is rendered as persistence, not an age-in-days.** The overlay
147
- (`runtime.active_packs`) carries no timestamp, and adding one would change overlay
148
- semantics — out of scope for this surface. A future age-in-days render is a
149
- separate, semantics-touching change (an overlay set-time), not a plain-render
150
- concern. The session-boundary reminder remains the `stale-notice` hook's job.
151
-
152
- ## See also
153
-
154
- - [`ADR-010 addendum`](../decisions/ADR-010-profile-pack-preset-boundary.md) — overlay ≠ fifth axis.
155
- - [`profile-system`](profile-system.md) — the profile (audience) axis the overlay is reconciled against.
156
- - [`command-clusters`](command-clusters.md) — the `/profile` cluster registration.
157
- - [`session-host-capability-audit`](../../agents/settings/contexts/session-host-capability-audit.md) — why hard-gating + true session-reset are deferred.