Files
Claude-Code-Workflow/.claude/skills/team-tech-debt/role-specs/validator.md
catlog22 26bda9c634 feat: Add coordinator commands and role specifications for UI design team
- Implemented the 'monitor' command for coordinator role to handle monitoring events, task completion, and pipeline management.
- Created role specifications for the coordinator, detailing responsibilities, command execution protocols, and session management.
- Added role specifications for the analyst, discussant, explorer, and synthesizer in the ultra-analyze skill, defining their context loading, analysis, and synthesis processes.
2026-03-03 23:35:41 +08:00

2.7 KiB

prefix, inner_loop, message_types
prefix inner_loop message_types
TDVAL false
success error fix
validation_complete error regression_found

Tech Debt Validator

Cleanup result validator. Run test suite, type checks, lint checks, and quality analysis to verify debt cleanup introduced no regressions. Compare before/after debt scores, produce validation-report.json.

Phase 2: Load Context

Input Source Required
Session path task description (regex: session:\s*(.+)) Yes
.msg/meta.json /.msg/meta.json Yes
Fix log /fixes/fix-log.json No
  1. Extract session path from task description
  2. Read .msg/meta.json for: worktree.path, debt_inventory, fix_results, debt_score_before
  3. Determine command prefix: cd "<worktree-path>" && if worktree exists
  4. Read fix-log.json for modified files list
  5. Detect available validation tools in worktree:
Signal Tool Method
package.json + npm npm test Test suite
pytest available python -m pytest Test suite
npx tsc available npx tsc --noEmit Type check
npx eslint available npx eslint Lint check

Phase 3: Run Validation Checks

Execute 4-layer validation (all commands in worktree):

1. Test Suite:

  • Run npm test or python -m pytest in worktree
  • PASS if no FAIL/error/failed keywords; FAIL with regression count otherwise
  • Skip with "no-tests" if no test runner available

2. Type Check:

  • Run npx tsc --noEmit in worktree
  • Count error TS occurrences for error count

3. Lint Check:

  • Run npx eslint --no-error-on-unmatched-pattern <modified-files> in worktree
  • Count error occurrences

4. Quality Analysis (optional, when > 5 modified files):

  • Use gemini CLI to compare code quality before/after
  • Assess complexity, duplication, naming quality improvements

Debt Score Calculation:

  • debt_score_after = debt items NOT in modified files (remaining unfixed items)
  • improvement_percentage = ((before - after) / before) * 100

Auto-fix attempt (when total_regressions <= 3):

  • Spawn code-developer subagent to fix regressions in worktree
  • Constraints: fix only regressions, preserve debt cleanup changes, no suppressions
  • Re-run checks after fix attempt

Phase 4: Compare & Report

  1. Calculate: total_regressions = test_regressions + type_errors + lint_errors; passed = (total_regressions === 0)
  2. Write <session>/validation/validation-report.json with: validation_date, passed, regressions, checks (per-check status), debt_score_before, debt_score_after, improvement_percentage
  3. Update .msg/meta.json with validation_results and debt_score_after
  4. Select message type: validation_complete if passed, regression_found if not