@event4u/agent-config 3.3.0 → 4.2.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 (561) 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 +216 -3
  144. package/CONTRIBUTING.md +31 -12
  145. package/README.md +21 -12
  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/atomic.js +92 -0
  164. package/dist/install/atomic.js.map +1 -0
  165. package/dist/install/conflict.js +196 -0
  166. package/dist/install/conflict.js.map +1 -0
  167. package/dist/install/detect.js +218 -0
  168. package/dist/install/detect.js.map +1 -0
  169. package/dist/install/paths.js +82 -0
  170. package/dist/install/paths.js.map +1 -0
  171. package/dist/install/plan.js +157 -0
  172. package/dist/install/plan.js.map +1 -0
  173. package/dist/install/txlog.js +140 -0
  174. package/dist/install/txlog.js.map +1 -0
  175. package/dist/install/types.js +19 -0
  176. package/dist/install/types.js.map +1 -0
  177. package/dist/install/wizard-plan.js +184 -0
  178. package/dist/install/wizard-plan.js.map +1 -0
  179. package/dist/mcp/registry-manifest.json +4 -4
  180. package/dist/router.json +67 -19
  181. package/dist/server/app.js +6 -0
  182. package/dist/server/app.js.map +1 -1
  183. package/dist/server/routes/install.js +358 -0
  184. package/dist/server/routes/install.js.map +1 -0
  185. package/dist/server/routes/wizard.js +468 -32
  186. package/dist/server/routes/wizard.js.map +1 -1
  187. package/dist/server/routes/workspace.js +396 -0
  188. package/dist/server/routes/workspace.js.map +1 -0
  189. package/dist/server/schemas/settings.js +5 -3
  190. package/dist/server/schemas/settings.js.map +1 -1
  191. package/dist/ui/assets/index-BDAhhpDV.js +40 -0
  192. package/dist/ui/assets/index-BDAhhpDV.js.map +1 -0
  193. package/dist/ui/assets/index-BXZILUxe.css +1 -0
  194. package/dist/ui/index.html +2 -2
  195. package/docs/MIGRATION.md +1 -1
  196. package/docs/adrs/cost/0001-hard-stop-hook.md +1 -1
  197. package/docs/adrs/router/0001-three-tier-routing.md +4 -4
  198. package/docs/adrs/schema/0001-json-schema-frontmatter.md +1 -1
  199. package/docs/adrs/smoke/0001-per-tier-smoke-scripts.md +4 -4
  200. package/docs/adrs/{caveman → telegraph}/0001-default-off-until-bench.md +9 -9
  201. package/docs/adrs/telegraph/README.md +9 -0
  202. package/docs/architecture/augment-projection.md +4 -4
  203. package/docs/architecture/claude-bundle.md +1 -1
  204. package/docs/architecture/current-onboard-baseline.md +3 -3
  205. package/docs/architecture/multi-tool-projection.md +10 -10
  206. package/docs/architecture/source-projection.md +27 -27
  207. package/docs/architecture.md +19 -15
  208. package/docs/archive/CHANGELOG-pre-2.11.0.md +2 -2
  209. package/docs/archive/CHANGELOG-pre-2.15.0.md +3 -3
  210. package/docs/archive/CHANGELOG-pre-2.16.0.md +1 -1
  211. package/docs/archive/CHANGELOG-pre-2.2.0.md +70 -70
  212. package/docs/archive/CHANGELOG-pre-2.20.0.md +2 -2
  213. package/docs/archive/CHANGELOG-pre-2.25.0.md +15 -15
  214. package/docs/archive/CHANGELOG-pre-3.0.0.md +4 -4
  215. package/docs/archive/CHANGELOG-pre-3.1.0.md +2 -2
  216. package/docs/archive/CHANGELOG-pre-3.2.0.md +3 -3
  217. package/docs/benchmark.md +65 -0
  218. package/docs/benchmarks.md +16 -16
  219. package/docs/catalog.md +17 -15
  220. package/docs/contracts/CHANGELOG-conventions.md +1 -1
  221. package/docs/contracts/STABILITY.md +2 -2
  222. package/docs/contracts/adoption-signal-floor.md +110 -0
  223. package/docs/contracts/adr-chat-history-split.md +4 -4
  224. package/docs/contracts/adr-command-suggestion.md +4 -4
  225. package/docs/contracts/adr-gtm-context-spine.md +1 -1
  226. package/docs/contracts/adr-implement-ticket-runtime.md +4 -4
  227. package/docs/contracts/adr-install-user-type-axis.md +1 -1
  228. package/docs/contracts/adr-layout.md +2 -2
  229. package/docs/contracts/adr-product-ui-track.md +10 -10
  230. package/docs/contracts/adr-user-types-axis.md +3 -3
  231. package/docs/contracts/adr-wing4-context-spine.md +1 -1
  232. package/docs/contracts/agent-memory-contract.md +3 -3
  233. package/docs/contracts/agents-md-tech-stack.md +2 -2
  234. package/docs/contracts/ai-council-config.md +2 -2
  235. package/docs/contracts/at-rest-encryption.md +4 -0
  236. package/docs/contracts/audit-log-v1.md +1 -1
  237. package/docs/contracts/benchmark-ab-contract.md +101 -0
  238. package/docs/contracts/benchmark-corpus-spec.md +1 -1
  239. package/docs/contracts/branch-protection-policy.md +98 -0
  240. package/docs/contracts/ci-cost-budget.md +106 -0
  241. package/docs/contracts/ci-green-floor.md +141 -0
  242. package/docs/contracts/command-clusters.md +6 -6
  243. package/docs/contracts/command-surface-tiers.md +2 -2
  244. package/docs/contracts/command-taxonomy.md +2 -2
  245. package/docs/contracts/{compression-default-kill-criterion.md → condensation-default-kill-criterion.md} +29 -29
  246. package/docs/contracts/config-presets.md +1 -1
  247. package/docs/contracts/context-paths.md +3 -3
  248. package/docs/contracts/context-spine.md +1 -1
  249. package/docs/contracts/cost-summary-schema.md +12 -12
  250. package/docs/contracts/cross-wing-handoff.md +4 -4
  251. package/docs/contracts/daily-workspace.md +4 -0
  252. package/docs/contracts/decision-trace-v1.md +2 -2
  253. package/docs/contracts/discovery-manifest.md +4 -4
  254. package/docs/contracts/explain-modes.md +4 -0
  255. package/docs/contracts/file-ownership-matrix.json +3493 -3318
  256. package/docs/contracts/file-ownership-matrix.md +3 -3
  257. package/docs/contracts/frontmatter-contract.md +4 -4
  258. package/docs/contracts/ghostwriter-schema.md +3 -3
  259. package/docs/contracts/gui-wizard.md +110 -97
  260. package/docs/contracts/harness-expectations.md +123 -0
  261. package/docs/contracts/host-agent-protocol.md +4 -0
  262. package/docs/contracts/implement-ticket-flow.md +9 -9
  263. package/docs/contracts/install-scopes.md +77 -0
  264. package/docs/contracts/iron-law-overrides.txt +1 -1
  265. package/docs/contracts/kernel-membership.md +26 -26
  266. package/docs/contracts/linear-ai-rules-inclusion.md +1 -1
  267. package/docs/contracts/linter-structural-model.md +2 -2
  268. package/docs/contracts/load-context-budget-model.md +4 -4
  269. package/docs/contracts/load-context-schema.md +13 -13
  270. package/docs/contracts/local-analytics.md +4 -0
  271. package/docs/contracts/local-knowledge-ingestion.md +1 -1
  272. package/docs/contracts/mcp-cloud-scope.md +2 -2
  273. package/docs/contracts/mcp-phase-1-scope.md +3 -3
  274. package/docs/contracts/measurement-baseline.md +5 -5
  275. package/docs/contracts/mental-models.md +30 -30
  276. package/docs/contracts/multi-tool-projection-fidelity.md +4 -4
  277. package/docs/contracts/namespace.md +4 -4
  278. package/docs/contracts/orchestration-dsl-v1.md +7 -7
  279. package/docs/contracts/package-self-orientation.md +12 -12
  280. package/docs/contracts/persona-schema.md +6 -6
  281. package/docs/contracts/pilot/language-and-tone.md +1 -1
  282. package/docs/contracts/plain-language-surface.md +117 -0
  283. package/docs/contracts/profile-system.md +3 -3
  284. package/docs/contracts/release-pr-gating.md +103 -0
  285. package/docs/contracts/role-experience.md +3 -3
  286. package/docs/contracts/rule-classification.md +13 -13
  287. package/docs/contracts/rule-interactions.md +4 -4
  288. package/docs/contracts/rule-interactions.yml +30 -30
  289. package/docs/contracts/rule-priority-hierarchy.md +13 -13
  290. package/docs/contracts/rule-router.md +2 -2
  291. package/docs/contracts/safety-model.md +1 -1
  292. package/docs/contracts/skill-distribution-channels.md +61 -0
  293. package/docs/contracts/skill-domains.md +2 -2
  294. package/docs/contracts/smoke-contracts.md +5 -5
  295. package/docs/contracts/telegraph-telemetry.md +83 -0
  296. package/docs/contracts/trust-and-safety.md +5 -5
  297. package/docs/contracts/ui-stack-extension.md +7 -7
  298. package/docs/contracts/ui-track-flow.md +9 -9
  299. package/docs/contracts/user-type-schema.md +4 -4
  300. package/docs/contracts/workflow-packs.md +4 -4
  301. package/docs/contracts/workspace-documents.md +4 -0
  302. package/docs/customization.md +28 -8
  303. package/docs/decisions/ADR-001-kernel-swap-deferred.md +6 -6
  304. package/docs/decisions/ADR-002-kernel-bucket-overrides.md +11 -11
  305. package/docs/decisions/ADR-003-flat-cluster-subs-and-colon-syntax.md +2 -2
  306. package/docs/decisions/ADR-004-rule-governance-pruning.md +4 -4
  307. package/docs/decisions/ADR-005-subagent-worktrees.md +7 -7
  308. package/docs/decisions/ADR-011-domain-pack-readiness.md +6 -6
  309. package/docs/decisions/ADR-013-discovery-frontmatter-contract.md +3 -3
  310. package/docs/decisions/ADR-015-discovery-manifest-contract.md +3 -3
  311. package/docs/decisions/ADR-017-monorepo-physical-layout.md +10 -10
  312. package/docs/decisions/ADR-018-trust-and-safety-layer.md +6 -6
  313. package/docs/decisions/ADR-019-router-json-dist-location.md +2 -2
  314. package/docs/decisions/ADR-020-global-only-consumer-scope.md +2 -2
  315. package/docs/decisions/ADR-021-deployment-shape.md +3 -3
  316. package/docs/decisions/ADR-022-daily-workspace-decomposition.md +1 -1
  317. package/docs/decisions/ADR-027-changelog-machine-vs-manual.md +2 -2
  318. package/docs/decisions/ADR-028-root-layout.md +7 -7
  319. package/docs/decisions/ADR-029-multi-workspace-deferred.md +2 -2
  320. package/docs/decisions/ADR-rule-kernel-and-router.md +5 -5
  321. package/docs/deploy/connector-setup.md +2 -2
  322. package/docs/deploy/policy-cookbook.md +2 -2
  323. package/docs/deploy/team-deployment-posture.md +20 -0
  324. package/docs/development.md +17 -17
  325. package/docs/distribution/registries.md +32 -0
  326. package/docs/distribution/registry-submissions.md +85 -0
  327. package/docs/distribution/telemetry-schema.md +1 -1
  328. package/docs/getting-started-by-role.md +45 -3
  329. package/docs/getting-started.md +2 -2
  330. package/docs/guidelines/agent-infra/5w2h-analysis.md +3 -3
  331. package/docs/guidelines/agent-infra/ask-when-uncertain-demos.md +1 -1
  332. package/docs/guidelines/agent-infra/asking-and-brevity-examples.md +3 -3
  333. package/docs/guidelines/agent-infra/carve-out-predicates.md +3 -3
  334. package/docs/guidelines/agent-infra/critical-thinking.md +4 -4
  335. package/docs/guidelines/agent-infra/direct-answers-demos.md +1 -1
  336. package/docs/guidelines/agent-infra/first-principles.md +2 -2
  337. package/docs/guidelines/agent-infra/inversion-thinking.md +5 -5
  338. package/docs/guidelines/agent-infra/layered-settings.md +56 -2
  339. package/docs/guidelines/agent-infra/mental-models.md +3 -3
  340. package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +2 -2
  341. package/docs/guidelines/agent-infra/rule-type-governance.md +1 -1
  342. package/docs/guidelines/agent-infra/scqa-framework.md +5 -5
  343. package/docs/guidelines/agent-infra/self-improvement-pipeline.md +2 -2
  344. package/docs/guidelines/agent-infra/six-hats.md +3 -3
  345. package/docs/guidelines/agent-infra/skill-quality-checklist.md +5 -5
  346. package/docs/guidelines/agent-infra/systems-thinking.md +1 -1
  347. package/docs/guidelines/agent-infra/verify-before-complete-demos.md +1 -1
  348. package/docs/guidelines/augment-portability-patterns.md +4 -4
  349. package/docs/guidelines/cross-role-handoff.md +2 -2
  350. package/docs/guidelines/php/php-coding-patterns.md +1 -1
  351. package/docs/guidelines/prompt-templates.md +6 -6
  352. package/docs/maintainers/dev-mode.md +1 -1
  353. package/docs/mcp.md +1 -1
  354. package/docs/parity/bench.json +3 -3
  355. package/docs/parity/ruflo.md +2 -2
  356. package/docs/profiles.md +11 -11
  357. package/docs/quality.md +11 -11
  358. package/docs/safety.md +3 -3
  359. package/docs/setup/mcp-client-config.md +1 -1
  360. package/docs/setup/mcp-r2-bootstrap.md +1 -1
  361. package/docs/setup/mcp-server-docker.md +3 -3
  362. package/docs/setup/per-ide/windsurf.md +1 -1
  363. package/docs/skills-catalog.md +8 -7
  364. package/docs/troubleshooting.md +1 -1
  365. package/docs/walkthroughs/daily-workspace-a11y.md +87 -0
  366. package/llms.txt +7 -6
  367. package/package.json +1 -1
  368. package/scripts/__pycache__/validate_frontmatter.cpython-312.pyc +0 -0
  369. package/scripts/_archive/README.md +2 -2
  370. package/scripts/_archive/_backfill_skill_domains.py +3 -3
  371. package/scripts/_archive/_bootstrap_tier_frontmatter.py +3 -3
  372. package/scripts/_archive/_p43_bodies.py +10 -10
  373. package/scripts/_archive/{_p43_compress.py → _p43_condense.py} +5 -5
  374. package/scripts/_archive/_p4_migrate.py +7 -7
  375. package/scripts/_archive/_phase2_shim_helper.py +1 -1
  376. package/scripts/_archive/_pilot_council_question.py +5 -5
  377. package/scripts/_cli/explain_last/inputs.py +1 -1
  378. package/scripts/_lib/__pycache__/__init__.cpython-312.pyc +0 -0
  379. package/scripts/_lib/__pycache__/agent_src.cpython-312.pyc +0 -0
  380. package/scripts/_lib/agent_settings.py +195 -1
  381. package/scripts/_lib/agent_src.py +19 -19
  382. package/scripts/_lib/bench_ab_cache.py +162 -0
  383. package/scripts/_lib/bench_ab_scoring.py +209 -0
  384. package/scripts/_lib/{bench_caveman.py → bench_telegraph.py} +21 -21
  385. package/scripts/_lib/{bench_caveman_report.py → bench_telegraph_report.py} +21 -21
  386. package/scripts/_lib/claude_desktop_bundler.py +5 -5
  387. package/scripts/_lib/module_detection.py +223 -0
  388. package/scripts/_lib/scope_guard.sh +162 -0
  389. package/scripts/_phase4_bucket.py +3 -3
  390. package/scripts/_pilot_measure.py +4 -4
  391. package/scripts/_tmp_scan_framework_leakage.py +1 -1
  392. package/scripts/adoption_report.py +195 -0
  393. package/scripts/adoption_snapshot.py +219 -0
  394. package/scripts/adoption_status.py +166 -0
  395. package/scripts/ai-video/lib/parse-blueprint.sh +1 -1
  396. package/scripts/ai_council/advisors.py +5 -5
  397. package/scripts/ai_council/compile_corpus.py +1 -1
  398. package/scripts/ai_council/one_off_archive/2026-05/_one_off_budget_v2_audit.py +3 -3
  399. package/scripts/ai_council/one_off_archive/2026-05/_one_off_context_layer_v1_review.py +2 -2
  400. package/scripts/ai_council/one_off_archive/2026-05/_one_off_inject_quiet_flag.py +1 -1
  401. package/scripts/ai_council/one_off_archive/2026-05/_one_off_measure_v2.sh +1 -1
  402. package/scripts/ai_council/one_off_archive/2026-05/_one_off_measure_verbosity.sh +1 -1
  403. package/scripts/ai_council/one_off_archive/2026-05/_one_off_nondestructive_inline_audit.py +3 -3
  404. package/scripts/ai_council/one_off_archive/2026-05/_one_off_per_task.sh +1 -1
  405. package/scripts/ai_council/one_off_archive/2026-05/_one_off_phase6_trigger_jaccard.py +1 -1
  406. package/scripts/ai_council/one_off_archive/2026-05/_one_off_phase_2a_budget_rebalance.py +6 -6
  407. package/scripts/ai_council/one_off_archive/2026-05/_one_off_rebalancing_audit.py +1 -1
  408. package/scripts/ai_council/one_off_archive/2026-05/_one_off_tier_retrofit.py +6 -6
  409. package/scripts/annotate_discovery.py +13 -13
  410. package/scripts/apply_modules_config.py +290 -0
  411. package/scripts/audit_adr_coverage.py +2 -2
  412. package/scripts/audit_auto_rules.py +2 -2
  413. package/scripts/audit_cloud_compatibility.py +3 -3
  414. package/scripts/audit_command_surface.py +9 -9
  415. package/scripts/audit_likelihood.py +2 -2
  416. package/scripts/audit_user_type_axis.py +2 -2
  417. package/scripts/bench_ab_cache_dispatch.py +68 -0
  418. package/scripts/bench_ab_clone.py +170 -0
  419. package/scripts/bench_ab_diff.py +227 -0
  420. package/scripts/bench_ab_integrity.py +143 -0
  421. package/scripts/bench_ab_run.py +235 -0
  422. package/scripts/bench_ab_task_runner.py +369 -0
  423. package/scripts/bench_ab_tracka_run.py +202 -0
  424. package/scripts/{bench_compress_memory.py → bench_condense_memory.py} +16 -16
  425. package/scripts/bench_run.py +33 -33
  426. package/scripts/bench_runner.py +2 -2
  427. package/scripts/bootstrap.sh +99 -0
  428. package/scripts/build_cloud_bundle.py +6 -6
  429. package/scripts/build_discovery_manifest.py +7 -7
  430. package/scripts/build_linear_digest.py +3 -3
  431. package/scripts/build_rule_trigger_matrix.py +8 -8
  432. package/scripts/chat_history.py +5 -5
  433. package/scripts/check_always_budget.py +11 -5
  434. package/scripts/check_augment_description_cap.py +3 -3
  435. package/scripts/check_cluster_patterns.py +2 -2
  436. package/scripts/check_command_count_messaging.py +3 -3
  437. package/scripts/{check_compression.py → check_condensation.py} +34 -34
  438. package/scripts/{check_compressed_paths.py → check_condensed_paths.py} +8 -8
  439. package/scripts/check_context_paths.py +7 -7
  440. package/scripts/check_council_layout.py +2 -2
  441. package/scripts/check_council_references.py +9 -9
  442. package/scripts/check_iron_law_prominence.py +2 -2
  443. package/scripts/check_kernel_rule_bundle.py +2 -2
  444. package/scripts/check_module_management_neutral.py +149 -0
  445. package/scripts/check_no_roadmap_refs.py +9 -9
  446. package/scripts/check_portability.py +3 -3
  447. package/scripts/check_public_catalog_links.py +4 -4
  448. package/scripts/check_references.py +7 -6
  449. package/scripts/check_release_pr_shape.py +112 -0
  450. package/scripts/check_reply_consistency.py +3 -3
  451. package/scripts/check_safety_floor_untouched.py +1 -1
  452. package/scripts/check_template_pin_drift.py +5 -5
  453. package/scripts/check_token_optimizer_freshness.py +3 -3
  454. package/scripts/ci_status.py +301 -0
  455. package/scripts/ci_time_ratio.py +1 -1
  456. package/scripts/cleanup_other_scope.sh +146 -0
  457. package/scripts/compile_router.py +10 -10
  458. package/scripts/{compress.py → condense.py} +64 -64
  459. package/scripts/condense.sh +18 -0
  460. package/scripts/{compress_memory.py → condense_memory.py} +33 -33
  461. package/scripts/config/presets.py +2 -2
  462. package/scripts/config/profiles.py +1 -1
  463. package/scripts/cost_by_conversation.py +3 -3
  464. package/scripts/cost_summary.py +7 -7
  465. package/scripts/count_token_optimizer_usage.sh +1 -1
  466. package/scripts/gen_discovery_baseline.py +5 -5
  467. package/scripts/generate_index.py +6 -6
  468. package/scripts/generate_ownership_matrix.py +10 -10
  469. package/scripts/generate_pack_manifests.py +1 -1
  470. package/scripts/ghostwriter_fixture_allowlist.txt +1 -1
  471. package/scripts/install +3 -3
  472. package/scripts/install-hooks.sh +6 -6
  473. package/scripts/install.py +273 -45
  474. package/scripts/install.sh +187 -1
  475. package/scripts/inventory_frontmatter.py +2 -2
  476. package/scripts/iron_law_sha.py +3 -3
  477. package/scripts/lint_agents_layout.py +14 -7
  478. package/scripts/lint_agents_md.py +4 -4
  479. package/scripts/lint_archived_skills.py +3 -3
  480. package/scripts/lint_artefact_frontmatter.py +2 -2
  481. package/scripts/lint_bench_ab.py +172 -0
  482. package/scripts/lint_bench_corpus.py +1 -1
  483. package/scripts/lint_command_tiers.py +5 -5
  484. package/scripts/lint_context_spine_usage.py +1 -1
  485. package/scripts/lint_framework_leakage.py +7 -7
  486. package/scripts/lint_framework_leakage_allowlist.json +152 -84
  487. package/scripts/lint_ghostwriter_source.py +3 -3
  488. package/scripts/lint_handoffs.py +1 -1
  489. package/scripts/lint_load_context.py +11 -11
  490. package/scripts/lint_media_policy_linkage.py +5 -5
  491. package/scripts/lint_namespace.py +1 -1
  492. package/scripts/lint_no_new_atomic_commands.py +2 -2
  493. package/scripts/lint_orchestration_dsl.py +1 -1
  494. package/scripts/lint_pack_boundaries.py +2 -2
  495. package/scripts/lint_persona_governance.py +4 -4
  496. package/scripts/lint_role_experiences.py +237 -0
  497. package/scripts/lint_rule_interactions.py +2 -2
  498. package/scripts/lint_rule_tiers.py +1 -1
  499. package/scripts/lint_trust_coherence.py +2 -2
  500. package/scripts/mcp_registry_submit.sh +187 -0
  501. package/scripts/mcp_server/tools.py +1 -1
  502. package/scripts/measure_frugality_savings.py +10 -10
  503. package/scripts/measure_patterns.py +1 -1
  504. package/scripts/measure_projection_bytes.py +5 -5
  505. package/scripts/measure_rule_budget.py +3 -3
  506. package/scripts/measure_skill_reduction.py +1 -1
  507. package/scripts/memory_lookup.py +1 -1
  508. package/scripts/memory_status.py +2 -2
  509. package/scripts/migrate_command_suggestions.py +3 -3
  510. package/scripts/mine_session.py +1 -1
  511. package/scripts/move_artefact.py +3 -3
  512. package/scripts/new_skill.py +2 -2
  513. package/scripts/pack_mcp_content.py +9 -9
  514. package/scripts/plan_physical_move.py +6 -6
  515. package/scripts/print_required_checks.py +196 -0
  516. package/scripts/probe_skill_registration.py +413 -0
  517. package/scripts/propose_modules_config.py +145 -0
  518. package/scripts/prototype_lint_contradictions.py +1 -1
  519. package/scripts/recruit_preflight.sh +152 -0
  520. package/scripts/refine_ticket_detect.py +3 -3
  521. package/scripts/release.py +20 -0
  522. package/scripts/render_benchmark_md.py +308 -0
  523. package/scripts/roadmap_progress_hook.py +1 -1
  524. package/scripts/run_skill_evals.py +2 -2
  525. package/scripts/runtime_registry.py +4 -4
  526. package/scripts/schemas/command.schema.json +4 -4
  527. package/scripts/schemas/rule.schema.json +5 -5
  528. package/scripts/schemas/skill.schema.json +3 -3
  529. package/scripts/schemas/user-type.schema.json +1 -1
  530. package/scripts/score_skill_selection.py +1 -1
  531. package/scripts/skill_collision_clusters.py +2 -2
  532. package/scripts/skill_linter.py +81 -81
  533. package/scripts/skill_overlap.py +5 -5
  534. package/scripts/skill_tools/audit_persona_coverage.py +2 -2
  535. package/scripts/skill_tools/audit_user_type_coverage.py +2 -2
  536. package/scripts/skill_tools/run_block_d_eval.py +1 -1
  537. package/scripts/skill_tools/score_skill_relevance.py +1 -1
  538. package/scripts/skill_tools/suggest_skill_for_task.py +1 -1
  539. package/scripts/skill_trigger_eval.py +3 -3
  540. package/scripts/smoke/kernel.sh +7 -1
  541. package/scripts/smoke/router.sh +5 -5
  542. package/scripts/smoke/skills.sh +1 -1
  543. package/scripts/smoke_quickstart.py +1 -1
  544. package/scripts/snapshot_agent_outputs.py +3 -3
  545. package/scripts/spotcheck_thin_root.py +1 -1
  546. package/scripts/{caveman_stats.py → telegraph_stats.py} +18 -18
  547. package/scripts/update_counts.py +1 -1
  548. package/scripts/validate_decision_engine.py +1 -1
  549. package/scripts/validate_frontmatter.py +1 -1
  550. package/scripts/validate_safe_paths.py +3 -3
  551. package/scripts/{validate_caveman_carveouts.py → validate_telegraph_carveouts.py} +7 -7
  552. package/scripts/verify_roadmap_closure.py +6 -6
  553. package/templates/consumer-settings/ONBOARDING.md +41 -0
  554. package/.agent-src/commands/install-via-agent.md +0 -129
  555. package/.agent-src/skills/compress-memory/SKILL.md +0 -131
  556. package/dist/ui/assets/index-D-DY1ywI.js +0 -35
  557. package/dist/ui/assets/index-D-DY1ywI.js.map +0 -1
  558. package/dist/ui/assets/index-Dqfhmg-d.css +0 -1
  559. package/docs/adrs/caveman/README.md +0 -9
  560. package/docs/contracts/caveman-telemetry.md +0 -83
  561. package/scripts/compress.sh +0 -18
