@event4u/agent-config 3.3.0 → 4.1.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 (585) hide show
  1. package/.agent-src/README.md +2 -2
  2. package/.agent-src/commands/agent-handoff.md +31 -2
  3. package/.agent-src/commands/agent-status.md +5 -5
  4. package/.agent-src/commands/agents/audit.md +8 -8
  5. package/.agent-src/commands/agents/init.md +25 -1
  6. package/.agent-src/commands/agents/optimize.md +3 -3
  7. package/.agent-src/commands/agents/user.md +1 -1
  8. package/.agent-src/commands/agents.md +1 -1
  9. package/.agent-src/commands/analyze-reference-repo.md +1 -1
  10. package/.agent-src/commands/check-current-md.md +8 -8
  11. package/.agent-src/commands/{compress.md → condense.md} +55 -55
  12. package/.agent-src/commands/context/create.md +7 -4
  13. package/.agent-src/commands/context/refactor.md +3 -1
  14. package/.agent-src/commands/feature/dev.md +1 -1
  15. package/.agent-src/commands/feature/explore.md +1 -1
  16. package/.agent-src/commands/feature/plan.md +10 -8
  17. package/.agent-src/commands/feature/refactor.md +3 -1
  18. package/.agent-src/commands/feature/roadmap.md +7 -4
  19. package/.agent-src/commands/fix/portability.md +3 -3
  20. package/.agent-src/commands/fix/refs.md +4 -4
  21. package/.agent-src/commands/ghostwriter.md +2 -2
  22. package/.agent-src/commands/memory/learn-low-impact.md +3 -3
  23. package/.agent-src/commands/module/explore.md +34 -8
  24. package/.agent-src/commands/optimize/agents-dir.md +9 -7
  25. package/.agent-src/commands/optimize/augmentignore.md +2 -2
  26. package/.agent-src/commands/optimize/skills.md +9 -9
  27. package/.agent-src/commands/post-as.md +1 -1
  28. package/.agent-src/commands/project-analyze.md +2 -2
  29. package/.agent-src/commands/project-health.md +3 -2
  30. package/.agent-src/commands/research/deep.md +1 -1
  31. package/.agent-src/commands/research/report.md +1 -1
  32. package/.agent-src/commands/research.md +1 -1
  33. package/.agent-src/commands/roadmap/ai-council.md +1 -1
  34. package/.agent-src/commands/roadmap/create.md +9 -4
  35. package/.agent-src/commands/rule-compliance-audit.md +1 -1
  36. package/.agent-src/commands/upstream-contribute.md +14 -14
  37. package/.agent-src/commands/video/from-script.md +1 -1
  38. package/.agent-src/commands/video/scene.md +1 -1
  39. package/.agent-src/commands/video/stitch.md +1 -1
  40. package/.agent-src/commands/video/storyboard.md +1 -1
  41. package/.agent-src/commands/video.md +1 -1
  42. package/.agent-src/contexts/augment-infrastructure.md +1 -1
  43. package/.agent-src/contexts/authority/commit-mechanics.md +15 -0
  44. package/.agent-src/contexts/authority/kernel-rule-edits.md +3 -3
  45. package/.agent-src/contexts/authority/scope-mechanics.md +1 -1
  46. package/.agent-src/contexts/communication/rules-auto/augment-source-of-truth-mechanics.md +28 -28
  47. package/.agent-src/contexts/communication/rules-auto/skill-quality-mechanics.md +4 -4
  48. package/.agent-src/contexts/communication/rules-auto/think-before-action-mechanics.md +2 -2
  49. package/.agent-src/contexts/contracts/artifact-engagement-flow.md +6 -6
  50. package/.agent-src/contexts/contracts/command-suggestion-flow.md +3 -3
  51. package/.agent-src/contexts/contracts/emergency-triage-block.md +4 -4
  52. package/.agent-src/contexts/contracts/frugality-charter.md +3 -3
  53. package/.agent-src/contexts/documentation-hierarchy.md +14 -7
  54. package/.agent-src/contexts/execution/autonomy-examples.md +1 -1
  55. package/.agent-src/contexts/execution/cheap-question-mechanics.md +39 -2
  56. package/.agent-src/contexts/execution/roadmap-process-loop.md +28 -5
  57. package/.agent-src/contexts/override-system.md +5 -5
  58. package/.agent-src/ghostwriter/fictional-fixture-v1.md +1 -1
  59. package/.agent-src/personas/advisors/first-principles.md +1 -1
  60. package/.agent-src/personas/hollywood-director.md +1 -1
  61. package/.agent-src/rules/architecture.md +5 -1
  62. package/.agent-src/rules/augment-edit-discipline.md +5 -5
  63. package/.agent-src/rules/augment-source-of-truth.md +15 -15
  64. package/.agent-src/rules/commit-conventions.md +1 -1
  65. package/.agent-src/rules/commit-policy.md +10 -0
  66. package/.agent-src/rules/domain-adoption-policy.md +3 -3
  67. package/.agent-src/rules/fast-path-marker-visibility.md +3 -3
  68. package/.agent-src/rules/finance-safety-floor.md +1 -1
  69. package/.agent-src/rules/framework-neutrality-in-generic-skills.md +8 -8
  70. package/.agent-src/rules/git-history-discipline.md +1 -1
  71. package/.agent-src/rules/improve-before-implement.md +2 -2
  72. package/.agent-src/rules/language-and-tone.md +2 -2
  73. package/.agent-src/rules/media-governance-routing.md +5 -5
  74. package/.agent-src/rules/no-attribution-footers.md +1 -0
  75. package/.agent-src/rules/no-cheap-questions.md +3 -0
  76. package/.agent-src/rules/no-decorative-emojis-in-git-surfaces.md +111 -0
  77. package/.agent-src/rules/no-pr-progress-comments.md +118 -0
  78. package/.agent-src/rules/no-roadmap-references.md +3 -3
  79. package/.agent-src/rules/non-destructive-by-default.md +1 -1
  80. package/.agent-src/rules/persona-governance.md +3 -3
  81. package/.agent-src/rules/preservation-guard.md +15 -15
  82. package/.agent-src/rules/roadmap-ci-steps-policy.md +7 -3
  83. package/.agent-src/rules/rule-type-governance.md +1 -1
  84. package/.agent-src/rules/skill-quality.md +1 -1
  85. package/.agent-src/rules/{caveman-speak.md → telegraph-speak.md} +15 -15
  86. package/.agent-src/rules/token-optimizer-maintenance.md +6 -6
  87. package/.agent-src/skills/agent-docs-writing/SKILL.md +17 -11
  88. package/.agent-src/skills/agents-md-thin-root/SKILL.md +9 -9
  89. package/.agent-src/skills/check-refs/SKILL.md +2 -2
  90. package/.agent-src/skills/code-refactoring/SKILL.md +2 -2
  91. package/.agent-src/skills/command-writing/SKILL.md +19 -19
  92. package/.agent-src/skills/comp-banding/SKILL.md +1 -1
  93. package/.agent-src/skills/condense-memory/SKILL.md +131 -0
  94. package/.agent-src/skills/context-authoring/SKILL.md +2 -2
  95. package/.agent-src/skills/context-document/SKILL.md +5 -3
  96. package/.agent-src/skills/copilot-agents-optimization/SKILL.md +3 -3
  97. package/.agent-src/skills/description-assist/SKILL.md +2 -2
  98. package/.agent-src/skills/git-workflow/SKILL.md +1 -1
  99. package/.agent-src/skills/guideline-writing/SKILL.md +5 -5
  100. package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +4 -4
  101. package/.agent-src/skills/lint-skills/SKILL.md +3 -3
  102. package/.agent-src/skills/md-language-check/SKILL.md +2 -2
  103. package/.agent-src/skills/module-detect-on-the-fly/SKILL.md +138 -0
  104. package/.agent-src/skills/module-management/SKILL.md +166 -94
  105. package/.agent-src/skills/override-management/SKILL.md +1 -1
  106. package/.agent-src/skills/persona-writing/SKILL.md +5 -5
  107. package/.agent-src/skills/positioning-strategy/SKILL.md +1 -1
  108. package/.agent-src/skills/project-docs/SKILL.md +6 -4
  109. package/.agent-src/skills/readme-reviewer/SKILL.md +2 -2
  110. package/.agent-src/skills/roadmap-management/SKILL.md +13 -1
  111. package/.agent-src/skills/roadmap-writing/SKILL.md +4 -2
  112. package/.agent-src/skills/rule-refactor/SKILL.md +5 -5
  113. package/.agent-src/skills/rule-writing/SKILL.md +18 -18
  114. package/.agent-src/skills/script-writing/SKILL.md +1 -1
  115. package/.agent-src/skills/skill-improvement-pipeline/SKILL.md +6 -6
  116. package/.agent-src/skills/skill-management/SKILL.md +21 -21
  117. package/.agent-src/skills/skill-reviewer/SKILL.md +2 -2
  118. package/.agent-src/skills/skill-writing/SKILL.md +8 -8
  119. package/.agent-src/skills/skill-writing/evals/triggers.json +1 -1
  120. package/.agent-src/skills/token-optimizer/SKILL.md +4 -4
  121. package/.agent-src/skills/unit-economics-modeling/SKILL.md +1 -1
  122. package/.agent-src/skills/upstream-contribute/SKILL.md +17 -17
  123. package/.agent-src/templates/AGENTS.md +1 -0
  124. package/.agent-src/templates/agent-settings.md +24 -13
  125. package/.agent-src/templates/agents/agent-project-settings.example.yml +61 -2
  126. package/.agent-src/templates/command.md +5 -5
  127. package/.agent-src/templates/contexts.md +1 -1
  128. package/.agent-src/templates/copilot-instructions.md +8 -8
  129. package/.agent-src/templates/features.md +1 -1
  130. package/.agent-src/templates/hooks/pre-commit-frontmatter +2 -2
  131. package/.agent-src/templates/hooks/pre-commit-roadmap-progress +3 -3
  132. package/.agent-src/templates/persona.md +2 -2
  133. package/.agent-src/templates/roadmaps.md +1 -1
  134. package/.agent-src/templates/rule.md +13 -13
  135. package/.agent-src/templates/scripts/memory_lookup.py +1 -1
  136. package/.agent-src/templates/scripts/memory_status.py +2 -2
  137. package/.agent-src/templates/scripts/work_engine/_lib/agent_settings.py +195 -1
  138. package/.agent-src/templates/scripts/work_engine/orchestration.py +1 -1
  139. package/.agent-src/templates/skill-archive-note.md +5 -5
  140. package/.agent-src/templates/skill.md +1 -1
  141. package/.claude-plugin/marketplace.json +4 -4
  142. package/AGENTS.md +16 -17
  143. package/CHANGELOG.md +181 -3
  144. package/CONTRIBUTING.md +31 -12
  145. package/README.md +18 -10
  146. package/config/agent-settings.template.yml +22 -2
  147. package/config/discovery/unassigned-artefacts.yml +24 -24
  148. package/config/profiles/full.ini +1 -1
  149. package/dist/cli/agent-config.js +52 -3
  150. package/dist/cli/agent-config.js.map +1 -1
  151. package/dist/cli/commands/uiServe.js +9 -0
  152. package/dist/cli/commands/uiServe.js.map +1 -1
  153. package/dist/cli/registry.js +2 -1
  154. package/dist/cli/registry.js.map +1 -1
  155. package/dist/discovery/deprecation-report.md +1 -1
  156. package/dist/discovery/discovery-manifest.json +649 -606
  157. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  158. package/dist/discovery/discovery-manifest.summary.md +4 -4
  159. package/dist/discovery/orphan-report.md +1 -1
  160. package/dist/discovery/packs.json +439 -437
  161. package/dist/discovery/trust-report.md +5 -5
  162. package/dist/discovery/workspaces.json +450 -448
  163. package/dist/install/apply.js +238 -0
  164. package/dist/install/apply.js.map +1 -0
  165. package/dist/install/atomic.js +92 -0
  166. package/dist/install/atomic.js.map +1 -0
  167. package/dist/install/bridges/augment.js +20 -0
  168. package/dist/install/bridges/augment.js.map +1 -0
  169. package/dist/install/bridges/claude.js +44 -0
  170. package/dist/install/bridges/claude.js.map +1 -0
  171. package/dist/install/bridges/cline.js +69 -0
  172. package/dist/install/bridges/cline.js.map +1 -0
  173. package/dist/install/bridges/copilot.js +28 -0
  174. package/dist/install/bridges/copilot.js.map +1 -0
  175. package/dist/install/bridges/cursor.js +34 -0
  176. package/dist/install/bridges/cursor.js.map +1 -0
  177. package/dist/install/bridges/gemini.js +39 -0
  178. package/dist/install/bridges/gemini.js.map +1 -0
  179. package/dist/install/bridges/index.js +88 -0
  180. package/dist/install/bridges/index.js.map +1 -0
  181. package/dist/install/bridges/marker-content.js +153 -0
  182. package/dist/install/bridges/marker-content.js.map +1 -0
  183. package/dist/install/bridges/markers.js +42 -0
  184. package/dist/install/bridges/markers.js.map +1 -0
  185. package/dist/install/bridges/types.js +31 -0
  186. package/dist/install/bridges/types.js.map +1 -0
  187. package/dist/install/bridges/vscode.js +26 -0
  188. package/dist/install/bridges/vscode.js.map +1 -0
  189. package/dist/install/bridges/windsurf.js +35 -0
  190. package/dist/install/bridges/windsurf.js.map +1 -0
  191. package/dist/install/conflict.js +196 -0
  192. package/dist/install/conflict.js.map +1 -0
  193. package/dist/install/detect.js +218 -0
  194. package/dist/install/detect.js.map +1 -0
  195. package/dist/install/paths.js +82 -0
  196. package/dist/install/paths.js.map +1 -0
  197. package/dist/install/plan.js +157 -0
  198. package/dist/install/plan.js.map +1 -0
  199. package/dist/install/txlog.js +140 -0
  200. package/dist/install/txlog.js.map +1 -0
  201. package/dist/install/types.js +19 -0
  202. package/dist/install/types.js.map +1 -0
  203. package/dist/install/wizard-plan.js +184 -0
  204. package/dist/install/wizard-plan.js.map +1 -0
  205. package/dist/mcp/registry-manifest.json +4 -4
  206. package/dist/router.json +67 -19
  207. package/dist/server/app.js +6 -0
  208. package/dist/server/app.js.map +1 -1
  209. package/dist/server/routes/install.js +547 -0
  210. package/dist/server/routes/install.js.map +1 -0
  211. package/dist/server/routes/wizard.js +301 -6
  212. package/dist/server/routes/wizard.js.map +1 -1
  213. package/dist/server/routes/workspace.js +396 -0
  214. package/dist/server/routes/workspace.js.map +1 -0
  215. package/dist/server/schemas/settings.js +4 -3
  216. package/dist/server/schemas/settings.js.map +1 -1
  217. package/dist/ui/assets/index-BXZILUxe.css +1 -0
  218. package/dist/ui/assets/index-DLEuEW1V.js +35 -0
  219. package/dist/ui/assets/index-DLEuEW1V.js.map +1 -0
  220. package/dist/ui/index.html +2 -2
  221. package/docs/MIGRATION.md +1 -1
  222. package/docs/adrs/cost/0001-hard-stop-hook.md +1 -1
  223. package/docs/adrs/router/0001-three-tier-routing.md +4 -4
  224. package/docs/adrs/schema/0001-json-schema-frontmatter.md +1 -1
  225. package/docs/adrs/smoke/0001-per-tier-smoke-scripts.md +4 -4
  226. package/docs/adrs/{caveman → telegraph}/0001-default-off-until-bench.md +9 -9
  227. package/docs/adrs/telegraph/README.md +9 -0
  228. package/docs/architecture/augment-projection.md +4 -4
  229. package/docs/architecture/claude-bundle.md +1 -1
  230. package/docs/architecture/current-onboard-baseline.md +3 -3
  231. package/docs/architecture/multi-tool-projection.md +10 -10
  232. package/docs/architecture/source-projection.md +27 -27
  233. package/docs/architecture.md +19 -15
  234. package/docs/archive/CHANGELOG-pre-2.11.0.md +2 -2
  235. package/docs/archive/CHANGELOG-pre-2.15.0.md +3 -3
  236. package/docs/archive/CHANGELOG-pre-2.16.0.md +1 -1
  237. package/docs/archive/CHANGELOG-pre-2.2.0.md +70 -70
  238. package/docs/archive/CHANGELOG-pre-2.20.0.md +2 -2
  239. package/docs/archive/CHANGELOG-pre-2.25.0.md +15 -15
  240. package/docs/archive/CHANGELOG-pre-3.0.0.md +4 -4
  241. package/docs/archive/CHANGELOG-pre-3.1.0.md +2 -2
  242. package/docs/archive/CHANGELOG-pre-3.2.0.md +3 -3
  243. package/docs/benchmark.md +65 -0
  244. package/docs/benchmarks.md +16 -16
  245. package/docs/catalog.md +17 -15
  246. package/docs/contracts/CHANGELOG-conventions.md +1 -1
  247. package/docs/contracts/STABILITY.md +2 -2
  248. package/docs/contracts/adoption-signal-floor.md +110 -0
  249. package/docs/contracts/adr-chat-history-split.md +4 -4
  250. package/docs/contracts/adr-command-suggestion.md +4 -4
  251. package/docs/contracts/adr-gtm-context-spine.md +1 -1
  252. package/docs/contracts/adr-implement-ticket-runtime.md +4 -4
  253. package/docs/contracts/adr-install-user-type-axis.md +1 -1
  254. package/docs/contracts/adr-layout.md +2 -2
  255. package/docs/contracts/adr-product-ui-track.md +10 -10
  256. package/docs/contracts/adr-user-types-axis.md +3 -3
  257. package/docs/contracts/adr-wing4-context-spine.md +1 -1
  258. package/docs/contracts/agent-memory-contract.md +3 -3
  259. package/docs/contracts/agents-md-tech-stack.md +2 -2
  260. package/docs/contracts/ai-council-config.md +2 -2
  261. package/docs/contracts/at-rest-encryption.md +4 -0
  262. package/docs/contracts/audit-log-v1.md +1 -1
  263. package/docs/contracts/benchmark-ab-contract.md +101 -0
  264. package/docs/contracts/benchmark-corpus-spec.md +1 -1
  265. package/docs/contracts/branch-protection-policy.md +98 -0
  266. package/docs/contracts/ci-cost-budget.md +106 -0
  267. package/docs/contracts/ci-green-floor.md +141 -0
  268. package/docs/contracts/command-clusters.md +6 -6
  269. package/docs/contracts/command-surface-tiers.md +2 -2
  270. package/docs/contracts/command-taxonomy.md +2 -2
  271. package/docs/contracts/{compression-default-kill-criterion.md → condensation-default-kill-criterion.md} +29 -29
  272. package/docs/contracts/config-presets.md +1 -1
  273. package/docs/contracts/context-paths.md +3 -3
  274. package/docs/contracts/context-spine.md +1 -1
  275. package/docs/contracts/cost-summary-schema.md +12 -12
  276. package/docs/contracts/cross-wing-handoff.md +4 -4
  277. package/docs/contracts/daily-workspace.md +4 -0
  278. package/docs/contracts/decision-trace-v1.md +2 -2
  279. package/docs/contracts/discovery-manifest.md +4 -4
  280. package/docs/contracts/explain-modes.md +4 -0
  281. package/docs/contracts/file-ownership-matrix.json +3493 -3318
  282. package/docs/contracts/file-ownership-matrix.md +3 -3
  283. package/docs/contracts/frontmatter-contract.md +4 -4
  284. package/docs/contracts/ghostwriter-schema.md +3 -3
  285. package/docs/contracts/gui-wizard.md +1 -1
  286. package/docs/contracts/harness-expectations.md +123 -0
  287. package/docs/contracts/host-agent-protocol.md +4 -0
  288. package/docs/contracts/implement-ticket-flow.md +9 -9
  289. package/docs/contracts/install-scopes.md +77 -0
  290. package/docs/contracts/iron-law-overrides.txt +1 -1
  291. package/docs/contracts/kernel-membership.md +26 -26
  292. package/docs/contracts/linear-ai-rules-inclusion.md +1 -1
  293. package/docs/contracts/linter-structural-model.md +2 -2
  294. package/docs/contracts/load-context-budget-model.md +4 -4
  295. package/docs/contracts/load-context-schema.md +13 -13
  296. package/docs/contracts/local-analytics.md +4 -0
  297. package/docs/contracts/local-knowledge-ingestion.md +1 -1
  298. package/docs/contracts/mcp-cloud-scope.md +2 -2
  299. package/docs/contracts/mcp-phase-1-scope.md +3 -3
  300. package/docs/contracts/measurement-baseline.md +5 -5
  301. package/docs/contracts/mental-models.md +30 -30
  302. package/docs/contracts/multi-tool-projection-fidelity.md +4 -4
  303. package/docs/contracts/namespace.md +4 -4
  304. package/docs/contracts/orchestration-dsl-v1.md +7 -7
  305. package/docs/contracts/package-self-orientation.md +12 -12
  306. package/docs/contracts/persona-schema.md +6 -6
  307. package/docs/contracts/pilot/language-and-tone.md +1 -1
  308. package/docs/contracts/plain-language-surface.md +117 -0
  309. package/docs/contracts/profile-system.md +3 -3
  310. package/docs/contracts/release-pr-gating.md +103 -0
  311. package/docs/contracts/role-experience.md +3 -3
  312. package/docs/contracts/rule-classification.md +13 -13
  313. package/docs/contracts/rule-interactions.md +4 -4
  314. package/docs/contracts/rule-interactions.yml +30 -30
  315. package/docs/contracts/rule-priority-hierarchy.md +13 -13
  316. package/docs/contracts/rule-router.md +2 -2
  317. package/docs/contracts/safety-model.md +1 -1
  318. package/docs/contracts/skill-distribution-channels.md +61 -0
  319. package/docs/contracts/skill-domains.md +2 -2
  320. package/docs/contracts/smoke-contracts.md +5 -5
  321. package/docs/contracts/telegraph-telemetry.md +83 -0
  322. package/docs/contracts/trust-and-safety.md +5 -5
  323. package/docs/contracts/ui-stack-extension.md +7 -7
  324. package/docs/contracts/ui-track-flow.md +9 -9
  325. package/docs/contracts/user-type-schema.md +4 -4
  326. package/docs/contracts/workflow-packs.md +4 -4
  327. package/docs/contracts/workspace-documents.md +4 -0
  328. package/docs/customization.md +28 -8
  329. package/docs/decisions/ADR-001-kernel-swap-deferred.md +6 -6
  330. package/docs/decisions/ADR-002-kernel-bucket-overrides.md +11 -11
  331. package/docs/decisions/ADR-003-flat-cluster-subs-and-colon-syntax.md +2 -2
  332. package/docs/decisions/ADR-004-rule-governance-pruning.md +4 -4
  333. package/docs/decisions/ADR-005-subagent-worktrees.md +7 -7
  334. package/docs/decisions/ADR-011-domain-pack-readiness.md +6 -6
  335. package/docs/decisions/ADR-013-discovery-frontmatter-contract.md +3 -3
  336. package/docs/decisions/ADR-015-discovery-manifest-contract.md +3 -3
  337. package/docs/decisions/ADR-017-monorepo-physical-layout.md +10 -10
  338. package/docs/decisions/ADR-018-trust-and-safety-layer.md +6 -6
  339. package/docs/decisions/ADR-019-router-json-dist-location.md +2 -2
  340. package/docs/decisions/ADR-020-global-only-consumer-scope.md +2 -2
  341. package/docs/decisions/ADR-021-deployment-shape.md +1 -1
  342. package/docs/decisions/ADR-022-daily-workspace-decomposition.md +1 -1
  343. package/docs/decisions/ADR-027-changelog-machine-vs-manual.md +2 -2
  344. package/docs/decisions/ADR-028-root-layout.md +7 -7
  345. package/docs/decisions/ADR-029-multi-workspace-deferred.md +2 -2
  346. package/docs/decisions/ADR-rule-kernel-and-router.md +5 -5
  347. package/docs/deploy/team-deployment-posture.md +20 -0
  348. package/docs/development.md +17 -17
  349. package/docs/distribution/registries.md +32 -0
  350. package/docs/distribution/registry-submissions.md +85 -0
  351. package/docs/distribution/telemetry-schema.md +1 -1
  352. package/docs/getting-started-by-role.md +45 -3
  353. package/docs/getting-started.md +2 -2
  354. package/docs/guidelines/agent-infra/5w2h-analysis.md +3 -3
  355. package/docs/guidelines/agent-infra/ask-when-uncertain-demos.md +1 -1
  356. package/docs/guidelines/agent-infra/asking-and-brevity-examples.md +3 -3
  357. package/docs/guidelines/agent-infra/carve-out-predicates.md +3 -3
  358. package/docs/guidelines/agent-infra/critical-thinking.md +4 -4
  359. package/docs/guidelines/agent-infra/direct-answers-demos.md +1 -1
  360. package/docs/guidelines/agent-infra/first-principles.md +2 -2
  361. package/docs/guidelines/agent-infra/inversion-thinking.md +5 -5
  362. package/docs/guidelines/agent-infra/layered-settings.md +56 -2
  363. package/docs/guidelines/agent-infra/mental-models.md +3 -3
  364. package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +2 -2
  365. package/docs/guidelines/agent-infra/rule-type-governance.md +1 -1
  366. package/docs/guidelines/agent-infra/scqa-framework.md +5 -5
  367. package/docs/guidelines/agent-infra/self-improvement-pipeline.md +2 -2
  368. package/docs/guidelines/agent-infra/six-hats.md +3 -3
  369. package/docs/guidelines/agent-infra/skill-quality-checklist.md +5 -5
  370. package/docs/guidelines/agent-infra/systems-thinking.md +1 -1
  371. package/docs/guidelines/agent-infra/verify-before-complete-demos.md +1 -1
  372. package/docs/guidelines/augment-portability-patterns.md +4 -4
  373. package/docs/guidelines/cross-role-handoff.md +2 -2
  374. package/docs/guidelines/php/php-coding-patterns.md +1 -1
  375. package/docs/guidelines/prompt-templates.md +6 -6
  376. package/docs/maintainers/dev-mode.md +1 -1
  377. package/docs/mcp.md +1 -1
  378. package/docs/parity/bench.json +3 -3
  379. package/docs/parity/ruflo.md +2 -2
  380. package/docs/profiles.md +11 -11
  381. package/docs/quality.md +11 -11
  382. package/docs/safety.md +3 -3
  383. package/docs/setup/mcp-client-config.md +1 -1
  384. package/docs/setup/mcp-r2-bootstrap.md +1 -1
  385. package/docs/setup/mcp-server-docker.md +3 -3
  386. package/docs/setup/per-ide/windsurf.md +1 -1
  387. package/docs/skills-catalog.md +8 -7
  388. package/docs/troubleshooting.md +1 -1
  389. package/docs/walkthroughs/daily-workspace-a11y.md +87 -0
  390. package/llms.txt +7 -6
  391. package/package.json +1 -1
  392. package/scripts/__pycache__/validate_frontmatter.cpython-312.pyc +0 -0
  393. package/scripts/_archive/README.md +2 -2
  394. package/scripts/_archive/_backfill_skill_domains.py +3 -3
  395. package/scripts/_archive/_bootstrap_tier_frontmatter.py +3 -3
  396. package/scripts/_archive/_p43_bodies.py +10 -10
  397. package/scripts/_archive/{_p43_compress.py → _p43_condense.py} +5 -5
  398. package/scripts/_archive/_p4_migrate.py +7 -7
  399. package/scripts/_archive/_phase2_shim_helper.py +1 -1
  400. package/scripts/_archive/_pilot_council_question.py +5 -5
  401. package/scripts/_cli/explain_last/inputs.py +1 -1
  402. package/scripts/_lib/__pycache__/__init__.cpython-312.pyc +0 -0
  403. package/scripts/_lib/__pycache__/agent_src.cpython-312.pyc +0 -0
  404. package/scripts/_lib/agent_settings.py +195 -1
  405. package/scripts/_lib/agent_src.py +19 -19
  406. package/scripts/_lib/bench_ab_cache.py +162 -0
  407. package/scripts/_lib/bench_ab_scoring.py +209 -0
  408. package/scripts/_lib/{bench_caveman.py → bench_telegraph.py} +21 -21
  409. package/scripts/_lib/{bench_caveman_report.py → bench_telegraph_report.py} +21 -21
  410. package/scripts/_lib/claude_desktop_bundler.py +5 -5
  411. package/scripts/_lib/module_detection.py +223 -0
  412. package/scripts/_lib/scope_guard.sh +162 -0
  413. package/scripts/_phase4_bucket.py +3 -3
  414. package/scripts/_pilot_measure.py +4 -4
  415. package/scripts/_tmp_scan_framework_leakage.py +1 -1
  416. package/scripts/adoption_report.py +195 -0
  417. package/scripts/adoption_snapshot.py +219 -0
  418. package/scripts/adoption_status.py +166 -0
  419. package/scripts/ai-video/lib/parse-blueprint.sh +1 -1
  420. package/scripts/ai_council/advisors.py +5 -5
  421. package/scripts/ai_council/compile_corpus.py +1 -1
  422. package/scripts/ai_council/one_off_archive/2026-05/_one_off_budget_v2_audit.py +3 -3
  423. package/scripts/ai_council/one_off_archive/2026-05/_one_off_context_layer_v1_review.py +2 -2
  424. package/scripts/ai_council/one_off_archive/2026-05/_one_off_inject_quiet_flag.py +1 -1
  425. package/scripts/ai_council/one_off_archive/2026-05/_one_off_measure_v2.sh +1 -1
  426. package/scripts/ai_council/one_off_archive/2026-05/_one_off_measure_verbosity.sh +1 -1
  427. package/scripts/ai_council/one_off_archive/2026-05/_one_off_nondestructive_inline_audit.py +3 -3
  428. package/scripts/ai_council/one_off_archive/2026-05/_one_off_per_task.sh +1 -1
  429. package/scripts/ai_council/one_off_archive/2026-05/_one_off_phase6_trigger_jaccard.py +1 -1
  430. package/scripts/ai_council/one_off_archive/2026-05/_one_off_phase_2a_budget_rebalance.py +6 -6
  431. package/scripts/ai_council/one_off_archive/2026-05/_one_off_rebalancing_audit.py +1 -1
  432. package/scripts/ai_council/one_off_archive/2026-05/_one_off_tier_retrofit.py +6 -6
  433. package/scripts/annotate_discovery.py +13 -13
  434. package/scripts/apply_modules_config.py +290 -0
  435. package/scripts/audit_adr_coverage.py +2 -2
  436. package/scripts/audit_auto_rules.py +2 -2
  437. package/scripts/audit_cloud_compatibility.py +3 -3
  438. package/scripts/audit_command_surface.py +9 -9
  439. package/scripts/audit_likelihood.py +2 -2
  440. package/scripts/audit_user_type_axis.py +2 -2
  441. package/scripts/bench_ab_cache_dispatch.py +68 -0
  442. package/scripts/bench_ab_clone.py +170 -0
  443. package/scripts/bench_ab_diff.py +227 -0
  444. package/scripts/bench_ab_integrity.py +143 -0
  445. package/scripts/bench_ab_run.py +235 -0
  446. package/scripts/bench_ab_task_runner.py +369 -0
  447. package/scripts/bench_ab_tracka_run.py +202 -0
  448. package/scripts/{bench_compress_memory.py → bench_condense_memory.py} +16 -16
  449. package/scripts/bench_run.py +33 -33
  450. package/scripts/bench_runner.py +2 -2
  451. package/scripts/bootstrap.sh +99 -0
  452. package/scripts/build_cloud_bundle.py +6 -6
  453. package/scripts/build_discovery_manifest.py +7 -7
  454. package/scripts/build_linear_digest.py +3 -3
  455. package/scripts/build_rule_trigger_matrix.py +8 -8
  456. package/scripts/chat_history.py +5 -5
  457. package/scripts/check_always_budget.py +11 -5
  458. package/scripts/check_augment_description_cap.py +3 -3
  459. package/scripts/check_cluster_patterns.py +2 -2
  460. package/scripts/check_command_count_messaging.py +3 -3
  461. package/scripts/{check_compression.py → check_condensation.py} +34 -34
  462. package/scripts/{check_compressed_paths.py → check_condensed_paths.py} +8 -8
  463. package/scripts/check_context_paths.py +7 -7
  464. package/scripts/check_council_layout.py +2 -2
  465. package/scripts/check_council_references.py +9 -9
  466. package/scripts/check_iron_law_prominence.py +2 -2
  467. package/scripts/check_kernel_rule_bundle.py +2 -2
  468. package/scripts/check_module_management_neutral.py +149 -0
  469. package/scripts/check_no_roadmap_refs.py +9 -9
  470. package/scripts/check_portability.py +3 -3
  471. package/scripts/check_public_catalog_links.py +4 -4
  472. package/scripts/check_references.py +7 -6
  473. package/scripts/check_release_pr_shape.py +112 -0
  474. package/scripts/check_reply_consistency.py +3 -3
  475. package/scripts/check_safety_floor_untouched.py +1 -1
  476. package/scripts/check_template_pin_drift.py +5 -5
  477. package/scripts/check_token_optimizer_freshness.py +3 -3
  478. package/scripts/ci_status.py +301 -0
  479. package/scripts/ci_time_ratio.py +1 -1
  480. package/scripts/cleanup_other_scope.sh +146 -0
  481. package/scripts/compile_router.py +10 -10
  482. package/scripts/{compress.py → condense.py} +64 -64
  483. package/scripts/condense.sh +18 -0
  484. package/scripts/{compress_memory.py → condense_memory.py} +33 -33
  485. package/scripts/config/presets.py +2 -2
  486. package/scripts/config/profiles.py +1 -1
  487. package/scripts/cost_by_conversation.py +3 -3
  488. package/scripts/cost_summary.py +7 -7
  489. package/scripts/count_token_optimizer_usage.sh +1 -1
  490. package/scripts/gen_discovery_baseline.py +5 -5
  491. package/scripts/generate_index.py +6 -6
  492. package/scripts/generate_ownership_matrix.py +10 -10
  493. package/scripts/generate_pack_manifests.py +1 -1
  494. package/scripts/ghostwriter_fixture_allowlist.txt +1 -1
  495. package/scripts/install +3 -3
  496. package/scripts/install-hooks.sh +6 -6
  497. package/scripts/install.py +76 -11
  498. package/scripts/install.sh +187 -1
  499. package/scripts/inventory_frontmatter.py +2 -2
  500. package/scripts/iron_law_sha.py +3 -3
  501. package/scripts/lint_agents_layout.py +14 -7
  502. package/scripts/lint_agents_md.py +4 -4
  503. package/scripts/lint_archived_skills.py +3 -3
  504. package/scripts/lint_artefact_frontmatter.py +2 -2
  505. package/scripts/lint_bench_ab.py +172 -0
  506. package/scripts/lint_bench_corpus.py +1 -1
  507. package/scripts/lint_command_tiers.py +5 -5
  508. package/scripts/lint_context_spine_usage.py +1 -1
  509. package/scripts/lint_framework_leakage.py +7 -7
  510. package/scripts/lint_framework_leakage_allowlist.json +144 -84
  511. package/scripts/lint_ghostwriter_source.py +3 -3
  512. package/scripts/lint_handoffs.py +1 -1
  513. package/scripts/lint_load_context.py +11 -11
  514. package/scripts/lint_media_policy_linkage.py +5 -5
  515. package/scripts/lint_namespace.py +1 -1
  516. package/scripts/lint_no_new_atomic_commands.py +2 -2
  517. package/scripts/lint_orchestration_dsl.py +1 -1
  518. package/scripts/lint_pack_boundaries.py +2 -2
  519. package/scripts/lint_persona_governance.py +4 -4
  520. package/scripts/lint_role_experiences.py +237 -0
  521. package/scripts/lint_rule_interactions.py +2 -2
  522. package/scripts/lint_rule_tiers.py +1 -1
  523. package/scripts/lint_trust_coherence.py +2 -2
  524. package/scripts/mcp_registry_submit.sh +187 -0
  525. package/scripts/mcp_server/tools.py +1 -1
  526. package/scripts/measure_frugality_savings.py +10 -10
  527. package/scripts/measure_patterns.py +1 -1
  528. package/scripts/measure_projection_bytes.py +5 -5
  529. package/scripts/measure_rule_budget.py +3 -3
  530. package/scripts/measure_skill_reduction.py +1 -1
  531. package/scripts/memory_lookup.py +1 -1
  532. package/scripts/memory_status.py +2 -2
  533. package/scripts/migrate_command_suggestions.py +3 -3
  534. package/scripts/mine_session.py +1 -1
  535. package/scripts/move_artefact.py +3 -3
  536. package/scripts/new_skill.py +2 -2
  537. package/scripts/pack_mcp_content.py +9 -9
  538. package/scripts/plan_physical_move.py +6 -6
  539. package/scripts/print_required_checks.py +196 -0
  540. package/scripts/probe_skill_registration.py +413 -0
  541. package/scripts/propose_modules_config.py +145 -0
  542. package/scripts/prototype_lint_contradictions.py +1 -1
  543. package/scripts/recruit_preflight.sh +152 -0
  544. package/scripts/refine_ticket_detect.py +3 -3
  545. package/scripts/release.py +20 -0
  546. package/scripts/render_benchmark_md.py +308 -0
  547. package/scripts/roadmap_progress_hook.py +1 -1
  548. package/scripts/run_skill_evals.py +2 -2
  549. package/scripts/runtime_registry.py +4 -4
  550. package/scripts/schemas/command.schema.json +4 -4
  551. package/scripts/schemas/rule.schema.json +5 -5
  552. package/scripts/schemas/skill.schema.json +3 -3
  553. package/scripts/schemas/user-type.schema.json +1 -1
  554. package/scripts/score_skill_selection.py +1 -1
  555. package/scripts/skill_collision_clusters.py +2 -2
  556. package/scripts/skill_linter.py +81 -81
  557. package/scripts/skill_overlap.py +5 -5
  558. package/scripts/skill_tools/audit_persona_coverage.py +2 -2
  559. package/scripts/skill_tools/audit_user_type_coverage.py +2 -2
  560. package/scripts/skill_tools/run_block_d_eval.py +1 -1
  561. package/scripts/skill_tools/score_skill_relevance.py +1 -1
  562. package/scripts/skill_tools/suggest_skill_for_task.py +1 -1
  563. package/scripts/skill_trigger_eval.py +3 -3
  564. package/scripts/smoke/kernel.sh +7 -1
  565. package/scripts/smoke/router.sh +5 -5
  566. package/scripts/smoke/skills.sh +1 -1
  567. package/scripts/smoke_quickstart.py +1 -1
  568. package/scripts/snapshot_agent_outputs.py +3 -3
  569. package/scripts/spotcheck_thin_root.py +1 -1
  570. package/scripts/{caveman_stats.py → telegraph_stats.py} +18 -18
  571. package/scripts/update_counts.py +1 -1
  572. package/scripts/validate_decision_engine.py +1 -1
  573. package/scripts/validate_frontmatter.py +1 -1
  574. package/scripts/validate_safe_paths.py +3 -3
  575. package/scripts/{validate_caveman_carveouts.py → validate_telegraph_carveouts.py} +7 -7
  576. package/scripts/verify_roadmap_closure.py +6 -6
  577. package/templates/consumer-settings/ONBOARDING.md +41 -0
  578. package/.agent-src/commands/install-via-agent.md +0 -129
  579. package/.agent-src/skills/compress-memory/SKILL.md +0 -131
  580. package/dist/ui/assets/index-D-DY1ywI.js +0 -35
  581. package/dist/ui/assets/index-D-DY1ywI.js.map +0 -1
  582. package/dist/ui/assets/index-Dqfhmg-d.css +0 -1
  583. package/docs/adrs/caveman/README.md +0 -9
  584. package/docs/contracts/caveman-telemetry.md +0 -83
  585. package/scripts/compress.sh +0 -18
