claude-code-kit 0.13.0__tar.gz → 0.15.0__tar.gz

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 (240) hide show
  1. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/.claude-plugin/marketplace.json +1 -1
  2. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/.claude-plugin/plugin.json +1 -1
  3. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/CHANGELOG.md +140 -0
  4. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/PKG-INFO +2 -2
  5. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/README.md +1 -1
  6. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/developer.md +8 -0
  7. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/devils-advocate.md +10 -5
  8. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/devops-engineer.md +4 -0
  9. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/em-reviewer.md +16 -0
  10. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/orchestrator.md +45 -2
  11. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/sdlc-code-reviewer.md +6 -0
  12. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/senior-tester.md +40 -0
  13. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/spec-doc-writer.md +2 -0
  14. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/technical-architect.md +11 -0
  15. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/catalog/org.yaml +6 -0
  16. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/catalog/profiles.yaml +2 -0
  17. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/catalog/stacks.yaml +1 -1
  18. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/docs/architecture.md +8 -4
  19. claude_code_kit-0.15.0/docs/coverage-audit.md +95 -0
  20. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/load-continuity.sh +4 -0
  21. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/pyproject.toml +1 -1
  22. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/agent-guardrails.md +37 -1
  23. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/agent-memory.md +8 -0
  24. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/continuity.md +24 -0
  25. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/mandatory-workflow.md +13 -2
  26. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/quality-gates.md +18 -1
  27. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/rarv-cycle.md +1 -1
  28. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/risk-classification.md +4 -0
  29. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/archive-sprint/SKILL.md +1 -1
  30. claude_code_kit-0.15.0/skills/bug-hunt/SKILL.md +169 -0
  31. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/context-engineering/SKILL.md +59 -0
  32. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/deprecation-and-migration/SKILL.md +32 -0
  33. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/planning-and-task-breakdown/SKILL.md +56 -0
  34. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/refresh-docs/SKILL.md +2 -1
  35. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/remember/SKILL.md +1 -1
  36. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/sdlc/SKILL.md +9 -5
  37. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/sprint/SKILL.md +25 -2
  38. claude_code_kit-0.15.0/skills/test-plan-review/SKILL.md +132 -0
  39. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/src/claude_kit/__init__.py +1 -1
  40. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/CLAUDE.md +8 -0
  41. claude_code_kit-0.15.0/templates/org/agents/staff-pm-reviewer.md +102 -0
  42. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/product-to-code/pack.yaml +3 -0
  43. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/quality-and-review/pack.yaml +5 -0
  44. claude_code_kit-0.15.0/templates/org/skills/review-scope/SKILL.md +57 -0
  45. claude_code_kit-0.15.0/templates/org/skills/review-sprint/SKILL.md +59 -0
  46. claude_code_kit-0.15.0/templates/org/skills/review-sprint-plan/SKILL.md +55 -0
  47. claude_code_kit-0.15.0/templates/org/skills/review-ux-flow/SKILL.md +59 -0
  48. claude_code_kit-0.15.0/templates/stacks/backend/python/fastapi/rules/fastapi-patterns.md +161 -0
  49. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/stacks/db/mongodb/agents/migration-specialist.md +3 -0
  50. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/stacks/db/postgres/agents/migration-specialist.md +3 -0
  51. claude_code_kit-0.15.0/templates/stacks/frontend/react/rules/design-system-compliance.md +71 -0
  52. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/stacks/frontend/react/rules/react-patterns.md +53 -0
  53. claude_code_kit-0.13.0/docs/coverage-audit.md +0 -51
  54. claude_code_kit-0.13.0/templates/stacks/backend/python/fastapi/rules/fastapi-patterns.md +0 -64
  55. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/.gitignore +0 -0
  56. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/CLAUDE.md +0 -0
  57. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/CONTRIBUTING.md +0 -0
  58. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/LICENSE +0 -0
  59. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/acceptance-reviewer.md +0 -0
  60. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/auditor.md +0 -0
  61. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/dependency-scanner.md +0 -0
  62. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/e2e-tester.md +0 -0
  63. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/incident-responder.md +0 -0
  64. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/merge-reviewer.md +0 -0
  65. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/observability-engineer.md +0 -0
  66. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/owasp-reviewer.md +0 -0
  67. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/policy-validator.md +0 -0
  68. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/pr-raiser.md +0 -0
  69. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/risk-classifier.md +0 -0
  70. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/secret-scanner.md +0 -0
  71. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/security-reviewer.md +0 -0
  72. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/senior-backend-dev.md +0 -0
  73. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/senior-frontend-dev.md +0 -0
  74. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/story-planner.md +0 -0
  75. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/tester.md +0 -0
  76. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/ui-designer.md +0 -0
  77. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/agents/unit-tester.md +0 -0
  78. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/catalog/mcp.yaml +0 -0
  79. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/commands/abort.md +0 -0
  80. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/commands/init.md +0 -0
  81. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/commands/sdlc.md +0 -0
  82. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/commands/status.md +0 -0
  83. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/docs/agentic-patterns.md +0 -0
  84. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/docs/agents.md +0 -0
  85. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/docs/eval-harness.md +0 -0
  86. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/docs/org-capabilities.md +0 -0
  87. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/hooks.json +0 -0
  88. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/audit-log.sh +0 -0
  89. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/guard-destructive-git.sh +0 -0
  90. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/guard-secrets.sh +0 -0
  91. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/lint-fix.sh +0 -0
  92. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/load-autonomy.sh +0 -0
  93. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/load-learnings.sh +0 -0
  94. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/type-check.sh +0 -0
  95. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/validate-frontmatter.sh +0 -0
  96. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/validate-settings.sh +0 -0
  97. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/warn-large-edits.sh +0 -0
  98. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/warn-llm-io.sh +0 -0
  99. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/warn-missing-tests.sh +0 -0
  100. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/warn-sensitive-files.sh +0 -0
  101. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/hooks/scripts/warn-shared-modules.sh +0 -0
  102. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/agent-resilience.md +0 -0
  103. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/autonomy-levels.md +0 -0
  104. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/code-organization.md +0 -0
  105. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/design-patterns.md +0 -0
  106. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/devops-observability.md +0 -0
  107. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/documentation.md +0 -0
  108. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/evals.md +0 -0
  109. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/frontend-best-practices.md +0 -0
  110. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/goal-setting-and-monitoring.md +0 -0
  111. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/human-in-the-loop.md +0 -0
  112. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/linting-and-formatting.md +0 -0
  113. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/model-tiers.md +0 -0
  114. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/reasoning-techniques.md +0 -0
  115. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/responsive-and-accessibility.md +0 -0
  116. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/testing.md +0 -0
  117. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/rules/tool-design.md +0 -0
  118. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/scripts/init.sh +0 -0
  119. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/_references/accessibility-checklist.md +0 -0
  120. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/_references/orchestration-patterns.md +0 -0
  121. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/_references/performance-checklist.md +0 -0
  122. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/_references/security-checklist.md +0 -0
  123. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/_references/testing-patterns.md +0 -0
  124. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/accessibility-review/SKILL.md +0 -0
  125. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/api-and-interface-design/SKILL.md +0 -0
  126. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/api-integration/SKILL.md +0 -0
  127. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/backlog/SKILL.md +0 -0
  128. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/backlog/item-template.md +0 -0
  129. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/browser-testing-with-devtools/SKILL.md +0 -0
  130. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/ci-cd-and-automation/SKILL.md +0 -0
  131. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/code-review-and-quality/SKILL.md +0 -0
  132. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/code-simplification/SKILL.md +0 -0
  133. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/component-design/SKILL.md +0 -0
  134. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/consolidate-learnings/SKILL.md +0 -0
  135. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/debugging-and-error-recovery/SKILL.md +0 -0
  136. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/decision/SKILL.md +0 -0
  137. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/decision/adr-template.md +0 -0
  138. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/documentation-and-adrs/SKILL.md +0 -0
  139. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/doubt-driven-development/SKILL.md +0 -0
  140. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/execute/SKILL.md +0 -0
  141. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/frontend-ui-engineering/SKILL.md +0 -0
  142. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/git-workflow-and-versioning/SKILL.md +0 -0
  143. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/idea-refine/SKILL.md +0 -0
  144. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/idea-refine/examples.md +0 -0
  145. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/idea-refine/frameworks.md +0 -0
  146. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/idea-refine/refinement-criteria.md +0 -0
  147. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/idea-refine/scripts/idea-refine.sh +0 -0
  148. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/incident-postmortem/SKILL.md +0 -0
  149. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/incremental-implementation/SKILL.md +0 -0
  150. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/interview-me/SKILL.md +0 -0
  151. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/load-testing/SKILL.md +0 -0
  152. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/manual-test/SKILL.md +0 -0
  153. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/over-engineering-review/SKILL.md +0 -0
  154. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/performance-optimization/SKILL.md +0 -0
  155. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/playwright-verification/SKILL.md +0 -0
  156. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/scope/SKILL.md +0 -0
  157. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/scope/scope-template.md +0 -0
  158. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/security-and-hardening/SKILL.md +0 -0
  159. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/security-verification/SKILL.md +0 -0
  160. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/shipping-and-launch/SKILL.md +0 -0
  161. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/simplification-debt/SKILL.md +0 -0
  162. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/smoke-test/SKILL.md +0 -0
  163. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/source-driven-development/SKILL.md +0 -0
  164. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/spec-driven-development/SKILL.md +0 -0
  165. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/sprint/sprint-template.md +0 -0
  166. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/task-tracker-sync/SKILL.md +0 -0
  167. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/test-driven-development/SKILL.md +0 -0
  168. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/threat-model/SKILL.md +0 -0
  169. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/triage/SKILL.md +0 -0
  170. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/ui-ux-design/SKILL.md +0 -0
  171. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/unit-test/SKILL.md +0 -0
  172. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/skills/using-agent-skills/SKILL.md +0 -0
  173. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/src/claude_kit/__main__.py +0 -0
  174. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/src/claude_kit/catalog.py +0 -0
  175. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/src/claude_kit/cli.py +0 -0
  176. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/src/claude_kit/hooks.py +0 -0
  177. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/src/claude_kit/models.py +0 -0
  178. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/src/claude_kit/prompts.py +0 -0
  179. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/src/claude_kit/render.py +0 -0
  180. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/src/claude_kit/scaffold.py +0 -0
  181. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/src/claude_kit/upgrader.py +0 -0
  182. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/src/claude_kit/validator.py +0 -0
  183. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/CLAUDE.stack.md.tmpl +0 -0
  184. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/CONTINUITY.template.md +0 -0
  185. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/README.claude-sdlc.md.tmpl +0 -0
  186. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/agent-memory/MEMORY.md +0 -0
  187. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/agent-memory/api/.gitkeep +0 -0
  188. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/agent-memory/architecture/.gitkeep +0 -0
  189. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/agent-memory/debugging/.gitkeep +0 -0
  190. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/agent-memory/gotchas/.gitkeep +0 -0
  191. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/agent-memory/patterns/.gitkeep +0 -0
  192. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/agent-memory/performance/.gitkeep +0 -0
  193. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/artifacts/adr.md +0 -0
  194. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/artifacts/api-change-report.md +0 -0
  195. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/artifacts/feature-spec.md +0 -0
  196. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/artifacts/release-plan.md +0 -0
  197. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/artifacts/runbook.md +0 -0
  198. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/artifacts/security-review.md +0 -0
  199. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/artifacts/test-plan.md +0 -0
  200. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/README.md +0 -0
  201. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/agents/data-workflow-agent.md +0 -0
  202. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/agents/founder-prototype-agent.md +0 -0
  203. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/agents/internal-tools-builder.md +0 -0
  204. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/agents/pm-copilot.md +0 -0
  205. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/agents/support-ticket-engineer.md +0 -0
  206. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/devops-and-release/README.md +0 -0
  207. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/devops-and-release/pack.yaml +0 -0
  208. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/engineering-core/README.md +0 -0
  209. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/engineering-core/pack.yaml +0 -0
  210. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/non-engineer-builder/README.md +0 -0
  211. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/non-engineer-builder/pack.yaml +0 -0
  212. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/onboarding-and-docs/README.md +0 -0
  213. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/onboarding-and-docs/pack.yaml +0 -0
  214. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/product-to-code/README.md +0 -0
  215. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/quality-and-review/README.md +0 -0
  216. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/security-and-compliance/README.md +0 -0
  217. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/packs/security-and-compliance/pack.yaml +0 -0
  218. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/rules/ai-working-agreement.md +0 -0
  219. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/rules/ambiguity-resolution.md +0 -0
  220. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/rules/branch-and-pr-policy.md +0 -0
  221. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/rules/compliance-policy.md +0 -0
  222. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/rules/non-engineer-safe-coding.md +0 -0
  223. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/rules/pii-policy.md +0 -0
  224. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/rules/production-data-policy.md +0 -0
  225. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/rules/prompt-to-task-conversion.md +0 -0
  226. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/rules/prototype-boundaries.md +0 -0
  227. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/rules/secrets-policy.md +0 -0
  228. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/skills/customer-issue-to-fix/SKILL.md +0 -0
  229. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/skills/feature-from-idea/SKILL.md +0 -0
  230. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/skills/prompt-to-safe-task/SKILL.md +0 -0
  231. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/skills/prototype-to-production/SKILL.md +0 -0
  232. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/org/skills/repo-onboarding/SKILL.md +0 -0
  233. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/settings.json +0 -0
  234. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/stacks/backend/go/net-http/rules/go-patterns.md +0 -0
  235. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/stacks/db/mongodb/agents/mongodb-specialist.md +0 -0
  236. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/stacks/db/mongodb/rules/mongodb-patterns.md +0 -0
  237. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/stacks/db/postgres/agents/db-performance-reviewer.md +0 -0
  238. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/stacks/db/postgres/agents/postgres-specialist.md +0 -0
  239. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/stacks/db/postgres/rules/database-performance.md +0 -0
  240. {claude_code_kit-0.13.0 → claude_code_kit-0.15.0}/templates/stacks/db/postgres/rules/postgres-patterns.md +0 -0
