@cluesmith/codev 3.1.9 → 3.2.1

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 (130) hide show
  1. package/dist/agent-farm/cli.d.ts.map +1 -1
  2. package/dist/agent-farm/cli.js +12 -5
  3. package/dist/agent-farm/cli.js.map +1 -1
  4. package/dist/agent-farm/commands/spawn-roles.d.ts +6 -1
  5. package/dist/agent-farm/commands/spawn-roles.d.ts.map +1 -1
  6. package/dist/agent-farm/commands/spawn-roles.js +49 -45
  7. package/dist/agent-farm/commands/spawn-roles.js.map +1 -1
  8. package/dist/agent-farm/commands/status.d.ts +14 -1
  9. package/dist/agent-farm/commands/status.d.ts.map +1 -1
  10. package/dist/agent-farm/commands/status.js +151 -34
  11. package/dist/agent-farm/commands/status.js.map +1 -1
  12. package/dist/agent-farm/commands/tower.d.ts +1 -0
  13. package/dist/agent-farm/commands/tower.d.ts.map +1 -1
  14. package/dist/agent-farm/commands/tower.js +6 -2
  15. package/dist/agent-farm/commands/tower.js.map +1 -1
  16. package/dist/agent-farm/servers/overview.d.ts.map +1 -1
  17. package/dist/agent-farm/servers/overview.js +2 -0
  18. package/dist/agent-farm/servers/overview.js.map +1 -1
  19. package/dist/agent-farm/servers/tower-instances.d.ts +18 -0
  20. package/dist/agent-farm/servers/tower-instances.d.ts.map +1 -1
  21. package/dist/agent-farm/servers/tower-instances.js +9 -1
  22. package/dist/agent-farm/servers/tower-instances.js.map +1 -1
  23. package/dist/agent-farm/servers/tower-server.js +34 -0
  24. package/dist/agent-farm/servers/tower-server.js.map +1 -1
  25. package/dist/agent-farm/servers/tower-websocket.d.ts.map +1 -1
  26. package/dist/agent-farm/servers/tower-websocket.js +7 -1
  27. package/dist/agent-farm/servers/tower-websocket.js.map +1 -1
  28. package/dist/agent-farm/utils/architect-name.d.ts +15 -29
  29. package/dist/agent-farm/utils/architect-name.d.ts.map +1 -1
  30. package/dist/agent-farm/utils/architect-name.js +18 -57
  31. package/dist/agent-farm/utils/architect-name.js.map +1 -1
  32. package/dist/commands/adopt.d.ts.map +1 -1
  33. package/dist/commands/adopt.js +15 -1
  34. package/dist/commands/adopt.js.map +1 -1
  35. package/dist/commands/consult/index.d.ts.map +1 -1
  36. package/dist/commands/consult/index.js +4 -2
  37. package/dist/commands/consult/index.js.map +1 -1
  38. package/dist/commands/doctor.d.ts.map +1 -1
  39. package/dist/commands/doctor.js +27 -1
  40. package/dist/commands/doctor.js.map +1 -1
  41. package/dist/commands/init.d.ts.map +1 -1
  42. package/dist/commands/init.js +19 -1
  43. package/dist/commands/init.js.map +1 -1
  44. package/dist/commands/porch/prompts.d.ts +12 -0
  45. package/dist/commands/porch/prompts.d.ts.map +1 -1
  46. package/dist/commands/porch/prompts.js +33 -5
  47. package/dist/commands/porch/prompts.js.map +1 -1
  48. package/dist/commands/update.d.ts.map +1 -1
  49. package/dist/commands/update.js +37 -1
  50. package/dist/commands/update.js.map +1 -1
  51. package/dist/lib/forge-contracts.d.ts +9 -0
  52. package/dist/lib/forge-contracts.d.ts.map +1 -1
  53. package/dist/lib/forge-contracts.js.map +1 -1
  54. package/dist/lib/framework-ref-audit.d.ts +23 -0
  55. package/dist/lib/framework-ref-audit.d.ts.map +1 -0
  56. package/dist/lib/framework-ref-audit.js +84 -0
  57. package/dist/lib/framework-ref-audit.js.map +1 -0
  58. package/dist/lib/managed-block.d.ts +31 -0
  59. package/dist/lib/managed-block.d.ts.map +1 -0
  60. package/dist/lib/managed-block.js +114 -0
  61. package/dist/lib/managed-block.js.map +1 -0
  62. package/dist/lib/scaffold.d.ts +42 -0
  63. package/dist/lib/scaffold.d.ts.map +1 -1
  64. package/dist/lib/scaffold.js +81 -0
  65. package/dist/lib/scaffold.js.map +1 -1
  66. package/dist/lib/skeleton.d.ts +12 -0
  67. package/dist/lib/skeleton.d.ts.map +1 -1
  68. package/dist/lib/skeleton.js +21 -0
  69. package/dist/lib/skeleton.js.map +1 -1
  70. package/dist/lib/templates.d.ts.map +1 -1
  71. package/dist/lib/templates.js +3 -0
  72. package/dist/lib/templates.js.map +1 -1
  73. package/dist/terminal/pty-manager.d.ts +18 -2
  74. package/dist/terminal/pty-manager.d.ts.map +1 -1
  75. package/dist/terminal/pty-manager.js +27 -2
  76. package/dist/terminal/pty-manager.js.map +1 -1
  77. package/dist/terminal/pty-session.d.ts +2 -0
  78. package/dist/terminal/pty-session.d.ts.map +1 -1
  79. package/dist/terminal/pty-session.js +13 -0
  80. package/dist/terminal/pty-session.js.map +1 -1
  81. package/dist/terminal/ring-buffer.d.ts +25 -1
  82. package/dist/terminal/ring-buffer.d.ts.map +1 -1
  83. package/dist/terminal/ring-buffer.js +40 -12
  84. package/dist/terminal/ring-buffer.js.map +1 -1
  85. package/dist/terminal/session-manager.d.ts +4 -0
  86. package/dist/terminal/session-manager.d.ts.map +1 -1
  87. package/dist/terminal/session-manager.js +74 -9
  88. package/dist/terminal/session-manager.js.map +1 -1
  89. package/dist/terminal/shellper-process.d.ts +1 -0
  90. package/dist/terminal/shellper-process.d.ts.map +1 -1
  91. package/dist/terminal/shellper-process.js +17 -2
  92. package/dist/terminal/shellper-process.js.map +1 -1
  93. package/package.json +3 -3
  94. package/scripts/forge/gitea/pr-list.sh +14 -1
  95. package/scripts/forge/github/pr-list.sh +9 -2
  96. package/scripts/forge/gitlab/pr-list.sh +11 -1
  97. package/skeleton/.claude/skills/update-arch-docs/SKILL.md +38 -13
  98. package/skeleton/porch/prompts/review.md +19 -11
  99. package/skeleton/protocols/air/builder-prompt.md +7 -1
  100. package/skeleton/protocols/aspir/builder-prompt.md +7 -2
  101. package/skeleton/protocols/aspir/prompts/plan.md +2 -34
  102. package/skeleton/protocols/aspir/prompts/review.md +19 -11
  103. package/skeleton/protocols/aspir/templates/review.md +4 -4
  104. package/skeleton/protocols/bugfix/builder-prompt.md +7 -1
  105. package/skeleton/protocols/bugfix/protocol.md +78 -0
  106. package/skeleton/protocols/experiment/builder-prompt.md +7 -1
  107. package/skeleton/protocols/experiment/protocol.md +7 -28
  108. package/skeleton/protocols/maintain/builder-prompt.md +7 -1
  109. package/skeleton/protocols/maintain/prompts/maintain.md +5 -4
  110. package/skeleton/protocols/maintain/prompts/review.md +1 -1
  111. package/skeleton/protocols/maintain/protocol.md +30 -22
  112. package/skeleton/protocols/maintain/templates/maintenance-run.md +2 -2
  113. package/skeleton/protocols/pir/builder-prompt.md +8 -3
  114. package/skeleton/protocols/pir/prompts/review.md +9 -7
  115. package/skeleton/protocols/pir/protocol.md +1 -1
  116. package/skeleton/protocols/research/builder-prompt.md +7 -1
  117. package/skeleton/protocols/spike/builder-prompt.md +7 -1
  118. package/skeleton/protocols/spike/protocol.md +7 -1
  119. package/skeleton/protocols/spir/builder-prompt.md +7 -2
  120. package/skeleton/protocols/spir/prompts/plan.md +2 -34
  121. package/skeleton/protocols/spir/prompts/review.md +19 -11
  122. package/skeleton/protocols/spir/protocol.md +5 -6
  123. package/skeleton/protocols/spir/templates/review.md +4 -4
  124. package/skeleton/resources/arch-critical.md +17 -0
  125. package/skeleton/resources/lessons-critical.md +17 -0
  126. package/skeleton/roles/builder.md +2 -2
  127. package/skeleton/templates/arch-critical.md +17 -0
  128. package/skeleton/templates/arch.starter.md +9 -0
  129. package/skeleton/templates/lessons-critical.md +17 -0
  130. package/skeleton/templates/lessons-learned.starter.md +9 -0
