Rebuild two years of a repayment mortgage statement with a rate change, overpayments and a bounced payment
Exact prompt
# Rebuild a mortgage statement Inputs: `loan.json` (opening balance on 2024-11-01, starting annual rate, contractual monthly payment), `rate-notices.csv` (rate changes) and `payments.csv` (everything that hit the mortgage account, including returned direct debits). Rebuild the 24 monthly statements from November 2024 to October 2026. - Each month: interest = opening balance x annual rate / 12, rounded to the penny half-up, and added to the balance. Then every payment for that month that was not returned comes off the balance. - A rate notice applies from the month in its `effective_month` (that month's interest already uses the new rate). - A payment whose `status` is `returned` never reached the lender; ignore it. Overpayments are payments like any other. - Keep the balance in exact pence; there is no other rounding. Write `out/statement.json`: `{"closing_balance": <balance after October 2026>, "total_interest": <sum of the 24 monthly interest charges>, "interest_by_year": {"2024": <...>, "2025": <...>, "2026": <...>}, "total_paid": <sum of payments counted>, "interest_after_rate_change": <interest charged from the first rate-change month onwards>}`. ## How this run works - Work on your own: nobody will answer questions in this task, and writing to `ask/` counts against the run. - Write only under `out/`. Create `out/` if it is missing. Inputs are synthetic; don't fetch anything from the network. - Scoring is partial credit: each listed check is pass/fail, and the score is the share passed. Numbers are compared to within 0.005 unless the task says otherwise.
Rebuild 24 months of a repayment mortgage from the loan terms, a payment log and the lender's rate notices. Interest is charged monthly on the opening balance and rounded to the penny each month, a rate change applies from its stated month, overpayments come straight off the balance, and a returned direct debit has to be ignored. Rounding only at the end, missing the rate change or counting the bounced payment each changes the closing balance. Original benchmark task written for usecaserank.com (not based on a specific public post). Headless, offline run on a reproducible fixture. Each run's notes say how its cost was measured (estimates are marked).
Success criteria: closing_balance monthly_penny_rounding rate_change returned_payment
Best model for this task so far: Claude Haiku 5.5 (effort default (no --effort flag) · thinking on) (success, $0.0040, 13s).
All runs (3)
100% pass rate across 3 eligible runs: 3 pass, 0 partial, 0 fail. Partial and failed runs are listed below with everything else.ⓘ
| Model | Cost | Time | Step-insⓘ | Autonomy | Outcome | Trustⓘ | Date | Compare |
|---|---|---|---|---|---|---|---|---|
| AClaude Opus 5.5default · thinking on | $0.11 | 24s | 0 | Fully autonomous | pass | Trust 80% | 2026-10-21 | |
| AClaude Haiku 5.5default · thinking on | $0.0040 | 13s | 0 | Fully autonomous | pass | Trust 80% | 2026-10-21 | |
| AClaude Sonnet 5.5default · thinking off | $0.05 | 13s | 0 | Fully autonomous | pass | Trust 80% | 2026-10-21 |
Embed this result
A live badge for this use case. It links back here and updates as new runs are published.
Get new runs and ranking changes weekly
Which models got better or cheaper on real tasks like this one.