@pzy560117/codex-harness 0.1.3 → 0.1.5

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 (386) hide show
  1. package/README.md +164 -27
  2. package/bin/harness.js +7 -7
  3. package/lib/commands/doctor.js +12 -12
  4. package/lib/commands/init.js +105 -105
  5. package/lib/commands/run.js +22 -22
  6. package/lib/commands/verify.js +12 -12
  7. package/lib/main.js +62 -62
  8. package/lib/powershell/find-powershell.js +20 -20
  9. package/lib/powershell/invoke-script.js +34 -34
  10. package/lib/project/assert-initialized.js +20 -20
  11. package/lib/project/detect-project-root.js +5 -5
  12. package/lib/release/cache-layout.js +34 -34
  13. package/lib/release/download-release.js +25 -25
  14. package/lib/release/package-source-layout.js +13 -13
  15. package/lib/release/release-config.js +6 -6
  16. package/lib/release/release-manifest.js +76 -76
  17. package/lib/release/resolve-package-source.js +21 -21
  18. package/lib/release/resolve-version.js +26 -26
  19. package/lib/release/unpack-zip.js +25 -25
  20. package/lib/release/verify-sha256.js +16 -16
  21. package/package-source/AGENTS.md +48 -57
  22. package/package-source/PACKAGE.md +7 -7
  23. package/package-source/README.md +85 -81
  24. package/package-source/docs/codex-harness-engineering/templates/AGENTS.md +51 -0
  25. package/package-source/docs/codex-harness-engineering/templates/README.md +21 -20
  26. package/package-source/docs/codex-harness-engineering/templates/bootstrap-codex-harness.ps1 +144 -110
  27. package/package-source/docs/codex-harness-engineering/templates/ci/AGENTS.md +15 -0
  28. package/package-source/docs/codex-harness-engineering/templates/ci/github-action-codex-review.yml +110 -110
  29. package/package-source/docs/codex-harness-engineering/templates/config/AGENTS.md +19 -0
  30. package/package-source/docs/codex-harness-engineering/templates/config/agents/architect.toml +18 -17
  31. package/package-source/docs/codex-harness-engineering/templates/config/agents/backend-worker.toml +15 -14
  32. package/package-source/docs/codex-harness-engineering/templates/config/agents/docs-researcher.toml +13 -12
  33. package/package-source/docs/codex-harness-engineering/templates/config/agents/docs-worker.toml +16 -15
  34. package/package-source/docs/codex-harness-engineering/templates/config/agents/explorer.toml +15 -14
  35. package/package-source/docs/codex-harness-engineering/templates/config/agents/failure-triage.toml +19 -18
  36. package/package-source/docs/codex-harness-engineering/templates/config/agents/frontend-worker.toml +15 -14
  37. package/package-source/docs/codex-harness-engineering/templates/config/agents/harness-writer.toml +16 -15
  38. package/package-source/docs/codex-harness-engineering/templates/config/agents/planner.toml +16 -15
  39. package/package-source/docs/codex-harness-engineering/templates/config/agents/readonly-research.toml +14 -13
  40. package/package-source/docs/codex-harness-engineering/templates/config/agents/reviewer.toml +13 -12
  41. package/package-source/docs/codex-harness-engineering/templates/config/agents/security-reviewer.toml +16 -15
  42. package/package-source/docs/codex-harness-engineering/templates/config/agents/stage1-reviewer.toml +15 -14
  43. package/package-source/docs/codex-harness-engineering/templates/config/agents/stage2-reviewer.toml +16 -15
  44. package/package-source/docs/codex-harness-engineering/templates/config/agents/test-planner.toml +18 -17
  45. package/package-source/docs/codex-harness-engineering/templates/config/agents/test-runner.toml +15 -14
  46. package/package-source/docs/codex-harness-engineering/templates/config/agents/visual-reviewer.toml +16 -15
  47. package/package-source/docs/codex-harness-engineering/templates/config/codex-agent-roles.md +24 -24
  48. package/package-source/docs/codex-harness-engineering/templates/config/codex-config.toml +12 -12
  49. package/package-source/docs/codex-harness-engineering/templates/config/codex-readme.md +6 -6
  50. package/package-source/docs/codex-harness-engineering/templates/config/env-check.ps1 +44 -40
  51. package/package-source/docs/codex-harness-engineering/templates/config/env.example +13 -12
  52. package/package-source/docs/codex-harness-engineering/templates/config/global-AGENTS.md +40 -40
  53. package/package-source/docs/codex-harness-engineering/templates/config/global-config.toml +19 -19
  54. package/package-source/docs/codex-harness-engineering/templates/config/rules/agents.md +118 -115
  55. package/package-source/docs/codex-harness-engineering/templates/config/rules/coding-style.md +57 -74
  56. package/package-source/docs/codex-harness-engineering/templates/config/rules/constitution.md +4 -4
  57. package/package-source/docs/codex-harness-engineering/templates/config/rules/git.rules +41 -41
  58. package/package-source/docs/codex-harness-engineering/templates/config/rules/harness.rules +29 -29
  59. package/package-source/docs/codex-harness-engineering/templates/config/rules/safety.rules +35 -35
  60. package/package-source/docs/codex-harness-engineering/templates/context/AGENTS.md +19 -0
  61. package/package-source/docs/codex-harness-engineering/templates/context/API_MAP.md +18 -0
  62. package/package-source/docs/codex-harness-engineering/templates/context/CHANGELOG_AI.md +11 -0
  63. package/package-source/docs/codex-harness-engineering/templates/context/CURRENT_TASK.md +114 -0
  64. package/package-source/docs/codex-harness-engineering/templates/context/DB_SCHEMA.md +14 -0
  65. package/package-source/docs/codex-harness-engineering/templates/context/DECISIONS.md +12 -0
  66. package/package-source/docs/codex-harness-engineering/templates/context/KNOWN_ISSUES.md +12 -0
  67. package/package-source/docs/codex-harness-engineering/templates/context/PROJECT_CONTEXT.md +14 -0
  68. package/package-source/docs/codex-harness-engineering/templates/context/architecture-brief.md +58 -58
  69. package/package-source/docs/codex-harness-engineering/templates/context/dev-plan.md +89 -83
  70. package/package-source/docs/codex-harness-engineering/templates/context/feature-pack.md +101 -101
  71. package/package-source/docs/codex-harness-engineering/templates/context/repo-map.md +102 -78
  72. package/package-source/docs/codex-harness-engineering/templates/context/service-dependency-matrix.yaml +25 -25
  73. package/package-source/docs/codex-harness-engineering/templates/contracts/AGENTS.md +17 -0
  74. package/package-source/docs/codex-harness-engineering/templates/contracts/README.md +24 -16
  75. package/package-source/docs/codex-harness-engineering/templates/contracts/openapi.yaml +182 -182
  76. package/package-source/docs/codex-harness-engineering/templates/contracts/orval.config.ts +20 -20
  77. package/package-source/docs/codex-harness-engineering/templates/contracts/prism-usage.md +41 -34
  78. package/package-source/docs/codex-harness-engineering/templates/design/AGENTS.md +21 -0
  79. package/package-source/docs/codex-harness-engineering/templates/design/ai-image-brief.md +122 -122
  80. package/package-source/docs/codex-harness-engineering/templates/design/component-map.md +45 -31
  81. package/package-source/docs/codex-harness-engineering/templates/design/design-brief.md +183 -178
  82. package/package-source/docs/codex-harness-engineering/templates/design/design-tokens.json +88 -88
  83. package/package-source/docs/codex-harness-engineering/templates/design/frontend-architecture.md +164 -146
  84. package/package-source/docs/codex-harness-engineering/templates/design/image-to-frontend-spec.md +64 -52
  85. package/package-source/docs/codex-harness-engineering/templates/design/screen-states.md +157 -122
  86. package/package-source/docs/codex-harness-engineering/templates/design/visual-parity-review.md +21 -21
  87. package/package-source/docs/codex-harness-engineering/templates/docs/AGENTS.md +19 -0
  88. package/package-source/docs/codex-harness-engineering/templates/docs/architecture-constraints.md +97 -83
  89. package/package-source/docs/codex-harness-engineering/templates/docs/code-semantics-and-navigation.md +54 -0
  90. package/package-source/docs/codex-harness-engineering/templates/docs/code-style-and-naming.md +116 -0
  91. package/package-source/docs/codex-harness-engineering/templates/docs/directory-structure-template.md +88 -0
  92. package/package-source/docs/codex-harness-engineering/templates/docs/env-and-deployment-template.md +60 -0
  93. package/package-source/docs/codex-harness-engineering/templates/docs/frontend-quality-rules.md +165 -138
  94. package/package-source/docs/codex-harness-engineering/templates/docs/governance-auto-repair.md +82 -80
  95. package/package-source/docs/codex-harness-engineering/templates/docs/harness-architecture.md +78 -78
  96. package/package-source/docs/codex-harness-engineering/templates/docs/install-manifest-governance.md +16 -16
  97. package/package-source/docs/codex-harness-engineering/templates/docs/knowledge-architecture.md +241 -219
  98. package/package-source/docs/codex-harness-engineering/templates/docs/knowledge-import.md +108 -108
  99. package/package-source/docs/codex-harness-engineering/templates/docs/knowledge-lint.md +98 -98
  100. package/package-source/docs/codex-harness-engineering/templates/docs/mcp-knowledge-governance.md +24 -0
  101. package/package-source/docs/codex-harness-engineering/templates/docs/new-project-checklist.md +7 -7
  102. package/package-source/docs/codex-harness-engineering/templates/docs/new-project-usage.md +107 -43
  103. package/package-source/docs/codex-harness-engineering/templates/docs/project-agents-template.md +211 -154
  104. package/package-source/docs/codex-harness-engineering/templates/docs/prompt-knowledge-integration.md +100 -89
  105. package/package-source/docs/codex-harness-engineering/templates/docs/regression-rules.md +47 -45
  106. package/package-source/docs/codex-harness-engineering/templates/docs/requirement-prep-kit/README.md +3 -3
  107. package/package-source/docs/codex-harness-engineering/templates/docs/rule-governance.md +98 -98
  108. package/package-source/docs/codex-harness-engineering/templates/docs/service-dependency-matrix.md +70 -55
  109. package/package-source/docs/codex-harness-engineering/templates/docs/task-session-strategy.md +133 -116
  110. package/package-source/docs/codex-harness-engineering/templates/docs/team-knowledge-sync.md +187 -187
  111. package/package-source/docs/codex-harness-engineering/templates/docs/trace-format.md +44 -32
  112. package/package-source/docs/codex-harness-engineering/templates/governance/AGENTS.md +18 -0
  113. package/package-source/docs/codex-harness-engineering/templates/governance/branch-protection-checklist.md +50 -50
  114. package/package-source/docs/codex-harness-engineering/templates/governance/feedback-evolution-loop.md +55 -55
  115. package/package-source/docs/codex-harness-engineering/templates/governance/retry-budget.yaml +30 -30
  116. package/package-source/docs/codex-harness-engineering/templates/governance/risk-levels.yaml +53 -53
  117. package/package-source/docs/codex-harness-engineering/templates/governance/sandbox-policy.md +13 -13
  118. package/package-source/docs/codex-harness-engineering/templates/hooks/AGENTS.md +15 -0
  119. package/package-source/docs/codex-harness-engineering/templates/hooks/hook-stop-verify.ps1 +171 -118
  120. package/package-source/docs/codex-harness-engineering/templates/hooks/hooks.json +40 -40
  121. package/package-source/docs/codex-harness-engineering/templates/knowledge/AGENTS.md +16 -0
  122. package/package-source/docs/codex-harness-engineering/templates/knowledge/catalog.md +6 -6
  123. package/package-source/docs/codex-harness-engineering/templates/knowledge/decisions/DECISION-HARNESS-001.md +39 -39
  124. package/package-source/docs/codex-harness-engineering/templates/knowledge/guidelines/GUIDELINE-RULES-001.md +30 -30
  125. package/package-source/docs/codex-harness-engineering/templates/knowledge/knowledge-catalog.md +41 -41
  126. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/templates/plan-template.md +252 -252
  127. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/templates/spec-template.md +145 -145
  128. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/templates/tasks-template.md +47 -47
  129. package/package-source/docs/codex-harness-engineering/templates/package-assets/AGENTS.md +19 -0
  130. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/AGENTS.md +25 -0
  131. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/README.md +118 -42
  132. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/START-HERE.md +66 -53
  133. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/agent-ecosystem-practices.md +140 -140
  134. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/best-practices.md +9 -9
  135. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/codex-global-rules-example.md +48 -48
  136. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/AGENTS.md +14 -0
  137. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/goal-templates.md +380 -380
  138. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/AGENTS.md +14 -0
  139. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/README.md +64 -64
  140. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/contracts/openapi.yaml +25 -25
  141. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/contracts/orval.config.ts +20 -20
  142. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/ai-image-brief.md +44 -44
  143. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/component-map.md +17 -17
  144. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/design-brief.md +58 -58
  145. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/frontend-architecture.md +106 -106
  146. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/image-to-frontend-spec.md +72 -72
  147. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/screen-states.md +25 -25
  148. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/ui-image-review.md +38 -38
  149. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/product/difficulty-research.md +39 -39
  150. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/product/page-inventory.md +5 -5
  151. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/product/prd-lite.md +41 -41
  152. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/product/requirement-interface-matrix.md +32 -32
  153. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/product/state-matrix.yaml +14 -14
  154. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/packages/api-client/generated/model/Ticket.ts +6 -6
  155. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/packages/api-client/generated/ticket-api.ts +35 -35
  156. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/packages/api-client/http-client.ts +8 -8
  157. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/packages/ui/TicketFilterBar.tsx +72 -72
  158. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/plans/features/ticket-filter.dev-plan.md +48 -48
  159. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/progress.txt +1 -1
  160. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/stories/TicketFilterBar.stories.tsx +33 -33
  161. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/task.json +54 -54
  162. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/verify.ps1 +42 -42
  163. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/global-rules-and-bootstrap.md +157 -157
  164. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/goal-harness-integration-guide.md +364 -364
  165. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/implementation-flow.md +7 -5
  166. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/implementation-guide.md +25 -25
  167. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/knowledge-surface-map.md +186 -0
  168. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/mode-matrix.md +57 -57
  169. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/new-project-usage.md +176 -0
  170. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/project-agents-template.md +168 -154
  171. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/superpowers-codex-solo-builder-playbook.md +676 -676
  172. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/AGENTS.md +22 -0
  173. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/context/AGENTS.md +14 -0
  174. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/context/API_MAP.md +18 -0
  175. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/context/CURRENT_TASK.md +89 -0
  176. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/context/dev-plan.md +166 -0
  177. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/contracts/AGENTS.md +14 -0
  178. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/contracts/README.md +24 -0
  179. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/contracts/prism-usage.md +41 -0
  180. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/AGENTS.md +14 -0
  181. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/component-map.md +45 -31
  182. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/design-brief.md +183 -178
  183. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/design-tokens.json +88 -88
  184. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/frontend-architecture.md +164 -146
  185. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/image-to-frontend-spec.md +64 -52
  186. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/screen-states.md +157 -122
  187. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/visual-parity-review.md +21 -21
  188. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/docs/AGENTS.md +14 -0
  189. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/docs/env-and-deployment-template.md +60 -0
  190. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/docs/frontend-quality-rules.md +161 -138
  191. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/docs/regression-rules.md +47 -0
  192. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/docs/trace-format.md +86 -0
  193. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/product/AGENTS.md +14 -0
  194. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/product/prd-lite.md +166 -0
  195. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/product/state-matrix.yaml +116 -0
  196. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/prompts/AGENTS.md +14 -0
  197. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/prompts/implement-one-task.md +150 -0
  198. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/prompts/repair-one-finding.md +70 -0
  199. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/spec/11-security-design.md +43 -0
  200. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/spec/AGENTS.md +14 -0
  201. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/AGENTS.md +14 -0
  202. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/EVIDENCE_PROTOCOL.md +54 -0
  203. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/NATURAL_LANGUAGE_TEST_CASES.md +690 -0
  204. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/REGRESSION_PLAN.md +28 -0
  205. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/TEST_STRATEGY.md +98 -0
  206. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/TRACEABILITY_MATRIX.md +23 -0
  207. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/verify-matrix.md +51 -0
  208. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/README.md +10 -10
  209. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/e2e.md +30 -30
  210. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/README.md +60 -60
  211. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/app/Mobile_App_Production_Readiness_Framework_/347/247/273/345/212/250/347/253/257/345/205/250/345/271/263/345/217/260/347/224/237/344/272/247/345/217/257/344/270/212/347/272/277/350/247/204/350/214/203.md +2457 -2457
  212. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/app/catalog.md +33 -33
  213. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/architecture.md +358 -358
  214. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/common/AI_Coding_Production_Control_Framework_AI/345/206/231/345/256/214/347/232/204/344/273/243/347/240/201/345/246/202/344/275/225/344/270/215/345/244/261/346/216/247.md +2055 -2055
  215. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/common/catalog.md +34 -34
  216. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/initial-content.md +296 -296
  217. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/integration-roadmap.md +221 -221
  218. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/architecture-constraints.md +95 -83
  219. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/code-semantics-and-navigation.md +17 -0
  220. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/code-style-and-naming.md +116 -0
  221. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/frontend-quality-rules.md +138 -138
  222. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/governance-auto-repair.md +82 -80
  223. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/mcp-knowledge-governance.md +24 -0
  224. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/service-dependency-matrix.md +55 -55
  225. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/speckit-requirements-gate.md +124 -124
  226. package/package-source/docs/codex-harness-engineering/templates/package-assets/root/PACKAGE.md +7 -7
  227. package/package-source/docs/codex-harness-engineering/templates/package-assets/root/README.md +52 -52
  228. package/package-source/docs/codex-harness-engineering/templates/package-assets/root/install-agent-here.ps1 +57 -57
  229. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/agents.md +115 -115
  230. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/coding-style.md +57 -74
  231. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/constitution.md +4 -4
  232. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/git.rules +41 -41
  233. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/harness.rules +29 -29
  234. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/safety.rules +35 -35
  235. package/package-source/docs/codex-harness-engineering/templates/package-assets/scripts/ai-workflow/check-ai-sync-drift.ps1 +205 -205
  236. package/package-source/docs/codex-harness-engineering/templates/package-assets/scripts/ai-workflow/sync-ai-config-to-targets.ps1 +826 -826
  237. package/package-source/docs/codex-harness-engineering/templates/package-assets/scripts/ai-workflow/sync-targets.example.json +35 -35
  238. package/package-source/docs/codex-harness-engineering/templates/package-assets/scripts/harness/harness-governance-check.ps1 +864 -366
  239. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/HOW_TO_USE_SKILLS.md +79 -79
  240. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/academic-mermaid-diagrams/SKILL.md +172 -172
  241. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/ai-config-git-sync/SKILL.md +152 -152
  242. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/ai-config-git-sync/references/command-recipes.md +92 -92
  243. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/auto-commit/SKILL.md +324 -322
  244. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/better-icons/SKILL.md +3 -3
  245. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/claude-openrouter-clash-debug/SKILL.md +100 -100
  246. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/claude-openrouter-clash-debug/references/windows-openrouter-clash-playbook.md +94 -94
  247. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/claude-openrouter-clash-debug/scripts/diagnose-openrouter-route.ps1 +282 -282
  248. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/claude-openrouter-clash-debug/scripts/ensure-openrouter-rule.ps1 +101 -101
  249. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/fixing-metadata/SKILL.md +6 -6
  250. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/frontend-design/SKILL.md +37 -37
  251. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/git-xianyu-analyzer/SKILL.md +3 -3
  252. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/harness-surface-sync/SKILL.md +204 -188
  253. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/harness-surface-sync/references/current-repo-sync-matrix.md +150 -110
  254. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/harness-surface-sync/references/stale-patterns.md +65 -65
  255. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/init-autopilot/SKILL.md +17 -15
  256. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/log-analysis-optimization/SKILL.md +5 -5
  257. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/prd-writer-skill/SKILL.md +28 -28
  258. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/qa-e2e-planner/SKILL.md +11 -11
  259. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/qa-e2e-runner/SKILL.md +6 -6
  260. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/qa-mock-cleaner/SKILL.md +4 -4
  261. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/qoder-codex-api-config/SKILL.md +67 -67
  262. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/qoder-codex-api-config/agents/openai.yaml +7 -7
  263. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/qoder-codex-api-config/scripts/configure-qoder-codex-api.ps1 +278 -278
  264. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/requirements-design-template/SKILL.md +87 -87
  265. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/skills-index.md +12 -12
  266. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/speckit-analyze/SKILL.md +34 -34
  267. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/speckit-checklist/SKILL.md +8 -8
  268. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/speckit-clarify/SKILL.md +28 -28
  269. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/speckit-e2e-tasks/SKILL.md +12 -12
  270. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/speckit-implement/SKILL.md +37 -37
  271. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/speckit-plan/SKILL.md +140 -138
  272. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/speckit-specify/SKILL.md +100 -100
  273. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/speckit-tasks/SKILL.md +86 -86
  274. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/speckit-verify/SKILL.md +144 -142
  275. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/sync-project-root-docs/SKILL.md +145 -143
  276. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/sync-project-root-docs/references/current-repo-notes.md +42 -41
  277. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/sync-project-root-docs/references/github-samples.md +33 -33
  278. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/sync-project-root-docs/scripts/collect-root-doc-facts.ps1 +174 -145
  279. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/thesis-writing/references/ai-integrity-and-originality.md +191 -191
  280. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/thesis-writing/references/citation-templates.md +99 -99
  281. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/thesis-writing/references/final-checklist.md +60 -60
  282. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/thesis-writing/references/photographer-booking-paper.md +85 -85
  283. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/thesis-writing/references/test-result-templates.md +22 -22
  284. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/thesis-writing/references/thesis-analysis-template.md +63 -63
  285. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/update-codemaps/SKILL.md +31 -31
  286. package/package-source/docs/codex-harness-engineering/templates/package-assets/workflows/README.md +15 -15
  287. package/package-source/docs/codex-harness-engineering/templates/package-assets/workflows/speckit.analyze.md +60 -60
  288. package/package-source/docs/codex-harness-engineering/templates/package-assets/workflows/speckit.checklist.md +8 -8
  289. package/package-source/docs/codex-harness-engineering/templates/package-assets/workflows/speckit.clarify.md +28 -28
  290. package/package-source/docs/codex-harness-engineering/templates/package-assets/workflows/speckit.e2e-testing.md +10 -10
  291. package/package-source/docs/codex-harness-engineering/templates/package-assets/workflows/speckit.implement.md +56 -56
  292. package/package-source/docs/codex-harness-engineering/templates/package-assets/workflows/speckit.plan.md +137 -134
  293. package/package-source/docs/codex-harness-engineering/templates/package-assets/workflows/speckit.specify.md +100 -100
  294. package/package-source/docs/codex-harness-engineering/templates/package-assets/workflows/speckit.tasks.md +86 -86
  295. package/package-source/docs/codex-harness-engineering/templates/package-assets/workflows/speckit.verify.md +130 -130
  296. package/package-source/docs/codex-harness-engineering/templates/product/AGENTS.md +19 -0
  297. package/package-source/docs/codex-harness-engineering/templates/product/acceptance-criteria.md +47 -47
  298. package/package-source/docs/codex-harness-engineering/templates/product/difficulty-research.md +47 -47
  299. package/package-source/docs/codex-harness-engineering/templates/product/page-inventory.md +21 -21
  300. package/package-source/docs/codex-harness-engineering/templates/product/prd-lite.md +166 -158
  301. package/package-source/docs/codex-harness-engineering/templates/product/requirement-interface-matrix.md +37 -37
  302. package/package-source/docs/codex-harness-engineering/templates/product/state-matrix.yaml +116 -105
  303. package/package-source/docs/codex-harness-engineering/templates/prompts/AGENTS.md +15 -0
  304. package/package-source/docs/codex-harness-engineering/templates/prompts/controller-loop.md +88 -88
  305. package/package-source/docs/codex-harness-engineering/templates/prompts/failure-triage.md +71 -69
  306. package/package-source/docs/codex-harness-engineering/templates/prompts/harness-audit.md +54 -52
  307. package/package-source/docs/codex-harness-engineering/templates/prompts/implement-one-task.md +150 -148
  308. package/package-source/docs/codex-harness-engineering/templates/prompts/repair-one-finding.md +70 -67
  309. package/package-source/docs/codex-harness-engineering/templates/prompts/review-one-task.md +45 -43
  310. package/package-source/docs/codex-harness-engineering/templates/prompts/review-stage1-spec.md +111 -109
  311. package/package-source/docs/codex-harness-engineering/templates/prompts/review-stage2-quality.md +82 -80
  312. package/package-source/docs/codex-harness-engineering/templates/prompts/visual-evaluator.md +80 -78
  313. package/package-source/docs/codex-harness-engineering/templates/prompts/worker-role/backend-worker.md +41 -41
  314. package/package-source/docs/codex-harness-engineering/templates/prompts/worker-role/docs-worker.md +28 -28
  315. package/package-source/docs/codex-harness-engineering/templates/prompts/worker-role/frontend-worker.md +46 -46
  316. package/package-source/docs/codex-harness-engineering/templates/prompts/worker-role/harness-writer.md +40 -40
  317. package/package-source/docs/codex-harness-engineering/templates/prompts/worker-role/test-runner.md +27 -27
  318. package/package-source/docs/codex-harness-engineering/templates/runtime/AGENTS.md +66 -50
  319. package/package-source/docs/codex-harness-engineering/templates/runtime/codex-loop.ps1 +2129 -231
  320. package/package-source/docs/codex-harness-engineering/templates/runtime/doctor.ps1 +224 -224
  321. package/package-source/docs/codex-harness-engineering/templates/runtime/project-task-template.json +42 -39
  322. package/package-source/docs/codex-harness-engineering/templates/runtime/scripts/test-install-modes.ps1 +2 -2
  323. package/package-source/docs/codex-harness-engineering/templates/runtime/smoke-task.json +52 -52
  324. package/package-source/docs/codex-harness-engineering/templates/runtime/task-run-profile.json +86 -86
  325. package/package-source/docs/codex-harness-engineering/templates/runtime/task.json +11 -8
  326. package/package-source/docs/codex-harness-engineering/templates/runtime/verify.ps1 +21 -21
  327. package/package-source/docs/codex-harness-engineering/templates/scripts/AGENTS.md +15 -0
  328. package/package-source/docs/codex-harness-engineering/templates/scripts/ai-workflow/check-ai-sync-drift.ps1 +205 -205
  329. package/package-source/docs/codex-harness-engineering/templates/scripts/harness/harness-governance-check.ps1 +864 -366
  330. package/package-source/docs/codex-harness-engineering/templates/spec/10-data-model.md +23 -7
  331. package/package-source/docs/codex-harness-engineering/templates/spec/11-security-design.md +30 -13
  332. package/package-source/docs/codex-harness-engineering/templates/spec/AGENTS.md +15 -0
  333. package/package-source/docs/codex-harness-engineering/templates/testing/ACCEPTANCE_CRITERIA.md +39 -39
  334. package/package-source/docs/codex-harness-engineering/templates/testing/ACCEPTANCE_EXAMPLES.md +37 -37
  335. package/package-source/docs/codex-harness-engineering/templates/testing/AGENTS.md +19 -0
  336. package/package-source/docs/codex-harness-engineering/templates/testing/EVIDENCE_PROTOCOL.md +54 -48
  337. package/package-source/docs/codex-harness-engineering/templates/testing/NATURAL_LANGUAGE_TEST_CASES.md +5 -4
  338. package/package-source/docs/codex-harness-engineering/templates/testing/REGRESSION_PLAN.md +28 -20
  339. package/package-source/docs/codex-harness-engineering/templates/testing/RISK_BASED_TEST_PLAN.md +16 -16
  340. package/package-source/docs/codex-harness-engineering/templates/testing/TEST_STRATEGY.md +98 -97
  341. package/package-source/docs/codex-harness-engineering/templates/testing/TRACEABILITY_MATRIX.md +6 -5
  342. package/package-source/docs/codex-harness-engineering/templates/testing/coverage-policy.md +25 -25
  343. package/package-source/docs/codex-harness-engineering/templates/testing/e2e-plan.md +139 -139
  344. package/package-source/docs/codex-harness-engineering/templates/testing/failure-findings.example.json +3 -3
  345. package/package-source/docs/codex-harness-engineering/templates/testing/failure-triage.md +62 -62
  346. package/package-source/docs/codex-harness-engineering/templates/testing/test-data-plan.md +36 -36
  347. package/package-source/docs/codex-harness-engineering/templates/testing/test-report.md +85 -41
  348. package/package-source/docs/codex-harness-engineering/templates/testing/verify-matrix.md +15 -5
  349. package/package-source/docs/codex-harness-engineering/templates/tools/AGENTS.md +14 -0
  350. package/package-source/docs/codex-harness-engineering/templates/tools/harness/acceptance-lint.ps1 +37 -0
  351. package/package-source/docs/codex-harness-engineering/templates/tools/harness/architecture-lint.ps1 +150 -0
  352. package/package-source/docs/codex-harness-engineering/templates/tools/harness/backend-lint.ps1 +137 -0
  353. package/package-source/docs/codex-harness-engineering/templates/tools/harness/business-lint.ps1 +148 -0
  354. package/package-source/docs/codex-harness-engineering/templates/tools/harness/component-lint.ps1 +148 -0
  355. package/package-source/docs/codex-harness-engineering/templates/tools/harness/config-lint.ps1 +159 -0
  356. package/package-source/docs/codex-harness-engineering/templates/tools/harness/context-lint.ps1 +187 -0
  357. package/package-source/docs/codex-harness-engineering/templates/tools/harness/contract-lint.ps1 +148 -0
  358. package/package-source/docs/codex-harness-engineering/templates/tools/harness/data-lint.ps1 +37 -0
  359. package/package-source/docs/codex-harness-engineering/templates/tools/harness/directory-lint.ps1 +152 -0
  360. package/package-source/docs/codex-harness-engineering/templates/tools/harness/docs-lint.ps1 +40 -0
  361. package/package-source/docs/codex-harness-engineering/templates/tools/harness/impact-lint.ps1 +148 -0
  362. package/package-source/docs/codex-harness-engineering/templates/tools/harness/integration-lint.ps1 +37 -0
  363. package/package-source/docs/codex-harness-engineering/templates/tools/harness/mobile-lint.ps1 +37 -0
  364. package/package-source/docs/codex-harness-engineering/templates/tools/harness/observability-lint.ps1 +137 -0
  365. package/package-source/docs/codex-harness-engineering/templates/tools/harness/performance-lint.ps1 +148 -0
  366. package/package-source/docs/codex-harness-engineering/templates/tools/harness/refactor-lint.ps1 +137 -0
  367. package/package-source/docs/codex-harness-engineering/templates/tools/harness/security-lint.ps1 +159 -0
  368. package/package-source/docs/codex-harness-engineering/templates/tools/harness/session-lint.ps1 +126 -0
  369. package/package-source/docs/codex-harness-engineering/templates/tools/harness/spec-lint.ps1 +285 -0
  370. package/package-source/docs/codex-harness-engineering/templates/tools/harness/state-lint.ps1 +137 -0
  371. package/package-source/docs/codex-harness-engineering/templates/tools/harness/style-lint.ps1 +155 -0
  372. package/package-source/docs/codex-harness-engineering/templates/tools/harness/testing-lint.ps1 +192 -0
  373. package/package-source/docs/codex-harness-engineering/templates/tools/harness/ui-lint.ps1 +148 -0
  374. package/package-source/docs/codex-harness-engineering/templates/trace/AGENTS.md +16 -0
  375. package/package-source/docs/codex-harness-engineering/templates/trace/eval-case.yaml +24 -24
  376. package/package-source/docs/codex-harness-engineering/templates/trace/trace.schema.json +101 -101
  377. package/package-source/install-manifest.json +149 -79
  378. package/package-source/tools/install/ai-workflow/check-ai-sync-drift.ps1 +205 -205
  379. package/package-source/tools/install/ai-workflow/sync-ai-config-to-targets.ps1 +826 -826
  380. package/package-source/tools/install/ai-workflow/sync-targets.example.json +35 -35
  381. package/package-source/tools/install/bootstrap-codex-harness.ps1 +145 -129
  382. package/package-source/tools/install/env-check.ps1 +40 -40
  383. package/package-source/tools/install/init-project.ps1 +1 -1
  384. package/package-source/tools/install/install-agent-here.ps1 +57 -57
  385. package/package-source/tools/install/install-agent.ps1 +33 -31
  386. package/package.json +23 -23
