qfai 1.4.4 → 1.4.7
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 +64 -85
- package/assets/init/.qfai/README.md +12 -30
- package/assets/init/.qfai/assistant/agents/facilitator.md +1 -1
- package/assets/init/.qfai/assistant/agents/interviewer.md +1 -1
- package/assets/init/.qfai/assistant/agents/option-explorer.md +1 -1
- package/assets/init/.qfai/assistant/agents/oq-harvester.md +1 -1
- package/assets/init/.qfai/assistant/agents/requirements-analyst.md +1 -1
- package/assets/init/.qfai/assistant/agents/researcher.md +1 -1
- package/assets/init/.qfai/assistant/instructions/workflow.md +5 -5
- package/assets/init/.qfai/assistant/skills/qfai-atdd/SKILL.md +19 -0
- package/assets/init/.qfai/assistant/skills/qfai-configure/SKILL.md +19 -0
- package/assets/init/.qfai/assistant/skills/qfai-discuss/SKILL.md +24 -1
- package/assets/init/.qfai/assistant/skills/qfai-prototyping/SKILL.md +19 -0
- package/assets/init/.qfai/assistant/skills/qfai-require/SKILL.md +19 -0
- package/assets/init/.qfai/assistant/skills/qfai-sdd/SKILL.md +22 -0
- package/assets/init/.qfai/assistant/skills/qfai-tdd-green/SKILL.md +19 -0
- package/assets/init/.qfai/assistant/skills/qfai-tdd-red/SKILL.md +19 -0
- package/assets/init/.qfai/assistant/skills/qfai-tdd-refactor/SKILL.md +19 -0
- package/assets/init/.qfai/assistant/skills/qfai-verify/SKILL.md +19 -0
- package/dist/cli/index.cjs +12 -49
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.mjs +12 -49
- package/dist/cli/index.mjs.map +1 -1
- package/dist/index.cjs +7 -18
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +7 -18
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/assets/init/.qfai/assistant/skills/qfai-implement/SKILL.md +0 -204
- package/assets/init/.qfai/assistant/skills/qfai-pr/SKILL.md +0 -190
- package/assets/init/.qfai/assistant/skills/qfai-scenario-test/SKILL.md +0 -196
- package/assets/init/.qfai/assistant/skills/qfai-spec/SKILL.md +0 -146
- package/assets/init/.qfai/assistant/skills/qfai-unit-test/SKILL.md +0 -199
- package/assets/init/.qfai/discuss/DISCUSS-0001/00_Summary.md +0 -38
- package/assets/init/.qfai/discuss/DISCUSS-0001/01_Objective.md +0 -16
- package/assets/init/.qfai/discuss/DISCUSS-0001/02_Initiative.md +0 -16
- package/assets/init/.qfai/discuss/DISCUSS-0001/03_Capabilities.md +0 -17
- package/assets/init/.qfai/discuss/DISCUSS-0001/04_Business-flow.md +0 -29
- package/assets/init/.qfai/discuss/DISCUSS-0001/05_Policy.md +0 -28
- package/assets/init/.qfai/discuss/DISCUSS-0001/06_Stakeholders.md +0 -13
- package/assets/init/.qfai/discuss/DISCUSS-0001/07_Open-questions.md +0 -18
- package/assets/init/.qfai/discussions/README.md +0 -9
- package/assets/init/.qfai/require/REQUIRE-0001/00_Summary.md +0 -37
- package/assets/init/.qfai/require/REQUIRE-0001/01_Functional-requirements.md +0 -16
- package/assets/init/.qfai/require/REQUIRE-0001/02_Non-functional-requirements.md +0 -15
- package/assets/init/.qfai/require/REQUIRE-0001/03_Contracts-boundary.md +0 -19
- package/assets/init/.qfai/require/REQUIRE-0001/04_Data-and-glossary.md +0 -16
- package/assets/init/.qfai/require/REQUIRE-0001/05_Test-policy.md +0 -18
- package/assets/init/.qfai/require/REQUIRE-0001/06_Compliance-and-risk.md +0 -18
- package/assets/init/.qfai/require/REQUIRE-0001/07_Open-questions.md +0 -18
- package/assets/init/.qfai/require/actors.md +0 -10
- package/assets/init/.qfai/require/business-flows.md +0 -32
- package/assets/init/.qfai/require/glossary.md +0 -7
- package/assets/init/.qfai/require/require.md +0 -41
- package/assets/init/.qfai/specs/spec-0001/01_Spec.md +0 -24
- package/assets/init/.qfai/specs/spec-0001/02_Objective.md +0 -19
- package/assets/init/.qfai/specs/spec-0001/03_Initiative.md +0 -34
- package/assets/init/.qfai/specs/spec-0001/04_Capability.md +0 -13
- package/assets/init/.qfai/specs/spec-0001/05_Business-flow.feature +0 -13
- package/assets/init/.qfai/specs/spec-0001/06_User-stories.md +0 -8
- package/assets/init/.qfai/specs/spec-0001/07_Acceptance-criteria.md +0 -9
- package/assets/init/.qfai/specs/spec-0001/08_Business-rules.md +0 -9
- package/assets/init/.qfai/specs/spec-0001/09_Examples.feature +0 -20
- package/assets/init/.qfai/specs/spec-0001/10_Test-cases.md +0 -9
- package/assets/init/.qfai/specs/spec-0001/11_Contracts.md +0 -7
- package/assets/init/.qfai/specs/spec-0001/12_Glossary.md +0 -6
- package/assets/init/.qfai/specs/spec-0001/13_Constraints.md +0 -9
- package/assets/init/.qfai/specs/spec-0001/14_Decisions.md +0 -7
- package/assets/init/.qfai/specs/spec-0001/15_Open-questions.md +0 -22
- package/assets/init/.qfai/specs/spec-0001/16_Traceability-ledger.md +0 -7
- package/assets/init/.qfai/specs/spec-0001/17_Plan.md +0 -49
- package/assets/init/.qfai/specs/spec-0001/18_delta.md +0 -40
- package/assets/init/root/.claude/agents/README.md +0 -10
- package/assets/init/root/.claude/agents/architect-reviewer.md +0 -17
- package/assets/init/root/.claude/agents/architect.md +0 -17
- package/assets/init/root/.claude/agents/atdd-api-implementer.md +0 -17
- package/assets/init/root/.claude/agents/atdd-e2e-implementer.md +0 -17
- package/assets/init/root/.claude/agents/atdd-integration-implementer.md +0 -17
- package/assets/init/root/.claude/agents/backend-engineer.md +0 -17
- package/assets/init/root/.claude/agents/backend-reviewer.md +0 -17
- package/assets/init/root/.claude/agents/code-reviewer.md +0 -17
- package/assets/init/root/.claude/agents/contract-designer.md +0 -17
- package/assets/init/root/.claude/agents/coverage-planner.md +0 -17
- package/assets/init/root/.claude/agents/design-owner.md +0 -17
- package/assets/init/root/.claude/agents/design-review-lead.md +0 -17
- package/assets/init/root/.claude/agents/devops-ci-engineer.md +0 -17
- package/assets/init/root/.claude/agents/doc-steward.md +0 -17
- package/assets/init/root/.claude/agents/facilitator.md +0 -17
- package/assets/init/root/.claude/agents/frontend-engineer.md +0 -17
- package/assets/init/root/.claude/agents/frontend-reviewer.md +0 -17
- package/assets/init/root/.claude/agents/interviewer.md +0 -17
- package/assets/init/root/.claude/agents/option-explorer.md +0 -17
- package/assets/init/root/.claude/agents/option-reviewer.md +0 -17
- package/assets/init/root/.claude/agents/oq-harvester.md +0 -17
- package/assets/init/root/.claude/agents/oq-reviewer.md +0 -17
- package/assets/init/root/.claude/agents/orchestrator.md +0 -17
- package/assets/init/root/.claude/agents/planner.md +0 -17
- package/assets/init/root/.claude/agents/project-lead.md +0 -17
- package/assets/init/root/.claude/agents/qa-engineer.md +0 -17
- package/assets/init/root/.claude/agents/qa-gatekeeper.md +0 -17
- package/assets/init/root/.claude/agents/qa-lead.md +0 -17
- package/assets/init/root/.claude/agents/qa-reviewer.md +0 -17
- package/assets/init/root/.claude/agents/requirements-analyst.md +0 -17
- package/assets/init/root/.claude/agents/researcher.md +0 -17
- package/assets/init/root/.claude/agents/reviewer.md +0 -17
- package/assets/init/root/.claude/agents/runtime-gatekeeper.md +0 -17
- package/assets/init/root/.claude/agents/test-case-owner.md +0 -17
- package/assets/init/root/.claude/agents/test-engineer.md +0 -17
- package/assets/init/root/.claude/agents/test-volume-estimator.md +0 -17
- package/assets/init/root/.claude/agents/ui-ux-reviewer.md +0 -17
- package/assets/init/root/.claude/agents/unit-test-scope-enforcer.md +0 -17
- package/assets/init/root/.claude/skills/README.md +0 -11
- package/assets/init/root/.claude/skills/qfai-atdd/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-configure/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-discuss/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-implement/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-pr/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-prototyping/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-require/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-scenario-test/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-sdd/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-spec/SKILL.md +0 -55
- package/assets/init/root/.claude/skills/qfai-tdd-green/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-tdd-red/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-tdd-refactor/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-unit-test/SKILL.md +0 -52
- package/assets/init/root/.claude/skills/qfai-verify/SKILL.md +0 -52
- package/assets/init/root/.codex/README.md +0 -17
- package/assets/init/root/.codex/skills/qfai-atdd/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-configure/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-discuss/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-implement/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-pr/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-prototyping/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-require/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-scenario-test/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-sdd/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-spec/SKILL.md +0 -55
- package/assets/init/root/.codex/skills/qfai-tdd-green/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-tdd-red/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-tdd-refactor/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-unit-test/SKILL.md +0 -52
- package/assets/init/root/.codex/skills/qfai-verify/SKILL.md +0 -52
- package/assets/init/root/.github/PULL_REQUEST_TEMPLATE.md +0 -71
- package/assets/init/root/.github/agents/README.md +0 -10
- package/assets/init/root/.github/agents/architect-reviewer.agent.md +0 -17
- package/assets/init/root/.github/agents/architect.agent.md +0 -17
- package/assets/init/root/.github/agents/backend-engineer.agent.md +0 -17
- package/assets/init/root/.github/agents/backend-reviewer.agent.md +0 -17
- package/assets/init/root/.github/agents/code-reviewer.agent.md +0 -17
- package/assets/init/root/.github/agents/contract-designer.agent.md +0 -17
- package/assets/init/root/.github/agents/coverage-planner.agent.md +0 -17
- package/assets/init/root/.github/agents/design-owner.agent.md +0 -17
- package/assets/init/root/.github/agents/design-review-lead.agent.md +0 -17
- package/assets/init/root/.github/agents/devops-ci-engineer.agent.md +0 -17
- package/assets/init/root/.github/agents/facilitator.agent.md +0 -17
- package/assets/init/root/.github/agents/frontend-engineer.agent.md +0 -17
- package/assets/init/root/.github/agents/frontend-reviewer.agent.md +0 -17
- package/assets/init/root/.github/agents/interviewer.agent.md +0 -17
- package/assets/init/root/.github/agents/option-explorer.agent.md +0 -17
- package/assets/init/root/.github/agents/option-reviewer.agent.md +0 -17
- package/assets/init/root/.github/agents/oq-harvester.agent.md +0 -17
- package/assets/init/root/.github/agents/oq-reviewer.agent.md +0 -17
- package/assets/init/root/.github/agents/planner.agent.md +0 -17
- package/assets/init/root/.github/agents/project-lead.agent.md +0 -17
- package/assets/init/root/.github/agents/qa-engineer.agent.md +0 -17
- package/assets/init/root/.github/agents/qa-gatekeeper.agent.md +0 -17
- package/assets/init/root/.github/agents/qa-lead.agent.md +0 -17
- package/assets/init/root/.github/agents/qa-reviewer.agent.md +0 -17
- package/assets/init/root/.github/agents/requirements-analyst.agent.md +0 -17
- package/assets/init/root/.github/agents/runtime-gatekeeper.agent.md +0 -17
- package/assets/init/root/.github/agents/test-case-owner.agent.md +0 -17
- package/assets/init/root/.github/agents/test-engineer.agent.md +0 -17
- package/assets/init/root/.github/agents/ui-ux-reviewer.agent.md +0 -17
- package/assets/init/root/.github/agents/unit-test-scope-enforcer.agent.md +0 -17
- package/assets/init/root/.github/copilot-instructions.md +0 -15
- package/assets/init/root/.github/skills/README.md +0 -11
- package/assets/init/root/.github/skills/qfai-atdd/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-configure/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-discuss/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-implement/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-pr/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-prototyping/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-require/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-scenario-test/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-sdd/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-spec/SKILL.md +0 -55
- package/assets/init/root/.github/skills/qfai-tdd-green/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-tdd-red/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-tdd-refactor/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-unit-test/SKILL.md +0 -52
- package/assets/init/root/.github/skills/qfai-verify/SKILL.md +0 -52
- package/assets/init/root/.github/workflows/qfai.yml +0 -20
- /package/assets/init/.qfai/{contracts/api/api-0001-sample.yaml → assistant/skills/qfai-sdd/templates/contracts/api-contract.sample.yaml} +0 -0
- /package/assets/init/.qfai/{contracts/db/db-0001-sample.sql → assistant/skills/qfai-sdd/templates/contracts/db-contract.sample.sql} +0 -0
- /package/assets/init/.qfai/{contracts/ui/ui-0001-sample.yaml → assistant/skills/qfai-sdd/templates/contracts/ui-contract.sample.yaml} +0 -0
package/README.md
CHANGED
|
@@ -31,7 +31,7 @@ npx qfai report
|
|
|
31
31
|
## What you can do (CLI commands)
|
|
32
32
|
|
|
33
33
|
- `npx qfai init`
|
|
34
|
-
- Creates the QFAI workspace under `.qfai/` (requirements/specs/contracts/report) and installs the AI assistant kit (`assistant/` with skills, instructions, agents, and steering templates), plus
|
|
34
|
+
- Creates the QFAI workspace under `.qfai/` (requirements/specs/contracts/report) and installs the AI assistant kit (`assistant/` with skills, instructions, agents, and steering templates), plus `qfai.config.yaml`.
|
|
35
35
|
- `npx qfai validate`
|
|
36
36
|
- Validates specs/contracts/scenarios/traceability and writes `.qfai/report/validate.json`; use `--fail-on error` (or `--fail-on warning`) to turn it into a CI gate, and `--format github` to emit GitHub-friendly annotations. Use `--phase refinement` only for local refinement checks; CI should use default/full validation.
|
|
37
37
|
- `npx qfai report`
|
|
@@ -42,7 +42,7 @@ npx qfai report
|
|
|
42
42
|
## Operating model (skills-driven workflow)
|
|
43
43
|
|
|
44
44
|
QFAI assumes you operate the project primarily via prepared custom skills.
|
|
45
|
-
A custom skill is a reusable task instruction set for your AI coding agent
|
|
45
|
+
A custom skill is a reusable task instruction set for your AI coding agent.
|
|
46
46
|
The agent reads QFAI assets under `.qfai/assistant/` and produces or updates SDD/ATDD/TDD artifacts and code.
|
|
47
47
|
|
|
48
48
|
### Where the skills live
|
|
@@ -58,12 +58,12 @@ QFAI includes a small set of custom skills (stored under `.qfai/assistant/skills
|
|
|
58
58
|
- **qfai-discuss**: Turn an idea into clear requirements by discussing scope, constraints, risks, and open questions.
|
|
59
59
|
- **qfai-require**: Produce `.qfai/require/REQUIRE-XXXX/*` from your idea or discussion output.
|
|
60
60
|
- **qfai-sdd**: Produce/update the full spec pack (`01_Spec.md` to `18_delta.md`) in one workflow (Outline -> Slice -> Plan finalize -> Delta).
|
|
61
|
-
- **qfai-
|
|
62
|
-
- **qfai-
|
|
63
|
-
- **qfai-
|
|
64
|
-
- **qfai-
|
|
65
|
-
- **qfai-
|
|
66
|
-
- **qfai-
|
|
61
|
+
- **qfai-prototyping**: Build a contract-aligned skeleton implementation before deep coding.
|
|
62
|
+
- **qfai-atdd**: Implement acceptance tests driven by specs/scenarios.
|
|
63
|
+
- **qfai-tdd-red**: Add failing unit/component tests from the approved acceptance scenarios.
|
|
64
|
+
- **qfai-tdd-green**: Implement production code to satisfy failing tests.
|
|
65
|
+
- **qfai-tdd-refactor**: Refactor while keeping all tests green.
|
|
66
|
+
- **qfai-verify**: Run/interpret the local quality gates and produce a release-ready summary.
|
|
67
67
|
|
|
68
68
|
### Workflow sequence (example)
|
|
69
69
|
|
|
@@ -100,24 +100,39 @@ AG->>Q: Read .qfai/assistant/skills/qfai-sdd/SKILL.md
|
|
|
100
100
|
AG->>R: Create/refine spec pack (01..18) + contracts + 17_Plan.md
|
|
101
101
|
AG-->>U: SDD artifacts ready
|
|
102
102
|
|
|
103
|
-
U->>AG: Run /qfai-
|
|
104
|
-
AG->>Q: Read .qfai/assistant/skills/qfai-
|
|
103
|
+
U->>AG: Run /qfai-prototyping
|
|
104
|
+
AG->>Q: Read .qfai/assistant/skills/qfai-prototyping/SKILL.md
|
|
105
|
+
AG->>R: Build contract-aligned implementation skeleton
|
|
106
|
+
AG-->>U: Prototype ready
|
|
107
|
+
|
|
108
|
+
U->>AG: Run /qfai-atdd
|
|
109
|
+
AG->>Q: Read .qfai/assistant/skills/qfai-atdd/SKILL.md
|
|
105
110
|
AG->>R: Implement acceptance tests
|
|
106
|
-
AG-->>U:
|
|
111
|
+
AG-->>U: ATDD tests ready
|
|
107
112
|
|
|
108
|
-
U->>AG: Run /qfai-
|
|
109
|
-
AG->>Q: Read .qfai/assistant/skills/qfai-
|
|
110
|
-
AG->>R:
|
|
111
|
-
AG-->>U:
|
|
113
|
+
U->>AG: Run /qfai-tdd-red
|
|
114
|
+
AG->>Q: Read .qfai/assistant/skills/qfai-tdd-red/SKILL.md
|
|
115
|
+
AG->>R: Add failing unit/component tests
|
|
116
|
+
AG-->>U: RED state ready
|
|
112
117
|
|
|
113
|
-
U->>AG: Run /qfai-
|
|
114
|
-
AG->>Q: Read .qfai/assistant/skills/qfai-
|
|
118
|
+
U->>AG: Run /qfai-tdd-green
|
|
119
|
+
AG->>Q: Read .qfai/assistant/skills/qfai-tdd-green/SKILL.md
|
|
115
120
|
loop Implement and fix until green
|
|
116
121
|
AG->>R: Implement code changes
|
|
117
122
|
AG->>R: Run project tests locally
|
|
118
123
|
end
|
|
119
124
|
AG-->>U: Working implementation (quality gates passing)
|
|
120
125
|
|
|
126
|
+
U->>AG: Run /qfai-tdd-refactor
|
|
127
|
+
AG->>Q: Read .qfai/assistant/skills/qfai-tdd-refactor/SKILL.md
|
|
128
|
+
AG->>R: Refactor with tests green
|
|
129
|
+
AG-->>U: Refactor complete
|
|
130
|
+
|
|
131
|
+
U->>AG: Run /qfai-verify
|
|
132
|
+
AG->>Q: Read .qfai/assistant/skills/qfai-verify/SKILL.md
|
|
133
|
+
AG->>R: Run quality gates and summarize evidence
|
|
134
|
+
AG-->>U: Verification summary ready
|
|
135
|
+
|
|
121
136
|
U->>R: Run npx qfai validate
|
|
122
137
|
U->>R: Run npx qfai report
|
|
123
138
|
R-->>U: Traceability checks and report artifacts
|
|
@@ -126,6 +141,7 @@ R-->>U: Traceability checks and report artifacts
|
|
|
126
141
|
Operational notes.
|
|
127
142
|
|
|
128
143
|
- Each custom skill must output in the user’s language (absolute requirement).
|
|
144
|
+
- Each custom skill must end with a completion message that enumerates all available next actions and clearly states what to do for each option.
|
|
129
145
|
- Except `qfai-discuss`, each skill must analyze the project context (architecture, tech stack, test framework, repo structure) before generating artifacts or code.
|
|
130
146
|
- Skills should delegate work to multiple role-based sub-agents (Planner, Architect, Contract Designer, QA, Code Reviewer, etc.) to emulate a real delivery flow.
|
|
131
147
|
- Change classification (Primary/Tags) is required in `18_delta.md` and recommended in PRs. See `.qfai/assistant/instructions/change-classification.md`.
|
|
@@ -191,7 +207,7 @@ flowchart LR
|
|
|
191
207
|
- Contracts SSOT: `.qfai/contracts/**`
|
|
192
208
|
- Report outputs (`.qfai/report/**`) are derived artifacts and not SSOT.
|
|
193
209
|
|
|
194
|
-
## Minimal tutorial (v1.4.
|
|
210
|
+
## Minimal tutorial (v1.4.7)
|
|
195
211
|
|
|
196
212
|
1. `npx qfai init`
|
|
197
213
|
2. Run `/qfai-discuss` to structure scope and open questions.
|
|
@@ -215,17 +231,22 @@ Release gate behavior:
|
|
|
215
231
|
- Q: release_candidate validation fails due open questions.
|
|
216
232
|
- A: In `15_Open-questions.md`, change `status: open` to `resolved` or `deferred` and keep evidence.
|
|
217
233
|
|
|
218
|
-
## Continuous integration
|
|
234
|
+
## Continuous integration
|
|
219
235
|
|
|
220
|
-
|
|
236
|
+
QFAI v1.4.7 no longer generates `.github/**` assets.
|
|
237
|
+
Configure CI in your own platform and run:
|
|
221
238
|
|
|
222
|
-
|
|
239
|
+
```bash
|
|
240
|
+
pnpm ci:local
|
|
241
|
+
# or, minimum gate only:
|
|
242
|
+
npx qfai validate --fail-on error
|
|
243
|
+
```
|
|
223
244
|
|
|
224
|
-
|
|
245
|
+
Recommended baseline.
|
|
225
246
|
|
|
226
|
-
- The generated workflow is npm-oriented (`npm ci`); if your repository uses pnpm/yarn/bun, replace the install/cache steps accordingly.
|
|
227
|
-
- The default validate gate fails only on `error`; use `--fail-on warning` or `--strict` if you want a stricter gate.
|
|
228
247
|
- Keep CI on default/full validation (`qfai validate --fail-on error`); do not use `--phase refinement` in CI.
|
|
248
|
+
- Add a report step (`npx qfai report`) when you need a human-readable artifact.
|
|
249
|
+
- Tune traceability globs in `qfai.config.yaml` to match your test layout.
|
|
229
250
|
|
|
230
251
|
Waiver policy.
|
|
231
252
|
|
|
@@ -236,9 +257,8 @@ Waiver policy.
|
|
|
236
257
|
|
|
237
258
|
Typical customizations.
|
|
238
259
|
|
|
239
|
-
- Add a second job to generate `report.md` from the uploaded `validate.json`.
|
|
240
260
|
- Add a `doctor` step before validate if you want to fail fast on path/glob/config issues.
|
|
241
|
-
-
|
|
261
|
+
- Publish `.qfai/report/validate.json` and `report.md` as CI artifacts.
|
|
242
262
|
|
|
243
263
|
## Generated structure
|
|
244
264
|
|
|
@@ -246,50 +266,6 @@ Typical customizations.
|
|
|
246
266
|
|
|
247
267
|
```text
|
|
248
268
|
.
|
|
249
|
-
├── .claude
|
|
250
|
-
│ └── skills
|
|
251
|
-
│ ├── qfai-configure
|
|
252
|
-
│ │ └── SKILL.md
|
|
253
|
-
│ ├── qfai-discuss
|
|
254
|
-
│ │ └── SKILL.md
|
|
255
|
-
│ ├── qfai-require
|
|
256
|
-
│ │ └── SKILL.md
|
|
257
|
-
│ └── ...
|
|
258
|
-
├── .codex
|
|
259
|
-
│ └── skills
|
|
260
|
-
│ ├── qfai-configure
|
|
261
|
-
│ │ └── SKILL.md
|
|
262
|
-
│ ├── qfai-discuss
|
|
263
|
-
│ │ └── SKILL.md
|
|
264
|
-
│ ├── qfai-implement
|
|
265
|
-
│ │ └── SKILL.md
|
|
266
|
-
│ ├── qfai-pr
|
|
267
|
-
│ │ └── SKILL.md
|
|
268
|
-
│ ├── qfai-require
|
|
269
|
-
│ │ └── SKILL.md
|
|
270
|
-
│ ├── qfai-scenario-test
|
|
271
|
-
│ │ └── SKILL.md
|
|
272
|
-
│ ├── qfai-sdd
|
|
273
|
-
│ │ └── SKILL.md
|
|
274
|
-
│ ├── qfai-spec
|
|
275
|
-
│ │ └── SKILL.md
|
|
276
|
-
│ ├── qfai-unit-test
|
|
277
|
-
│ │ └── SKILL.md
|
|
278
|
-
│ └── qfai-verify
|
|
279
|
-
│ └── SKILL.md
|
|
280
|
-
├── .github
|
|
281
|
-
│ ├── skills
|
|
282
|
-
│ │ ├── qfai-configure
|
|
283
|
-
│ │ │ └── SKILL.md
|
|
284
|
-
│ │ ├── qfai-discuss
|
|
285
|
-
│ │ │ └── SKILL.md
|
|
286
|
-
│ │ ├── qfai-require
|
|
287
|
-
│ │ │ └── SKILL.md
|
|
288
|
-
│ │ └── ...
|
|
289
|
-
│ ├── workflows
|
|
290
|
-
│ │ └── qfai.yml
|
|
291
|
-
│ ├── copilot-instructions.md
|
|
292
|
-
│ └── PULL_REQUEST_TEMPLATE.md
|
|
293
269
|
├── .qfai
|
|
294
270
|
│ ├── assistant
|
|
295
271
|
│ │ ├── agents
|
|
@@ -319,9 +295,22 @@ Typical customizations.
|
|
|
319
295
|
│ │ │ │ └── SKILL.md
|
|
320
296
|
│ │ │ ├── qfai-discuss
|
|
321
297
|
│ │ │ │ └── SKILL.md
|
|
298
|
+
│ │ │ ├── qfai-prototyping
|
|
299
|
+
│ │ │ │ └── SKILL.md
|
|
322
300
|
│ │ │ ├── qfai-require
|
|
323
301
|
│ │ │ │ └── SKILL.md
|
|
324
|
-
│ │ │
|
|
302
|
+
│ │ │ ├── qfai-sdd
|
|
303
|
+
│ │ │ │ └── SKILL.md
|
|
304
|
+
│ │ │ ├── qfai-atdd
|
|
305
|
+
│ │ │ │ └── SKILL.md
|
|
306
|
+
│ │ │ ├── qfai-tdd-red
|
|
307
|
+
│ │ │ │ └── SKILL.md
|
|
308
|
+
│ │ │ ├── qfai-tdd-green
|
|
309
|
+
│ │ │ │ └── SKILL.md
|
|
310
|
+
│ │ │ ├── qfai-tdd-refactor
|
|
311
|
+
│ │ │ │ └── SKILL.md
|
|
312
|
+
│ │ │ └── qfai-verify
|
|
313
|
+
│ │ │ └── SKILL.md
|
|
325
314
|
│ │ ├── skills.local
|
|
326
315
|
│ │ │ └── README.md
|
|
327
316
|
│ │ ├── steering
|
|
@@ -352,27 +341,17 @@ Typical customizations.
|
|
|
352
341
|
│ │ │ ├── 00_Summary.md
|
|
353
342
|
│ │ │ ├── ...
|
|
354
343
|
│ │ │ └── 07_Open-questions.md
|
|
355
|
-
│ │
|
|
356
|
-
│ │ ├── actors.md # legacy compatibility
|
|
357
|
-
│ │ ├── business-flows.md # legacy compatibility
|
|
358
|
-
│ │ ├── require.md # legacy compatibility
|
|
359
|
-
│ │ └── open-questions.md # legacy compatibility
|
|
344
|
+
│ │ └── README.md
|
|
360
345
|
│ ├── specs
|
|
361
346
|
│ │ └── README.md
|
|
362
347
|
│ └── README.md
|
|
363
348
|
└── qfai.config.yaml
|
|
364
349
|
```
|
|
365
350
|
|
|
366
|
-
## Agent integrations
|
|
367
|
-
|
|
368
|
-
`npx qfai init` also installs lightweight integration stubs so your AI coding agent can invoke QFAI custom skills directly.
|
|
369
|
-
|
|
370
|
-
- **GitHub Copilot Agent skills**: `.github/skills/*/SKILL.md`.
|
|
371
|
-
- **GitHub Copilot repository instructions**: `.github/copilot-instructions.md` (baseline behavior guidance for Copilot in this repo).
|
|
372
|
-
- **Claude Code skills**: `.claude/skills/*/SKILL.md`.
|
|
373
|
-
- **OpenAI Codex skills**: `.codex/skills/*/SKILL.md` (invoke as Codex skills; each skill points to the canonical QFAI skill doc).
|
|
351
|
+
## Agent integrations
|
|
374
352
|
|
|
375
|
-
|
|
353
|
+
`npx qfai init` installs only canonical skills under `.qfai/assistant/skills/**`.
|
|
354
|
+
If your toolchain needs wrapper files, manage them in your own repository convention and keep `.qfai/assistant/skills/**` as SSOT.
|
|
376
355
|
|
|
377
356
|
## Contributing (for QFAI maintainers)
|
|
378
357
|
|
|
@@ -31,12 +31,6 @@ flowchart TD
|
|
|
31
31
|
.qfai/
|
|
32
32
|
├── README.md
|
|
33
33
|
├── discuss/
|
|
34
|
-
│ ├── README.md
|
|
35
|
-
│ └── DISCUSS-0001/
|
|
36
|
-
│ ├── 00_Summary.md
|
|
37
|
-
│ ├── ...
|
|
38
|
-
│ └── 07_Open-questions.md
|
|
39
|
-
├── discussions/ # legacy compatibility
|
|
40
34
|
│ └── README.md
|
|
41
35
|
├── assistant/
|
|
42
36
|
│ ├── skills/ # canonical skills (SSOT)
|
|
@@ -45,37 +39,20 @@ flowchart TD
|
|
|
45
39
|
│ ├── steering/ # project steering inputs
|
|
46
40
|
│ └── instructions/ # workflow and guardrail docs
|
|
47
41
|
├── require/
|
|
48
|
-
│
|
|
49
|
-
│ ├── REQUIRE-0001/
|
|
50
|
-
│ │ ├── 00_Summary.md
|
|
51
|
-
│ │ ├── ...
|
|
52
|
-
│ │ └── 07_Open-questions.md
|
|
53
|
-
│ ├── glossary.md # legacy compatibility
|
|
54
|
-
│ ├── actors.md # legacy compatibility
|
|
55
|
-
│ ├── business-flows.md # legacy compatibility
|
|
56
|
-
│ ├── require.md # legacy compatibility
|
|
57
|
-
│ └── open-questions.md # legacy compatibility
|
|
42
|
+
│ └── README.md
|
|
58
43
|
├── contracts/
|
|
59
44
|
│ ├── README.md
|
|
60
45
|
│ ├── api/
|
|
61
|
-
│ │
|
|
62
|
-
│ │ └── api-0001-sample.yaml
|
|
46
|
+
│ │ └── README.md
|
|
63
47
|
│ ├── db/
|
|
64
|
-
│ │
|
|
65
|
-
│ │ └── db-0001-sample.sql
|
|
48
|
+
│ │ └── README.md
|
|
66
49
|
│ └── ui/
|
|
67
|
-
│
|
|
68
|
-
│ └── ui-0001-sample.yaml
|
|
50
|
+
│ └── README.md
|
|
69
51
|
├── specs/
|
|
70
|
-
│
|
|
71
|
-
│ └── spec-0001/
|
|
72
|
-
│ ├── 01_Spec.md
|
|
73
|
-
│ ├── 02_Objective.md
|
|
74
|
-
│ ├── ...
|
|
75
|
-
│ ├── 17_Plan.md
|
|
76
|
-
│ └── 18_delta.md
|
|
52
|
+
│ └── README.md
|
|
77
53
|
└── evidence/
|
|
78
54
|
├── README.md
|
|
55
|
+
├── .gitignore
|
|
79
56
|
└── <skill>-<run>.md
|
|
80
57
|
```
|
|
81
58
|
|
|
@@ -108,10 +85,15 @@ It is useful for local review but should not pollute version control.
|
|
|
108
85
|
- Traceability links are written in `16_Traceability-ledger.md`.
|
|
109
86
|
- Derived outputs under `.qfai/report/**` are non-SSOT.
|
|
110
87
|
|
|
88
|
+
### R5. init is an empty scaffold
|
|
89
|
+
|
|
90
|
+
- `qfai init` creates README-centric directories for `discuss`, `require`, `contracts`, and `specs`.
|
|
91
|
+
- Sample artifacts are provided under skill templates (for example, `assistant/skills/qfai-sdd/templates/contracts/`).
|
|
92
|
+
|
|
111
93
|
## Skills (SSOT)
|
|
112
94
|
|
|
113
95
|
`assistant/skills/**` is the canonical source.
|
|
114
|
-
|
|
96
|
+
Invoke canonical skills from this tree directly.
|
|
115
97
|
|
|
116
98
|
## Where to look next
|
|
117
99
|
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
- .qfai/assistant/instructions/\*
|
|
11
11
|
- .qfai/assistant/steering/\*
|
|
12
12
|
- .qfai/specs/spec-\*/delta.md (Decision Records; check rejected)
|
|
13
|
-
- Existing discussion records under `.qfai/
|
|
13
|
+
- Existing discussion records under `.qfai/discuss/`
|
|
14
14
|
- .qfai/require/REQUIRE-XXXX/\* (preferred if present)
|
|
15
15
|
- .qfai/require/require.md (legacy compatibility)
|
|
16
16
|
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
- .qfai/assistant/instructions/\*
|
|
10
10
|
- .qfai/assistant/steering/\*
|
|
11
11
|
- .qfai/specs/spec-\*/delta.md (Decision Records; check rejected)
|
|
12
|
-
- Existing discussion records under `.qfai/
|
|
12
|
+
- Existing discussion records under `.qfai/discuss/`
|
|
13
13
|
- .qfai/require/REQUIRE-XXXX/\* (preferred if present)
|
|
14
14
|
- .qfai/require/require.md (legacy compatibility)
|
|
15
15
|
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
- .qfai/specs/spec-\*/delta.md (Decision Records; check rejected)
|
|
12
12
|
- .qfai/require/REQUIRE-XXXX/\* (preferred if present)
|
|
13
13
|
- .qfai/require/require.md (legacy compatibility)
|
|
14
|
-
- Discussion records under `.qfai/
|
|
14
|
+
- Discussion records under `.qfai/discuss/`
|
|
15
15
|
- .qfai/specs/spec-\*/spec.md (if available)
|
|
16
16
|
|
|
17
17
|
## Deliverables (MANDATORY)
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
- .qfai/assistant/steering/\*
|
|
11
11
|
- .qfai/specs/spec-\*/delta.md (Decision Records; check rejected)
|
|
12
12
|
- User-provided idea/problem statement
|
|
13
|
-
- Existing discussion records under `.qfai/
|
|
13
|
+
- Existing discussion records under `.qfai/discuss/`
|
|
14
14
|
|
|
15
15
|
## Deliverables (MANDATORY)
|
|
16
16
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
QFAI standardizes work into a fixed pipeline:
|
|
4
4
|
|
|
5
|
-
**SDD → ATDD → TDD →
|
|
5
|
+
**SDD → ATDD → TDD → Verification**
|
|
6
6
|
|
|
7
7
|
This file defines the canonical stages and delegation expectations.
|
|
8
8
|
|
|
@@ -50,14 +50,14 @@ Do not proceed without a declared Change Type.
|
|
|
50
50
|
1. Discussion (optional): clarify idea → requirement seed
|
|
51
51
|
2. Requirements: requirements document in `.qfai/require/`
|
|
52
52
|
3. Specification (SDD): `.qfai/specs/spec-XXXX/`
|
|
53
|
-
4.
|
|
54
|
-
5.
|
|
55
|
-
6.
|
|
53
|
+
4. Prototyping (optional): contract-aligned implementation skeleton
|
|
54
|
+
5. Scenario tests (ATDD): runnable scenario tests derived from `scenario.feature`
|
|
55
|
+
6. TDD: red/green/refactor loop enforcing spec + tests
|
|
56
56
|
7. Verify: run quality gates and provide evidence
|
|
57
57
|
|
|
58
58
|
### Stage 0 — Steering refresh contract (mandatory)
|
|
59
59
|
|
|
60
|
-
At the beginning of each stage (`qfai-discuss`, `qfai-require`, `qfai-sdd`, `qfai-
|
|
60
|
+
At the beginning of each stage (`qfai-discuss`, `qfai-require`, `qfai-sdd`, `qfai-prototyping`, `qfai-atdd`, `qfai-tdd-*`, `qfai-verify`):
|
|
61
61
|
|
|
62
62
|
1. Check these steering files:
|
|
63
63
|
- `.qfai/assistant/steering/manifest.md`
|
|
@@ -692,3 +692,22 @@ When you declare DONE, include:
|
|
|
692
692
|
- [ ] All mandatory checks were executed and recorded.
|
|
693
693
|
- [ ] No untracked gaps remain (or they are explicitly documented).
|
|
694
694
|
- [ ] Completion approved by a reviewer who did not implement the tests.
|
|
695
|
+
|
|
696
|
+
## Completion Checklist (MUST)
|
|
697
|
+
|
|
698
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
699
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
700
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
701
|
+
- [ ] The completion message was presented to the user.
|
|
702
|
+
- [ ] Next actions were enumerated for all available options.
|
|
703
|
+
|
|
704
|
+
## Completion Message & Next Actions (MUST)
|
|
705
|
+
|
|
706
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
707
|
+
|
|
708
|
+
- Proceed (recommended): `/qfai-tdd-red`.
|
|
709
|
+
Action: derive unit/component RED tests from acceptance scenarios.
|
|
710
|
+
- Acceptance tests need fixes: rerun `/qfai-atdd`.
|
|
711
|
+
Action: correct scenario coverage gaps and rerun test evidence.
|
|
712
|
+
- Implementation phase: `/qfai-tdd-green`.
|
|
713
|
+
Action: implement code to satisfy failing tests.
|
|
@@ -452,3 +452,22 @@ When you declare DONE, include:
|
|
|
452
452
|
- [ ] All mandatory checks were executed and recorded.
|
|
453
453
|
- [ ] No untracked gaps remain (or they are explicitly documented).
|
|
454
454
|
- [ ] Completion approved by a reviewer who did not modify the config.
|
|
455
|
+
|
|
456
|
+
## Completion Checklist (MUST)
|
|
457
|
+
|
|
458
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
459
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
460
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
461
|
+
- [ ] The completion message was presented to the user.
|
|
462
|
+
- [ ] Next actions were enumerated for all available options.
|
|
463
|
+
|
|
464
|
+
## Completion Message & Next Actions (MUST)
|
|
465
|
+
|
|
466
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
467
|
+
|
|
468
|
+
- Proceed (recommended): `/qfai-require`.
|
|
469
|
+
Action: run it to formalize requirements from the configured project context.
|
|
470
|
+
- Requirements are still unclear: `/qfai-discuss`.
|
|
471
|
+
Action: collect missing scope, constraints, and assumptions first.
|
|
472
|
+
- Configuration needs refinement: rerun `/qfai-configure`.
|
|
473
|
+
Action: provide additional include/exclude evidence and update `qfai.config.yaml`.
|
|
@@ -29,7 +29,6 @@ mode: interactive-by-default
|
|
|
29
29
|
- `.qfai/contracts/**/README.md`
|
|
30
30
|
- `.qfai/evidence/README.md`
|
|
31
31
|
- Keep templates as source of truth; do not invent alternate sections.
|
|
32
|
-
- Legacy path `.qfai/discussions/discuss-XXXX.md` is deprecated.
|
|
33
32
|
|
|
34
33
|
## Sub-agent Delegation (MANDATORY)
|
|
35
34
|
|
|
@@ -207,3 +206,27 @@ When done, report:
|
|
|
207
206
|
- [ ] No lower-layer IDs (`AC/BR/EX/TC`) were written in discuss outputs.
|
|
208
207
|
- [ ] Evidence file exists and includes Work Orders Summary + Reviewer result.
|
|
209
208
|
- [ ] Reviewer returned `PASS`.
|
|
209
|
+
|
|
210
|
+
## Completion Checklist (MUST)
|
|
211
|
+
|
|
212
|
+
- [ ] Core interview set is complete.
|
|
213
|
+
- [ ] Optional deep dive was executed only when triggered (or explicitly marked as not needed).
|
|
214
|
+
- [ ] Unresolved items were logged to `07_Open-questions.md`.
|
|
215
|
+
- [ ] Discuss deliverables `00..07` were produced.
|
|
216
|
+
- [ ] The `/qfai-require` handoff sentence was shown as the final line in the user's language.
|
|
217
|
+
|
|
218
|
+
## Completion Message & Next Actions (MUST)
|
|
219
|
+
|
|
220
|
+
You MUST end the user-facing output with a handoff sentence to `/qfai-require` in the active user language.
|
|
221
|
+
|
|
222
|
+
- Japanese output (use this exact sentence):
|
|
223
|
+
質問が完了しました。他に要望などがあればご提示ください。問題なければ『/qfai-require』と入力してください。
|
|
224
|
+
- Non-Japanese output:
|
|
225
|
+
Use the same meaning in the user's language, and keep `/qfai-require` as a literal command token.
|
|
226
|
+
|
|
227
|
+
- Proceed (recommended): `/qfai-require`.
|
|
228
|
+
Action: run it to convert interview outcomes into structured requirements.
|
|
229
|
+
- Additional requests exist:
|
|
230
|
+
Action: provide the new requests, assumptions, and constraints as a bullet list.
|
|
231
|
+
- Interview needs correction: rerun `/qfai-discuss`.
|
|
232
|
+
Action: add missing main flow, branch flow, and exception flow details before rerun.
|
|
@@ -364,3 +364,22 @@ When you declare DONE, include:
|
|
|
364
364
|
- [ ] Manual verification log is complete.
|
|
365
365
|
- [ ] No test automation was added.
|
|
366
366
|
- [ ] Completion approved by a reviewer who did not implement the code.
|
|
367
|
+
|
|
368
|
+
## Completion Checklist (MUST)
|
|
369
|
+
|
|
370
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
371
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
372
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
373
|
+
- [ ] The completion message was presented to the user.
|
|
374
|
+
- [ ] Next actions were enumerated for all available options.
|
|
375
|
+
|
|
376
|
+
## Completion Message & Next Actions (MUST)
|
|
377
|
+
|
|
378
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
379
|
+
|
|
380
|
+
- Proceed (recommended): `/qfai-atdd`.
|
|
381
|
+
Action: create acceptance tests against the prototype behavior.
|
|
382
|
+
- Unit-first alternative: `/qfai-tdd-red`.
|
|
383
|
+
Action: author failing unit/component tests for critical slices.
|
|
384
|
+
- Prototype behavior is insufficient: rerun `/qfai-prototyping`.
|
|
385
|
+
Action: refine contract coverage and runtime interaction evidence.
|
|
@@ -201,3 +201,22 @@ When done, report:
|
|
|
201
201
|
- [ ] All `TBD` items are mirrored in `07_Open-questions.md`.
|
|
202
202
|
- [ ] Evidence file exists and includes Work Orders Summary + Reviewer result.
|
|
203
203
|
- [ ] Reviewer returned `PASS`.
|
|
204
|
+
|
|
205
|
+
## Completion Checklist (MUST)
|
|
206
|
+
|
|
207
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
208
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
209
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
210
|
+
- [ ] The completion message was presented to the user.
|
|
211
|
+
- [ ] Next actions were enumerated for all available options.
|
|
212
|
+
|
|
213
|
+
## Completion Message & Next Actions (MUST)
|
|
214
|
+
|
|
215
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
216
|
+
|
|
217
|
+
- Proceed (recommended): `/qfai-sdd`.
|
|
218
|
+
Action: generate the spec pack (`01..18`) from finalized requirements.
|
|
219
|
+
- Upstream assumptions need review: `/qfai-discuss`.
|
|
220
|
+
Action: revisit unresolved business context and constraints first.
|
|
221
|
+
- Requirement details are incomplete: rerun `/qfai-require`.
|
|
222
|
+
Action: add missing acceptance criteria, contracts, and OQ updates.
|
|
@@ -161,6 +161,7 @@ Rules:
|
|
|
161
161
|
- This is the unified SDD skill. Do not split work into deprecated refinement/planning skills.
|
|
162
162
|
- Use only skill-local templates:
|
|
163
163
|
- `.qfai/assistant/skills/qfai-sdd/templates/spec-pack/`
|
|
164
|
+
- `.qfai/assistant/skills/qfai-sdd/templates/contracts/`
|
|
164
165
|
- Scenario specification in `09_Examples.feature` is strict:
|
|
165
166
|
- exactly one `Feature:`
|
|
166
167
|
- one or more tagged `Scenario:`
|
|
@@ -330,3 +331,24 @@ When declaring DONE, include:
|
|
|
330
331
|
- [ ] Quality gate checks are recorded in evidence.
|
|
331
332
|
- [ ] Evidence file exists and is complete.
|
|
332
333
|
- [ ] Reviewer approval is recorded.
|
|
334
|
+
|
|
335
|
+
## Completion Checklist (MUST)
|
|
336
|
+
|
|
337
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
338
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
339
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
340
|
+
- [ ] The completion message was presented to the user.
|
|
341
|
+
- [ ] Next actions were enumerated for all available options.
|
|
342
|
+
|
|
343
|
+
## Completion Message & Next Actions (MUST)
|
|
344
|
+
|
|
345
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
346
|
+
|
|
347
|
+
- Proceed (recommended): `/qfai-prototyping`.
|
|
348
|
+
Action: build contract-aligned skeleton implementation before deeper coding.
|
|
349
|
+
- Test-first path: `/qfai-atdd`.
|
|
350
|
+
Action: implement acceptance tests from the finalized spec pack.
|
|
351
|
+
- Want to add contracts:
|
|
352
|
+
Action: create files under `.qfai/contracts/(api|db|ui)/` from `templates/contracts/*` and declare `QFAI-CONTRACT-ID`.
|
|
353
|
+
- Spec pack needs correction: rerun `/qfai-sdd`.
|
|
354
|
+
Action: fix `01..18` consistency and decision records, then regenerate evidence.
|
|
@@ -719,3 +719,22 @@ When you declare DONE, include:
|
|
|
719
719
|
- [ ] All mandatory checks were executed and recorded.
|
|
720
720
|
- [ ] No untracked gaps remain (or they are explicitly documented).
|
|
721
721
|
- [ ] Completion approved by a reviewer who did not implement the code.
|
|
722
|
+
|
|
723
|
+
## Completion Checklist (MUST)
|
|
724
|
+
|
|
725
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
726
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
727
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
728
|
+
- [ ] The completion message was presented to the user.
|
|
729
|
+
- [ ] Next actions were enumerated for all available options.
|
|
730
|
+
|
|
731
|
+
## Completion Message & Next Actions (MUST)
|
|
732
|
+
|
|
733
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
734
|
+
|
|
735
|
+
- Proceed (recommended): `/qfai-tdd-refactor`.
|
|
736
|
+
Action: refactor safely while keeping all tests green.
|
|
737
|
+
- Additional RED cases are needed: `/qfai-tdd-red`.
|
|
738
|
+
Action: add missing failing tests before further implementation.
|
|
739
|
+
- Verify gates now: `/qfai-verify`.
|
|
740
|
+
Action: run format/lint/types/tests and record evidence.
|
|
@@ -646,3 +646,22 @@ When you declare DONE, include:
|
|
|
646
646
|
- [ ] All mandatory checks were executed and recorded.
|
|
647
647
|
- [ ] No untracked gaps remain (or they are explicitly documented).
|
|
648
648
|
- [ ] Completion approved by a reviewer who did not implement the tests.
|
|
649
|
+
|
|
650
|
+
## Completion Checklist (MUST)
|
|
651
|
+
|
|
652
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
653
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
654
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
655
|
+
- [ ] The completion message was presented to the user.
|
|
656
|
+
- [ ] Next actions were enumerated for all available options.
|
|
657
|
+
|
|
658
|
+
## Completion Message & Next Actions (MUST)
|
|
659
|
+
|
|
660
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
661
|
+
|
|
662
|
+
- Proceed (recommended): `/qfai-tdd-green`.
|
|
663
|
+
Action: implement the minimal production code required to pass tests.
|
|
664
|
+
- RED evidence is insufficient: rerun `/qfai-tdd-red`.
|
|
665
|
+
Action: strengthen failing-test quality and scope guardrails.
|
|
666
|
+
- Acceptance coverage needs updates: `/qfai-atdd`.
|
|
667
|
+
Action: align acceptance scenarios before continuing implementation.
|
|
@@ -644,3 +644,22 @@ When you declare DONE, include:
|
|
|
644
644
|
- [ ] All mandatory checks were executed and recorded.
|
|
645
645
|
- [ ] No untracked gaps remain (or they are explicitly documented).
|
|
646
646
|
- [ ] Completion approved by a reviewer who did not implement the refactor.
|
|
647
|
+
|
|
648
|
+
## Completion Checklist (MUST)
|
|
649
|
+
|
|
650
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
651
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
652
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
653
|
+
- [ ] The completion message was presented to the user.
|
|
654
|
+
- [ ] Next actions were enumerated for all available options.
|
|
655
|
+
|
|
656
|
+
## Completion Message & Next Actions (MUST)
|
|
657
|
+
|
|
658
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
659
|
+
|
|
660
|
+
- Proceed (recommended): `/qfai-verify`.
|
|
661
|
+
Action: run all required gates and confirm PASS with evidence.
|
|
662
|
+
- Regression was introduced: `/qfai-tdd-green`.
|
|
663
|
+
Action: restore behavior and re-pass the failing tests.
|
|
664
|
+
- Refactor scope remains: rerun `/qfai-tdd-refactor`.
|
|
665
|
+
Action: continue incremental cleanup with gate checks each step.
|