@@ -0,0 +1,141 @@
1
+ ---
2
+ stability: beta
3
+ keep-beta-until: 2026-08-26
4
+ roadmap_ref: road-to-adoption-proof-and-ci-green.md
5
+ ---
6
+
7
+ # CI Green Floor
8
+
9
+ > **Status** · v0 / beta · 2026-05-26. Phase A Step 4 of
10
+ > [`road-to-adoption-proof-and-ci-green.md`](../../agents/roadmaps/road-to-adoption-proof-and-ci-green.md).
11
+ > Defines what counts as a **blocking** CI failure (must be green
12
+ > before merge) vs. an **advisory** signal (visible but not
13
+ > merge-blocking), and the freeze rule that fires when main goes
14
+ > red on a required check.
15
+
16
+ ## The Iron Law
17
+
18
+ ```
19
+ ANY REQUIRED-CHECK RED ON `main` FREEZES SUBSEQUENT PR MERGES
20
+ UNTIL THE RED IS CLEARED. ADVISORY REDS NEVER FREEZE.
21
+ PHANTOM 0-JOB RUNS ARE ADVISORY BY CONSTRUCTION.
22
+ ```
23
+
24
+ The required-check set is the source of truth for what blocks. Every
25
+ other workflow is advisory until it earns inclusion.
26
+
27
+ ## Three tiers — blocking · advisory · phantom
28
+
29
+ | Tier | Definition | Effect on merge | Effect on freeze |
30
+ |---|---|---|---|
31
+ | **Blocking** | Listed in [`branch-protection-policy.md`](branch-protection-policy.md) § Per-PR-shape required-check matrix for the current PR shape. | Red blocks the PR merge. | Red on `main` (post-merge) triggers a freeze tag — see [Freeze rule](#freeze-rule-the-mechanics). |
32
+ | **Advisory** | Workflow ships in `.github/workflows/` but is NOT listed in the required-check matrix (e.g. `bench-drift.yml`, `cloud-release.yml`, `deploy-mcp-worker.yml`). | Red is visible on the PR page but does not block merge. | Red on `main` does not freeze. |
33
+ | **Phantom** | Workflow registers a run with `Jobs: 0` and `Conclusion: failure` — typically `workflow_dispatch`-only workflows that GitHub's check-suite still registers on push. | Filtered out of every status query. | Never. |
34
+
35
+ `task ci:status` (Phase A Step 6) is the canonical filter: it
36
+ queries `gh run list`, drops Jobs-0 phantoms, then asserts the
37
+ required-check set has zero non-success conclusions for the
38
+ current HEAD SHA.
39
+
40
+ ## Blocking set — anchored to `branch-protection-policy.md`
41
+
42
+ The blocking set is defined per PR shape (feature / release /
43
+ docs-only) in [`branch-protection-policy.md`](branch-protection-policy.md)
44
+ § Per-PR-shape required-check matrix. The summary for `main`:
45
+
46
+ - **Feature PR set** — `Consistency`, `Smoke Contracts`, `Skill Lint`,
47
+ `Tests` (every matrix entry), `Public Install Smoke`.
48
+ - **Release PR set** — `Consistency`, `Smoke Contracts`, three
49
+ `Release Validation` jobs.
50
+ - **Docs-only PR set** — `Consistency`, `Smoke Contracts`.
51
+
52
+ `task ci:status` reads the same set when run with `--strict` (Phase
53
+ A Step 6); the set is single-sourced from `scripts/ci_status.py`.
54
+
55
+ ## Advisory list — explicit non-blockers
56
+
57
+ These workflows MAY fail without blocking merges. Each carries a
58
+ documented rationale (link to the file header or roadmap step) so
59
+ "advisory" never silently expands.
60
+
61
+ | Workflow | Rationale | Promotion criterion |
62
+ |---|---|---|
63
+ | `bench-drift.yml` | Performance bench — informational only until the bench-stability roadmap completes. | Three consecutive green weekly runs after the bench is stabilised. |
64
+ | `cloud-release.yml` | Release artefact publish — Hard-Floor adjacent fix pending. See [`02-deployment-failures.md`](../../agents/evidence/audits/2026-05-ci-triage/02-deployment-failures.md) § Finding 1. | Maintainer ships the rate-limit fix; smoke probe stays green for two consecutive releases. |
65
+ | `deploy-mcp-worker.yml` | MCP worker deploy — auth contract regression pending. See [`02-deployment-failures.md`](../../agents/evidence/audits/2026-05-ci-triage/02-deployment-failures.md) § Finding 2. | Maintainer aligns the smoke probe with the Worker auth gate; passes for two consecutive deploys. |
66
+ | `sync-visibility.yml` | `workflow_dispatch`-only mutator. GitHub registers a phantom 0-job failure on every push to main — documented in the workflow header. **Phantom, not advisory** — `task ci:status` filters it. | n/a; the filter is the fix. |
67
+ | `check-visibility-drift.yml` | PR-paths + schedule + dispatch. Same GitHub Actions quirk produces phantom 0-job failures on push to main. **Phantom, not advisory.** | n/a; the filter is the fix. |
68
+
69
+ Adding a row here is a maintainer-level call: the rationale must
70
+ exist, and the promotion criterion must be writable.
71
+
72
+ ## Phantom 0-job runs — the filter
73
+
74
+ A "phantom" run is one where:
75
+
76
+ 1. The workflow registers a check-suite entry on the commit, AND
77
+ 2. The run has `Jobs: 0` (no job actually executed), AND
78
+ 3. The conclusion is `failure`.
79
+
80
+ This is a documented GitHub Actions quirk for `workflow_dispatch`-only
81
+ workflows and for path-filtered workflows whose paths do not match
82
+ the push diff. Removing the `push:` trigger does NOT eliminate the
83
+ phantom; the check-suite still registers.
84
+
85
+ `task ci:status` and `scripts/ci_status.py` drop any run with
86
+ `Jobs: 0` from the tally before computing pass/fail. The phantom
87
+ is visible in the GitHub UI but invisible to the gate.
88
+
89
+ ## Freeze rule — the mechanics
90
+
91
+ When a commit lands on `main` and any required-check workflow turns
92
+ red within ~5 minutes (the standard required-check window):
93
+
94
+ 1. The required-check status remains red on the merge commit.
95
+ 2. Subsequent PRs targeting `main` see the same required-check set
96
+ evaluated against the PR's head SHA. If the same workflow fails
97
+ again on the PR head, the PR is blocked.
98
+ 3. The maintainer either (a) reverts the offending commit, or (b)
99
+ ships a fix-forward PR that turns the required check green. No
100
+ PR merges meanwhile.
101
+
102
+ The freeze is therefore behavioural, not enforced via a separate
103
+ "freeze-mode" workflow — branch protection already does the
104
+ gating. `freeze-guard.yml` ([source](../../.github/workflows/freeze-guard.yml))
105
+ is a **different** mechanism: it locks the behavioural baseline of
106
+ the work-engine via golden-transcript diff, and is a required check
107
+ in the engine-path subset (not the universal floor). Both apply
108
+ together; the names don't conflict.
109
+
110
+ ## What this contract is not
111
+
112
+ - **Not a list of "all green workflows".** Advisory and phantom
113
+ reds are routine and do not constitute a violation.
114
+ - **Not a guarantee against false-greens.** A workflow that ran
115
+ but tested nothing meaningful can still report success; the
116
+ contract only governs how red signals are routed.
117
+ - **Not a license to add workflows to the blocking set silently.**
118
+ Promotion to blocking is a `branch-protection-policy.md` edit
119
+ with a written rationale and a maintainer review.
120
+
121
+ ## Re-audit cadence
122
+
123
+ Re-audit on each of:
124
+
125
+ - A new workflow lands in `.github/workflows/`.
126
+ - A workflow is promoted from advisory to blocking (or vice versa)
127
+ in `branch-protection-policy.md`.
128
+ - A new phantom-failure class is observed (e.g. GitHub Actions ships
129
+ behaviour the filter doesn't catch).
130
+ - Quarterly review (Phase C of `road-to-ci-budget-and-cost.md` or
131
+ its successor).
132
+
133
+ ## See also
134
+
135
+ - [`branch-protection-policy.md`](branch-protection-policy.md) —
136
+ the required-check matrix per PR shape.
137
+ - [`release-pr-gating.md`](release-pr-gating.md) — release-PR shape
138
+ detection + cut surface.
139
+ - [`../../agents/evidence/audits/2026-05-ci-triage/01-red-workflows.md`](../../agents/evidence/audits/2026-05-ci-triage/01-red-workflows.md)
140
+ — current red-workflow inventory.
141
+ - `AGENTS.md` § Emergency triage — root-of-repo pointer for agents.
@@ -56,7 +56,7 @@ collapses 26 atomics → 11 sub-command clusters. Sub-commands use
56
56
  colon syntax (`/cluster:sub`) so Claude Code's command palette can
57
57
  autocomplete them. The standalone `/review` surface that mirrors
58
58
  `judge solo` lives at
59
- [`commands/review-changes.md`](../../.agent-src.uncompressed/commands/review-changes.md).
59
+ [`commands/review-changes.md`](../../.agent-src.uncondensed/commands/review-changes.md).
60
60
 
61
61
  ## Cluster depth and sub-command naming
62
62
 
@@ -98,12 +98,12 @@ every new sub-command added to an existing cluster.
98
98
  `/<cluster> <sub>` is a first-class equivalent and routes to the
99
99
  same dispatcher; it must keep working. Autocompletion-aware UIs
100
100
  surface the colon form because it stays a single token. Full
101
- semantics: [`slash-command-routing-policy-mechanics.md`](../../.agent-src.uncompressed/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md)
101
+ semantics: [`slash-command-routing-policy-mechanics.md`](../../.agent-src.uncondensed/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md)
102
102
  § Routing semantics.
103
103
 
104
104
  ## Frontmatter contract
105
105
 
106
- A new command file under `.agent-src.uncompressed/commands/` MUST
106
+ A new command file under `.agent-src.uncondensed/commands/` MUST
107
107
  declare `cluster:` in its frontmatter, pointing to one of the locked
108
108
  clusters above:
109
109
 
@@ -133,7 +133,7 @@ here so future lens additions follow the same shape.
133
133
  (resolve target + capture `original_ask`), Step 2 (configure check +
134
134
  price-table freshness), Step 3 (cost confirmation), Step 4 (run CLI),
135
135
  Step 5 / 5a / 5b (render → critical-evaluation lens → user options),
136
- Step 6 (hard floor). See [`commands/council.md` → `## Architecture`](../../.agent-src.uncompressed/commands/council.md).
136
+ Step 6 (hard floor). See [`commands/council.md` → `## Architecture`](../../.agent-src.uncondensed/commands/council.md).
137
137
  - **Wrappers:** `/council pr` · `/council design` · `/council optimize`
138
138
  resolve lens-specific input (PR target / design artefact / optimization
139
139
  target + metric), capture a wrapper-specific `original_ask`, then
@@ -182,7 +182,7 @@ has fewer findings.
182
182
 
183
183
  A shim is a one-file stub that:
184
184
 
185
- 1. Keeps the old command slug in `.agent-src.uncompressed/commands/`.
185
+ 1. Keeps the old command slug in `.agent-src.uncondensed/commands/`.
186
186
  2. Declares `superseded_by:` in frontmatter pointing to the new
187
187
  cluster command (e.g. `superseded_by: fix ci`).
188
188
  3. Declares `deprecated_in:` with the release version (e.g.
@@ -299,4 +299,4 @@ A command that fails either floor drops to **Tier-1** at the next minor release;
299
299
  - [`docs/contracts/STABILITY.md`](STABILITY.md) — `beta` level rules apply.
300
300
  - [`docs/contracts/command-surface-tiers.md`](command-surface-tiers.md) — what each tier means and what `--help` surfaces.
301
301
  - [`docs/contracts/command-taxonomy.md`](command-taxonomy.md) — profile axis (discoverability) layered on top of this verb axis (invocation).
302
- - [`.agent-src.uncompressed/contexts/contracts/artifact-engagement-flow.md`](../../.agent-src.uncompressed/contexts/contracts/artifact-engagement-flow.md) — sibling telemetry surface; same privacy floor and four-layer enforcement model.
302
+ - [`.agent-src.uncondensed/contexts/contracts/artifact-engagement-flow.md`](../../.agent-src.uncondensed/contexts/contracts/artifact-engagement-flow.md) — sibling telemetry surface; same privacy floor and four-layer enforcement model.
@@ -10,7 +10,7 @@ keep-beta-until: 2026-08-12
10
10
  > command surfaces this package ships:
11
11
  >
12
12
  > - **CLI commands** rendered by `./agent-config --help`.
13
- > - **Slash commands** under `.agent-src.uncompressed/commands/**`.
13
+ > - **Slash commands** under `.agent-src.uncondensed/commands/**`.
14
14
  >
15
15
  > Per Phase 4 of the distribution-maturity roadmap (see
16
16
  > `agents/roadmaps/` for current status).
@@ -147,7 +147,7 @@ the help text groups commands under `## Tier 0`, `## Tier 1`,
147
147
 
148
148
  `scripts/lint_command_tiers.py` enforces:
149
149
 
150
- 1. Every file under `.agent-src.uncompressed/commands/**.md` has
150
+ 1. Every file under `.agent-src.uncondensed/commands/**.md` has
151
151
  a `tier:` frontmatter key whose value is `0`, `1`, or `2`.
152
152
  2. Every command listed under `## Tier 0` / `## Tier 1` /
153
153
  `## Tier 2` in this contract resolves to a real command file or
@@ -33,7 +33,7 @@ single-source.
33
33
  ### Profile membership
34
34
 
35
35
  A command appears in a profile's `commands_hint` (in
36
- `.agent-src.uncompressed/profiles/<id>.yml`) iff **all** hold:
36
+ `.agent-src.uncondensed/profiles/<id>.yml`) iff **all** hold:
37
37
 
38
38
  1. **First-week reach.** A user of that profile will reach for this
39
39
  command within their first five sessions without being told.
@@ -92,7 +92,7 @@ Three surfaces consume this contract:
92
92
  |---|---|---|
93
93
  | **README** | `README.md` § "Six entry paths" | Per-profile `commands_hint` (max 5) rendered as the first-commands list per profile block |
94
94
  | **Catalog** | `docs/catalog.md` | All commands grouped by verb-cluster (primary axis), with a per-command `profiles:` line listing which profiles surface it |
95
- | **Wizard** | `.agent-src.uncompressed/commands/onboard.md` | After role selection, prints the five-command starter list from the selected profile's `commands_hint` |
95
+ | **Wizard** | `.agent-src.uncondensed/commands/onboard.md` | After role selection, prints the five-command starter list from the selected profile's `commands_hint` |
96
96
 
97
97
  The README and wizard surfaces are already wired. The catalog `profiles:`
98
98
  line is a Phase 2 deliverable.
@@ -3,71 +3,71 @@ stability: beta
3
3
  keep-beta-until: 2026-08-14
4
4
  ---
5
5
 
6
- # Compression default — kill-criterion
6
+ # Condensation default — kill-criterion
7
7
 
8
- > **Status:** v1-measured · criterion not met · default stays `off` · **Owner:** `step-16-caveman-substance.md`
9
- > Phase 1 closeout · **Sources:** [`internal/bench/reports/caveman-v1.md`](../../bench/reports/caveman-v1.md) ·
8
+ > **Status:** v1-measured · criterion not met · default stays `off` · **Owner:** `step-16-telegraph-substance.md`
9
+ > Phase 1 closeout · **Sources:** [`internal/bench/reports/telegraph-v1.md`](../../bench/reports/telegraph-v1.md) ·
10
10
  > [`council-synthesis.md` § 7](../../agents/evidence/audits/2026-05-14-north-star/council-synthesis.md) <!-- council-ref-allowed: ADR decision trace for v1 kill-criterion verdict --> ·
11
- > [`caveman-v1-kc-verdict.json`](../../agents/runtime/council/responses/caveman-v1-kc-verdict.json) <!-- council-ref-allowed: ADR decision trace for v1 kill-criterion verdict -->
11
+ > [`telegraph-v1-kc-verdict.json`](../../agents/runtime/council/responses/telegraph-v1-kc-verdict.json) <!-- council-ref-allowed: ADR decision trace for v1 kill-criterion verdict -->
12
12
 
13
13
  ## Rule
14
14
 
15
15
  ```
16
- DEFAULT STAYS OFF UNTIL `task bench -- --caveman` PRODUCES A POSITIVE vs_terse MEDIAN.
16
+ DEFAULT STAYS OFF UNTIL `task bench -- --telegraph` PRODUCES A POSITIVE vs_terse MEDIAN.
17
17
  DECISION OWNED BY THE NEXT BENCH CLOSEOUT, NOT BY THIS DOC.
18
18
  ```
19
19
 
20
- 1. **Current state.** `caveman.speak_scope` defaults `off`. Carve-outs
20
+ 1. **Current state.** `telegraph.speak_scope` defaults `off`. Carve-outs
21
21
  (security · destructive · multi-step · code blocks · paths · numbered
22
22
  options · Iron-Law markers) are documented in
23
- [`caveman-speak`](../../.agent-src.uncompressed/rules/caveman-speak.md)
23
+ [`telegraph-speak`](../../.agent-src.uncondensed/rules/telegraph-speak.md)
24
24
  but the feature is non-promoted: no skill recommends turning it on,
25
25
  no preset enables it, no profile depends on it.
26
- 2. **Baselines.** Every published `internal/bench/reports/caveman-v<N>.{json,md}`
27
- measures three arms (`compressed` · `terse-control` ·
28
- `uncompressed`) and reports two savings columns:
29
- - `vs_raw` — median savings against the uncompressed arm.
26
+ 2. **Baselines.** Every published `internal/bench/reports/telegraph-v<N>.{json,md}`
27
+ measures three arms (`condensed` · `terse-control` ·
28
+ `uncondensed`) and reports two savings columns:
29
+ - `vs_raw` — median savings against the uncondensed arm.
30
30
  - `vs_terse` — **load-bearing** median savings against the
31
31
  `Answer concisely.` terse-control arm. `vs_raw` is inflated by the
32
32
  carve-out-tax-free pure-prose case and is **not** the gate metric.
33
- 3. **Decision table.** Read the latest `internal/bench/reports/caveman-v<N>.md`
33
+ 3. **Decision table.** Read the latest `internal/bench/reports/telegraph-v<N>.md`
34
34
  and apply exactly one of:
35
35
 
36
36
  | Measured `vs_terse` median | Quality regression on corpus | Verdict |
37
37
  |---|---|---|
38
- | < 0 % | any | **Criterion not met — defer.** Keep default `off`. No telemetry multiplier. Next move owned by the corpus-widening / methodology-revision step that produces `caveman-v<N+1>`. |
38
+ | < 0 % | any | **Criterion not met — defer.** Keep default `off`. No telemetry multiplier. Next move owned by the corpus-widening / methodology-revision step that produces `telegraph-v<N+1>`. |
39
39
  | 0 % – < 30 % | any | **Hold.** Keep default `off`. Authorised follow-up: widen corpus or tune carve-out share; no default flip. |
40
- | ≥ 30 % | < 5 % | **Flip default on** — `caveman.speak_scope` defaults to a non-`off` value (separate roadmap), carve-outs stay, statusline surfaces lifetime tokens saved. |
40
+ | ≥ 30 % | < 5 % | **Flip default on** — `telegraph.speak_scope` defaults to a non-`off` value (separate roadmap), carve-outs stay, statusline surfaces lifetime tokens saved. |
41
41
  | ≥ 30 % | ≥ 5 % | **Hold** — repeat the window once with tuned intensity ladder; second hold → deprecate. |
42
42
 
43
43
  "Quality regression" = host-side rubric on the corpus per
44
44
  `benchmark-report-schema.md`. Numbers checked into the published
45
- `caveman-v<N>.json` as the decision artefact.
45
+ `telegraph-v<N>.json` as the decision artefact.
46
46
  4. **No interim flip.** The default does not move on anecdote,
47
47
  gut feeling, or a single positive prompt. Only a published
48
- `caveman-v<N>` report with a `vs_terse` median in the "Flip" row
48
+ `telegraph-v<N>` report with a `vs_terse` median in the "Flip" row
49
49
  above authorises a default change, under a follow-up roadmap.
50
50
 
51
51
  ## v1 verdict (2026-05-16)
52
52
 
53
- [`internal/bench/reports/caveman-v1.md`](../../bench/reports/caveman-v1.md)
53
+ [`internal/bench/reports/telegraph-v1.md`](../../bench/reports/telegraph-v1.md)
54
54
  landed 30 calls · $0.0805 · 0 errors · `claude-sonnet-4-5`:
55
55
 
56
56
  | Metric | Median | p10 | p90 |
57
57
  |---|---:|---:|---:|
58
58
  | `vs_raw` savings | +23.51 % | -18.29 % | +52.53 % |
59
59
  | **`vs_terse` savings** | **−9.27 %** | **−109.85 %** | +51.32 % |
60
- | Realised carve-out share (compressed arm) | 30.67 % | — | — |
60
+ | Realised carve-out share (condensed arm) | 30.67 % | — | — |
61
61
 
62
62
  Per row 1 of the table, the v1 verdict is **criterion not met — defer**.
63
63
  Default stays `off`; no telemetry multiplier ships; no rule retirement
64
- in this roadmap. Wins exist only on pure-prose prompts (caveman-09
65
- +50.5 %, caveman-10 +58.4 %); carve-out-heavy prompts drag the median
66
- negative (caveman-04 path-list −108 %, caveman-06 mode-marker −123 %).
64
+ in this roadmap. Wins exist only on pure-prose prompts (telegraph-09
65
+ +50.5 %, telegraph-10 +58.4 %); carve-out-heavy prompts drag the median
66
+ negative (telegraph-04 path-list −108 %, telegraph-06 mode-marker −123 %).
67
67
 
68
68
  ### Council split (recorded, not decisive)
69
69
 
70
- Council run [`caveman-v1-kc-verdict.json`](../../agents/runtime/council/responses/caveman-v1-kc-verdict.json) <!-- council-ref-allowed: ADR decision trace for v1 kill-criterion verdict -->
70
+ Council run [`telegraph-v1-kc-verdict.json`](../../agents/runtime/council/responses/telegraph-v1-kc-verdict.json) <!-- council-ref-allowed: ADR decision trace for v1 kill-criterion verdict -->
71
71
  (2 members · 1 round · $0.0514 actual) split:
72
72
 
73
73
  - **`claude-sonnet-4-5`** → Decision A.1 (deprecate now) + Decision B.3
@@ -77,7 +77,7 @@ Council run [`caveman-v1-kc-verdict.json`](../../agents/runtime/council/response
77
77
  - **`gpt-4o`** → Decision A.3 (hold + re-bench with widened corpus +
78
78
  revised terse-control prompt) + Decision B.2 (per-category
79
79
  multipliers, suppress negatives). Reasoning: 10 prompts is a
80
- razor-thin sample; the terse-control prompt may under-compress; the
80
+ razor-thin sample; the terse-control prompt may under-condense; the
81
81
  carve-out validator (Phase 4) is not yet shipped, so we are
82
82
  measuring a half-implemented feature.
83
83
 
@@ -96,21 +96,21 @@ predated v1 numbers. The 2026-05-16 council split (Sonnet = deprecate now,
96
96
  GPT-4o = re-bench) is informed by v1 but disagrees on which methodological
97
97
  weakness is decisive. The kill table above gives every future bench run a
98
98
  deterministic resolution path and stops every downstream roadmap from
99
- re-litigating compression on every PR.
99
+ re-litigating condensation on every PR.
100
100
 
101
101
  ## Cross-references
102
102
 
103
- - [`internal/bench/reports/caveman-v1.md`](../../bench/reports/caveman-v1.md)
103
+ - [`internal/bench/reports/telegraph-v1.md`](../../bench/reports/telegraph-v1.md)
104
104
  — v1 measurement; canonical baseline this doc cites.
105
105
  - [`docs/benchmarks.md`](../benchmarks.md)
106
106
  — cadence + when the next bench run is mandatory.
107
- - [`caveman-telemetry`](caveman-telemetry.md)
107
+ - [`telegraph-telemetry`](telegraph-telemetry.md)
108
108
  — multiplier contract; records the suspended state v2 must lift.
109
- - [`caveman-speak`](../../.agent-src.uncompressed/rules/caveman-speak.md)
110
- — runtime rule; reads `caveman.speak_scope` from settings.
109
+ - [`telegraph-speak`](../../.agent-src.uncondensed/rules/telegraph-speak.md)
110
+ — runtime rule; reads `telegraph.speak_scope` from settings.
111
111
 
112
112
  ## Done
113
113
 
114
114
  This doc reflects the v1 verdict. It is **not** an action item. The next
115
- bench closeout (against `caveman-v2` once a widened corpus or revised
115
+ bench closeout (against `telegraph-v2` once a widened corpus or revised
116
116
  methodology is shipped) closes the loop.
@@ -17,7 +17,7 @@ keep-beta-until: 2026-08-14
17
17
 
18
18
  A **preset** owns governance knobs that the user wants to tune as a
19
19
  bundle, not individually. Three seed presets ship; users can declare
20
- their own under `.agent-src.uncompressed/presets/<id>.yml`.
20
+ their own under `.agent-src.uncondensed/presets/<id>.yml`.
21
21
 
22
22
  | `preset.id` | Stance | Typical user |
23
23
  |---|---|---|
@@ -13,7 +13,7 @@ keep-beta-until: 2026-08-12
13
13
  > frontmatter contract for citing a context from a rule.
14
14
 
15
15
  This contract defines **where** a context file is allowed to live under
16
- `.agent-src.uncompressed/contexts/` (the source-of-truth tree). It is the
16
+ `.agent-src.uncondensed/contexts/` (the source-of-truth tree). It is the
17
17
  DAG root of `road-to-structural-optimization` Phase 0: the file-ownership
18
18
  matrix (Phase 0.1) greps for context-file fan-out at the locked tree, and
19
19
  several later phases (2A, 2B, 3a/b/c, 6) extract material into specific
@@ -55,7 +55,7 @@ contexts/subagent-configuration.md
55
55
  ## Rules enforced by `check_context_paths.py`
56
56
 
57
57
  1. **Sub-tree allow-list.** Every `*.md` under
58
- `.agent-src.uncompressed/contexts/` must be either (a) in one of the
58
+ `.agent-src.uncondensed/contexts/` must be either (a) in one of the
59
59
  nine locked sub-trees above, or (b) one of the six grandfathered
60
60
  root-level files. Anything else fails CI.
61
61
  2. **No collisions.** No two context files may share the same basename
@@ -66,7 +66,7 @@ contexts/subagent-configuration.md
66
66
  a frontmatter `load_context:` / `load_context_eager:` entry, **or** a
67
67
  markdown body mention of the relative path
68
68
  (`contexts/<sub-tree>/<file>.md` or
69
- `.agent-src.uncompressed/contexts/<sub-tree>/<file>.md`).
69
+ `.agent-src.uncondensed/contexts/<sub-tree>/<file>.md`).
70
70
 
71
71
  The linter exits non-zero on any violation and prints a one-line
72
72
  diagnostic per offence.
@@ -172,7 +172,7 @@ Before shipping a senior skill that opts into the spine:
172
172
 
173
173
  ## See also
174
174
 
175
- - `.agent-src.uncompressed/rules/skill-quality.md` § Senior-Tier
175
+ - `.agent-src.uncondensed/rules/skill-quality.md` § Senior-Tier
176
176
  Required Structure — the four blocks every `tier: senior` skill
177
177
  ships independently of spine opt-in.
178
178
  - `docs/contracts/cross-wing-handoff.md` — typed handoffs between
@@ -11,7 +11,7 @@ Schema-versioned so downstream consumers can pin and migrate explicitly.
11
11
 
12
12
  Design reference: Ruflo `scripts/summary.mjs` (upstream cite). Our shape
13
13
  diverges to align with the local `agents/cost-tracking/sessions.jsonl`
14
- fields and the caveman-suspended-multiplier contract.
14
+ fields and the telegraph-suspended-multiplier contract.
15
15
 
16
16
  ## Envelope
17
17
 
@@ -43,15 +43,15 @@ fields and the caveman-suspended-multiplier contract.
43
43
  "total_cost_usd": 1.2345,
44
44
  "input_tokens": 100000,
45
45
  "output_tokens": 50000,
46
- "caveman_delta_tokens": 0,
47
- "caveman_multiplier_version": "v1",
48
- "caveman_multiplier_active": false
46
+ "telegraph_delta_tokens": 0,
47
+ "telegraph_multiplier_version": "v1",
48
+ "telegraph_multiplier_active": false
49
49
  }
50
50
  ```
51
51
 
52
- `caveman_delta_tokens` is always `0` while
53
- `caveman_multiplier_active == false` — see
54
- [`caveman-telemetry.md`](caveman-telemetry.md) for the suspension contract.
52
+ `telegraph_delta_tokens` is always `0` while
53
+ `telegraph_multiplier_active == false` — see
54
+ [`telegraph-telemetry.md`](telegraph-telemetry.md) for the suspension contract.
55
55
 
56
56
  ## `by_session` / `by_conversation` row shape
57
57
 
@@ -62,7 +62,7 @@ fields and the caveman-suspended-multiplier contract.
62
62
  "total_cost_usd": 0.4567,
63
63
  "input_tokens": 8000,
64
64
  "output_tokens": 4500,
65
- "caveman_delta_tokens": 0
65
+ "telegraph_delta_tokens": 0
66
66
  }
67
67
  ```
68
68
 
@@ -81,7 +81,7 @@ group by inspecting which array the row lives in.
81
81
  }
