feat: migrate all codex team skills from spawn_agents_on_csv to spawn_agent + wait_agent architecture

- Delete 21 old team skill directories using CSV-wave pipeline pattern (~100+ files)
- Delete old team-lifecycle (v3) and team-planex-v2
- Create generic team-worker.toml and team-supervisor.toml (replacing tlv4-specific TOMLs)
- Convert 19 team skills from Claude Code format (Agent/SendMessage/TaskCreate)
  to Codex format (spawn_agent/wait_agent/tasks.json/request_user_input)
- Update team-lifecycle-v4 to use generic agent types (team_worker/team_supervisor)
- Convert all coordinator role files: dispatch.md, monitor.md, role.md
- Convert all worker role files: remove run_in_background, fix Bash syntax
- Convert all specs/pipelines.md references
- Final state: 20 team skills, 217 .md files, zero Claude Code API residuals

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
catlog22
2026-03-24 16:54:48 +08:00
parent 54283e5dbb
commit 1e560ab8e8
334 changed files with 28996 additions and 35516 deletions

View File

@@ -0,0 +1,57 @@
# Code Review
4-dimension code review for implementation quality.
## Inputs
- Plan file (`{session}/plan/plan.json`)
- Implementation discovery files (`{session}/discoveries/IMPL-*.json`)
- Test results (if available)
## Gather Modified Files
Read upstream context from file system (no team_msg):
```javascript
// 1. Read plan for file list
const plan = JSON.parse(Read(`{session}/plan/plan.json`))
const plannedFiles = plan.tasks.flatMap(t => t.files)
// 2. Read implementation discoveries for actual modified files
const implFiles = Glob(`{session}/discoveries/IMPL-*.json`)
const modifiedFiles = new Set()
for (const f of implFiles) {
const discovery = JSON.parse(Read(f))
for (const file of (discovery.files_modified || [])) {
modifiedFiles.add(file)
}
}
// 3. Union of planned + actually modified files
const allFiles = [...new Set([...plannedFiles, ...modifiedFiles])]
```
## Dimensions
| Dimension | Critical Issues |
|-----------|----------------|
| Quality | Empty catch, any casts, @ts-ignore, console.log |
| Security | Hardcoded secrets, SQL injection, eval/exec, innerHTML |
| Architecture | Circular deps, imports >2 levels deep, files >500 lines |
| Requirements | Missing core functionality, incomplete acceptance criteria |
## Review Process
1. Gather modified files from plan.json + discoveries/IMPL-*.json
2. Read each modified file
3. Score per dimension (0-100%)
4. Classify issues by severity (Critical/High/Medium/Low)
5. Generate verdict (BLOCK/CONDITIONAL/APPROVE)
## Output
Write review report to `{session}/artifacts/review-report.md`:
- Per-dimension scores
- Issue list with file:line references
- Verdict with justification
- Recommendations (if CONDITIONAL)

View File

@@ -0,0 +1,44 @@
# Spec Quality Review
5-dimension spec quality gate with discuss protocol.
## Inputs
- All spec docs in `{session}/spec/`
- Quality gate config from specs/quality-gates.md
## Dimensions
| Dimension | Weight | Focus |
|-----------|--------|-------|
| Completeness | 25% | All sections present with substance |
| Consistency | 25% | Terminology, format, references uniform |
| Traceability | 25% | Goals->Reqs->Arch->Stories chain |
| Depth | 25% | AC testable, ADRs justified, stories estimable |
## Review Process
1. Read all spec documents from `{session}/spec/`
2. Load quality gate thresholds from specs/quality-gates.md
3. Score each dimension
4. Run cross-document validation
5. Generate readiness-report.md + spec-summary.md
6. Run DISCUSS-003:
- Artifact: `{session}/spec/readiness-report.md`
- Perspectives: product, technical, quality, risk, coverage
- Handle verdict per consensus protocol
- DISCUSS-003 HIGH always triggers user pause
## Quality Gate
| Gate | Score |
|------|-------|
| PASS | >= 80% |
| REVIEW | 60-79% |
| FAIL | < 60% |
## Output
Write to `{session}/artifacts/`:
- readiness-report.md: Dimension scores, issue list, traceability matrix
- spec-summary.md: Executive summary of all spec docs

View File

@@ -0,0 +1,98 @@
---
role: reviewer
prefix: REVIEW
additional_prefixes: [QUALITY, IMPROVE]
inner_loop: false
discuss_rounds: [DISCUSS-003]
message_types:
success_review: review_result
success_quality: quality_result
fix: fix_required
error: error
---
# Reviewer
Quality review for both code (REVIEW-*) and specifications (QUALITY-*, IMPROVE-*).
## Identity
- Tag: [reviewer] | Prefix: REVIEW-*, QUALITY-*, IMPROVE-*
- Responsibility: Multi-dimensional review with verdict routing
## Boundaries
### MUST
- Detect review mode from task prefix
- Apply correct dimensions per mode
- Run DISCUSS-003 for spec quality (QUALITY-*/IMPROVE-*)
- Generate actionable verdict
### MUST NOT
- Mix code review with spec quality dimensions
- Skip discuss for QUALITY-* tasks
- Implement fixes (only recommend)
## Phase 2: Mode Detection
| Task Prefix | Mode | Command |
|-------------|------|---------|
| REVIEW-* | Code Review | commands/review-code.md |
| QUALITY-* | Spec Quality | commands/review-spec.md |
| IMPROVE-* | Spec Quality (recheck) | commands/review-spec.md |
## Phase 3: Review Execution
Route to command based on detected mode.
## Phase 4: Verdict + Report
### Code Review Verdict
| Verdict | Criteria |
|---------|----------|
| BLOCK | Critical issues present |
| CONDITIONAL | High/medium only |
| APPROVE | Low or none |
### Spec Quality Gate
| Gate | Criteria |
|------|----------|
| PASS | Score >= 80% |
| REVIEW | Score 60-79% |
| FAIL | Score < 60% |
### Write Discovery
```javascript
Write(`{session}/discoveries/{id}.json`, JSON.stringify({
task_id: "{id}",
type: "review_result", // or "quality_gate"
mode: "code_review", // or "spec_quality"
verdict: "APPROVE", // BLOCK/CONDITIONAL/APPROVE or PASS/REVIEW/FAIL
dimensions: { quality: 85, security: 90, architecture: 80, requirements: 95 },
overall_score: 87,
issues: [],
report_path: "artifacts/review-report.md"
}, null, 2))
```
### Report Result
```javascript
report_agent_job_result({
id: "{id}",
status: "completed",
findings: "Code review: Quality 85%, Security 90%, Architecture 80%, Requirements 95%. Verdict: APPROVE.",
quality_score: "87",
supervision_verdict: "",
error: ""
})
```
Report includes: mode, verdict/gate, dimension scores, discuss verdict (quality only), output paths.
## Error Handling
| Scenario | Resolution |
|----------|------------|
| Missing context | Request from coordinator |
| Invalid mode | Abort with error |
| Discuss fails | Proceed without discuss, log warning |
| Upstream discovery file missing | Report error, mark failed |