qfai 1.4.4 → 1.4.6
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 +2 -1
- package/assets/init/.qfai/README.md +11 -29
- 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/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-implement/SKILL.md +19 -0
- package/assets/init/.qfai/assistant/skills/qfai-pr/SKILL.md +19 -0
- 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-scenario-test/SKILL.md +19 -0
- package/assets/init/.qfai/assistant/skills/qfai-sdd/SKILL.md +19 -0
- package/assets/init/.qfai/assistant/skills/qfai-spec/SKILL.md +20 -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-unit-test/SKILL.md +19 -0
- package/assets/init/.qfai/assistant/skills/qfai-verify/SKILL.md +19 -0
- package/dist/cli/index.cjs +7 -18
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.mjs +7 -18
- 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/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/.qfai/{contracts/api → assistant/skills/qfai-spec/templates/contracts}/api-0001-sample.yaml +0 -0
- /package/assets/init/.qfai/{contracts/db → assistant/skills/qfai-spec/templates/contracts}/db-0001-sample.sql +0 -0
- /package/assets/init/.qfai/{contracts/ui → assistant/skills/qfai-spec/templates/contracts}/ui-0001-sample.yaml +0 -0
package/README.md
CHANGED
|
@@ -126,6 +126,7 @@ R-->>U: Traceability checks and report artifacts
|
|
|
126
126
|
Operational notes.
|
|
127
127
|
|
|
128
128
|
- Each custom skill must output in the user’s language (absolute requirement).
|
|
129
|
+
- 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
130
|
- Except `qfai-discuss`, each skill must analyze the project context (architecture, tech stack, test framework, repo structure) before generating artifacts or code.
|
|
130
131
|
- 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
132
|
- Change classification (Primary/Tags) is required in `18_delta.md` and recommended in PRs. See `.qfai/assistant/instructions/change-classification.md`.
|
|
@@ -191,7 +192,7 @@ flowchart LR
|
|
|
191
192
|
- Contracts SSOT: `.qfai/contracts/**`
|
|
192
193
|
- Report outputs (`.qfai/report/**`) are derived artifacts and not SSOT.
|
|
193
194
|
|
|
194
|
-
## Minimal tutorial (v1.4.
|
|
195
|
+
## Minimal tutorial (v1.4.6)
|
|
195
196
|
|
|
196
197
|
1. `npx qfai init`
|
|
197
198
|
2. Run `/qfai-discuss` to structure scope and open questions.
|
|
@@ -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,6 +85,11 @@ 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-spec/templates/contracts/`).
|
|
92
|
+
|
|
111
93
|
## Skills (SSOT)
|
|
112
94
|
|
|
113
95
|
`assistant/skills/**` is the canonical source.
|
|
@@ -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
|
|
|
@@ -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.
|
|
@@ -202,3 +202,22 @@ Implement production code so RED tests pass and quality gates are green.
|
|
|
202
202
|
- [ ] Followed `.qfai/assistant/skills/qfai-tdd-green/SKILL.md` without omissions.
|
|
203
203
|
- [ ] Evidence files exist with command outputs.
|
|
204
204
|
- [ ] Reviewer approval recorded.
|
|
205
|
+
|
|
206
|
+
## Completion Checklist (MUST)
|
|
207
|
+
|
|
208
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
209
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
210
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
211
|
+
- [ ] The completion message was presented to the user.
|
|
212
|
+
- [ ] Next actions were enumerated for all available options.
|
|
213
|
+
|
|
214
|
+
## Completion Message & Next Actions (MUST)
|
|
215
|
+
|
|
216
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
217
|
+
|
|
218
|
+
- Proceed (recommended): `/qfai-tdd-green`.
|
|
219
|
+
Action: follow canonical implementation flow and pass RED tests.
|
|
220
|
+
- Continue cleanup: `/qfai-tdd-refactor`.
|
|
221
|
+
Action: improve structure without changing behavior.
|
|
222
|
+
- Validate completion gates: `/qfai-verify`.
|
|
223
|
+
Action: run full quality checks and capture evidence.
|
|
@@ -188,3 +188,22 @@ Draft a PR description that matches the repository template and enables fast, co
|
|
|
188
188
|
- [ ] PR template sections are present and complete.
|
|
189
189
|
- [ ] Evidence is included or explicitly marked as unavailable.
|
|
190
190
|
- [ ] No unverified claims are included.
|
|
191
|
+
|
|
192
|
+
## Completion Checklist (MUST)
|
|
193
|
+
|
|
194
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
195
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
196
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
197
|
+
- [ ] The completion message was presented to the user.
|
|
198
|
+
- [ ] Next actions were enumerated for all available options.
|
|
199
|
+
|
|
200
|
+
## Completion Message & Next Actions (MUST)
|
|
201
|
+
|
|
202
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
203
|
+
|
|
204
|
+
- Proceed (recommended): create or update the pull request.
|
|
205
|
+
Action: submit the template-complete PR body and request review.
|
|
206
|
+
- Additional fixes are required:
|
|
207
|
+
Action: implement changes, rerun `/qfai-verify`, then refresh the PR description.
|
|
208
|
+
- PR narrative needs revision: rerun `/qfai-pr`.
|
|
209
|
+
Action: regenerate summary, risk notes, and validation evidence.
|
|
@@ -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.
|
|
@@ -194,3 +194,22 @@ Turn `.qfai/specs/spec-XXXX/scenario.feature` into runnable acceptance tests (AT
|
|
|
194
194
|
- [ ] Followed `.qfai/assistant/skills/qfai-atdd/SKILL.md` without omissions.
|
|
195
195
|
- [ ] Evidence file exists with command outputs.
|
|
196
196
|
- [ ] Reviewer approval recorded.
|
|
197
|
+
|
|
198
|
+
## Completion Checklist (MUST)
|
|
199
|
+
|
|
200
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
201
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
202
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
203
|
+
- [ ] The completion message was presented to the user.
|
|
204
|
+
- [ ] Next actions were enumerated for all available options.
|
|
205
|
+
|
|
206
|
+
## Completion Message & Next Actions (MUST)
|
|
207
|
+
|
|
208
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
209
|
+
|
|
210
|
+
- Proceed (recommended): `/qfai-atdd`.
|
|
211
|
+
Action: follow the canonical ATDD workflow for acceptance tests.
|
|
212
|
+
- Continue legacy entrypoint flow: rerun `/qfai-scenario-test`.
|
|
213
|
+
Action: provide missing scenario context and regenerate outputs.
|
|
214
|
+
- Move to implementation tests: `/qfai-tdd-red`.
|
|
215
|
+
Action: create RED unit/component tests for prioritized slices.
|
|
@@ -330,3 +330,22 @@ When declaring DONE, include:
|
|
|
330
330
|
- [ ] Quality gate checks are recorded in evidence.
|
|
331
331
|
- [ ] Evidence file exists and is complete.
|
|
332
332
|
- [ ] Reviewer approval is recorded.
|
|
333
|
+
|
|
334
|
+
## Completion Checklist (MUST)
|
|
335
|
+
|
|
336
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
337
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
338
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
339
|
+
- [ ] The completion message was presented to the user.
|
|
340
|
+
- [ ] Next actions were enumerated for all available options.
|
|
341
|
+
|
|
342
|
+
## Completion Message & Next Actions (MUST)
|
|
343
|
+
|
|
344
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
345
|
+
|
|
346
|
+
- Proceed (recommended): `/qfai-prototyping`.
|
|
347
|
+
Action: build contract-aligned skeleton implementation before deeper coding.
|
|
348
|
+
- Test-first path: `/qfai-atdd`.
|
|
349
|
+
Action: implement acceptance tests from the finalized spec pack.
|
|
350
|
+
- Spec pack needs correction: rerun `/qfai-sdd`.
|
|
351
|
+
Action: fix `01..18` consistency and decision records, then regenerate evidence.
|
|
@@ -125,6 +125,7 @@ Evidence checked:
|
|
|
125
125
|
- The canonical workflow is: `.qfai/assistant/skills/qfai-sdd/SKILL.md`.
|
|
126
126
|
- If this file conflicts with the canonical workflow, the canonical workflow wins.
|
|
127
127
|
- Ensure `case-catalogue.md` is table-based (category sections + `Case title` column) when executing the canonical workflow.
|
|
128
|
+
- Contract sample templates are provided under `.qfai/assistant/skills/qfai-spec/templates/contracts/`.
|
|
128
129
|
|
|
129
130
|
## Completion Contract (Shared)
|
|
130
131
|
|
|
@@ -144,3 +145,22 @@ Before declaring completion, you MUST:
|
|
|
144
145
|
- [ ] I used `/qfai-sdd` as the authoritative workflow.
|
|
145
146
|
- [ ] I followed canonical constraints, process, and gate commands.
|
|
146
147
|
- [ ] I did not edit this deprecated alias as a source of truth.
|
|
148
|
+
|
|
149
|
+
## Completion Checklist (MUST)
|
|
150
|
+
|
|
151
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
152
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
153
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
154
|
+
- [ ] The completion message was presented to the user.
|
|
155
|
+
- [ ] Next actions were enumerated for all available options.
|
|
156
|
+
|
|
157
|
+
## Completion Message & Next Actions (MUST)
|
|
158
|
+
|
|
159
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
160
|
+
|
|
161
|
+
- Proceed (recommended): `/qfai-sdd`.
|
|
162
|
+
Action: execute the canonical SDD workflow end-to-end.
|
|
163
|
+
- Requirements are not ready: `/qfai-require`.
|
|
164
|
+
Action: complete requirement artifacts and OQ resolution before retrying.
|
|
165
|
+
- Contracts need examples:
|
|
166
|
+
Action: use `templates/contracts/` samples and rerun `/qfai-sdd`.
|
|
@@ -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.
|
|
@@ -197,3 +197,22 @@ Implement fast unit/component tests that enforce the spec and provide reproducib
|
|
|
197
197
|
- [ ] Followed `.qfai/assistant/skills/qfai-tdd-red/SKILL.md` without omissions.
|
|
198
198
|
- [ ] Evidence file exists with command outputs.
|
|
199
199
|
- [ ] Reviewer approval recorded.
|
|
200
|
+
|
|
201
|
+
## Completion Checklist (MUST)
|
|
202
|
+
|
|
203
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
204
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
205
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
206
|
+
- [ ] The completion message was presented to the user.
|
|
207
|
+
- [ ] Next actions were enumerated for all available options.
|
|
208
|
+
|
|
209
|
+
## Completion Message & Next Actions (MUST)
|
|
210
|
+
|
|
211
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
212
|
+
|
|
213
|
+
- Proceed (recommended): `/qfai-tdd-red`.
|
|
214
|
+
Action: execute the canonical RED test workflow.
|
|
215
|
+
- Unit test scope needs revision: rerun `/qfai-unit-test`.
|
|
216
|
+
Action: clarify boundaries and failure expectations before rerun.
|
|
217
|
+
- Move to implementation: `/qfai-tdd-green`.
|
|
218
|
+
Action: implement only what is needed to pass RED tests.
|
|
@@ -511,3 +511,22 @@ When you declare DONE, include:
|
|
|
511
511
|
- [ ] All mandatory checks were executed and recorded.
|
|
512
512
|
- [ ] No untracked gaps remain (or they are explicitly documented).
|
|
513
513
|
- [ ] Completion approved by a reviewer who did not run the gates.
|
|
514
|
+
|
|
515
|
+
## Completion Checklist (MUST)
|
|
516
|
+
|
|
517
|
+
- [ ] This skill's Definition of Done is satisfied.
|
|
518
|
+
- [ ] Required artifacts were produced or updated (if applicable).
|
|
519
|
+
- [ ] Open questions were logged to the proper OQ file (if applicable).
|
|
520
|
+
- [ ] The completion message was presented to the user.
|
|
521
|
+
- [ ] Next actions were enumerated for all available options.
|
|
522
|
+
|
|
523
|
+
## Completion Message & Next Actions (MUST)
|
|
524
|
+
|
|
525
|
+
When this skill is complete, provide a final user-facing completion message and enumerate all actionable next steps.
|
|
526
|
+
|
|
527
|
+
- Proceed (recommended): `/qfai-pr`.
|
|
528
|
+
Action: draft the PR description with verified evidence.
|
|
529
|
+
- Any gate failed:
|
|
530
|
+
Action: return to the owning skill, fix the issue, then rerun `/qfai-verify`.
|
|
531
|
+
- Need a report artifact:
|
|
532
|
+
Action: run `qfai report` after validation outputs are up to date.
|
package/dist/cli/index.cjs
CHANGED
|
@@ -1218,8 +1218,8 @@ var import_promises7 = require("fs/promises");
|
|
|
1218
1218
|
var import_node_path8 = __toESM(require("path"), 1);
|
|
1219
1219
|
var import_node_url2 = require("url");
|
|
1220
1220
|
async function resolveToolVersion() {
|
|
1221
|
-
if ("1.4.
|
|
1222
|
-
return "1.4.
|
|
1221
|
+
if ("1.4.6".length > 0) {
|
|
1222
|
+
return "1.4.6";
|
|
1223
1223
|
}
|
|
1224
1224
|
try {
|
|
1225
1225
|
const packagePath = resolvePackageJsonPath();
|
|
@@ -4189,25 +4189,15 @@ function formatError4(error2) {
|
|
|
4189
4189
|
// src/core/validators/discussMermaid.ts
|
|
4190
4190
|
var import_promises16 = require("fs/promises");
|
|
4191
4191
|
var import_node_path19 = __toESM(require("path"), 1);
|
|
4192
|
-
var LEGACY_DISCUSS_FILE_RE = /^discuss-.*\.md$/i;
|
|
4193
4192
|
var DISCUSS_PACK_DIR_RE = /^DISCUSS-\d{4}$/i;
|
|
4194
4193
|
var DISCUSS_PACK_FLOW_FILE = "04_Business-flow.md";
|
|
4195
4194
|
var MERMAID_START_RE = /^\s*(`{3,}|~{3,})\s*mermaid\b/i;
|
|
4196
4195
|
var SEQUENCE_DIAGRAM_RE = /\bsequenceDiagram\b/;
|
|
4197
4196
|
async function validateDiscussMermaid(root) {
|
|
4198
|
-
const legacyDiscussionsDir = import_node_path19.default.join(root, ".qfai", "discussions");
|
|
4199
4197
|
const discussRootDir = import_node_path19.default.join(root, ".qfai", "discuss");
|
|
4200
|
-
const
|
|
4201
|
-
|
|
4202
|
-
|
|
4203
|
-
}),
|
|
4204
|
-
collectFiles(discussRootDir, {
|
|
4205
|
-
extensions: [".md"]
|
|
4206
|
-
})
|
|
4207
|
-
]);
|
|
4208
|
-
const legacyDiscussFiles = legacyMarkdownFiles.filter(
|
|
4209
|
-
(file) => LEGACY_DISCUSS_FILE_RE.test(import_node_path19.default.basename(file))
|
|
4210
|
-
);
|
|
4198
|
+
const discussPackMarkdownFiles = await collectFiles(discussRootDir, {
|
|
4199
|
+
extensions: [".md"]
|
|
4200
|
+
});
|
|
4211
4201
|
const discussPackFiles = discussPackMarkdownFiles.filter((file) => {
|
|
4212
4202
|
const fileName = import_node_path19.default.basename(file);
|
|
4213
4203
|
if (fileName !== DISCUSS_PACK_FLOW_FILE) {
|
|
@@ -4216,12 +4206,11 @@ async function validateDiscussMermaid(root) {
|
|
|
4216
4206
|
const discussDirName = import_node_path19.default.basename(import_node_path19.default.dirname(file));
|
|
4217
4207
|
return DISCUSS_PACK_DIR_RE.test(discussDirName);
|
|
4218
4208
|
});
|
|
4219
|
-
|
|
4220
|
-
if (discussFiles.length === 0) {
|
|
4209
|
+
if (discussPackFiles.length === 0) {
|
|
4221
4210
|
return [];
|
|
4222
4211
|
}
|
|
4223
4212
|
const issues = [];
|
|
4224
|
-
for (const file of
|
|
4213
|
+
for (const file of discussPackFiles) {
|
|
4225
4214
|
const text = await (0, import_promises16.readFile)(file, "utf-8");
|
|
4226
4215
|
if (containsMermaidSequenceDiagram(text)) {
|
|
4227
4216
|
continue;
|