82
82
  ```
83
83
 
84
- `by_model` omits caveman fields — the multiplier is dialect-scoped, not
84
+ `by_model` omits telegraph fields — the multiplier is dialect-scoped, not
85
85
  model-scoped.
86
86
 
87
87
  ## Stability guarantees
@@ -100,8 +100,8 @@ model-scoped.
100
100
 
101
101
  ## See also
102
102
 
103
- - [`caveman-telemetry.md`](caveman-telemetry.md) — defines the
104
- `caveman_*` fields and the suspended-multiplier contract.
103
+ - [`telegraph-telemetry.md`](telegraph-telemetry.md) — defines the
104
+ `telegraph_*` fields and the suspended-multiplier contract.
105
105
  - [`scripts/cost_summary.py`](../../scripts/cost_summary.py) — implementation.
106
106
  - [`scripts/cost_by_conversation.py`](../../scripts/cost_by_conversation.py) — narrower per-conversation lens with the same JSONL source.
107
- - [`scripts/caveman_stats.py`](../../scripts/caveman_stats.py) — caveman-only delta lens with the same JSONL source.
107
+ - [`scripts/telegraph_stats.py`](../../scripts/telegraph_stats.py) — telegraph-only delta lens with the same JSONL source.
@@ -54,15 +54,15 @@ linter rejects it.
54
54
  ## § 3 — Worktree boundary
55
55
 
56
56
  Each handoff MAY run in a fresh git worktree when invoked through
57
- [`subagent-orchestration`](../../.agent-src.uncompressed/skills/subagent-orchestration/SKILL.md)
57
+ [`subagent-orchestration`](../../.agent-src.uncondensed/skills/subagent-orchestration/SKILL.md)
58
58
  mode 6 (`do-in-worktrees`). Mode 6 is the state-machine layer — it
59
59
  declares when worktree isolation is mandatory (multi-step cross-wing
60
60
  chain, each step ≥30 min, branch state would otherwise leak between
61
61
  steps) and what handoff shape each step emits / consumes. The
62
62
  executor lives in
63
- [`using-git-worktrees`](../../.agent-src.uncompressed/skills/using-git-worktrees/SKILL.md)
63
+ [`using-git-worktrees`](../../.agent-src.uncondensed/skills/using-git-worktrees/SKILL.md)
64
64
  and
65
- [`finishing-a-development-branch`](../../.agent-src.uncompressed/skills/finishing-a-development-branch/SKILL.md);
65
+ [`finishing-a-development-branch`](../../.agent-src.uncondensed/skills/finishing-a-development-branch/SKILL.md);
66
66
  this contract does not duplicate that runtime.
67
67
 
68
68
  The boundary is **advisory** for chains that do not opt into mode 6:
@@ -128,7 +128,7 @@ Three shipped chains across the suite illustrate the contract:
128
128
 
129
129
  ## See also
130
130
 
131
- - `.agent-src.uncompressed/rules/skill-quality.md` § Senior-Tier
131
+ - `.agent-src.uncondensed/rules/skill-quality.md` § Senior-Tier
132
132
  Required Structure — defines the `## Related Skills` and `## Output`
