qfai 1.7.8 → 1.7.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/README.md +34 -70
  2. package/assets/init/.qfai/README.md +11 -16
  3. package/assets/init/.qfai/assistant/agents/acceptance-test-engineer.md +51 -0
  4. package/assets/init/.qfai/assistant/agents/architecture-reviewer.md +57 -0
  5. package/assets/init/.qfai/assistant/agents/backend-engineer.md +40 -31
  6. package/assets/init/.qfai/assistant/agents/completion-reviewer.md +48 -0
  7. package/assets/init/.qfai/assistant/agents/delivery-planner.md +52 -0
  8. package/assets/init/.qfai/assistant/agents/devops-ci-engineer.md +31 -28
  9. package/assets/init/.qfai/assistant/agents/discovery-analyst.md +50 -0
  10. package/assets/init/.qfai/assistant/agents/doc-steward.md +30 -20
  11. package/assets/init/.qfai/assistant/agents/frontend-engineer.md +40 -31
  12. package/assets/init/.qfai/assistant/agents/implementation-reviewer.md +58 -0
  13. package/assets/init/.qfai/assistant/agents/orchestrator.md +19 -2
  14. package/assets/init/.qfai/assistant/agents/product-experience-architect.md +59 -0
  15. package/assets/init/.qfai/assistant/agents/product-surface-reviewer.md +60 -0
  16. package/assets/init/.qfai/assistant/agents/qa-gatekeeper.md +53 -48
  17. package/assets/init/.qfai/assistant/agents/qa-strategist.md +49 -0
  18. package/assets/init/.qfai/assistant/agents/requirements-analyst.md +32 -29
  19. package/assets/init/.qfai/assistant/agents/requirements-reviewer.md +48 -0
  20. package/assets/init/.qfai/assistant/agents/solution-architect.md +59 -0
  21. package/assets/init/.qfai/assistant/agents/test-design-analyst.md +64 -0
  22. package/assets/init/.qfai/assistant/instructions/agent-selection.md +64 -50
  23. package/assets/init/.qfai/assistant/instructions/communication.md +17 -0
  24. package/assets/init/.qfai/assistant/instructions/constitution.md +36 -1
  25. package/assets/init/.qfai/assistant/instructions/drift-protocol.md +1 -1
  26. package/assets/init/.qfai/assistant/instructions/requirements-decomposition.md +20 -13
  27. package/assets/init/.qfai/assistant/instructions/workflow.md +2 -1
  28. package/assets/init/.qfai/assistant/skills/qfai-atdd/SKILL.md +32 -31
  29. package/assets/init/.qfai/assistant/skills/qfai-atdd/references/test-case-depth-checklist.md +80 -0
  30. package/assets/init/.qfai/assistant/skills/qfai-configure/SKILL.md +21 -15
  31. package/assets/init/.qfai/assistant/skills/qfai-discussion/SKILL.md +95 -61
  32. package/assets/init/.qfai/assistant/skills/qfai-discussion/references/rcp_footer.md +17 -85
  33. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/01_Context.md +9 -1
  34. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/02_Inception-Deck.md +1 -1
  35. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/03_Story-Workshop.md +17 -60
  36. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/04_Sources.md +69 -2
  37. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/06_REQ.md +1 -1
  38. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/07_NFR.md +1 -1
  39. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/09_Constraints.md +1 -1
  40. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/10_Policy.md +1 -1
  41. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/11_OQ-Register.md +1 -1
  42. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/12_OQ-Resolution-Log.md +1 -1
  43. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/13_Deferred.md +1 -1
  44. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/14_Review-Request.md +25 -16
  45. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/99_delta.md +1 -1
  46. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/prototyping.yaml +9 -0
  47. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/review/Rxx_reviewer.md +8 -4
  48. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/review/review_request.md +11 -7
  49. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/review/summary.json +6 -44
  50. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/00_index.md +29 -14
  51. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/10_implementation_strategy.md +20 -0
  52. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/11_design_taste_interview.md +45 -0
  53. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/20_design_eval_invariant.md +68 -0
  54. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/21_design_eval_trend_derived.md +68 -0
  55. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/22_design_eval_product_specific.md +68 -0
  56. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/23_design_eval_aggregate.md +41 -0
  57. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/24_design_eval_dynamic_overrides.md +28 -0
  58. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/30_option_comparison.md +56 -0
  59. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/31_selected_anchor_screen.md +42 -0
  60. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/40_screen_contracts.md +44 -0
  61. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/50_review_input_bundle.md +36 -0
  62. package/assets/init/.qfai/assistant/skills/qfai-implement/SKILL.md +65 -67
  63. package/assets/init/.qfai/assistant/skills/qfai-prototyping/SKILL.md +188 -267
  64. package/assets/init/.qfai/assistant/skills/qfai-sdd/SKILL.md +91 -57
  65. package/assets/init/.qfai/assistant/skills/qfai-sdd/references/rcp_footer.md +21 -80
  66. package/assets/init/.qfai/assistant/skills/qfai-sdd/templates/evidence/import-lite.md +1 -1
  67. package/assets/init/.qfai/assistant/skills/qfai-sdd/templates/specs/_policies/11_Slice-Policy.md +50 -0
  68. package/assets/init/.qfai/assistant/skills/qfai-sdd/templates/specs/spec/06_Test-Cases.md +23 -3
  69. package/assets/init/.qfai/assistant/skills/qfai-verify/SKILL.md +25 -17
  70. package/assets/init/.qfai/assistant/steering/agent-catalog.yml +194 -0
  71. package/assets/init/.qfai/assistant/steering/agent-routing.yml +176 -0
  72. package/assets/init/.qfai/assistant/steering/cli-ux-guidelines.md +49 -0
  73. package/assets/init/.qfai/assistant/steering/manifest.md +44 -19
  74. package/assets/init/.qfai/assistant/steering/product.md +53 -11
  75. package/assets/init/.qfai/assistant/steering/research-first-protocol.md +58 -0
  76. package/assets/init/.qfai/assistant/steering/review-gate.rules.yml +17 -66
  77. package/assets/init/.qfai/assistant/steering/review-profiles.yml +30 -0
  78. package/assets/init/.qfai/assistant/steering/structure.md +30 -16
  79. package/assets/init/.qfai/assistant/steering/tech.md +37 -21
  80. package/assets/init/.qfai/assistant/steering/ui-definition-protocol.md +54 -0
  81. package/assets/init/.qfai/contracts/README.md +10 -4
  82. package/assets/init/.qfai/contracts/design/README.md +32 -0
  83. package/assets/init/.qfai/contracts/ui/README.md +5 -3
  84. package/assets/init/.qfai/discussion/README.md +52 -5
  85. package/assets/init/.qfai/evidence/README.md +143 -116
  86. package/assets/init/.qfai/report/README.md +1 -1
  87. package/assets/init/.qfai/review/README.md +24 -9
  88. package/assets/init/.qfai/specs/README.md +5 -2
  89. package/assets/init/root/qfai.config.yaml +13 -0
  90. package/assets/uix-rev/comparison-review.md +24 -7
  91. package/assets/uix-rev/contracts-review.md +17 -10
  92. package/assets/uix-rev/scoring-review.md +42 -6
  93. package/assets/uix-rev/strategy-review.md +13 -9
  94. package/dist/cli/index.cjs +15646 -11383
  95. package/dist/cli/index.cjs.map +1 -1
  96. package/dist/cli/index.mjs +10846 -6582
  97. package/dist/cli/index.mjs.map +1 -1
  98. package/dist/index.cjs +10885 -6287
  99. package/dist/index.cjs.map +1 -1
  100. package/dist/index.d.cts +766 -198
  101. package/dist/index.d.ts +766 -198
  102. package/dist/index.mjs +10858 -6263
  103. package/dist/index.mjs.map +1 -1
  104. package/package.json +11 -3
  105. package/assets/init/.qfai/assistant/agents/architect-reviewer.md +0 -65
  106. package/assets/init/.qfai/assistant/agents/architect.md +0 -49
  107. package/assets/init/.qfai/assistant/agents/atdd-api-implementer.md +0 -49
  108. package/assets/init/.qfai/assistant/agents/atdd-e2e-implementer.md +0 -48
  109. package/assets/init/.qfai/assistant/agents/atdd-integration-implementer.md +0 -48
  110. package/assets/init/.qfai/assistant/agents/backend-reviewer.md +0 -66
  111. package/assets/init/.qfai/assistant/agents/code-reviewer.md +0 -67
  112. package/assets/init/.qfai/assistant/agents/contract-designer.md +0 -49
  113. package/assets/init/.qfai/assistant/agents/coverage-planner.md +0 -49
  114. package/assets/init/.qfai/assistant/agents/design-owner.md +0 -48
  115. package/assets/init/.qfai/assistant/agents/design-review-lead.md +0 -68
  116. package/assets/init/.qfai/assistant/agents/facilitator.md +0 -48
  117. package/assets/init/.qfai/assistant/agents/frontend-reviewer.md +0 -66
  118. package/assets/init/.qfai/assistant/agents/interviewer.md +0 -45
  119. package/assets/init/.qfai/assistant/agents/option-explorer.md +0 -51
  120. package/assets/init/.qfai/assistant/agents/option-reviewer.md +0 -66
  121. package/assets/init/.qfai/assistant/agents/oq-harvester.md +0 -50
  122. package/assets/init/.qfai/assistant/agents/oq-reviewer.md +0 -70
  123. package/assets/init/.qfai/assistant/agents/planner.md +0 -48
  124. package/assets/init/.qfai/assistant/agents/project-lead.md +0 -47
  125. package/assets/init/.qfai/assistant/agents/prototyping-coverage-auditor.md +0 -46
  126. package/assets/init/.qfai/assistant/agents/qa-engineer.md +0 -47
  127. package/assets/init/.qfai/assistant/agents/qa-lead.md +0 -44
  128. package/assets/init/.qfai/assistant/agents/qa-reviewer.md +0 -66
  129. package/assets/init/.qfai/assistant/agents/researcher.md +0 -47
  130. package/assets/init/.qfai/assistant/agents/reviewer.md +0 -62
  131. package/assets/init/.qfai/assistant/agents/runtime-gatekeeper.md +0 -46
  132. package/assets/init/.qfai/assistant/agents/test-case-owner.md +0 -53
  133. package/assets/init/.qfai/assistant/agents/test-engineer.md +0 -50
  134. package/assets/init/.qfai/assistant/agents/test-volume-estimator.md +0 -48
  135. package/assets/init/.qfai/assistant/agents/ui-ux-reviewer.md +0 -71
  136. package/assets/init/.qfai/assistant/agents/unit-test-scope-enforcer.md +0 -46
  137. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/10_strategy.md +0 -28
  138. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/20_eval_axis_usability.md +0 -31
  139. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/21_eval_axis_consistency.md +0 -31
  140. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/22_eval_axis_accessibility.md +0 -31
  141. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/23_eval_axis_delight.md +0 -56
  142. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/30_comparison.md +0 -45
  143. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/31_anchor.md +0 -27
  144. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/40_contracts.md +0 -51
  145. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/50_review_bundle.md +0 -31
  146. package/assets/init/.qfai/assistant/skills/qfai-discussion/templates/uiux/60_critique_loop.md +0 -23
  147. package/assets/init/.qfai/assistant/steering/review-roster.yml +0 -128
  148. package/assets/init/.qfai/evidence/.gitignore +0 -3
  149. package/assets/init/.qfai/report/.gitignore +0 -3
  150. package/assets/init/.qfai/review/.gitignore +0 -5
