cfsa-antigravity 2.4.0 → 2.6.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cfsa-antigravity",
3
- "version": "2.4.0",
3
+ "version": "2.6.0",
4
4
  "description": "CFSA Pipeline — Constraint-First Specification Architecture for AI agents. Production-grade from line one.",
5
5
  "scripts": {
6
6
  "changeset": "changeset",
@@ -1,6 +1,6 @@
1
1
  # Kit Sync State
2
2
 
3
3
  upstream: https://github.com/RepairYourTech/cfsa-antigravity
4
- last_synced_commit: d5fb37b9e886719e436a6ca52bb9c94ab839acb6
5
- last_synced_at: 2026-03-16T23:22:30Z
6
- kit_version: 2.4.0
4
+ last_synced_commit: 3b681461bb17210e795e7a4d05a3393ba1e57438
5
+ last_synced_at: 2026-03-17T01:38:22Z
6
+ kit_version: 2.6.0
@@ -53,6 +53,8 @@ Document the agreed approach:
53
53
  4. **Spec layers** — IA → BE → FE pipeline
54
54
  5. **Quality gates** — What must pass before merge
55
55
 
56
+ Write the completed `## Development Methodology` section to `docs/plans/architecture-draft.md` immediately after user confirmation.
57
+
56
58
  ## 9. Phasing strategy
57
59
 
58
60
  Load the CI/CD skill(s) from the cross-cutting section per the skill loading protocol.
@@ -77,6 +79,8 @@ Each phase should have a rough timeline estimate and must pass the full validati
77
79
 
78
80
  Refine based on discussion before proceeding.
79
81
 
82
+ Write the completed `## Phasing Strategy` section to `docs/plans/architecture-draft.md` immediately after user confirmation.
83
+
80
84
  ## 9.5. Lock project directory structure
81
85
 
82
86
  Based on the locked tech stack, generate a canonical directory tree.
@@ -76,6 +76,8 @@ Refine based on discussion before proceeding.
76
76
 
77
77
  If the security model confirmed a specific security framework or compliance approach (e.g., crypto patterns, custom HSM approach), read `.agent/workflows/bootstrap-agents.md` and invoke `/bootstrap-agents SECURITY=[confirmed value]` to provision additional skills. Note: surface-triggered security skills (`owasp-web-security`, `csp-cors-headers`, `input-sanitization`, `api-security-checklist`, `dependency-auditing`, `desktop-security-sandboxing`) are provisioned automatically by bootstrap when surfaces are confirmed in `/create-prd-stack` — no manual fire needed for those.
78
78
 
79
+ Write the completed `## Security Model` section to `docs/plans/architecture-draft.md` immediately after user confirmation. Do not wait for later steps.
80
+
79
81
  ## 6.5. Attack Surface Review
80
82
 
81
83
  Read .agent/skills/security-scanning-security-hardening/SKILL.md and follow its Attack Surface Review Protocol for each surface confirmed in /create-prd-stack. Apply Universal checks to all projects, then surface-specific checks conditionally.
@@ -84,6 +86,8 @@ Read .agent/skills/security-scanning-security-hardening/SKILL.md and follow its
84
86
  - "Are there any attack vectors I've missed for your specific domain?"
85
87
  - "Do the OWASP mechanisms look correct, or are any of them actually handled differently?"
86
88
 
89
+ Write the completed `## Security — Attack Surface` section to `docs/plans/architecture-draft.md` immediately after user confirmation.
90
+
87
91
  ## 7. Integration points
88
92
 
89
93
  For each external service:
@@ -93,6 +97,8 @@ For each external service:
93
97
  3. **Fallback strategy** — Graceful degradation plan
94
98
  4. **Cost model** — Pricing tier, expected usage
95
99
 
100
+ Write the completed `## Integration Points` section to `docs/plans/architecture-draft.md` immediately after user confirmation.
101
+
96
102
  ## 7.5. Observability Architecture
97
103
 
98
104
  Read .agent/skills/logging-best-practices/SKILL.md and follow its Observability Architecture Interview — all 5 decisions (logging, tracing, alerting, dashboards, retention) must be confirmed. Fire bootstrap per the skill's instructions for each confirmed tool.
@@ -101,7 +107,7 @@ Read .agent/skills/logging-best-practices/SKILL.md and follow its Observability
101
107
  - "Are these logging levels and PII exclusions correct for your compliance requirements?"
102
108
  - "Are the alerting thresholds appropriate for your expected traffic?"
103
109
 
104
- After the security model (Step 6) is completed and confirmed, write the `## Security Model` section to `docs/plans/architecture-draft.md`. After the attack surface review (Step 6.5) is completed and confirmed, write the `## Security — Attack Surface` section to `docs/plans/architecture-draft.md`. After the integration points (Step 7) are completed and confirmed, write the `## Integration Points` section to `docs/plans/architecture-draft.md`. After the observability architecture (Step 7.5) is completed and confirmed, write the `## Observability Architecture` section to `docs/plans/architecture-draft.md`. Do not wait until the end — write each section as it is completed.
110
+ Write the completed `## Observability Architecture` section to `docs/plans/architecture-draft.md` immediately after user confirmation.
105
111
 
106
112
  ### Propose next step
107
113
 
@@ -29,6 +29,19 @@ Read `.agent/skills/idea-extraction/SKILL.md` — follow the Recursive Domain Ex
29
29
 
30
30
  Read `## Expansion Mode` and `## Structural Classification` from `docs/plans/ideation/ideation-index.md`.
31
31
 
32
+ ## 2.5. Read Engagement Tier
33
+
34
+ Read `## Engagement Tier` from `docs/plans/ideation/ideation-index.md`. Apply gate behavior rules for this session:
35
+
36
+ | Tier | Structural gates (domain maps, classification, sub-domain structure) | Product gates (personas, MoSCoW, feature scope, competitive positioning) |
37
+ |------|----------------------------------------------------------------------|-------------------------------------------------------------------------|
38
+ | 🤖 **Auto** | Auto-confirm: apply Deep Think, write reasoning to feature files, proceed | Auto-confirm: apply Deep Think, write reasoning to feature files, proceed |
39
+ | 🤝 **Hybrid** | Auto-confirm: apply Deep Think, write reasoning to feature files, proceed | **Pause for user**: present findings, wait for explicit confirmation |
40
+ | 💬 **Interactive** | **Pause for user**: present findings, wait for explicit confirmation | **Pause for user**: present findings, wait for explicit confirmation |
41
+
42
+ > [!IMPORTANT]
43
+ > **Auto-confirmed gates must still write.** When a gate is auto-confirmed, the agent writes the Deep Think reasoning and decision to the relevant file immediately — just as if the user had confirmed it. The file trail must be identical regardless of tier. This ensures the Auto tier review checkpoint in `ideate-validate` has full traceability.
44
+
32
45
  ### Full Mode (recommended for 3+ domains)
33
46
 
34
47
  #### Level 0 — Global Domain Map
@@ -42,7 +55,7 @@ Read `## Expansion Mode` and `## Structural Classification` from `docs/plans/ide
42
55
  - In the relevant parent's CX file (surface CX or global CX)
43
56
  - In `ideation-cx.md` if cross-surface
44
57
  5. Update `ideation-index.md` structure map with paths
45
- 6. **Gate**: Present domain map. User confirms before Level 1.
58
+ 6. **Gate** *(structural)*: Present domain map. **Interactive/Hybrid**: User confirms before Level 1. **Auto**: Auto-confirm with Deep Think reasoning written to `ideation-index.md`.
46
59
 
47
60
  #### Level 1 — Domain Breadth Sweep
48
61
 
@@ -57,7 +70,7 @@ For each domain (dependency order — foundational first):
57
70
  5. Note cross-cuts in the domain's CX file
58
71
  6. **NEW DOMAINS DISCOVERED?** → Classify, create, update index, loop to Level 0
59
72
  7. Mark domain status as `[BREADTH]`
60
- 8. **Gate**: Pause after EACH domain. "Here's what I mapped for [Domain]. Missing anything?" After ALL: "All domains at BREADTH. Ready to drill?"
73
+ 8. **Gate** *(structural)*: Pause after EACH domain. **Interactive/Hybrid**: "Here's what I mapped for [Domain]. Missing anything?" After ALL: "All domains at BREADTH. Ready to drill?" **Auto**: Auto-confirm with Deep Think reasoning written to domain index.
61
74
 
62
75
  #### Level 2+ — Vertical Drilling
63
76
 
@@ -71,9 +84,9 @@ For each domain (dependency order), for each child:
71
84
  6. Cross-cuts with evidence → add to parent's CX file with synthesis questions
72
85
  7. **Feature reveals 2+ interacting capabilities?** → Run **Promotion Protocol** (convert .md to folder)
73
86
  8. **NEW DOMAINS DISCOVERED?** → Loop to Level 0
74
- 9. When Deep Think yields zero hypotheses AND user confirms → mark `[EXHAUSTED]`
87
+ 9. When Deep Think yields zero hypotheses AND user confirms (or auto-confirms for Auto tier) → mark `[EXHAUSTED]`
75
88
  10. Status propagation: all children `[EXHAUSTED]` → node is `[EXHAUSTED]`
76
- 11. **Gate**: Pause after each domain is drilled.
89
+ 11. **Gate** *(product)*: Pause after each domain is drilled. **Interactive**: Full review. **Hybrid**: Pause for review. **Auto**: Auto-confirm with Deep Think reasoning written to domain index.
77
90
 
78
91
  #### Cross-Cut Synthesis (Continuous)
79
92
 
@@ -19,7 +19,7 @@ pipeline:
19
19
 
20
20
  Classify the user's input, create the fractal `ideation/` folder structure, and load skills.
21
21
 
22
- **Prerequisite**: If invoked standalone (not from `/ideate`), verify the user has provided input either an `@file` reference or a verbal description. If no input is provided, prompt: "What would you like to build? Describe your idea, or provide a file with `/ideate-extract @path/to/file.md`."
22
+ **Prerequisite**: If standalone, verify user provided input via `@file` or verbal. If none, prompt: \"What would you like to build? Provide a file or describe your idea.\"
23
23
 
24
24
  ---
25
25
 
@@ -170,27 +170,30 @@ For each concept classified as **domain** in the confirmed table:
170
170
  - **Thin document**: Create domain folders with depth markers on feature files.
171
171
  - **Verbal / one-liner**: Create domain folders with scaffolding. Feature files are `[SURFACE]`.
172
172
 
173
- ## 1.6. User Intent Check (ALL input types)
173
+ ## 1.6. Engagement Tier Selection (ALL input types)
174
174
 
175
- Read `.agent/skills/brainstorming/SKILL.md` and follow its methodology.
175
+ All three tiers are available for all input types. Present with the recommended default for this input type (Rich/Thin/Chat Hybrid, Verbal → Interactive):
176
176
 
177
- After seeding, present a summary and ask how the user wants to proceed. Present all options:
177
+ > **How involved do you want to be?**
178
+ > 1. 🤖 **Auto** — I explore independently via Deep Think. You review at the end.
179
+ > 2. 🤝 **Hybrid** *(recommended)* — Structural stuff auto, product decisions pause for you.
180
+ > 3. 💬 **Interactive** — I pause at every gate. Full interview mode.
178
181
 
179
- 1. **Full exploration** *(recommended for 3+ domains)* Recursive breadth-before-depth with Deep Think
180
- 2. **Process as-is** — Proceed with what's captured; fill gaps as they arise
181
- 3. **Expand vertically** — Drill deeper into existing features
182
- 4. **Expand horizontally** — Add new feature domains not yet covered
183
- 5. **Explore cross-cutting concerns** — Map how existing features interact
184
- 6. **Combination** — User specifies dimensions and order
185
- 7. **Audit ambiguity first** — Run inline check before deciding
182
+ **Wait for user answer.** Write the engagement tier to `ideation-index.md` under `## Engagement Tier` immediately.
186
183
 
187
- **Wait for user answer do not assume.**
184
+ ## 1.6.5. Expansion Mode Selection (ALL input types)
188
185
 
189
- ## 1.7. Expansion Mode Routing
186
+ Present expansion mode options:
190
187
 
191
- Write the expansion mode to `ideation-index.md` per the super-index template.
188
+ 1. **Full exploration** *(recommended for 3+ domains)* Breadth-before-depth with Deep Think
189
+ 2. **Process as-is** — Proceed with what's captured
190
+ 3. **Expand vertically** — Drill deeper into existing features
191
+ 4. **Expand horizontally** — Add new domains
192
+ 5. **Cross-cutting concerns** — Map feature interactions
193
+ 6. **Combination** — User specifies dimensions and order
194
+ 7. **Audit ambiguity first** — Inline check before deciding
192
195
 
193
- This flag is read by `ideate-discover.md` to shape exploration behavior.
196
+ **Wait for user answer.** Write expansion mode to `ideation-index.md` under `## Expansion Mode` immediately.
194
197
 
195
198
  ## 2. Load skills
196
199
 
@@ -23,6 +23,14 @@ Explore constraints, verify domain exhaustion, and compile the vision summary.
23
23
 
24
24
  ---
25
25
 
26
+ ## 7.5. Read Engagement Tier
27
+
28
+ Read `## Engagement Tier` from `docs/plans/ideation/ideation-index.md`. Apply to gates in this shard:
29
+
30
+ - **Auto**: Steps 8 (constraints, metrics, competitive positioning) → agent self-interviews using Deep Think, writes answers to files. Step 10.5 (below) provides a review checkpoint before compilation.
31
+ - **Hybrid**: Steps 8 product decisions → pause for user. Structural checks → auto.
32
+ - **Interactive**: All steps pause for user confirmation.
33
+
26
34
  ## 8. Constraints and metrics
27
35
 
28
36
  Read `.agent/skills/idea-extraction/SKILL.md` and follow its Deep Think Protocol.
@@ -40,7 +48,11 @@ Explore constraints with the user. Write to `docs/plans/ideation/meta/constraint
40
48
 
41
49
  **Deep Think**: "Based on the product type and user personas, what constraints would I expect that haven't been mentioned? For example, does this product handle payments (PCI)? Does it serve minors (COPPA)? Does it store health data (HIPAA)?"
42
50
 
43
- Write constraints to `meta/constraints.md`. If the surface classification changed, update `ideation-index.md` `## Structural Classification` section.
51
+ **Interactive/Hybrid**: Present each constraint question to user, wait for answers. Write each confirmed constraint to `meta/constraints.md` immediately.
52
+
53
+ **Auto**: Self-interview using Deep Think. Write all answers with reasoning to `meta/constraints.md` immediately. Mark each answer as `[AUTO-CONFIRMED]` for traceability.
54
+
55
+ If the surface classification changed, update `ideation-index.md` `## Structural Classification` section.
44
56
 
45
57
  ### Success metrics
46
58
 
@@ -113,6 +125,19 @@ If proportionality fails, return to `/ideate-discover` for the under-explored ar
113
125
 
114
126
  ---
115
127
 
128
+ ## 10.5. Auto Tier Review Checkpoint (Auto tier only)
129
+
130
+ If engagement tier is **Auto**, present a comprehensive review before compilation:
131
+
132
+ 1. **List all auto-confirmed decisions** with their Deep Think reasoning — from domain classification, feature drilling, constraints, personas, competitive positioning
133
+ 2. **Highlight any `[AUTO-CONFIRMED]` entries** in `meta/constraints.md`, `meta/personas.md`, and `meta/competitive-landscape.md`
134
+ 3. **Present for review**: "I explored your idea independently. Here's everything I decided and why. Override anything before I compile the vision."
135
+ 4. **Wait for user response.** Apply any overrides. Write corrections to files immediately.
136
+
137
+ For **Hybrid** and **Interactive** tiers, skip this step — the user already confirmed during exploration.
138
+
139
+ ---
140
+
116
141
  ## 11. Compile vision document
117
142
 
118
143
  Read `.agent/skills/prd-templates/references/vision-template.md` for the output template.
@@ -29,7 +29,26 @@ shards: [ideate-extract, ideate-discover, ideate-validate]
29
29
  | One-liner / verbal | User describes idea in chat, no files | Interview (deep) — builds vision from scratch domain by domain |
30
30
  | Full exploration | Any input with 3+ domains | Full — Recursive breadth-before-depth with Deep Think protocol, cross-cut detection active throughout |
31
31
 
32
- **Quality guarantee**: All input types produce the **same output quality** using the same fractal structure. The ideation output from a one-liner is structurally identical to one from a rich document. Every node has an index, CX file, and children. Every feature has a Role Lens. Only the amount of interview work differs.
32
+ ### Engagement Tiers
33
+
34
+ After input classification, the user chooses how much involvement they want. All tiers are available for all input types — the pipeline recommends a default but the user picks.
35
+
36
+ | Tier | Gate behavior | Default for |
37
+ |------|---------------|-------------|
38
+ | 🤖 **Auto** | Pipeline uses Deep Think to self-interview at every gate. User reviews compiled output at the end. | — |
39
+ | 🤝 **Hybrid** | Structural/mechanical gates auto-confirm. Product decisions (personas, MoSCoW, competitive positioning, constraints) pause for user. | Rich doc, thin doc, chat transcript |
40
+ | 💬 **Interactive** | Every gate pauses for explicit user confirmation. | Verbal / one-liner |
41
+
42
+ **Full matrix — Input × Tier:**
43
+
44
+ | Input Type | 🤖 Auto | 🤝 Hybrid | 💬 Interactive |
45
+ |---|---|---|---|
46
+ | Rich document | AI extracts + self-interviews gaps | AI extracts, pauses for product calls | AI extracts, pauses at every gate |
47
+ | Thin document | AI expands all domains independently | AI expands, pauses for product calls | AI expands with user at every step |
48
+ | Chat transcript | AI filters noise + self-interviews | AI filters, pauses for product calls | AI filters with user validation |
49
+ | Verbal / one-liner | AI generates vision from scratch via Deep Think | AI generates, pauses for product calls | Full traditional interview |
50
+
51
+ **Quality guarantee**: All input types and engagement tiers produce the **same output quality** using the same fractal structure. The ideation output from an Auto one-liner is structurally identical to an Interactive rich document. Every node has an index, CX file, and children. Every feature has a Role Lens. Only the amount of human involvement differs.
33
52
 
34
53
  Transform a raw idea into comprehensive, structured ideation output through exhaustive recursive exploration with the Deep Think protocol.
35
54
 
@@ -63,9 +82,9 @@ Check whether `docs/plans/ideation/ideation-index.md` already exists.
63
82
 
64
83
  | # | Shard | What It Does |
65
84
  |---|-------|-------------|
66
- | 1 | [`ideate-extract`](.agent/workflows/ideate-extract.md) | Classifies input, determines structural classification (4 shapes), creates fractal `ideation/` folder structure using Node Classification Gate, seeds domain folders, runs user intent check, sets expansion mode, loads skills |
67
- | 2 | [`ideate-discover`](.agent/workflows/ideate-discover.md) | Recursive breadth-before-depth exploration with Deep Think. Creates fractal nodes (folders with index + CX) and leaf feature files (with Role Lens). Hierarchical CX detection active throughout. |
68
- | 3 | [`ideate-validate`](.agent/workflows/ideate-validate.md) | Constraints, metrics, competitive positioning, leaf-node exhaustion check, fractal structure compliance, vision summary compilation |
85
+ | 1 | [`ideate-extract`](.agent/workflows/ideate-extract.md) | Classifies input, determines structural classification (4 shapes), creates fractal `ideation/` folder structure using Node Classification Gate, seeds domain folders, asks engagement tier + expansion mode, loads skills |
86
+ | 2 | [`ideate-discover`](.agent/workflows/ideate-discover.md) | Recursive breadth-before-depth exploration with Deep Think. Gate behavior controlled by engagement tier. Creates fractal nodes (folders with index + CX) and leaf feature files (with Role Lens). Hierarchical CX detection active throughout. |
87
+ | 3 | [`ideate-validate`](.agent/workflows/ideate-validate.md) | Constraints, metrics, competitive positioning, leaf-node exhaustion check, fractal structure compliance, vision summary compilation. Auto tier gets a review checkpoint before compilation. |
69
88
 
70
89
  ---
71
90
 
@@ -73,7 +92,7 @@ Check whether `docs/plans/ideation/ideation-index.md` already exists.
73
92
 
74
93
  ### Step 1 — Run `.agent/workflows/ideate-extract.md`
75
94
 
76
- Classifies the user's input (rich doc, thin PRD, chat transcript, verbal), determines structural classification (single-surface, multi-surface-shared, multi-product-hub, multi-product-peer), checks for existing ideation folder (re-run check), creates the fractal `docs/plans/ideation/` folder structure using the Node Classification Gate, runs user intent check to determine expansion mode, sets the expansion mode flag in `ideation-index.md`, and loads skills.
95
+ Classifies the user's input (rich doc, thin PRD, chat transcript, verbal), determines structural classification (single-surface, multi-surface-shared, multi-product-hub, multi-product-peer), checks for existing ideation folder (re-run check), creates the fractal `docs/plans/ideation/` folder structure using the Node Classification Gate, asks user to choose engagement tier (Auto/Hybrid/Interactive) and expansion mode, writes both to `ideation-index.md` immediately, and loads skills.
77
96
 
78
97
  ### Step 2 — Run `.agent/workflows/ideate-discover.md`
79
98
 
@@ -82,6 +82,9 @@ Read `.agent/skills/brainstorming/SKILL.md` and use it to explore any remaining
82
82
 
83
83
  > **Authoring pattern for Steps 2–7**: After designing each section, (1) present it to the user with the targeted review questions listed below, (2) refine based on their feedback, (3) write the completed section to `docs/plans/ia/[shard-name].md` immediately — do not batch writes until Step 8.
84
84
 
85
+ > [!IMPORTANT]
86
+ > **Write-as-you-go is mandatory.** Each section (Steps 2–7) must be written to `docs/plans/ia/[shard-name].md` immediately after user confirmation. If the conversation truncates, all confirmed sections must survive on disk. Never hold confirmed content in-memory waiting for a later write step.
87
+
85
88
  ## 2. Map all interactions
86
89
 
87
90
  For each feature in the shard, document:
@@ -92,6 +95,8 @@ For each feature in the shard, document:
92
95
 
93
96
  **Review questions**: "Does this capture all the ways a user touches this domain?" / "Are there admin/system-initiated actions I'm missing?" / "What happens in each failure case?"
94
97
 
98
+ Write the completed `## Interactions` section to `docs/plans/ia/[shard-name].md` immediately after user confirmation.
99
+
95
100
  ## 3. Define contracts
96
101
 
97
102
  Read `.agent/skills/prd-templates/references/skill-loading-protocol.md` and load the API Design skill(s) from the cross-cutting section.
@@ -104,6 +109,8 @@ For each interaction, define the contract shape:
104
109
 
105
110
  **Review questions**: "Are there fields I'm missing from these requests/responses?" / "Are these error codes specific enough?"
106
111
 
112
+ Write the completed `## Contracts` section to `docs/plans/ia/[shard-name].md` immediately after user confirmation.
113
+
107
114
  ## 4. Design data models
108
115
 
109
116
  Read `.agent/skills/prd-templates/references/skill-loading-protocol.md` and load the Databases skill(s) for this shard's surface. Also load:
@@ -115,6 +122,8 @@ Define for each entity: tables/collections, fields, types, relationships, indexe
115
122
 
116
123
  **Review questions**: "Does this schema capture everything this domain needs to store?" / "Are the relationships and cardinalities correct?" / "Are there derived/computed fields I should account for?"
117
124
 
125
+ Write the completed `## Data Models` section to `docs/plans/ia/[shard-name].md` immediately after user confirmation.
126
+
118
127
  > **Decision recording**: For non-trivial data model decisions (schema approach, denormalization trade-offs, index strategy), read `.agent/skills/session-continuity/protocols/06-decision-analysis.md` and follow the **Decision Effect Analysis Protocol**.
119
128
 
120
129
  ## 5. Design access control
@@ -129,6 +138,8 @@ Read .agent/skills/security-scanning-security-hardening/SKILL.md and apply its a
129
138
 
130
139
  **Review questions**: "Can you think of a scenario where a user should be blocked that this matrix allows?" / "Can you think of a scenario where a user should be allowed that this matrix blocks?"
131
140
 
141
+ Write the completed `## Access Control` section to `docs/plans/ia/[shard-name].md` immediately after user confirmation.
142
+
132
143
  > **Decision recording**: For access control architecture decisions (role hierarchy, ownership model, escalation paths), read `.agent/skills/session-continuity/protocols/06-decision-analysis.md` and follow the **Decision Effect Analysis Protocol**. Record to `memory/decisions.md`.
133
144
 
134
145
  ## 5.5. Accessibility specifications
@@ -139,12 +150,16 @@ Read `.agent/skills/accessibility/references/ia-spec-checklist.md` and follow it
139
150
 
140
151
  **If surfaces are `api`, `cli`, or `extension` only:** Write `"Not applicable — no visual surfaces"` in the `## Accessibility` section.
141
152
 
153
+ Write the completed `## Accessibility` section to `docs/plans/ia/[shard-name].md` immediately after user confirmation.
154
+
142
155
  ## 6. Design event schemas (if applicable)
143
156
 
144
157
  - Event name, payload shape, emitter, consumers
145
158
  - Async vs sync processing
146
159
  - Retry semantics
147
160
 
161
+ Write the completed `## Event Schemas` section to `docs/plans/ia/[shard-name].md` immediately after user confirmation (if applicable).
162
+
148
163
  ## 7. Document edge cases
149
164
 
150
165
  Read .agent/skills/resolve-ambiguity/SKILL.md and follow its methodology.
@@ -154,6 +154,7 @@ Rules in `.agent/rules/` are **always active** — they apply to every task, eve
154
154
  3. **Contract-first** — `{{CONTRACT_LIBRARY}}` schema → failing test → implementation (never reverse)
155
155
  4. **TDD: failing test before code** — Red → Green → Refactor, every slice, every surface
156
156
  5. **Security-first** — PII never leaks, inputs validated, secrets server-side only
157
+ 6. **Write decisions to disk immediately** — Every confirmed decision is written to its output file the moment the user confirms it. Never batch decisions in-memory across a long conversation. If the conversation truncates, all confirmed work must survive on disk.
157
158
 
158
159
  ### Decision Tree
159
160
 
@@ -155,6 +155,7 @@ Rules in `.agent/rules/` are **always active** — they apply to every task, eve
155
155
  3. **Contract-first** — `{{CONTRACT_LIBRARY}}` schema → failing test → implementation (never reverse)
156
156
  4. **TDD: failing test before code** — Red → Green → Refactor, every slice, every surface
157
157
  5. **Security-first** — PII never leaks, inputs validated, secrets server-side only
158
+ 6. **Write decisions to disk immediately** — Every confirmed decision is written to its output file the moment the user confirms it. Never batch decisions in-memory across a long conversation. If the conversation truncates, all confirmed work must survive on disk.
158
159
 
159
160
  ### Decision Tree
160
161