133
133
  blocks the contract reads.
134
134
  - `scripts/lint_handoffs.py` — mechanical enforcement.
@@ -1,3 +1,7 @@
1
+ ---
2
+ stability: experimental
3
+ ---
4
+
1
5
  # Daily Workspace Surface Contract
2
6
 
3
7
  > **Status** · v0 / design · 2026-05-24. Surface contract for the daily
@@ -85,7 +85,7 @@ compat extensions and MUST NOT raise on them.
85
85
  | `phase` | Engine phase that produced the trace. One of the eight phases above. |
86
86
  | `confidence_band` | One of `low` / `medium` / `high`. Heuristic defined below — derived from memory hits + ambiguity flags + verify evidence count. |
87
87
  | `risk_class` | One of `low` / `medium` / `high`. Per [`rule-interactions.md`](rule-interactions.md) — drives reviewer routing. |
88
- | `rules[].rule_id` | Stable rule id, matches the filename under `.agent-src.uncompressed/rules/` minus `.md`. |
88
+ | `rules[].rule_id` | Stable rule id, matches the filename under `.agent-src.uncondensed/rules/` minus `.md`. |
89
89
  | `rules[].applied` | True if the rule's Iron Law fired and changed engine behaviour this phase. |
90
90
  | `rules[].skipped` | True if the rule was checked but produced no effect (no trigger match). |
