Current (the one you don't like)

stripe.openapi.yaml
1POST /v1/charges
2 amount: integer
3 currency: string
4 source: string missing
payments.ts
12// sr:conforms stripe#/v1/charges
13await http.post("/v1/charges", {
14 amount, currency
15})

— Track 1: claim vs. artifact —

T1a — citation resolves to a real source line (✓) or points at nothing (✗)

"per the Q2 report, churn fell 12%"report.md:14
"all tests passed"no match

T1b — claimed 'done' next to what the artifact actually shows (the gap)

claimed
task #204 · done
actually
ci.log — 2 failing
not in the diff
the claim doesn't match the artifact

— Track 2: API-spec conformance (bigger, split) —

T2c — REFINED: we CALL an external API; our request checked field-by-field vs the vendor spec (amount/currency ✓, source drifted ✗)

stripe.openapi.yaml
POST /v1/charges
amount: integer
currency: string
source: string missing
payments.ts
// sr:conforms stripe#/v1/charges
await http.post("/v1/charges", {
  amount, currency
})

T2a — (earlier) OpenAPI spec ↔ impl linked by // sr:conforms, conforms ✓

openapi.yaml
POST /charge
  body:
    amount: integer
    currency: string
routes/charge.ts
// sr:conforms openapi.yaml#/charge
export function POST(req) {
  const { amount, currency } = req.body
}
implementation conforms to the spec

T2b — same, but the impl drifted from the spec ✗

openapi.yaml
POST /charge
    currency: stringrequired
routes/charge.ts
// sr:conforms openapi.yaml#/charge
  const { amount } = req.body
  // currency dropped
drifted — impl no longer matches the spec