fix(qg): gate testing->deploy on machine-readable test verdict, not substring (ET-013) #24
Reference in New Issue
Block a user
Delete Branch "fix/tests-machine-verdict"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
check_tests_passed used naive substring (if PASS in content) over the whole 13-test-report.md body. On ET-013 the tester set verdict: BLOCKED / status: blocked (P1 AC-19 failed), but the body contained 23 passed / PASS / All checks passed -> gate returned True -> unfinished feature reached Done on prod.
Fix
Mirror check_reviewer_verdict (S-5) and check_deploy_status: read ONLY YAML frontmatter verdict:/status:. Positive tokens (PASS/PASSED/READY-TO-DEPLOY/GREEN/APPROVED) -> True; negative tokens (BLOCKED/FAILED/FAIL/REQUEST_CHANGES) authoritative -> False; missing/empty/no-frontmatter/bad-YAML -> False with reason; file missing -> not found. Never raises.
Positive token set derived from REAL enduro-trails reports ET-001..ET-014 (inconsistent verdict styles).
Validation
Do NOT self-merge — review by Stream.