91
91
  | `rules[].conflicted_with` | List of rule_ids that fired against this one. Reduction handled per `rule-interactions.md`. |
@@ -163,7 +163,7 @@ majors.
163
163
  ## Cross-references
164
164
 
165
165
  - Personas (Architect, Risk-Officer) live in the package's persona
166
- library under [`.agent-src.uncompressed/personas/`](../../.agent-src.uncompressed/personas/).
166
+ library under [`.agent-src.uncondensed/personas/`](../../.agent-src.uncondensed/personas/).
167
167
  This contract does not duplicate them — when a future trace consumer
168
168
  attributes a decision to one of those personas, the persona file is
169
169
  the source of truth, not this envelope.
@@ -15,7 +15,7 @@ keep-beta-until: 2026-08-19
15
15
 
16
16
  The generator
17
17
  [`scripts/build_discovery_manifest.py`](../../scripts/build_discovery_manifest.py)
18
- walks `.agent-src.uncompressed/` and emits the manifest to
18
+ walks `.agent-src.uncondensed/` and emits the manifest to
19
19
  `dist/discovery/discovery-manifest.json` plus a sidecar
20
20
  `discovery-manifest.json.sha256` for tamper detection.
21
21
 
@@ -58,7 +58,7 @@ per-artefact checksum drift all fail CI (Phase-6 invariants).
58
58
 
