@event4u/agent-config 1.20.0 → 1.22.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 (268) hide show
  1. package/.agent-src/commands/agents.md +1 -1
  2. package/.agent-src/commands/bug-fix.md +2 -1
  3. package/.agent-src/commands/bug-investigate.md +3 -2
  4. package/.agent-src/commands/challenge-me/vision.md +348 -0
  5. package/.agent-src/commands/challenge-me/with-docs.md +333 -0
  6. package/.agent-src/commands/challenge-me.md +61 -0
  7. package/.agent-src/commands/chat-history/import.md +60 -64
  8. package/.agent-src/commands/compress.md +12 -0
  9. package/.agent-src/commands/context/create.md +2 -2
  10. package/.agent-src/commands/context.md +1 -1
  11. package/.agent-src/commands/copilot-agents.md +1 -1
  12. package/.agent-src/commands/council/default.md +69 -10
  13. package/.agent-src/commands/council.md +1 -1
  14. package/.agent-src/commands/create-pr.md +7 -3
  15. package/.agent-src/commands/e2e-heal.md +1 -1
  16. package/.agent-src/commands/e2e-plan.md +1 -1
  17. package/.agent-src/commands/feature/dev.md +3 -3
  18. package/.agent-src/commands/feature.md +1 -1
  19. package/.agent-src/commands/fix/seeder.md +2 -2
  20. package/.agent-src/commands/fix.md +1 -1
  21. package/.agent-src/commands/grill-me.md +38 -0
  22. package/.agent-src/commands/jira-ticket.md +1 -1
  23. package/.agent-src/commands/judge/steps.md +1 -1
  24. package/.agent-src/commands/judge.md +2 -2
  25. package/.agent-src/commands/memory.md +1 -1
  26. package/.agent-src/commands/mode.md +5 -5
  27. package/.agent-src/commands/module.md +1 -1
  28. package/.agent-src/commands/onboard.md +4 -4
  29. package/.agent-src/commands/optimize/augmentignore.md +1 -1
  30. package/.agent-src/commands/optimize-prompt.md +61 -0
  31. package/.agent-src/commands/optimize.md +1 -1
  32. package/.agent-src/commands/override.md +1 -1
  33. package/.agent-src/commands/review-changes.md +1 -1
  34. package/.agent-src/commands/review-routing.md +1 -1
  35. package/.agent-src/commands/roadmap/ai-council.md +183 -0
  36. package/.agent-src/commands/roadmap/create.md +6 -1
  37. package/.agent-src/commands/roadmap/process-full.md +58 -0
  38. package/.agent-src/commands/roadmap/process-phase.md +69 -0
  39. package/.agent-src/commands/roadmap/process-step.md +57 -0
  40. package/.agent-src/commands/roadmap.md +45 -17
  41. package/.agent-src/commands/set-cost-profile.md +3 -3
  42. package/.agent-src/commands/sync-agent-settings.md +2 -2
  43. package/.agent-src/commands/tests/create.md +2 -2
  44. package/.agent-src/commands/tests.md +1 -1
  45. package/.agent-src/commands/threat-model.md +5 -4
  46. package/.agent-src/contexts/augment-infrastructure.md +1 -1
  47. package/.agent-src/contexts/authority/commit-mechanics.md +14 -1
  48. package/.agent-src/contexts/authority/destructive-mechanics.md +14 -1
  49. package/.agent-src/contexts/authority/scope-mechanics.md +5 -0
  50. package/.agent-src/contexts/communication/rules-auto/guidelines-mechanics.md +76 -0
  51. package/.agent-src/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md +54 -19
  52. package/.agent-src/contexts/communication/rules-auto/think-before-action-mechanics.md +98 -0
  53. package/.agent-src/contexts/communication/rules-auto/token-efficiency-mechanics.md +93 -0
  54. package/.agent-src/contexts/communication/rules-auto/user-interaction-mechanics.md +128 -5
  55. package/.agent-src/contexts/execution/autonomy-mechanics.md +44 -0
  56. package/.agent-src/contexts/execution/roadmap-process-loop.md +125 -0
  57. package/.agent-src/contexts/model-recommendations.md +2 -2
  58. package/.agent-src/contexts/override-system.md +1 -1
  59. package/.agent-src/contexts/skills-and-commands.md +1 -1
  60. package/.agent-src/personas/product-owner.md +2 -2
  61. package/.agent-src/personas/qa.md +1 -1
  62. package/.agent-src/rules/agent-authority.md +5 -6
  63. package/.agent-src/rules/agent-docs.md +11 -53
  64. package/.agent-src/rules/analysis-skill-routing.md +10 -40
  65. package/.agent-src/rules/architecture.md +6 -1
  66. package/.agent-src/rules/artifact-drafting-protocol.md +5 -0
  67. package/.agent-src/rules/artifact-engagement-recording.md +23 -59
  68. package/.agent-src/rules/ask-when-uncertain.md +24 -47
  69. package/.agent-src/rules/augment-portability.md +14 -62
  70. package/.agent-src/rules/augment-source-of-truth.md +10 -1
  71. package/.agent-src/rules/autonomous-execution.md +17 -98
  72. package/.agent-src/rules/capture-learnings.md +9 -80
  73. package/.agent-src/rules/cli-output-handling.md +12 -42
  74. package/.agent-src/rules/command-suggestion-policy.md +25 -73
  75. package/.agent-src/rules/commit-conventions.md +9 -58
  76. package/.agent-src/rules/commit-policy.md +16 -47
  77. package/.agent-src/rules/context-hygiene.md +5 -0
  78. package/.agent-src/rules/direct-answers.md +21 -50
  79. package/.agent-src/rules/docker-commands.md +11 -45
  80. package/.agent-src/rules/docs-sync.md +10 -56
  81. package/.agent-src/rules/downstream-changes.md +5 -0
  82. package/.agent-src/rules/e2e-testing.md +9 -44
  83. package/.agent-src/rules/guidelines.md +13 -75
  84. package/.agent-src/rules/improve-before-implement.md +11 -2
  85. package/.agent-src/rules/invite-challenge.md +71 -0
  86. package/.agent-src/rules/language-and-tone.md +41 -106
  87. package/.agent-src/rules/laravel-translations.md +11 -40
  88. package/.agent-src/rules/markdown-safe-codeblocks.md +4 -0
  89. package/.agent-src/rules/minimal-safe-diff.md +4 -0
  90. package/.agent-src/rules/missing-tool-handling.md +4 -0
  91. package/.agent-src/rules/model-recommendation.md +9 -61
  92. package/.agent-src/rules/no-attribution-footers.md +5 -0
  93. package/.agent-src/rules/no-cheap-questions.md +11 -27
  94. package/.agent-src/rules/no-council-references.md +76 -0
  95. package/.agent-src/rules/no-roadmap-references.md +7 -0
  96. package/.agent-src/rules/non-destructive-by-default.md +13 -43
  97. package/.agent-src/rules/onboarding-gate.md +9 -117
  98. package/.agent-src/rules/package-ci-checks.md +10 -37
  99. package/.agent-src/rules/php-coding.md +10 -55
  100. package/.agent-src/rules/preservation-guard.md +9 -0
  101. package/.agent-src/rules/review-routing-awareness.md +9 -97
  102. package/.agent-src/rules/reviewer-awareness.md +8 -83
  103. package/.agent-src/rules/roadmap-progress-sync.md +7 -170
  104. package/.agent-src/rules/role-mode-adherence.md +6 -2
  105. package/.agent-src/rules/rule-type-governance.md +8 -66
  106. package/.agent-src/rules/runtime-safety.md +5 -0
  107. package/.agent-src/rules/scope-control.md +17 -62
  108. package/.agent-src/rules/security-sensitive-stop.md +7 -1
  109. package/.agent-src/rules/size-enforcement.md +6 -1
  110. package/.agent-src/rules/skill-improvement-trigger.md +9 -49
  111. package/.agent-src/rules/skill-quality.md +7 -113
  112. package/.agent-src/rules/slash-command-routing-policy.md +11 -63
  113. package/.agent-src/rules/think-before-action.md +22 -87
  114. package/.agent-src/rules/token-efficiency.md +10 -74
  115. package/.agent-src/rules/token-optimizer-maintenance.md +68 -0
  116. package/.agent-src/rules/tool-safety.md +4 -0
  117. package/.agent-src/rules/ui-audit-gate.md +25 -61
  118. package/.agent-src/rules/upstream-proposal.md +9 -67
  119. package/.agent-src/rules/user-interaction.md +22 -108
  120. package/.agent-src/rules/verify-before-complete.md +1 -1
  121. package/.agent-src/skills/adversarial-review/SKILL.md +1 -0
  122. package/.agent-src/skills/agent-docs-writing/SKILL.md +1 -1
  123. package/.agent-src/skills/ai-council/SKILL.md +197 -8
  124. package/.agent-src/skills/analysis-autonomous-mode/SKILL.md +1 -1
  125. package/.agent-src/skills/analysis-skill-router/SKILL.md +3 -3
  126. package/.agent-src/skills/artisan-commands/SKILL.md +2 -2
  127. package/.agent-src/skills/authz-review/SKILL.md +1 -1
  128. package/.agent-src/skills/aws-infrastructure/SKILL.md +5 -5
  129. package/.agent-src/skills/blast-radius-analyzer/SKILL.md +8 -8
  130. package/.agent-src/skills/bug-analyzer/SKILL.md +6 -5
  131. package/.agent-src/skills/code-refactoring/SKILL.md +4 -4
  132. package/.agent-src/skills/code-review/SKILL.md +2 -2
  133. package/.agent-src/skills/command-writing/SKILL.md +11 -0
  134. package/.agent-src/skills/composer-packages/SKILL.md +2 -2
  135. package/.agent-src/skills/context-authoring/SKILL.md +11 -0
  136. package/.agent-src/skills/context-document/SKILL.md +1 -1
  137. package/.agent-src/skills/copilot-agents-optimization/SKILL.md +23 -0
  138. package/.agent-src/skills/copilot-config/SKILL.md +1 -1
  139. package/.agent-src/skills/dependency-upgrade/SKILL.md +2 -2
  140. package/.agent-src/skills/devcontainer/SKILL.md +2 -2
  141. package/.agent-src/skills/developer-like-execution/SKILL.md +1 -1
  142. package/.agent-src/skills/docker/SKILL.md +1 -1
  143. package/.agent-src/skills/dto-creator/SKILL.md +1 -1
  144. package/.agent-src/skills/estimate-ticket/SKILL.md +2 -2
  145. package/.agent-src/skills/fe-design/SKILL.md +4 -4
  146. package/.agent-src/skills/feature-planning/SKILL.md +5 -5
  147. package/.agent-src/skills/funnel-analysis/SKILL.md +1 -1
  148. package/.agent-src/skills/laravel/SKILL.md +1 -1
  149. package/.agent-src/skills/laravel-notifications/SKILL.md +5 -5
  150. package/.agent-src/skills/laravel-pennant/SKILL.md +1 -1
  151. package/.agent-src/skills/laravel-pulse/SKILL.md +4 -4
  152. package/.agent-src/skills/laravel-reverb/SKILL.md +2 -2
  153. package/.agent-src/skills/laravel-scheduling/SKILL.md +1 -1
  154. package/.agent-src/skills/migration-creator/SKILL.md +7 -7
  155. package/.agent-src/skills/multi-tenancy/SKILL.md +8 -8
  156. package/.agent-src/skills/performance-analysis/SKILL.md +3 -3
  157. package/.agent-src/skills/pest-testing/SKILL.md +6 -6
  158. package/.agent-src/skills/php-service/SKILL.md +2 -2
  159. package/.agent-src/skills/project-analysis-hypothesis-driven/SKILL.md +3 -3
  160. package/.agent-src/skills/project-analysis-react/SKILL.md +1 -1
  161. package/.agent-src/skills/project-analysis-symfony/SKILL.md +1 -1
  162. package/.agent-src/skills/project-analysis-zend-laminas/SKILL.md +2 -2
  163. package/.agent-src/skills/project-analyzer/SKILL.md +4 -4
  164. package/.agent-src/skills/prompt-optimizer/SKILL.md +108 -0
  165. package/.agent-src/skills/readme-reviewer/SKILL.md +1 -1
  166. package/.agent-src/skills/roadmap-management/SKILL.md +7 -7
  167. package/.agent-src/skills/rule-writing/SKILL.md +33 -0
  168. package/.agent-src/skills/sentry-integration/SKILL.md +1 -1
  169. package/.agent-src/skills/skill-writing/SKILL.md +14 -0
  170. package/.agent-src/skills/systematic-debugging/SKILL.md +22 -2
  171. package/.agent-src/skills/technical-specification/SKILL.md +58 -1
  172. package/.agent-src/skills/terraform/SKILL.md +2 -2
  173. package/.agent-src/skills/terragrunt/SKILL.md +8 -8
  174. package/.agent-src/skills/test-performance/SKILL.md +5 -5
  175. package/.agent-src/skills/threat-modeling/SKILL.md +3 -2
  176. package/.agent-src/skills/token-optimizer/SKILL.md +110 -0
  177. package/.agent-src/skills/universal-project-analysis/SKILL.md +1 -1
  178. package/.agent-src/templates/AGENTS.md +1 -1
  179. package/.agent-src/templates/agent-settings.md +35 -19
  180. package/.agent-src/templates/command.md +17 -1
  181. package/.agent-src/templates/contexts/tenant-boundaries.md +2 -2
  182. package/.agent-src/templates/contexts.md +1 -1
  183. package/.agent-src/templates/copilot-instructions.md +21 -0
  184. package/.agent-src/templates/copilot-review-instructions.md +76 -0
  185. package/.agent-src/templates/features.md +1 -1
  186. package/.agent-src/templates/roadmaps.md +10 -2
  187. package/.agent-src/templates/rule.md +129 -0
  188. package/.agent-src/templates/skill.md +17 -0
  189. package/.claude-plugin/marketplace.json +12 -2
  190. package/AGENTS.md +32 -5
  191. package/CHANGELOG.md +107 -3
  192. package/README.md +22 -21
  193. package/config/agent-settings.template.yml +66 -10
  194. package/config/gitignore-block.txt +7 -0
  195. package/docs/architecture.md +86 -5
  196. package/docs/catalog.md +16 -6
  197. package/docs/contracts/agent-memory-contract.md +1 -1
  198. package/docs/contracts/command-clusters.md +45 -1
  199. package/docs/contracts/context-paths.md +2 -1
  200. package/docs/contracts/file-ownership-matrix.json +354 -500
  201. package/docs/contracts/iron-law-overrides.txt +25 -0
  202. package/docs/contracts/kernel-membership.md +273 -0
  203. package/docs/contracts/load-context-schema.md +26 -11
  204. package/docs/contracts/pilot/agent-authority.md +24 -0
  205. package/docs/contracts/pilot/direct-answers.md +70 -0
  206. package/docs/contracts/pilot/language-and-tone.md +63 -0
  207. package/docs/contracts/rule-classification.md +170 -0
  208. package/docs/contracts/rule-router.md +153 -0
  209. package/docs/customization.md +17 -6
  210. package/docs/decisions/ADR-001-kernel-swap-deferred.md +109 -0
  211. package/docs/decisions/ADR-002-kernel-bucket-overrides.md +124 -0
  212. package/docs/decisions/ADR-003-flat-cluster-subs-and-colon-syntax.md +126 -0
  213. package/docs/decisions/ADR-rule-kernel-and-router.md +122 -0
  214. package/docs/getting-started.md +2 -2
  215. package/docs/guidelines/agent-infra/naming.md +1 -1
  216. package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +176 -0
  217. package/docs/guidelines/agent-infra/rule-type-governance.md +73 -0
  218. package/docs/guidelines/agent-infra/size-and-scope.md +13 -2
  219. package/docs/guidelines/agent-infra/skill-quality-checklist.md +119 -0
  220. package/docs/guidelines/augment-portability-patterns.md +68 -0
  221. package/docs/guidelines/php/php-coding-patterns.md +62 -0
  222. package/package.json +1 -1
  223. package/scripts/_p43_bodies.py +235 -0
  224. package/scripts/_p43_compress.py +118 -0
  225. package/scripts/_p4_migrate.py +199 -0
  226. package/scripts/_phase2_shim_helper.py +1 -1
  227. package/scripts/_pilot_council_question.py +57 -0
  228. package/scripts/_pilot_measure.py +53 -0
  229. package/scripts/ai_council/session.py +107 -5
  230. package/scripts/build_linear_digest.py +3 -5
  231. package/scripts/check_always_budget.py +39 -6
  232. package/scripts/check_compressed_paths.py +213 -0
  233. package/scripts/check_compression.py +15 -0
  234. package/scripts/check_context_paths.py +1 -0
  235. package/scripts/check_council_layout.py +105 -0
  236. package/scripts/check_council_references.py +145 -0
  237. package/scripts/check_portability.py +2 -0
  238. package/scripts/check_references.py +2 -0
  239. package/scripts/check_token_optimizer_freshness.py +131 -0
  240. package/scripts/compile_router.py +148 -0
  241. package/scripts/compress.py +219 -11
  242. package/scripts/council_cli.py +132 -11
  243. package/scripts/council_prune.py +81 -0
  244. package/scripts/count_token_optimizer_usage.sh +54 -0
  245. package/scripts/install.sh +44 -2
  246. package/scripts/iron_law_sha.py +98 -0
  247. package/scripts/lint_load_context.py +35 -5
  248. package/scripts/measure_rule_budget.py +314 -0
  249. package/scripts/migrate_command_suggestions.py +2 -2
  250. package/scripts/prototype_lint_contradictions.py +150 -0
  251. package/scripts/schemas/command.schema.json +5 -0
  252. package/scripts/schemas/rule.schema.json +60 -6
  253. package/scripts/schemas/skill.schema.json +5 -0
  254. package/scripts/skill_linter.py +197 -7
  255. package/scripts/smoke_path_resolution.py +93 -0
  256. package/scripts/validate_frontmatter.py +41 -1
  257. package/.agent-src/commands/roadmap/execute.md +0 -109
  258. package/.agent-src/contexts/communication/rules-auto/artifact-engagement-recording-mechanics.md +0 -72
  259. package/.agent-src/contexts/communication/rules-auto/augment-portability-mechanics.md +0 -79
  260. package/.agent-src/contexts/communication/rules-auto/cli-output-handling-mechanics.md +0 -87
  261. package/.agent-src/contexts/communication/rules-auto/command-suggestion-policy-mechanics.md +0 -62
  262. package/.agent-src/contexts/communication/rules-auto/docs-sync-mechanics.md +0 -78
  263. package/.agent-src/contexts/communication/rules-auto/package-ci-checks-mechanics.md +0 -85
  264. package/.agent-src/contexts/communication/rules-auto/review-routing-awareness-mechanics.md +0 -65
  265. package/.agent-src/contexts/communication/rules-auto/roadmap-progress-sync-mechanics.md +0 -78
  266. package/.agent-src/contexts/communication/rules-auto/ui-audit-gate-mechanics.md +0 -53
  267. /package/{docs → .agent-src/contexts}/contracts/artifact-engagement-flow.md +0 -0
  268. /package/{docs → .agent-src/contexts}/contracts/command-suggestion-flow.md +0 -0
