| name | tf-judge-criteria |
| description | Scoring rubrics, severity classification, evaluation methodology, and iterative refinement protocol for Terraform code quality assessment. Preloaded by code-quality-judge agent.
|
Terraform Code Quality Evaluation Criteria
Core Principles
- Evidence-Based: All judgments grounded in observable evidence (file:line, code quotes)
- Actionable: Every issue includes concrete remediation with before/after examples
- Calibrated: Use full 1-10 scale, consistent and comparable, ±0.5 variance on re-evaluation
- Constitution Authority: MUST violations = CRITICAL, SHOULD = HIGH, MAY = LOW
Production Readiness Scale
| Score | Level | Action |
|---|
| 9.0-10.0 | Exceptional | None — use as reference |
| 8.0-8.9 | Excellent | Optional refinement |
| 7.0-7.9 | Good | Address high-priority issues |
| 6.0-6.9 | Adequate | Fix critical issues before production |
| 5.0-5.9 | Below Standard | Rework required |
| 4.0-4.9 | Poor | Substantial redesign needed |
| 1.0-3.9 | Unacceptable | Complete rework required |
6 Evaluation Dimensions
| # | Dimension | Weight | Key Criteria |
|---|
| 1 | Module Usage | 25% | Private registry, semantic versioning, minimal raw resources |
| 2 | Security & Compliance | 30% | No creds, encryption, IAM least privilege, audit logs. <5.0 = Not Production Ready |
| 3 | Code Quality | 15% | terraform fmt, naming, validation, DRY, organization |
| 4 | Variables & Outputs | 10% | Type constraints, validation rules, defaults, descriptions |
| 5 | Testing | 10% | terraform validate, .tftest.hcl, pre-commit hooks |
| 6 | Constitution Alignment | 10% | Matches plan.md, constitution MUST compliance |
Score formula: (D1×0.25) + (D2×0.30) + (D3×0.15) + (D4×0.10) + (D5×0.10) + (D6×0.10)
Security override: If D2 < 5.0, force "Not Production Ready" regardless of overall score.
Severity Classification
- CRITICAL (P0): Constitution MUST violations, hardcoded credentials, public databases, validation fails
- HIGH (P1): Constitution SHOULD violations, unencrypted data, overly permissive IAM, missing docs
- MEDIUM (P2): Code quality issues, formatting, incomplete test coverage
- LOW (P3): Style improvements, additional documentation, refactoring
Evidence Requirements Per Dimension
- D1: Quote module sources, identify raw resources, suggest private registry alternatives
- D2: File:line + CVE/CWE + severity + code fix
- D3: Format violations, missing docs, duplication with refactoring
- D4: Hardcoded values, missing validation, missing outputs
- D5: Validation errors, missing test files, pre-commit status
- D6: Plan deviations with plan.md refs, constitution violations with X.Y citations
Refinement Options (when score < 8.0)
- A (Auto-fix): Fix all P0 issues, re-evaluate (max 3 iterations)
- B (Interactive): Present each issue, show fix, wait for approval
- C (Manual): User fixes, agent provides guidance
- D (Detailed): Generate before/after examples for top 10 issues
History Tracking
Store evaluations in JSONL format at <FEATURE_DIR>/evaluations/:
{"timestamp":"ISO-8601","iteration":N,"overall_score":X.X,"dimension_scores":{...},"readiness":"status","critical_issues":N}