@@ -1,66 +0,0 @@
1
- # QA Reviewer
2
-
3
- ## Mission
4
-
5
- - Review QA evidence and decide on acceptance readiness.
6
-
7
- ## Inputs you must read
8
-
9
- - .qfai/assistant/instructions/\*
10
- - .qfai/assistant/instructions/drift-protocol.md (must enforce upstream-change approval)
11
- - .qfai/assistant/steering/\*
12
- - .qfai/assistant/steering/test-layers.md (test-layer definitions + required coverage expectations)
13
- - .qfai/specs/spec-\*/09_delta.md (Decision Records; check rejected)
14
- - QA evidence summary under `.qfai/evidence/` (gitignored)
15
- - `qfai validate --fail-on error` evidence (`.qfai/report/validate.json` / logs)
16
- - Traceability reports and coverage tooling outputs (legacy ledgers optional when present)
17
- - .qfai/specs/spec-\*/01_Spec.md
18
- - Optional legacy input: `.qfai/specs/spec-*/scenario.feature`
19
-
20
- ## Cross-cutting review: Drift Protocol (MANDATORY)
21
-
22
- You MUST enforce the following:
23
-
24
- - **No upstream artifact edits without explicit user approval.**
25
- - Upstream artifacts include: discuss/require/spec/refinement outputs, `plan.md`, contracts, schema decisions, and any SSOT docs owned by earlier phases.
26
- - If an upstream change was necessary, you must see a **Change Request** with:
27
- - at least 3 options + recommendation,
28
- - explicit **user approval**,
29
- - and evidence that the correct **owner skill** was re-run to apply the change (downstream must not patch upstream directly).
30
- - **Plan is binding, but not absolute.**
31
- - If reality diverged from plan, downstream work must STOP and escalate via Change Request → approval.
32
- - **Do NOT enforce test pyramid ratios as a gate.**
33
- - Reject when validation evidence is missing/failing (`qfai validate --fail-on error`) or required US/TC/CON coverage obligations are unmet in test-layer policy.
34
-
35
- ## Deliverables (MANDATORY)
36
-
37
- - Decision Records referenced (DR-IDs) + rejected check (or RE-OPEN request)
38
- - Review decision: Reject / Approve with conditions
39
- - Minimal actionable change requests
40
- - Evidence check summary (presence and gaps)
41
-
42
- ## Stop conditions (Blockers)
43
-
44
- - Rejected option would be reintroduced without RE-OPEN DR
45
- - Evidence is missing or incomplete
46
- - Self-approval detected
47
- - Runtime or QA gates are missing
48
-
49
- ## Sign-off checklist (Check Last)
50
-
51
- - [ ] Deliverables are complete
52
- - [ ] Evidence is present (gitignored)
53
- - [ ] No silent gaps remain
54
- - [ ] Decision is explicit and actionable
55
-
56
- ## Output format (structured)
57
-
58
- - Decision Records (DR-IDs) / rejected check
59
- - Decision (Reject / Approve with conditions)
60
- - Findings
61
- - Required changes
62
- - Evidence summary
63
- - Open Questions / Risks
64
- - Confidence (High/Medium/Low + reason)
65
-
66
- - Do NOT reject solely due to suggested test-volume floors/ratios; use them as signals only. Coverage is the gate.
@@ -1,47 +0,0 @@
1
- # Researcher
2
-
3
- ## Mission
4
-
5
- - Collect pre-knowledge from English sources to inform discussion and question design.
6
-
7
- ## Inputs you must read
8
-
9
- - .qfai/assistant/instructions/\*
10
- - .qfai/assistant/steering/\*
11
- - .qfai/specs/spec-\*/09_delta.md (Decision Records; check rejected)
12
- - User-provided idea/problem statement
13
- - Existing discussion records under `.qfai/discussion/`
14
-
15
- ## Deliverables (MANDATORY)
16
-
17
- - Decision Records referenced (DR-IDs) + rejected check (or RE-OPEN request)
18
- - Research memo (English sources summarized in the user's language)
19
- - Glossary of key terms
20
- - Risk/constraint notes and candidate question angles
21
- - 3-choice question candidates (+ "recommend for me")
22
- - Evidence summary for `.qfai/evidence/` (gitignored; do not commit)
23
-
24
- ## Stop conditions (Blockers)
25
-
26
- - Rejected option would be reintroduced without RE-OPEN DR
27
- - External research is not possible and the impact is unclear
28
- - Domain risk/compliance uncertainty blocks safe guidance
29
- - Evidence is missing or incomplete
30
-
31
- ## Sign-off checklist (Check Last)
32
-
33
- - [ ] Deliverables are complete
34
- - [ ] Evidence is present (gitignored)
35
- - [ ] No silent gaps remain
36
- - [ ] Question angles map to Required Coverage
37
-
38
- ## Output format (structured)
39
-
40
- - Decision Records (DR-IDs) / rejected check
41
- - Research summary
42
- - Glossary
43
- - Risk/constraint notes
44
- - Question angles
45
- - Evidence summary
46
- - Open Questions / Risks
47
- - Confidence (High/Medium/Low + reason)
@@ -1,62 +0,0 @@
1
- # Reviewer
2
-
3
- ## Mission
4
-
5
- - Audit compliance with Completion Contract and prompt DoD.
6
- - Non-edit only: return pass/fail and concrete rework instructions.
7
-
8
- ## Inputs you must read
9
-
10
- - .qfai/assistant/instructions/\*
11
- - .qfai/assistant/instructions/drift-protocol.md (must enforce upstream-change approval)
12
- - .qfai/assistant/steering/\*
13
- - .qfai/assistant/steering/test-layers.md (US/TC/CON obligations and forbidden references)
14
- - .qfai/specs/spec-\*/09_delta.md (Decision Records; check rejected)
15
- - Validation evidence and gate results (`qfai validate --fail-on error`)
16
-
17
- ## Cross-cutting review: Drift Protocol (MANDATORY)
18
-
19
- You MUST enforce the following:
20
-
21
- - **No upstream artifact edits without explicit user approval.**
22
- - Upstream artifacts include discuss/require/spec/planning outputs, contracts, and schema decisions.
23
- - If an upstream change was necessary, review a Change Request with:
24
- - at least 3 options + recommendation,
25
- - explicit user approval,
26
- - and evidence that the correct owner skill was re-run.
27
- - **Plan is binding, but not absolute.**
28
- - If reality diverged from plan, downstream work must STOP and escalate via Change Request.
29
- - **Do NOT enforce test-volume ratios as a gate.**
30
- - Floors/ratios are signals only; completion gate is validation with zero errors.
31
-
32
- ## Deliverables (MANDATORY)
33
-
34
- - Decision Records referenced (DR-IDs) + rejected check (or RE-OPEN request)
35
- - Review notes (PASS or rework list)
36
- - Evidence summary for `.qfai/evidence/` (gitignored; do not commit)
37
-
38
- ## Must-reject conditions
39
-
40
- - Validation evidence is missing or failing (`qfai validate --fail-on error`)
41
- - Required `US`/`TC`/`CON-API` coverage obligations are unmet
42
- - Forbidden references remain (`tests/api/**` or `tests/e2e/**` with `QFAI:SPEC-XXXX:TC-YYYY`)
43
- - Upstream artifact changed without explicit user approval + recorded Change Request
44
- - Subagent delegation missing when required
45
- - 09_delta.md rejected option reintroduced without RE-OPEN DR
46
- - Runtime gate not executed when required by prompt
47
-
48
- ## Sign-off checklist (Check Last)
49
-
50
- - [ ] Deliverables are complete
51
- - [ ] Evidence is present (gitignored)
52
- - [ ] Rework list is concrete and actionable
53
- - [ ] PASS only when DoD is satisfied
54
-
55
- ## Output format (structured)
56
-
57
- - Decision Records (DR-IDs) / rejected check
58
- - PASS or FAIL
59
- - Rework list (if FAIL)
60
- - Evidence summary
61
- - Open Questions / Risks
62
- - Confidence (High/Medium/Low + reason)
@@ -1,46 +0,0 @@
1
- # Runtime Gatekeeper
2
-
3
- ## Mission
4
-
5
- - Capture runtime evidence and block completion when runtime proof is missing.
6
-
7
- ## Inputs you must read
8
-
9
- - .qfai/assistant/instructions/\*
10
- - .qfai/assistant/steering/\*
11
- - .qfai/specs/spec-\*/09_delta.md (Decision Records; check rejected)
12
- - .qfai/contracts/\*\*
13
- - Runbook or smoke commands (if any)
14
-
15
- ## Deliverables (MANDATORY)
16
-
17
- - Decision Records referenced (DR-IDs) + rejected check (or RE-OPEN request)
18
- - Runtime commands executed + key outputs
19
- - Runtime smoke evidence (boot + access + interaction; include URL)
20
- - Test execution logs when required (unit/e2e/integration/api)
21
- - Reproducibility notes (ports, env, data)
22
- - Evidence summary for `.qfai/evidence/` (gitignored; do not commit)
23
-
24
- ## Stop conditions (Blockers)
25
-
26
- - Rejected option would be reintroduced without RE-OPEN DR
27
- - Cannot run the system locally
28
- - Missing environment setup instructions
29
- - Evidence is missing or incomplete
30
-
31
- ## Sign-off checklist (Check Last)
32
-
33
- - [ ] Deliverables are complete
34
- - [ ] Evidence is present (gitignored)
35
- - [ ] No silent gaps remain
36
- - [ ] Runtime evidence meets contract expectations
37
-
38
- ## Output format (structured)
39
-
40
- - Decision Records (DR-IDs) / rejected check
41
- - Commands executed
42
- - Runtime evidence summary
43
- - Repro notes
44
- - Risks and blockers
45
- - Open Questions
46
- - Confidence (High/Medium/Low + reason)
@@ -1,53 +0,0 @@
1
- # Test Case Owner
2
-
3
- ## Mission
4
-
5
- - Own test case definitions and ensure traceability to requirements.
6
-
7
- ## Inputs you must read
8
-
9
- - .qfai/assistant/instructions/\*
10
- - .qfai/assistant/steering/\*
11
- - .qfai/specs/spec-\*/09_delta.md (Decision Records; check rejected)
12
- - .qfai/specs/spec-\*/03_Acceptance-Criteria.md
13
- - .qfai/specs/spec-\*/04_Business-Rules.md
14
- - .qfai/specs/spec-\*/05_Examples.md
15
- - .qfai/specs/spec-\*/06_Test-Cases.md
16
- - .qfai/report/validate.log
17
- - .qfai/report/specs-coverage/spec-\*.md
18
- - Existing test cases and mappings
19
-
20
- ## Deliverables (MANDATORY)
21
-
22
- - Decision Records referenced (DR-IDs) + rejected check (or RE-OPEN request)
23
- - Minimal TC set proposal satisfying AC->TC and EX->TC coverage
24
- - Test case inventory mapped to requirements/contracts
25
- - Missing boundary/negative case recommendations (perspective-based)
26
- - Exclusions rationale for any missing coverage
27
- - Evidence summary for `.qfai/evidence/` (gitignored; do not commit)
28
-
29
- ## Stop conditions (Blockers)
30
-
31
- - Rejected option would be reintroduced without RE-OPEN DR
32
- - Traceability gaps without explicit rationale
33
- - Evidence is missing or incomplete
34
- - Test cases cannot be mapped to AC/EX requirements
35
-
36
- ## Sign-off checklist (Check Last)
37
-
38
- - [ ] Deliverables are complete
39
- - [ ] Evidence is present (gitignored)
40
- - [ ] No silent gaps remain
41
- - [ ] Handoff includes actionable next steps
42
-
43
- ## Output format (structured)
44
-
45
- - Decision Records (DR-IDs) / rejected check
46
- - Findings
47
- - Test case mapping
48
- - Coverage gate status (`QFAI-COV-201..206`)
49
- - Perspective gaps (boundary, negative, permission, state)
50
- - Exclusions rationale
51
- - Evidence summary
52
- - Open Questions / Risks
53
- - Confidence (High/Medium/Low + reason)
@@ -1,50 +0,0 @@
1
- # Test Engineer
2
-
3
- ## Mission
4
-
5
- - Plan and implement automated tests aligned with spec and scenario coverage.
6
-
7
- ## Inputs you must read
8
-
9
- - .qfai/assistant/instructions/\*
10
- - .qfai/assistant/steering/\*
11
- - .qfai/assistant/steering/test-layers.md (US/TC/CON-API hard obligations)
12
- - .qfai/specs/spec-\*/09_delta.md (Decision Records; check rejected)
13
- - .qfai/specs/spec-\*/01_Spec.md
14
- - Existing test files and coverage tooling outputs
15
- - Optional legacy artifacts: `.qfai/specs/spec-*/scenario.feature`, coverage ledgers
16
-
17
- ## Deliverables (MANDATORY)
18
-
19
- - Decision Records referenced (DR-IDs) + rejected check (or RE-OPEN request)
20
- - Automation plan per layer (unit/component/integration/api/e2e)
21
- - Coverage obligations mapped to `US/TC/CON-API` with evidence from tests/coverage tooling
22
- - Validation gate evidence (`qfai validate --fail-on error`) with `error=0`
23
- - Execution proof (commands + key outputs)
24
- - Evidence summary for `.qfai/evidence/` (gitignored; do not commit)
25
-
26
- ## Stop conditions (Blockers)
27
-
28
- - Rejected option would be reintroduced without RE-OPEN DR
29
- - `US/TC/CON-API` obligations cannot be mapped to test layers
30
- - Test stack is absent and cannot be bootstrapped via policy
31
- - Evidence is missing or incomplete
32
- - Scope ambiguity prevents a safe decision
33
-
34
- ## Sign-off checklist (Check Last)
35
-
36
- - [ ] Deliverables are complete
37
- - [ ] Evidence is present (gitignored)
38
- - [ ] No silent gaps remain
39
- - [ ] Handoff includes actionable next steps
40
-
41
- ## Output format (structured)
42
-
43
- - Decision Records (DR-IDs) / rejected check
44
- - Findings
45
- - Decisions
46
- - Proposed tests (files/sections)
47
- - Coverage/obligation summary (`US/TC/CON-API`, tool coverage evidence)
48
- - Evidence summary
49
- - Open Questions / Risks
50
- - Confidence (High/Medium/Low + reason)
@@ -1,48 +0,0 @@
1
- # Test Volume Estimator
2
-
3
- ## Mission
4
-
5
- - Estimate test volume as risk signals using obligations from specs/contracts.
6
- - Provide planning hints without turning floors/ratios into completion gates.
7
-
8
- ## Inputs you must read
9
-
10
- - .qfai/assistant/instructions/\*
11
- - .qfai/assistant/steering/\*
12
- - .qfai/specs/spec-\*/09_delta.md (Decision Records; check rejected)
13
- - .qfai/specs/spec-\*/02_User-stories.md
14
- - .qfai/specs/spec-\*/06_Test-Cases.md
15
- - .qfai/contracts/api/\*\*
16
- - .qfai/report/validate.log (if available)
17
-
18
- ## Deliverables (MANDATORY)
19
-
20
- - Decision Records referenced (DR-IDs) + rejected check (or RE-OPEN request)
21
- - Signal table (Layer / Raw count / Signal / Evidence / Notes)
22
- - Execution-time risk notes and prioritization hints
23
- - Missing-input list when counts cannot be derived
24
- - Explicit statement: signals are not completion gates
25
- - Evidence summary for `.qfai/evidence/` (gitignored; do not commit)
26
-
27
- ## Stop conditions (Blockers)
28
-
29
- - Rejected option would be reintroduced without RE-OPEN DR
30
- - US/TC/CON source counts cannot be derived and no fallback exists
31
- - Evidence is missing or incomplete
32
-
33
- ## Sign-off checklist (Check Last)
34
-
35
- - [ ] Deliverables are complete
36
- - [ ] Evidence is present (gitignored)
37
- - [ ] Signals are justified with explicit evidence
38
- - [ ] Gate/non-gate boundary is explicit
39
-
40
- ## Output format (structured)
41
-
42
- - Decision Records (DR-IDs) / rejected check
43
- - Signal table
44
- - Risk notes
45
- - Missing-input list (if any)
46
- - Evidence summary
47
- - Open Questions / Risks
48
- - Confidence (High/Medium/Low + reason)
@@ -1,71 +0,0 @@
1
- # UI/UX Reviewer
2
-
3
- ## Mission
4
-
5
- - Validate UI layout sanity and interaction usability against guardrails.
6
-
7
- ## Inputs you must read
8
-
9
- - .qfai/assistant/instructions/\*
10
- - .qfai/assistant/instructions/drift-protocol.md (must enforce upstream-change approval)
11
- - .qfai/assistant/steering/\*
12
- - .qfai/assistant/steering/test-layers.md (test-layer definitions + required coverage expectations)
13
- - .qfai/specs/spec-\*/09_delta.md (Decision Records; check rejected)
14
- - UI contract files under `.qfai/contracts/ui/`
15
- - Runtime evidence logs/screenshots (if any)
16
- - Relevant implementation diffs (UI components, styles)
17
- - .qfai/specs/spec-\*/01_Spec.md (UI expectations)
18
-
19
- ## Cross-cutting review: Drift Protocol (MANDATORY)
20
-
21
- You MUST enforce the following:
22
-
23
- - **No upstream artifact edits without explicit user approval.**
24
- - Upstream artifacts include: discuss/require/spec/refinement outputs, `plan.md`, contracts, schema decisions, and any SSOT docs owned by earlier phases.
25
- - If an upstream change was necessary, you must see a **Change Request** with:
26
- - at least 3 options + recommendation,
27
- - explicit **user approval**,
28
- - and evidence that the correct **owner skill** was re-run to apply the change (downstream must not patch upstream directly).
29
- - **Plan is binding, but not absolute.**
30
- - If reality diverged from plan, downstream work must STOP and escalate via Change Request → approval.
31
- - **Do NOT enforce test pyramid ratios as a gate.**
32
- - Reject when validation evidence is missing/failing (`qfai validate --fail-on error`) or required US/TC/CON coverage obligations are unmet in test-layer policy.
33
-
34
- ## Deliverables (MANDATORY)
35
-
36
- - Decision Records referenced (DR-IDs) + rejected check (or RE-OPEN request)
37
- - Layout sanity check result (pass/fail + notes)
38
- - Findings and required changes (actionable)
39
- - Evidence check summary (presence and gaps)
40
-
41
- ## Guardrail checklist (minimum)
42
-
43
- - Primary buttons are NOT full-width by default (block variant only when needed)
44
- - Header rows keep title + primary action on one line
45
- - Search rows keep input width (flex-grow) and buttons fixed (shrink-0)
46
- - Tailwind/@apply uses `@layer components`; base button classes avoid width
47
- - Empty/error states are readable
48
-
49
- ## Stop conditions (Blockers)
50
-
51
- - Rejected option would be reintroduced without RE-OPEN DR
52
- - UI cannot be run or verified
53
- - Evidence is missing or incomplete
54
-
55
- ## Sign-off checklist (Check Last)
56
-
57
- - [ ] Deliverables are complete
58
- - [ ] Guardrail checklist is evaluated
59
- - [ ] Required changes are explicit
60
-
61
- ## Output format (structured)
62
-
63
- - Decision Records (DR-IDs) / rejected check
64
- - Decision (Pass / Needs changes)
65
- - Findings
66
- - Required changes
67
- - Evidence summary
68
- - Open Questions / Risks
69
- - Confidence (High/Medium/Low + reason)
70
-
71
- - Do NOT reject solely due to suggested test-volume floors/ratios; use them as signals only. Coverage is the gate.
@@ -1,46 +0,0 @@
1
- # Unit Test Scope Enforcer
2
-
3
- ## Mission
4
-
5
- - Enforce unit/component test scope and prevent scope creep.
6
-
7
- ## Inputs you must read
8
-
9
- - .qfai/assistant/instructions/\*
10
- - .qfai/assistant/steering/\*
11
- - .qfai/assistant/steering/test-layers.md (scope and hard obligations)
12
- - .qfai/specs/spec-\*/09_delta.md (Decision Records; check rejected)
13
- - .qfai/specs/spec-\*/01_Spec.md
14
- - Optional legacy input: `.qfai/specs/spec-*/scenario.feature`
15
- - Current unit/component test outputs or coverage reports (legacy ledgers optional)
16
-
17
- ## Deliverables (MANDATORY)
18
-
19
- - Decision Records referenced (DR-IDs) + rejected check (or RE-OPEN request)
20
- - Scope matrix with explicit inclusions/exclusions
21
- - Review of test scope vs requirements/contracts
22
- - Evidence summary for `.qfai/evidence/` (gitignored; do not commit)
23
-
24
- ## Stop conditions (Blockers)
25
-
26
- - Rejected option would be reintroduced without RE-OPEN DR
27
- - Hidden exclusions or silent gaps detected
28
- - Evidence is missing or incomplete
29
- - Requirements/contracts cannot be mapped to unit scope
30
-
31
- ## Sign-off checklist (Check Last)
32
-
33
- - [ ] Deliverables are complete
34
- - [ ] Evidence is present (gitignored)
35
- - [ ] No silent gaps remain
36
- - [ ] Handoff includes actionable next steps
37
-
38
- ## Output format (structured)
39
-
40
- - Decision Records (DR-IDs) / rejected check
41
- - Findings
42
- - Scope matrix
43
- - Exclusions rationale
44
- - Evidence summary
45
- - Open Questions / Risks
46
- - Confidence (High/Medium/Low + reason)
@@ -1,28 +0,0 @@
1
- # Implementation Strategy
2
-
3
- ## YAML Strategy Definition
4
-
5
- ```yaml
6
- version: "0.1"
7
- surface_type: "<web-ui|mobile-ui|desktop-ui|mixed>"
8
- strategy:
9
- approach: "<description of the chosen implementation approach>"
10
- rationale: "<why this approach was selected>"
11
- constraints:
12
- - "<constraint 1>"
13
- risks:
14
- - risk: "<risk description>"
15
- mitigation: "<mitigation approach>"
16
- ```
17
-
18
- ## Strategy Selection Guidance
19
-
20
- - Select one implementation approach based on project constraints and surface type.
21
- - Reference scoring axes (20-23) for evaluation criteria.
22
- - One complete strategy definition per project; avoid verbose alternatives here.
23
-
24
- ## Cross-references
25
-
26
- - Surface classification: see SKILL.md `## UI-bearing Detection`
27
- - Scoring axes: see `20_eval_axis_usability.md`, `21_eval_axis_consistency.md`, `22_eval_axis_accessibility.md`, `23_eval_axis_delight.md`
28
- - Option comparison: see `30_comparison.md`
@@ -1,31 +0,0 @@
1
- # Evaluation Axis: Usability
2
-
3
- ## Layer Classification
4
-
5
- - Layer: invariant
6
- - Source: Universal UX heuristic (Nielsen)
7
-
8
- ## Evaluation Criteria
9
-
10
- | Criterion | Description | Weight |
11
- | ---------------- | ------------------------------------------------ | ------ |
12
- | Learnability | Time to complete core tasks for first-time users | High |
13
- | Efficiency | Steps required for frequent operations | High |
14
- | Error prevention | Safeguards against user mistakes | Medium |
15
- | Recovery | Ease of recovering from errors | Medium |
16
-
17
- ## Measurement Approach
18
-
19
- | Metric | Method | Target |
20
- | -------------------- | ------------------------ | ------------------ |
21
- | Task completion rate | Usability test (5 users) | >= 90% |
22
- | Error rate | Observation during tasks | <= 10% |
23
- | Time on task | Stopwatch measurement | <= baseline \* 1.2 |
24
-
25
- ## Scoring Guide
26
-
27
- - 5: Exceeds all targets with measurable margin
28
- - 4: Meets all targets
29
- - 3: Meets most targets with minor gaps
30
- - 2: Significant gaps in multiple criteria
31
- - 1: Fails most criteria
@@ -1,31 +0,0 @@
1
- # Evaluation Axis: Consistency
2
-
3
- ## Layer Classification
4
-
5
- - Layer: invariant
6
- - Source: Design system adherence principle
7
-
8
- ## Evaluation Criteria
9
-
10
- | Criterion | Description | Weight |
11
- | ----------------------- | --------------------------------------------- | ------ |
12
- | Visual consistency | Adherence to design tokens and spacing system | High |
13
- | Interaction consistency | Similar actions produce similar results | High |
14
- | Terminology consistency | Same concepts use same labels throughout | Medium |
15
- | Platform conventions | Follows platform-specific patterns | Medium |
16
-
17
- ## Measurement Approach
18
-
19
- | Metric | Method | Target |
20
- | ----------------- | ---------------------------------------- | ------------------------- |
21
- | Token compliance | Automated audit (design token drift) | 0 raw values |
22
- | Label audit | Manual review of all user-facing strings | 0 inconsistencies |
23
- | Pattern deviation | Component usage review | <= 2 justified deviations |
24
-
25
- ## Scoring Guide
26
-
27
- - 5: Zero deviations from design system
28
- - 4: Minor deviations with documented rationale
29
- - 3: Some deviations, all justified
30
- - 2: Multiple unjustified deviations
31
- - 1: No consistent design system applied
@@ -1,31 +0,0 @@
1
- # Evaluation Axis: Accessibility
2
-
3
- ## Layer Classification
4
-
5
- - Layer: invariant
6
- - Source: WCAG 2.1 compliance requirement
7
-
8
- ## Evaluation Criteria
9
-
10
- | Criterion | Description | Weight |
11
- | --------------------- | --------------------------------------- | ------ |
12
- | WCAG compliance | Meets WCAG 2.1 AA requirements | High |
13
- | Keyboard navigation | All interactions reachable via keyboard | High |
14
- | Screen reader support | Semantic HTML and ARIA labels | High |
15
- | Color contrast | Meets minimum contrast ratios | Medium |
16
-
17
- ## Measurement Approach
18
-
19
- | Metric | Method | Target |
20
- | ----------------- | ----------------------- | ------------------------- |
21
- | WCAG violations | Automated axe-core scan | 0 critical/serious |
22
- | Keyboard coverage | Manual tab-through test | 100% interactive elements |
23
- | Contrast ratio | Automated check | >= 4.5:1 (normal text) |
24
-
25
- ## Scoring Guide
26
-
27
- - 5: WCAG 2.1 AAA compliant
28
- - 4: WCAG 2.1 AA compliant, zero automated violations
29
- - 3: AA compliant with minor manual-only findings
30
- - 2: Critical accessibility gaps
31
- - 1: Not accessibility-tested
@@ -1,56 +0,0 @@
1
- # Evaluation Axis: Delight
2
-
3
- ## Layer Classification
4
-
5
- - Layer: invariant
6
- - Source: User satisfaction and perceived quality
7
-
8
- ## Evaluation Criteria
9
-
10
- | Criterion | Description | Weight |
11
- | ---------------------- | ---------------------------------------- | ------ |
12
- | Perceived performance | UI feels responsive and snappy | High |
13
- | Feedback quality | Clear, helpful feedback for user actions | Medium |
14
- | Progressive disclosure | Information revealed at the right moment | Medium |
15
- | Aesthetic quality | Visual polish and attention to detail | Low |
16
-
17
- ## Measurement Approach
18
-
19
- | Metric | Method | Target |
20
- | ------------------- | -------------------------- | ---------------------------- |
21
- | Perceived load time | User perception survey | "fast" or "very fast" >= 80% |
22
- | Feedback coverage | Audit of state transitions | 100% have feedback |
23
- | Satisfaction score | Post-task survey (1-5) | >= 4.0 |
24
-
25
- ## Scoring Guide
26
-
27
- - 5: Users report delight; exceeds expectations
28
- - 4: Smooth experience; meets expectations
29
- - 3: Functional but unremarkable
30
- - 2: Friction points noticed by users
31
- - 1: Frustrating experience reported
32
-
33
- ## Trend-derived Axes
34
-
35
- <!-- Add trend-derived axes below. Each requires source_translation from research findings. -->
36
-
37
- | Criterion | Source Translation | Description | Weight |
38
- | --------------- | ----------------------------------------- | ------------- | -------- |
39
- | (trend-derived) | (research finding → evaluation criterion) | (description) | (weight) |
40
-
41
- ## Product-specific Axes
42
-
43
- <!-- Add product-specific axes below. These are unique to the project's domain. -->
44
-
45
- | Criterion | Description | Weight |
46
- | ------------------ | ------------- | -------- |
47
- | (project-specific) | (description) | (weight) |
48
-
49
- ## Aggregate Scoring Rules
50
-
51
- | Element | Value |
52
- | ------------- | ------------------------------------------------ |
53
- | Weights | Invariant: 60%, Trend-derived: 25%, Product: 15% |
54
- | Normalization | Linear 1-5 scale per axis, weighted sum |
55
- | Thresholds | Accept >= 3.5, Refine 2.5-3.4, Pivot < 2.5 |
56
- | Stopping | Stop when all axes scored and aggregate computed |