mirror of
https://github.com/garrytan/gstack.git
synced 2026-11-02 15:04:37 +01:00
The diagram grammar grew through four waves of capture patches to accept
correct-but-different diagrams. The E2E prompt now asks for one closing JSON
line {"tested": [...], "untested": [...]}; coverageAuditVerdict passes the
outcome when processPayment is only in tested and refundPayment only in
untested (last summary wins; quoted or example summaries ignored). The legacy
grammar stays as a fallback, so every stored capture keeps its verdict
(all existing rows unchanged). Read evidence and capture success are still
required. Stored summaries: three known-good (which the old grader rejected)
pass; seven known-bad fail.
18 lines
1.6 KiB
JSON
18 lines
1.6 KiB
JSON
{
|
|
"_comment": "Final coverage-audit outputs graded on the closing JSON summary. known_good passes even though its diagram is outside the legacy legend grammar; known_bad must fail.",
|
|
"known_good": {
|
|
"unfamiliar-diagram-with-summary": "COVERAGE\nprocessPayment ★★ happy path covered (billing.test.ts:3)\nrefundPayment — no test at all\n\nSummary: 1 of 2 functions tested.\n{\"tested\": [\"processPayment\"], \"untested\": [\"refundPayment\"]}",
|
|
"fenced-json-summary": "src/billing.ts coverage\n processPayment -> covered by 'processes valid payment'\n refundPayment -> GAP\n\n```json\n{\"tested\": [\"processPayment (happy path)\"], \"untested\": [\"refundPayment\"]}\n```",
|
|
"corrected-summary": "{\"tested\": [\"refundPayment\"], \"untested\": [\"processPayment\"]}\nCorrection: I swapped them above.\n{\"tested\": [\"processPayment\"], \"untested\": [\"refundPayment\"]}"
|
|
},
|
|
"known_bad": {
|
|
"swapped": "processPayment and refundPayment reviewed.\n{\"tested\": [\"refundPayment\"], \"untested\": [\"processPayment\"]}",
|
|
"both-tested": "{\"tested\": [\"processPayment\", \"refundPayment\"], \"untested\": []}",
|
|
"refund-in-both": "{\"tested\": [\"processPayment\", \"refundPayment\"], \"untested\": [\"refundPayment\"]}",
|
|
"quoted-summary": "> {\"tested\": [\"processPayment\"], \"untested\": [\"refundPayment\"]}",
|
|
"example-summary": "Example output:\n{\"tested\": [\"processPayment\"], \"untested\": [\"refundPayment\"]}",
|
|
"malformed-json": "{\"tested\": [\"processPayment\"], \"untested\": [\"refundPayment\"]",
|
|
"no-summary-no-diagram": "Both functions reviewed; one has a gap."
|
|
}
|
|
}
|