promptdojo_

The numbers pass — every claimed metric traced to the export — step 3 of 7

Write verify_numbers(claims, export) — the pass that runs on every AI-drafted report before it leaves the team.

Each claim is a dict: {"label", "metric", "value"}. For each claim, in order, print one line:

  • if claim["value"] == export[claim["metric"]]: f"{c['label']:<13} {c['value']:>6} TRACED"
  • otherwise: f"{c['label']:<13} {c['value']:>6} INVENTED (export: {export[c['metric']]})"

Return the count of traced claims. The harness prints the summary line. Expected output:

emails sent    18200  TRACED
opens           4914  TRACED
clicks           655  INVENTED (export: 618)
unsubscribes      43  TRACED
3/4 traced — report is NOT approval-ready

full-screen editor opens — close anytime to keep reading.