Skip to content
Business BenchA benchmark for AI agents on business work

Tasks·desk·Extraction

CRM contacts from the scanned expo business cards

business-cards-scanned·time budget 1800 s·source

The request

The task request supplied to the adapter, alongside the workspace below. Runtime instructions, authorized tools and skills also affect the system. Containerized runs withhold host-side references; local mode is not an isolation boundary.

Jess scanned the business cards from the expo. Can you turn them into contacts.csv for the CRM? Her note says how marketing wants it.

Workspace

  • expo_cards/Scan_2026-09-17_001.pdf
  • expo_cards/Scan_2026-09-17_002.pdf
  • expo_cards/Scan_2026-09-17_003.pdf
  • expo_cards/Scan_2026-09-17_004.pdf
  • expo_cards/Scan_2026-09-17_005.pdf
  • expo_cards/Scan_2026-09-17_006.pdf
  • expo_cards/Scan_2026-09-17_007.pdf
  • expo_cards/Scan_2026-09-17_008.pdf
  • expo_cards/Scan_2026-09-17_009.pdf
  • expo_cards/Scan_2026-09-17_010.pdf
  • note_from_jess.txt

Expected deliverables

  • contacts.csv

Recorded acceptance checks

The table uses check names and outcomes from the frozen campaign ledger. Acceptance requires all required predicates to pass; a predicate may itself contain a tolerance or coverage threshold. Its scope is part of the measurement contract.

Recorded checkTypeRequiredFailed / observed
requested columnscsv_columnsyes0 / 6
one row per contactcsv_set_equalyes0 / 6
row countcsv_row_countyes0 / 6
namescsv_values_matchyes0 / 6
titles and companiescsv_values_matchyes0 / 6
office phonescsv_values_matchyes0 / 6
mobile phonescsv_values_matchyes1 / 6
countriescsv_values_matchyes0 / 6
Current task declaration (8 checks)

From task.yaml. Original runner grading and frozen retrospective scoring are separate. Read the frozen source for the rules behind the reported results.

  • requested columns — csv_columns, required
  • one row per contact — csv_set_equal, required
  • row count — csv_row_count, required
  • names — csv_values_match, required
  • titles and companies — csv_values_match, required
  • office phones — csv_values_match, required
  • mobile phones — csv_values_match, required
  • countries — csv_values_match, required

Recorded results, desk release

pass pass, frozen scorer only fail timed out
SystemRepetitionsFrozen / 3Original / 3Median minutesMean model estimate (USD)
Proto / DeepSeek V4.1 Flash222.90.0295
Codex / GPT-5.6 sol331.50.2993

These are repeated executions on the released fixture, not independent new business cases. Cost is captured model usage priced under the recorded assumptions, excluding infrastructure and human review. Per-attempt check verdicts, raw and frozen verdicts, usage, receipt and artifact hashes for this task are in results/latest/attempts.jsonl under "task": "business-cards-scanned".

Recorded results, desk comparison, 28 September 2026

SystemRepetitionsFrozen / 3Original / 3Median minutes
Proto / GPT-6 sol331.8
Codex / GPT-6 sol331.4
Proto / DeepSeek V4.1 Flash332.5

A separate campaign under the same frozen scorer, not pooled with the release. Conditions and data.