@@ -1,97 +1,98 @@
1
- # 测试策略
2
-
3
- **功能 / 项目**:
4
- **最后更新**:
5
- **负责人**:
6
-
7
- ## 测试层级
8
-
9
- - 单元:
10
- - 组件:
11
- - API / 契约:
12
- - 集成:
13
- - E2E:
14
- - 视觉:
15
-
16
- ## 开发验证与验收验证分层
17
-
18
- Harness 把实现过程中的快速反馈和交付前的完整验收拆成两个独立闸门:
19
-
20
- | 闸门 | 目的 | 典型验证 | 完成条件 |
21
- | --- | --- | --- | --- |
22
- | 自然语言测试用例 | 把 PRD 每条需求转成可审查、可追溯、可转脚本的测试用例 | `NATURAL_LANGUAGE_TEST_CASES.md`、需求类型覆盖矩阵、Gherkin/步骤化用例、Oracle、测试数据、证据路径、TDD RED 预期失败 | 每条需求都要分类;P0/P1 按需求类型满足最小用例数;P2 需写用例或豁免原因;TDD 候选用例可被 `tdd_contract.red.source_case_ids` 引用 |
23
- | TDD RED | 在生产代码变更前证明新增或变更行为当前缺失 | 聚焦单元、组件、契约或 API 测试;必须先失败且失败原因匹配预期 | 作为 `tdd_contract.red` 证据进入任务;失败原因不是目标行为缺失时不得进入实现 |
24
- | TDD GREEN / REFACTOR | 用最小实现让同一聚焦测试通过,并在重构后保持相关验证绿色 | 同一 focused test、affected tests、coverage、lint 或类型检查 | 作为 `tdd_contract.green` 和 `tdd_contract.refactor_guard` 证据进入任务;不能替代最终验收 |
25
- | 开发验证 | 支撑编码过程中的快速反馈,证明局部改动没有破坏直接相关行为 | 单元、组件、局部 API、契约检查、affected tests、静态检查、类型检查、lint | 作为实现过程证据进入 `development_validation`,但不能单独声明任务完成 |
26
- | 验收验证 | 从用户、业务闭环或发布候选视角证明当前交付可被验收 | 用户故事完整链路、跨故事主流程、真实入口 E2E、数据副作用、失败态、P0/P1 回归、视觉/可访问性确认 | 作为完成前 fresh evidence 进入 `acceptance_validation`,缺失时任务必须 BLOCKED 或有 owner 批准的 exemption |
27
-
28
- 开发验证通过只说明局部实现可继续推进,不等于用户验收通过。PRD 完成后、进入实现前必须先生成自然语言测试用例;每个 `feature_impl` 默认要求 TDD:从自然语言用例选择 TDD 候选,先写聚焦测试并确认 RED 失败,再写最小实现确认 GREEN,通过后才允许重构。每个 `feature_impl` 完成前必须在代码写完后重新运行故事级验收链路;每个 `release` 完成前必须运行发布候选级跨故事验收链路。验收验证不得直接复用编码中途的旧日志,除非证据协议明确证明其仍是当前变更集的 fresh evidence。
29
-
30
- ## 自然语言用例规模规则
31
-
32
- 自然语言测试用例不是每条需求固定写 1 条,而是先判定需求类型,再按 `NATURAL_LANGUAGE_TEST_CASES.md` 的覆盖矩阵取最小用例数。基础原则:
33
-
34
- - P0 需求默认不少于 5 条,P1 需求默认不少于 3 条,P2 可为 1-2 条并说明不进入 TDD 候选的原因。
35
- - 低于默认数量必须写明豁免原因、替代证据和 owner 批准人。
36
- - 只读查询至少覆盖正常、空数据和无权限;列表类还要覆盖筛选、分页、排序或组合条件。
37
- - 新增、编辑、删除等写操作至少覆盖成功副作用、输入失败、权限失败无副作用、非法状态或并发冲突。
38
- - 权限、状态机、异步链路、外部系统、金额库存、文件处理和安全需求必须按风险路径加量,不能只写 happy path。
39
- - 一个需求跨多个类型时,按风险最高类型取基准,再补齐其他类型的必需路径。
40
- - TESTCASE 阶段必须在覆盖检查表中写明“需求类型、风险因子、矩阵基准用例数、风险加量、最终要求用例数、已写用例数、加量理由”,不足时不得进入 `feature_impl`。
41
- - 非 TDD 自然语言用例必须映射到 `story_full_chain`、`acceptance_validation`、回归或 `verify-matrix`,不能因为不适合作为 RED 种子就从验收链路消失。
42
-
43
- ## QA Harness 最小闭环
44
-
45
- 测试设计按下面顺序推进,不允许直接从需求跳到测试脚本:
46
-
47
- 1. 资料输入: 读取需求、代码、API 契约、UI、数据模型、权限规则和历史缺陷。
48
- 2. 风险建模: 输出业务实体、状态、角色权限、接口、数据副作用和外部依赖风险。
49
- 3. 自然语言用例: 按 PRD / Requirement ID 识别需求类型和风险因子,按覆盖矩阵写出目标、来源、前置条件、动作、预期结果、Oracle、测试数据、证据路径和 TDD RED 预期失败。
50
- 4. 测试意图: 将自然语言用例映射到测试层级、风险、数据和可执行验证命令。
51
- 5. Oracle 审查: 通过后才生成或修改测试脚本。
52
- 6. TDD RED: `feature_impl` 从 `NATURAL_LANGUAGE_TEST_CASES.md` 的 TDD 候选用例生成聚焦测试,运行 `tdd_contract.red.command`,确认失败原因匹配目标行为缺失并记录证据。
53
- 7. TDD GREEN: 写最小实现后运行 `tdd_contract.green.command`,确认同一聚焦测试通过。
54
- 8. TDD REFACTOR: 重构后运行 `tdd_contract.refactor_guard.command` 和必要覆盖率命令,确认相关验证仍通过。
55
- 9. 开发验证: 编码过程中运行 affected tests、局部契约、类型检查、lint 或单元 / 组件测试,记录 `development_validation` 证据。
56
- 10. 验收验证: 代码写完后从用户、业务闭环或发布候选视角运行完整链路,记录 `acceptance_validation` fresh evidence。
57
- 11. 证据归档: 把命令、退出码、日志、截图、DB diff、事件、Trace 等写入证据路径。
58
- 12. 失败归因: 区分产品缺陷、测试缺陷、环境问题和数据问题。
59
- 13. 回归沉淀: 真实缺陷修复后补充回归用例或知识候选。
60
-
61
- ## Oracle 优先规则
62
-
63
- 每个测试用例必须在写脚本前定义至少一个业务 Oracle。写接口、状态流转、权限和数据一致性场景通常需要多个 Oracle 组合:
64
-
65
- | Oracle 类型 | 适用场景 | 最小要求 |
66
- | --- | --- | --- |
67
- | 返回值 | API、服务、UI 动作 | 状态码、错误码、关键字段和业务语义 |
68
- | Schema / Contract | API、事件、文件 | 字段类型、必填、枚举、版本兼容 |
69
- | 数据库副作用 | POST / PUT / PATCH / DELETE、批处理 | before / after diff、目标字段变化、非目标字段不变 |
70
- | 缓存 | 读写缓存、权限缓存、多租户 | key 维度、TTL、失效、跨用户隔离 |
71
- | 事件 / 队列 | 异步链路、Webhook、消息消费 | event type、payload、重试、幂等、DLQ |
72
- | 审计 | 登录、权限、资金、删除、审批 | actoraction、object、result、time |
73
- | 权限 | 水平越权、垂直越权、字段级权限 | 允许 / 拒绝符合权限矩阵,拒绝时无副作用 |
74
- | 状态机 | 订单、审批、发布、退款等状态流转 | 合法转移成功,非法转移失败且无污染 |
75
- | 不变量 | 金额、库存、次数、唯一性 | 余额 / 库存不为负,总额守恒,唯一业务结果 |
76
- | Trace / 证据 | E2E、集成、跨服务 | 命中预期链路、日志或 coverage 可证明目标路径 |
77
-
78
- ## 假测试拦截规则
79
-
80
- Stage 2 必须拦截下列测试:
81
-
82
- - 只断言 `200`、`truthy`、元素存在或 snapshot,没有业务断言。
83
- - 写操作没有 DB、缓存、事件、审计、文件或通知等副作用断言。
84
- - 权限失败只断言 `403`,没有验证目标数据未变化、响应未泄露和缓存未污染。
85
- - mock 了当前被测 service、权限判断、状态机、数据库写入或核心业务路径。
86
- - 没有绑定 Requirement ID、代码分支、API 契约、安全风险、状态机转移或历史缺陷来源。
87
- - 没有执行证据,或证据不是当前变更集产生的 fresh evidence。
88
- - 测试名称覆盖多个路径,但实际只跑 happy path
89
-
90
- ## 阻塞性失败
91
-
92
- -
93
-
94
- ## Fresh Evidence 策略
95
-
96
- - Stage 17 只确认 fresh evidence 和回归状态。
97
- - 缺少验收示例或需求追溯属于实现前缺口,不是 Stage 17 的任务。
1
+ # 测试策略
2
+
3
+ **功能 / 项目**:
4
+ **最后更新**:
5
+ **负责人**:
6
+
7
+ ## 测试层级
8
+
9
+ - 单元:
10
+ - 组件:
11
+ - API / 契约:
12
+ - 集成:
13
+ - E2E:
14
+ - 视觉:
15
+
16
+ ## 开发验证与验收验证分层
17
+
18
+ Harness 把实现过程中的快速反馈和交付前的完整验收拆成两个独立闸门:
19
+
20
+ | 闸门 | 目的 | 典型验证 | 完成条件 |
21
+ | --- | --- | --- | --- |
22
+ | 自然语言测试用例 | 把 PRD 每条需求转成可审查、可追溯、可转脚本的测试用例 | `NATURAL_LANGUAGE_TEST_CASES.md`、需求类型覆盖矩阵、Gherkin/步骤化用例、Oracle、测试数据、证据路径、TDD RED 预期失败 | 每条需求都要分类;P0/P1 按需求类型满足最小用例数;P2 需写用例或豁免原因;TDD 候选用例可被 `tdd_contract.red.source_case_ids` 引用 |
23
+ | TDD RED | 在生产代码变更前证明新增或变更行为当前缺失 | 聚焦单元、组件、契约或 API 测试;必须先失败且失败原因匹配预期 | 作为 `tdd_contract.red` 证据进入任务;失败原因不是目标行为缺失时不得进入实现 |
24
+ | TDD GREEN / REFACTOR | 用最小实现让同一聚焦测试通过,并在重构后保持相关验证绿色 | 同一 focused test、affected tests、coverage、lint 或类型检查 | 作为 `tdd_contract.green` 和 `tdd_contract.refactor_guard` 证据进入任务;不能替代最终验收 |
25
+ | 开发验证 | 支撑编码过程中的快速反馈,证明局部改动没有破坏直接相关行为 | 单元、组件、局部 API、契约检查、affected tests、静态检查、类型检查、lint | 作为实现过程证据进入 `development_validation`,但不能单独声明任务完成 |
26
+ | 验收验证 | 从用户、业务闭环或发布候选视角证明当前交付可被验收 | 用户故事完整链路、跨故事主流程、真实入口 E2E、数据副作用、失败态、P0/P1 回归、视觉/可访问性确认 | 作为完成前 fresh evidence 进入 `acceptance_validation`,缺失时任务必须 BLOCKED 或有 owner 批准的 exemption |
27
+
28
+ 开发验证通过只说明局部实现可继续推进,不等于用户验收通过。PRD 完成后、进入实现前必须先生成自然语言测试用例;每个 `feature_impl` 默认要求 TDD:从自然语言用例选择 TDD 候选,先写聚焦测试并确认 RED 失败,再写最小实现确认 GREEN,通过后才允许重构。每个 `feature_impl` 完成前必须在代码写完后重新运行故事级验收链路;每个 `release` 完成前必须运行发布候选级跨故事验收链路。验收验证不得直接复用编码中途的旧日志,除非证据协议明确证明其仍是当前变更集的 fresh evidence。
29
+
30
+ ## 自然语言用例规模规则
31
+
32
+ 自然语言测试用例不是每条需求固定写 1 条,而是先判定需求类型,再按 `NATURAL_LANGUAGE_TEST_CASES.md` 的覆盖矩阵取最小用例数。基础原则:
33
+
34
+ - P0 需求默认不少于 5 条,P1 需求默认不少于 3 条,P2 可为 1-2 条并说明不进入 TDD 候选的原因。
35
+ - 低于默认数量必须写明豁免原因、替代证据和 owner 批准人。
36
+ - 只读查询至少覆盖正常、空数据和无权限;列表类还要覆盖筛选、分页、排序或组合条件。
37
+ - 新增、编辑、删除等写操作至少覆盖成功副作用、输入失败、权限失败无副作用、非法状态或并发冲突。
38
+ - 权限、状态机、异步链路、外部系统、金额库存、文件处理和安全需求必须按风险路径加量,不能只写 happy path。
39
+ - 一个需求跨多个类型时,按风险最高类型取基准,再补齐其他类型的必需路径。
40
+ - TESTCASE 阶段必须在覆盖检查表中写明“需求类型、风险因子、矩阵基准用例数、风险加量、最终要求用例数、已写用例数、加量理由”,不足时不得进入 `feature_impl`。
41
+ - 非 TDD 自然语言用例必须映射到 `story_full_chain`、`acceptance_validation`、回归或 `verify-matrix`,不能因为不适合作为 RED 种子就从验收链路消失。
42
+ - 业务规则如果会影响状态流转、副作用、金额/库存、权限或幂等,必须至少有一条异常路径或无副作用路径用例。
43
+
44
+ ## QA Harness 最小闭环
45
+
46
+ 测试设计按下面顺序推进,不允许直接从需求跳到测试脚本:
47
+
48
+ 1. 资料输入: 读取需求、代码、API 契约、UI、数据模型、权限规则和历史缺陷。
49
+ 2. 风险建模: 输出业务实体、状态、角色权限、接口、数据副作用和外部依赖风险。
50
+ 3. 自然语言用例: 按 PRD / Requirement ID 识别需求类型和风险因子,按覆盖矩阵写出目标、来源、前置条件、动作、预期结果、Oracle、测试数据、证据路径和 TDD RED 预期失败。
51
+ 4. 测试意图: 将自然语言用例映射到测试层级、风险、数据和可执行验证命令。
52
+ 5. Oracle 审查: 通过后才生成或修改测试脚本。
53
+ 6. TDD RED: `feature_impl` `NATURAL_LANGUAGE_TEST_CASES.md` 的 TDD 候选用例生成聚焦测试,运行 `tdd_contract.red.command`,确认失败原因匹配目标行为缺失并记录证据。
54
+ 7. TDD GREEN: 写最小实现后运行 `tdd_contract.green.command`,确认同一聚焦测试通过。
55
+ 8. TDD REFACTOR: 重构后运行 `tdd_contract.refactor_guard.command` 和必要覆盖率命令,确认相关验证仍通过。
56
+ 9. 开发验证: 编码过程中运行 affected tests、局部契约、类型检查、lint 或单元 / 组件测试,记录 `development_validation` 证据。
57
+ 10. 验收验证: 代码写完后从用户、业务闭环或发布候选视角运行完整链路,记录 `acceptance_validation` fresh evidence。
58
+ 11. 证据归档: 把命令、退出码、日志、截图、DB diff、事件、Trace 等写入证据路径。
59
+ 12. 失败归因: 区分产品缺陷、测试缺陷、环境问题和数据问题。
60
+ 13. 回归沉淀: 真实缺陷修复后补充回归用例或知识候选。
61
+
62
+ ## Oracle 优先规则
63
+
64
+ 每个测试用例必须在写脚本前定义至少一个业务 Oracle。写接口、状态流转、权限和数据一致性场景通常需要多个 Oracle 组合:
65
+
66
+ | Oracle 类型 | 适用场景 | 最小要求 |
67
+ | --- | --- | --- |
68
+ | 返回值 | API、服务、UI 动作 | 状态码、错误码、关键字段和业务语义 |
69
+ | Schema / Contract | API、事件、文件 | 字段类型、必填、枚举、版本兼容 |
70
+ | 数据库副作用 | POST / PUT / PATCH / DELETE、批处理 | before / after diff、目标字段变化、非目标字段不变 |
71
+ | 缓存 | 读写缓存、权限缓存、多租户 | key 维度、TTL、失效、跨用户隔离 |
72
+ | 事件 / 队列 | 异步链路、Webhook、消息消费 | event typepayload、重试、幂等、DLQ |
73
+ | 审计 | 登录、权限、资金、删除、审批 | actor、action、object、result、time |
74
+ | 权限 | 水平越权、垂直越权、字段级权限 | 允许 / 拒绝符合权限矩阵,拒绝时无副作用 |
75
+ | 状态机 | 订单、审批、发布、退款等状态流转 | 合法转移成功,非法转移失败且无污染 |
76
+ | 不变量 | 金额、库存、次数、唯一性 | 余额 / 库存不为负,总额守恒,唯一业务结果 |
77
+ | Trace / 证据 | E2E、集成、跨服务 | 命中预期链路、日志或 coverage 可证明目标路径 |
78
+
79
+ ## 假测试拦截规则
80
+
81
+ Stage 2 必须拦截下列测试:
82
+
83
+ - 只断言 `200`、`truthy`、元素存在或 snapshot,没有业务断言。
84
+ - 写操作没有 DB、缓存、事件、审计、文件或通知等副作用断言。
85
+ - 权限失败只断言 `403`,没有验证目标数据未变化、响应未泄露和缓存未污染。
86
+ - mock 了当前被测 service、权限判断、状态机、数据库写入或核心业务路径。
87
+ - 没有绑定 Requirement ID、代码分支、API 契约、安全风险、状态机转移或历史缺陷来源。
88
+ - 没有执行证据,或证据不是当前变更集产生的 fresh evidence
89
+ - 测试名称覆盖多个路径,但实际只跑 happy path。
90
+
91
+ ## 阻塞性失败
92
+
93
+ -
94
+
95
+ ## Fresh Evidence 策略
96
+
97
+ - Stage 17 只确认 fresh evidence 和回归状态。
98
+ - 缺少验收示例或需求追溯属于实现前缺口,不是 Stage 17 的任务。
@@ -15,8 +15,9 @@
15
15
  ## 规则