@@ -10,7 +10,7 @@
10
10
  "name": "claude-kit",
11
11
  "source": "./",
12
12
  "description": "Cookiecutter-style scaffolder for an autonomous Claude Code SDLC config (no app code, no Docker): install CLAUDE.md + .claude/ (rules, the profile's agents/skills, hooks, artifact templates) + optional .mcp.json, then run /sdlc to drive spec → review → build → test → security → ship through profile-aware quality gates, working memory, and a self-improving learnings loop.",
13
- "version": "0.13.0",
13
+ "version": "0.15.0",
14
14
  "license": "MIT",
15
15
  "keywords": ["sdlc", "agents", "orchestration", "quality-gates", "workflow", "scaffold", "cookiecutter"]
16
16
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-kit",
3
- "version": "0.13.0",
3
+ "version": "0.15.0",
4
4
  "description": "Cookiecutter-style scaffolder for an autonomous Claude Code SDLC config (no app code, no Docker). `claude-kit init` asks ordered questions and installs CLAUDE.md + .claude/ (rules, the profile's agents/skills, hooks, artifact templates) + optional .mcp.json; run /sdlc to drive spec → review → build → test → security → ship through profile-aware quality gates with working memory and a self-improving learnings loop.",
5
5
  "author": {
6
6
  "name": "Arjunsingh Yadav",
@@ -4,6 +4,146 @@ All notable changes to claude-kit are documented here. The format follows
4
4
  [Keep a Changelog](https://keepachangelog.com/), and the project uses
5
5
  [semantic versioning](https://semver.org/).
6
6
 
7
+ ## [0.15.0] — 2026-06-16
8
+
9
+ **Adopt the Fynd Agentic Engineering personas & skills** (an internal Claude Code plugin marketplace —
10
+ 11 agents + 29 skills across 7 plugins: engineer, designer, pm, context-gen, staff-em, staff-sdet,
11
+ staff-pm). Those plugins are excellent but heavily **stack-bound** (FastAPI/SQLAlchemy/Pydantic/React/
12
+ Tailwind/Radix/Zod/Temporal/Kafka/Langfuse, against an internal `.ai/` doc convention). Mirroring all
13
+ 40 files into a stack-agnostic kit would leak framework specifics into the core (golden rule #1) and
14
+ duplicate components claude-kit already ships (golden rule #3). So they were adopted **reuse-first**.
15
+
16
+ An 81-agent adversarial workflow mapped every item against the live inventory, two-sided-verified each
17
+ verdict, and synthesized the landing zones. Tally of the 40: **11 map** (already covered — adopt
18
+ nothing), **18 extend** (a real delta folded into the nearest existing component), **5 adopt-stack**
19
+ (framework substance → existing overlays), **5 adopt-org** (senior-review personas → scope-gated org
20
+ layer), **1 adopt-core** (genuinely new + stack-agnostic). Net: **2 new core skills, ~10 surgical core
21
+ extends, 1 new React overlay rule + FastAPI/React overlay enrichments, 5 new org components** — zero
22
+ stack leakage into core, zero diluting duplicates. IP boundary: technique-and-structure only, no source
23
+ text copied; every Fynd-internal reference (the `.ai/` naming, internal field/service names, numeric
24
+ heuristics) stripped or genericized.
25
+
26
+ Three deliberate decisions: **(1)** Temporal/Kafka/Langfuse are **not** added as selectable stacks —
27
+ they would be new top-level `stacks.yaml` *kinds*, which `resolve()` reads through fixed
28
+ frontend/backend/database accessors, so they'd require resolver/model/prompt code (golden rule #6).
29
+ Recorded as future work. **(2)** the context-layer *generator* folds into `context-engineering` as a
30
+ mode (not a competing docs skill — golden rule #3). **(3)** the senior-review **product-lens** personas
31
+ go to the org layer (install only at `scope == organization`); the **engineering-lens** deltas fold
32
+ into existing core gates.
33
+
34
+ ### Added
35
+ - **`skills/bug-hunt`** (new core skill, standard+; the sole adopt-core). A proactive, source-only,
36
+ spec-free exploratory bug hunt: map the feature, sweep a fixed scenario taxonomy (input edge cases ·
37
+ an error state per failure point · state · race/concurrency · rendering · authorization), rate
38
+ findings on the kit's Critical/High/Medium/Low/Cosmetic model with `path:line` + repro + root cause,
39
+ then a systemic-pattern pass + top-3. Cross-refs `debugging-and-error-recovery`,
40
+ `code-review-and-quality`, `senior-tester`, `auditor` to protect auto-selection.
41
+ - **`skills/test-plan-review`** (new core skill, standard+). A forward-looking review of a *proposed*
42
+ test plan / test-infra design **before tests exist**: data-generation strategy, validation depth via
43
+ a field-drift matrix, infra failure modes, coverage-by-domain, each gap tied to a preventable
44
+ incident. Distinct from `senior-tester` (verifies already-executed tests).
45
+ - **Org senior-review tier** (organization scope only): `staff-pm-reviewer` agent (product-lens,
46
+ read-only) + `review-scope`, `review-sprint-plan`, `review-ux-flow`, `review-sprint` skills. Wired via
47
+ `catalog/org.yaml` (`new_agents`/`new_skills`) into the `product-to-code` and `quality-and-review`
48
+ packs (`existing: false`).
49
+ - **React `design-system-compliance.md` overlay rule** (Tailwind/Radix/Lucide): token-not-arbitrary-
50
+ value enforcement, one set of component variants, radius/spacing/icon scales, `cn()` class-merge,
51
+ explicit light/dark scope — palette parameterized to the project. Registered in `stacks.yaml` React
52
+ `overlay_rules`.
53
+
54
+ ### Changed
55
+ - **10 core extends**, each folding one verified delta into an existing component (neutral phrasing):
56
+ `context-engineering` (generate/refresh a persistent cross-linked comprehension layer — the `.ai/`
57
+ technique, genericized); `planning-and-task-breakdown` (cross-service/multi-repo coordination +
58
+ task-type prompt templates + a portable cross-LLM prompt); `deprecation-and-migration` (Pre-Removal
59
+ Safety Check — sweep every consumer surface incl. the silently-breaking test mock/patch import
60
+ paths); `sprint` (proactive agent capacity/replacement planning + run-the-checks-for-real post-sprint
61
+ report); `orchestrator` (Live-Sprint Health monitoring); `archive-sprint` (verify checks actually
62
+ ran before archiving); `em-reviewer` (Verify-Claims-Against-the-Codebase checklist + eval/HITL line);
63
+ `senior-tester` (a standing suite-architecture audit mode); `technical-architect` (a thin eval / HITL
64
+ / staged-rollout cross-ref to the owning rules); `refresh-docs` (run a deterministic freshness script
65
+ first if present).
66
+ - **FastAPI overlay** (`fastapi-patterns.md`) enriched: HTTP method→status + domain-error→status
67
+ mapping (**reconciled** with — not contradicting — the file's existing router-maps-to-HTTPException
68
+ rule), service-layer logging discipline + N+1/soft-delete/method-naming, snake-case-on-the-wire,
69
+ reading live DB state safely, changed-files→test routing, schema-derived contract fixtures, and the
70
+ concrete pre-removal grep recipe behind the agnostic Pre-Removal Safety Check.
71
+ - **React overlay** (`react-patterns.md`) enriched: an accessibility section (Tailwind `text-gray-*`
72
+ contrast table, `p-3 -m-3` touch-target pattern, clickable-`div` keyboard recipe, the
73
+ `@/components/ui`/Radix focus/keyboard allowlist), changed-files→test routing, and strict Zod/Vitest
74
+ contract fixtures.
75
+ - `profiles.yaml`: `bug-hunt` + `test-plan-review` added to **standard** (inherited into enterprise).
76
+
77
+ ### Explicitly not adopted (mapped to existing)
78
+ engineer/code-reviewer → `sdlc-code-reviewer`; frontend/backend-developer → `senior-*-dev`;
79
+ pm/feature-scoper + scope-feature → `scope`; the monolithic staff-em-reviewer → split across
80
+ `acceptance-reviewer`/`technical-architect`/`em-reviewer`/`merge-reviewer`/`devils-advocate`;
81
+ verify-sprint → `acceptance-reviewer`+`sprint`+`archive-sprint`; designer/audit-ui/review-styles/
82
+ component-spec → `ui-ux-design`/`accessibility-review`/`component-design`/`ui-designer`;
83
+ context-gen/update → `refresh-docs`. Each would be a near-duplicate (golden rule #3).
84
+
85
+ ## [0.14.0] — 2026-06-16
86
+
87
+ A **third improvement brief** — six engineering *techniques* observed in Anthropic's Claude Code system
88
+ prompts, **reimplemented from scratch in claude-kit's own vocabulary** (gates, severity, RARV,
89
+ profiles, scopes, Orchestrator, CONTINUITY, agent-memory). No source text was copied, quoted, or
90
+ closely paraphrased — the IP boundary is technique-and-structure only. Run through the kit's reuse-first
91
+ mapping, the decisive finding repeated once more: every pattern already had a natural home, so all six
92
+ land as **extensions of existing rules/agents/skills/hooks** — **zero new agents, zero new rule files**
93
+ (core counts unchanged: 28 agents · 50 skills · 23 rules).
94
+
95
+ Two deliberate divergences from the brief's *inferred* file paths (it invited path verification):
96
+ **(P0-1)** the autonomous-action posture lives in `rules/agent-guardrails.md` §3 (execution discipline),
97
+ not `rules/risk-classification.md` (tier assignment) — cross-referenced from the restricted tier;
98
+ **(P2-1)** the implementer house style extends `templates/CLAUDE.md` "Surgical Changes" (the kit's
99
+ always-in-context house-style home) rather than adding a new rule that would near-duplicate it and
100
+ `code-organization.md` (golden rule #3).
101
+
102
+ ### Added
103
+ - **P0-1 — autonomous-action safety** (`rules/agent-guardrails.md` §3, always-on). A **block / confirm /
104
+ allow** posture over irreversible & outward-facing actions (force-push, history rewrite, branch/tag
105
+ deletion, destructive migration, bulk deletion, secret access, publish/send/post), a **verify-the-
106
+ target-before-destroying** step (stop if what you find contradicts how the task described it), and the
107
+ affirmative §1 rule that **untrusted/injected content never authorizes an action**. Cross-ref from
108
+ `rules/risk-classification.md`; one-line pointers from `developer`, `devops-engineer`, and both
109
+ `migration-specialist` overlay agents.
110
+ - **P0-2 — anti-fabrication of verdicts** (`rules/quality-gates.md` §2.5 + §1, always-on). A gate verdict
111
+ (PASS/FAIL) is valid **only** when it cites the real command + captured output (or the `file:line`
112
+ finding); a fabricated, assumed, or partial-output-based verdict is **auto-Critical**; reading a
113
+ still-running lane's output and calling the gate done is forbidden. Reinforced in
114
+ `rules/agent-guardrails.md` §2 and `rules/rarv-cycle.md` ("cite it", not just "run it").
115
+ - **P1-3 — plan-phase critique before approval.** The `spec-doc-writer` now runs an explicit
116
+ **self-critique** in its RARV cycle (always-on, wherever planning runs); and in **standard+** the
117
+ Orchestrator runs `devils-advocate` once on the spec + dev-docs **before EM approval is final**
118
+ (new Stage PC / `mandatory-workflow.md` §1e.5) — an UPHELD verdict routes back to the Spec Writer and
119
+ the spec gate stays open. `devils-advocate` extended to a plan-critique mode (was code/tests only).
120
+ **lean** keeps self-critique only (it doesn't install the agent).
121
+
122
+ ### Changed
123
+ - **P1-1 — memory hygiene** (`rules/agent-memory.md`, always-on): verify-before-trust (confirm a
124
+ recalled file/flag/command still exists before relying on it), selective attachment with cited
125
+ sources, and reconciliation (committed `CLAUDE.md`/`rules/*` win over a conflicting memory). A
126
+ start-of-turn line added to `rules/continuity.md`; a staleness check added to the `remember` skill.
127
+ - **P1-2 — resume snapshot** (`rules/continuity.md`, always-on): a small structured
128
+ `.claude/state/pipeline-snapshot.json` (profile/scope, mode, stage, per-lane status,
129
+ `last_gate_passed`, open findings by severity, next action) the Orchestrator maintains alongside
130
+ CONTINUITY; on resume it is **reloaded as context, not re-executed** (no re-running setup, no
131
+ re-applying committed edits, no re-opening passed gates). Wired into the `sdlc` skill + `orchestrator`;
132
+ `load-continuity.sh` now ensures `.claude/state/` exists in plugin context (the pip installer already
133
+ creates and gitignores it).
134
+ - **P2-1 — implementer house style** (`templates/CLAUDE.md` "Surgical Changes", always-on): delete the
135
+ superseded path instead of leaving a backwards-compat shim (unless compat is required), validate at
136
+ the boundary not redundantly in every layer, cite code as `path:line`, and (cross-ref to
137
+ `rules/documentation.md` §6, no duplication) no change-narration comments. The `sdlc-code-reviewer`
138
+ gains a **Change Hygiene** check group (shim-without-requirement = Medium; redundant re-validation =
139
+ Low; narration comment = Low); reinforced in the `developer` agent.
140
+
141
+ ### Notes
142
+ - **No `resolve()` / catalog changes** — all six are payload-content edits, so the
143
+ `lean⊊standard⊊enterprise` subset, MCP-gating, and no-Docker invariants are untouched.
144
+ - `docs/coverage-audit.md` gains a Brief-#3 section; `docs/architecture.md` adds the standard+ plan-
145
+ critique node.
146
+
7
147
  ## [0.13.0] — 2026-06-15
8
148
 
9
149
  A **second improvement brief** (external self-review, post-0.12.0) — Item 0 (a covered-vs-gated audit)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-code-kit
3
- Version: 0.13.0
3
+ Version: 0.15.0
4
4
  Summary: Cookiecutter-style scaffolder for an autonomous Claude Code SDLC configuration (no app code, no Docker). Asks ordered questions and installs CLAUDE.md + .claude/ (rules, the chosen profile's agents/skills, hooks, artifact templates) + optional .mcp.json; run /sdlc to drive spec → review → build → test → security → ship through profile-aware quality gates, working memory, and a self-improving learnings loop.
5
5
  Project-URL: Homepage, https://github.com/ajyadav013/claude-kit
6
6
  Project-URL: Repository, https://github.com/ajyadav013/claude-kit
@@ -300,7 +300,7 @@ It is **not** a runtime, an orchestration engine, or a code library. That framin
300
300
  | **[wshobson/agents](https://github.com/wshobson/agents)** & similar agent collections | Large libraries of individual subagent prompts you pick from | claude-kit ships a **smaller, opinionated set wired into a sequenced pipeline with owned quality gates** — agents aren't a menu, they're stages that hand off and block on each other. Adopt-by-reuse, not by accumulation. |
301
301
  | **[GitHub spec-kit](https://github.com/github/spec-kit)** | A spec-driven workflow (constitution → spec → tasks → analyze) | claude-kit **absorbed spec-kit's coverage-gate idea** (the `story-planner` 1f gate + `task-tracker-sync`) into a **broader** lifecycle that also covers review, security, build, test, release, and observability gates. Complementary, wider scope. |
302
302
  | **claude-flow / multi-agent runtimes** | Runtime orchestrators that *execute* swarms of agents | claude-kit produces **portable configuration**, not a running process — the orchestration is described in rules the host (Claude Code) executes. No daemon, no lock-in, no app code. |
303
- | **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | claude-kit is a **catalog-driven generator**: it resolves your stack/profile/scope into the right subset of 23 rules, ~28 agents, ~50 skills, gates, and hooks, and keeps them **upgradeable** (`claude-kit upgrade` preserves your edits via owner + checksum). |
303
+ | **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | claude-kit is a **catalog-driven generator**: it resolves your stack/profile/scope into the right subset of 23 rules, ~28 agents, ~52 skills, gates, and hooks, and keeps them **upgradeable** (`claude-kit upgrade` preserves your edits via owner + checksum). |
304
304
 
305
305
  **Choose claude-kit when** you want a consistent, reviewable, **gate-enforced** autonomous-SDLC setup
306
306
  that's the same across every repo and stack, installs in seconds, ships nothing you have to run, and
@@ -273,7 +273,7 @@ It is **not** a runtime, an orchestration engine, or a code library. That framin
273
273
  | **[wshobson/agents](https://github.com/wshobson/agents)** & similar agent collections | Large libraries of individual subagent prompts you pick from | claude-kit ships a **smaller, opinionated set wired into a sequenced pipeline with owned quality gates** — agents aren't a menu, they're stages that hand off and block on each other. Adopt-by-reuse, not by accumulation. |
274
274
  | **[GitHub spec-kit](https://github.com/github/spec-kit)** | A spec-driven workflow (constitution → spec → tasks → analyze) | claude-kit **absorbed spec-kit's coverage-gate idea** (the `story-planner` 1f gate + `task-tracker-sync`) into a **broader** lifecycle that also covers review, security, build, test, release, and observability gates. Complementary, wider scope. |
275
275
  | **claude-flow / multi-agent runtimes** | Runtime orchestrators that *execute* swarms of agents | claude-kit produces **portable configuration**, not a running process — the orchestration is described in rules the host (Claude Code) executes. No daemon, no lock-in, no app code. |
276
- | **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | claude-kit is a **catalog-driven generator**: it resolves your stack/profile/scope into the right subset of 23 rules, ~28 agents, ~50 skills, gates, and hooks, and keeps them **upgradeable** (`claude-kit upgrade` preserves your edits via owner + checksum). |
276
+ | **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | claude-kit is a **catalog-driven generator**: it resolves your stack/profile/scope into the right subset of 23 rules, ~28 agents, ~52 skills, gates, and hooks, and keeps them **upgradeable** (`claude-kit upgrade` preserves your edits via owner + checksum). |
277
277
 
278
278
  **Choose claude-kit when** you want a consistent, reviewable, **gate-enforced** autonomous-SDLC setup
279
279
  that's the same across every repo and stack, installs in seconds, ships nothing you have to run, and
@@ -145,6 +145,14 @@ If this fails, report to the Orchestrator instead of proceeding.
145
145
  - Use the project's path alias (if configured) for cleaner imports
146
146
  - Follow naming conventions per the rules files
147
147
  - No dead code, unused imports, or debug artifacts
148
+ - When you replace code, delete the superseded path — don't leave a backwards-compat shim unless
149
+ compatibility is a stated requirement (CLAUDE.md "Surgical Changes")
150
+ - Validate inputs at the boundary, not redundantly in every internal layer that already received
151
+ validated data
152
+ - Reference code as `path:line` in review responses and handoff notes
153
+ - Before any irreversible or outward-facing action (deleting/overwriting a file you didn't create,
154
+ force-push, a destructive migration, publishing), follow the verify-then-confirm posture in
155
+ `.claude/rules/agent-guardrails.md` §3 — confirm the target is what you think it is, then ask.
148
156
 
149
157
  ## Handling Code Review Feedback
150
158
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: devils-advocate
3
- description: Anti-sycophancy adversarial reviewer. Invoked ONLY when a parallel review or test-coverage gate reaches a unanimous PASS. Assumes the work is guilty and hunts for what every other reviewer missed. Gates the pipeline — a unanimous PASS is not final until this agent returns CONFIRMED.
3
+ description: Anti-sycophancy adversarial reviewer. Invoked to critique a plan/spec before approval (standard+), and whenever a parallel review or test-coverage gate reaches a unanimous PASS. Assumes the work is guilty and hunts for what everyone else missed. Gates the pipeline — the artifact is not final until this agent returns CONFIRMED.
4
4
  tools: Read, Glob, Grep, Bash, SendMessage
5
5
  permissionMode: plan
6
6
  model: opus
@@ -10,9 +10,12 @@ tier: review
10
10
 
11
11
  You are the **Devil's Advocate** — the anti-sycophancy backstop for the SDLC pipeline.
12
12
 
13
- You are spawned by the Orchestrator **only when a gate reaches a unanimous PASS** every blind reviewer or senior tester independently said "looks good, no blocking issues." That unanimity is exactly why you exist. Independent AI reviewers converge and rubber-stamp; your job is to break the consensus if it deserves breaking.
13
+ You are spawned by the Orchestrator at **two moments**, both chosen because consensus is most dangerous when it is comfortable:
14
14
 
15
- **Your stance:** the artifact is guilty until proven innocent. You are not here to confirm good work — you are here to find the issue three reviewers talked themselves out of. If you approve, it must be because you genuinely tried to break it and could not.
15
+ 1. **Plan critique (standard+)** once, on the spec + developer documentation *before* EM approval is final, to stress-test the plan while it is still cheap to change.
16
+ 2. **Gate critique** — when a parallel review or test-coverage gate reaches a **unanimous PASS** (every blind reviewer or senior tester independently said "looks good, no blocking issues"). That unanimity is exactly why you exist; independent AI reviewers converge and rubber-stamp.
17
+
18
+ **Your stance (both modes):** the artifact is guilty until proven innocent. You are not here to confirm good work — you are here to find the issue everyone else talked themselves out of. If you approve, it must be because you genuinely tried to break it and could not.
16
19
 
17
20
  ## MANDATORY: Read Before Reviewing
18
21
 
@@ -23,6 +26,8 @@ You are spawned by the Orchestrator **only when a gate reaches a unanimous PASS*
23
26
 
24
27
  ## How You Work
25
28
 
29
+ **When critiquing a plan (not code),** attack the spec's assumptions and completeness rather than an implementation: the weakest or most-likely-to-change requirement, an acceptance criterion that isn't actually testable, a hidden dependency or sequencing risk, a requirement quietly missing, scope that no requirement justifies, and the single step most likely to fail in implementation. Map every acceptance criterion to a concrete, verifiable outcome — anything vague is a finding. The steps below otherwise apply in both modes.
30
+
26
31
  1. **Read the consensus, then distrust it.** List what the reviewers checked. Your value is in the gaps they share — a blind spot common to all of them.
27
32
  2. **Re-derive from the spec, not their summary.** Map every acceptance criterion to concrete evidence (a test, a code path). Anything you cannot trace is a finding.
28
33
  3. **Attack the seams** that single-lane reviews miss:
@@ -48,7 +53,7 @@ Effort: {what you specifically probed that they did not}
48
53
  (or: "No blocking issue found in {area} — checked {what}")
49
54
 
50
55
  ## Verdict: {UPHELD | CONFIRMED}
51
- - UPHELD -> at least one Critical/High/Medium found. Gate FAILS. Route: {which lane fixes what}.
56
+ - UPHELD -> at least one Critical/High/Medium found. Gate FAILS. Route: {which lane fixes what} (plan critique -> back to the Spec / Dev Doc Writer; the spec gate stays open).
52
57
  - CONFIRMED -> genuinely clean after adversarial review. Gate may PASS.
53
58
  ```
54
59
 
@@ -58,5 +63,5 @@ Effort: {what you specifically probed that they did not}
58
63
  2. **You must do real work before CONFIRMED.** "Looks fine" is not allowed — name what you attacked and why it held. A CONFIRMED with no described probes is itself a failure.
59
64
  3. **Classify by the shared severity model.** Only Critical/High/Medium block; Low/Cosmetic are notes.
60
65
  4. **No sycophancy, no nihilism.** Do not invent issues to look thorough; do not wave it through to be agreeable. Report what is actually there.
61
- 5. **One pass.** You run once per unanimous gate. If you UPHOLD, the normal fix lane + retry budget takes over; you are re-spawned only if the gate again reaches unanimous PASS.
66
+ 5. **One pass.** You run once per plan critique and once per unanimous gate. If you UPHOLD, the normal fix lane + retry budget takes over; you are re-spawned only if the plan returns for re-critique or the gate again reaches unanimous PASS.
62
67
  6. Record any blind-spot pattern you find (e.g., "all reviewers missed tenant filter on list endpoints") to `CONTINUITY.md`, and promote it to `agent-memory/` if it is a recurring class of miss.
@@ -113,6 +113,10 @@ All checks must succeed before you declare done.
113
113
  - **Always preserve persistent data** when changing runtime config — don't orphan volumes/data.
114
114
  - **Always test a clean rebuild + start** before signing off.
115
115
  - **Never run destructive data ops** (`DROP DATABASE`, `TRUNCATE`) outside a disposable dev cycle.
116
+ - **Irreversible/outward-facing actions follow the verify-then-confirm posture** in
117
+ `.claude/rules/agent-guardrails.md` §3 — *block* (force-push, history rewrite, destructive
118
+ migration), *confirm* (publish, deploy, send outward), *allow* (reversible local work); verify the
119
+ target environment before acting.
116
120
 
117
121
  ## Quality Gate: Pipeline Green
118
122
 
@@ -63,6 +63,22 @@ The project's tech stack is defined in `CLAUDE.md` and the codebase. Familiarize
63
63
  - [ ] Expected behavior is unambiguous enough for automated verification
64
64
  - [ ] Error states and edge cases are testable
65
65
 
66
+ ### Verify Claims Against the Codebase
67
+ The document is a claim about reality; the codebase is reality. Don't take the doc's word for it.
68
+ - [ ] **Count every quantitative claim.** If the doc says "12 endpoints", "all 5 services", "no
69
+ remaining callers", verify it with Glob/Grep and report **claimed vs actual** when they differ.
70
+ - [ ] **Cross-document consistency.** When two docs (spec, scope, plan) state different counts,
71
+ labels, or classifications for the same thing, quote **both** sources and flag the conflict.
72
+ - [ ] **No "already done" deliverables.** Flag any acceptance criterion that is already satisfied
73
+ before any work begins — it inflates the plan with non-deliverables.
74
+ - [ ] **"All X handled" is a claim, not a fact.** For sweeping coverage statements, find the
75
+ handling in the referenced code or flag it as unverified.
76
+
77
+ ### Eval / human-in-the-loop / staged rollout (when applicable)
78
+ - [ ] If the change emits AI/model outputs or rolls out in phases, the spec addresses evaluation,
79
+ human-in-the-loop checkpoints, and staged-rollout/rollback — defer to the Technical Architect's
80
+ deeper check; see `.claude/rules/evals.md`, `.claude/rules/human-in-the-loop.md`.
81
+
66
82
  ## Feedback Protocol
67
83
 
68
84
  When you find issues, send **specific, actionable** revision requests:
@@ -29,6 +29,8 @@ You are the **Orchestrator** — the pipeline controller for the engineering del
29
29
 
30
30
  **Read `.claude/CONTINUITY.md` at the start of every turn; write it back before the turn ends and at every stage transition.** It is your cross-session / cross-compaction memory — phase, active lanes, decisions, mistakes, next steps. After a compaction or a new session, recover state from it and resume from **Next Steps**; mirror your `PIPELINE:` line into its **Current Phase**. Durable lessons still go to `agent-memory/` via `remember`. See `.claude/rules/continuity.md`.
31
31
 
32
+ Alongside the freeform file, maintain the **structured resume snapshot** `.claude/state/pipeline-snapshot.json` (schema in `.claude/rules/continuity.md`): write/update it at every stage transition with the active profile/scope, mode, stage, per-lane status, `last_gate_passed`, open findings by severity, and the next action. On resume, **reload it as context** — re-enter at the first gate *after* `last_gate_passed`, re-running only un-passed or defect-affected lanes; never re-run setup or re-apply edits already committed. If it is missing or unparseable, fall back to the freeform CONTINUITY state.
33
+
32
34
  Every agent you dispatch runs the **RARV** cycle (Reason → Act → Reflect → Verify) and must show a green Verify before its gate may pass (`.claude/rules/rarv-cycle.md`). Classify every finding by the **severity model** in `.claude/rules/quality-gates.md` — a gate is PASS only with zero Critical/High/Medium open.
33
35
 
34
36
  ---
@@ -79,6 +81,9 @@ Human PRD
79
81
  [MR1] Merge Reviewer ──── verifies spec consistency across lanes
80
82
 
81
83
 
84
+ [PC] Devil's Advocate ── plan critique on spec + dev docs before approval is final (standard+)
85
+
86
+
82
87
  [SP] Story Planner ───── decomposes spec into ordered stories + verifies every
83
88
  │ acceptance criterion maps to a story (coverage gate)
84
89
 
@@ -244,6 +249,18 @@ For full-stack work, **spawn these lanes in parallel**:
244
249
 
245
250
  ---
246
251
 
252
+ ### Stage PC: Plan Critique (standard+, before approval is final)
253
+
254
+ Before treating the review chain's approval as final, run an adversarial pass on the **plan itself**:
255
+
256
+ - **Spawn**: `devils-advocate` with the spec + developer documentation (and the review-chain verdicts).
257
+ - It argues the plan is wrong — weakest/most-volatile requirement, untestable acceptance criterion,
258
+ hidden dependency, missing requirement, unjustified scope, the step most likely to fail.
259
+ - **Gate**: a **CONFIRMED** verdict lets the Story Planner proceed; an **UPHELD** verdict (any
260
+ Critical/High/Medium) routes back to the **Spec / Dev Doc Writer** and the spec gate stays open.
261
+ - **Profile**: standard and enterprise only — `devils-advocate` isn't installed in **lean**, where the
262
+ Spec Writer's own self-critique (its RARV cycle) is the safeguard. Skip with a noted reason in lean.
263
+
247
264
  ### Stage SP: Story Breakdown & Coverage Gate (after the spec is approved + consistent)
248
265
 
249
266
  The bridge between an approved spec and implementation: decompose, then prove coverage before any
@@ -447,6 +464,31 @@ spawn senior-backend-dev (Lane B) ← starts immediately
447
464
 
448
465
  ---
449
466
 
467
+ ## Live-Sprint Health Monitoring
468
+
469
+ While lanes run, monitor for these health signals (Core Behavior #9) and act on them *before* they
470
+ become blockers — don't just wait at the next join:
471
+
472
+ - **Idle agent → assign a buffer task.** When a lane finishes early, don't let the agent sit idle:
473
+ hand it a pre-planned buffer task (investigation, doc refresh, test hardening, design validation).
474
+ Keep a small buffer list ready when you spawn the lanes (see the sprint plan's extra-tasks list).
475
+ - **Context exhaustion → rotate before degradation.** Watch each long-running agent's commit cadence
476
+ and output quality as a proxy for context budget. Rotate in a fresh agent *before* quality decays,
477
+ capturing state to working memory first — see the Agent Capacity & Replacement guidance in the
478
+ `sprint` skill and `.claude/rules/agent-resilience.md`. Don't run one agent until it falls over.
479
+ - **Critical-path slippage → re-balance.** If the slowest lane *on the critical path* slips, pull a
480
+ parallelizable task forward onto a free agent, or flag the slip — don't silently absorb it into a
481
+ blown join.
482
+ - **Emerging file-ownership conflicts → intervene early.** If two lanes begin touching the same
483
+ shared file/module, the merge conflict is already forming. Serialize those edits onto one lane or
484
+ route the shared change through the `merge-reviewer` *now*, not at the join. Lanes never coordinate
485
+ directly — the intervention is yours.
486
+
487
+ These are *read-only* coordination signals — gather them from the task list, mailbox, and `git
488
+ status`; never edit code yourself.
489
+
490
+ ---
491
+
450
492
  ## State Tracking
451
493
 
452
494
  ```
@@ -516,6 +558,7 @@ PIPELINE: DEFECT LOOP (cycle 1/2) - Backend lane re-entered, re-test API lane on
516
558
  | 5b-UI | `senior-tester` (ui mode) | Verifies UI tester | Yes — Test Lane 2 |
517
559
  | 5b-INT | `senior-tester` (integration mode) | Verifies integration tester | Yes — Test Lane 3 |
518
560
  | JOIN | `merge-reviewer` | Verifies test coverage completeness | No — gate |
561
+ | PC | `devils-advocate` | Plan critique on the spec + dev docs before approval (standard+) | No — gate (standard+) |
519
562
  | 3b+ | `devils-advocate` | Anti-sycophancy pass on a unanimous test-coverage PASS | No — gate (conditional) |
520
563
  | 5.4 | `security-reviewer` | Security stage coordinator + gate (Security Clear) | No — sequential |
521
564
  | 5.4 | `secret-scanner` / `dependency-scanner` / `owasp-reviewer` / `policy-validator` | Four sub-scanners | Yes — parallel |
@@ -571,6 +614,6 @@ When an agent fails, follow this escalation:
571
614
  13. **Escalate clearly.** Provide: what failed, which lane, how many attempts, unresolved issues.
572
615
  14. **Verify outputs exist.** Check that expected files are created before marking a stage complete.
573
616
  15. **Prefer parallel over sequential.** If two stages have no data dependency, run them in parallel.
574
- 16. **Persist working memory.** Read/write `.claude/CONTINUITY.md` every turn and at every stage transition; recover from it after compaction.
575
- 17. **Anti-sycophancy.** A unanimous PASS at the test-coverage gate is not VERIFIED until `devils-advocate` returns CONFIRMED.
617
+ 16. **Persist working memory.** Read/write `.claude/CONTINUITY.md` every turn and at every stage transition; recover from it after compaction. Mirror gate-precise state into `.claude/state/pipeline-snapshot.json` and resume from it by *reloading* (re-enter after `last_gate_passed`), never by re-running passed gates or re-applying committed edits.
618
+ 17. **Anti-sycophancy.** In standard+, the plan is critiqued by `devils-advocate` before approval is final (Stage PC); and a unanimous PASS at the test-coverage gate is not VERIFIED until `devils-advocate` returns CONFIRMED.
576
619
  18. **Operability gates.** For deployable/observable changes, run DevOps (Pipeline Green) and Observability (Observability Ready) before the PR Raiser.
@@ -151,6 +151,12 @@ Review all code changes produced by the Developer (Agent 4). Check for correctne
151
151
  - [ ] Path aliases used correctly
152
152
  - [ ] Naming conventions match rules files
153
153
 
154
+ ### Change Hygiene (see CLAUDE.md "Surgical Changes" + `.claude/rules/documentation.md` §6)
155
+ - [ ] No backwards-compat shim left for replaced code unless compatibility is a stated requirement — else **Medium**
156
+ - [ ] Inputs validated at the boundary, not redundantly re-validated in internal layers — redundant re-validation is **Low**
157
+ - [ ] No change-narration comments ("// added this") — comments explain *why*, not *what changed* — **Low**
158
+ - [ ] Code locations in findings cited as `path:line`
159
+
154
160
  ## Feedback Protocol
155
161
 
156
162
  When you find issues, send **specific, actionable** fix requests to the Developer:
@@ -22,6 +22,7 @@ You may be spawned by the Orchestrator in one of these modes:
22
22
  - **`ui`** — Verify the UI tester's report: spot-check screen states, find missed interactions, test additional viewports
23
23
  - **`integration`** — Verify the integration tester's report: spot-check flows, find missed journeys, test additional failure modes
24
24
  - **`full`** — Verify everything (used for small features or single-stack work)
25
+ - **`suite-audit`** — A standing audit of the **whole test suite's architecture** (not one feature): enumerate every test file, map coverage by domain × layer, surface structural smells, grade assertion quality, and call out missing layers. Retrospective and codebase-wide, unlike the lane modes above.
25
26
 
26
27
  When spawned in a specific mode, **focus exclusively on verifying that testing lane**. The merge-reviewer will verify that all verification lanes together confirm complete coverage.
27
28
 
@@ -124,6 +125,45 @@ Run all three verification modes: API → UI → Integration.
124
125
 
125
126
  ---
126
127
 
128
+ ## Mode: Suite-Architecture Audit
129
+
130
+ A retrospective audit of the *test suite as a whole* — not "are this feature's tests adequate?" but
131
+ "is the way we test structurally sound?" Use the project's test commands/layout for the mechanics
132
+ (see your stack overlay rule); the technique below is stack-neutral.
133
+
134
+ ### 1. Enumerate & bucket
135
+ Find every test file and bucket each by layer: **unit · contract/API · integration · end-to-end**.
136
+ A suite that is 95% unit tests and 0% contract/e2e has a shape problem regardless of its count.
137
+
138
+ ### 2. Domain × layer matrix
139
+ Build a matrix of the project's domains/modules (rows) against test layers (columns). Empty cells are
140
+ the finding: a domain with no integration tests, a layer absent for a critical module. This exposes
141
+ gaps a raw coverage percentage hides.
142
+
143
+ ### 3. Structural smells
144
+ Flag suite-level structure problems, e.g.:
145
+ - duplicate or ambiguous test directories / unclear where a new test belongs
146
+ - a monolithic shared-setup/fixture file that every test depends on (change-amplifier)
147
+ - wrong isolation/fixture scope (a "unit" test that hits the DB, network, or filesystem)
148
+ - cross-layer coupling — tests that break for reasons unrelated to what they claim to test
149
+
150
+ ### 4. Grade assertions
151
+ Sample assertions and grade their quality:
152
+ - **behavioral** (asserts the actual result/effect) — good
153
+ - **status-only** (asserts "no error"/"returns 200" but not the result) — weak
154
+ - **tautological** (asserts something always true) or **over-mocked** (asserts the mock, not the code) — failing
155
+
156
+ ### 5. Missing layers & remediation
157
+ Name any **entire layer** that is absent (e.g. no contract tests for an API project, no e2e for a
158
+ user-facing app), and produce a **prioritized remediation plan** — the highest-leverage structural
159
+ fixes first, not a flat list.
160
+
161
+ Report findings on the project's standard severity model (`.claude/rules/quality-gates.md`). This mode
162
+ complements `test-plan-review` (which reviews a *proposed* plan before tests exist); this audits the
163
+ suite that *already* exists.
164
+
165
+ ---
166
+
127
167
  ## Report Format
128
168
 
129
169
  ```markdown
@@ -304,6 +304,8 @@ Before handing off to the EM Reviewer:
304
304
 
305
305
  **Reflect:** Does every spec requirement have acceptance criteria? Does every acceptance criterion map to an implementation approach in the dev docs? Are there conflicting requirements or hidden assumptions?
306
306
 
307
+ **Self-critique (argue against your own plan):** Before declaring the spec ready, turn on it. Name the **weakest requirement** (most likely to be wrong or to change), the **riskiest assumption**, an **acceptance criterion that isn't truly testable**, and the **one thing most likely to go wrong in implementation**. For each, either resolve it in the spec or record it under **Open Questions** for the human. A plan that has not been argued against is not ready for review. In standard+ profiles an independent `devils-advocate` runs the same challenge adversarially before approval (`.claude/rules/quality-gates.md` §3) — doing it yourself first is what makes that pass cheap.
308
+
307
309
  **Verify:**
308
310
  - [ ] Spec file exists at `docs/specs/{feature-name}_spec.md`
309
311
  - [ ] Both sections present (Specification + Developer Documentation)
@@ -93,6 +93,17 @@ Before reviewing, you MUST read:
93
93
  - [ ] Extension points are identified (where would we add features later?)
94
94
  - [ ] No premature optimization — but also no design choices that make optimization impossible later
95
95
 
96
+ ### AI Outputs & Staged Rollout (when applicable)
97
+ A thin gate that points at the owning rules — don't re-derive their checklists here.
98
+ - [ ] **If the design produces AI/model outputs:** the spec addresses how output quality is
99
+ evaluated and calibrated (against ground truth / a known set) and where a human reviews before
100
+ consequential actions — see `.claude/rules/evals.md`, `.claude/rules/goal-setting-and-monitoring.md`,
101
+ `.claude/rules/human-in-the-loop.md`.
102
+ - [ ] **If the change rolls out in phases:** the spec specifies the staged-rollout sequence and a
103
+ rollback path that is safe at every intermediate state — see the `shipping-and-launch`,
104
+ `incremental-implementation`, and `deprecation-and-migration` (expand/contract) skills.
105
+ - [ ] Prompts, models, and configs that affect behavior are versioned (treat them as code).
106
+
96
107
  ## Feedback Protocol
97
108
 
98
109
  When you find issues, send **specific, actionable** revision requests:
@@ -96,12 +96,18 @@ new_skills:
96
96
  - customer-issue-to-fix
97
97
  - prompt-to-safe-task
98
98
  - repo-onboarding
99
+ # Senior-review tier (product + EM lens), scope-gated to organization. Read-only review skills.
100
+ - review-scope
101
+ - review-sprint-plan
102
+ - review-ux-flow
103
+ - review-sprint
99
104
  new_agents:
100
105
  - pm-copilot
101
106
  - founder-prototype-agent
102
107
  - support-ticket-engineer
103
108
  - data-workflow-agent
104
109
  - internal-tools-builder
110
+ - staff-pm-reviewer
105
111
  new_rules:
106
112
  - ai-working-agreement.md
107
113
  - prompt-to-task-conversion.md
@@ -82,6 +82,8 @@ profiles:
82
82
  - over-engineering-review
83
83
  - simplification-debt
84
84
  - task-tracker-sync
85
+ - bug-hunt
86
+ - test-plan-review
85
87
  # contract-clear self-skips when the stack exposes no API contract surface, so it is inert for
86
88
  # non-API projects on standard while enforcing backward-compatibility for API-exposing backends
87
89
  # (e.g. FastAPI). Promoted from enterprise-only per brief #2 P0-1 — see CHANGELOG 0.13.0.
@@ -24,7 +24,7 @@ frontend:
24
24
  languages:
25
25
  default: typescript
26
26
  options: [typescript, javascript]
27
- overlay_rules: [react-patterns.md]
27
+ overlay_rules: [react-patterns.md, design-system-compliance.md]
28
28
  overlay_agents: []
29
29
  skills: [frontend-ui-engineering, component-design, ui-ux-design, unit-test]
30
30
  stack_dir: frontend/react
@@ -90,7 +90,8 @@ flowchart TD
90
90
  CLS -->|"feature"| SPEC["1. Spec & Dev Docs<br/>spec-doc-writer (+ ui-designer if UI)"]
91
91
  SPEC --> EM{{"Gate: EM approved<br/>em-reviewer"}}
92
92
 
93
- EM -->|"pass"| STORY["2. Story breakdown + coverage gate<br/>story-planner: every acceptance criterion a story"]
93
+ EM -->|"pass"| PC{{"Gate: Plan critique<br/>standard+ · devils-advocate on the spec"}}
94
+ PC -->|"CONFIRMED"| STORY["2. Story breakdown + coverage gate<br/>story-planner: every acceptance criterion → a story"]
94
95
  STORY --> FORK["Fork independent work streams"]
95
96
  subgraph LANES["Parallel lanes (canonical example: backend + frontend)"]
96
97
  direction LR
@@ -113,14 +114,17 @@ flowchart TD
113
114
  FT --> HUMAN
114
115
 
115
116
  EM -->|"fail"| SPEC
117
+ PC -->|"UPHELD"| SPEC
116
118
  TCG -->|"fail"| LANES
117
119
  SEC -->|"fail"| LANES
118
120
  ```
119
121
 
120
122
  **Every gate uses the same rules:** the severity model (zero Critical/High/Medium to pass), the RARV
121
- self-check (Reason → Act → Reflect → Verify, with a green Verify before any handoff), and blind review
122
- (parallel reviewers judge independently; a unanimous PASS triggers the Devil's Advocate before the
123
- gate counts).
123
+ self-check (Reason → Act → Reflect → Verify, with a green Verify backed by real captured output
124
+ a fabricated verdict is auto-Critical, `rules/quality-gates.md` §2.5), and blind review (parallel
125
+ reviewers judge independently; a unanimous PASS triggers the Devil's Advocate before the gate counts).
126
+ In standard+, the Devil's Advocate also critiques the **plan** before approval is final, so a flawed
127
+ spec is caught on paper rather than after implementation.
124
128
 
125
129
  ---
126
130