Verifier negative-test harness
| id | verifier | expect | actual | match | reason | |----|----------|--------|--------|-------|--------| | neg_json_01 | json_repair | FAIL | FAIL | ✅ | no JSON object/array in output | | neg_json_02 | json_repair | FAIL | FAIL | ✅ | JSON syntax invalid: parse error: expected " | | neg_json_03 | json_repair | PASS | PASS | ✅ | strict JSON object | | neg_json_04 | json_repair | FAIL | FAIL | ✅ | JSON syntax invalid: parse error: bad value char: ] | | neg_json_05 | json_repair | PASS | PASS | ✅ | strict JSON array | | neg_triz_01 | ariz | PASS | PASS | ✅ | TC+PC both filled, ≥8 chars each | | neg_triz_02 | ariz | FAIL | FAIL | ✅ | technical_contradiction is empty or placeholder | | neg_triz_03 | ariz | FAIL | FAIL | ✅ | missing physical_contradiction key | | neg_triz_04 | ariz | FAIL | FAIL | ✅ | no JSON object | | neg_claim_01 | claim_extractor | PASS | PASS | ✅ | array with ≥1 claim items | | neg_claim_02 | claim_extractor | FAIL | FAIL | ✅ | no JSON array | | neg_claim_03 | claim_extractor | FAIL | FAIL | ✅ | fewer than 1 items | | neg_code_01 | code_skeleton | PASS | PASS | ✅ | def + return present (normalized) | | neg_code_02 | code_skeleton | PASS | PASS | ✅ | def + return present (normalized) | | neg_code_03 | code_skeleton | FAIL | FAIL | ✅ | no def Header | | neg_code_04 | code_skeleton | FAIL | FAIL | ✅ | no def Header | | neg_code_05 | code_skeleton | PASS | PASS | ✅ | def + return present (normalized) | | neg_code_recover_01 | code_skeleton | PASS | PASS | ✅ | def + return present (normalized) | | neg_code_recover_02 | code_skeleton | PASS | PASS | ✅ | def + return present (normalized) | | neg_code_recover_03 | code_skeleton | PASS | PASS | ✅ | def + return present (normalized) |
Match: 20/20