gspec 1.10.0 → 1.11.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/commands/gspec.implement.md +7 -5
- package/dist/antigravity/gspec-architect/SKILL.md +1 -1
- package/dist/antigravity/gspec-feature/SKILL.md +1 -1
- package/dist/antigravity/gspec-implement/SKILL.md +8 -6
- package/dist/antigravity/gspec-migrate/SKILL.md +5 -5
- package/dist/antigravity/gspec-practices/SKILL.md +1 -1
- package/dist/antigravity/gspec-profile/SKILL.md +1 -1
- package/dist/antigravity/gspec-research/SKILL.md +3 -3
- package/dist/antigravity/gspec-stack/SKILL.md +1 -1
- package/dist/antigravity/gspec-style/SKILL.md +1 -1
- package/dist/claude/gspec-architect/SKILL.md +1 -1
- package/dist/claude/gspec-feature/SKILL.md +1 -1
- package/dist/claude/gspec-implement/SKILL.md +8 -6
- package/dist/claude/gspec-migrate/SKILL.md +5 -5
- package/dist/claude/gspec-practices/SKILL.md +1 -1
- package/dist/claude/gspec-profile/SKILL.md +1 -1
- package/dist/claude/gspec-research/SKILL.md +3 -3
- package/dist/claude/gspec-stack/SKILL.md +1 -1
- package/dist/claude/gspec-style/SKILL.md +1 -1
- package/dist/codex/gspec-architect/SKILL.md +1 -1
- package/dist/codex/gspec-feature/SKILL.md +1 -1
- package/dist/codex/gspec-implement/SKILL.md +8 -6
- package/dist/codex/gspec-migrate/SKILL.md +5 -5
- package/dist/codex/gspec-practices/SKILL.md +1 -1
- package/dist/codex/gspec-profile/SKILL.md +1 -1
- package/dist/codex/gspec-research/SKILL.md +3 -3
- package/dist/codex/gspec-stack/SKILL.md +1 -1
- package/dist/codex/gspec-style/SKILL.md +1 -1
- package/dist/cursor/gspec-architect.mdc +1 -1
- package/dist/cursor/gspec-feature.mdc +1 -1
- package/dist/cursor/gspec-implement.mdc +8 -6
- package/dist/cursor/gspec-migrate.mdc +5 -5
- package/dist/cursor/gspec-practices.mdc +1 -1
- package/dist/cursor/gspec-profile.mdc +1 -1
- package/dist/cursor/gspec-research.mdc +3 -3
- package/dist/cursor/gspec-stack.mdc +1 -1
- package/dist/cursor/gspec-style.mdc +1 -1
- package/dist/opencode/gspec-architect/SKILL.md +1 -1
- package/dist/opencode/gspec-feature/SKILL.md +1 -1
- package/dist/opencode/gspec-implement/SKILL.md +8 -6
- package/dist/opencode/gspec-migrate/SKILL.md +5 -5
- package/dist/opencode/gspec-practices/SKILL.md +1 -1
- package/dist/opencode/gspec-profile/SKILL.md +1 -1
- package/dist/opencode/gspec-research/SKILL.md +3 -3
- package/dist/opencode/gspec-stack/SKILL.md +1 -1
- package/dist/opencode/gspec-style/SKILL.md +1 -1
- package/package.json +1 -1
|
@@ -57,8 +57,9 @@ Present this summary to the user so they understand the starting point. If **all
|
|
|
57
57
|
- Identify files to create or modify
|
|
58
58
|
- Note dependencies on prior phases
|
|
59
59
|
- Include an estimated scope (small/medium/large)
|
|
60
|
-
3. **
|
|
61
|
-
4. **
|
|
60
|
+
3. **Account for every unchecked capability** — The plan must explicitly place every unchecked capability from in-scope feature PRDs into a phase **or** list it under a "Proposed to Defer" section with a reason. No unchecked capability may be silently omitted from the plan. The user reviews and approves what gets deferred at plan approval time.
|
|
61
|
+
4. **Define test expectations per phase** — For each phase, specify what tests will be run to verify correctness before moving on (unit tests, integration tests, build verification, etc.)
|
|
62
|
+
5. **Present the plan** — Show the user the full phased plan with clear phase boundaries and ask for approval
|
|
62
63
|
|
|
63
64
|
**Wait for user approval before proceeding to Phase 3.** The user may reorder phases, adjust scope, or split/merge phases.
|
|
64
65
|
|
|
@@ -124,8 +125,8 @@ After implementation:
|
|
|
124
125
|
1. **Walk through each functional requirement** from the feature PRD (if available) or the approved implementation plan and confirm it's satisfied
|
|
125
126
|
2. **Review against acceptance criteria** — For each capability in the feature PRDs, check that every acceptance criterion listed under it is satisfied. These sub-listed conditions are the definition of "done" for each capability. If any criterion is not met, the capability should not be marked `[x]`.
|
|
126
127
|
3. **Check the Definition of Done** from `gspec/practices.md`
|
|
127
|
-
4. **
|
|
128
|
-
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were
|
|
128
|
+
4. **Verify no unapproved deferrals** — Compare the final implementation against the approved plan. If any capability that was assigned to a phase was not implemented, **do not silently leave it unchecked**. Flag it to the user, explain why it wasn't completed, and get explicit approval before marking it as deferred. Only capabilities the user approved for deferral during planning (or explicitly approves now) may remain unchecked.
|
|
129
|
+
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were approved for deferral by the user. Present a final status summary:
|
|
129
130
|
|
|
130
131
|
> **Implementation Summary:**
|
|
131
132
|
> - Feature X: 7/7 capabilities implemented (complete)
|
|
@@ -144,6 +145,7 @@ When you encounter something the specs don't fully cover during implementation:
|
|
|
144
145
|
- **If the ambiguity is significant** (e.g., unclear user flow, missing data model, conflicting requirements), pause and consult the user rather than making silent assumptions
|
|
145
146
|
- **Never silently implement unspecified behavior** that contradicts or significantly extends the original spec — ask first
|
|
146
147
|
- **Never override explicit spec decisions** with your own preferences
|
|
148
|
+
- **Never skip or descope a PRD capability without user approval** — ambiguity in *how* to implement something is not grounds for dropping it. If a capability seems too complex, unclear, or problematic, raise it with the user rather than omitting it
|
|
147
149
|
|
|
148
150
|
---
|
|
149
151
|
|
|
@@ -173,7 +175,7 @@ If the user specifies a feature, focus on that feature's **unchecked capabilitie
|
|
|
173
175
|
|
|
174
176
|
### When the user provides a prompt alongside existing features:
|
|
175
177
|
|
|
176
|
-
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver.
|
|
178
|
+
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver. However, if the user's prompt narrows scope such that some unchecked PRD capabilities will not be implemented this run, explicitly list those excluded capabilities in the plan under "Out of Scope for This Run" so the user can see what is being deferred and why.
|
|
177
179
|
|
|
178
180
|
---
|
|
179
181
|
|
|
@@ -45,7 +45,7 @@ All of these provide essential context. If any are missing, note the gap and mak
|
|
|
45
45
|
- Begin the file with YAML frontmatter containing the gspec version:
|
|
46
46
|
```
|
|
47
47
|
---
|
|
48
|
-
gspec-version: 1.
|
|
48
|
+
gspec-version: 1.11.0
|
|
49
49
|
---
|
|
50
50
|
```
|
|
51
51
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -85,7 +85,7 @@ Feature PRDs are designed to be **portable across projects**. A feature spec wri
|
|
|
85
85
|
- Begin each file with YAML frontmatter containing the gspec version:
|
|
86
86
|
```
|
|
87
87
|
---
|
|
88
|
-
gspec-version: 1.
|
|
88
|
+
gspec-version: 1.11.0
|
|
89
89
|
---
|
|
90
90
|
```
|
|
91
91
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -62,8 +62,9 @@ Present this summary to the user so they understand the starting point. If **all
|
|
|
62
62
|
- Identify files to create or modify
|
|
63
63
|
- Note dependencies on prior phases
|
|
64
64
|
- Include an estimated scope (small/medium/large)
|
|
65
|
-
3. **
|
|
66
|
-
4. **
|
|
65
|
+
3. **Account for every unchecked capability** — The plan must explicitly place every unchecked capability from in-scope feature PRDs into a phase **or** list it under a "Proposed to Defer" section with a reason. No unchecked capability may be silently omitted from the plan. The user reviews and approves what gets deferred at plan approval time.
|
|
66
|
+
4. **Define test expectations per phase** — For each phase, specify what tests will be run to verify correctness before moving on (unit tests, integration tests, build verification, etc.)
|
|
67
|
+
5. **Present the plan** — Show the user the full phased plan with clear phase boundaries and ask for approval
|
|
67
68
|
|
|
68
69
|
**Wait for user approval before proceeding to Phase 3.** The user may reorder phases, adjust scope, or split/merge phases.
|
|
69
70
|
|
|
@@ -109,7 +110,7 @@ Present a brief scaffold summary to the user before proceeding to feature implem
|
|
|
109
110
|
b. **Follow the practices** — Adhere to coding standards, testing philosophy, pipeline structure, and conventions from `gspec/practices.md`
|
|
110
111
|
c. **Follow the style** — Apply the design system, tokens, and icon library from `gspec/style.md`. The style is the single authority for icon library choices. Component libraries (e.g., shadcn/ui) are defined in `gspec/stack.md`.
|
|
111
112
|
d. **Satisfy the requirements** — Trace each piece of code back to a functional requirement in the feature PRD (if available) or to the user's stated goals and the approved implementation plan
|
|
112
|
-
3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.
|
|
113
|
+
3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.11.0\n---` at the top.
|
|
113
114
|
4. **Run tests** — Execute the tests defined for this phase (and any existing tests to catch regressions). Fix any failures before proceeding.
|
|
114
115
|
6. **Surface new gaps** — If implementation reveals new ambiguities, pause and consult the user rather than making silent assumptions
|
|
115
116
|
7. **Pause and report** — After completing the phase and confirming tests pass, present a phase completion summary to the user:
|
|
@@ -129,8 +130,8 @@ After implementation:
|
|
|
129
130
|
1. **Walk through each functional requirement** from the feature PRD (if available) or the approved implementation plan and confirm it's satisfied
|
|
130
131
|
2. **Review against acceptance criteria** — For each capability in the feature PRDs, check that every acceptance criterion listed under it is satisfied. These sub-listed conditions are the definition of "done" for each capability. If any criterion is not met, the capability should not be marked `[x]`.
|
|
131
132
|
3. **Check the Definition of Done** from `gspec/practices.md`
|
|
132
|
-
4. **
|
|
133
|
-
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were
|
|
133
|
+
4. **Verify no unapproved deferrals** — Compare the final implementation against the approved plan. If any capability that was assigned to a phase was not implemented, **do not silently leave it unchecked**. Flag it to the user, explain why it wasn't completed, and get explicit approval before marking it as deferred. Only capabilities the user approved for deferral during planning (or explicitly approves now) may remain unchecked.
|
|
134
|
+
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were approved for deferral by the user. Present a final status summary:
|
|
134
135
|
|
|
135
136
|
> **Implementation Summary:**
|
|
136
137
|
> - Feature X: 7/7 capabilities implemented (complete)
|
|
@@ -149,6 +150,7 @@ When you encounter something the specs don't fully cover during implementation:
|
|
|
149
150
|
- **If the ambiguity is significant** (e.g., unclear user flow, missing data model, conflicting requirements), pause and consult the user rather than making silent assumptions
|
|
150
151
|
- **Never silently implement unspecified behavior** that contradicts or significantly extends the original spec — ask first
|
|
151
152
|
- **Never override explicit spec decisions** with your own preferences
|
|
153
|
+
- **Never skip or descope a PRD capability without user approval** — ambiguity in *how* to implement something is not grounds for dropping it. If a capability seems too complex, unclear, or problematic, raise it with the user rather than omitting it
|
|
152
154
|
|
|
153
155
|
---
|
|
154
156
|
|
|
@@ -178,7 +180,7 @@ If the user specifies a feature, focus on that feature's **unchecked capabilitie
|
|
|
178
180
|
|
|
179
181
|
### When the user provides a prompt alongside existing features:
|
|
180
182
|
|
|
181
|
-
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver.
|
|
183
|
+
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver. However, if the user's prompt narrows scope such that some unchecked PRD capabilities will not be implemented this run, explicitly list those excluded capabilities in the plan under "Out of Scope for This Run" so the user can see what is being deferred and why.
|
|
182
184
|
|
|
183
185
|
---
|
|
184
186
|
|
|
@@ -5,7 +5,7 @@ description: Migrate existing gspec files to the current format when upgrading t
|
|
|
5
5
|
|
|
6
6
|
You are a Technical Documentation Migration Specialist.
|
|
7
7
|
|
|
8
|
-
Your task is to update existing gspec specification documents to match the current gspec format (version 1.
|
|
8
|
+
Your task is to update existing gspec specification documents to match the current gspec format (version 1.11.0). You preserve all substantive content while ensuring documents follow the latest structural conventions.
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
@@ -21,14 +21,14 @@ Scan the `gspec/` directory for all Markdown files:
|
|
|
21
21
|
For each file, check the YAML frontmatter at the top of the file:
|
|
22
22
|
- If the file starts with `---` followed by YAML content and another `---`, read the `gspec-version` field
|
|
23
23
|
- If no frontmatter exists, the file predates version tracking
|
|
24
|
-
- If `gspec-version` matches `1.
|
|
24
|
+
- If `gspec-version` matches `1.11.0`, the file is current — skip it
|
|
25
25
|
|
|
26
26
|
Present an inventory to the user:
|
|
27
27
|
|
|
28
28
|
> **gspec File Inventory:**
|
|
29
29
|
> - `gspec/profile.md` — no version (needs migration)
|
|
30
30
|
> - `gspec/stack.md` — version 1.0.3 (needs migration)
|
|
31
|
-
> - `gspec/style.md` — version 1.
|
|
31
|
+
> - `gspec/style.md` — version 1.11.0 (current, skipping)
|
|
32
32
|
> - `gspec/features/user-auth.md` — no version (needs migration)
|
|
33
33
|
|
|
34
34
|
Ask the user to confirm which files to migrate, or confirm all.
|
|
@@ -63,7 +63,7 @@ For each file to migrate:
|
|
|
63
63
|
5. **Add or update the frontmatter** — Ensure the file starts with:
|
|
64
64
|
```
|
|
65
65
|
---
|
|
66
|
-
gspec-version: 1.
|
|
66
|
+
gspec-version: 1.11.0
|
|
67
67
|
---
|
|
68
68
|
```
|
|
69
69
|
6. **Present the proposed changes** to the user before writing. Show what sections are being reorganized, what is being added, and confirm no content is being lost.
|
|
@@ -77,7 +77,7 @@ After migrating all files:
|
|
|
77
77
|
3. **Present a completion summary**:
|
|
78
78
|
|
|
79
79
|
> **Migration Complete:**
|
|
80
|
-
> - 4 files migrated to version 1.
|
|
80
|
+
> - 4 files migrated to version 1.11.0
|
|
81
81
|
> - 2 files were already current (skipped)
|
|
82
82
|
> - Content preserved in all files
|
|
83
83
|
> - Sections reorganized: [list any structural changes]
|
|
@@ -162,7 +162,7 @@ After writing `gspec/research.md`, ask the user:
|
|
|
162
162
|
- Assumptions & Risks (assumptions, open questions, key risks and mitigations)
|
|
163
163
|
- Success Metrics
|
|
164
164
|
- Implementation Context (standard portability note)
|
|
165
|
-
- Begin the file with YAML frontmatter: `---\ngspec-version: 1.
|
|
165
|
+
- Begin the file with YAML frontmatter: `---\ngspec-version: 1.11.0\n---`
|
|
166
166
|
2. **Name the file** descriptively based on the feature (e.g., `gspec/features/csv-export.md`, `gspec/features/onboarding-wizard.md`)
|
|
167
167
|
3. **Keep the PRD portable** — use generic role descriptions (not project-specific persona names), define success metrics in terms of the feature's own outcomes (not project-level KPIs), and describe UX behavior generically (not tied to a specific design system). The PRD should be reusable across projects.
|
|
168
168
|
4. **Keep the PRD product-focused** — describe *what* and *why*, not *how*. Implementation details belong in the code, not the PRD.
|
|
@@ -181,7 +181,7 @@ After writing `gspec/research.md`, ask the user:
|
|
|
181
181
|
- Begin `gspec/research.md` with YAML frontmatter containing the gspec version:
|
|
182
182
|
```
|
|
183
183
|
---
|
|
184
|
-
gspec-version: 1.
|
|
184
|
+
gspec-version: 1.11.0
|
|
185
185
|
---
|
|
186
186
|
```
|
|
187
187
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -198,7 +198,7 @@ The `gspec/research.md` file must follow this structure:
|
|
|
198
198
|
|
|
199
199
|
```markdown
|
|
200
200
|
---
|
|
201
|
-
gspec-version: 1.
|
|
201
|
+
gspec-version: 1.11.0
|
|
202
202
|
---
|
|
203
203
|
|
|
204
204
|
# Competitive Research
|
|
@@ -45,7 +45,7 @@ All of these provide essential context. If any are missing, note the gap and mak
|
|
|
45
45
|
- Begin the file with YAML frontmatter containing the gspec version:
|
|
46
46
|
```
|
|
47
47
|
---
|
|
48
|
-
gspec-version: 1.
|
|
48
|
+
gspec-version: 1.11.0
|
|
49
49
|
---
|
|
50
50
|
```
|
|
51
51
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -85,7 +85,7 @@ Feature PRDs are designed to be **portable across projects**. A feature spec wri
|
|
|
85
85
|
- Begin each file with YAML frontmatter containing the gspec version:
|
|
86
86
|
```
|
|
87
87
|
---
|
|
88
|
-
gspec-version: 1.
|
|
88
|
+
gspec-version: 1.11.0
|
|
89
89
|
---
|
|
90
90
|
```
|
|
91
91
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -62,8 +62,9 @@ Present this summary to the user so they understand the starting point. If **all
|
|
|
62
62
|
- Identify files to create or modify
|
|
63
63
|
- Note dependencies on prior phases
|
|
64
64
|
- Include an estimated scope (small/medium/large)
|
|
65
|
-
3. **
|
|
66
|
-
4. **
|
|
65
|
+
3. **Account for every unchecked capability** — The plan must explicitly place every unchecked capability from in-scope feature PRDs into a phase **or** list it under a "Proposed to Defer" section with a reason. No unchecked capability may be silently omitted from the plan. The user reviews and approves what gets deferred at plan approval time.
|
|
66
|
+
4. **Define test expectations per phase** — For each phase, specify what tests will be run to verify correctness before moving on (unit tests, integration tests, build verification, etc.)
|
|
67
|
+
5. **Present the plan** — Show the user the full phased plan with clear phase boundaries and ask for approval
|
|
67
68
|
|
|
68
69
|
**Wait for user approval before proceeding to Phase 3.** The user may reorder phases, adjust scope, or split/merge phases.
|
|
69
70
|
|
|
@@ -109,7 +110,7 @@ Present a brief scaffold summary to the user before proceeding to feature implem
|
|
|
109
110
|
b. **Follow the practices** — Adhere to coding standards, testing philosophy, pipeline structure, and conventions from `gspec/practices.md`
|
|
110
111
|
c. **Follow the style** — Apply the design system, tokens, and icon library from `gspec/style.md`. The style is the single authority for icon library choices. Component libraries (e.g., shadcn/ui) are defined in `gspec/stack.md`.
|
|
111
112
|
d. **Satisfy the requirements** — Trace each piece of code back to a functional requirement in the feature PRD (if available) or to the user's stated goals and the approved implementation plan
|
|
112
|
-
3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.
|
|
113
|
+
3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.11.0\n---` at the top.
|
|
113
114
|
4. **Run tests** — Execute the tests defined for this phase (and any existing tests to catch regressions). Fix any failures before proceeding.
|
|
114
115
|
6. **Surface new gaps** — If implementation reveals new ambiguities, pause and consult the user rather than making silent assumptions
|
|
115
116
|
7. **Pause and report** — After completing the phase and confirming tests pass, present a phase completion summary to the user:
|
|
@@ -129,8 +130,8 @@ After implementation:
|
|
|
129
130
|
1. **Walk through each functional requirement** from the feature PRD (if available) or the approved implementation plan and confirm it's satisfied
|
|
130
131
|
2. **Review against acceptance criteria** — For each capability in the feature PRDs, check that every acceptance criterion listed under it is satisfied. These sub-listed conditions are the definition of "done" for each capability. If any criterion is not met, the capability should not be marked `[x]`.
|
|
131
132
|
3. **Check the Definition of Done** from `gspec/practices.md`
|
|
132
|
-
4. **
|
|
133
|
-
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were
|
|
133
|
+
4. **Verify no unapproved deferrals** — Compare the final implementation against the approved plan. If any capability that was assigned to a phase was not implemented, **do not silently leave it unchecked**. Flag it to the user, explain why it wasn't completed, and get explicit approval before marking it as deferred. Only capabilities the user approved for deferral during planning (or explicitly approves now) may remain unchecked.
|
|
134
|
+
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were approved for deferral by the user. Present a final status summary:
|
|
134
135
|
|
|
135
136
|
> **Implementation Summary:**
|
|
136
137
|
> - Feature X: 7/7 capabilities implemented (complete)
|
|
@@ -149,6 +150,7 @@ When you encounter something the specs don't fully cover during implementation:
|
|
|
149
150
|
- **If the ambiguity is significant** (e.g., unclear user flow, missing data model, conflicting requirements), pause and consult the user rather than making silent assumptions
|
|
150
151
|
- **Never silently implement unspecified behavior** that contradicts or significantly extends the original spec — ask first
|
|
151
152
|
- **Never override explicit spec decisions** with your own preferences
|
|
153
|
+
- **Never skip or descope a PRD capability without user approval** — ambiguity in *how* to implement something is not grounds for dropping it. If a capability seems too complex, unclear, or problematic, raise it with the user rather than omitting it
|
|
152
154
|
|
|
153
155
|
---
|
|
154
156
|
|
|
@@ -178,7 +180,7 @@ If the user specifies a feature, focus on that feature's **unchecked capabilitie
|
|
|
178
180
|
|
|
179
181
|
### When the user provides a prompt alongside existing features:
|
|
180
182
|
|
|
181
|
-
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver.
|
|
183
|
+
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver. However, if the user's prompt narrows scope such that some unchecked PRD capabilities will not be implemented this run, explicitly list those excluded capabilities in the plan under "Out of Scope for This Run" so the user can see what is being deferred and why.
|
|
182
184
|
|
|
183
185
|
---
|
|
184
186
|
|
|
@@ -5,7 +5,7 @@ description: Migrate existing gspec files to the current format when upgrading t
|
|
|
5
5
|
|
|
6
6
|
You are a Technical Documentation Migration Specialist.
|
|
7
7
|
|
|
8
|
-
Your task is to update existing gspec specification documents to match the current gspec format (version 1.
|
|
8
|
+
Your task is to update existing gspec specification documents to match the current gspec format (version 1.11.0). You preserve all substantive content while ensuring documents follow the latest structural conventions.
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
@@ -21,14 +21,14 @@ Scan the `gspec/` directory for all Markdown files:
|
|
|
21
21
|
For each file, check the YAML frontmatter at the top of the file:
|
|
22
22
|
- If the file starts with `---` followed by YAML content and another `---`, read the `gspec-version` field
|
|
23
23
|
- If no frontmatter exists, the file predates version tracking
|
|
24
|
-
- If `gspec-version` matches `1.
|
|
24
|
+
- If `gspec-version` matches `1.11.0`, the file is current — skip it
|
|
25
25
|
|
|
26
26
|
Present an inventory to the user:
|
|
27
27
|
|
|
28
28
|
> **gspec File Inventory:**
|
|
29
29
|
> - `gspec/profile.md` — no version (needs migration)
|
|
30
30
|
> - `gspec/stack.md` — version 1.0.3 (needs migration)
|
|
31
|
-
> - `gspec/style.md` — version 1.
|
|
31
|
+
> - `gspec/style.md` — version 1.11.0 (current, skipping)
|
|
32
32
|
> - `gspec/features/user-auth.md` — no version (needs migration)
|
|
33
33
|
|
|
34
34
|
Ask the user to confirm which files to migrate, or confirm all.
|
|
@@ -63,7 +63,7 @@ For each file to migrate:
|
|
|
63
63
|
5. **Add or update the frontmatter** — Ensure the file starts with:
|
|
64
64
|
```
|
|
65
65
|
---
|
|
66
|
-
gspec-version: 1.
|
|
66
|
+
gspec-version: 1.11.0
|
|
67
67
|
---
|
|
68
68
|
```
|
|
69
69
|
6. **Present the proposed changes** to the user before writing. Show what sections are being reorganized, what is being added, and confirm no content is being lost.
|
|
@@ -77,7 +77,7 @@ After migrating all files:
|
|
|
77
77
|
3. **Present a completion summary**:
|
|
78
78
|
|
|
79
79
|
> **Migration Complete:**
|
|
80
|
-
> - 4 files migrated to version 1.
|
|
80
|
+
> - 4 files migrated to version 1.11.0
|
|
81
81
|
> - 2 files were already current (skipped)
|
|
82
82
|
> - Content preserved in all files
|
|
83
83
|
> - Sections reorganized: [list any structural changes]
|
|
@@ -162,7 +162,7 @@ After writing `gspec/research.md`, ask the user:
|
|
|
162
162
|
- Assumptions & Risks (assumptions, open questions, key risks and mitigations)
|
|
163
163
|
- Success Metrics
|
|
164
164
|
- Implementation Context (standard portability note)
|
|
165
|
-
- Begin the file with YAML frontmatter: `---\ngspec-version: 1.
|
|
165
|
+
- Begin the file with YAML frontmatter: `---\ngspec-version: 1.11.0\n---`
|
|
166
166
|
2. **Name the file** descriptively based on the feature (e.g., `gspec/features/csv-export.md`, `gspec/features/onboarding-wizard.md`)
|
|
167
167
|
3. **Keep the PRD portable** — use generic role descriptions (not project-specific persona names), define success metrics in terms of the feature's own outcomes (not project-level KPIs), and describe UX behavior generically (not tied to a specific design system). The PRD should be reusable across projects.
|
|
168
168
|
4. **Keep the PRD product-focused** — describe *what* and *why*, not *how*. Implementation details belong in the code, not the PRD.
|
|
@@ -181,7 +181,7 @@ After writing `gspec/research.md`, ask the user:
|
|
|
181
181
|
- Begin `gspec/research.md` with YAML frontmatter containing the gspec version:
|
|
182
182
|
```
|
|
183
183
|
---
|
|
184
|
-
gspec-version: 1.
|
|
184
|
+
gspec-version: 1.11.0
|
|
185
185
|
---
|
|
186
186
|
```
|
|
187
187
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -198,7 +198,7 @@ The `gspec/research.md` file must follow this structure:
|
|
|
198
198
|
|
|
199
199
|
```markdown
|
|
200
200
|
---
|
|
201
|
-
gspec-version: 1.
|
|
201
|
+
gspec-version: 1.11.0
|
|
202
202
|
---
|
|
203
203
|
|
|
204
204
|
# Competitive Research
|
|
@@ -45,7 +45,7 @@ All of these provide essential context. If any are missing, note the gap and mak
|
|
|
45
45
|
- Begin the file with YAML frontmatter containing the gspec version:
|
|
46
46
|
```
|
|
47
47
|
---
|
|
48
|
-
gspec-version: 1.
|
|
48
|
+
gspec-version: 1.11.0
|
|
49
49
|
---
|
|
50
50
|
```
|
|
51
51
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -85,7 +85,7 @@ Feature PRDs are designed to be **portable across projects**. A feature spec wri
|
|
|
85
85
|
- Begin each file with YAML frontmatter containing the gspec version:
|
|
86
86
|
```
|
|
87
87
|
---
|
|
88
|
-
gspec-version: 1.
|
|
88
|
+
gspec-version: 1.11.0
|
|
89
89
|
---
|
|
90
90
|
```
|
|
91
91
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -62,8 +62,9 @@ Present this summary to the user so they understand the starting point. If **all
|
|
|
62
62
|
- Identify files to create or modify
|
|
63
63
|
- Note dependencies on prior phases
|
|
64
64
|
- Include an estimated scope (small/medium/large)
|
|
65
|
-
3. **
|
|
66
|
-
4. **
|
|
65
|
+
3. **Account for every unchecked capability** — The plan must explicitly place every unchecked capability from in-scope feature PRDs into a phase **or** list it under a "Proposed to Defer" section with a reason. No unchecked capability may be silently omitted from the plan. The user reviews and approves what gets deferred at plan approval time.
|
|
66
|
+
4. **Define test expectations per phase** — For each phase, specify what tests will be run to verify correctness before moving on (unit tests, integration tests, build verification, etc.)
|
|
67
|
+
5. **Present the plan** — Show the user the full phased plan with clear phase boundaries and ask for approval
|
|
67
68
|
|
|
68
69
|
**Wait for user approval before proceeding to Phase 3.** The user may reorder phases, adjust scope, or split/merge phases.
|
|
69
70
|
|
|
@@ -109,7 +110,7 @@ Present a brief scaffold summary to the user before proceeding to feature implem
|
|
|
109
110
|
b. **Follow the practices** — Adhere to coding standards, testing philosophy, pipeline structure, and conventions from `gspec/practices.md`
|
|
110
111
|
c. **Follow the style** — Apply the design system, tokens, and icon library from `gspec/style.md`. The style is the single authority for icon library choices. Component libraries (e.g., shadcn/ui) are defined in `gspec/stack.md`.
|
|
111
112
|
d. **Satisfy the requirements** — Trace each piece of code back to a functional requirement in the feature PRD (if available) or to the user's stated goals and the approved implementation plan
|
|
112
|
-
3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.
|
|
113
|
+
3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.11.0\n---` at the top.
|
|
113
114
|
4. **Run tests** — Execute the tests defined for this phase (and any existing tests to catch regressions). Fix any failures before proceeding.
|
|
114
115
|
6. **Surface new gaps** — If implementation reveals new ambiguities, pause and consult the user rather than making silent assumptions
|
|
115
116
|
7. **Pause and report** — After completing the phase and confirming tests pass, present a phase completion summary to the user:
|
|
@@ -129,8 +130,8 @@ After implementation:
|
|
|
129
130
|
1. **Walk through each functional requirement** from the feature PRD (if available) or the approved implementation plan and confirm it's satisfied
|
|
130
131
|
2. **Review against acceptance criteria** — For each capability in the feature PRDs, check that every acceptance criterion listed under it is satisfied. These sub-listed conditions are the definition of "done" for each capability. If any criterion is not met, the capability should not be marked `[x]`.
|
|
131
132
|
3. **Check the Definition of Done** from `gspec/practices.md`
|
|
132
|
-
4. **
|
|
133
|
-
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were
|
|
133
|
+
4. **Verify no unapproved deferrals** — Compare the final implementation against the approved plan. If any capability that was assigned to a phase was not implemented, **do not silently leave it unchecked**. Flag it to the user, explain why it wasn't completed, and get explicit approval before marking it as deferred. Only capabilities the user approved for deferral during planning (or explicitly approves now) may remain unchecked.
|
|
134
|
+
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were approved for deferral by the user. Present a final status summary:
|
|
134
135
|
|
|
135
136
|
> **Implementation Summary:**
|
|
136
137
|
> - Feature X: 7/7 capabilities implemented (complete)
|
|
@@ -149,6 +150,7 @@ When you encounter something the specs don't fully cover during implementation:
|
|
|
149
150
|
- **If the ambiguity is significant** (e.g., unclear user flow, missing data model, conflicting requirements), pause and consult the user rather than making silent assumptions
|
|
150
151
|
- **Never silently implement unspecified behavior** that contradicts or significantly extends the original spec — ask first
|
|
151
152
|
- **Never override explicit spec decisions** with your own preferences
|
|
153
|
+
- **Never skip or descope a PRD capability without user approval** — ambiguity in *how* to implement something is not grounds for dropping it. If a capability seems too complex, unclear, or problematic, raise it with the user rather than omitting it
|
|
152
154
|
|
|
153
155
|
---
|
|
154
156
|
|
|
@@ -178,7 +180,7 @@ If the user specifies a feature, focus on that feature's **unchecked capabilitie
|
|
|
178
180
|
|
|
179
181
|
### When the user provides a prompt alongside existing features:
|
|
180
182
|
|
|
181
|
-
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver.
|
|
183
|
+
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver. However, if the user's prompt narrows scope such that some unchecked PRD capabilities will not be implemented this run, explicitly list those excluded capabilities in the plan under "Out of Scope for This Run" so the user can see what is being deferred and why.
|
|
182
184
|
|
|
183
185
|
---
|
|
184
186
|
|
|
@@ -5,7 +5,7 @@ description: Migrate existing gspec files to the current format when upgrading t
|
|
|
5
5
|
|
|
6
6
|
You are a Technical Documentation Migration Specialist.
|
|
7
7
|
|
|
8
|
-
Your task is to update existing gspec specification documents to match the current gspec format (version 1.
|
|
8
|
+
Your task is to update existing gspec specification documents to match the current gspec format (version 1.11.0). You preserve all substantive content while ensuring documents follow the latest structural conventions.
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
@@ -21,14 +21,14 @@ Scan the `gspec/` directory for all Markdown files:
|
|
|
21
21
|
For each file, check the YAML frontmatter at the top of the file:
|
|
22
22
|
- If the file starts with `---` followed by YAML content and another `---`, read the `gspec-version` field
|
|
23
23
|
- If no frontmatter exists, the file predates version tracking
|
|
24
|
-
- If `gspec-version` matches `1.
|
|
24
|
+
- If `gspec-version` matches `1.11.0`, the file is current — skip it
|
|
25
25
|
|
|
26
26
|
Present an inventory to the user:
|
|
27
27
|
|
|
28
28
|
> **gspec File Inventory:**
|
|
29
29
|
> - `gspec/profile.md` — no version (needs migration)
|
|
30
30
|
> - `gspec/stack.md` — version 1.0.3 (needs migration)
|
|
31
|
-
> - `gspec/style.md` — version 1.
|
|
31
|
+
> - `gspec/style.md` — version 1.11.0 (current, skipping)
|
|
32
32
|
> - `gspec/features/user-auth.md` — no version (needs migration)
|
|
33
33
|
|
|
34
34
|
Ask the user to confirm which files to migrate, or confirm all.
|
|
@@ -63,7 +63,7 @@ For each file to migrate:
|
|
|
63
63
|
5. **Add or update the frontmatter** — Ensure the file starts with:
|
|
64
64
|
```
|
|
65
65
|
---
|
|
66
|
-
gspec-version: 1.
|
|
66
|
+
gspec-version: 1.11.0
|
|
67
67
|
---
|
|
68
68
|
```
|
|
69
69
|
6. **Present the proposed changes** to the user before writing. Show what sections are being reorganized, what is being added, and confirm no content is being lost.
|
|
@@ -77,7 +77,7 @@ After migrating all files:
|
|
|
77
77
|
3. **Present a completion summary**:
|
|
78
78
|
|
|
79
79
|
> **Migration Complete:**
|
|
80
|
-
> - 4 files migrated to version 1.
|
|
80
|
+
> - 4 files migrated to version 1.11.0
|
|
81
81
|
> - 2 files were already current (skipped)
|
|
82
82
|
> - Content preserved in all files
|
|
83
83
|
> - Sections reorganized: [list any structural changes]
|
|
@@ -162,7 +162,7 @@ After writing `gspec/research.md`, ask the user:
|
|
|
162
162
|
- Assumptions & Risks (assumptions, open questions, key risks and mitigations)
|
|
163
163
|
- Success Metrics
|
|
164
164
|
- Implementation Context (standard portability note)
|
|
165
|
-
- Begin the file with YAML frontmatter: `---\ngspec-version: 1.
|
|
165
|
+
- Begin the file with YAML frontmatter: `---\ngspec-version: 1.11.0\n---`
|
|
166
166
|
2. **Name the file** descriptively based on the feature (e.g., `gspec/features/csv-export.md`, `gspec/features/onboarding-wizard.md`)
|
|
167
167
|
3. **Keep the PRD portable** — use generic role descriptions (not project-specific persona names), define success metrics in terms of the feature's own outcomes (not project-level KPIs), and describe UX behavior generically (not tied to a specific design system). The PRD should be reusable across projects.
|
|
168
168
|
4. **Keep the PRD product-focused** — describe *what* and *why*, not *how*. Implementation details belong in the code, not the PRD.
|
|
@@ -181,7 +181,7 @@ After writing `gspec/research.md`, ask the user:
|
|
|
181
181
|
- Begin `gspec/research.md` with YAML frontmatter containing the gspec version:
|
|
182
182
|
```
|
|
183
183
|
---
|
|
184
|
-
gspec-version: 1.
|
|
184
|
+
gspec-version: 1.11.0
|
|
185
185
|
---
|
|
186
186
|
```
|
|
187
187
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -198,7 +198,7 @@ The `gspec/research.md` file must follow this structure:
|
|
|
198
198
|
|
|
199
199
|
```markdown
|
|
200
200
|
---
|
|
201
|
-
gspec-version: 1.
|
|
201
|
+
gspec-version: 1.11.0
|
|
202
202
|
---
|
|
203
203
|
|
|
204
204
|
# Competitive Research
|
|
@@ -44,7 +44,7 @@ All of these provide essential context. If any are missing, note the gap and mak
|
|
|
44
44
|
- Begin the file with YAML frontmatter containing the gspec version:
|
|
45
45
|
```
|
|
46
46
|
---
|
|
47
|
-
gspec-version: 1.
|
|
47
|
+
gspec-version: 1.11.0
|
|
48
48
|
---
|
|
49
49
|
```
|
|
50
50
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -84,7 +84,7 @@ Feature PRDs are designed to be **portable across projects**. A feature spec wri
|
|
|
84
84
|
- Begin each file with YAML frontmatter containing the gspec version:
|
|
85
85
|
```
|
|
86
86
|
---
|
|
87
|
-
gspec-version: 1.
|
|
87
|
+
gspec-version: 1.11.0
|
|
88
88
|
---
|
|
89
89
|
```
|
|
90
90
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -61,8 +61,9 @@ Present this summary to the user so they understand the starting point. If **all
|
|
|
61
61
|
- Identify files to create or modify
|
|
62
62
|
- Note dependencies on prior phases
|
|
63
63
|
- Include an estimated scope (small/medium/large)
|
|
64
|
-
3. **
|
|
65
|
-
4. **
|
|
64
|
+
3. **Account for every unchecked capability** — The plan must explicitly place every unchecked capability from in-scope feature PRDs into a phase **or** list it under a "Proposed to Defer" section with a reason. No unchecked capability may be silently omitted from the plan. The user reviews and approves what gets deferred at plan approval time.
|
|
65
|
+
4. **Define test expectations per phase** — For each phase, specify what tests will be run to verify correctness before moving on (unit tests, integration tests, build verification, etc.)
|
|
66
|
+
5. **Present the plan** — Show the user the full phased plan with clear phase boundaries and ask for approval
|
|
66
67
|
|
|
67
68
|
**Wait for user approval before proceeding to Phase 3.** The user may reorder phases, adjust scope, or split/merge phases.
|
|
68
69
|
|
|
@@ -108,7 +109,7 @@ Present a brief scaffold summary to the user before proceeding to feature implem
|
|
|
108
109
|
b. **Follow the practices** — Adhere to coding standards, testing philosophy, pipeline structure, and conventions from `gspec/practices.md`
|
|
109
110
|
c. **Follow the style** — Apply the design system, tokens, and icon library from `gspec/style.md`. The style is the single authority for icon library choices. Component libraries (e.g., shadcn/ui) are defined in `gspec/stack.md`.
|
|
110
111
|
d. **Satisfy the requirements** — Trace each piece of code back to a functional requirement in the feature PRD (if available) or to the user's stated goals and the approved implementation plan
|
|
111
|
-
3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.
|
|
112
|
+
3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.11.0\n---` at the top.
|
|
112
113
|
4. **Run tests** — Execute the tests defined for this phase (and any existing tests to catch regressions). Fix any failures before proceeding.
|
|
113
114
|
6. **Surface new gaps** — If implementation reveals new ambiguities, pause and consult the user rather than making silent assumptions
|
|
114
115
|
7. **Pause and report** — After completing the phase and confirming tests pass, present a phase completion summary to the user:
|
|
@@ -128,8 +129,8 @@ After implementation:
|
|
|
128
129
|
1. **Walk through each functional requirement** from the feature PRD (if available) or the approved implementation plan and confirm it's satisfied
|
|
129
130
|
2. **Review against acceptance criteria** — For each capability in the feature PRDs, check that every acceptance criterion listed under it is satisfied. These sub-listed conditions are the definition of "done" for each capability. If any criterion is not met, the capability should not be marked `[x]`.
|
|
130
131
|
3. **Check the Definition of Done** from `gspec/practices.md`
|
|
131
|
-
4. **
|
|
132
|
-
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were
|
|
132
|
+
4. **Verify no unapproved deferrals** — Compare the final implementation against the approved plan. If any capability that was assigned to a phase was not implemented, **do not silently leave it unchecked**. Flag it to the user, explain why it wasn't completed, and get explicit approval before marking it as deferred. Only capabilities the user approved for deferral during planning (or explicitly approves now) may remain unchecked.
|
|
133
|
+
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were approved for deferral by the user. Present a final status summary:
|
|
133
134
|
|
|
134
135
|
> **Implementation Summary:**
|
|
135
136
|
> - Feature X: 7/7 capabilities implemented (complete)
|
|
@@ -148,6 +149,7 @@ When you encounter something the specs don't fully cover during implementation:
|
|
|
148
149
|
- **If the ambiguity is significant** (e.g., unclear user flow, missing data model, conflicting requirements), pause and consult the user rather than making silent assumptions
|
|
149
150
|
- **Never silently implement unspecified behavior** that contradicts or significantly extends the original spec — ask first
|
|
150
151
|
- **Never override explicit spec decisions** with your own preferences
|
|
152
|
+
- **Never skip or descope a PRD capability without user approval** — ambiguity in *how* to implement something is not grounds for dropping it. If a capability seems too complex, unclear, or problematic, raise it with the user rather than omitting it
|
|
151
153
|
|
|
152
154
|
---
|
|
153
155
|
|
|
@@ -177,7 +179,7 @@ If the user specifies a feature, focus on that feature's **unchecked capabilitie
|
|
|
177
179
|
|
|
178
180
|
### When the user provides a prompt alongside existing features:
|
|
179
181
|
|
|
180
|
-
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver.
|
|
182
|
+
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver. However, if the user's prompt narrows scope such that some unchecked PRD capabilities will not be implemented this run, explicitly list those excluded capabilities in the plan under "Out of Scope for This Run" so the user can see what is being deferred and why.
|
|
181
183
|
|
|
182
184
|
---
|
|
183
185
|
|
|
@@ -4,7 +4,7 @@ description: Migrate existing gspec files to the current format when upgrading t
|
|
|
4
4
|
|
|
5
5
|
You are a Technical Documentation Migration Specialist.
|
|
6
6
|
|
|
7
|
-
Your task is to update existing gspec specification documents to match the current gspec format (version 1.
|
|
7
|
+
Your task is to update existing gspec specification documents to match the current gspec format (version 1.11.0). You preserve all substantive content while ensuring documents follow the latest structural conventions.
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -20,14 +20,14 @@ Scan the `gspec/` directory for all Markdown files:
|
|
|
20
20
|
For each file, check the YAML frontmatter at the top of the file:
|
|
21
21
|
- If the file starts with `---` followed by YAML content and another `---`, read the `gspec-version` field
|
|
22
22
|
- If no frontmatter exists, the file predates version tracking
|
|
23
|
-
- If `gspec-version` matches `1.
|
|
23
|
+
- If `gspec-version` matches `1.11.0`, the file is current — skip it
|
|
24
24
|
|
|
25
25
|
Present an inventory to the user:
|
|
26
26
|
|
|
27
27
|
> **gspec File Inventory:**
|
|
28
28
|
> - `gspec/profile.md` — no version (needs migration)
|
|
29
29
|
> - `gspec/stack.md` — version 1.0.3 (needs migration)
|
|
30
|
-
> - `gspec/style.md` — version 1.
|
|
30
|
+
> - `gspec/style.md` — version 1.11.0 (current, skipping)
|
|
31
31
|
> - `gspec/features/user-auth.md` — no version (needs migration)
|
|
32
32
|
|
|
33
33
|
Ask the user to confirm which files to migrate, or confirm all.
|
|
@@ -62,7 +62,7 @@ For each file to migrate:
|
|
|
62
62
|
5. **Add or update the frontmatter** — Ensure the file starts with:
|
|
63
63
|
```
|
|
64
64
|
---
|
|
65
|
-
gspec-version: 1.
|
|
65
|
+
gspec-version: 1.11.0
|
|
66
66
|
---
|
|
67
67
|
```
|
|
68
68
|
6. **Present the proposed changes** to the user before writing. Show what sections are being reorganized, what is being added, and confirm no content is being lost.
|
|
@@ -76,7 +76,7 @@ After migrating all files:
|
|
|
76
76
|
3. **Present a completion summary**:
|
|
77
77
|
|
|
78
78
|
> **Migration Complete:**
|
|
79
|
-
> - 4 files migrated to version 1.
|
|
79
|
+
> - 4 files migrated to version 1.11.0
|
|
80
80
|
> - 2 files were already current (skipped)
|
|
81
81
|
> - Content preserved in all files
|
|
82
82
|
> - Sections reorganized: [list any structural changes]
|
|
@@ -161,7 +161,7 @@ After writing `gspec/research.md`, ask the user:
|
|
|
161
161
|
- Assumptions & Risks (assumptions, open questions, key risks and mitigations)
|
|
162
162
|
- Success Metrics
|
|
163
163
|
- Implementation Context (standard portability note)
|
|
164
|
-
- Begin the file with YAML frontmatter: `---\ngspec-version: 1.
|
|
164
|
+
- Begin the file with YAML frontmatter: `---\ngspec-version: 1.11.0\n---`
|
|
165
165
|
2. **Name the file** descriptively based on the feature (e.g., `gspec/features/csv-export.md`, `gspec/features/onboarding-wizard.md`)
|
|
166
166
|
3. **Keep the PRD portable** — use generic role descriptions (not project-specific persona names), define success metrics in terms of the feature's own outcomes (not project-level KPIs), and describe UX behavior generically (not tied to a specific design system). The PRD should be reusable across projects.
|
|
167
167
|
4. **Keep the PRD product-focused** — describe *what* and *why*, not *how*. Implementation details belong in the code, not the PRD.
|
|
@@ -180,7 +180,7 @@ After writing `gspec/research.md`, ask the user:
|
|
|
180
180
|
- Begin `gspec/research.md` with YAML frontmatter containing the gspec version:
|
|
181
181
|
```
|
|
182
182
|
---
|
|
183
|
-
gspec-version: 1.
|
|
183
|
+
gspec-version: 1.11.0
|
|
184
184
|
---
|
|
185
185
|
```
|
|
186
186
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -197,7 +197,7 @@ The `gspec/research.md` file must follow this structure:
|
|
|
197
197
|
|
|
198
198
|
```markdown
|
|
199
199
|
---
|
|
200
|
-
gspec-version: 1.
|
|
200
|
+
gspec-version: 1.11.0
|
|
201
201
|
---
|
|
202
202
|
|
|
203
203
|
# Competitive Research
|
|
@@ -45,7 +45,7 @@ All of these provide essential context. If any are missing, note the gap and mak
|
|
|
45
45
|
- Begin the file with YAML frontmatter containing the gspec version:
|
|
46
46
|
```
|
|
47
47
|
---
|
|
48
|
-
gspec-version: 1.
|
|
48
|
+
gspec-version: 1.11.0
|
|
49
49
|
---
|
|
50
50
|
```
|
|
51
51
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -85,7 +85,7 @@ Feature PRDs are designed to be **portable across projects**. A feature spec wri
|
|
|
85
85
|
- Begin each file with YAML frontmatter containing the gspec version:
|
|
86
86
|
```
|
|
87
87
|
---
|
|
88
|
-
gspec-version: 1.
|
|
88
|
+
gspec-version: 1.11.0
|
|
89
89
|
---
|
|
90
90
|
```
|
|
91
91
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -62,8 +62,9 @@ Present this summary to the user so they understand the starting point. If **all
|
|
|
62
62
|
- Identify files to create or modify
|
|
63
63
|
- Note dependencies on prior phases
|
|
64
64
|
- Include an estimated scope (small/medium/large)
|
|
65
|
-
3. **
|
|
66
|
-
4. **
|
|
65
|
+
3. **Account for every unchecked capability** — The plan must explicitly place every unchecked capability from in-scope feature PRDs into a phase **or** list it under a "Proposed to Defer" section with a reason. No unchecked capability may be silently omitted from the plan. The user reviews and approves what gets deferred at plan approval time.
|
|
66
|
+
4. **Define test expectations per phase** — For each phase, specify what tests will be run to verify correctness before moving on (unit tests, integration tests, build verification, etc.)
|
|
67
|
+
5. **Present the plan** — Show the user the full phased plan with clear phase boundaries and ask for approval
|
|
67
68
|
|
|
68
69
|
**Wait for user approval before proceeding to Phase 3.** The user may reorder phases, adjust scope, or split/merge phases.
|
|
69
70
|
|
|
@@ -109,7 +110,7 @@ Present a brief scaffold summary to the user before proceeding to feature implem
|
|
|
109
110
|
b. **Follow the practices** — Adhere to coding standards, testing philosophy, pipeline structure, and conventions from `gspec/practices.md`
|
|
110
111
|
c. **Follow the style** — Apply the design system, tokens, and icon library from `gspec/style.md`. The style is the single authority for icon library choices. Component libraries (e.g., shadcn/ui) are defined in `gspec/stack.md`.
|
|
111
112
|
d. **Satisfy the requirements** — Trace each piece of code back to a functional requirement in the feature PRD (if available) or to the user's stated goals and the approved implementation plan
|
|
112
|
-
3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.
|
|
113
|
+
3. **Mark capabilities as implemented** — After successfully implementing each capability, immediately update the feature PRD by changing its checkbox from `- [ ]` to `- [x]`. Do this incrementally as each capability is completed, not in a batch at the end. If a capability line did not have a checkbox prefix, add one as `- [x]`. This ensures that if the session is interrupted, progress is not lost. When updating gspec files, preserve existing `gspec-version` YAML frontmatter. If a file lacks frontmatter, add `---\ngspec-version: 1.11.0\n---` at the top.
|
|
113
114
|
4. **Run tests** — Execute the tests defined for this phase (and any existing tests to catch regressions). Fix any failures before proceeding.
|
|
114
115
|
6. **Surface new gaps** — If implementation reveals new ambiguities, pause and consult the user rather than making silent assumptions
|
|
115
116
|
7. **Pause and report** — After completing the phase and confirming tests pass, present a phase completion summary to the user:
|
|
@@ -129,8 +130,8 @@ After implementation:
|
|
|
129
130
|
1. **Walk through each functional requirement** from the feature PRD (if available) or the approved implementation plan and confirm it's satisfied
|
|
130
131
|
2. **Review against acceptance criteria** — For each capability in the feature PRDs, check that every acceptance criterion listed under it is satisfied. These sub-listed conditions are the definition of "done" for each capability. If any criterion is not met, the capability should not be marked `[x]`.
|
|
131
132
|
3. **Check the Definition of Done** from `gspec/practices.md`
|
|
132
|
-
4. **
|
|
133
|
-
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were
|
|
133
|
+
4. **Verify no unapproved deferrals** — Compare the final implementation against the approved plan. If any capability that was assigned to a phase was not implemented, **do not silently leave it unchecked**. Flag it to the user, explain why it wasn't completed, and get explicit approval before marking it as deferred. Only capabilities the user approved for deferral during planning (or explicitly approves now) may remain unchecked.
|
|
134
|
+
5. **Verify checkbox accuracy** — Confirm that every capability marked `[x]` in the feature PRDs is genuinely implemented and working. Confirm that capabilities left as `[ ]` were approved for deferral by the user. Present a final status summary:
|
|
134
135
|
|
|
135
136
|
> **Implementation Summary:**
|
|
136
137
|
> - Feature X: 7/7 capabilities implemented (complete)
|
|
@@ -149,6 +150,7 @@ When you encounter something the specs don't fully cover during implementation:
|
|
|
149
150
|
- **If the ambiguity is significant** (e.g., unclear user flow, missing data model, conflicting requirements), pause and consult the user rather than making silent assumptions
|
|
150
151
|
- **Never silently implement unspecified behavior** that contradicts or significantly extends the original spec — ask first
|
|
151
152
|
- **Never override explicit spec decisions** with your own preferences
|
|
153
|
+
- **Never skip or descope a PRD capability without user approval** — ambiguity in *how* to implement something is not grounds for dropping it. If a capability seems too complex, unclear, or problematic, raise it with the user rather than omitting it
|
|
152
154
|
|
|
153
155
|
---
|
|
154
156
|
|
|
@@ -178,7 +180,7 @@ If the user specifies a feature, focus on that feature's **unchecked capabilitie
|
|
|
178
180
|
|
|
179
181
|
### When the user provides a prompt alongside existing features:
|
|
180
182
|
|
|
181
|
-
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver.
|
|
183
|
+
The user's prompt takes priority for scoping. Use it to determine focus, and reference existing feature PRDs as supporting context rather than the sole driver. However, if the user's prompt narrows scope such that some unchecked PRD capabilities will not be implemented this run, explicitly list those excluded capabilities in the plan under "Out of Scope for This Run" so the user can see what is being deferred and why.
|
|
182
184
|
|
|
183
185
|
---
|
|
184
186
|
|
|
@@ -5,7 +5,7 @@ description: Migrate existing gspec files to the current format when upgrading t
|
|
|
5
5
|
|
|
6
6
|
You are a Technical Documentation Migration Specialist.
|
|
7
7
|
|
|
8
|
-
Your task is to update existing gspec specification documents to match the current gspec format (version 1.
|
|
8
|
+
Your task is to update existing gspec specification documents to match the current gspec format (version 1.11.0). You preserve all substantive content while ensuring documents follow the latest structural conventions.
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
@@ -21,14 +21,14 @@ Scan the `gspec/` directory for all Markdown files:
|
|
|
21
21
|
For each file, check the YAML frontmatter at the top of the file:
|
|
22
22
|
- If the file starts with `---` followed by YAML content and another `---`, read the `gspec-version` field
|
|
23
23
|
- If no frontmatter exists, the file predates version tracking
|
|
24
|
-
- If `gspec-version` matches `1.
|
|
24
|
+
- If `gspec-version` matches `1.11.0`, the file is current — skip it
|
|
25
25
|
|
|
26
26
|
Present an inventory to the user:
|
|
27
27
|
|
|
28
28
|
> **gspec File Inventory:**
|
|
29
29
|
> - `gspec/profile.md` — no version (needs migration)
|
|
30
30
|
> - `gspec/stack.md` — version 1.0.3 (needs migration)
|
|
31
|
-
> - `gspec/style.md` — version 1.
|
|
31
|
+
> - `gspec/style.md` — version 1.11.0 (current, skipping)
|
|
32
32
|
> - `gspec/features/user-auth.md` — no version (needs migration)
|
|
33
33
|
|
|
34
34
|
Ask the user to confirm which files to migrate, or confirm all.
|
|
@@ -63,7 +63,7 @@ For each file to migrate:
|
|
|
63
63
|
5. **Add or update the frontmatter** — Ensure the file starts with:
|
|
64
64
|
```
|
|
65
65
|
---
|
|
66
|
-
gspec-version: 1.
|
|
66
|
+
gspec-version: 1.11.0
|
|
67
67
|
---
|
|
68
68
|
```
|
|
69
69
|
6. **Present the proposed changes** to the user before writing. Show what sections are being reorganized, what is being added, and confirm no content is being lost.
|
|
@@ -77,7 +77,7 @@ After migrating all files:
|
|
|
77
77
|
3. **Present a completion summary**:
|
|
78
78
|
|
|
79
79
|
> **Migration Complete:**
|
|
80
|
-
> - 4 files migrated to version 1.
|
|
80
|
+
> - 4 files migrated to version 1.11.0
|
|
81
81
|
> - 2 files were already current (skipped)
|
|
82
82
|
> - Content preserved in all files
|
|
83
83
|
> - Sections reorganized: [list any structural changes]
|
|
@@ -162,7 +162,7 @@ After writing `gspec/research.md`, ask the user:
|
|
|
162
162
|
- Assumptions & Risks (assumptions, open questions, key risks and mitigations)
|
|
163
163
|
- Success Metrics
|
|
164
164
|
- Implementation Context (standard portability note)
|
|
165
|
-
- Begin the file with YAML frontmatter: `---\ngspec-version: 1.
|
|
165
|
+
- Begin the file with YAML frontmatter: `---\ngspec-version: 1.11.0\n---`
|
|
166
166
|
2. **Name the file** descriptively based on the feature (e.g., `gspec/features/csv-export.md`, `gspec/features/onboarding-wizard.md`)
|
|
167
167
|
3. **Keep the PRD portable** — use generic role descriptions (not project-specific persona names), define success metrics in terms of the feature's own outcomes (not project-level KPIs), and describe UX behavior generically (not tied to a specific design system). The PRD should be reusable across projects.
|
|
168
168
|
4. **Keep the PRD product-focused** — describe *what* and *why*, not *how*. Implementation details belong in the code, not the PRD.
|
|
@@ -181,7 +181,7 @@ After writing `gspec/research.md`, ask the user:
|
|
|
181
181
|
- Begin `gspec/research.md` with YAML frontmatter containing the gspec version:
|
|
182
182
|
```
|
|
183
183
|
---
|
|
184
|
-
gspec-version: 1.
|
|
184
|
+
gspec-version: 1.11.0
|
|
185
185
|
---
|
|
186
186
|
```
|
|
187
187
|
The frontmatter must be the very first content in the file, before the main heading.
|
|
@@ -198,7 +198,7 @@ The `gspec/research.md` file must follow this structure:
|
|
|
198
198
|
|
|
199
199
|
```markdown
|
|
200
200
|
---
|
|
201
|
-
gspec-version: 1.
|
|
201
|
+
gspec-version: 1.11.0
|
|
202
202
|
---
|
|
203
203
|
|
|
204
204
|
# Competitive Research
|