@@ -19,7 +19,7 @@ This contract defines the **schema** of the file-ownership matrix: the
19
19
  machine-readable JSON at `docs/contracts/file-ownership-matrix.json` and
20
20
  the human-readable mirror at
21
21
  `agents/settings/contexts/structural/file-ownership-matrix.md`. Both are
22
- regenerated from `.agent-src.uncompressed/` by the generator and locked
22
+ regenerated from `.agent-src.uncondensed/` by the generator and locked
23
23
  by CI.
24
24
 
25
25
  **Status:** internal-locked (`stability: beta`). Schema bumps require a
@@ -49,7 +49,7 @@ The JSON document is a single object:
49
49
  {
50
50
  "version": 1,
51
51
  "generated_by": "scripts/generate_ownership_matrix.py",
52
- "source_of_truth": ".agent-src.uncompressed/",
52
+ "source_of_truth": ".agent-src.uncondensed/",
53
53
  "files": {
54
54
  "<repo-root-relative path>": {
55
55
  "kind": "rule | skill | command | context | persona",
@@ -111,7 +111,7 @@ backstop; the consistency gate fails if regeneration drifts.
111
111
  ## Scope notes (v1)
112
112
 
113
113
  - **Greppable surface:** `rules/`, `skills/`, `commands/`, `contexts/`,
114
- `personas/` under `.agent-src.uncompressed/`. Generated tool
114
+ `personas/` under `.agent-src.uncondensed/`. Generated tool
115
115
  projections (`.augment/`, `.claude/`, `.cursor/`, …) are intentionally
116
116
  ignored — they are downstream of the source of truth.
117
117
  - **`skill:` frontmatter in rules** (named in roadmap 0.1.2) is reserved.
@@ -10,7 +10,7 @@ keep-beta-until: 2026-08-19
10
10
  > ADR is the decision; this file is the worked-example reference linters,
11
11
  > installer, and contributors cite at runtime.
12
12
 
13
- Every `.md` artefact under `.agent-src.uncompressed/` MUST declare the five
13
+ Every `.md` artefact under `.agent-src.uncondensed/` MUST declare the five
14
14
  ADR-013 discovery keys. The release-time manifest builder
15
15
  (`scripts/build_discovery_manifest.py`) derives all workspace/pack assignment
16
16
  from these alone — **no manual workspace or pack list is ever maintained**.
@@ -118,7 +118,7 @@ the linter rejects that collision.
118
118
  | Surface | What runs | When |
119
119
  |---|---|---|
120
120
  | Local | `task lint-artefact-frontmatter` | manual / pre-commit |
121
- | Pre-commit | `pre-commit-roadmap-progress` template | when `.agent-src.uncompressed/*.md`, `config/discovery/*.yml`, or the linter itself is staged |
121
+ | Pre-commit | `pre-commit-roadmap-progress` template | when `.agent-src.uncondensed/*.md`, `config/discovery/*.yml`, or the linter itself is staged |
122
122
  | CI | `task ci` → `lint-artefact-frontmatter` | every push / PR |
123
123
 
124
124
  Install the pre-commit hook with:
@@ -133,8 +133,8 @@ are staged.
133
133
 
134
134
  ## Roundtrip invariant
135
135
 
136
- Frontmatter survives the `task sync` compression pipeline. Path-bearing
136
+ Frontmatter survives the `task sync` condensation pipeline. Path-bearing
137
137
  keys (`load_context`) may be rewritten relative to the projected location,
138
138
  but the five Phase-1 keys above are byte-stable between
139
- `.agent-src.uncompressed/`, `.agent-src/`, and `.augment/`. Enforced by
139
+ `.agent-src.uncondensed/`, `.agent-src/`, and `.augment/`. Enforced by
140
140
  `tests/test_frontmatter_roundtrip.py`.
@@ -25,7 +25,7 @@ explicit `accept` step on `/ghostwriter:fetch` re-runs.
25
25
  profiles live here. **Gitignored by default** via the package-managed
26
26
  `.gitignore` block. A `--shared` opt-in to commit profiles is
27
27
  deferred to v2; only the doc note lands in v1.
28
- - **Package source** — `.agent-src.uncompressed/ghostwriter/` ships
28
+ - **Package source** — `.agent-src.uncondensed/ghostwriter/` ships
29
29
  the README, this schema doc, and `fictional: true` fixtures only.
30
30
  **Zero real-person profiles ever ship with the OSS package.** A CI
31
31
  lint (`task lint-ghostwriter-source`) enforces this rule by failing
@@ -181,7 +181,7 @@ attribution stays deterministic.
181
181
  fixtures are schema examples for a single canonical name; aliases are a
182
182
  consumer-only deployment feature. The package-source lint
183
183
  (`task lint-ghostwriter-source`) fails on `aliases:` in
184
- `.agent-src.uncompressed/ghostwriter/`.
184
+ `.agent-src.uncondensed/ghostwriter/`.
185
185
 
186
186
  ### Settings toggle (consumer-only)
187
187
 
@@ -293,7 +293,7 @@ instead of merging.
293
293
 
294
294
  The lint runs in `task ci` and fails on:
295
295
 
296
- 1. Any file under `.agent-src.uncompressed/ghostwriter/` whose stem is
296
+ 1. Any file under `.agent-src.uncondensed/ghostwriter/` whose stem is
297
297
  **not** on the fixture allowlist (`scripts/ghostwriter_fixture_allowlist.txt`).
298
298
  2. Any allowlisted file missing `fictional: true` in frontmatter.
299
299
  3. Any package-source file (`fictional: true`) carrying an `aliases:`
@@ -135,7 +135,7 @@ tracked under the Phase 6 follow-ups.
135
135
 
136
136
  `/api/apply` accepts a discriminated-union body keyed on
137
137
  `schema_version`. The full JSON Schema lives at
138
- [`schemas/wizard-apply-payload.schema.json`](../../schemas/wizard-apply-payload.schema.json).
138
+ [`internal/schemas/wizard-apply-payload.schema.json`](../../internal/schemas/wizard-apply-payload.schema.json).
139
139
 
140
140
  | `schema_version` | Variant | Shape |
141
141
  |---|---|---|
@@ -0,0 +1,123 @@
1
+ # Harness Expectations — when AI tool behaviour looks like a package bug but isn't
2
+
3
+ **Status:** Active (Phase D of `road-to-clean-skill-distribution-channels.md`)
4
+ **Owner:** maintainer-team
5
+ **Inputs:** Phase D roadmap steps + the 2026-05-25 misdiagnosis chat session that opened this track.
6
+
7
+ ## The case for this document
8
+
9
+ On 2026-05-25 a Claude Code session surfaced three behaviours that looked like `event4u/agent-config` bugs. Two of the three turned out to be **host-harness behaviour** the package has no control over. The third (cross-scope skill drift) was a real package-side bug fixed in Phases A–C. This document captures the host-side three so the next agent / onboarding session / opened issue does not re-run the misdiagnosis loop.
10
+
11
+ ## Class A — Plugin-namespaced peer skills
12
+
13
+ ### Symptom
14
+
15
+ The session shows skills under namespaces like `codex:`, `cc-gemini-plugin:`, or another `<vendor>:` prefix:
16
+
17
+ ```
18
+ - codex:setup
19
+ - cc-gemini-plugin:gemini-agent
20
+ - codex:rescue
21
+ ```
22
+
23
+ These names do NOT appear in `event4u/agent-config`'s skill catalog, the README, or the contracts.
24
+
25
+ ### What's actually happening
26
+
27
+ Claude Code (and similar harnesses) supports **sibling plugins** in addition to the primary `event4u/agent-config` install. Each sibling plugin owns its own skills, namespaced by the plugin id. The harness surfaces every loaded plugin's skills in the same `<available_skills>` list during the session.
28
+
29
+ - `codex:*` skills come from a sibling plugin that wraps the Codex CLI.
30
+ - `cc-gemini-plugin:*` skills come from a sibling plugin that wraps Gemini-CLI integration.
31
+
32
+ `event4u/agent-config` does not ship, control, or update these plugins. They are independent installs by independent maintainers.
33
+
34
+ ### What the package can do
35
+
36
+ Nothing — sibling plugins are out of scope by construction. The user can:
37
+
38
+ - Remove the sibling plugin if it is unwanted (via the harness's plugin management — outside this package).
39
+ - Ignore the namespaced names; they will not collide with this package's skill IDs because the prefix differs.
40
+
41
+ ### Where to look for the true source
42
+
43
+ Per Claude Code: `claude plugin list` (or equivalent) shows every loaded plugin. Each `<vendor>:` namespace traces back to a plugin row in that listing. Bug reports for those skills go to the respective plugin maintainer.
44
+
45
+ ## Class B — Deferred tools that need ToolSearch
46
+
47
+ ### Symptom
48
+
49
+ A session sees a `<system-reminder>` block like:
50
+
51
+ ```
52
+ The following deferred tools are now available via ToolSearch.
53
+ Their schemas are NOT loaded — calling them directly will fail with
54
+ InputValidationError. Use ToolSearch with query "select:<name>[,<name>...]"
55
+ to load tool schemas before calling them:
56
+ TaskCreate
57
+ WebFetch
58
+ Monitor
59
+ mcp__claude_ai_Linear__authenticate
60
+ ...
61
+ ```
62
+
63
+ The named tools are real — they show up in the harness's runtime — but the agent cannot call them directly because the tool **schema** isn't loaded yet.
64
+
65
+ ### What's actually happening
66
+
67
+ Claude Code's tool-loading is **context-budgeted**. The full tool registry (TaskCreate, WebFetch, every MCP tool from every registered server, etc.) can be many kilobytes of JSON-schema. Loading every schema on every turn would blow the context budget for routine reads. The harness solves this by registering tool **names** up-front and deferring schema load until `ToolSearch` is called — that's the on-ramp.
68
+
69
+ This is not a package issue, and `event4u/agent-config` cannot pre-load these schemas — the harness owns the budget.
70
+
71
+ ### What the package can do
72
+
73
+ Nothing — the loading strategy is the harness's contract with the model. Skills that want to use a deferred tool must:
74
+
75
+ 1. Run `ToolSearch` with `select:<name>` to load the schema.
76
+ 2. Call the tool with the now-known parameters.
77
+
78
+ Skills in this package that need deferred tools document the load step explicitly (see `agents-md-thin-root` § Tool loading for the pattern).
79
+
80
+ ### Where to look for the true source
81
+
82
+ Per Claude Code's documentation on tool surfaces and the `ToolSearch` primitive. The package does not own this behaviour.
83
+
84
+ ## Class C — Duplicate skill registration (real package bug, fixed in Phases A–C)
85
+
86
+ ### Symptom
87
+
88
+ The same skill appears twice in `<available_skills>` with different `description:` strings, or behaves inconsistently across calls.
89
+
90
+ ### What's actually happening
91
+
92
+ A user-global install (e.g. `~/.claude/skills/`) and a project-local install (`./.claude/skills/`) coexist at **different versions**. The harness loads both. The earlier register wins the description in some calls, the later in others.
93
+
94
+ Unlike Classes A and B, this is a real package-side issue.
95
+
96
+ ### What the package does
97
+
98
+ 1. **Default install is filesystem-only** ([`skill-distribution-channels.md`](skill-distribution-channels.md)).
99
+ 2. **Pre-flight scope guard** refuses installs that would create cross-scope drift ([`install-scopes.md`](install-scopes.md)).
100
+ 3. **Post-install probe** surfaces any remaining drift after install (`task probe:skills`).
101
+ 4. **Cleanup script** for stale other-scope installs (`bash scripts/cleanup_other_scope.sh --confirm`).
102
+
103
+ ### Where to look for the true source
104
+
105
+ ```bash
106
+ task probe:skills
107
+ ```
108
+
109
+ The probe lists every duplicate / drift finding with the exact source paths so the cause is visible in one read.
110
+
111
+ ## When in doubt — diagnostic sequence
112
+
113
+ 1. Run `task probe:skills` — rules out Class C.
114
+ 2. If the suspicious skill carries a `<vendor>:` prefix you don't recognise → Class A. Check `claude plugin list`.
115
+ 3. If the harness logs `deferred tools … available via ToolSearch` → Class B. The skill needs an explicit `ToolSearch` step.
116
+ 4. None of the above → file an issue at https://github.com/event4u-app/agent-config with the output of `task probe:skills` attached.
117
+
118
+ ## See also
119
+
120
+ - [`skill-distribution-channels.md`](skill-distribution-channels.md) — canonical channel per tool.
121
+ - [`install-scopes.md`](install-scopes.md) — scope guard contract.
122
+ - [`agents/evidence/audits/2026-05-distribution-channels/`](../../agents/evidence/audits/2026-05-distribution-channels/) — the underlying audits.
123
+ - [`README.md` § Harness expectations](../../README.md#harness-expectations) — front-of-house pointer to this contract.
@@ -1,3 +1,7 @@
1
+ ---
2
+ stability: experimental
3
+ ---
4
+
1
5
  # Host-Agent Protocol Contract
2
6
 
3
7
  > **Status** · v0 / inventory · 2026-05-24. The daily workspace shells out to
@@ -12,7 +12,7 @@ keep-beta-until: 2026-08-12
12
12
  > - **Created:** 2026-04-22
13
13
  > - **Status:** Phase 1 shipped 2026-04-23 — `DeliveryState` +
14
14
  > dispatcher live under
15
- > [`.agent-src.uncompressed/templates/scripts/implement_ticket/`](../../.agent-src.uncompressed/templates/scripts/implement_ticket/).
15
+ > [`.agent-src.uncondensed/templates/scripts/implement_ticket/`](../../.agent-src.uncondensed/templates/scripts/implement_ticket/).
16
16
  > Step wiring (Phase 2) still open. Schema **v1** envelope
17
17
  > (`work_engine.state` / `work_engine.migration.v0_to_v1`) shipped
18
18
  > 2026-04-27 as R1 Phase 2 — see [State schema v1](#state-schema-v1)
@@ -265,7 +265,7 @@ Bounded per the top-level roadmap rule:
265
265
  - **Four allowed types:** `domain-invariants`,
266
266
  `architecture-decisions`, `incident-learnings`,
267
267
  `historical-patterns`. All four exist in the
268
- [templates directory](../../.agent-src.uncompressed/templates/agents/memory/).
268
+ [templates directory](../../.agent-src.uncondensed/templates/agents/memory/).
269
269
  - **Keys:** files touched by the plan, symbols referenced by the
270
270
  ticket.
271
271
  - **Decision-change rule:** a memory hit that did not change an
@@ -278,7 +278,7 @@ Bounded per the top-level roadmap rule:
278
278
 
279
279
  Read from `.agent-settings.yml` `roles.active_role` and resolved
280
280
  via `resolve_policy()` in
281
- [`persona_policy.py`](../../.agent-src.uncompressed/templates/scripts/implement_ticket/persona_policy.py).
281
+ [`persona_policy.py`](../../.agent-src.uncondensed/templates/scripts/implement_ticket/persona_policy.py).
282
282
  Policies live alongside the dispatcher so the flow can consume
283
283
  them directly; the shared
284
284
  [`role-contracts`](../../docs/guidelines/agent-infra/role-contracts.md)
@@ -319,7 +319,7 @@ skill.
319
319
  When a step returns `blocked`, the orchestrator:
320
320
 
321
321
  1. Emits the numbered questions per
322
- [`user-interaction`](../../.agent-src.uncompressed/rules/user-interaction.md).
322
+ [`user-interaction`](../../.agent-src.uncondensed/rules/user-interaction.md).
323
323
  2. Writes a partial report up to the last successful step.
324
324
  3. Exits with a `blocked` status — no guess, no fallback.
325
325
 
@@ -332,7 +332,7 @@ the context. V1 explicitly does **not** attempt resumable sessions.
332
332
  Every step declares — in code — the conditions under which it
333
333
  can return `blocked`. The declarations live as module-level
334
334
  `AMBIGUITIES` tuples (see
335
- [`directives/backend/__init__.py`](../../.agent-src.uncompressed/templates/scripts/work_engine/directives/backend/__init__.py)
335
+ [`directives/backend/__init__.py`](../../.agent-src.uncondensed/templates/scripts/work_engine/directives/backend/__init__.py)
336
336
  `.all_ambiguities()`). The
337
337
  [`test_ambiguity_coverage.py`](../../tests/implement_ticket/test_ambiguity_coverage.py)
338
338
  suite locks the contract: adding a new `blocked` path without
@@ -377,7 +377,7 @@ empty, but all headings are present unless explicitly marked
377
377
  because nothing was changed.
378
378
 
379
379
  Implementation: see
380
- [`directives/backend/report.py`](../../.agent-src.uncompressed/templates/scripts/work_engine/directives/backend/report.py).
380
+ [`directives/backend/report.py`](../../.agent-src.uncondensed/templates/scripts/work_engine/directives/backend/report.py).
381
381
  Section renderers are pure and deterministic; consumers can rely
382
382
  on the heading order and on each section either rendering with
383
383
  content or being omitted per the rules above.
@@ -621,6 +621,6 @@ are blocked by `freeze-guard.yml::manifest-integrity` at PR time.
621
621
  - [`../../.github/workflows/freeze-guard.yml`](../../.github/workflows/freeze-guard.yml) — manifest-integrity + live-replay gates
622
622
  - [`agent-memory-contract.md`](agent-memory-contract.md)
623
623
  - [`../../docs/guidelines/agent-infra/role-contracts.md`](../../docs/guidelines/agent-infra/role-contracts.md)
624
- - [`../../.agent-src.uncompressed/rules/user-interaction.md`](../../.agent-src.uncompressed/rules/user-interaction.md)
625
- - [`../../.agent-src.uncompressed/rules/scope-control.md`](../../.agent-src.uncompressed/rules/scope-control.md)
626
- - [`../../.agent-src.uncompressed/rules/minimal-safe-diff.md`](../../.agent-src.uncompressed/rules/minimal-safe-diff.md)
624
+ - [`../../.agent-src.uncondensed/rules/user-interaction.md`](../../.agent-src.uncondensed/rules/user-interaction.md)
625
+ - [`../../.agent-src.uncondensed/rules/scope-control.md`](../../.agent-src.uncondensed/rules/scope-control.md)
626
+ - [`../../.agent-src.uncondensed/rules/minimal-safe-diff.md`](../../.agent-src.uncondensed/rules/minimal-safe-diff.md)
@@ -0,0 +1,77 @@
1
+ # Install Scopes — user-global vs project-local
2
+
3
+ **Status:** Active (locked 2026-05-25 via Phase B of `road-to-clean-skill-distribution-channels.md`)
4
+ **Owner:** maintainer-team
5
+ **Inputs:** [`docs/contracts/skill-distribution-channels.md`](skill-distribution-channels.md), [`agents/evidence/audits/2026-05-distribution-channels/03-installer-scope-flow.md`](../../agents/evidence/audits/2026-05-distribution-channels/03-installer-scope-flow.md)
6
+
7
+ ## Rule
8
+
9
+ `event4u/agent-config` may be installed at **one** of two scopes per developer machine:
10
+
11
+ | Scope | Lives at | Default for | Rationale |
12
+ |---|---|---|---|
13
+ | **project-local** | `<project-root>/.augment/`, `<project-root>/.claude/skills/`, … | Application repos | The skills, rules, and personas are pinned alongside the code they serve. The install is reproducible from the repo. |
14
+ | **user-global** | `~/.augment/`, `~/.claude/skills/`, … | Tooling repos / dotfiles | The same skills follow the developer across every project they touch. Useful when no specific repo "owns" the install. |
15
+
16
+ Installing at **both** scopes simultaneously is the failure mode the canonical-channel contract prevents — the host harness loads both registrations, and any version drift surfaces as duplicate skills with stale frontmatter (the 2026-05-25 bug).
17
+
18
+ ## The installer enforces this
19
+
20
+ `scripts/install.sh` runs `scripts/_lib/scope_guard.sh` before any file write:
21
+
22
+ 1. **`OK`** — no install at the other scope. Proceed.
23
+ 2. **`WARN`** — install at the other scope, same version. Same content; duplicate registration but no drift. Surface a warning, proceed.
24
+ 3. **`DRIFT`** — install at the other scope, different version. Block with a numbered-options prompt:
25
+
26
+ ```
27
+ 1. Abort install — fix drift first (recommended)
28
+ 2. Upgrade the OTHER scope first
29
+ 3. Force install at this scope — accept drift (set SCOPE_GUARD_BYPASS=1)
30
+ 4. Clean the other scope (bash scripts/cleanup_other_scope.sh --confirm)
31
+ ```
32
+
33
+ Non-interactive shells default to **abort**. CI runs and the orchestrator set `SCOPE_GUARD_BYPASS=1` to skip the gate.
34
+
35
+ The `agent-config setup` wizard exposes the same check at `GET /api/v1/wizard/scope-guard` (extended-mode endpoint). The first wizard step renders the verdict before the user picks an install scope.
36
+
37
+ ## How to clean a stale other-scope install
38
+
39
+ Use the companion script:
40
+
41
+ ```bash
42
+ # Dry-run (default) — list what would be removed
43
+ bash scripts/cleanup_other_scope.sh --user
44
+
45
+ # Confirm and delete
46
+ bash scripts/cleanup_other_scope.sh --user --confirm
47
+
48
+ # Narrow to a single tool
49
+ bash scripts/cleanup_other_scope.sh --user --confirm --tools=claude-code
50
+
51
+ # Remove from a specific project root
52
+ bash scripts/cleanup_other_scope.sh --project /path/to/proj --confirm
53
+ ```
54
+
55
+ The script refuses to delete anything without `--confirm` per `non-destructive-by-default`. It only touches the tool-scoped paths the contract names (`.claude/skills/`, `.augment/`, `.cursor/rules/`, `.clinerules/`, `.windsurf/rules/`, `.github/copilot-instructions.md`); the rest of the scope root is never modified.
56
+
57
+ ## When to pick which scope
58
+
59
+ - **App repo** (Laravel, Next.js, monorepo) → project-local. The skills/rules ship with the code; CI installs them deterministically.
60
+ - **Tooling repo** (dotfiles, personal sandbox) → user-global. The install follows the developer.
61
+ - **Both apply** (a tooling repo that also has project-specific overrides) → project-local for the overrides, no user-global install. The override mechanism at `agents/overrides/` covers the divergence.
62
+
63
+ The scope guard does **not** make the picking decision; it enforces "one scope per machine at one version".
64
+
65
+ ## Failure modes the guard catches
66
+
67
+ - A user installed `event4u/agent-config` globally a year ago, then `npx`d a recent project that pulled v3.x into `./.claude/skills/`. Same skill ID, different frontmatter on disk. Without the guard, the Claude session sees both registrations and the agent reasons against the wrong description.
68
+ - A maintainer ran `scripts/install.sh --target=$HOME` for a quick test and forgot to clean up. The next project install at the same scope spawns a drift the user has no easy way to debug.
69
+ - A CI run on a worker that previously cached `~/.claude/skills/` from a stale prior job. `CI=true` skips the gate, but the probe (Phase C) catches it post-install.
70
+
71
+ ## See also
72
+
73
+ - [`docs/contracts/skill-distribution-channels.md`](skill-distribution-channels.md) — per-tool canonical channel.
74
+ - [`scripts/_lib/scope_guard.sh`](../../scripts/_lib/scope_guard.sh) — guard implementation.
75
+ - [`scripts/cleanup_other_scope.sh`](../../scripts/cleanup_other_scope.sh) — companion cleanup.
76
+ - [`tests/test_cleanup_other_scope.py`](../../tests/test_cleanup_other_scope.py) — safety regression.
77
+ - [`README.md` § Installation](../../README.md) — consumer-facing install path.
@@ -15,7 +15,7 @@
15
15
  # ADR-002 (2026-05-06) — kernel-bucket cap raise + per-rule overrides.
16
16
  # Source: docs/decisions/ADR-002-kernel-bucket-overrides.md
17
17
  # Empirical r_actual=0.795 vs r_projected=0.712. The 6 rules below carry
18
- # Iron-Law fences + non-externalisable enumerations; further compression
18
+ # Iron-Law fences + non-externalisable enumerations; further condensation
19
19
  # would force semantic loss. All sit ≤ 4 000-char override ceiling.
20
20
  ask-when-uncertain
21
21
  direct-answers
@@ -10,7 +10,7 @@ keep-beta-until: 2026-08-12
10
10
  > · **Source of truth:** `docs/contracts/rule-classification.md` § 3.1
11
11
  > · **Pilot artifacts:** `docs/contracts/pilot/`
12
12
 
13
- Locks the kernel set and the empirical compression rate `r` derived
13
+ Locks the kernel set and the empirical condensation rate `r` derived
14
14
  from the P1.3 pilot. Phase 2.2 executes against this contract.
15
15
 
16
16
  ## § 1 — Inclusion criteria (kernel-only)
@@ -37,7 +37,7 @@ A rule belongs in the kernel iff it satisfies **all** of:
37
37
  `no-cheap-questions` are first-class kernel members even though
38
38
  they fire during deliberation, not strictly pre-send.)*
39
39
 
40
- All other rules → `compress-and-keep` (auto-tier) or migrate to
40
+ All other rules → `condense-and-keep` (auto-tier) or migrate to
41
41
  skill / guideline per `rule-classification.md`.
42
42
 
43
43
  > **Council amendment (P1.4).** Criterion #3 originally read "must be
@@ -49,12 +49,12 @@ skill / guideline per `rule-classification.md`.
49
49
  > existing 9-rule kernel set. See
50
50
  > `agents/runtime/council/sessions/20260506T044941Z-phase1-cross-check-r2.json`. <!-- council-ref-allowed: contract decision trace -->
51
51
 
52
- ## § 2 — Empirical compression rate (pilot)
52
+ ## § 2 — Empirical condensation rate (pilot)
53
53
 
54
54
  Pilot picks (per P1.3 algorithm: shortest / median / longest of the 9
55
55
  always-rules in `rule-classification.md` § 3.1):
56
56
 
57
- | pilot | original | compressed | r | per-rule cap (2.5k) | Iron-Law SHA |
57
+ | pilot | original | condensed | r | per-rule cap (2.5k) | Iron-Law SHA |
58
58
  |---|---:|---:|---:|---|---|
59
59
  | agent-authority | 1217 | 1020 | 0.838 | OK | match (`e3b0c442…`) |
60
60
  | direct-answers | 3991 | 2841 | 0.712 | +341 over | match (`ef438530…`) |
@@ -65,21 +65,21 @@ always-rules in `rule-classification.md` § 3.1):
65
65
  | mean r (outlier-skewed by lean pilot) | 0.742 |
66
66
  | **median r** (locked for projection) | **0.712** |
67
67
  | max r (already-lean floor) | 0.838 |
68
- | min r (most compressible) | 0.677 |
68
+ | min r (most condensable) | 0.677 |
69
69
 
70
70
  Locked `r = 0.712` (median) for P2.2 projection. Council amendment
71
71
  (P1.4) — the original lock was the **mean** (0.742), but Sonnet 4.5
72
72
  flagged outlier skew: `agent-authority` at 1217 chars pre-pilot was
73
- already near the compression floor (`r = 0.838`), pulling the mean
73
+ already near the condensation floor (`r = 0.838`), pulling the mean
74
74
  above the typical band. Median (0.712) is robust to the lean
75
75
  outlier and sits inside the roadmap-stated 0.6–0.75 band. Risk
76
- asymmetry confirms the choice: under-estimating compressed size
76
+ asymmetry confirms the choice: under-estimating condensed size
77
77
  blows the 25k cap mid-P2.2 (no abort path); over-estimating just
78
78
  yields headroom. GPT-4o concurred. Source:
79
79
  `agents/runtime/council/sessions/20260506T044941Z-phase1-cross-check-r2.json`. <!-- council-ref-allowed: contract decision trace -->
80
80
 
81
81
  **Pilot caveat — already-lean floor.** `agent-authority` (1217 chars
82
- pre-pilot) yielded only `r = 0.838`. Pre-compressed rules give less
82
+ pre-pilot) yielded only `r = 0.838`. Pre-condensed rules give less
83
83
  back; rules > 3k chars give more back. Future kernel additions
84
84
  ≤ 1.5k chars should not assume the median — they may already be at
85
85
  floor.
@@ -117,7 +117,7 @@ absorbs pilot variance for the 6 untested rules.
117
117
 
118
118
  ### § 4.1 — Post-P2.2 locked kernel (empirical, 2026-05-06)
119
119
 
120
- P2.2 applied compression (imperative rewrite, examples → guidelines,
120
+ P2.2 applied condensation (imperative rewrite, examples → guidelines,
121
121
  rationale → contexts) + verified Iron-Law fence preservation.
122
122
  Empirical r=0.795 (vs 0.712 projected). Bucket cap raised 25k → 26k
123
123
  via `docs/decisions/ADR-002-kernel-bucket-overrides.md`. Six rules
@@ -164,7 +164,7 @@ until the next kernel re-measurement.
164
164
 
165
165
  † **agent-authority swap candidate (P1.4 ADR).** Sonnet 4.5 argues
166
166
  this is a routing index (zero Iron Law fences, dispatches to other
167
- kernel rules) and should be `compress-and-keep` (auto-tier-3),
167
+ kernel rules) and should be `condense-and-keep` (auto-tier-3),
168
168
  freeing 867 projected chars. The Council also recommends promoting
169
169
  `autonomous-execution` (5631 → 4009 projected) into kernel as a
170
170
  mode-independent Band-4 authority. Net effect: 23071 − 867 + 4009 =
@@ -191,10 +191,10 @@ Both Council members concurred — the original 1.5k figure forced 8 of
191
191
  The 2.5k cap fits 7 of 9 rules without ADR; only the two largest
192
192
  remain as legitimate Iron-Law-density exceptions.
193
193
 
194
- Rules that land **above the 2.5k per-rule cap** even after compression
194
+ Rules that land **above the 2.5k per-rule cap** even after condensation
195
195
  and Iron-Law preservation:
196
196
 
197
- | rule | post-compression chars | over-cap (2.5k) | reason cap cannot be hit |
197
+ | rule | post-condensation chars | over-cap (2.5k) | reason cap cannot be hit |
198
198
  |---|---:|---:|---|
199
199
  | direct-answers | 2842 | +342 | Three Iron-Law fences (≈ 470 chars) + severity-tiered claim table required for invented-facts gate |
200
200
  | language-and-tone | 3786 | +1286 | Iron-Law fence + exhaustive user-visible-prose catalog + pre-send gate are co-load-bearing |
@@ -204,12 +204,12 @@ and Iron-Law preservation:
204
204
  ADR (see § 5.2).
205
205
 
206
206
  Per roadmap § "Iron-Law over budget = ADR exception, not auto-
207
- compress" — these surface as `iron-law-override` exceptions for P2.1
207
+ condense" — these surface as `iron-law-override` exceptions for P2.1
208
208
  to gate behind ADRs in `docs/decisions/`.
209
209
 
210
210
  The remaining 6 always-rules project to 1669–2916 chars post-
211
- compression — all under the 2.5k cap with no ADR needed. P2.2
212
- measures the real post-compression sizes; if any breach the cap, an
211
+ condensation — all under the 2.5k cap with no ADR needed. P2.2
212
+ measures the real post-condensation sizes; if any breach the cap, an
213
213
  ADR lands per-rule.
214
214
 
215
215
  ### § 5.2 — Kernel-set swap ADR (agent-authority ↔ autonomous-execution)
@@ -236,19 +236,19 @@ clearing the way for the swap under a fresh ADR.
236
236
 
237
237
  ## § 6 — Abort criteria for P2.2
238
238
 
239
- **Council amendment (P1.4).** Sonnet 4.5 flagged that P2.2 compresses
239
+ **Council amendment (P1.4).** Sonnet 4.5 flagged that P2.2 condenses
240
240
  in place with no defined abort path. The following triggers force
241
241
  revert + re-projection rather than mid-phase scramble:
242
242
 
243
243
  - **Iron-Law drift.** Any kernel rule loses Iron-Law SHA equivalence
244
- after compression (whitespace-normalised, case-folded fence-block
245
- content). Single occurrence aborts the rule's compression.
246
- - **Bucket overflow.** Kernel sum post-compression > 27 500 chars
244
+ after condensation (whitespace-normalised, case-folded fence-block
245
+ content). Single occurrence aborts the rule's condensation.
246
+ - **Bucket overflow.** Kernel sum post-condensation > 27 500 chars
247
247
  (10 % over hard cap). Aborts the entire P2.2 phase.
248
- - **Single-rule runaway.** Any kernel rule post-compression
249
- > 4 000 chars. Aborts that rule's compression; flag for ADR.
248
+ - **Single-rule runaway.** Any kernel rule post-condensation
249
+ > 4 000 chars. Aborts that rule's condensation; flag for ADR.
250
250
  - **Empirical r drift.** Median of measured r across the first 4
251
- compressed rules deviates > 0.10 from the locked 0.712 (i.e.,
251
+ condensed rules deviates > 0.10 from the locked 0.712 (i.e.,
252
252
  measured median outside [0.612, 0.812]). P2.2 pauses, re-locks r,
253
253
  re-runs § 3 projection.
254
254
 
@@ -266,10 +266,10 @@ with the trigger-relaxed parameter, lock new value, re-attempt.
266
266
 
267
267
  ## § 8 — What this contract does NOT do
268
268
 
269
- - It does **not** edit any source rule. P2.2 ships compression to
270
- `.agent-src.uncompressed/rules/`.
269
+ - It does **not** edit any source rule. P2.2 ships condensation to
270
+ `.agent-src.uncondensed/rules/`.
271
271
  - It does **not** lock per-rule `chars` (only the bucket sum). Per-
272
- rule values are projections; P2.2 measures real post-compression.
272
+ rule values are projections; P2.2 measures real post-condensation.
273
273
  - It does **not** decide kernel additions. Adding a rule to the
274
274
  kernel requires an ADR per roadmap § "Sequencing-drift time-box"
275
275
  and re-runs P1.3 with the new candidate.
@@ -288,4 +288,4 @@ with the trigger-relaxed parameter, lock new value, re-attempt.
288
288
  | 2026-05-06 | `agents/runtime/council/sessions/20260506T044821Z-phase1-cross-check.json` | Council R1 (truncated at 1024 tokens) | <!-- council-ref-allowed: contract decision trace -->
289
289
  | 2026-05-06 | `agents/runtime/council/sessions/20260506T044941Z-phase1-cross-check-r2.json` | Council R2 (3500 tokens) — locks median r, splits criterion #3, adds criterion #5, raises per-rule cap to 2.5k, defines abort criteria | <!-- council-ref-allowed: contract decision trace -->
290
290
  | 2026-05-06 | this file | kernel set locked: 9 rules, projected 23 071 chars (median r = 0.712) |
291
- | 2026-05-06 | P2.2 compression + `scripts/iron_law_sha.py --all-kernel` | empirical: 25 590 chars (r_actual = 0.795 across kernel; longer rules compress less than the pilot median) — see `docs/decisions/ADR-002-kernel-bucket-overrides.md` (KERNEL_HARD raised 25k → 26k, 6 per-rule overrides ≤ 4k ceiling, all Iron-Law SHAs preserved) |
291
+ | 2026-05-06 | P2.2 condensation + `scripts/iron_law_sha.py --all-kernel` | empirical: 25 590 chars (r_actual = 0.795 across kernel; longer rules condense less than the pilot median) — see `docs/decisions/ADR-002-kernel-bucket-overrides.md` (KERNEL_HARD raised 25k → 26k, 6 per-rule overrides ≤ 4k ceiling, all Iron-Law SHAs preserved) |
@@ -130,7 +130,7 @@ persistence on cloud platforms; the rule is a no-op.
130
130
  partitions workspace / team / personal. Step 3 only needs to
131
131
  document the three-layer rationale for the README.
132
132
  - Re-classify on every audit run; if a rule is added to
133
- `.agent-src.uncompressed/rules/`, this document MUST gain a row.
133
+ `.agent-src.uncondensed/rules/`, this document MUST gain a row.
134
134
 
135
135
  ## Source of tier data
136
136
 
@@ -88,7 +88,7 @@ procedure → no warning under the new model. ✓ roadmap success criterion.
88
88
  success criterion.
89
89
 
90
90
  Of 13 commands ≥ 1000 words, only **2** lack a delegation signal —
91
- both are candidates for Phase 4.1 review (`compress.md`,
91
+ both are candidates for Phase 4.1 review (`condense.md`,
92
92
  `project-analyze.md`; the latter has density 0.86, exempt under the
93
93
  density-AND-delegation gate).
94
94
 
@@ -115,7 +115,7 @@ Calibration sweep on the 2026-05-08 corpus (310 artifacts):
115
115
  Pass rate: 186 → 209 (`pass`); 124 → 101 (`pass_with_warnings`); 0
116
116
  errors. Each remaining warning is a genuine structural defect:
117
117
 
118
- - `compress.md` (1569 words, density 0.58, no delegation signal) —
118
+ - `condense.md` (1569 words, density 0.58, no delegation signal) —
119
119
  inlined logic in a non-orchestrator command.
120
120
  - `artifact-drafting-protocol.md` rule (65 lines, density 0.37, no
121
121
  Iron-Law block) — prose-dominant long rule.
@@ -44,10 +44,10 @@ Where:
44
44
  (per [`load-context-schema.md`](load-context-schema.md)).
45
45
  - `transitive_closure` walks `load_context:` declarations on
46
46
  context files **up to depth 2** — see § Nesting cap below.
47
- - `RawSize` is the byte size of the compressed file
47
+ - `RawSize` is the byte size of the condensed file
48
48
  (`.agent-src/...`), measured by `os.path.getsize()`. The
49
- uncompressed source paths in frontmatter are mapped to their
50
- compressed counterparts before sizing.
49
+ uncondensed source paths in frontmatter are mapped to their
50
+ condensed counterparts before sizing.
51
51
  - A context loaded by N always-rules counts **N times** (once per
52
52
  loading rule). Rationale: the always-budget protects context-window
53
53
  utilization at activation time; if rule A and rule B both fire on
@@ -138,7 +138,7 @@ the full `RawSize(X)` under Model (b). No `chars(X) / N` discount.
138
138
  has no measurable upside.
139
139
  - Phase 4c (shared-context discount) becomes a no-op under 3a.
140
140
  Phase 4 leverage shifts to 4a (demote), 4b (merge), and 4d
141
- (hard-compress) — see `road-to-context-layer-maturity` Phase 4
141
+ (hard-condense) — see `road-to-context-layer-maturity` Phase 4
142
142
  inputs gate.
143
143
 
144
144
  **Reopener:** if a future inventory shows ≥ 3 shared-context loaders