59
59
  ```jsonc
60
60
  {
61
- "path": ".agent-src.uncompressed/skills/laravel/SKILL.md",
61
+ "path": ".agent-src.uncondensed/skills/laravel/SKILL.md",
62
62
  "category": "skill",
63
63
  "name": "laravel",
64
64
  "workspaces": ["engineering"],
@@ -156,7 +156,7 @@ there is no `id` field.
156
156
  "optional_packs": ["symfony"],
157
157
  "artefact_count": 124,
158
158
  "packs": [
159
- { "id": "engineering-base", "artefact_count": 83, "artefacts": [".agent-src.uncompressed/skills/…/SKILL.md", "…"] }
159
+ { "id": "engineering-base", "artefact_count": 83, "artefacts": [".agent-src.uncondensed/skills/…/SKILL.md", "…"] }
160
160
  ]
161
161
  }
162
162
  ]
@@ -178,7 +178,7 @@ there is no `id` field.
178
178
  "requires_hint": [],
179
179
  "trust_level_default": "core",
180
180
  "artefact_count": 83,
181
- "artefacts": [".agent-src.uncompressed/skills/…/SKILL.md", "…"],
181
+ "artefacts": [".agent-src.uncondensed/skills/…/SKILL.md", "…"],
182
182
  "by_lifecycle": { "active": 82, "experimental": 1, "deprecated": 0, "archived": 0 },
183
183
  "by_trust_level": { "core": 83, "professional": 0, "experimental": 0, "advisory": 0, "restricted": 0 }
184
184
  }
@@ -1,3 +1,7 @@
1
+ ---
2
+ stability: experimental
3
+ ---
4
+
1
5
  # Explain Modes Contract
2
6
 
3
7
  > **Status** · v0 / design · 2026-05-24. Phase 6 of the