@@ -24,7 +24,7 @@ You are running in STRICT mode. This means:
24
24
  {{/if}}
25
25
 
26
26
  ## Protocol
27
- Follow the RESEARCH protocol: `codev/protocols/research/protocol.md`
27
+ Follow the RESEARCH protocol. Read and internalize the protocol before starting any work. The full protocol text is included below under **## Protocol Reference (full text)**.
28
28
 
29
29
  ## RESEARCH Overview
30
30
 
@@ -83,3 +83,9 @@ wait
83
83
  2. Understand the research question from the architect
84
84
  3. Write the research brief (Phase 1)
85
85
  4. Wait for scope-approval before proceeding to investigation
86
+
87
+ ---
88
+
89
+ ## Protocol Reference (full text)
90
+
91
+ {{protocol_reference}}
@@ -11,7 +11,7 @@ You are running in SOFT mode. This means:
11
11
  {{/if}}
12
12
 
13
13
  ## Protocol
14
- Follow the SPIKE protocol: `codev/protocols/spike/protocol.md`
14
+ Follow the SPIKE protocol. Read and internalize the protocol before starting any work. The full protocol text is included below under **## Protocol Reference (full text)**.
15
15
 
16
16
  {{#if task}}
17
17
  ## Spike Question
@@ -60,3 +60,9 @@ If you encounter **pre-existing flaky tests** (intermittent failures unrelated t
60
60
  1. Read the SPIKE protocol document
61
61
  2. Understand the question you're investigating
62
62
  3. Start with research — don't jump straight to code
63
+
64
+ ---
65
+
66
+ ## Protocol Reference (full text)
67
+
68
+ {{protocol_reference}}
@@ -52,7 +52,7 @@ The following 3-step workflow is **guidance only** — not enforced by porch. Fo
52
52
  ### Step 3: Findings
53
53
 
54
54
  - Write the findings document at `codev/spikes/<id>-<name>.md`
55
- - Use the template: `codev/protocols/spike/templates/findings.md`
55
+ - Use the embedded template at the end of this protocol
56
56
  - Provide a clear feasibility verdict
57
57
  - Commit and notify the architect
58
58
 
@@ -120,3 +120,9 @@ When a spike finds something is not feasible:
120
120
  1. Document clearly in findings
121
121
  2. Close the related GitHub issue with a link to findings
122
122
  3. The findings become institutional knowledge
123
+
124
+ ## Template: findings.md
125
+
126
+ Write the findings document using the following template:
127
+
128
+ {{> protocols/spike/templates/findings.md}}
@@ -27,8 +27,7 @@ You are running in STRICT mode. This means:
27
27
  {{/if}}
28
28
 
29
29
  ## Protocol
30
- Follow the SPIR protocol: `codev/protocols/spir/protocol.md`
31
- Read and internalize the protocol before starting any work.
30
+ Follow the SPIR protocol. Read and internalize the protocol before starting any work. The full protocol text is included below under **## Protocol Reference (full text)**.
32
31
 
33
32
  ## Baked Decisions
34
33
 
@@ -112,3 +111,9 @@ If you encounter **pre-existing flaky tests** (intermittent failures unrelated t
112
111
  1. Read the protocol document thoroughly
113
112
  2. Review the spec and plan (if available)
114
113
  3. Begin implementation following the protocol phases
114
+
115
+ ---
116
+
117
+ ## Protocol Reference (full text)
118
+
119
+ {{protocol_reference}}
@@ -74,41 +74,9 @@ After completing the plan draft, signal completion. Porch will run 3-way consult
74
74
 
75
75
  ## Output
76
76
 
77
- Create the plan file at `codev/plans/{{artifact_name}}.md`.
77
+ Create the plan file at `codev/plans/{{artifact_name}}.md`, following the template below:
78
78
 
79
- Use the plan template from `codev/protocols/spir/templates/plan.md` if available.
80
-
81
- ### Plan Structure
82
-
83
- ```markdown
84
- # Implementation Plan: {{title}}
85
-
86
- ## Overview
87
- Brief summary of what will be implemented.
88
-
89
- ## Phases
90
-
91
- ### Phase 1: [Name]
92
- - **Objective**: [Single clear goal]
93
- - **Files**: [List of files to create/modify]
94
- - **Dependencies**: None
95
- - **Success Criteria**: [How to verify completion]
96
- - **Tests**: [What tests will be written]
97
-
98
- ### Phase 2: [Name]
99
- - **Objective**: [Single clear goal]
100
- - **Files**: [List of files]
101
- - **Dependencies**: Phase 1
102
- - **Success Criteria**: [Verification method]
103
- - **Tests**: [Test approach]
104
-
105
- [Continue for all phases...]
106
-
107
- ## Risk Assessment
108
- - [Risk 1]: [Mitigation]
109
- - [Risk 2]: [Mitigation]
110
-
111
- ```
79
+ {{> protocols/spir/templates/plan.md}}
112
80
 
113
81
  ## Signals
114
82
 
@@ -148,17 +148,25 @@ Read the consultation output files from the project directory (`codev/projects/{
148
148
 
149
149
  **MANDATORY**: The review document MUST include `## Architecture Updates` and `## Lessons Learned Updates` sections. Porch will block advancement if these are missing.
150
150
 
151
- **Architecture Updates** (`codev/resources/arch.md`):
152
- 1. Read the current `codev/resources/arch.md`
153
- 2. Determine if this project introduced architectural changes worth documenting (new subsystems, data flows, design decisions, invariants, file locations)
154
- 3. If yes: make the updates to arch.md and describe what you changed in the `## Architecture Updates` section of the review
155
- 4. If no: write "No architecture updates needed" in the section with a brief explanation (e.g., "This was a template-only change with no new subsystems or data flows")
156
-
157
- **Lessons Learned Updates** (`codev/resources/lessons-learned.md`):
158
- 1. Read the current `codev/resources/lessons-learned.md`
159
- 2. Determine if this project produced generalizable lessons (patterns, anti-patterns, debugging insights, process improvements)
160
- 3. If yes: add entries to lessons-learned.md and describe what you added in the `## Lessons Learned Updates` section of the review
161
- 4. If no: write "No lessons learned updates needed" in the section with a brief explanation (e.g., "Straightforward implementation with no novel insights beyond existing entries")
151
+ Each governance doc has **two tiers** (Spec 987) — **route** each new fact/lesson to the right tier; do **not** just append to the cold archive:
152
+ - **HOT** — `codev/resources/arch-critical.md` / `lessons-critical.md`: tiny, **hard-capped**, **always injected** into every prompt and into CLAUDE.md/AGENTS.md. The behavior-changer.
153
+ - **COLD** — `codev/resources/arch.md` / `lessons-learned.md`: full, on-demand reference.
154
+
155
+ **Architecture Updates**:
156
+ 1. Read `arch-critical.md` (hot) and skim `arch.md` (cold).
157
+ 2. If this project produced a system-shape fact, route it:
158
+ - **Behavior-changing + cross-cutting** (an invariant/decision a future builder must know up front) → add to **`arch-critical.md`**. Respect the cap: if the hot file is full, **demote** a weaker entry into `arch.md` to make room. If you add/rename a top-level `arch.md` section, keep the hot file's cold-doc map accurate.
159
+ - **Reference detail** (subsystem mechanism, file location, one-off) → add to **`arch.md`** (cold).
160
+ 3. Describe what you routed where in the `## Architecture Updates` section. If nothing qualifies: write "No architecture updates needed" with a brief reason.
161
+
162
+ **Lessons Learned Updates**:
163
+ 1. Read `lessons-critical.md` (hot) and skim `lessons-learned.md` (cold).
164
+ 2. If this project produced a durable lesson, route it:
165
+ - **Behavior-changing + cross-cutting** (a rule that should change how the next project is built) → add to **`lessons-critical.md`**, respecting the cap (demote a weaker entry into `lessons-learned.md` if full).
166
+ - **Spec-narrow recipe / reference tip** → add to **`lessons-learned.md`** (cold). Spec-narrow recipes belong in the cold archive, never the always-on hot file.
167
+ 3. Describe what you routed where in the `## Lessons Learned Updates` section. If nothing qualifies: write "No lessons learned updates needed" with a brief reason.
168
+
169
+ **Never** grow a hot file past its cap by appending — route to cold or displace. The cap is what keeps the hot tier cheap enough to always inject.
162
170
 
163
171
  ### 4b. Update Other Documentation
164
172
 
@@ -4,7 +4,6 @@
4
4
  >
5
5
  > Each phase has one build-verify cycle with 3-way consultation.
6
6
 
7
- > **Quick Reference**: See `codev/resources/workflow-reference.md` for stage diagrams and common commands.
8
7
 
9
8
  ## Prerequisites
10
9
 
@@ -164,7 +163,7 @@ When filing an issue for SPIR, you can pin architectural decisions you don't wan
164
163
  - All consultation feedback incorporated directly into this document
165
164
  - Include a "Consultation Log" section summarizing key feedback and changes
166
165
  - Version control captures evolution through commits
167
- **Template**: `templates/spec.md`
166
+ **Structure**: developed through the specify phase
168
167
  **Review Required**: Yes - Human approval AFTER consultations
169
168
 
170
169
  ### P - Plan (Structured Decomposition)
@@ -243,7 +242,7 @@ Each phase should be:
243
242
  - Include phase status tracking within this document
244
243
  - **DO NOT include time estimates** - Focus on deliverables and dependencies, not hours/days
245
244
  - Version control captures evolution through commits
246
- **Template**: `templates/plan.md`
245
+ **Structure**: follows the plan template provided by the plan phase
247
246
  **Review Required**: Yes - Technical lead approval AFTER consultations
248
247
 
249
248
  ### I - Implement (Per Plan Phase)
@@ -508,8 +507,8 @@ Execute for each phase in the plan. Each phase follows a build-verify cycle.
508
507
  - Enhance documentation
509
508
 
510
509
  3. **Update Architecture Documentation**
511
- - Update `codev/resources/arch.md` and `codev/resources/lessons-learned.md` with new modules, utilities, architectural changes, and durable engineering wisdom uncovered during this work
512
- - Use the **`update-arch-docs` skill** (at `.claude/skills/update-arch-docs/SKILL.md`) to apply changes — the skill encodes the discipline for what NOT to include and the two-doc framing (arch.md owns system shape; lessons-learned.md owns durable engineering wisdom)
510
+ - Route new system-shape facts and durable wisdom by tier (Spec 987): behavior-changing + cross-cutting → the HOT `codev/resources/arch-critical.md` / `lessons-critical.md` (capped, always-injected; demote a weaker entry to cold if full); reference detail → the COLD `codev/resources/arch.md` / `lessons-learned.md`
511
+ - Use the **`update-arch-docs` skill** (at `.claude/skills/update-arch-docs/SKILL.md`) to apply changes — it encodes the hot/cold two-tier discipline (caps + cold-doc maps for the hot files; reference archive for the cold files) and what NOT to include
513
512
  - Follow guidance in the MAINTAIN protocol's Step 3 ("Sync Documentation") for structure, the "Lives where" routing matrix, and pruning checklists
514
513
  - Ensure both docs reflect current state
515
514
 
@@ -642,7 +641,7 @@ spir/1-user-authentication/database-schema
642
641
 
643
642
  ## Templates
644
643
 
645
- Templates for each phase are available in the `templates/` directory:
644
+ Each phase has a template that ships in the package skeleton; the phase prompts deliver the structure you need, so you do not fetch these files directly:
646
645
  - `spec.md` - Specification template
647
646
  - `plan.md` - Planning template (includes phase status tracking)
648
647
  - `review.md` - Review and lessons learned template
@@ -99,16 +99,16 @@ Iterations that could have been prevented with better builder behavior:
99
99
 
100
100
  ## Architecture Updates
101
101
 
102
- [What was added/changed in `codev/resources/arch.md`, or why no changes were needed.]
102
+ [What you routed where — HOT `codev/resources/arch-critical.md` (tiny, capped, always-injected) vs COLD `codev/resources/arch.md` (reference) — or why no changes were needed.]
103
103
 
104
- - Updated: [section name] — [what was added/changed]
104
+ - Routed: [hot | cold] — [fact/section] — [what was added/changed; note any demotion if the hot file was full]
105
105
  - Or: "No architecture updates needed — [brief reason]"
106
106
 
107
107
  ## Lessons Learned Updates
108
108
 
109
- [What was added/changed in `codev/resources/lessons-learned.md`, or why no changes were needed.]
109
+ [What you routed where — HOT `codev/resources/lessons-critical.md` (capped) vs COLD `codev/resources/lessons-learned.md` (reference) — or why no changes were needed.]
110
110
 
111
- - Added: [category] — [lesson summary]
111
+ - Routed: [hot | cold] — [category] — [lesson summary]
112
112
  - Or: "No lessons learned updates needed — [brief reason]"
113
113
 
114
114
  ## Technical Debt
@@ -0,0 +1,17 @@
1
+ # arch-critical.md — Always-On System-Shape Facts (HOT tier)
2
+
3
+ <!-- HOT tier: capped facts + a bounded map of arch.md. Always injected into every porch
4
+ phase prompt and into CLAUDE.md/AGENTS.md. CAP: <=10 facts, <=12 map topics, <=35 lines.
5
+ To add a fact, DEMOTE a weaker one into arch.md (displacement). MAINTAIN polices the cap
6
+ and keeps the map in sync with arch.md's top-level sections.
7
+ STARTER: replace the examples below with YOUR project's facts and arch.md sections. -->
8
+
9
+ ## Critical facts (consult before deciding)
10
+ - <A system-shape fact that should change implementation choices — e.g. "all persistent state lives in X; never write it directly.">
11
+ - <An invariant a contributor must not violate — e.g. "service A only talks to service B through the queue.">
12
+ - <Keep to <=10, one line each; demote weaker facts into arch.md.>
13
+
14
+ ## Map of arch.md (consult when…)
15
+ - <Top-level arch.md section> — consult when <situation>.
16
+ - <Top-level arch.md section> — consult when <situation>.
17
+ - <List your arch.md's top-level sections here; keep <=12, top-level only.>
@@ -0,0 +1,17 @@
1
+ # lessons-critical.md — Always-On Engineering Wisdom (HOT tier)
2
+
3
+ <!-- HOT tier: capped lessons + a bounded map of lessons-learned.md. Always injected into
4
+ every porch phase prompt and into CLAUDE.md/AGENTS.md. CAP: <=10 lessons, <=12 map topics,
5
+ <=35 lines. To add a lesson, DEMOTE a weaker one into lessons-learned.md (displacement).
6
+ MAINTAIN polices the cap and keeps the map in sync with lessons-learned.md's sections.
7
+ STARTER: a few universal lessons are seeded; add your project's as you learn them. -->
8
+
9
+ ## Critical lessons (consult before deciding)
10
+ - Check for existing work (PRs, git history) before building from scratch.
11
+ - "It compiled" / "tests pass" is not "it works" — verify the real user path before calling it done.
12
+ - When stuck (2 failed hypotheses or ~30 min), get an outside perspective instead of guessing.
13
+ - <Add your project's hard-won, cross-cutting lessons; keep <=10, one line each.>
14
+
15
+ ## Map of lessons-learned.md (consult when…)
16
+ - <Top-level section> — consult when <situation>.
17
+ - <List your lessons-learned.md's top-level sections here; keep <=12, top-level only.>
@@ -79,8 +79,8 @@ In soft mode, you follow the protocol document yourself. The architect monitors
79
79
  cat codev/specs/XXXX-*.md
80
80
  cat codev/plans/XXXX-*.md
81
81
 
82
- # Read the protocol
83
- cat codev/protocols/spir/protocol.md
82
+ # (The full protocol text is inlined in your spawn prompt under the
83
+ # "## Protocol Reference (full text)" heading; no need to fetch it.)
84
84
 
85
85
  # Start implementing
86
86
  ```
@@ -0,0 +1,17 @@
1
+ # arch-critical.md — Always-On System-Shape Facts (HOT tier)
2
+
3
+ <!-- HOT tier: capped facts + a bounded map of arch.md. Always injected into every porch
4
+ phase prompt and into CLAUDE.md/AGENTS.md. CAP: <=10 facts, <=12 map topics, <=35 lines.
5
+ To add a fact, DEMOTE a weaker one into arch.md (displacement). MAINTAIN polices the cap
6
+ and keeps the map in sync with arch.md's top-level sections.
7
+ STARTER: replace the examples below with YOUR project's facts and arch.md sections. -->
8
+
9
+ ## Critical facts (consult before deciding)
10
+ - <A system-shape fact that should change implementation choices — e.g. "all persistent state lives in X; never write it directly.">
11
+ - <An invariant a contributor must not violate — e.g. "service A only talks to service B through the queue.">
12
+ - <Keep to <=10, one line each; demote weaker facts into arch.md.>
13
+
14
+ ## Map of arch.md (consult when…)
15
+ - <Top-level arch.md section> — consult when <situation>.
16
+ - <Top-level arch.md section> — consult when <situation>.
17
+ - <List your arch.md's top-level sections here; keep <=12, top-level only.>
@@ -0,0 +1,9 @@
1
+ # Architecture
2
+
3
+ <!-- STARTER: replace the "_No architecture documented yet._" line below with your
4
+ project's architecture as it emerges (usually during a review phase). Delete this
5
+ comment once the file has real content. -->
6
+
7
+ This document evolves as the project grows. Update it during the review phase of any work that introduces or changes architectural patterns.
8
+
9
+ _No architecture documented yet._
@@ -0,0 +1,17 @@
1
+ # lessons-critical.md — Always-On Engineering Wisdom (HOT tier)
2
+
3
+ <!-- HOT tier: capped lessons + a bounded map of lessons-learned.md. Always injected into
4
+ every porch phase prompt and into CLAUDE.md/AGENTS.md. CAP: <=10 lessons, <=12 map topics,
5
+ <=35 lines. To add a lesson, DEMOTE a weaker one into lessons-learned.md (displacement).
6
+ MAINTAIN polices the cap and keeps the map in sync with lessons-learned.md's sections.
7
+ STARTER: a few universal lessons are seeded; add your project's as you learn them. -->
8
+
9
+ ## Critical lessons (consult before deciding)
10
+ - Check for existing work (PRs, git history) before building from scratch.
11
+ - "It compiled" / "tests pass" is not "it works" — verify the real user path before calling it done.
12
+ - When stuck (2 failed hypotheses or ~30 min), get an outside perspective instead of guessing.
13
+ - <Add your project's hard-won, cross-cutting lessons; keep <=10, one line each.>
14
+
15
+ ## Map of lessons-learned.md (consult when…)
16
+ - <Top-level section> — consult when <situation>.
17
+ - <List your lessons-learned.md's top-level sections here; keep <=12, top-level only.>
@@ -0,0 +1,9 @@
1
+ # Lessons Learned
2
+
3
+ <!-- STARTER: replace the "_No lessons captured yet._" line below with durable, cross-cutting
4
+ lessons as they emerge (usually during a review phase). Delete this comment once the file has
5
+ real content. -->
6
+
7
+ Durable engineering wisdom captured across the project's work. Update it during the review phase of any work that surfaces a generally-applicable pattern, gotcha, or constraint.
8
+
9
+ _No lessons captured yet._