16
16
 
17
17
  - 每条 P0/P1 需求都必须恰好出现一次,或被明确拆分。
18
- - 每一行都必须指向至少一个测试层级和一个证据路径。
19
- - UI 行必须包含所需状态或明确豁免。
20
- - API / 数据行必须包含契约或 schema 校验证据。
21
- - 写操作、权限失败、非法状态流转和异步链路必须包含副作用或无副作用 Oracle。
22
- - 缺少 Oracle 或证据路径的 P0/P1 行不能进入实现。
18
+ - 每一行都必须指向至少一个测试层级和一个证据路径。
19
+ - UI 行必须包含所需状态或明确豁免。
20
+ - API / 数据行必须包含契约或 schema 校验证据。
21
+ - 写操作、权限失败、非法状态流转和异步链路必须包含副作用或无副作用 Oracle。
22
+ - 每条 P0/P1 业务规则至少要在矩阵中出现一次,并绑定页面状态、Oracle 和测试层级。
23
+ - 缺少 Oracle 或证据路径的 P0/P1 行不能进入实现。
@@ -1,25 +1,25 @@
1
- # 覆盖率策略
2
-
3
- **功能**:
4
- **覆盖率工具**:
5
- **覆盖率报告路径**:
6
-
7
- ## 阈值
8
-
9
- | 范围 | 最低要求 | 备注 |
10
- | --- | --- | --- |
11
- | 业务规则 | 80% | 定价、库存、权限、校验 |
12
- | API / 服务层 | 80% | 包含成功和错误分支 |
13
- | UI 组件 | 覆盖关键状态 | 相比原始行覆盖率,更优先覆盖交互 / 状态 |
14
- | E2E | 覆盖 P0/P1 主流程 | 不按行覆盖率衡量 |
15
- | 视觉 | P0 UI + 高风险状态 | 必须提供截图证据 |
16
-
17
- ## 豁免
18
-
19
- | 路径 / 模块 | 原因 | 批准人 | 替代证据 |
20
- | --- | --- | --- | --- |
21
- | | | | |
22
-
23
- ## Stage 2 规则
24
-
25
- 如果关键业务逻辑未被覆盖,且不存在豁免或替代证据,Stage 2 必须失败。
1
+ # 覆盖率策略
2
+
3
+ **功能**:
4
+ **覆盖率工具**:
5
+ **覆盖率报告路径**:
6
+
7
+ ## 阈值
8
+
9
+ | 范围 | 最低要求 | 备注 |
10
+ | --- | --- | --- |
11
+ | 业务规则 | 80% | 定价、库存、权限、校验 |
12
+ | API / 服务层 | 80% | 包含成功和错误分支 |
13
+ | UI 组件 | 覆盖关键状态 | 相比原始行覆盖率,更优先覆盖交互 / 状态 |
14
+ | E2E | 覆盖 P0/P1 主流程 | 不按行覆盖率衡量 |
15
+ | 视觉 | P0 UI + 高风险状态 | 必须提供截图证据 |
16
+
17
+ ## 豁免
18
+
19
+ | 路径 / 模块 | 原因 | 批准人 | 替代证据 |
20
+ | --- | --- | --- | --- |
21
+ | | | | |
22
+
23
+ ## Stage 2 规则
24
+
25
+ 如果关键业务逻辑未被覆盖,且不存在豁免或替代证据,Stage 2 必须失败。
@@ -1,139 +1,139 @@
1
- # E2E 计划
2
-
3
- **功能**:
4
- **基础 URL**:
5
- **后端 URL**:
6
- **Seed 命令**:
7
- **测试数据计划**:
8
- **导航入口**: `docs/ai/repo-map.md` / `docs/context/repo-map.md`
9
- **关联代码理解摘要**:
10
-
11
- ## 1. 功能概览
12
-
13
- - 目标:
14
- - 业务背景:
15
- - 适用角色:
16
- - 不覆盖范围:
17
-
18
- ## 2. 代码入口与影响面
19
-
20
- 先从 `repo-map` / codemap 进入,再补充局部文件阅读。不要先全仓盲扫。
21
-
22
- | 类别 | 入口 / 文件 | 说明 | 受影响测试 |
23
- | --- | --- | --- | --- |
24
- | 页面 / 路由 | | | |
25
- | 组件 | | | |
26
- | Hook / Store / State | | | |
27
- | API / Service | | | |
28
- | 数据模型 / 持久化 | | | |
29
-
30
- ## 3. 范围与角色
31
-
32
- - 范围内:
33
- - 范围外:
34
- - 必需角色:
35
- - 权限差异:
36
- - 登录态要求:
37
-
38
- ## 4. 前置条件
39
-
40
- - 环境与服务:
41
- - Feature flag:
42
- - 账号 / 权限:
43
- - Seed 数据:
44
- - 外部依赖:
45
- - 已知豁免:
46
-
47
- ## 5. 测试数据
48
-
49
- | 数据名称 | 用途 | 来源 | 重置方式 |
50
- | --- | --- | --- | --- |
51
- | 正常数据 | 主流程 | | |
52
- | 边界数据 | 边界 / 上下限 | | |
53
- | 非法数据 | 异常 / 权限 / 拒绝路径 | | |
54
-
55
- ## 6. 核心主流程
56
-
57
- | ID | 角色 | 主流程 | 对应需求 | 测试数据 | 期望证据 |
58
- | --- | --- | --- | --- | --- | --- |
59
- | E2E-001 | 用户 | | | | 报告 + 截图 / 视频 + 状态证据 |
60
-
61
- ## 7. 异常与边界流程
62
-
63
- | ID | 类型 | 场景 | 预期结果 | 证据 |
64
- | --- | --- | --- | --- | --- |
65
- | E2E-NEG-001 | 异常 | | | |
66
- | E2E-BND-001 | 边界 | | | |
67
-
68
- 至少检查:
69
-
70
- - 空数据
71
- - 最大 / 最小输入
72
- - 重复提交
73
- - 网络慢
74
- - 接口失败
75
- - 登录过期
76
- - 权限不足
77
-
78
- ## 8. 页面与 UI 断言
79
-
80
- | 页面 | 状态 | 断言 | 测试层级 |
81
- | --- | --- | --- | --- |
82
- | | 默认 | | T5 / T6 |
83
- | | 错误态 | | T5 / T6 |
84
- | | 空态 | | T5 / T6 |
85
- | | 成功态 | | T5 / T6 |
86
-
87
- ## 9. 接口与网络预期
88
-
89
- | 入口动作 | 请求 | 成功预期 | 失败预期 |
90
- | --- | --- | --- | --- |
91
- | | `METHOD /path` | | |
92
-
93
- ## 10. 可访问性与交互约束
94
-
95
- - 优先使用用户可见语义定位:
96
- - `getByRole`
97
- - `getByLabel`
98
- - `getByPlaceholder`
99
- - `getByTestId`
100
- - 避免把 DOM 层级或脆弱 CSS 选择器作为主定位手段。
101
- - 记录关键按钮、表单标签、错误提示、loading、键盘操作和 aria 期望。
102
-
103
- ## 11. Mock 排雷
104
-
105
- - [ ] 从 `repo-map`、代码入口和测试目录搜索 `mock`、`fixture`、`fake`、`hardcoded`。
106
- - [ ] P0 / P1 主流程使用真实后端或明确声明的 mock server。
107
- - [ ] 必须 mock 的状态已在 `test-matrix.md`、`verify-matrix.md` 或豁免说明中写明。
108
- - [ ] 前端页面如仍依赖本地假数据,先创建清理任务,再把该 E2E 标记为可执行。
109
-
110
- ## 12. 受影响测试与执行顺序
111
-
112
- | 类别 | 测试 / 命令 | 原因 | 优先级 |
113
- | --- | --- | --- | --- |
114
- | Existing | | | P0 |
115
- | New | | | P0 |
116
-
117
- 推荐顺序:
118
-
119
- 1. 先跑 affected tests / contract checks。
120
- 2. 再跑本计划对应的最小 E2E 集。
121
- 3. 最后跑 P0 / P1 回归或跨故事整链路。
122
-
123
- ## 13. 失败归因入口
124
-
125
- 失败后不要直接改测试,先分类:
126
-
127
- 1. 测试代码问题
128
- 2. 产品 Bug
129
- 3. 需求变更
130
- 4. 环境 / 数据问题
131
- 5. Flaky 问题
132
-
133
- 分类结果写入 `docs/testing/failure-triage.md` 或等价报告。
134
-
135
- ## 14. 风险与待确认问题
136
-
137
- - 高风险点:
138
- - 未确认点:
139
- - 需要人工验收的部分:
1
+ # E2E 计划
2
+
3
+ **功能**:
4
+ **基础 URL**:
5
+ **后端 URL**:
6
+ **Seed 命令**:
7
+ **测试数据计划**:
8
+ **导航入口**: `docs/ai/repo-map.md` / `docs/context/repo-map.md`
9
+ **关联代码理解摘要**:
10
+
11
+ ## 1. 功能概览
12
+
13
+ - 目标:
14
+ - 业务背景:
15
+ - 适用角色:
16
+ - 不覆盖范围:
17
+
18
+ ## 2. 代码入口与影响面
19
+
20
+ 先从 `repo-map` / codemap 进入,再补充局部文件阅读。不要先全仓盲扫。
21
+
22
+ | 类别 | 入口 / 文件 | 说明 | 受影响测试 |
23
+ | --- | --- | --- | --- |
24
+ | 页面 / 路由 | | | |
25
+ | 组件 | | | |
26
+ | Hook / Store / State | | | |
27
+ | API / Service | | | |
28
+ | 数据模型 / 持久化 | | | |
29
+
30
+ ## 3. 范围与角色
31
+
32
+ - 范围内:
33
+ - 范围外:
34
+ - 必需角色:
35
+ - 权限差异:
36
+ - 登录态要求:
37
+
38
+ ## 4. 前置条件
39
+
40
+ - 环境与服务:
41
+ - Feature flag:
42
+ - 账号 / 权限:
43
+ - Seed 数据:
44
+ - 外部依赖:
45
+ - 已知豁免:
46
+
47
+ ## 5. 测试数据
48
+
49
+ | 数据名称 | 用途 | 来源 | 重置方式 |
50
+ | --- | --- | --- | --- |
51
+ | 正常数据 | 主流程 | | |
52
+ | 边界数据 | 边界 / 上下限 | | |
53
+ | 非法数据 | 异常 / 权限 / 拒绝路径 | | |
54
+
55
+ ## 6. 核心主流程
56
+
57
+ | ID | 角色 | 主流程 | 对应需求 | 测试数据 | 期望证据 |
58
+ | --- | --- | --- | --- | --- | --- |
59
+ | E2E-001 | 用户 | | | | 报告 + 截图 / 视频 + 状态证据 |
60
+
61
+ ## 7. 异常与边界流程
62
+
63
+ | ID | 类型 | 场景 | 预期结果 | 证据 |
64
+ | --- | --- | --- | --- | --- |
65
+ | E2E-NEG-001 | 异常 | | | |
66
+ | E2E-BND-001 | 边界 | | | |
67
+
68
+ 至少检查:
69
+
70
+ - 空数据
71
+ - 最大 / 最小输入
72
+ - 重复提交
73
+ - 网络慢
74
+ - 接口失败
75
+ - 登录过期
76
+ - 权限不足
77
+
78
+ ## 8. 页面与 UI 断言
79
+
80
+ | 页面 | 状态 | 断言 | 测试层级 |
81
+ | --- | --- | --- | --- |
82
+ | | 默认 | | T5 / T6 |
83
+ | | 错误态 | | T5 / T6 |
84
+ | | 空态 | | T5 / T6 |
85
+ | | 成功态 | | T5 / T6 |
86
+
87
+ ## 9. 接口与网络预期
88
+
89
+ | 入口动作 | 请求 | 成功预期 | 失败预期 |
90
+ | --- | --- | --- | --- |
91
+ | | `METHOD /path` | | |
92
+
93
+ ## 10. 可访问性与交互约束
94
+
95
+ - 优先使用用户可见语义定位:
96
+ - `getByRole`
97
+ - `getByLabel`
98
+ - `getByPlaceholder`
99
+ - `getByTestId`
100
+ - 避免把 DOM 层级或脆弱 CSS 选择器作为主定位手段。
101
+ - 记录关键按钮、表单标签、错误提示、loading、键盘操作和 aria 期望。
102
+
103
+ ## 11. Mock 排雷
104
+
105
+ - [ ] 从 `repo-map`、代码入口和测试目录搜索 `mock`、`fixture`、`fake`、`hardcoded`。
106
+ - [ ] P0 / P1 主流程使用真实后端或明确声明的 mock server。
107
+ - [ ] 必须 mock 的状态已在 `test-matrix.md`、`verify-matrix.md` 或豁免说明中写明。
108
+ - [ ] 前端页面如仍依赖本地假数据,先创建清理任务,再把该 E2E 标记为可执行。
109
+
110
+ ## 12. 受影响测试与执行顺序
111
+
112
+ | 类别 | 测试 / 命令 | 原因 | 优先级 |
113
+ | --- | --- | --- | --- |
114
+ | Existing | | | P0 |
115
+ | New | | | P0 |
116
+
117
+ 推荐顺序:
118
+
119
+ 1. 先跑 affected tests / contract checks。
120
+ 2. 再跑本计划对应的最小 E2E 集。
121
+ 3. 最后跑 P0 / P1 回归或跨故事整链路。
122
+
123
+ ## 13. 失败归因入口
124
+
125
+ 失败后不要直接改测试,先分类:
126
+
127
+ 1. 测试代码问题
128
+ 2. 产品 Bug
129
+ 3. 需求变更
130
+ 4. 环境 / 数据问题
131
+ 5. Flaky 问题
132
+
133
+ 分类结果写入 `docs/testing/failure-triage.md` 或等价报告。
134
+
135
+ ## 14. 风险与待确认问题
136
+
137
+ - 高风险点:
138
+ - 未确认点:
139
+ - 需要人工验收的部分:
@@ -11,9 +11,9 @@
11
11
  "requirementId": "REQ-001",
12
12
  "testCaseId": "E2E-001",
13
13
  "evidencePath": "artifacts/testing/<session>/<agent>/screenshots/FINDING-001.png",
14
- "summary": "主结账按钮无法点击。",
15
- "expected": "点击结账后应打开订单确认步骤。",
16
- "actual": "点击后界面没有任何可见变化。",
14
+ "summary": "主结账按钮无法点击。",
15
+ "expected": "点击结账后应打开订单确认步骤。",
16
+ "actual": "点击后界面没有任何可见变化。",
17
17
  "retryCount": 0,
18
18
  "status": "open"
19
19
  }