cfsa-antigravity 2.0.0 → 2.2.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/README.md +14 -0
- package/package.json +1 -1
- package/template/.agent/instructions/commands.md +8 -32
- package/template/.agent/instructions/example.md +21 -0
- package/template/.agent/instructions/patterns.md +3 -3
- package/template/.agent/instructions/tech-stack.md +71 -23
- package/template/.agent/instructions/workflow.md +12 -1
- package/template/.agent/rules/completion-checklist.md +6 -0
- package/template/.agent/rules/security-first.md +3 -3
- package/template/.agent/rules/vertical-slices.md +1 -1
- package/template/.agent/skill-library/MANIFEST.md +6 -0
- package/template/.agent/skill-library/stack/devops/git-advanced/SKILL.md +972 -0
- package/template/.agent/skill-library/stack/devops/git-workflow/SKILL.md +420 -0
- package/template/.agent/skills/api-versioning/SKILL.md +44 -298
- package/template/.agent/skills/api-versioning/references/typescript.md +157 -0
- package/template/.agent/skills/architecture-mapping/SKILL.md +13 -13
- package/template/.agent/skills/bootstrap-agents/SKILL.md +151 -152
- package/template/.agent/skills/clean-code/SKILL.md +64 -118
- package/template/.agent/skills/clean-code/references/typescript.md +126 -0
- package/template/.agent/skills/database-schema-design/SKILL.md +93 -317
- package/template/.agent/skills/database-schema-design/references/relational.md +228 -0
- package/template/.agent/skills/error-handling-patterns/SKILL.md +62 -557
- package/template/.agent/skills/error-handling-patterns/references/go.md +162 -0
- package/template/.agent/skills/error-handling-patterns/references/python.md +262 -0
- package/template/.agent/skills/error-handling-patterns/references/rust.md +112 -0
- package/template/.agent/skills/error-handling-patterns/references/typescript.md +178 -0
- package/template/.agent/skills/idea-extraction/SKILL.md +322 -224
- package/template/.agent/skills/logging-best-practices/SKILL.md +108 -767
- package/template/.agent/skills/logging-best-practices/references/go.md +49 -0
- package/template/.agent/skills/logging-best-practices/references/python.md +52 -0
- package/template/.agent/skills/logging-best-practices/references/typescript.md +215 -0
- package/template/.agent/skills/migration-management/SKILL.md +127 -311
- package/template/.agent/skills/migration-management/references/relational.md +214 -0
- package/template/.agent/skills/parallel-feature-development/SKILL.md +34 -43
- package/template/.agent/skills/pipeline-rubrics/references/be-rubric.md +1 -1
- package/template/.agent/skills/pipeline-rubrics/references/ia-rubric.md +2 -2
- package/template/.agent/skills/pipeline-rubrics/references/scoring.md +1 -1
- package/template/.agent/skills/pipeline-rubrics/references/vision-rubric.md +2 -1
- package/template/.agent/skills/prd-templates/SKILL.md +23 -6
- package/template/.agent/skills/prd-templates/references/be-spec-template.md +2 -2
- package/template/.agent/skills/prd-templates/references/decomposition-templates.md +2 -2
- package/template/.agent/skills/prd-templates/references/engineering-standards-template.md +2 -0
- package/template/.agent/skills/prd-templates/references/fe-spec-template.md +1 -1
- package/template/.agent/skills/prd-templates/references/fractal-cx-template.md +58 -0
- package/template/.agent/skills/prd-templates/references/fractal-feature-template.md +93 -0
- package/template/.agent/skills/prd-templates/references/fractal-node-index-template.md +55 -0
- package/template/.agent/skills/prd-templates/references/ideation-crosscut-template.md +26 -47
- package/template/.agent/skills/prd-templates/references/ideation-index-template.md +47 -31
- package/template/.agent/skills/prd-templates/references/operational-templates.md +1 -1
- package/template/.agent/skills/prd-templates/references/placeholder-workflow-mapping.md +50 -21
- package/template/.agent/skills/prd-templates/references/skill-loading-protocol.md +32 -0
- package/template/.agent/skills/prd-templates/references/slice-completion-gates.md +29 -0
- package/template/.agent/skills/prd-templates/references/spec-coverage-sweep.md +3 -3
- package/template/.agent/skills/prd-templates/references/tdd-testing-policy.md +39 -0
- package/template/.agent/skills/prd-templates/references/vision-template.md +8 -8
- package/template/.agent/skills/regex-patterns/SKILL.md +122 -540
- package/template/.agent/skills/regex-patterns/references/go.md +44 -0
- package/template/.agent/skills/regex-patterns/references/javascript.md +63 -0
- package/template/.agent/skills/regex-patterns/references/python.md +77 -0
- package/template/.agent/skills/regex-patterns/references/rust.md +43 -0
- package/template/.agent/skills/resolve-ambiguity/SKILL.md +1 -1
- package/template/.agent/skills/session-continuity/SKILL.md +11 -9
- package/template/.agent/skills/session-continuity/protocols/02-progress-generation.md +2 -2
- package/template/.agent/skills/session-continuity/protocols/04-pattern-extraction.md +1 -1
- package/template/.agent/skills/session-continuity/protocols/05-session-close.md +1 -1
- package/template/.agent/skills/session-continuity/protocols/09-parallel-claim.md +1 -1
- package/template/.agent/skills/session-continuity/protocols/10-placeholder-verification-gate.md +57 -78
- package/template/.agent/skills/session-continuity/protocols/11-parallel-synthesis.md +1 -1
- package/template/.agent/skills/spec-writing/SKILL.md +1 -1
- package/template/.agent/skills/tdd-workflow/SKILL.md +94 -317
- package/template/.agent/skills/tdd-workflow/references/typescript.md +231 -0
- package/template/.agent/skills/testing-strategist/SKILL.md +74 -687
- package/template/.agent/skills/testing-strategist/references/typescript.md +328 -0
- package/template/.agent/skills/workflow-automation/SKILL.md +62 -154
- package/template/.agent/skills/workflow-automation/references/inngest.md +88 -0
- package/template/.agent/skills/workflow-automation/references/temporal.md +64 -0
- package/template/.agent/workflows/bootstrap-agents-fill.md +85 -143
- package/template/.agent/workflows/bootstrap-agents-provision.md +90 -107
- package/template/.agent/workflows/create-prd-architecture.md +23 -16
- package/template/.agent/workflows/create-prd-compile.md +11 -12
- package/template/.agent/workflows/create-prd-design-system.md +1 -1
- package/template/.agent/workflows/create-prd-security.md +9 -11
- package/template/.agent/workflows/create-prd-stack.md +10 -4
- package/template/.agent/workflows/create-prd.md +9 -9
- package/template/.agent/workflows/decompose-architecture-structure.md +4 -6
- package/template/.agent/workflows/decompose-architecture-validate.md +18 -1
- package/template/.agent/workflows/decompose-architecture.md +18 -3
- package/template/.agent/workflows/evolve-contract.md +11 -11
- package/template/.agent/workflows/evolve-feature-classify.md +14 -6
- package/template/.agent/workflows/ideate-discover.md +72 -107
- package/template/.agent/workflows/ideate-extract.md +84 -63
- package/template/.agent/workflows/ideate-validate.md +26 -22
- package/template/.agent/workflows/ideate.md +9 -9
- package/template/.agent/workflows/implement-slice-setup.md +25 -23
- package/template/.agent/workflows/implement-slice-tdd.md +73 -89
- package/template/.agent/workflows/implement-slice.md +4 -4
- package/template/.agent/workflows/plan-phase-preflight.md +6 -2
- package/template/.agent/workflows/plan-phase-write.md +6 -8
- package/template/.agent/workflows/remediate-pipeline-assess.md +2 -1
- package/template/.agent/workflows/resolve-ambiguity.md +2 -2
- package/template/.agent/workflows/update-architecture-map.md +22 -5
- package/template/.agent/workflows/validate-phase-quality.md +155 -0
- package/template/.agent/workflows/validate-phase-readiness.md +167 -0
- package/template/.agent/workflows/validate-phase.md +19 -157
- package/template/.agent/workflows/verify-infrastructure.md +10 -10
- package/template/.agent/workflows/write-architecture-spec-design.md +23 -14
- package/template/.agent/workflows/write-be-spec-classify.md +25 -21
- package/template/.agent/workflows/write-be-spec.md +1 -1
- package/template/.agent/workflows/write-fe-spec-classify.md +6 -12
- package/template/.agent/workflows/write-fe-spec-write.md +1 -1
- package/template/AGENTS.md +6 -2
- package/template/GEMINI.md +5 -3
- package/template/docs/README.md +10 -10
- package/template/docs/kit-architecture.md +126 -33
- package/template/docs/plans/ideation/README.md +8 -3
- package/template/.agent/skills/prd-templates/references/ideation-domain-template.md +0 -55
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Production readiness gates — API docs, accessibility, performance, security, dependency audit, results for the validate-phase workflow
|
|
3
|
+
parent: validate-phase
|
|
4
|
+
shard: readiness
|
|
5
|
+
standalone: true
|
|
6
|
+
position: 2
|
|
7
|
+
pipeline:
|
|
8
|
+
position: 8.2
|
|
9
|
+
stage: verification
|
|
10
|
+
predecessors: [validate-phase-quality]
|
|
11
|
+
successors: [update-architecture-map]
|
|
12
|
+
skills: [adversarial-review, security-scanning-security-hardening, verification-before-completion]
|
|
13
|
+
calls-bootstrap: false
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
// turbo-all
|
|
17
|
+
|
|
18
|
+
# Validate Phase — Production Readiness Gates
|
|
19
|
+
|
|
20
|
+
Run all production readiness checks for a completed implementation phase.
|
|
21
|
+
|
|
22
|
+
**Prerequisite**: Code quality gates (from `/validate-phase-quality` or equivalent) must pass first.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## 5.9. API documentation sync (surfaces with API endpoints)
|
|
27
|
+
|
|
28
|
+
Read the surface stack map from `.agent/instructions/tech-stack.md`. **Skip this step** if the project has no API surface and no BE endpoints exposed to external consumers.
|
|
29
|
+
|
|
30
|
+
1. Read `docs/plans/ENGINEERING-STANDARDS.md` → `## Code Quality` → `Required documentation` field
|
|
31
|
+
2. If API documentation is required or the project exposes public API endpoints:
|
|
32
|
+
- Verify an OpenAPI spec file exists (e.g., `openapi.yaml`, `openapi.json`, or a generated equivalent)
|
|
33
|
+
- If the project uses a schema-first or code-first generation approach (documented in architecture-design.md), verify the generation tool produces output matching the implemented endpoints
|
|
34
|
+
- For each new endpoint in this phase, verify it appears in the OpenAPI spec with:
|
|
35
|
+
- Request body schema matching the {{CONTRACT_LIBRARY}} contract
|
|
36
|
+
- Response schema matching the contract
|
|
37
|
+
- All error codes documented
|
|
38
|
+
- Run OpenAPI linter if configured (e.g., the tool named in ENGINEERING-STANDARDS.md or the project's `lint` scripts)
|
|
39
|
+
3. If API documentation is not required and no public API surface exists → skip
|
|
40
|
+
|
|
41
|
+
**Pass criteria**: OpenAPI spec exists and is in sync with implemented contracts for this phase's endpoints, or API documentation is not applicable.
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## 6. Accessibility audit (if UI changes)
|
|
46
|
+
|
|
47
|
+
Audit all new UI components in this phase for WCAG 2.1 AA compliance using the Accessibility skill(s) from the cross-cutting section.
|
|
48
|
+
|
|
49
|
+
## 7. Performance check
|
|
50
|
+
|
|
51
|
+
### 7a. Performance budget verification (mandatory when budgets are defined)
|
|
52
|
+
|
|
53
|
+
Read `docs/plans/ENGINEERING-STANDARDS.md` section `## Performance Budgets`.
|
|
54
|
+
|
|
55
|
+
**If the section does not exist or contains only unfilled template placeholders** → Log: "No performance budgets defined in ENGINEERING-STANDARDS.md — skipping budget verification." Proceed to 7b.
|
|
56
|
+
|
|
57
|
+
**If budgets are defined**, read the `### CI Enforcement` table. For each row where the enforcement tool is named:
|
|
58
|
+
|
|
59
|
+
1. Check if the named enforcement tool is installed/available in the project
|
|
60
|
+
2. **If tool is available** → run it against the staging deployment (from Step 5.6) using the thresholds in the corresponding budget table:
|
|
61
|
+
- **Web Vitals** (LCP, INP, CLS) → run against staging URLs, one per page type defined in the budget
|
|
62
|
+
- **JS Bundle Size** → measure build output against per-page-type caps
|
|
63
|
+
- **API Response Time** → run the named load test tool with a baseline scenario against staging endpoints
|
|
64
|
+
- **DB Query Time** → run EXPLAIN ANALYZE (or equivalent) on critical queries and verify against tier thresholds
|
|
65
|
+
- **Desktop/Mobile/CLI metrics** → run the named platform profiler against the built artifact
|
|
66
|
+
3. **If tool is not available** → log which tool is missing and recommend installation, but do not block
|
|
67
|
+
|
|
68
|
+
**Verdict per budget row**:
|
|
69
|
+
- `Fail` classification in CI Enforcement table AND threshold exceeded → **STOP.** Mark step 7a as `❌`. The phase cannot pass until budgets are met.
|
|
70
|
+
- `Warn` classification AND threshold exceeded → Log as a finding, do not block.
|
|
71
|
+
- Tool not available → Log as a finding, do not block, recommend installation.
|
|
72
|
+
|
|
73
|
+
**Pass criteria**: All `Fail`-classified budgets pass their thresholds. All `Warn`-classified findings are logged.
|
|
74
|
+
|
|
75
|
+
### 7b. Deep performance audit (optional)
|
|
76
|
+
|
|
77
|
+
Check if the `performance-optimization` skill is installed (look for `.agent/skills/performance-optimization/SKILL.md`).
|
|
78
|
+
|
|
79
|
+
**If installed**:
|
|
80
|
+
1. Read `.agent/skills/performance-optimization/SKILL.md`
|
|
81
|
+
2. Run the skill's audit protocol against the phase's changed pages/routes/endpoints
|
|
82
|
+
3. Compare results to the targets in `docs/plans/ENGINEERING-STANDARDS.md` (response time budgets, bundle sizes, memory limits, or other surface-appropriate metrics)
|
|
83
|
+
4. Report any metrics that exceed the defined thresholds
|
|
84
|
+
|
|
85
|
+
**If not installed**:
|
|
86
|
+
- Manually verify that no obviously expensive operations were added (large synchronous imports, unoptimized assets, missing lazy loading, N+1 queries, unbounded loops)
|
|
87
|
+
- If performance is critical for this project, recommend installing the skill via `find-skills`
|
|
88
|
+
|
|
89
|
+
## 8. Security review
|
|
90
|
+
|
|
91
|
+
Read .agent/skills/adversarial-review/SKILL.md and follow its structured methodology for generating attack scenarios, abuse cases, and race conditions against the phase's changes. Produce spec-level gap items for any identified risks. Feed these into the defense-in-depth audit below.
|
|
92
|
+
|
|
93
|
+
Read .agent/skills/security-scanning-security-hardening/SKILL.md and run its full defense-in-depth audit protocol against the phase's changes (new endpoints, new data flows, new auth checks). Report findings with severity levels. Block the phase if any Critical or High severity issues are found.
|
|
94
|
+
|
|
95
|
+
**Supplemental security checks (conditional)**: After the core audit completes, read the Security skill(s) from the cross-cutting section of the surface stack map. For each listed skill directory name, read `.agent/skills/[skill]/SKILL.md` and run its audit protocol as a supplement to the core audit.
|
|
96
|
+
|
|
97
|
+
Report any additional findings from supplemental audits with the same severity classification.
|
|
98
|
+
|
|
99
|
+
**Surface-conditional DAST scan (if applicable)**: Read `docs/plans/ENGINEERING-STANDARDS.md` → `## Security` → `Security testing tool` field. If a DAST or security scanning tool is defined:
|
|
100
|
+
1. Run it against the staging deployment from Step 5.6
|
|
101
|
+
2. Report findings with severity levels consistent with the core audit
|
|
102
|
+
3. Block the phase if any Critical or High severity findings are discovered
|
|
103
|
+
|
|
104
|
+
If no security testing tool is defined in ENGINEERING-STANDARDS → skip and log: "No DAST/security testing tool configured."
|
|
105
|
+
|
|
106
|
+
## 8.5. Dependency audit
|
|
107
|
+
|
|
108
|
+
### Core audit (mandatory — no skill required)
|
|
109
|
+
|
|
110
|
+
Run the package manager's built-in vulnerability audit tool. Use the appropriate command for the project's language/package manager:
|
|
111
|
+
|
|
112
|
+
| Package Manager | Audit Command |
|
|
113
|
+
|----------------|---------------|
|
|
114
|
+
| npm | `npm audit --audit-level=high` |
|
|
115
|
+
| pnpm | `pnpm audit --audit-level=high` |
|
|
116
|
+
| yarn | `yarn npm audit --severity high` |
|
|
117
|
+
| pip | `pip-audit` or `safety check` |
|
|
118
|
+
| cargo | `cargo audit` |
|
|
119
|
+
| go | `govulncheck ./...` |
|
|
120
|
+
| bundler | `bundle audit check` |
|
|
121
|
+
| composer | `composer audit` |
|
|
122
|
+
|
|
123
|
+
If the project uses a package manager not listed above, check its documentation for a built-in vulnerability audit command.
|
|
124
|
+
|
|
125
|
+
**If any HIGH or CRITICAL vulnerabilities are found in production dependencies** → **STOP.** Mark step 8.5 as `❌`. List affected packages and recommended fixes (upgrade version, patch, or replace).
|
|
126
|
+
|
|
127
|
+
**If only LOW or MODERATE vulnerabilities are found** → Log as findings, do not block.
|
|
128
|
+
|
|
129
|
+
**If the audit tool is not available** (e.g., language has no built-in audit) → Log: "No built-in dependency audit available for [language]. Recommend installing a dependency auditing tool." Do not block.
|
|
130
|
+
|
|
131
|
+
### Supplemental audit (conditional)
|
|
132
|
+
|
|
133
|
+
If the `dependency-auditing` skill is installed (`.agent/skills/dependency-auditing/SKILL.md`):
|
|
134
|
+
1. Read the skill and run its full audit protocol (Snyk, Socket.dev, SBOM generation, lockfile integrity)
|
|
135
|
+
2. Report any additional findings with severity levels
|
|
136
|
+
|
|
137
|
+
**Pass criteria**: Zero HIGH/CRITICAL vulnerabilities in production dependencies.
|
|
138
|
+
|
|
139
|
+
## 9. Document results
|
|
140
|
+
|
|
141
|
+
**Note on report file**: `docs/audits/phase-N-validation.md` is written progressively. Step 5.8 creates the file and appends the `## Spec Coverage` section. Step 9 appends all remaining sections. Do not recreate or overwrite the file in Step 9 — append only.
|
|
142
|
+
|
|
143
|
+
- Test results and coverage
|
|
144
|
+
- Lint and type-check status
|
|
145
|
+
- Build status
|
|
146
|
+
- Accessibility findings
|
|
147
|
+
- Performance budget results (7a) and deep audit findings (7b)
|
|
148
|
+
- Security review findings (including DAST results if applicable)
|
|
149
|
+
- Dependency audit results
|
|
150
|
+
- API documentation sync status (if applicable)
|
|
151
|
+
- Deployment strategy compliance (if applicable)
|
|
152
|
+
- CI/CD pipeline status
|
|
153
|
+
- Staging deployment result
|
|
154
|
+
- Migration verification status
|
|
155
|
+
- Pass/fail verdict
|
|
156
|
+
|
|
157
|
+
## 10. Present results and next steps
|
|
158
|
+
|
|
159
|
+
Read .agent/skills/verification-before-completion/SKILL.md and follow its methodology.
|
|
160
|
+
|
|
161
|
+
Use `notify_user` to present the validation report.
|
|
162
|
+
|
|
163
|
+
### Proposed next steps
|
|
164
|
+
|
|
165
|
+
- **If all checks pass**: "Phase N validation complete. Next: Run `/update-architecture-map` to ensure the project's living architecture document is up-to-date."
|
|
166
|
+
- **If any checks fail**: "Fix the failures listed in the validation report and re-run `/validate-phase` for Phase N."
|
|
167
|
+
- **If new requirements were discovered during validation** (scope gaps, missing features, behavioral corrections): Use `/evolve-feature` to add them at the correct entry point layer. Do not attempt to add them directly to specs — evolution must go through the classify → cascade flow to maintain layer consistency.
|
|
@@ -8,6 +8,7 @@ pipeline:
|
|
|
8
8
|
loop: true # one validate per phase
|
|
9
9
|
skills: [adversarial-review, code-review-pro, deployment-procedures, security-scanning-security-hardening, testing-strategist, verification-before-completion]
|
|
10
10
|
calls-bootstrap: false
|
|
11
|
+
shards: [validate-phase-quality, validate-phase-readiness]
|
|
11
12
|
---
|
|
12
13
|
|
|
13
14
|
// turbo-all
|
|
@@ -16,175 +17,36 @@ pipeline:
|
|
|
16
17
|
|
|
17
18
|
Comprehensive validation of a completed implementation phase.
|
|
18
19
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
## 0. Load validation skills
|
|
22
|
-
|
|
23
|
-
Read these skills before running checks:
|
|
24
|
-
1. `.agent/skills/testing-strategist/SKILL.md` — Coverage strategy and test quality
|
|
25
|
-
2. `.agent/skills/code-review-pro/SKILL.md` — Review checklist for self-audit
|
|
26
|
-
3. `.agent/skills/deployment-procedures/SKILL.md` — Build and release readiness
|
|
20
|
+
**Input**: A completed phase with all slices implemented
|
|
21
|
+
**Output**: Validation report with pass/fail verdict
|
|
27
22
|
|
|
28
23
|
---
|
|
29
24
|
|
|
30
|
-
##
|
|
31
|
-
|
|
32
|
-
If the phase contains independent slices that don't share files, validation can run in parallel:
|
|
33
|
-
|
|
34
|
-
1. **Identify independent slices** — slices that don't import from or export to each other
|
|
35
|
-
2. **Dispatch parallel validation** — run Steps 1–5 concurrently for independent slices using the `parallel-agents` skill
|
|
36
|
-
3. **Sequential for shared** — slices that share contracts or utilities must validate sequentially
|
|
37
|
-
|
|
38
|
-
This is an optimization, not a requirement. Sequential validation is always correct.
|
|
39
|
-
|
|
40
|
-
## 1. Run test suite
|
|
41
|
-
|
|
42
|
-
Read .agent/skills/{{E2E_TESTING_SKILL}}/SKILL.md and follow its E2E test conventions.
|
|
43
|
-
|
|
44
|
-
Run `{{TEST_COMMAND}}`.
|
|
45
|
-
|
|
46
|
-
All tests must pass. Zero tolerance for failing tests.
|
|
47
|
-
|
|
48
|
-
## 2. Check coverage
|
|
49
|
-
|
|
50
|
-
Read .agent/skills/{{UNIT_TESTING_SKILL}}/SKILL.md and follow its test writing conventions.
|
|
51
|
-
|
|
52
|
-
Run `{{TEST_COVERAGE_COMMAND}}`.
|
|
53
|
-
|
|
54
|
-
Read `docs/plans/ENGINEERING-STANDARDS.md` and use the coverage thresholds defined in the "Test Coverage" section. If the file doesn't exist or thresholds aren't defined, fall back to these defaults:
|
|
55
|
-
- Statements: 80%
|
|
56
|
-
- Branches: 90% (critical paths: auth, payments, data mutations, permission checks), 75% (non-critical paths)
|
|
57
|
-
- Functions: 80%
|
|
58
|
-
- Lines: 80%
|
|
59
|
-
|
|
60
|
-
Critical paths are defined as: auth flows, payment processing, data mutations, and permission/authorization checks.
|
|
25
|
+
## Shard Overview
|
|
61
26
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
Zero lint errors. Warnings should be reviewed and addressed.
|
|
67
|
-
|
|
68
|
-
## 4. Type check
|
|
69
|
-
|
|
70
|
-
Run `{{TYPE_CHECK_COMMAND}}`.
|
|
71
|
-
|
|
72
|
-
Zero type errors. Strict mode must be enabled.
|
|
73
|
-
|
|
74
|
-
## 5. Build
|
|
75
|
-
|
|
76
|
-
Run `{{BUILD_COMMAND}}`.
|
|
77
|
-
|
|
78
|
-
Build must succeed with no errors.
|
|
27
|
+
| # | Shard | What It Does |
|
|
28
|
+
|---|-------|-------------|
|
|
29
|
+
| 1 | [`validate-phase-quality`](.agent/workflows/validate-phase-quality.md) | Code quality gates: tests, coverage, mutation testing, lint, type-check, build, CI/CD, staging deploy, deployment strategy, migrations, spec coverage |
|
|
30
|
+
| 2 | [`validate-phase-readiness`](.agent/workflows/validate-phase-readiness.md) | Production readiness gates: API doc sync, accessibility, performance budgets, security review, DAST, dependency audit, results documentation, next steps |
|
|
79
31
|
|
|
80
32
|
---
|
|
81
33
|
|
|
82
|
-
##
|
|
83
|
-
|
|
84
|
-
Read .agent/skills/{{CI_CD_SKILL}}/SKILL.md and follow its pipeline configuration conventions.
|
|
34
|
+
## Orchestration
|
|
85
35
|
|
|
86
|
-
|
|
36
|
+
### Step A — Run `.agent/workflows/validate-phase-quality.md`
|
|
87
37
|
|
|
88
|
-
|
|
89
|
-
2. Verify the pipeline has run for the latest commit in this phase
|
|
90
|
-
3. Verify ALL CI/CD jobs are passing (not just the test job — include lint, type-check, build, and any deployment jobs)
|
|
38
|
+
Loads validation skills, runs all code quality checks (tests, coverage, mutation testing, lint, type-check, build), verifies CI/CD pipeline, deploys to staging, verifies deployment strategy compliance, checks migrations, and runs the spec coverage sweep.
|
|
91
39
|
|
|
92
|
-
|
|
40
|
+
### Step B — Run `.agent/workflows/validate-phase-readiness.md`
|
|
93
41
|
|
|
94
|
-
|
|
42
|
+
Runs production readiness checks: API documentation sync, accessibility audit, performance budget enforcement, deep performance audit, security review (including surface-conditional DAST), dependency supply chain audit. Documents all results and presents the validation report with next steps.
|
|
95
43
|
|
|
96
44
|
---
|
|
97
45
|
|
|
98
|
-
##
|
|
99
|
-
|
|
100
|
-
Read .agent/skills/{{HOSTING_SKILL}}/SKILL.md and follow its deployment conventions.
|
|
101
|
-
|
|
102
|
-
1. Deploy to staging using the deployment skill (`.agent/skills/deployment-procedures/SKILL.md`)
|
|
103
|
-
2. Verify deployment succeeded (no rollback triggered, no error logs in the deployment output)
|
|
104
|
-
3. Run smoke tests against the staging environment:
|
|
105
|
-
- Health check endpoint returns 200
|
|
106
|
-
- At least one authenticated route works with a valid token
|
|
107
|
-
- At least one protected route returns 401/403 for unauthenticated requests
|
|
108
|
-
4. **If smoke tests fail** → red path: Capture the failing test output, rollback the staging deployment, and fix the issue before re-running `/validate-phase`
|
|
109
|
-
5. **If deployment fails** → red path: Do not mark this phase as complete — diagnose the deployment failure, fix it, and re-run `/validate-phase`
|
|
110
|
-
|
|
111
|
-
**Pass criteria**: Staging deployment succeeds and all smoke tests pass.
|
|
112
|
-
|
|
113
|
-
---
|
|
114
|
-
|
|
115
|
-
## 5.7. Migration verification
|
|
116
|
-
|
|
117
|
-
Read .agent/skills/{{ORM_SKILL}}/SKILL.md and follow its migration and schema conventions.
|
|
118
|
-
|
|
119
|
-
1. Run the migration status command (e.g., `prisma migrate status`, `drizzle-kit status`, or equivalent for your ORM)
|
|
120
|
-
2. Verify there are no pending migrations and no failed migrations
|
|
121
|
-
3. Verify the CI/CD pipeline ran migrations successfully as part of this phase's deployment
|
|
122
|
-
4. Check that rollback scripts exist for each migration in this phase
|
|
123
|
-
5. If migrations are pending or failed → red path: do not mark this phase as complete — run the pending migrations, verify they succeed, and re-run `/validate-phase`
|
|
124
|
-
|
|
125
|
-
**Pass criteria**: Migration status is clean. All migrations from this phase ran successfully in the CI/CD environment. Rollback scripts are present.
|
|
126
|
-
|
|
127
|
-
---
|
|
128
|
-
|
|
129
|
-
## 5.8. Spec coverage sweep
|
|
130
|
-
|
|
131
|
-
Read `.agent/skills/prd-templates/references/spec-coverage-sweep.md` and follow its full procedure for FE spec, BE spec, and IA shard coverage. Apply its hard-stop rule for any uncovered items.
|
|
132
|
-
|
|
133
|
-
---
|
|
134
|
-
|
|
135
|
-
## 6. Accessibility audit (if UI changes)
|
|
136
|
-
|
|
137
|
-
Read .agent/skills/{{ACCESSIBILITY_SKILL}}/SKILL.md and follow its methodology.
|
|
138
|
-
Audit all new UI components in this phase for WCAG 2.1 AA compliance.
|
|
139
|
-
|
|
140
|
-
## 7. Performance check (if web surface exists)
|
|
141
|
-
|
|
142
|
-
Check if the `web-performance-optimization` skill is installed (look for `.agent/skills/web-performance-optimization/SKILL.md`).
|
|
143
|
-
|
|
144
|
-
**If installed**:
|
|
145
|
-
1. Read `.agent/skills/web-performance-optimization/SKILL.md`
|
|
146
|
-
2. Run the skill's audit protocol against the phase's changed pages/routes
|
|
147
|
-
3. Compare results to the targets in `docs/plans/ENGINEERING-STANDARDS.md` (LCP, FID, CLS, bundle size)
|
|
148
|
-
4. Report any metrics that exceed the defined thresholds
|
|
149
|
-
|
|
150
|
-
**If not installed**:
|
|
151
|
-
- Note: "No web performance skill installed. Skipping automated performance audit."
|
|
152
|
-
- Manually verify that no obviously expensive operations were added (large synchronous imports, unoptimized images, missing lazy loading)
|
|
153
|
-
- If performance is critical for this project, recommend installing the skill via `find-skills`
|
|
154
|
-
|
|
155
|
-
## 8. Security review
|
|
156
|
-
|
|
157
|
-
Read .agent/skills/adversarial-review/SKILL.md and follow its structured methodology for generating attack scenarios, abuse cases, and race conditions against the phase's changes. Produce spec-level gap items for any identified risks. Feed these into the defense-in-depth audit below.
|
|
158
|
-
|
|
159
|
-
Read .agent/skills/security-scanning-security-hardening/SKILL.md and run its full defense-in-depth audit protocol against the phase's changes (new endpoints, new data flows, new auth checks). Report findings with severity levels. Block the phase if any Critical or High severity issues are found.
|
|
160
|
-
|
|
161
|
-
**Supplemental security checks (conditional)**: After the core audit completes, read `{{SECURITY_SKILLS}}` (comma-separated list of security skill directory names). For each skill directory name in the list, read `.agent/skills/[skill]/SKILL.md` and run its audit protocol as a supplement to the core audit.
|
|
162
|
-
|
|
163
|
-
Report any additional findings from supplemental audits with the same severity classification.
|
|
164
|
-
|
|
165
|
-
## 9. Document results
|
|
166
|
-
|
|
167
|
-
**Note on report file**: `docs/audits/phase-N-validation.md` is written progressively. Step 5.8 creates the file and appends the `## Spec Coverage` section. Step 9 appends all remaining sections. Do not recreate or overwrite the file in Step 9 — append only.
|
|
168
|
-
|
|
169
|
-
- Test results and coverage
|
|
170
|
-
- Lint and type-check status
|
|
171
|
-
- Build status
|
|
172
|
-
- Accessibility findings
|
|
173
|
-
- Performance findings
|
|
174
|
-
- Security review findings
|
|
175
|
-
- CI/CD pipeline status
|
|
176
|
-
- Staging deployment result
|
|
177
|
-
- Migration verification status
|
|
178
|
-
- Pass/fail verdict
|
|
179
|
-
|
|
180
|
-
## 10. Present results and next steps
|
|
181
|
-
|
|
182
|
-
Read .agent/skills/verification-before-completion/SKILL.md and follow its methodology.
|
|
183
|
-
|
|
184
|
-
Use `notify_user` to present the validation report.
|
|
185
|
-
|
|
186
|
-
### Proposed next steps
|
|
46
|
+
## Quality Gate
|
|
187
47
|
|
|
188
|
-
|
|
189
|
-
-
|
|
190
|
-
-
|
|
48
|
+
You may not call `notify_user` until:
|
|
49
|
+
- [ ] All code quality checks pass (Shard 1)
|
|
50
|
+
- [ ] All production readiness checks pass (Shard 2)
|
|
51
|
+
- [ ] Validation report written to `docs/audits/phase-N-validation.md`
|
|
52
|
+
- [ ] Pass/fail verdict determined
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Verify operational infrastructure after the infrastructure or auth slice — CI/CD green, staging live, migrations clean, auth working
|
|
3
3
|
pipeline:
|
|
4
|
-
position:
|
|
4
|
+
position: 7.5
|
|
5
5
|
stage: verification
|
|
6
6
|
predecessors: [implement-slice]
|
|
7
7
|
successors: [implement-slice, validate-phase]
|
|
@@ -19,15 +19,15 @@ Operational verification gate that runs after the `00-infrastructure` slice and
|
|
|
19
19
|
|
|
20
20
|
## 0. Placeholder audit
|
|
21
21
|
|
|
22
|
-
Scan the
|
|
22
|
+
Scan the surface stack map (`.agent/instructions/tech-stack.md`) for completeness:
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
1. Verify all per-surface rows have filled values for required columns
|
|
25
|
+
2. Verify cross-cutting categories (Auth, Security, CI/CD, Hosting) have filled values
|
|
26
|
+
3. Verify `.agent/instructions/commands.md` has non-template values
|
|
27
27
|
|
|
28
|
-
**If any
|
|
28
|
+
**If any map cells are empty** → **STOP.** Run `/bootstrap-agents` to populate them before proceeding.
|
|
29
29
|
|
|
30
|
-
**Pass criteria**:
|
|
30
|
+
**Pass criteria**: Surface stack map fully populated for all project surfaces.
|
|
31
31
|
|
|
32
32
|
> Update report: Mark check 0 as `✅` in the report file.
|
|
33
33
|
|
|
@@ -55,7 +55,7 @@ Read `.agent/skills/prd-templates/references/infrastructure-report-template.md`
|
|
|
55
55
|
Read .agent/skills/testing-strategist/SKILL.md and follow its methodology.
|
|
56
56
|
Read .agent/skills/systematic-debugging/SKILL.md and follow its methodology.
|
|
57
57
|
|
|
58
|
-
|
|
58
|
+
Load the CI/CD skill(s) from the cross-cutting section per the skill loading protocol (`.agent/skills/prd-templates/references/skill-loading-protocol.md`).
|
|
59
59
|
|
|
60
60
|
Locate the CI/CD configuration file (e.g., `.github/workflows/`, `.gitlab-ci.yml`, `Jenkinsfile`).
|
|
61
61
|
|
|
@@ -98,7 +98,7 @@ Verify the CI/CD pipeline has run for the latest commit and ALL jobs are passing
|
|
|
98
98
|
|
|
99
99
|
## 4. Migration check
|
|
100
100
|
|
|
101
|
-
|
|
101
|
+
Load the ORMs skill(s) from the `shared` surface row per the skill loading protocol.
|
|
102
102
|
|
|
103
103
|
1. Run the migration status command (e.g., `prisma migrate status`, `drizzle-kit status`, or equivalent)
|
|
104
104
|
2. Verify no pending or failed migrations
|
|
@@ -115,7 +115,7 @@ Read .agent/skills/{{ORM_SKILL}}/SKILL.md and follow its migration and schema co
|
|
|
115
115
|
|
|
116
116
|
## 5. Staging deployment
|
|
117
117
|
|
|
118
|
-
|
|
118
|
+
Load the Hosting skill(s) from the cross-cutting section per the skill loading protocol.
|
|
119
119
|
Read .agent/skills/deployment-procedures/SKILL.md and follow its pre-deployment checklist and verification protocol.
|
|
120
120
|
|
|
121
121
|
1. Deploy to staging using the project's deployment process
|
|
@@ -22,9 +22,14 @@ Explore requirements, map all interactions, and define contracts, data models, a
|
|
|
22
22
|
|
|
23
23
|
**Prerequisite**: Skeleton IA shard must exist in `docs/plans/ia/`. If it does not, tell the user to run `/decompose-architecture` first.
|
|
24
24
|
|
|
25
|
-
## 0.
|
|
25
|
+
## 0. Map guard
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
Read the surface stack map from `.agent/instructions/tech-stack.md`. Verify that the following have filled values:
|
|
28
|
+
- **Databases** column (per-surface, any row)
|
|
29
|
+
- **Security** category (cross-cutting)
|
|
30
|
+
- **Global Settings → Surfaces** list
|
|
31
|
+
|
|
32
|
+
If any are empty → **HARD STOP**: tell the user to run `/create-prd` first.
|
|
28
33
|
|
|
29
34
|
---
|
|
30
35
|
|
|
@@ -41,9 +46,13 @@ Before loading skills, check whether the shard file at `docs/plans/ia/[shard-nam
|
|
|
41
46
|
|
|
42
47
|
### 1a. Read the authoritative sources
|
|
43
48
|
|
|
44
|
-
Read the following files and build a **reconciliation table** comparing what each source says about this shard's features.
|
|
49
|
+
Read the following files and build a **reconciliation table** comparing what each source says about this shard's features. Use the `ideation-index.md` Structure Map to find the correct domain folder path (may be under `domains/` or `surfaces/{name}/` for multi-product projects). The ideation domain's feature files are the **primary source of truth** for sub-features — the architecture design is secondary context.
|
|
45
50
|
|
|
46
|
-
1. The relevant domain
|
|
51
|
+
1. The relevant ideation domain folder for this shard (path from `ideation-index.md` Structure Map):
|
|
52
|
+
- Read the domain's `*-index.md` for the children table and Role Matrix
|
|
53
|
+
- Read each child **feature `.md` file** for sub-feature details (Role Lens, behavior, edge cases)
|
|
54
|
+
- Read the domain's `*-cx.md` for cross-domain interactions relevant to this shard
|
|
55
|
+
- If the domain has sub-domain folders, recurse into them and aggregate all descendant feature files
|
|
47
56
|
2. The shard's `## Features` section (from `/decompose-architecture-structure`)
|
|
48
57
|
3. `docs/plans/ideation/ideation-index.md` — Must Have features for this domain
|
|
49
58
|
|
|
@@ -56,8 +65,8 @@ Present the reconciled `## Features` list to the user, including a count of newl
|
|
|
56
65
|
> **Reconciled features for [Shard NN — Domain Name]:**
|
|
57
66
|
> [bullet list of all sub-features, with `[Architecture-only]` markers]
|
|
58
67
|
>
|
|
59
|
-
> **[N] sub-features added from ideation domain
|
|
60
|
-
> **[M] sub-features marked `[Architecture-only]`** — not found in ideation domain
|
|
68
|
+
> **[N] sub-features added from ideation domain tree** that were missing from the shard skeleton.
|
|
69
|
+
> **[M] sub-features marked `[Architecture-only]`** — not found in ideation domain tree, added during decomposition.
|
|
61
70
|
>
|
|
62
71
|
> "Does this feature list match your intent for this domain? Any sub-features to add, remove, or re-scope?"
|
|
63
72
|
|
|
@@ -85,30 +94,28 @@ For each feature in the shard, document:
|
|
|
85
94
|
|
|
86
95
|
## 3. Define contracts
|
|
87
96
|
|
|
88
|
-
Read
|
|
97
|
+
Read `.agent/skills/prd-templates/references/skill-loading-protocol.md` and load the API Design skill(s) from the cross-cutting section.
|
|
89
98
|
|
|
90
99
|
For each interaction, define the contract shape:
|
|
91
100
|
- Request shape (params, query, body)
|
|
92
101
|
- Response shape (all fields typed)
|
|
93
102
|
- Error shape (specific error codes)
|
|
94
|
-
- Note: actual
|
|
103
|
+
- Note: actual {{CONTRACT_LIBRARY}} schemas written in BE spec phase
|
|
95
104
|
|
|
96
105
|
**Review questions**: "Are there fields I'm missing from these requests/responses?" / "Are these error codes specific enough?"
|
|
97
106
|
|
|
98
107
|
## 4. Design data models
|
|
99
108
|
|
|
100
|
-
Read
|
|
109
|
+
Read `.agent/skills/prd-templates/references/skill-loading-protocol.md` and load the Databases skill(s) for this shard's surface. Also load:
|
|
101
110
|
- `.agent/skills/database-schema-design/SKILL.md` — Schema design principles
|
|
102
111
|
- `.agent/skills/error-handling-patterns/SKILL.md` — Error categories for contracts
|
|
103
112
|
- `.agent/skills/technical-writer/SKILL.md` — Specification clarity
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
- Indexes for query patterns
|
|
107
|
-
- Constraints and validation rules
|
|
113
|
+
|
|
114
|
+
Define for each entity: tables/collections, fields, types, relationships, indexes, constraints and validation rules.
|
|
108
115
|
|
|
109
116
|
**Review questions**: "Does this schema capture everything this domain needs to store?" / "Are the relationships and cardinalities correct?" / "Are there derived/computed fields I should account for?"
|
|
110
117
|
|
|
111
|
-
**
|
|
118
|
+
> **Decision recording**: For non-trivial data model decisions (schema approach, denormalization trade-offs, index strategy), read `.agent/skills/session-continuity/protocols/06-decision-analysis.md` and follow the **Decision Effect Analysis Protocol**.
|
|
112
119
|
|
|
113
120
|
## 5. Design access control
|
|
114
121
|
|
|
@@ -122,6 +129,8 @@ Read .agent/skills/security-scanning-security-hardening/SKILL.md and apply its a
|
|
|
122
129
|
|
|
123
130
|
**Review questions**: "Can you think of a scenario where a user should be blocked that this matrix allows?" / "Can you think of a scenario where a user should be allowed that this matrix blocks?"
|
|
124
131
|
|
|
132
|
+
> **Decision recording**: For access control architecture decisions (role hierarchy, ownership model, escalation paths), read `.agent/skills/session-continuity/protocols/06-decision-analysis.md` and follow the **Decision Effect Analysis Protocol**. Record to `memory/decisions.md`.
|
|
133
|
+
|
|
125
134
|
## 5.5. Accessibility specifications
|
|
126
135
|
|
|
127
136
|
Read `{{SURFACES}}` to determine the project's target surfaces.
|
|
@@ -73,37 +73,41 @@ Before classifying a shard as multi-domain, build a **sub-feature endpoint inven
|
|
|
73
73
|
- For multi-domain: the proposed split boundaries
|
|
74
74
|
- For structural reference: confirmation that no BE spec is needed
|
|
75
75
|
|
|
76
|
-
## 2.5. Verify
|
|
76
|
+
## 2.5. Verify surface stack map is populated
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
Read the surface stack map from `.agent/instructions/tech-stack.md`. Determine this shard's surface from its directory path:
|
|
79
|
+
- `docs/plans/shared/be/` or `docs/plans/be/` → surface `shared`
|
|
80
|
+
- `docs/plans/web/be/` → surface `web`
|
|
81
|
+
- `docs/plans/desktop/be/` → surface `desktop`
|
|
82
|
+
- etc.
|
|
79
83
|
|
|
80
|
-
|
|
84
|
+
Check that the following map cells have filled values for this shard's surface:
|
|
85
|
+
- **Languages** (per-surface)
|
|
86
|
+
- **Databases** (per-surface)
|
|
87
|
+
- **BE Frameworks** (per-surface)
|
|
88
|
+
- **ORMs** (per-surface)
|
|
89
|
+
- **Unit Tests** (per-surface)
|
|
90
|
+
- **Auth** (cross-cutting)
|
|
81
91
|
|
|
82
|
-
|
|
92
|
+
If any required cells are empty → **stop** and tell the user: *"Surface stack map is not fully populated for the `{surface}` surface. Run `/create-prd` first to make tech stack decisions and trigger bootstrap provisioning, then return to `/write-be-spec`."*
|
|
83
93
|
|
|
84
|
-
|
|
94
|
+
Only proceed to Step 3 when all required map cells are filled.
|
|
85
95
|
|
|
86
|
-
|
|
87
|
-
Read each skill listed in `{{DATABASE_SKILLS}}` (comma-separated). For each skill directory name, read `.agent/skills/[skill]/SKILL.md` before proceeding.
|
|
88
|
-
Read .agent/skills/{{AUTH_SKILL}}/SKILL.md
|
|
89
|
-
Read .agent/skills/{{BACKEND_FRAMEWORK_SKILL}}/SKILL.md
|
|
90
|
-
Read .agent/skills/{{API_DESIGN_SKILL}}/SKILL.md
|
|
91
|
-
Read .agent/skills/api-design-principles/SKILL.md
|
|
92
|
-
Read .agent/skills/error-handling-patterns/SKILL.md
|
|
93
|
-
Read .agent/skills/database-schema-design/SKILL.md
|
|
94
|
-
Read .agent/skills/migration-management/SKILL.md
|
|
95
|
-
Read .agent/skills/{{ORM_SKILL}}/SKILL.md and follow its migration and schema conventions.
|
|
96
|
-
Read .agent/skills/{{UNIT_TESTING_SKILL}}/SKILL.md and follow its test writing conventions.
|
|
97
|
-
Read .agent/skills/testing-strategist/SKILL.md
|
|
98
|
-
Read .agent/skills/logging-best-practices/SKILL.md
|
|
96
|
+
## 3. Load skill bundle
|
|
99
97
|
|
|
100
|
-
|
|
98
|
+
Read `.agent/skills/prd-templates/references/skill-loading-protocol.md` and follow the **Skill Loading Protocol** for the `write-be-spec-classify` workflow. Load all categories listed in its table for this workflow, plus these bundled skills:
|
|
99
|
+
- `.agent/skills/api-design-principles/SKILL.md`
|
|
100
|
+
- `.agent/skills/error-handling-patterns/SKILL.md`
|
|
101
|
+
- `.agent/skills/database-schema-design/SKILL.md`
|
|
102
|
+
- `.agent/skills/migration-management/SKILL.md`
|
|
103
|
+
- `.agent/skills/testing-strategist/SKILL.md`
|
|
104
|
+
- `.agent/skills/logging-best-practices/SKILL.md`
|
|
101
105
|
|
|
102
|
-
**Async/background processing (conditional)**: If the IA shard includes background processing, async operations, event-driven workflows,
|
|
106
|
+
**Async/background processing (conditional)**: If the IA shard includes background processing, async operations, event-driven workflows, or queue-based processing, also read `.agent/skills/workflow-automation/SKILL.md`.
|
|
103
107
|
|
|
104
108
|
### Ambiguity resolution
|
|
105
109
|
|
|
106
|
-
When writing the BE spec, if any requirement cannot be resolved from `ideation-index.md`, `architecture-design.md`, `data-placement-strategy.md`, or upstream IA specs, **do not guess**.
|
|
110
|
+
When writing the BE spec, if any requirement cannot be resolved from `ideation-index.md`, `architecture-design.md`, `data-placement-strategy.md`, or upstream IA specs, **do not guess**. Load and follow `.agent/skills/resolve-ambiguity/SKILL.md` to resolve it first.
|
|
107
111
|
|
|
108
112
|
## 4. Read reference documents
|
|
109
113
|
|
|
@@ -66,7 +66,7 @@ Before presenting to the user, verify:
|
|
|
66
66
|
|
|
67
67
|
Read .agent/skills/code-review-pro/SKILL.md and apply its adversarial review discipline to each checklist item.
|
|
68
68
|
|
|
69
|
-
- [ ] Every endpoint has a
|
|
69
|
+
- [ ] Every endpoint has a {{CONTRACT_LIBRARY}} request AND response schema
|
|
70
70
|
- [ ] Every database table has defined fields, indexes, and permissions
|
|
71
71
|
- [ ] Security constraints from IA shard reflected in middleware section
|
|
72
72
|
- [ ] Error codes are specific (not generic 500s)
|
|
@@ -72,22 +72,16 @@ Not every FE spec maps 1:1 to a BE feature spec. Before writing anything, classi
|
|
|
72
72
|
- For feature specs: the BE spec(s) and IA shard it maps to
|
|
73
73
|
- For cross-cutting specs: confirmation that BE spec/IA shard mapping is skipped
|
|
74
74
|
|
|
75
|
-
|
|
75
|
+
Determine this shard's surface from its directory path (e.g., `docs/plans/web/fe/` → surface `web`; flat `docs/plans/fe/` → surface `shared` or the project's single surface).
|
|
76
76
|
|
|
77
|
-
Read
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
Read .agent/skills/{{STATE_MANAGEMENT_SKILL}}/SKILL.md and follow its state management conventions.
|
|
82
|
-
Read .agent/skills/error-handling-patterns/SKILL.md
|
|
83
|
-
Read .agent/skills/testing-strategist/SKILL.md
|
|
84
|
-
Read .agent/skills/technical-writer/SKILL.md
|
|
85
|
-
|
|
86
|
-
**Missing skill fallback**: If any skill in the bundle above is not installed in `.agent/skills/` and is not in `.agent/skill-library/MANIFEST.md`, read `.agent/skills/find-skills/SKILL.md` and follow its discovery methodology to search for a community equivalent before proceeding without it.
|
|
77
|
+
Read `.agent/skills/prd-templates/references/skill-loading-protocol.md` and follow the **Skill Loading Protocol** for the `write-fe-spec-classify` workflow. Load all categories listed in its table for this workflow, plus these bundled skills:
|
|
78
|
+
- `.agent/skills/error-handling-patterns/SKILL.md`
|
|
79
|
+
- `.agent/skills/testing-strategist/SKILL.md`
|
|
80
|
+
- `.agent/skills/technical-writer/SKILL.md`
|
|
87
81
|
|
|
88
82
|
### Ambiguity resolution
|
|
89
83
|
|
|
90
|
-
When writing the FE spec, if any requirement cannot be resolved from `ideation-index.md`, `architecture-design.md`, `data-placement-strategy.md`, or upstream IA/BE specs, **do not guess**.
|
|
84
|
+
When writing the FE spec, if any requirement cannot be resolved from `ideation-index.md`, `architecture-design.md`, `data-placement-strategy.md`, or upstream IA/BE specs, **do not guess**. Load and follow `.agent/skills/resolve-ambiguity/SKILL.md` to resolve it first.
|
|
91
85
|
|
|
92
86
|
## 4. Read source documents
|
|
93
87
|
|
|
@@ -27,7 +27,7 @@ Write the FE spec to `docs/plans/fe/`, update indexes, run quality checks, and p
|
|
|
27
27
|
|
|
28
28
|
Read .agent/skills/technical-writer/SKILL.md and follow its methodology.
|
|
29
29
|
Read .agent/skills/spec-writing/SKILL.md and follow its completeness testing and cross-reference checking methodology.
|
|
30
|
-
|
|
30
|
+
Load the Accessibility skill(s) from the cross-cutting section per the skill loading protocol (`.agent/skills/prd-templates/references/skill-loading-protocol.md`).
|
|
31
31
|
Read .agent/skills/testing-strategist/SKILL.md and follow its methodology.
|
|
32
32
|
|
|
33
33
|
**Naming convention**: Numbered prefix matching feature position + kebab-case name (e.g., `01-auth-ui.md`). Cross-cutting: `00-` prefix.
|