@@ -29,3 +29,10 @@
29
29
 
30
30
  # Agent config — AI Council price table (refreshed weekly, never commit)
31
31
  /agents/.agent-prices.md
32
+
33
+ # Agent config — AI Council artefacts (questions, responses, sessions).
34
+ # Dev-time scratch — informs decisions, never the durable contract.
35
+ # See ai-council § Output path convention.
36
+ /agents/council-questions/
37
+ /agents/council-responses/
38
+ /agents/council-sessions/
@@ -27,7 +27,8 @@ Stability tiers follow [`docs/contracts/STABILITY.md`](contracts/STABILITY.md):
27
27
  .agent-src.uncompressed/ ← Source of truth (verbose, human-readable)
28
28
  ↓ /compress command
29
29
  .agent-src/ ← Compressed output (token-efficient, shipped in the package)
30
- ↓ project_to_augment() — copies rules, symlinks rest
30
+ ↓ project_to_augment() — copies rules by default, symlinks rest
31
+ (toggle: augment.rules_use_symlinks)
31
32
  .augment/ ← Local projection for Augment Code (gitignored)
32
33
  ↓ install.sh (Cursor, Cline, Windsurf, Augment VSCode) / plugin system
33
34
  .claude/ .cursor/ .clinerules/ ← Tool-specific symlinks/copies (auto-generated)
