cfsa-antigravity 2.1.0 → 2.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 (46) hide show
  1. package/package.json +2 -2
  2. package/template/.agent/instructions/example.md +21 -0
  3. package/template/.agent/progress/.gitkeep +0 -0
  4. package/template/.agent/progress/memory/.gitkeep +0 -0
  5. package/template/.agent/progress/sessions/.gitkeep +0 -0
  6. package/template/.agent/skills/architecture-mapping/SKILL.md +8 -8
  7. package/template/.agent/skills/idea-extraction/SKILL.md +270 -279
  8. package/template/.agent/skills/pipeline-rubrics/references/ia-rubric.md +2 -2
  9. package/template/.agent/skills/pipeline-rubrics/references/scoring.md +1 -1
  10. package/template/.agent/skills/pipeline-rubrics/references/vision-rubric.md +2 -1
  11. package/template/.agent/skills/prd-templates/SKILL.md +11 -11
  12. package/template/.agent/skills/prd-templates/references/decomposition-templates.md +1 -1
  13. package/template/.agent/skills/prd-templates/references/engineering-standards-template.md +2 -0
  14. package/template/.agent/skills/prd-templates/references/fractal-cx-template.md +58 -0
  15. package/template/.agent/skills/prd-templates/references/fractal-feature-template.md +93 -0
  16. package/template/.agent/skills/prd-templates/references/fractal-node-index-template.md +55 -0
  17. package/template/.agent/skills/prd-templates/references/ideation-crosscut-template.md +26 -47
  18. package/template/.agent/skills/prd-templates/references/ideation-index-template.md +41 -49
  19. package/template/.agent/skills/prd-templates/references/slice-completion-gates.md +8 -0
  20. package/template/.agent/skills/prd-templates/references/vision-template.md +8 -8
  21. package/template/.agent/skills/resolve-ambiguity/SKILL.md +1 -1
  22. package/template/.agent/skills/spec-writing/SKILL.md +1 -1
  23. package/template/.agent/workflows/create-prd-architecture.md +7 -2
  24. package/template/.agent/workflows/create-prd-stack.md +1 -1
  25. package/template/.agent/workflows/create-prd.md +4 -3
  26. package/template/.agent/workflows/decompose-architecture-structure.md +2 -2
  27. package/template/.agent/workflows/decompose-architecture-validate.md +3 -3
  28. package/template/.agent/workflows/decompose-architecture.md +18 -3
  29. package/template/.agent/workflows/evolve-feature-classify.md +14 -6
  30. package/template/.agent/workflows/ideate-discover.md +71 -110
  31. package/template/.agent/workflows/ideate-extract.md +68 -104
  32. package/template/.agent/workflows/ideate-validate.md +24 -20
  33. package/template/.agent/workflows/ideate.md +7 -7
  34. package/template/.agent/workflows/implement-slice-tdd.md +25 -0
  35. package/template/.agent/workflows/remediate-pipeline-assess.md +2 -1
  36. package/template/.agent/workflows/resolve-ambiguity.md +2 -2
  37. package/template/.agent/workflows/validate-phase-quality.md +155 -0
  38. package/template/.agent/workflows/validate-phase-readiness.md +167 -0
  39. package/template/.agent/workflows/validate-phase.md +19 -154
  40. package/template/.agent/workflows/write-architecture-spec-design.md +8 -4
  41. package/template/AGENTS.md +5 -1
  42. package/template/GEMINI.md +2 -0
  43. package/template/docs/README.md +10 -10
  44. package/template/docs/kit-architecture.md +92 -25
  45. package/template/docs/plans/ideation/README.md +8 -3
  46. package/template/.agent/skills/prd-templates/references/ideation-domain-template.md +0 -61
@@ -21,7 +21,7 @@ Write one section at a time in document order. Before writing section N+1, re-re
21
21
 
22
22
  - For BE specs, the upstream source is the IA shard
23
23
  - For FE specs, the upstream source is the BE spec
