This project turns a fictional shipment export into a report for an operations lead. The assistant can propose schema questions, label tickets, explain checked counts, draft prose, and interpret a chart. It cannot silently decide the carrier's status mapping, run a data correction, or assert causation from a visual trend. Deliver a reproducible packet: source revision, column contract, deduplication policy, calculation output, claim ledger, chart data, and a list of unresolved records. Keep raw customer identifiers out of the prompt bundle and report.
Project: verify a shipment performance report
Reconcile the cohort
The raw export has 4,823 events. Remove 100 exact duplicate shipment IDs and place conflicting duplicates in review rather than taking the last record. Of 4,723 unique shipments, 23 legacy records have unresolved status and are excluded from the stated rate. The 4,700 eligible shipments include 282 marked late. North contributes 80 late of 2,000, and south contributes 202 of 2,700. The overall rate is 6.00 percent, north is 4.00 percent, and south is about 7.48 percent. Keep this exclusion rule fixed across comparisons and normalize legacy local timestamps before determining lateness.
Review labels and narrative
Classify ticket TK-917 as both delivery delay and damage, with damage owning the replacement request. Treat TK-918 as a question about policy, not a confirmed late parcel. Draft an executive paragraph with the current rates and denominators, then compare each claim with the verified aggregate. Reject a sentence saying every region improved when prior-week regional cohorts are unavailable. The chart's y-axis begins at 3 percent and one legend entry is clipped, so obtain its source table before using exact values or naming the third series. Add a benign control with a complete table and a clear zero-based axis.
Raw=4,823; exact duplicates=100; unique=4,723.
Unknown status=23 excluded; eligible=4,700.
Late=282; overall=282/4,700=6.00%.
North=80/2,000=4.00%; south=202/2,700≈7.48%.
TK-917: delay + damage; TK-918: policy question only.
Report gate: checked counts, matched claims, visible chart scale.Performance and operating cost
Deduplication and counting over R events take O(R) expected time and O(U) space for U unique shipments. Sorting or reconciling conflicting corrections adds review work. For C held-out reporting cases and V prompt variants, comparison uses O(CV) model evaluations plus deterministic checks. Measure wrong denominators, false labels, unsupported causal claims, omitted contrary results, and source-table mismatches separately. A report that reads well but changes the cohort fails. Preserve the exact dataset revision and code output so another analyst can reproduce every published number.
Common Mistakes
- Do not use row count as a shipment count without a stable key.
- Do not call a policy question a confirmed delay.
- Do not claim an image supplies exact numbers when the source table is available.
Connected lessons
- Dataset intake prompts: define a column before analyzing it
- Classification prompts: write the label boundary first
- Aggregation prompts: pin the denominator and recompute the rate
- Report summaries: preserve contrary results and missing data
- Chart prompts: inspect axes, units, and missing series first
- SQL prompts: generate a query under database-enforced limits
- Evaluation sets: measure the failure cases that matter
- Python mutation testing: prove a suite rejects selected wrong implementations
- Prompt engineering for data workflows
