cc-codeconductor 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +326 -87
- package/dist/core/compilation/compile-checker.d.ts +2 -0
- package/dist/core/loop/loop-engine.d.ts +3 -0
- package/dist/core/verification/verification-runner.d.ts +7 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +3825 -597
- package/dist/library.js +195 -18
- package/dist/validation/schemas.d.ts +461 -44
- package/package.json +4 -1
- package/presets/agy/AGENTS.md +13 -9
- package/presets/agy/gates/pre-commit/GATE.md +5 -4
- package/presets/agy/hooks.json +2 -2
- package/presets/agy/scripts/invoke-hook.cjs +115 -0
- package/presets/agy/skills/backlog/SKILL.md +61 -0
- package/presets/agy/skills/cc-spec-mutation/SKILL.md +165 -0
- package/presets/agy/skills/cc-tdd-cycle/SKILL.md +3 -0
- package/presets/agy/skills/evaluation/SKILL.md +61 -2
- package/presets/agy/skills/openspec/SKILL.md +50 -16
- package/presets/agy/skills/security-ai-llm/SKILL.md +43 -0
- package/presets/agy/skills/security-blue-team/SKILL.md +43 -0
- package/presets/agy/skills/security-cloud/SKILL.md +43 -0
- package/presets/agy/skills/security-crypto/SKILL.md +43 -0
- package/presets/agy/skills/security-exploit-dev/SKILL.md +45 -0
- package/presets/agy/skills/security-grc/SKILL.md +43 -0
- package/presets/agy/skills/security-incident-response/SKILL.md +45 -0
- package/presets/agy/skills/security-log-analysis/SKILL.md +43 -0
- package/presets/agy/skills/security-malware-analysis/SKILL.md +44 -0
- package/presets/agy/skills/security-mobile/SKILL.md +43 -0
- package/presets/agy/skills/security-network/SKILL.md +43 -0
- package/presets/agy/skills/security-ot-ics/SKILL.md +43 -0
- package/presets/agy/skills/security-recon/SKILL.md +45 -0
- package/presets/agy/skills/security-red-team/SKILL.md +44 -0
- package/presets/agy/skills/security-reverse-engineering/SKILL.md +44 -0
- package/presets/agy/skills/security-soc-automation/SKILL.md +43 -0
- package/presets/agy/skills/security-threat-hunting/SKILL.md +43 -0
- package/presets/agy/skills/security-vuln-assessment/SKILL.md +45 -0
- package/presets/agy/skills/security-web/SKILL.md +44 -0
- package/presets/agy/skills/testing-tdd/SKILL.md +53 -0
- package/presets/agy/skills/using-cc-skills/SKILL.md +48 -0
- package/presets/agy/workflows/cc-api-contract.md +14 -0
- package/presets/agy/workflows/cc-ask.md +2 -1
- package/presets/agy/workflows/cc-backlog.md +69 -0
- package/presets/agy/workflows/cc-db-migration.md +14 -0
- package/presets/agy/workflows/cc-explore.md +1 -1
- package/presets/agy/workflows/cc-feature.md +18 -0
- package/presets/agy/workflows/cc-fix.md +14 -0
- package/presets/agy/workflows/cc-iterative.md +14 -0
- package/presets/agy/workflows/cc-openspec.md +17 -1
- package/presets/agy/workflows/cc-scorecard.md +2 -0
- package/presets/agy/workflows/cc-security.md +180 -0
- package/presets/agy/workflows/cc-spec-mutation.md +191 -0
- package/presets/agy/workflows/cc-tdd-cycle.md +14 -0
- package/presets/claude/CLAUDE.md +4 -0
- package/presets/claude/commands/cc/api-contract.md +14 -0
- package/presets/claude/commands/cc/ask.md +2 -1
- package/presets/claude/commands/cc/backlog.md +104 -0
- package/presets/claude/commands/cc/db-migration.md +14 -0
- package/presets/claude/commands/cc/explore.md +1 -1
- package/presets/claude/commands/cc/feature.md +18 -0
- package/presets/claude/commands/cc/fix.md +17 -0
- package/presets/claude/commands/cc/iterative.md +14 -0
- package/presets/claude/commands/cc/openspec.md +30 -1
- package/presets/claude/commands/cc/review.md +3 -0
- package/presets/claude/commands/cc/scorecard.md +2 -0
- package/presets/claude/commands/cc/security.md +179 -0
- package/presets/claude/commands/cc/spec-mutation.md +190 -0
- package/presets/claude/commands/cc/tdd-cycle.md +17 -0
- package/presets/claude/gates/pre-commit/GATE.md +5 -4
- package/presets/claude/settings.json +13 -11
- package/presets/claude/skills/backlog/SKILL.md +61 -0
- package/presets/claude/skills/evaluation/SKILL.md +47 -24
- package/presets/claude/skills/openspec/SKILL.md +46 -34
- package/presets/claude/skills/security/SKILL.md +382 -0
- package/presets/claude/skills/security-ai-llm/SKILL.md +43 -0
- package/presets/claude/skills/security-blue-team/SKILL.md +43 -0
- package/presets/claude/skills/security-cloud/SKILL.md +43 -0
- package/presets/claude/skills/security-crypto/SKILL.md +43 -0
- package/presets/claude/skills/security-exploit-dev/SKILL.md +45 -0
- package/presets/claude/skills/security-grc/SKILL.md +43 -0
- package/presets/claude/skills/security-incident-response/SKILL.md +45 -0
- package/presets/claude/skills/security-log-analysis/SKILL.md +43 -0
- package/presets/claude/skills/security-malware-analysis/SKILL.md +44 -0
- package/presets/claude/skills/security-mobile/SKILL.md +43 -0
- package/presets/claude/skills/security-network/SKILL.md +43 -0
- package/presets/claude/skills/security-ot-ics/SKILL.md +43 -0
- package/presets/claude/skills/security-recon/SKILL.md +45 -0
- package/presets/claude/skills/security-red-team/SKILL.md +44 -0
- package/presets/claude/skills/security-reverse-engineering/SKILL.md +44 -0
- package/presets/claude/skills/security-soc-automation/SKILL.md +43 -0
- package/presets/claude/skills/security-threat-hunting/SKILL.md +43 -0
- package/presets/claude/skills/security-vuln-assessment/SKILL.md +45 -0
- package/presets/claude/skills/security-web/SKILL.md +44 -0
- package/presets/claude/skills/testing-tdd/SKILL.md +53 -0
- package/presets/claude/skills/using-cc-skills/SKILL.md +48 -0
- package/presets/codex/AGENTS.md +16 -12
- package/presets/codex/commands/cc-ask.md +2 -1
- package/presets/codex/gates/pre-commit/GATE.md +5 -4
- package/presets/codex/skills/backlog/SKILL.md +61 -0
- package/presets/codex/skills/cc-api-contract/SKILL.md +87 -0
- package/presets/codex/skills/cc-backlog/SKILL.md +108 -0
- package/presets/codex/skills/cc-clarify/SKILL.md +36 -0
- package/presets/codex/skills/cc-council/SKILL.md +92 -0
- package/presets/codex/skills/cc-db-migration/SKILL.md +88 -0
- package/presets/codex/skills/cc-explore/SKILL.md +40 -0
- package/presets/codex/skills/cc-feature/SKILL.md +154 -0
- package/presets/codex/skills/cc-fix/SKILL.md +165 -0
- package/presets/codex/skills/cc-handoff/SKILL.md +45 -0
- package/presets/codex/skills/cc-iterative/SKILL.md +150 -0
- package/presets/codex/skills/cc-openspec/SKILL.md +191 -0
- package/presets/codex/skills/cc-pagespeed/SKILL.md +124 -0
- package/presets/codex/skills/cc-prototype/SKILL.md +42 -0
- package/presets/codex/skills/cc-refactor/SKILL.md +163 -0
- package/presets/codex/skills/cc-review/SKILL.md +152 -0
- package/presets/codex/skills/cc-scorecard/SKILL.md +82 -0
- package/presets/codex/skills/cc-security/SKILL.md +182 -0
- package/presets/codex/skills/cc-spec-mutation/SKILL.md +192 -0
- package/presets/codex/skills/cc-tdd-cycle/SKILL.md +266 -0
- package/presets/codex/skills/cc-test-plan/SKILL.md +153 -0
- package/presets/codex/skills/cc-triage/SKILL.md +38 -0
- package/presets/codex/skills/evaluation/SKILL.md +65 -0
- package/presets/codex/skills/openspec/SKILL.md +66 -0
- package/presets/codex/skills/testing-tdd/SKILL.md +53 -0
- package/presets/codex/skills/using-cc-skills/SKILL.md +48 -0
- package/presets/cursor/AGENTS.md +2 -2
- package/presets/cursor/commands/cc/api-contract.md +14 -0
- package/presets/cursor/commands/cc/ask.md +2 -1
- package/presets/cursor/commands/cc/backlog.md +105 -0
- package/presets/cursor/commands/cc/db-migration.md +14 -0
- package/presets/cursor/commands/cc/explore.md +1 -1
- package/presets/cursor/commands/cc/feature.md +18 -0
- package/presets/cursor/commands/cc/fix.md +17 -0
- package/presets/cursor/commands/cc/iterative.md +14 -0
- package/presets/cursor/commands/cc/openspec.md +30 -1
- package/presets/cursor/commands/cc/scorecard.md +2 -0
- package/presets/cursor/commands/cc/security.md +179 -0
- package/presets/cursor/commands/cc/spec-mutation.md +190 -0
- package/presets/cursor/commands/cc/tdd-cycle.md +14 -0
- package/presets/cursor/gates/pre-commit/GATE.md +5 -4
- package/presets/cursor/skills/backlog/SKILL.md +61 -0
- package/presets/cursor/skills/evaluation/SKILL.md +61 -4
- package/presets/cursor/skills/openspec/SKILL.md +47 -33
- package/presets/cursor/skills/security-ai-llm/SKILL.md +43 -0
- package/presets/cursor/skills/security-blue-team/SKILL.md +43 -0
- package/presets/cursor/skills/security-cloud/SKILL.md +43 -0
- package/presets/cursor/skills/security-crypto/SKILL.md +43 -0
- package/presets/cursor/skills/security-exploit-dev/SKILL.md +45 -0
- package/presets/cursor/skills/security-grc/SKILL.md +43 -0
- package/presets/cursor/skills/security-incident-response/SKILL.md +45 -0
- package/presets/cursor/skills/security-log-analysis/SKILL.md +43 -0
- package/presets/cursor/skills/security-malware-analysis/SKILL.md +44 -0
- package/presets/cursor/skills/security-mobile/SKILL.md +43 -0
- package/presets/cursor/skills/security-network/SKILL.md +43 -0
- package/presets/cursor/skills/security-ot-ics/SKILL.md +43 -0
- package/presets/cursor/skills/security-recon/SKILL.md +45 -0
- package/presets/cursor/skills/security-red-team/SKILL.md +44 -0
- package/presets/cursor/skills/security-reverse-engineering/SKILL.md +44 -0
- package/presets/cursor/skills/security-soc-automation/SKILL.md +43 -0
- package/presets/cursor/skills/security-threat-hunting/SKILL.md +43 -0
- package/presets/cursor/skills/security-vuln-assessment/SKILL.md +45 -0
- package/presets/cursor/skills/security-web/SKILL.md +44 -0
- package/presets/cursor/skills/testing-tdd/SKILL.md +35 -574
- package/presets/cursor/skills/using-cc-skills/SKILL.md +48 -0
- package/presets/gemini/commands/cc/api-contract.toml +82 -0
- package/presets/gemini/commands/cc/ask.toml +54 -0
- package/presets/gemini/commands/cc/backlog.toml +103 -0
- package/presets/gemini/commands/cc/clarify.toml +31 -0
- package/presets/gemini/commands/cc/council.toml +87 -0
- package/presets/gemini/commands/cc/db-migration.toml +83 -0
- package/presets/gemini/commands/cc/explore.toml +35 -0
- package/presets/gemini/commands/cc/feature.toml +153 -0
- package/presets/gemini/commands/cc/fix.toml +163 -0
- package/presets/gemini/commands/cc/handoff.toml +40 -0
- package/presets/gemini/commands/cc/iterative.toml +145 -0
- package/presets/gemini/commands/cc/openspec.toml +186 -0
- package/presets/gemini/commands/cc/pagespeed.toml +119 -0
- package/presets/gemini/commands/cc/prototype.toml +37 -0
- package/presets/gemini/commands/cc/refactor.toml +158 -0
- package/presets/gemini/commands/cc/review.toml +150 -0
- package/presets/gemini/commands/cc/scorecard.toml +77 -0
- package/presets/gemini/commands/cc/security.toml +177 -0
- package/presets/gemini/commands/cc/spec-mutation.toml +187 -0
- package/presets/gemini/commands/cc/tdd-cycle.toml +264 -0
- package/presets/gemini/commands/cc/test-plan.toml +148 -0
- package/presets/gemini/commands/cc/triage.toml +33 -0
- package/presets/opencode/README.md +24 -21
- package/presets/opencode/agents/architect.md +6 -0
- package/presets/opencode/agents/implementer.md +7 -0
- package/presets/opencode/agents/reviewer.md +6 -0
- package/presets/opencode/agents/tester.md +6 -0
- package/presets/opencode/commands/cc-api-contract.md +14 -0
- package/presets/opencode/commands/cc-ask.md +2 -1
- package/presets/opencode/commands/cc-backlog.md +68 -0
- package/presets/opencode/commands/cc-db-migration.md +14 -0
- package/presets/opencode/commands/cc-explore.md +1 -1
- package/presets/opencode/commands/cc-feature.md +18 -0
- package/presets/opencode/commands/cc-fix.md +17 -0
- package/presets/opencode/commands/cc-iterative.md +14 -0
- package/presets/opencode/commands/cc-openspec.md +17 -1
- package/presets/opencode/commands/cc-scorecard.md +2 -0
- package/presets/opencode/commands/cc-security.md +179 -0
- package/presets/opencode/commands/cc-spec-mutation.md +190 -0
- package/presets/opencode/commands/cc-tdd-cycle.md +14 -0
- package/presets/opencode/gates/pre-commit/GATE.md +5 -4
- package/presets/opencode/opencode.jsonc +1 -1
- package/presets/opencode/prompts/v1.0.0/architect.md +6 -0
- package/presets/opencode/prompts/v1.0.0/implementer.md +7 -0
- package/presets/opencode/prompts/v1.0.0/reviewer.md +6 -0
- package/presets/opencode/prompts/v1.0.0/tester.md +6 -0
- package/presets/opencode/skills/backlog/SKILL.md +61 -0
- package/presets/opencode/skills/evaluation/SKILL.md +61 -2
- package/presets/opencode/skills/openspec/SKILL.md +47 -31
- package/presets/opencode/skills/security-ai-llm/SKILL.md +43 -0
- package/presets/opencode/skills/security-blue-team/SKILL.md +43 -0
- package/presets/opencode/skills/security-cloud/SKILL.md +43 -0
- package/presets/opencode/skills/security-crypto/SKILL.md +43 -0
- package/presets/opencode/skills/security-exploit-dev/SKILL.md +45 -0
- package/presets/opencode/skills/security-grc/SKILL.md +43 -0
- package/presets/opencode/skills/security-incident-response/SKILL.md +45 -0
- package/presets/opencode/skills/security-log-analysis/SKILL.md +43 -0
- package/presets/opencode/skills/security-malware-analysis/SKILL.md +44 -0
- package/presets/opencode/skills/security-mobile/SKILL.md +43 -0
- package/presets/opencode/skills/security-network/SKILL.md +43 -0
- package/presets/opencode/skills/security-ot-ics/SKILL.md +43 -0
- package/presets/opencode/skills/security-recon/SKILL.md +45 -0
- package/presets/opencode/skills/security-red-team/SKILL.md +44 -0
- package/presets/opencode/skills/security-reverse-engineering/SKILL.md +44 -0
- package/presets/opencode/skills/security-soc-automation/SKILL.md +43 -0
- package/presets/opencode/skills/security-threat-hunting/SKILL.md +43 -0
- package/presets/opencode/skills/security-vuln-assessment/SKILL.md +45 -0
- package/presets/opencode/skills/security-web/SKILL.md +44 -0
- package/presets/opencode/skills/testing-tdd/SKILL.md +35 -574
- package/presets/opencode/skills/using-cc-skills/SKILL.md +48 -0
- package/presets/shared/__pycache__/mutation_runner.cpython-314.pyc +0 -0
- package/presets/shared/invoke-hook.cjs +115 -0
- package/presets/shared/mutation_runner.py +273 -0
- package/src/presets/council/council.yml +12 -0
- package/src/presets/manifests/agy.yml +2 -0
- package/src/presets/manifests/claude.yml +3 -0
- package/src/presets/manifests/gemini.yml +15 -0
- package/src/presets/models/agy.yml +24 -24
- package/src/presets/models/claude.yml +10 -10
- package/src/presets/models/codex.yml +10 -10
- package/src/presets/models/cursor.yml +10 -10
- package/src/presets/models/gemini.yml +10 -10
- package/src/presets/models/opencode.yml +10 -10
- package/presets/agy/scripts/post-tool.sh +0 -25
- package/presets/agy/scripts/pre-tool.sh +0 -56
|
@@ -17,30 +17,33 @@ providers)** models.
|
|
|
17
17
|
| `claude-sonnet-4-6` | Balanced, general purpose | Default for most agents |
|
|
18
18
|
| `claude-haiku-4-5-20251001` | Fast, lightweight | Task Coach, Docs, Repo Explorer |
|
|
19
19
|
|
|
20
|
-
### OpenCode Go
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
|
27
|
-
|
|
|
28
|
-
| `
|
|
20
|
+
### OpenCode Go models
|
|
21
|
+
|
|
22
|
+
Canonical slugs live in `src/presets/models/*.yml`. Production roles never use
|
|
23
|
+
`muse-spark-1.2-contributor` (trains on prompts). `ox-alpha-free` is an optional
|
|
24
|
+
fallback, not a default.
|
|
25
|
+
|
|
26
|
+
| Model | Best for |
|
|
27
|
+
| --- | --- |
|
|
28
|
+
| `deepseek-v4-pro` | Architect |
|
|
29
|
+
| `kimi-k3` | Security reviewer |
|
|
30
|
+
| `qwen3.8-max` | Reviewer, contract-builder |
|
|
31
|
+
| `glm-5.3` | Devil, complexity-auditor |
|
|
32
|
+
| `mimo-v2.5` | Implementer |
|
|
33
|
+
| `minimax-m3` | Tester |
|
|
34
|
+
| `qwen3.7-plus` | Orchestrator (TUI default) |
|
|
35
|
+
| `gpt-5.6-luna` | Task coach, planner |
|
|
36
|
+
| `deepseek-v4-flash` | Goal planner |
|
|
37
|
+
| `longcat-2.0` | Repo explorer |
|
|
38
|
+
| `hy3` | Docs |
|
|
29
39
|
|
|
30
40
|
---
|
|
31
41
|
|
|
32
42
|
## Agent Model Matrix
|
|
33
43
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
| **Architect** | `claude-opus-4-7` | `deepseek-v4-pro` | `mimo-v2.5-pro` |
|
|
38
|
-
| **Implementer** | `claude-sonnet-4-6` | `mimo-v2.5-pro` | `minimax-m2.7` |
|
|
39
|
-
| **Tester** | `claude-sonnet-4-6` | `minimax-m2.7` | `deepseek-v4-pro` |
|
|
40
|
-
| **Reviewer** | `claude-sonnet-4-6` | `qwen3.6-plus` | `minimax-m2.7` |
|
|
41
|
-
| **Task Coach** | `claude-haiku-4-5-20251001` | `qwen3.6-plus` | `kimi-k2.6` |
|
|
42
|
-
| **Docs** | `claude-haiku-4-5-20251001` | `qwen3.6-plus` | `kimi-k2.6` |
|
|
43
|
-
| **Repo Explorer** | `claude-haiku-4-5-20251001` | `qwen3.6-plus` | `kimi-k2.6` |
|
|
44
|
+
See `skills/cc-update-preset-models/references/role-map.md`. OpenCode column
|
|
45
|
+
examples: architect `deepseek-v4-pro`, implementer `mimo-v2.5`, tester
|
|
46
|
+
`minimax-m3`, reviewer `qwen3.8-max`.
|
|
44
47
|
|
|
45
48
|
---
|
|
46
49
|
|
|
@@ -93,7 +96,7 @@ The following paths are denied by default:
|
|
|
93
96
|
|
|
94
97
|
### Medium Tasks (Implementation, testing)
|
|
95
98
|
|
|
96
|
-
**Recommended:** `mimo-v2.5
|
|
99
|
+
**Recommended:** `mimo-v2.5` or `minimax-m3` (OpenCode Go) or
|
|
97
100
|
`claude-sonnet-4-6` (Claude)
|
|
98
101
|
|
|
99
102
|
- Implementer code writing
|
|
@@ -165,7 +168,7 @@ export KIMI_API_KEY="your-key"
|
|
|
165
168
|
| ------------------------------- | -------------------------------------------------- |
|
|
166
169
|
| Complex reasoning, architecture | OpenCode Go (`deepseek-v4-pro`) or Claude (`opus`) |
|
|
167
170
|
| Fast iteration, simple tasks | OpenCode Go (`qwen3.6-plus`) or Claude (`haiku`) |
|
|
168
|
-
| Code implementation | OpenCode Go (`mimo-v2.5
|
|
171
|
+
| Code implementation | OpenCode Go (`mimo-v2.5`) or Claude (`sonnet`) |
|
|
169
172
|
| Budget constraints | OpenCode Go (generally lower cost) |
|
|
170
173
|
| Availability issues | Switch to alternative from the matrix |
|
|
171
174
|
|
|
@@ -246,3 +246,9 @@ Rules under CCEP-1:
|
|
|
246
246
|
- Never approve your own plan — the human approves before implementation starts.
|
|
247
247
|
- If scope expands during design, flag it as a separate task, not an extension
|
|
248
248
|
of the current one.
|
|
249
|
+
|
|
250
|
+
## Composition
|
|
251
|
+
|
|
252
|
+
Invoke via `/cc-feature`, `/cc-openspec`, or the orchestrator. Do not invoke
|
|
253
|
+
other agents. If an OpenSpec change folder is active, invoke skill `openspec`
|
|
254
|
+
and run `openspec analyze --output json` before implementation is allowed.
|
|
@@ -215,3 +215,10 @@ tests. On **REJECT**, stop and escalate to the orchestrator.
|
|
|
215
215
|
- Never modify the Technical Plan — if the plan is wrong, escalate to
|
|
216
216
|
`architect` via the orchestrator.
|
|
217
217
|
- Never commit without human confirmation.
|
|
218
|
+
|
|
219
|
+
## Composition
|
|
220
|
+
|
|
221
|
+
Invoke via `/cc-feature`, `/cc-fix`, `/cc-tdd-cycle`, or the orchestrator.
|
|
222
|
+
Do not invoke other agents. Invoke skill `testing-tdd`.
|
|
223
|
+
Deliverable is incomplete without a passing suite and runner TDD evidence when
|
|
224
|
+
TDD is required. Scorecard: `bun run dev scorecard create --from-diff`.
|
|
@@ -282,3 +282,9 @@ Invoke skill `evaluation` and run `scorecard record` with agent `reviewer`, mode
|
|
|
282
282
|
- Never issue vague findings ("this could be better") — every finding must name
|
|
283
283
|
the exact location and the specific required action.
|
|
284
284
|
- Never run `git push` or `git commit`.
|
|
285
|
+
|
|
286
|
+
## Composition
|
|
287
|
+
|
|
288
|
+
Invoke via `/cc-review` or the orchestrator. Do not invoke other agents.
|
|
289
|
+
Invoke skill `evaluation`. Deliverable is incomplete without
|
|
290
|
+
`scorecard create --from-diff` and a recorded PASS|REVISE|REJECT.
|
|
@@ -285,3 +285,9 @@ and confirmed failing; list the failing test paths in `artifacts` so the
|
|
|
285
285
|
- Never mock real behavior that could be tested with an in-memory alternative.
|
|
286
286
|
- Never declare coverage complete when any acceptance criterion lacks a test.
|
|
287
287
|
- Never run `git push` or `git commit`.
|
|
288
|
+
|
|
289
|
+
## Composition
|
|
290
|
+
|
|
291
|
+
Invoke via `/cc-tdd-cycle`, `/cc-feature`, or the orchestrator (test before
|
|
292
|
+
implement). Do not invoke other agents. Invoke skill `testing-tdd`.
|
|
293
|
+
Deliverable is incomplete without `captureTddSuiteEvidence` when TDD is required.
|
|
@@ -20,6 +20,20 @@ Command: `api-contract` (fixed for this workflow — do not infer from user text
|
|
|
20
20
|
|
|
21
21
|
---
|
|
22
22
|
|
|
23
|
+
## Step 0b — OpenSpec quality gates
|
|
24
|
+
|
|
25
|
+
If `openspec status` reports an active change folder:
|
|
26
|
+
|
|
27
|
+
1. Run: `npx cc-codeconductor openspec validate --output json`
|
|
28
|
+
2. Run: `npx cc-codeconductor openspec analyze --output json`
|
|
29
|
+
3. If analyze `stop` is true or any finding is CRITICAL, stop. Do not delegate to implementer.
|
|
30
|
+
4. Next command spelling on this runner: `/cc-api-contract`
|
|
31
|
+
|
|
32
|
+
Local development: `bun run dev <same argv>`. Published package: `npx cc-codeconductor`.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
|
|
23
37
|
## Step 1 — Task Card validation (task-coach)
|
|
24
38
|
|
|
25
39
|
Invoke `task-coach` with the request above.
|
|
@@ -36,10 +36,11 @@ The catalog is only:
|
|
|
36
36
|
| `/cc:refactor` | structure, no behavior change |
|
|
37
37
|
| `/cc:review` | inspect a diff/PR |
|
|
38
38
|
| `/cc:tdd-cycle` | red → green → refactor |
|
|
39
|
+
| `/cc:backlog` | create or append BACKLOG.md / objectives |
|
|
39
40
|
| `/cc:openspec` | BACKLOG / BC-xxx delivery |
|
|
40
41
|
|
|
41
42
|
If the CLI is unavailable, apply the same catalog and the same priority:
|
|
42
|
-
openspec → tdd-cycle → review → refactor → fix → feature (default).
|
|
43
|
+
backlog (author) vs openspec (deliver) → tdd-cycle → review → refactor → fix → feature (default).
|
|
43
44
|
|
|
44
45
|
---
|
|
45
46
|
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
description:
|
|
3
|
+
Author BACKLOG.md — wayfinding, grilling, create or append items, validate
|
|
4
|
+
with openspec, and plan OpenSpec change folders for /cc-openspec.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Backlog Authoring Workflow
|
|
8
|
+
|
|
9
|
+
Objectives: $ARGUMENTS
|
|
10
|
+
|
|
11
|
+
Create or append valid `BACKLOG.md` items and OpenSpec change docs. Do **not**
|
|
12
|
+
deliver implementation — that is `/cc-openspec`.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Step 0 — CCEP Bootstrap
|
|
17
|
+
|
|
18
|
+
Command: `backlog` (fixed for this workflow — do not infer from user text)
|
|
19
|
+
|
|
20
|
+
1. Run: `npx cc-codeconductor ccep parse --command backlog "$ARGUMENTS" --output json`
|
|
21
|
+
2. Run: `npx cc-codeconductor ccep resolve --command backlog "$ARGUMENTS" --output json`
|
|
22
|
+
3. Run: `npx cc-codeconductor ccep profile backlog --output json`
|
|
23
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command backlog --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
24
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## Step 1 — Wayfinding (repo-explorer)
|
|
29
|
+
|
|
30
|
+
If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"`. Invoke
|
|
31
|
+
`repo-explorer`. Do not write `BACKLOG.md`. Scope must name real files.
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Step 2 — Relentless Grilling (task-coach)
|
|
36
|
+
|
|
37
|
+
Invoke `task-coach`. Measurable acceptance only. One grilling question at a time.
|
|
38
|
+
|
|
39
|
+
**STOP here.** Unresolved grilling questions populate `questionsForUser`;
|
|
40
|
+
`ccep evaluate --command backlog` halts until a human answers.
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Step 3 — Write or append BACKLOG.md
|
|
45
|
+
|
|
46
|
+
Apply skill `backlog`. Create from template if missing; otherwise append under
|
|
47
|
+
`## Items`. Next `BC-NNN` = max existing + 1. Status `READY`. Do not rewrite
|
|
48
|
+
`## Global` or `## Archive`. Do not `git add` `BACKLOG.md` or `openspec/`.
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Step 4 — Validate (mandatory gate)
|
|
53
|
+
|
|
54
|
+
Run `npx cc-codeconductor openspec validate`. If invalid, show errors and
|
|
55
|
+
canonical structure, fix, re-validate. **STOP** planning until valid.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Step 5 — Plan new items
|
|
60
|
+
|
|
61
|
+
For each new `BC-id`: `npx cc-codeconductor openspec plan <BC-id>`.
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Completion
|
|
66
|
+
|
|
67
|
+
Report IDs, validate result, change folders. Tell the user to run `/cc-openspec`.
|
|
68
|
+
Apply skill `backlog`.
|
|
@@ -21,6 +21,20 @@ Command: `db-migration` (fixed for this workflow — do not infer from user text
|
|
|
21
21
|
|
|
22
22
|
---
|
|
23
23
|
|
|
24
|
+
## Step 0b — OpenSpec quality gates
|
|
25
|
+
|
|
26
|
+
If `openspec status` reports an active change folder:
|
|
27
|
+
|
|
28
|
+
1. Run: `npx cc-codeconductor openspec validate --output json`
|
|
29
|
+
2. Run: `npx cc-codeconductor openspec analyze --output json`
|
|
30
|
+
3. If analyze `stop` is true or any finding is CRITICAL, stop. Do not delegate to implementer.
|
|
31
|
+
4. Next command spelling on this runner: `/cc-db-migration`
|
|
32
|
+
|
|
33
|
+
Local development: `bun run dev <same argv>`. Published package: `npx cc-codeconductor`.
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
|
|
24
38
|
## Step 1 — Task Card validation (task-coach)
|
|
25
39
|
|
|
26
40
|
Invoke `task-coach` with the request above.
|
|
@@ -26,7 +26,7 @@ If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"`. Invoke `
|
|
|
26
26
|
|
|
27
27
|
## Step 2 — Suggest next command (orchestrator)
|
|
28
28
|
|
|
29
|
-
Recommend exactly one next slash command (`/cc:feature`, `/cc:fix`, `/cc:refactor`, `/cc:review`, `/cc:triage`, …) with a one-sentence rationale. Do not start that workflow.
|
|
29
|
+
Recommend exactly one next slash command (`/cc:feature`, `/cc:fix`, `/cc:refactor`, `/cc:review`, `/cc:backlog`, `/cc:openspec`, `/cc:triage`, …) with a one-sentence rationale. Do not start that workflow.
|
|
30
30
|
|
|
31
31
|
---
|
|
32
32
|
|
|
@@ -21,6 +21,24 @@ Command: `feature` (fixed for this workflow — do not infer from user text)
|
|
|
21
21
|
|
|
22
22
|
---
|
|
23
23
|
|
|
24
|
+
## Step 0b — OpenSpec quality gates
|
|
25
|
+
|
|
26
|
+
If `openspec status` reports an active change folder:
|
|
27
|
+
|
|
28
|
+
1. Run: `npx cc-codeconductor openspec validate --output json`
|
|
29
|
+
2. Run: `npx cc-codeconductor openspec analyze --output json`
|
|
30
|
+
3. If analyze `stop` is true or any finding is CRITICAL, stop. Do not delegate to implementer.
|
|
31
|
+
4. Next command spelling on this runner: `/cc-feature`
|
|
32
|
+
|
|
33
|
+
Local development: `bun run dev <same argv>`. Published package: `npx cc-codeconductor`.
|
|
34
|
+
|
|
35
|
+
Skills: `using-cc-skills`, `openspec`, `testing-tdd`, `evaluation`.
|
|
36
|
+
Do not skip `openspec analyze` when a change folder is active.
|
|
37
|
+
"I'll add tests later" is not allowed — tester before implementer.
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
|
|
24
42
|
## Step 1 — Wayfinding (repo-explorer)
|
|
25
43
|
|
|
26
44
|
If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"` (and
|
|
@@ -31,6 +31,20 @@ Command: `fix` (fixed for this workflow — do not infer from user text)
|
|
|
31
31
|
|
|
32
32
|
---
|
|
33
33
|
|
|
34
|
+
## Step 0b — OpenSpec quality gates
|
|
35
|
+
|
|
36
|
+
If `openspec status` reports an active change folder:
|
|
37
|
+
|
|
38
|
+
1. Run: `npx cc-codeconductor openspec validate --output json`
|
|
39
|
+
2. Run: `npx cc-codeconductor openspec analyze --output json`
|
|
40
|
+
3. If analyze `stop` is true or any finding is CRITICAL, stop. Do not delegate to implementer.
|
|
41
|
+
4. Next command spelling on this runner: `/cc-fix`
|
|
42
|
+
|
|
43
|
+
Local development: `bun run dev <same argv>`. Published package: `npx cc-codeconductor`.
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
|
|
34
48
|
## Step 1 — Wayfinding (repo-explorer)
|
|
35
49
|
|
|
36
50
|
If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"` (and
|
|
@@ -148,3 +162,6 @@ resolved.
|
|
|
148
162
|
Report: Task Card, Implementation Summary, regression test added, Review Report
|
|
149
163
|
(if applicable). The fix is complete only when: the regression test passes, the
|
|
150
164
|
full suite passes, and no CRITICAL review findings remain.
|
|
165
|
+
|
|
166
|
+
Skills: `testing-tdd`, `evaluation`. Record `scorecard create --from-diff`.
|
|
167
|
+
A small fix still needs a Task Card and a failing regression test first.
|
|
@@ -21,6 +21,20 @@ Command: `iterative` (fixed for this workflow — do not infer from user text)
|
|
|
21
21
|
|
|
22
22
|
---
|
|
23
23
|
|
|
24
|
+
## Step 0b — OpenSpec quality gates
|
|
25
|
+
|
|
26
|
+
If `openspec status` reports an active change folder:
|
|
27
|
+
|
|
28
|
+
1. Run: `npx cc-codeconductor openspec validate --output json`
|
|
29
|
+
2. Run: `npx cc-codeconductor openspec analyze --output json`
|
|
30
|
+
3. If analyze `stop` is true or any finding is CRITICAL, stop. Do not delegate to implementer.
|
|
31
|
+
4. Next command spelling on this runner: `/cc-iterative`
|
|
32
|
+
|
|
33
|
+
Local development: `bun run dev <same argv>`. Published package: `npx cc-codeconductor`.
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
|
|
24
38
|
## Step 1 — Wayfinding (repo-explorer)
|
|
25
39
|
|
|
26
40
|
If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"` (and
|
|
@@ -29,6 +29,20 @@ Command: `openspec` (fixed for this workflow — do not infer from user text)
|
|
|
29
29
|
|
|
30
30
|
---
|
|
31
31
|
|
|
32
|
+
## Step 0b — OpenSpec quality gates
|
|
33
|
+
|
|
34
|
+
If `openspec status` reports an active change folder:
|
|
35
|
+
|
|
36
|
+
1. Run: `npx cc-codeconductor openspec validate --output json`
|
|
37
|
+
2. Run: `npx cc-codeconductor openspec analyze --output json`
|
|
38
|
+
3. If analyze `stop` is true or any finding is CRITICAL, stop. Do not delegate to implementer.
|
|
39
|
+
4. Next command spelling on this runner: `/cc-openspec`
|
|
40
|
+
|
|
41
|
+
Local development: `bun run dev <same argv>`. Published package: `npx cc-codeconductor`.
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
|
|
32
46
|
## Step 1 — Scan
|
|
33
47
|
|
|
34
48
|
Run `npx cc-codeconductor openspec scan`. Report new, modified, and closed items.
|
|
@@ -45,6 +59,8 @@ Use `$ARGUMENTS` BC-id or `npx cc-codeconductor openspec status` for next READY
|
|
|
45
59
|
|
|
46
60
|
Run `npx cc-codeconductor openspec plan <BC-id>`. Show TaskCards and `openspec/changes/` path.
|
|
47
61
|
|
|
62
|
+
Drive status with CLI (do not edit openspec-state.json): `openspec start <cardId>`, `openspec done <cardId>`, `openspec block <cardId> --reason "…"`, `openspec archive <itemId>`.
|
|
63
|
+
|
|
48
64
|
---
|
|
49
65
|
|
|
50
66
|
## Step 4 — Execute loop
|
|
@@ -69,6 +85,6 @@ Reviewer approves or rejects against acceptance criteria. Reject → `IN_PROGRES
|
|
|
69
85
|
|
|
70
86
|
## Step 6 — Update
|
|
71
87
|
|
|
72
|
-
Mark DONE
|
|
88
|
+
Mark DONE with `openspec archive <itemId>` (all cards must be done), then run `openspec scan`.
|
|
73
89
|
|
|
74
90
|
Apply skill `openspec` for format and state rules.
|
|
@@ -19,6 +19,8 @@ Command: `scorecard` (fixed for this workflow — do not infer from user text)
|
|
|
19
19
|
|
|
20
20
|
---
|
|
21
21
|
|
|
22
|
+
If a change folder exists, run `npx cc-codeconductor openspec analyze --output json` first. `--from-diff` overlays FR/SC coverage onto `acceptance` and TDD evidence onto `tests`.
|
|
23
|
+
|
|
22
24
|
1. `scorecard create --task <id> --from-diff`
|
|
23
25
|
2. Complete criteria (reviewer or human)
|
|
24
26
|
3. `scorecard regression` (optional)
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: >
|
|
3
|
+
Run the authorized defensive security workflow — domain security-* skills,
|
|
4
|
+
authorization gate, risk-based routing, hardening, and review.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Defensive Security Workflow
|
|
8
|
+
|
|
9
|
+
Security objective: $ARGUMENTS
|
|
10
|
+
|
|
11
|
+
Provide the following information in $ARGUMENTS:
|
|
12
|
+
|
|
13
|
+
- What must be reviewed or hardened, and why
|
|
14
|
+
- Domain: a `security-*` skill id (recon, vuln-assessment, web, cloud, IR,
|
|
15
|
+
hunting, GRC, …) or `web-app` / `api` / `cloud-config` /
|
|
16
|
+
`dependency-supply-chain` / `secrets`
|
|
17
|
+
- Authorization: who authorized this work on this target, and the scope boundary
|
|
18
|
+
- Risk classification (`low`, `medium`, or `high`), if known
|
|
19
|
+
- Scope: which files, modules, repos, or environments are in and out of bounds
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Scope and authorization
|
|
24
|
+
|
|
25
|
+
This workflow performs **authorized defensive security work only**: threat
|
|
26
|
+
modeling, hardening, secure configuration, dependency and supply-chain review,
|
|
27
|
+
secret hygiene, and detection coverage.
|
|
28
|
+
|
|
29
|
+
Refuse outright and offer the defensive equivalent instead (threat model,
|
|
30
|
+
hardening, detection coverage, dependency audit):
|
|
31
|
+
|
|
32
|
+
- Exploit or proof-of-concept development
|
|
33
|
+
- Malware authoring, or malware analysis intended for reuse
|
|
34
|
+
- Reverse engineering aimed at bypassing a control
|
|
35
|
+
- Red-team playbooks
|
|
36
|
+
- Any unauthorized-access procedure
|
|
37
|
+
|
|
38
|
+
Scope is limited to the repository under analysis. Do not scan, probe, or
|
|
39
|
+
perform reconnaissance against third-party hosts.
|
|
40
|
+
|
|
41
|
+
Do not proceed without an authorization statement. Do not produce exploit
|
|
42
|
+
payloads, malware, or attack procedures.
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Step 0 — CCEP Bootstrap
|
|
47
|
+
|
|
48
|
+
Command: `security` (fixed for this workflow — do not infer from user text)
|
|
49
|
+
|
|
50
|
+
1. Run: `npx cc-codeconductor ccep parse --command security "$ARGUMENTS" --output json`
|
|
51
|
+
2. Run: `npx cc-codeconductor ccep resolve --command security "$ARGUMENTS" --output json`
|
|
52
|
+
3. Run: `npx cc-codeconductor ccep profile security --output json`
|
|
53
|
+
4. After planner/intake JSON is available, run: `npx cc-codeconductor ccep evaluate --command security --input <planner.json> --output json`. If `stop` is true, show questions or risks and wait for human input.
|
|
54
|
+
5. Delegate to subagents using compiled CCEP prompts — never forward raw `$ARGUMENTS` to planners.
|
|
55
|
+
Canonical delivery order is test-before-implement whenever both phases apply.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Step 1 — Wayfinding (repo-explorer)
|
|
60
|
+
|
|
61
|
+
If `graphify-out/graph.json` exists, run `graphify query "$ARGUMENTS"` (and
|
|
62
|
+
`graphify path` / `graphify explain` when needed). Then invoke `repo-explorer`
|
|
63
|
+
to map modules, conventions, and impact radius. Do not write code in this step.
|
|
64
|
+
Record a Repo Map artifact before intake. Load the matching `security-*` skill
|
|
65
|
+
for the named domain (see `.claude/skills/security-*/SKILL.md`). Keep the OWASP
|
|
66
|
+
`security` skill for application-security reviews.
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Step 2 — Task Card validation (task-coach)
|
|
71
|
+
|
|
72
|
+
Invoke `task-coach` with the security objective above.
|
|
73
|
+
|
|
74
|
+
task-coach must produce a Task Card that includes:
|
|
75
|
+
|
|
76
|
+
- Objective: what must be reviewed or hardened, in one sentence
|
|
77
|
+
- Domain: which `security-*` skill applies, or `web-app` / `api` /
|
|
78
|
+
`cloud-config` / `dependency-supply-chain` / `secrets`
|
|
79
|
+
- Authorization: who authorized this work on this target, and the scope boundary
|
|
80
|
+
- Risk classification: `low`, `medium`, or `high`
|
|
81
|
+
- Scope: which files or modules are likely affected
|
|
82
|
+
|
|
83
|
+
If authorization is absent, unclear, or names a system the requester does not
|
|
84
|
+
own or operate, **STOP and refuse. Do not route the task.**
|
|
85
|
+
|
|
86
|
+
Redact secrets, tokens, and credentials from any evidence before it enters the
|
|
87
|
+
Task Card. Summarize logs; do not paste env files.
|
|
88
|
+
|
|
89
|
+
**STOP here. Show the Task Card and wait for human confirmation.**
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## Step 3 — Route by risk
|
|
94
|
+
|
|
95
|
+
Read the risk field from the Task Card and follow the corresponding route.
|
|
96
|
+
|
|
97
|
+
### Low-risk route
|
|
98
|
+
|
|
99
|
+
Applies when: the weakness is isolated, not exploitable in the current
|
|
100
|
+
configuration, and no authentication, secret, or dependency boundary is
|
|
101
|
+
involved.
|
|
102
|
+
|
|
103
|
+
Route: `task-coach` → `tester` → `implementer`
|
|
104
|
+
|
|
105
|
+
Proceed directly to Step 4 (tests), then Step 5a.
|
|
106
|
+
|
|
107
|
+
### Medium or high-risk route
|
|
108
|
+
|
|
109
|
+
Applies when: the work touches authentication, authorization, secrets,
|
|
110
|
+
cryptography, trust-boundary input validation, or a dependency upgrade.
|
|
111
|
+
|
|
112
|
+
Route: `task-coach` → `architect` → `tester` → `implementer` → `reviewer`
|
|
113
|
+
|
|
114
|
+
Invoke `architect` before implementation. architect must:
|
|
115
|
+
|
|
116
|
+
- Identify the weakness and the affected trust boundary
|
|
117
|
+
- Define the hardening approach and affected files
|
|
118
|
+
- Flag any regression risk to adjacent components
|
|
119
|
+
- Produce a Technical Plan
|
|
120
|
+
|
|
121
|
+
On **high** risk, also invoke `security-reviewer` before Reviewer.
|
|
122
|
+
|
|
123
|
+
**STOP here if high-risk. Show the Technical Plan and wait for human approval
|
|
124
|
+
before continuing.**
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Step 4 — Tests (tester)
|
|
129
|
+
|
|
130
|
+
Invoke `tester` for all risk levels.
|
|
131
|
+
|
|
132
|
+
tester must:
|
|
133
|
+
|
|
134
|
+
1. Write a regression test that proves the weakness exists and confirm it fails
|
|
135
|
+
before any change (RED)
|
|
136
|
+
2. Verify that existing tests still pass
|
|
137
|
+
3. Produce a Coverage Summary: test added, case covered
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
## Step 5a — Implementation, low-risk (implementer)
|
|
142
|
+
|
|
143
|
+
Invoke `implementer` with the Task Card.
|
|
144
|
+
Implementer creates a Git Worktree before touching any file; all edits happen inside it.
|
|
145
|
+
|
|
146
|
+
implementer must:
|
|
147
|
+
|
|
148
|
+
1. Apply the minimal hardening change — no unrelated changes
|
|
149
|
+
2. Run the suite and make the RED regression test pass
|
|
150
|
+
3. Produce an Implementation Summary: weakness, change applied, files changed
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## Step 5b — Implementation, medium/high-risk (implementer)
|
|
155
|
+
|
|
156
|
+
Invoke `implementer` with the approved Technical Plan and the Task Card.
|
|
157
|
+
Implementer creates a Git Worktree before touching any file; all edits happen inside it.
|
|
158
|
+
|
|
159
|
+
implementer must follow the plan exactly. Any deviation requires a new Technical
|
|
160
|
+
Plan approval. After implementation, run the full test suite. No exploit code.
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
## Step 6 — Review (Reviewer role) — medium/high-risk only
|
|
165
|
+
|
|
166
|
+
Invoke `reviewer` with the diff and Task Card. The Reviewer must apply the OWASP
|
|
167
|
+
rules in the `security` skill.
|
|
168
|
+
|
|
169
|
+
reviewer produces a Review Report with CRITICAL / WARNING / SUGGESTION findings.
|
|
170
|
+
If any CRITICAL findings exist, **STOP**. Do not close the task until they are
|
|
171
|
+
resolved.
|
|
172
|
+
|
|
173
|
+
---
|
|
174
|
+
|
|
175
|
+
## Completion
|
|
176
|
+
|
|
177
|
+
Report: Task Card, Implementation Summary, regression test added, Review Report
|
|
178
|
+
(if applicable). The task is complete only when: the regression test passes, the
|
|
179
|
+
full suite passes, and no CRITICAL review findings remain.
|