24
- - For IA shards, the upstream sources are `ideation-index.md` (+ domain files) and `architecture-design.md`
24
+ - For IA shards, the upstream sources are `ideation-index.md` (+ the relevant domain folder's `*-index.md`, `*-cx.md`, and feature files) and `architecture-design.md`
25
25
 
26
26
  **Hard rules:**
27
27
 
@@ -50,10 +50,15 @@ Design the high-level system. Each sub-item requires full exploration, not a sum
50
50
  Load the Hosting skill(s) from the cross-cutting section per the skill loading protocol (`.agent/skills/prd-templates/references/skill-loading-protocol.md`).
51
51
  Read .agent/skills/technical-writer/SKILL.md and follow its methodology.
52
52
  4. **API surface** — REST? GraphQL? RPC? Versioning strategy? Error format? Pagination? Rate limit headers?
53
+ 5. **Deployment strategy** — Rolling? Blue-green? Canary? Read `.agent/skills/deployment-procedures/SKILL.md` Section 6 for the strategy options and selection matrix. Ask:
54
+ - "Which zero-downtime deployment strategy fits your risk profile? Rolling (standard), Blue-Green (easy rollback), or Canary (validate with real traffic)?"
55
+ - "Do you want feature flags for controlled rollout of risky features? If yes, which provider (or build your own)?"
56
+ - "What is your rollback trigger? Error rate spike above N%? Latency threshold? Manual decision?"
57
+ Write the confirmed strategy to `docs/plans/architecture-draft.md` under `## Deployment Strategy`.
53
58
 
54
59
  For multi-surface projects, additionally define:
55
- 5. **Surface interconnection** — How do surfaces communicate? What is the source of truth for shared data? What happens when a surface is offline?
56
- 6. **Shared domain boundary** — Which entities/models are shared across surfaces vs surface-specific?
60
+ 6. **Surface interconnection** — How do surfaces communicate? What is the source of truth for shared data? What happens when a surface is offline?
61
+ 7. **Shared domain boundary** — Which entities/models are shared across surfaces vs surface-specific?
57
62
 
58
63
  For each component, also define:
59
64
  - What it owns (data, logic, auth decisions)
@@ -27,7 +27,7 @@ Build the decision constraints map from the ideation output, then walk through e
27
27
 
28
28
  Before any tech stack decision, read `docs/plans/ideation/meta/constraints.md` to build the **decision constraints map**.
29
29
 
30
- Also read `docs/plans/ideation/ideation-index.md` — specifically the `## Structural Classification` section. This is the **authoritative source** for the project's surface list and project shape (single-surface, multi-surface-shared, or multi-product). Use this to determine which decision axes apply and whether tech stack decisions need to be made per-surface.
30
+ Also read `docs/plans/ideation/ideation-index.md` — specifically the `## Structural Classification` section. This is the **authoritative source** for the project's surface list and project shape (`single-surface`, `multi-surface-shared`, `multi-product-hub`, or `multi-product-peer`). Use this to determine which decision axes apply and whether tech stack decisions need to be made per-surface.
31
31
 
32
32
  Build the constraints map:
33
33
 
@@ -35,11 +35,12 @@ Read `docs/plans/ideation/ideation-index.md`.
35
35
 
36
36
  If the file doesn't exist, tell the user to run `/ideate` first. Do not proceed without approved ideation output.
37
37
 
38
- Use the **Document Map** in `ideation-index.md` to locate specific files:
38
+ Use the **Structure Map** in `ideation-index.md` to locate specific files:
39
39
  - Constraints + surface classification → `meta/constraints.md`
40
40
  - Personas → `meta/personas.md`
41
- - Domain details → individual domain files in `domains/`
42
- - Cross-cutting concerns → `cross-cuts/cross-cut-ledger.md`
41
+ - Domain details → fractal tree under `domains/` (or `surfaces/` for multi-product). Each domain is a **folder** containing `*-index.md` (children + Role Matrix), `*-cx.md` (cross-cuts), and child feature `.md` files. Walk the tree to the depth needed.
42
+ - Cross-cutting concerns → `ideation-cx.md` (global cross-surface) + per-domain `*-cx.md` files within the fractal tree
43
+ - Role coverage → Role Matrix in each domain index, Role Lens in each feature file (use for RBAC planning in security shard)
43
44
 
44
45
  Pay special attention to the **Project Surfaces** section in `meta/constraints.md` — it determines which tech stack axes apply.
45
46
 
@@ -51,9 +51,9 @@ The `00-infrastructure` skeleton must contain these five items:
51
51
 
52
52
  Read `.agent/skills/prd-templates/references/decomposition-templates.md` for the **Shard Skeleton** template. For each shard, create a skeleton file at `docs/plans/ia/[NN-domain-name].md` using the template.
53
53
 
54
- Read .agent/skills/prd-templates/SKILL.md and follow its Shard Seeding Procedure for Level-1 sub-feature extraction. The procedure reads `ideation-index.md` to find the correct domain file path — files may be in `domains/` or `surfaces/{name}/` depending on the structural classification.
54
+ Read `.agent/skills/prd-templates/SKILL.md` and follow its Shard Seeding Procedure for Level-1 sub-feature extraction. The procedure reads `ideation-index.md` to find the correct domain path — the ideation folder uses a fractal structure where each domain is a folder (with `{slug}-index.md`, `{slug}-cx.md`, and child features/sub-domains) rather than a flat file. For multi-product projects, domains may be in `surfaces/{name}/` (surface-exclusive or hub-owned) or `shared/` (peer mode).
55
55
 
56
- Fallback for domains not covered in the ideation domain files is defined in the skill's Shard Seeding Procedure.
56
+ Fallback for domains not covered in the ideation domain folders is defined in the skill's Shard Seeding Procedure.
57
57
 
58
58
  ## 6. Create IA index
59
59
 
@@ -25,11 +25,11 @@ Identify deep dive candidates, annotate shard document types, validate the depen
25
25
 
26
26
  ## 9.5. Proactive shard load pre-check (ideation signal)
27
27
 
28
- Before identifying deep dives, read the ideation domain files that fed each shard. The sub-area count from ideation is a **leading indicator** of shard complexity.
28
+ Before identifying deep dives, read the ideation domain folders that fed each shard. The sub-area count from ideation is a **leading indicator** of shard complexity.
29
29
 
30
30
  For each shard skeleton:
31
- 1. Read the corresponding ideation domain file (use the path from `ideation-index.md` Domain Documents table — may be in `domains/` or `surfaces/{name}/`)
32
- 2. Count the sub-areas listed in the domain file's `## Sub-Areas` or breadth map section
31
+ 1. Read the corresponding ideation domain folder (use the path from `ideation-index.md` Structure Map — may be under `domains/` or `surfaces/{name}/`). Read the folder's `*-index.md` for the children table.
32
+ 2. Count the child feature files and sub-domain folders listed in the domain index
33
33
  3. Compare against the shard load thresholds:
34
34
 
35
35
  | Ideation Sub-Areas | Pre-Check Action |
@@ -29,7 +29,7 @@ If no architecture design exists, tell the user to run `/create-prd` first. Do n
29
29
 
30
30
  Also check the document's `**Status**:` field. If the status is `Draft` or `Review` → **STOP**: "The architecture design is not yet approved (current status: [status]). Get explicit approval from the user and update the status to `Approved` before decomposing."
31
31
 
32
- Also read `docs/plans/ideation/ideation-index.md` for the domain map, and load specific domain files as needed for context.
32
+ Also read `docs/plans/ideation/ideation-index.md` for the fractal domain map and structural classification. The ideation folder uses a fractal structure — read domain indexes (not flat files) to understand depth, child counts, and cross-cut density.
33
33
 
34
34
  > **Design system prerequisite (web/mobile/desktop projects)**: Read `.agent/instructions/tech-stack.md` and locate the `SURFACES` value. If surfaces include `web`, `mobile`, or `desktop`, verify that `docs/plans/design-system.md` exists and is not empty.
35
35
  >
@@ -53,13 +53,28 @@ Read .agent/skills/architecture-mapping/SKILL.md and follow its methodology.
53
53
 
54
54
  Analyze the architecture design and identify natural domain boundaries. Each boundary becomes a numbered IA shard.
55
55
 
56
- **Heuristics for finding boundaries:**
56
+ **Fractal tree analysis for shard boundaries:**
57
+
58
+ The ideation folder uses a fractal structure. Walk the tree to inform shard granularity:
59
+
60
+ | Signal | What It Means for Sharding |
61
+ |--------|---------------------------|
62
+ | Deep fractal tree (3+ levels) | Domain is complex enough for its own shard |
63
+ | Many children (5+ features) | Consider splitting into multiple shards |
64
+ | Dense CX file (5+ cross-cuts) | This domain has high coupling — keep it together in one shard, or isolate carefully |
65
+ | Rich Role Matrix (3+ roles with access) | Shard needs multi-role IA spec coverage |
66
+ | Hub-and-spoke shared domains | Shared domains often become `00-*` cross-cutting shards |
67
+ | Leaf features marked `[EXHAUSTED]` | Most confident for shard scoping — behavior is fully defined |
68
+
69
+ **Standard heuristics also apply:**
57
70
  - Features that share the same data models belong together
58
71
  - Features that can be developed/deployed independently are candidates for separation
59
72
  - Features that share the same access control model may belong together
60
73
  - Cross-cutting concerns (auth, API conventions, error handling) become `00-*` shards
61
74
 
62
- Read .agent/skills/architecture-mapping/SKILL.md and follow its Domain Boundary Protocol. Build the domain inventory record, apply all three split trigger rules, and produce the domain boundary table. Present split candidates to the user before locking any boundary.
75
+ Read `.agent/skills/architecture-mapping/SKILL.md` and follow its Domain Boundary Protocol. Build the domain inventory record, apply all three split trigger rules, and produce the domain boundary table. Present split candidates to the user before locking any boundary.
76
+
77
+ > **Important**: Ideation does NOT prescribe shard boundaries. It provides the raw data (depth, features, cross-cuts, roles). This workflow makes the shard boundary decisions based on architectural analysis.
63
78
 
64
79
  Present the proposed domain decomposition to the user for validation.
65
80
 
@@ -54,7 +54,7 @@ Based on the classification, determine where the new content enters the pipeline
54
54
 
55
55
  | Classification | Entry Point Document | Rationale |
56
56
  |---------------|---------------------|-----------|
57
- | **[1] New feature** | `docs/plans/ideation/ideation-index.md` + relevant domain file | New features start at the ideation layer — they affect everything downstream |
57
+ | **[1] New feature** | `docs/plans/ideation/ideation-index.md` + fractal tree placement (see Step 4) | New features start at the ideation layer — placed in the correct domain folder via Classification Gate |
58
58
  | **[2] New requirement** | The IA shard that owns the affected domain | Requirements on existing features enter at the domain interaction level |
59
59
  | **[3] New technical constraint** | `docs/plans/[dated]-architecture-design.md` | Technical constraints affect the architecture and everything below it |
60
60
  | **[4] Scope correction** | Ask the user which document contains the misunderstanding | Corrections enter wherever the original misunderstanding lives |
@@ -69,11 +69,19 @@ Read .agent/skills/technical-writer/SKILL.md and follow its clarity standards fo
69
69
 
70
70
  This is a real spec-writing step — not a placeholder. Write the new content at the appropriate depth for the entry point layer:
71
71
 
72
- **If entry point is ideation layer** (`docs/plans/ideation/ideation-index.md`):
73
- - Feature description (what it does, why it matters)
74
- - Affected personas (who uses this)
75
- - Success criteria (how we know it works)
76
- - Constraints (what limits apply)
72
+ **If entry point is ideation layer** (`docs/plans/ideation/`):
73
+
74
+ 1. **Placement**: Read `ideation-index.md` Structure Map. Identify the domain folder where this feature belongs. If no suitable domain exists, create one.
75
+ 2. **Classification Gate**: Apply the Node Classification Gate from `.agent/skills/idea-extraction/SKILL.md` determine if the feature is a leaf feature file or complex enough to warrant a sub-domain folder.
76
+ 3. **Write the feature**: Use `.agent/skills/prd-templates/references/fractal-feature-template.md` as the template. Include:
77
+ - Feature description (what it does, why it matters)
78
+ - Affected personas (who uses this)
79
+ - Success criteria (how we know it works)
80
+ - Constraints (what limits apply)
81
+ - **Role Lens** — which personas interact with this feature and how
82
+ 4. **Update parent index**: Add the new feature to the parent domain's `*-index.md` children table
83
+ 5. **Update CX files**: If the feature has cross-domain interactions, update the parent domain's `*-cx.md` and/or `ideation-cx.md` (global)
84
+ 6. **Update `ideation-index.md`**: Add the feature to the MoSCoW Summary at the appropriate priority level
77
85
 
78
86
  **If entry point is architecture layer** (`architecture-design.md`):
79
87
  - Technical constraint description
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Recursive breadth-before-depth domain exploration with Deep Think protocol for the ideate workflow
2
+ description: Recursive breadth-before-depth domain exploration with Deep Think protocol and fractal structure for the ideate workflow
3
3
  parent: ideate
4
4
  shard: discover
5
5
  standalone: true
@@ -17,180 +17,141 @@ pipeline:
17
17
 
18
18
  # Ideate — Discover
19
19
 
20
- Explore domains through recursive breadth-before-depth with the Deep Think protocol. Write directly to domain filesno monolithic intermediary.
20
+ Explore domains through recursive breadth-before-depth with the Deep Think protocol. Write to the fractal folder structure every node gets an index, CX file, and children.
21
21
 
22
- **Prerequisite**: If invoked standalone, verify `docs/plans/ideation/ideation-index.md` exists with at least the folder structure seeded. If not, prompt the user to run `/ideate-extract` first.
22
+ **Prerequisite**: If invoked standalone, verify `docs/plans/ideation/ideation-index.md` exists with the fractal folder structure seeded. If not, prompt the user to run `/ideate-extract` first.
23
23
 
24
24
  ---
25
25
 
26
26
  ## 3. Domain Exploration — Recursive Model
27
27
 
28
- Read `.agent/skills/idea-extraction/SKILL.md` and follow its Recursive Domain Exhaustion Protocol and Deep Think Protocol.
28
+ Read `.agent/skills/idea-extraction/SKILL.md` follow the Recursive Domain Exhaustion Protocol, Deep Think Protocol, Node Classification Gate, and Reactive Depth Protocol.
29
29
 
30
- Read the `## Expansion Mode` and `## Structural Classification` sections from `docs/plans/ideation/ideation-index.md`. The expansion mode shapes exploration behavior. The structural classification determines where domain files are created.
31
-
32
- > **Multi-product projects:** When creating domain files, always check whether the domain belongs to a specific surface or is shared. Use `surfaces/{name}/` for surface-exclusive domains and `domains/` for shared/cross-cutting domains. Ask the user if placement is unclear.
30
+ Read `## Expansion Mode` and `## Structural Classification` from `docs/plans/ideation/ideation-index.md`.
33
31
 
34
32
  ### Full Mode (recommended for 3+ domains)
35
33
 
36
34
  #### Level 0 — Global Domain Map
37
35
 
38
36
  1. Read `ideation-index.md` for currently identified domains and structural classification
39
- 2. Apply the idea-extraction skill's Deep Think Protocol:
40
- - "Based on this product type and industry, what domains would I expect to see that haven't been mentioned?"
41
- - Present hypotheses to user for confirmation or rejection
42
- 3. For each confirmed domain, create a domain file:
43
- - **Single-surface**: Create in `domains/` using the `ideation-domain-template.md`
44
- - **Multi-product**: Determine placement first "Does this belong to a specific surface, or is it shared?" Create in `surfaces/{name}/` or `domains/` accordingly.
45
- 4. Note preliminary cross-cuts: "Domain A might touch Domain B because [reason]" → add to `cross-cuts/cross-cut-ledger.md` as **Level 0** entries
46
- 5. Update `ideation-index.md` with the complete domain map (paths reflect actual folder locations)
47
- 6. **Gate**: Present complete domain map to user. Get confirmation before Level 1.
37
+ 2. Apply Deep Think: "What domains would I expect for this product type?"
38
+ 3. For each confirmed domain, run the **Node Classification Gate** (from skill):
39
+ - Determine placement (surface folder, hub, shared, or top-level)
40
+ - Create domain folder: `{NN}-{slug}/` + `{slug}-index.md` + `{slug}-cx.md`
41
+ 4. Note preliminary cross-cuts:
42
+ - In the relevant parent's CX file (surface CX or global CX)
43
+ - In `ideation-cx.md` if cross-surface
44
+ 5. Update `ideation-index.md` structure map with paths
45
+ 6. **Gate**: Present domain map. User confirms before Level 1.
48
46
 
49
47
  #### Level 1 — Domain Breadth Sweep
50
48
 
51
49
  For each domain (dependency order — foundational first):
52
50
 
53
51
  1. List all sub-areas/capabilities within the domain
54
- 2. **Deep Think**: "Based on this domain in this industry, what sub-areas would an expert expect that haven't been mentioned?" Present hypotheses.
55
- 3. Write the breadth map to the domain file. Mark each sub-area as `[SURFACE]`.
56
- 4. Note cross-cuts at sub-area leveladd to ledger as **Level 1** entries
57
- 5. **NEW DOMAINS DISCOVERED?** Classify placement (surface-specific or shared), create domain file in the correct folder, update index, loop back to Level 0 for the new domain. Do NOT proceed until domain map is stable.
58
- 6. Mark domain status as `[BREADTH]` in the index
59
- 7. **Gate**: Pause after EACH domain's breadth map. "Here's what I mapped for [Domain]. Anything missing?" Then after ALL domains: "All domains are at BREADTH. Ready to drill?"
52
+ 2. **Deep Think**: "What sub-areas would an expert expect?"
53
+ 3. Run **Node Classification Gate** for each:
54
+ - 2+ interacting capabilities**sub-domain** (create folder + index + CX)
55
+ - Single capability**feature** (create `.md` file from `fractal-feature-template.md`)
56
+ 4. Update domain index (Children table + **Role Matrix**)
57
+ 5. Note cross-cuts in the domain's CX file
58
+ 6. **NEW DOMAINS DISCOVERED?** → Classify, create, update index, loop to Level 0
59
+ 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?"
60
61
 
61
62
  #### Level 2+ — Vertical Drilling
62
63
 
63
- For each domain (dependency order), for each sub-area:
64
-
65
- 1. Apply the idea-extraction skill's Exhaustion Questions (entity, feature, user, integration)
66
- 2. **Deep Think** per sub-area:
67
- - "Based on this feature in this product, what edge cases, interactions, and failure modes would a production system need?"
68
- - "Based on cross-domain knowledge already captured, does this sub-area need something because of how it connects to other domains?"
69
- - Present hypotheses to user
70
- 3. Write drill results to the domain file under the appropriate sub-area section
71
- 4. Record Deep Think outcomes in the domain file's Deep Think Annotations table
72
- 5. Cross-cuts with evidenceadd to ledger as **Level 2+** entries with specific evidence
73
- 6. **NEW SUB-AREAS DISCOVERED?** Add to domain file breadth map as `[SURFACE]`, complete breadth mapping first, THEN drill
74
- 7. **NEW DOMAINS DISCOVERED?** Classify placement (surface-specific or shared), create domain file in the correct folder, update index, loop back to Level 0
75
- 8. When Deep Think yields zero new hypotheses AND user confirms → mark sub-area `[EXHAUSTED]`
76
- 9. When all sub-areas are `[DEEP]` or `[EXHAUSTED]` → mark domain `[DEEP]` or `[EXHAUSTED]` in index
77
- 10. **Gate**: Pause after each domain is drilled. "Here's what I captured for [Domain]. Anything missing?"
64
+ For each domain (dependency order), for each child:
65
+
66
+ 1. Apply Exhaustion Questions (entity, feature, user, integration)
67
+ 2. **Deep Think** per child — edge cases, interactions, failure modes
68
+ 3. For **feature files**: fill all sections (Behavior, Edge Cases, States, **Role Lens**)
69
+ 4. For **sub-domains**: drill their child features recursively
70
+ 5. Record Deep Think outcomes in each feature file's Deep Think Annotations table
71
+ 6. Cross-cuts with evidence → add to parent's CX file with synthesis questions
72
+ 7. **Feature reveals 2+ interacting capabilities?** Run **Promotion Protocol** (convert .md to folder)
73
+ 8. **NEW DOMAINS DISCOVERED?**Loop to Level 0
74
+ 9. When Deep Think yields zero hypotheses AND user confirms mark `[EXHAUSTED]`
75
+ 10. Status propagation: all children `[EXHAUSTED]` node is `[EXHAUSTED]`
76
+ 11. **Gate**: Pause after each domain is drilled.
78
77
 
79
78
  #### Cross-Cut Synthesis (Continuous)
80
79
 
81
- Cross-cuts are NOT a separate pass. They are identified and synthesized continuously. However, after all domains reach `[DEEP]`, do a final review:
80
+ Cross-cuts are identified continuously, but after all domains reach `[DEEP]`, do a final review:
82
81
 
83
- 1. Read `cross-cuts/cross-cut-ledger.md` for all accumulated entries
84
- 2. For any pairs still at `pending` status, ask the five synthesis questions:
85
- - Shared state conflict who owns the entity? merge strategy?
86
- - Trigger chain does A trigger B? rollback if B fails? sync/async?
87
- - Permission intersection does permission in A affect B?
88
- - Notification fan-out — does event in A notify actors in B?
89
- - State transition conflict — can A and B race? consistency impact?
90
- 3. Document confirmed interactions with outcomes in the ledger
91
- 4. Discard rejected pairs with a one-line reason
92
- 5. Check for **second-order cross-cuts**: "Now that we've confirmed these interactions, do any of the CONFIRMED pairs themselves cross-cut each other?"
82
+ 1. Read ALL CX files at every level (global, surface, domain, sub-domain)
83
+ 2. For any entries at Medium/Low confidence, ask the five synthesis questions (per `fractal-cx-template.md`)
84
+ 3. Document confirmed interactions with role scoping
85
+ 4. Record rejected pairs with reasoning
86
+ 5. Check second-order cross-cuts: "Do any CONFIRMED pairs cross-cut each other?"
93
87
 
94
88
  ### Vertical Mode
95
89
 
96
- Focus on existing domains. Identify shallowest sub-areas. Drive to Level 2+ depth with Deep Think active. Cross-cut watch active — surface candidates in ledger. Do not introduce new domains unless user requests.
90
+ Identify shallowest leaf nodes. Drive to `[DEEP]`/`[EXHAUSTED]` with Deep Think. Fill Role Lens in all feature files. Cross-cut watch active — log to appropriate CX files. Do not introduce new domains unless user requests.
97
91
 
98
92
  ### Horizontal Mode
99
93
 
100
- Audit for missing domains with Deep Think. Present gap list. Create domain files for confirmed new domains with Level 1 exploration. Cross-cut watch active for new domains vs existing. Offer to continue with vertical drilling after.
94
+ Audit for missing domains with Deep Think. Create domain folders (with Classification Gate) for confirmed new domains. Level 1 breadth sweep on each. Offer vertical drilling after.
101
95
 
102
96
  ### Cross-cutting Mode (standalone)
103
97
 
104
- Read all domain files, identify interaction points. For each significant pair, ask the five synthesis questions. Document confirmed interactions in ledger. Note: works best after vertical drilling.
105
-
106
- ### Combination Mode
107
-
108
- User specifies sequence. Apply each mode in order. Cross-cut detection always active.
98
+ Read all CX files + feature files' cross-cut notes. Identify interaction points. Run synthesis questions on unresolved pairs. Document in appropriate CX files.
109
99
 
110
- ### As-is Mode
100
+ ### Combination / As-is Mode
111
101
 
112
- Skip active expansion. Proceed to exhaustion check. Cross-cut watch still active — scan domain files for obvious interaction points and surface candidates in ledger before proceeding.
113
-
114
- > **Mid-session mode switching**: If you want to change expansion direction, update the `Expansion Mode` in `ideation-index.md` and re-run `/ideate-discover`.
102
+ Combination: user specifies sequence. As-is: skip expansion, run exhaustion check, but still scan for obvious CX candidates.
115
103
 
116
104
  ---
117
105
 
118
106
  ## 4. Problem exploration
119
107
 
120
- Read `.agent/skills/brainstorming/SKILL.md` and follow its structured facilitation methodology.
121
-
122
- Using the idea-extraction skill's approach for the selected mode, explore:
123
-
124
- 1. **What problem are we solving?** — Get the user to articulate the core pain point in one sentence. If they can't, help them sharpen it. Write to `meta/problem-statement.md`.
125
- 2. **Who has this problem?** — Identify 2-4 distinct user personas with different needs. For each persona, explore all 6 required fields. Write to `meta/personas.md`.
126
- 3. **How are they solving it today?** — Understand the competitive landscape and current workarounds. Write to `meta/competitive-landscape.md`.
127
- 4. **Why now?** — What has changed that makes this solvable/valuable now. Write to `meta/problem-statement.md` under the "Why Now" section.
108
+ Read `.agent/skills/brainstorming/SKILL.md` and follow its methodology.
128
109
 
129
- After each answer, summarize what you've captured and ask the user to confirm before moving on.
110
+ 1. **What problem are we solving?** Write to `meta/problem-statement.md`
111
+ 2. **Who has this problem?** → Write to `meta/personas.md`
112
+ 3. **How are they solving it today?** → Write to `meta/competitive-landscape.md`
113
+ 4. **Why now?** → Write to `meta/problem-statement.md` under "Why Now"
130
114
 
131
- **Persona completeness gate (Ideation Rubric Dimension 2):** For each persona, verify all 6 fields are explicitly present before moving on:
132
- 1. **Name + specific role** — not "a user" or "customers"; a named role with context
133
- 2. **Specific pain point** — one sentence naming the exact friction
134
- 3. **Current workaround** — how they solve this today: the specific tool, process, or coping mechanism
135
- 4. **Success criteria** — what "solved" concretely looks like for this persona; measurable if possible
136
- 5. **Switching trigger** — what would make them switch from their current approach
137
- 6. **At least one edge case or constraint unique to this persona**
115
+ **Persona completeness gate (Ideation Rubric Dimension 2):** For each persona, verify all 6 fields:
116
+ 1. Name + specific role
117
+ 2. Specific pain point
118
+ 3. Current workaround
119
+ 4. Success criteria
120
+ 5. Switching trigger
121
+ 6. At least one edge case or constraint unique to this persona
138
122
 
139
- If any field is absent → probe for it before proceeding. Do not move to feature collection until all personas have all 6 fields. Reference: `.agent/skills/pipeline-rubrics/references/ideation-rubric.md` Dimension 2.
123
+ If any field absent → probe before proceeding. Reference: `.agent/skills/pipeline-rubrics/references/ideation-rubric.md` Dimension 2.
140
124
 
141
125
  ---
142
126
 
143
127
  ## 5. Feature inventory — deep exploration
144
128
 
145
- This is where most ideation workflows fail. They collect a feature list and move on. This workflow explores each feature using the recursive model and Deep Think.
146
-
147
129
  ### 5a. Feature collection (MoSCoW)
148
130
 
149
- Read `.agent/skills/brainstorming/SKILL.md` and follow its methodology.
150
-
151
- For each persona identified in Step 4, brainstorm features:
152
-
153
- 1. **Must-have features** — What features are launch-blocking?
154
- 2. **Should-have features** — What features are expected but not day-one critical?
155
- 3. **Could-have features** — What features would delight but can be deferred?
156
- 4. **Won't-have (now)** — What is explicitly out of scope?
131
+ Read `.agent/skills/brainstorming/SKILL.md`.
157
132
 
158
- **Deep Think**: "Based on the personas and problem statement, what features would I expect to see in the Must Have list that haven't been mentioned? For example, in similar products, [examples]."
133
+ For each persona, brainstorm features across all 4 MoSCoW tiers. **Deep Think** for missing Must Haves.
159
134
 
160
- Write the MoSCoW matrix to `ideation-index.md` under the MoSCoW Summary section. Each feature links to its domain file.
161
-
162
- > **Note:** Deferred ≠ lower quality. Every feature that makes the cut will be built to production standard.
135
+ Write MoSCoW matrix to `ideation-index.md`. Each feature references its **fractal path** (e.g., `web/01.02.03`) and links to its feature file.
163
136
 
164
137
  ### 5b. Feature deepening — Must Haves
165
138
 
166
- For each **Must Have** feature, use the recursive model:
167
-
168
- 1. **Level 1: Sub-features.** What are the component parts of this feature?
169
- - "User authentication" → signup, login, password reset, profile management, account deletion, session management, OAuth providers
170
-
171
- 2. **Level 2: Edge cases and failure modes.** For each sub-feature:
172
- - What happens on failure? What error does the user see?
173
- - What happens on partial failure? (network drops mid-operation)
174
- - What permissions are required?
175
- - What are the states? (loading, empty, populated, error)
176
-
177
- 3. **Level 3 (complex features): Interactions and conflicts.**
178
- - How does this feature interact with other Must Haves?
179
- - What if two features trigger simultaneously?
180
- - Are there any conflicts between features?
139
+ For each Must Have feature, use the recursive model:
181
140
 
182
- **Deep Think at each level**: "Based on this feature in production systems, what am I missing? What breaks in the real world?"
141
+ 1. **Level 1: Sub-features.** Component parts. Run Classification Gate sub-domain or feature?
142
+ 2. **Level 2: Edge cases and failure modes.** Fill feature file sections: Behavior (happy path, edge cases, states), **Role Lens**.
143
+ 3. **Level 3 (complex features): Interactions.** Cross-cuts with evidence → parent CX file.
183
144
 
184
- Write all drilling results to the appropriate domain files.
145
+ **Deep Think at each level.** Write results to feature files using `fractal-feature-template.md`.
185
146
 
186
147
  ### 5c. Feature deepening — Should Haves (lighter touch)
187
148
 
188
- For Should Have features, explore Level 1 (sub-features) only with Deep Think. Note that these will get full Level 2-3 treatment in `/create-prd` when they enter scope.
149
+ Level 1 (sub-features) only with Deep Think. Full treatment deferred to `/create-prd`.
189
150
 
190
151
  ---
191
152
 
192
153
  ### Propose next step
193
154
 
194
- Once the feature inventory is complete and the user has confirmed the MoSCoW matrix, proceed to `/ideate-validate` to check exhaustion, explore constraints, and compile the vision summary.
155
+ Proceed to `/ideate-validate` for exhaustion check, constraint exploration, and vision compilation.
195
156
 
196
- > If this shard was invoked standalone (not from `/ideate`), surface this via `notify_user`. If invoked by the parent `/ideate`, this is a natural handoff — the parent orchestrates the transition.
157
+ > If standalone, surface via `notify_user`. If from parent `/ideate`, natural handoff.