@@ -36,6 +37,39 @@ Stability tiers follow [`docs/contracts/STABILITY.md`](contracts/STABILITY.md):
36
37
  dist/cloud/<skill>.zip ← Anthropic Skills bundles (Claude.ai Web / Skills API)
37
38
  ```
38
39
 
40
+ ### Installer layout
41
+
42
+ In a consumer project, the installer (`scripts/install.sh`) and the
43
+ package's own `project_to_augment()` projection produce a `.augment/`
44
+ tree where:
45
+
46
+ - `.augment/rules/` — **copies** of compressed rule files by default.
47
+ Augment Code historically does not load symlinked rules, so each
48
+ rule is a real file. Set `augment.rules_use_symlinks: true` in
49
+ `.agent-settings.yml` to switch them to symlinks once Augment Code
50
+ supports it (the toggle is honored by both `scripts/install.sh` on
51
+ the consumer side and `project_to_augment()` in the package).
52
+ - `.augment/skills/`, `.augment/commands/`, `.augment/personas/`,
53
+ `.augment/contexts/`, `.augment/templates/` — **symlinks** into
54
+ `.agent-src/<subdir>/`. Reading a context follows the symlink to
55
+ the package payload.
56
+ - `.augment/docs/guidelines/` — **symlink** into the package's
57
+ `docs/guidelines/` (consumer side: `vendor/event4u/agent-config/docs/guidelines/`;
58
+ package self-projection: `../docs/guidelines/`). This is the only
59
+ `docs/` subdirectory exposed in `.augment/`; `docs/contracts/` and
60
+ `docs/decisions/` are package-internal — rules that reference
61
+ contracts inline a 2–3 line excerpt instead of linking out.
62
+
63
+ Cross-references inside `.agent-src/rules/*.md` are written
64
+ **relative to `.agent-src/rules/`** (e.g. `../contexts/execution/foo.md`,
65
+ `../docs/guidelines/agent-infra/foo.md`). Source files under
66
+ `.agent-src.uncompressed/rules/` use **logical names** without a
67
+ directory prefix (e.g. `contexts/execution/foo.md`); the
68
+ compress-time path rewriter in `scripts/compress.py` translates
69
+ them to the relative form when writing into `.agent-src/`. Hardcoding
70
+ `.agent-src.uncompressed/` in source frontmatter or body links is
71
+ forbidden and caught by `scripts/check_compressed_paths.py`.
72
+
39
73
  ### Cloud-bundle pipeline
40
74
 
41
75
  `task build-cloud-bundles-all` produces one ZIP per skill at
@@ -62,10 +96,10 @@ fails on any source-side violation, without producing artifacts.
62
96
 
63
97
  | Layer | Count | Purpose |
64
98
  |---|---|---|
65
- | **Skills** | 134 | On-demand expertise — stack analysis (Laravel · Symfony · Zend / Laminas · Next.js · React · Node), testing, Docker, API design, security, observability, … |
66
- | **Rules** | 56 | Always-active constraints — coding standards, scope control, verification, language-and-tone, agent-authority |
67
- | **Commands** | 94 | Slash-command workflows — `/commit`, `/create-pr`, `/fix ci`, `/optimize skills`, `/feature plan`, `/work`, `/implement-ticket`, `/compress`, … |
68
- | **Guidelines** | 51 | Reference material cited by skills — PHP patterns, Eloquent, Playwright, agent-infra, … |
99
+ | **Skills** | 136 | On-demand expertise — stack analysis (Laravel · Symfony · Zend / Laminas · Next.js · React · Node), testing, Docker, API design, security, observability, … |
100
+ | **Rules** | 59 | Always-active constraints — coding standards, scope control, verification, language-and-tone, agent-authority |
101
+ | **Commands** | 102 | Slash-command workflows — `/commit`, `/create-pr`, `/fix ci`, `/optimize skills`, `/feature plan`, `/work`, `/implement-ticket`, `/compress`, … |
102
+ | **Guidelines** | 56 | Reference material cited by skills — PHP patterns, Eloquent, Playwright, agent-infra, … |
69
103
  | **Templates** | 7 | Scaffolds for features, roadmaps, contexts, skills, overrides |
70
104
  | **Contexts** | 5 | Shared knowledge about the system itself |
71
105
 
@@ -215,4 +249,51 @@ adjustments (description budget, sandbox note, package-internal path-swap).
215
249
 
216
250
  ---
217
251
 
252
+ ## Path resolution and Copilot integration
253
+
254
+ Cross-references inside `.augment/rules/`, `.augment/skills/`, and the
255
+ mirrored `.claude/`, `.cursor/`, `.clinerules/` trees use **relative
256
+ paths from the delivered location**. They resolve through the symlinks
257
+ created by `scripts/install.sh`, not via raw git checkout. This means
258
+ GitHub Copilot's static checker — which walks the git tree — will see
259
+ broken paths where there are none. **The gap is intentional, not a bug.**
260
+
261
+ The package ships two complementary suppression artefacts:
262
+
263
+ | File | Read by | Purpose |
264
+ |---|---|---|
265
+ | `.github/copilot-instructions.md` | Copilot Chat + PR review | Repo-wide coding standards, self-contained behavior |
266
+ | `.github/copilot-review-instructions.md` | Copilot PR review | Path-resolution suppression floor (this section's mate) |
267
+
268
+ Both are installed (copy-if-missing) by `scripts/install.sh` from
269
+ `.agent-src.uncompressed/templates/`. Consumers can edit them freely;
270
+ the installer never overwrites.
271
+
272
+ The mechanical floor is `scripts/check_compressed_paths.py`, wired into
273
+ `task ci` as `check-compressed-paths`. It validates `.agent-src/rules/*.md`:
274
+
275
+ - `load_context:` entries must resolve to existing files.
276
+ - Forbidden substrings (`.agent-src.uncompressed/`, `../../docs/`,
277
+ `../../agents/`) must not survive compression — unless declared
278
+ per-rule via the `validator_ignore:` frontmatter primitive (audited).
279
+ - Body links to `../docs/guidelines/...` are intentionally **not**
280
+ checked (they are package-internal reference material, silenced by
281
+ the Copilot suppression floor above).
282
+
283
+ ### Verifying path fixes in a consumer
284
+
285
+ If a regression is suspected, replay the smoke test against the
286
+ package's own `.augment/` projection:
287
+
288
+ ```bash
289
+ task sync # regenerate .agent-src/ → .augment/
290
+ python3 scripts/smoke_path_resolution.py
291
+ ```
292
+
293
+ The script walks `.augment/rules/*.md` and resolves every
294
+ `load_context:` entry to a file under `.augment/`. A non-zero exit
295
+ means a consumer would also see the same broken reference.
296
+
297
+ ---
298
+
218
299
  ← [Back to README](../README.md)
package/docs/catalog.md CHANGED
@@ -1,13 +1,13 @@
1
1
  # agent-config — Public Catalog
2
2
 
3
- Consumer-facing catalog of all **332 public artefacts** shipped by
3
+ Consumer-facing catalog of all **342 public artefacts** shipped by
4
4
  this package. Internal package-maintenance rules and deprecation shims
5
5
  are excluded.
6
6
 
7
7
  > **Regenerate:** `python3 scripts/generate_index.py`
8
8
  > Auto-generated — do not edit manually.
9
9
 
10
- ## Skills (134)
10
+ ## Skills (136)
11
11
 
12
12
  | kind | name | extra | description |
13
13
  |---|---|---|---|
@@ -106,6 +106,7 @@ are excluded.
106
106
  | skill | [`project-analysis-zend-laminas`](../.agent-src/skills/project-analysis-zend-laminas/SKILL.md) | | Use for deep Zend Framework or Laminas project analysis: bootstrap, config merge order, service manager, MVC flow, data layer, and migration-specific risks. |
107
107
  | skill | [`project-analyzer`](../.agent-src/skills/project-analyzer/SKILL.md) | | ONLY when user explicitly requests: full project analysis, tech stack detection, or structured analysis documents for agents/analysis/. NOT for regular feature work. |
108
108
  | skill | [`project-docs`](../.agent-src/skills/project-docs/SKILL.md) | | Use when looking for project-specific documentation. Knows which docs exist in agents/docs/ and agents/contexts/ and maps work areas to relevant docs. |
109
+ | skill | [`prompt-optimizer`](../.agent-src/skills/prompt-optimizer/SKILL.md) | | Use when the user wants a prompt optimized for ChatGPT, Claude, Gemini, or another AI — 'make this prompt better', 'optimize for ChatGPT', 'rewrite my prompt' — even without saying 'optimize'. |
109
110
  | skill | [`quality-tools`](../.agent-src/skills/quality-tools/SKILL.md) | | Use when PHPStan, Rector, or ECS output appears — \"phpstan says mixed\", type errors, \"fix code style\", \"run rector\" — even when Eloquent/Laravel/model code is also mentioned. |
110
111
  | skill | [`react-shadcn-ui`](../.agent-src/skills/react-shadcn-ui/SKILL.md) | | Use when building React UI on shadcn/ui primitives + Tailwind — the apply/review/polish skill dispatched by `directives/ui/*` for the `react-shadcn` stack. |
111
112
  | skill | [`readme-reviewer`](../.agent-src/skills/readme-reviewer/SKILL.md) | | Use when reviewing a README for accuracy, usability, and alignment with the actual repository. Detects invented content, broken setup steps, and structural issues. |
@@ -137,6 +138,7 @@ are excluded.
137
138
  | skill | [`test-driven-development`](../.agent-src/skills/test-driven-development/SKILL.md) | | Use when implementing a feature, fixing a bug, or refactoring — write a failing test first, then the code — even if the user just says 'add this function' or 'fix this bug'. |
138
139
  | skill | [`test-performance`](../.agent-src/skills/test-performance/SKILL.md) | | Use when optimizing test suite performance — database setup, seeder optimization, parallel testing, CI pipeline efficiency, or RefreshDatabase alternatives. |
139
140
  | skill | [`threat-modeling`](../.agent-src/skills/threat-modeling/SKILL.md) | | Use when adding auth, webhooks, uploads, queues, secrets, tenant boundaries, or public endpoints — produces trust boundaries + abuse cases mapped to files, BEFORE implementation. |
141
+ | skill | [`token-optimizer`](../.agent-src/skills/token-optimizer/SKILL.md) | | Use BEFORE any verbose CLI run, large file read, doc conversion, or near-context handoff — single decision tree keyed by intent that cites the canonical token-saving asset. Consult before the action. |
140
142
  | skill | [`traefik`](../.agent-src/skills/traefik/SKILL.md) | | Use when setting up Traefik as a local reverse proxy — real domains on 127.0.0.1, trusted HTTPS via mkcert, automatic service discovery, and multi-project routing. |
141
143
  | skill | [`unit-economics-modeling`](../.agent-src/skills/unit-economics-modeling/SKILL.md) | | Use when modeling CAC, LTV, gross-margin payback, or contribution margin per customer — for SaaS, marketplace, or transactional businesses. |
142
144
  | skill | [`universal-project-analysis`](../.agent-src/skills/universal-project-analysis/SKILL.md) | | ONLY when user explicitly requests: full project analysis, deep codebase audit, or comprehensive architecture review. Routes to core and framework-specific analysis skills. |
@@ -146,7 +148,7 @@ are excluded.
146
148
  | skill | [`verify-completion-evidence`](../.agent-src/skills/verify-completion-evidence/SKILL.md) | | Use when claiming 'done', suggesting a commit, push, or PR — runs the evidence gate so completion claims come from fresh output in this message, not memory or earlier runs. |
147
149
  | skill | [`websocket`](../.agent-src/skills/websocket/SKILL.md) | | Use when building real-time features — WebSocket broadcasting, live updates, presence channels, connection state — even when the user just says 'push this to the client live'. |
148
150
 
149
- ## Rules (53)
151
+ ## Rules (55)
150
152
 
151
153
  | kind | name | type | description |
152
154
  |---|---|---|---|
@@ -178,6 +180,7 @@ are excluded.
178
180
  | rule | [`model-recommendation`](../.agent-src/rules/model-recommendation.md) | auto | Starting a new task, switching task type, or invoking a command — detect task complexity and recommend the optimal model (Opus/Sonnet/GPT) before any work |
179
181
  | rule | [`no-attribution-footers`](../.agent-src/rules/no-attribution-footers.md) | auto | Generating PR/issue/comment/commit-message bodies — forbids unsolicited 'Generated with', 'Co-authored by', or 'Pull Request opened by' attribution footers in any user-owned artifact |
180
182
  | rule | [`no-cheap-questions`](../.agent-src/rules/no-cheap-questions.md) | always | No cheap questions — never ask what context answers, never offer Iron-Law-violating options, never stage no-trade-off choices; mode-independent (off / auto / on) |
183
+ | rule | [`no-council-references`](../.agent-src/rules/no-council-references.md) | auto | Linking a specific file in agents/council-{questions,responses,sessions}/ from any artifact — council files are gitignored, local-only, auto-pruned; inline the convergence instead |
181
184
  | rule | [`no-roadmap-references`](../.agent-src/rules/no-roadmap-references.md) | auto | Adding a link to a specific file in agents/roadmaps/ from any stable artifact (rule, skill, command, context, guideline) — roadmaps are transient; promote durable findings to agents/contexts/ instead |
182
185
  | rule | [`non-destructive-by-default`](../.agent-src/rules/non-destructive-by-default.md) | always | Agent is never destructive — Hard Floor always asks for prod-trunk merges, deploys, pushes, prod data/infra, bulk deletions, and bulk-deletion/infra commits; no autonomy or roadmap bypass |
183
186
  | rule | [`onboarding-gate`](../.agent-src/rules/onboarding-gate.md) | auto | First turn of a conversation on a project — check onboarding.onboarded in .agent-settings.yml; when false, prompt the user to run /onboard before executing any other request |
@@ -198,13 +201,14 @@ are excluded.
198
201
  | rule | [`slash-command-routing-policy`](../.agent-src/rules/slash-command-routing-policy.md) | auto | When user types a slash command like /create-pr, /commit, or pastes command file content |
199
202
  | rule | [`think-before-action`](../.agent-src/rules/think-before-action.md) | auto | Before coding, modifying, or debugging — analyze first, verify with real tools, never guess or trial-and-error |
200
203
  | rule | [`token-efficiency`](../.agent-src/rules/token-efficiency.md) | auto | When running CLI tools, fetching logs, or producing replies — redirect verbose output, minimize tool calls, keep replies concise |
204
+ | rule | [`token-optimizer-maintenance`](../.agent-src/rules/token-optimizer-maintenance.md) | auto | Editing a token-optimizer-cited asset (cli-output-handling, rtk-output-filtering, token-efficiency, agent-handoff, direct-answers, markitdown) — keep the catalog row in sync in the same commit. |
201
205
  | rule | [`tool-safety`](../.agent-src/rules/tool-safety.md) | auto | When a skill uses external tools — enforce allowlist, deny-by-default, and no hidden credential patterns |
202
206
  | rule | [`ui-audit-gate`](../.agent-src/rules/ui-audit-gate.md) | auto | Writing or editing UI — components, screens, partials, layouts, design tokens — require existing-ui-audit findings in state.ui_audit before non-trivial UI change; gate, not suggestion |
203
207
  | rule | [`upstream-proposal`](../.agent-src/rules/upstream-proposal.md) | auto | After creating or significantly improving a skill, rule, guideline, or command — ask if it should be contributed upstream to the shared package |
204
208
  | rule | [`user-interaction`](../.agent-src/rules/user-interaction.md) | auto | Asking the user a question, presenting options, or summarizing progress — numbered-options Iron Law, single-recommendation rule, progress indicators |
205
209
  | rule | [`verify-before-complete`](../.agent-src/rules/verify-before-complete.md) | always | Verify before completion — run tests and quality tools before claiming done |
206
210
 
207
- ## Commands (94)
211
+ ## Commands (95)
208
212
 
209
213
  | kind | name | cluster | description |
210
214
  |---|---|---|---|
@@ -217,7 +221,7 @@ are excluded.
217
221
  | command | [`analyze-reference-repo`](../.agent-src/commands/analyze-reference-repo.md) | | Analyze an external reference repository (competitor, inspiration, peer) and produce a structured comparison + adoption plan for this project. |
218
222
  | command | [`bug-fix`](../.agent-src/commands/bug-fix.md) | | Plan and implement a bug fix — based on investigation, with quality checks and test verification |
219
223
  | command | [`bug-investigate`](../.agent-src/commands/bug-investigate.md) | | Investigate a bug — auto-detect ticket from branch, gather Jira/Sentry/description context, trace root cause |
220
- | command | [`chat-history:import`](../.agent-src/commands/chat-history/import.md) | cluster: chat-history | Surface prior chat-history sessions as numbered options, let the user pick exactly one, then render its entries verbatim into the current chat — selective, user-driven cross-session import |
224
+ | command | [`chat-history:import`](../.agent-src/commands/chat-history/import.md) | cluster: chat-history | Surface prior chat-history sessions as a numbered table, let the user pick one, read it silently, and emit a short summary plus a resume offer — selective, user-driven cross-session import |
221
225
  | command | [`chat-history:learn`](../.agent-src/commands/chat-history/learn.md) | cluster: chat-history | Pick a prior chat-history session and mine it for project-improving learnings — runs learning-to-rule-or-skill on the picked session, drafts proposal(s) under agents/proposals/ |
222
226
  | command | [`chat-history:show`](../.agent-src/commands/chat-history/show.md) | cluster: chat-history | Show the status of the persistent chat-history log — file size, entry count, header fingerprint, age, and the last few entries |
223
227
  | command | [`chat-history`](../.agent-src/commands/chat-history.md) | cluster: chat-history | Chat-history orchestrator — routes to show, import, learn |
@@ -275,6 +279,7 @@ are excluded.
275
279
  | command | [`optimize:augmentignore`](../.agent-src/commands/optimize/augmentignore.md) | cluster: optimize | Creates or updates .augmentignore based on the project's actual tech stack, large files, generated artifacts, and irrelevant agent skills/rules. |
276
280
  | command | [`optimize:rtk`](../.agent-src/commands/optimize/rtk.md) | cluster: optimize | Create or optimize project-local rtk filters based on the actual toolchain |
277
281
  | command | [`optimize:skills`](../.agent-src/commands/optimize/skills.md) | cluster: optimize | Audits skills — measures baseline, finds duplicates/merge candidates, runs linter. Suggest only, never auto-apply. |
282
+ | command | [`optimize-prompt`](../.agent-src/commands/optimize-prompt.md) | cluster: optimize | Optimize a raw prompt for ChatGPT, Claude, Gemini, or another AI via the 4-D methodology — BASIC vs DETAIL auto-detect, one clarifying question per turn, returns the polished prompt. |
278
283
  | command | [`optimize`](../.agent-src/commands/optimize.md) | cluster: optimize | Optimize orchestrator — routes to skills, agents, augmentignore, rtk-filters |
279
284
  | command | [`override:create`](../.agent-src/commands/override/create.md) | cluster: override | Creates a project-level override for a shared skill, rule, or command. |
280
285
  | command | [`override:manage`](../.agent-src/commands/override/manage.md) | cluster: override | Reviews, updates, and refactors existing project-level overrides. |
@@ -303,7 +308,7 @@ are excluded.
303
308
  | command | [`upstream-contribute`](../.agent-src/commands/upstream-contribute.md) | | Contribute a learning, skill, rule, or fix from a consumer project back to the shared agent-config package |
304
309
  | command | [`work`](../.agent-src/commands/work.md) | | Drive a free-form prompt end-to-end through refine → score → plan → implement → test → verify → report — Option-A loop over the `work_engine` Python engine, confidence-band gated, no auto-git. |
305
310
 
306
- ## Guidelines (51)
311
+ ## Guidelines (56)
307
312
 
308
313
  | kind | name | category | description |
309
314
  |---|---|---|---|
@@ -320,13 +325,17 @@ are excluded.
320
325
  | guideline | [`naming`](../docs/guidelines/agent-infra/naming.md) | agent-infra | |
321
326
  | guideline | [`output-patterns`](../docs/guidelines/agent-infra/output-patterns.md) | agent-infra | |
322
327
  | guideline | [`review-routing-data-format`](../docs/guidelines/agent-infra/review-routing-data-format.md) | agent-infra | |
328
+ | guideline | [`roadmap-progress-mechanics`](../docs/guidelines/agent-infra/roadmap-progress-mechanics.md) | agent-infra | |
323
329
  | guideline | [`role-contracts`](../docs/guidelines/agent-infra/role-contracts.md) | agent-infra | |
324
330
  | guideline | [`role-mode-router`](../docs/guidelines/agent-infra/role-mode-router.md) | agent-infra | |
331
+ | guideline | [`rule-type-governance`](../docs/guidelines/agent-infra/rule-type-governance.md) | agent-infra | |
325
332
  | guideline | [`runtime-layer`](../docs/guidelines/agent-infra/runtime-layer.md) | agent-infra | |
326
333
  | guideline | [`self-improvement-pipeline`](../docs/guidelines/agent-infra/self-improvement-pipeline.md) | agent-infra | |
327
334
  | guideline | [`size-and-scope`](../docs/guidelines/agent-infra/size-and-scope.md) | agent-infra | |
335
+ | guideline | [`skill-quality-checklist`](../docs/guidelines/agent-infra/skill-quality-checklist.md) | agent-infra | |
328
336
  | guideline | [`tool-integration`](../docs/guidelines/agent-infra/tool-integration.md) | agent-infra | |
329
337
  | guideline | [`verify-before-complete-demos`](../docs/guidelines/agent-infra/verify-before-complete-demos.md) | agent-infra | |
338
+ | guideline | [`augment-portability-patterns`](../docs/guidelines/augment-portability-patterns.md) | (root) | |
330
339
  | guideline | [`readme-size-and-splitting`](../docs/guidelines/docs/readme-size-and-splitting.md) | docs | |
331
340
  | guideline | [`playwright`](../docs/guidelines/e2e/playwright.md) | e2e | |
332
341
  | guideline | [`api-design`](../docs/guidelines/php/api-design.md) | php | |
@@ -353,6 +362,7 @@ are excluded.
353
362
  | guideline | [`strategy`](../docs/guidelines/php/patterns/strategy.md) | patterns | |
354
363
  | guideline | [`patterns`](../docs/guidelines/php/patterns.md) | php | |
355
364
  | guideline | [`performance`](../docs/guidelines/php/performance.md) | php | |
365
+ | guideline | [`php-coding-patterns`](../docs/guidelines/php/php-coding-patterns.md) | php | |
356
366
  | guideline | [`resources`](../docs/guidelines/php/resources.md) | php | |
357
367
  | guideline | [`security`](../docs/guidelines/php/security.md) | php | |
358
368
  | guideline | [`sql`](../docs/guidelines/php/sql.md) | php | |
@@ -13,7 +13,7 @@ helpers.
13
13
  **Ownership.** `agent-memory` is ours; we decide release timing. This
14
14
  doc is internal, not a spec handed to an external team. The
15
15
  authoritative spec-side documents live under
16
- [`agents/roadmaps/agent-memory/`](../../agents/roadmaps/agent-memory/); this context
16
+ [`agents/roadmaps/agent-memory/`](../../agents/roadmaps/archive/agent-memory/); this context
17
17
  is the **consumer-side snapshot** — what our wired code assumes today.
18
18
 
19
19
  Last refreshed: 2026-04-22.
@@ -33,7 +33,7 @@ column 1 of this table.
33
33
  | `chat-history` | 2 | `show` · `import` · `learn` | `chat-history` (legacy status) — `resume` / `clear` / `checkpoint` removed in `road-to-chat-history-hook-only` (auto-adopt + structural hooks); `import` (verbatim cross-session render) and `learn` (project-improving learning extraction) added in the v4 stateless schema |
34
34
  | `agents` | 2 | `audit` · `cleanup` · `prepare` | `agents-audit` · `agents-cleanup` · `agents-prepare` |
35
35
  | `memory` | 2 | `add` · `load` · `promote` · `propose` | `memory-add` · `memory-full` · `memory-promote` · `propose-memory` |
36
- | `roadmap` | 2 | `create` · `execute` | `roadmap-create` · `roadmap-execute` |
36
+ | `roadmap` | 2 | `create` · `ai-council` · `process-step` · `process-phase` · `process-full` | `roadmap-create` · `roadmap-execute` (replaced — autonomous, no per-step gate; `process-phase` is the default execution scope); `ai-council` added 2026-05-07 — wraps `/council default` with `--input-mode roadmap --depth deep` |
37
37
  | `module` | 2 | `create` · `explore` | `module-create` · `module-explore` |
38
38
  | `tests` | 2 | `create` · `execute` | `tests-create` · `tests-execute` |
39
39
  | `context` | 2 | `create` · `refactor` | `context-create` · `context-refactor` |
@@ -43,6 +43,7 @@ column 1 of this table.
43
43
  | `commit` | 2 | `in-chunks` | `commit-in-chunks` |
44
44
  | `create-pr` | 2 | `description-only` | `create-pr-description` |
45
45
  | `council` | 3 | `default` · `pr` · `design` · `optimize` | `council` (legacy default lens) · `council-pr` · `council-design` · `council-optimize` |
46
+ | `challenge-me` | — | `vision` · `with-docs` | new — Pocock-inspired one-question-at-a-time interview; `vision` is the standard 95%-confidence variant, `with-docs` adds doc/glossary awareness with a session-scoped glossary and load-bearing claim-vs-code verification |
46
47
 
47
48
  **Net change:** Phase 1 collapsed 15 atomics → 3 clusters; Phase 2
48
49
  collapses 26 atomics → 11 sub-command clusters. Sub-commands use
@@ -51,6 +52,49 @@ autocomplete them. The standalone `/review` surface that mirrors
51
52
  `judge solo` lives at
52
53
  [`commands/review-changes.md`](../../.agent-src.uncompressed/commands/review-changes.md).
53
54
 
55
+ ## Cluster depth and sub-command naming
56
+
57
+ Locked by [ADR-003](../decisions/ADR-003-flat-cluster-subs-and-colon-syntax.md)
58
+ (2026-05-07). The shape is the default for **every** new cluster and
59
+ every new sub-command added to an existing cluster.
60
+
61
+ 1. **Flat only.** A cluster has exactly one level of sub-commands.
62
+ No sub-sub-commands. A dispatcher routes `/cluster <sub>` to a
63
+ single sub-file; sub-files do not dispatch further. Two-level
64
+ dispatch is a deliberate contract change requiring a new ADR
65
+ superseding ADR-003.
66
+
67
+ 2. **Composite sub-names for verb+scope.** When a cluster carries
68
+ multiple verbs (e.g. authoring + execution), encode the verb in
69
+ the sub-name, joined with `-`:
70
+
71
+ - ✅ `/roadmap:create` · `/roadmap:process-step` ·
72
+ `/roadmap:process-phase` · `/roadmap:process-full`
73
+ - ❌ `/roadmap:process:phase` (sub-sub — forbidden)
74
+ - ❌ `/roadmap:step` · `/roadmap:phase` · `/roadmap:full`
75
+ (verb hidden — breaks symmetry with `create`)
76
+ - ❌ separate `/roadmap-process` cluster (domain split — forbidden
77
+ when one cluster can carry both verbs flat)
78
+
79
+ Sibling sub-names stay in the same shape: either all bare verbs,
80
+ all bare nouns/scopes, or all composite. Mixing bare and composite
81
+ in the same cluster is allowed only when the bare sibling is the
82
+ cluster's primary verb (e.g. `/roadmap:create` + `process-*`
83
+ composites).
84
+
85
+ 3. **Sub-name format.** kebab-case (`pr-bots`, `process-phase`),
86
+ ≤ 24 chars, no leading verb that duplicates the cluster name
87
+ (use `/fix:ci`, not `/fix:fix-ci`).
88
+
89
+ 4. **Colon-canonical invocation.**
90
+ `/<cluster>:<sub>` is the canonical form everywhere — catalog,
91
+ docs, examples, deprecation warnings. The space-separated form
92
+ `/<cluster> <sub>` is a first-class equivalent and routes to the
93
+ same dispatcher; it must keep working. Autocompletion-aware UIs
94
+ surface the colon form because it stays a single token. Full
95
+ semantics: [`slash-command-routing-policy-mechanics.md`](../../.agent-src.uncompressed/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md)
96
+ § Routing semantics.
97
+
54
98
  ## Frontmatter contract
55
99
 
56
100
  A new command file under `.agent-src.uncompressed/commands/` MUST
@@ -34,6 +34,7 @@ a roadmap revision (per `road-to-structural-optimization.md` § Definitions).
34
34
  | `contexts/chat-history/` | Phase 6 | `cadence.md`, `ownership.md`, `visibility.md` |
35
35
  | `contexts/execution/` | PR #34 (existing) | `<topic>-mechanics.md`, `<topic>-detection.md`, `<topic>-examples.md` |
36
36
  | `contexts/authority/` | PR #34 (existing) | `<topic>-mechanics.md` |
37
+ | `contexts/contracts/` | road-to-path-fixes Phase 4 | `<topic>-flow.md` (load-bearing flow contracts cited via `load_context:`) |
37
38
 
38
39
  ## Grandfathered files
39
40
 
@@ -54,7 +55,7 @@ contexts/subagent-configuration.md
54
55
 
55
56
  1. **Sub-tree allow-list.** Every `*.md` under
56
57
  `.agent-src.uncompressed/contexts/` must be either (a) in one of the
57
- eight locked sub-trees above, or (b) one of the six grandfathered
58
+ nine locked sub-trees above, or (b) one of the six grandfathered
58
59
  root-level files. Anything else fails CI.
59
60
  2. **No collisions.** No two context files may share the same basename
60
61
  across sub-trees. `judges/persona-voice-rubric.md` and