BABA-Bench: Evaluating Long-Horizon Patient-Advocacy Agents
Organizations: Georgia Institute of Technology · Baba · Massachusetts Institute of Technology
Abstract
An LLM agent that helps a patient get care must do two things. It must reach the correct outcome, and it must follow the necessary procedure. For example, the agent must get the patient's permission before it shares the patient's records. We introduce BABA-Bench, a benchmark of 47 interactive worlds. We built each world from a de-identified, real patient advocacy case that expert advocates reviewed. In each world, the agent must find hidden information and coordinate insurers, clinics, suppliers, pharmacies, and community organizations. The engine checks each action at the time the agent does it. It checks if the agent has permission, if the agent has evidence for the action, and if the action is prohibited. We evaluated 14 frontier models with three runs on each world, for a total of 1,974 runs. Agents often reached the correct outcome by an invalid route. Of the 921 runs that reached all required outcomes, 254 (28%) did not follow the necessary procedure. Claude Opus 5 reached all required outcomes in 81.6% of its runs, but only 52.5% of its runs passed all checks. When we gave two models a verified route, their pass rates increased from 29.8% to 91.5% and from 44.0% to 97.2%. For these models, the main problem is to find a route, not to execute it.
Figures & tables
| Tool | Function |
|---|---|
| memory | Update the plan of the agent, or get earlier exchanges. It cannot contact a party or change the world state. |
| call | Open or close one live phone call. |
| ask | Ask one party for information. It does not change the world state. |
| act | Ask one party to do one operation, or deliver one operation. It can change the world state. |
| form | Examine, fill, review, and submit one form. |
| read_document | Read one document that the agent has, or one playbook. |
| Accuracy (%) | Efficiency | |||||||||
| Model | Reasoning | Outcome | Pass@1 | 95% CI | Pass 3 | Light | Std. | Hard | Steps/world | $/world |
| Closed-source models | ||||||||||
| Claude Opus 5 [ 4 ] | Max | 81.6 | 52.5 | 41.8–63.1 | 27.7 | 74.1 | 75.6 | 29.0 | 70.7 | 5.46 |
| Grok 4.6 [ 36 ] | High | 66.0 | 52.5 | 39.7–65.2 | 38.3 | 92.6 | 64.4 | 29.0 | 90.0 | 2.25 |
| GPT-5.6–Sol [ 30 ] | Max | 60.3 | 49.6 | 37.6–61.7 | 31.9 | 81.5 | 66.7 | 26.1 | 78.0 | 3.05 |
| GPT-5.6–Terra [ 30 ] | Max | 53.9 | 46.1 | 33.3–58.9 | 36.2 | 77.8 | 57.8 | 26.1 | 69.1 | 1.63 |
| Model | Configuration | Mean (%) | (pp) |
|---|---|---|---|
| Gemini 3.7 Flash | Full | 29.8 | — |
| low reasoning | 10.6 | ||
| w/ verified route | 91.5 | ||
| w/o friction | 22.0 | ||
| outcome-complete | 38.3 | — | |
| Muse Spark 1.2 | Full | 44.0 | — |
Appendix figures & tables21 assets
Supplementary material from the paper’s appendix.
Appendix
| Benchmark | Healthcare | Real-case grounded | Advocacy workflows | Long horizon | Complex friction | Open-ended tool use | Evidence-backed operation checks |
|---|---|---|---|---|---|---|---|
| Healthcare benchmarks | |||||||
| MedQA [ 18 ] | |||||||
| HealthBench [ 5 ] | |||||||
| MediQ [ 23 ] | |||||||
| AgentClinic [ 33 ] | |||||||
| SDBench [ 29 ] | |||||||
| World | Band | Oracle | |||||
|---|---|---|---|---|---|---|---|
| 004275af | light | 22 | 5 | 1 | 1 | 1 | 8 |
| 0177fac5 | hard | 64 | 11 | 4 | 6 | 3 | 27 |
| 044dbb87 | light | 12 | 3 | 0 | 1 | 1 | 13 |
| 0614efce | standard | 33 | 5 | 2 | 3 | 4 | 11 |
| 072bac71 | hard | 58 | 11 | 3 | 5 | 3 | 45 |
| 08397c4a | light | 20 | 3 | 2 | 1 | 1 | 15 |
| Tool | Function | Public action |
|---|---|---|
| memory | Update a durable model-authored plan, or retrieve earlier public exchanges. | No |
| call | Open or close one live phone call. | Yes |
| ask | Request information from one addressed party. | Yes |
| act | Request or deliver one state-changing action. | Yes |
| form | Inspect, fill, review, and submit one structured form. | Yes |
| read_document | Read one held case document or one selected playbook. | Yes |
| Identifier | Title | Purpose |
|---|---|---|
| playbook_close_the_loop | Close the Loop — Confirm Before Done | Never report a task complete on a promise; confirm the outcome with the party that finalizes it. |
| playbook_coverage_eligibility_check | Coverage and Eligibility Check | Verify a provider or service is covered and in-network before you route the patient to it. |
| playbook_establish_authority_and_consent | Establish Authority and Consent | Separate public research from patient-specific advocacy, then obtain the scoped consent and authority each protected action requires. |
| playbook_identity_and_intake | Identity Verification and Intake | Capture the patient’s identifiers and the bill-of-materials once, then reuse them with every party. |
| playbook_sensitive_info_handling | Handling Sensitive Information | Share only what the task needs, through a verified route, and use the least sensitive identifier the recipient accepts. |
| playbook_appointment_provider_coordination | Establishing Care and Provider Coordination | How to get a patient established with the right provider — matching the provider to the patient’s access needs and coverage, then activating care. |
| Setting | Value |
|---|---|
| Worlds | 47 |
| Independent seeds | 3 per evaluated model |
| Public-action limit | 150 |
| Maximum model responses | 300 |
| Maximum output tokens | 16,384 per model response |
| Recent exact exchanges | 8 |
| Paper name | Runtime model ID | Provider | API | Reasoning |
|---|---|---|---|---|
| Claude Opus 5 | claude-opus-5 | anthropic | messages | max |
| Grok 4.6 | grok-4.6 | xai | responses | high |
| GPT-5.6 Sol | gpt-5.6-sol | openai | responses | max |
| DeepSeek V4 Pro | deepseek-v4-pro | deepseek | fireworks | chat completions | max |
| GPT-5.6 Terra | gpt-5.6-terra | openai | responses | max |
| Muse Spark 1.2 | muse-spark-1.2 | meta | chat completions | high |
| Model | Runs | Current cost/world | Current 141-run total |
|---|---|---|---|
| Claude Opus 5 | 141 | $5.46 | $770.33 |
| GPT-5.6 Sol | 141 | $3.05 | $430.01 |
| Kimi K3 | 141 | $2.82 | $397.57 |
| Grok 4.6 | 141 | $2.25 | $317.53 |
| Gemini 3.1 Pro Preview | 141 | $1.65 | $233.10 |
| GPT-5.6 Terra | 141 | $1.63 | $229.46 |
| Model | Outcome completion | Any seed |
|---|---|---|
| Claude Opus 5 | 115/141 (81.6%) | 35/47 (74.5%) |
| Grok 4.6 | 93/141 (66.0%) | 30/47 (63.8%) |
| GPT-5.6 Sol | 85/141 (60.3%) | 30/47 (63.8%) |
| DeepSeek V4 Pro | 88/141 (62.4%) | 30/47 (63.8%) |
| GPT-5.6 Terra | 76/141 (53.9%) | 28/47 (59.6%) |
| Muse Spark 1.2 | 74/141 (52.5%) | 28/47 (59.6%) |
| Model | Light | Standard | Hard |
|---|---|---|---|
| Claude Opus 5 | 23/27 (85.2%) | 43/45 (95.6%) | 49/69 (71.0%) |
| Grok 4.6 | 27/27 (100.0%) | 31/45 (68.9%) | 35/69 (50.7%) |
| GPT-5.6 Sol | 22/27 (81.5%) | 33/45 (73.3%) | 30/69 (43.5%) |
| DeepSeek V4 Pro | 20/27 (74.1%) | 33/45 (73.3%) | 35/69 (50.7%) |
| GPT-5.6 Terra | 21/27 (77.8%) | 27/45 (60.0%) | 28/69 (40.6%) |
| Muse Spark 1.2 | 22/27 (81.5%) | 32/45 (71.1%) | 20/69 (29.0%) |
| Model | Seed | Strict pass | Outcome complete | Steps | Cap hits |
|---|---|---|---|---|---|
| Claude Opus 5 | 1 | 24/47 (51.1%) | 39/47 (83.0%) | 70.2 | 3 |
| Claude Opus 5 | 2 | 26/47 (55.3%) | 37/47 (78.7%) | 71.9 | 2 |
| Claude Opus 5 | 3 | 24/47 (51.1%) | 39/47 (83.0%) | 70.1 | 3 |
| Grok 4.6 | 1 | 27/47 (57.4%) | 31/47 (66.0%) | 84.6 | 7 |
| Grok 4.6 | 2 | 23/47 (48.9%) | 31/47 (66.0%) | 96.6 | 8 |
| Grok 4.6 | 3 | 24/47 (51.1%) | 31/47 (66.0%) | 88.8 | 8 |
| Model | S:0 | S:1 | S:2 | S:3 | O:0 | O:1 | O:2 | O:3 |
|---|---|---|---|---|---|---|---|---|
| Claude Opus 5 | 12 | 9 | 13 | 13 | 3 | 5 | 7 | 32 |
| Grok 4.6 | 17 | 4 | 8 | 18 | 11 | 4 | 7 | 25 |
| GPT-5.6 Sol | 17 | 5 | 10 | 15 | 9 | 8 | 13 | 17 |
| DeepSeek V4 Pro | 17 | 5 | 11 | 14 | 11 | 6 | 8 | 22 |
| GPT-5.6 Terra | 19 | 8 | 3 | 17 | 13 | 10 | 6 | 18 |
| Muse Spark 1.2 | 19 | 9 | 4 | 15 | 16 | 8 | 3 | 20 |
| World | Band | Strict pass | Outcome complete |
|---|---|---|---|
| 004275af | light | 30/42 (71.4%) | 32/42 (76.2%) |
| 0177fac5 | hard | 0/42 (0.0%) | 11/42 (26.2%) |
| 044dbb87 | light | 18/42 (42.9%) | 37/42 (88.1%) |
| 0614efce | standard | 11/42 (26.2%) | 13/42 (31.0%) |
| 072bac71 | hard | 0/42 (0.0%) | 1/42 (2.4%) |
| 08397c4a | light | 33/42 (78.6%) | 33/42 (78.6%) |
| Configuration | Seed | Strict pass | Outcome complete |
|---|---|---|---|
| Gemini 3.7 Flash full | 1 | 16/47 (34.0%) | 20/47 (42.6%) |
| Gemini 3.7 Flash full | 2 | 14/47 (29.8%) | 18/47 (38.3%) |
| Gemini 3.7 Flash full | 3 | 12/47 (25.5%) | 16/47 (34.0%) |
| Gemini 3.7 Flash low reasoning | 1 | 3/47 (6.4%) | 8/47 (17.0%) |
| Gemini 3.7 Flash low reasoning | 2 | 6/47 (12.8%) | 13/47 (27.7%) |
| Gemini 3.7 Flash low reasoning | 3 | 6/47 (12.8%) | 15/47 (31.9%) |
| Terminal | Kind | Target | Group | Required |
|---|---|---|---|---|
| out_need_confirmed | Fact discovered | walker_need_confirmed | out_need_confirmed | Yes |
| out_prescriber_identified | Fact discovered | clinic_direct_number | out_prescriber_identified | Yes |
| out_prescription_on_file | Fact discovered | prescription_on_file | out_prescription_on_file | Yes |
| out_coverage_pathway | Fact discovered | replacement_coverage_pathway | out_coverage_pathway | Yes |
| out_in_network_supplier | Fact discovered | in_network_supplier | out_in_network_supplier | Yes |
| out_nonrepairable_letter | Document obtained | non_repairable_letter_document | out_nonrepairable_letter | Yes |
| Authority | Grantor | Recipient | Public scope | Grant action |
|---|---|---|---|---|
| consent_prescriber_office | patient | prescriber_office | consent to contact my prescriber | grant_prescriber_coordination_consent |
| consent_primary_payer | patient | primary_payer_member | consent to contact my payer about the walker | grant_payer_replacement_consent |
| consent_repair_vendor | patient | repair_vendor | consent to contact the repair vendor | grant_repair_vendor_consent |
| consent_parish_delivery | patient | parish_charity | consent to the parish delivery charity | grant_parish_delivery_consent |
| consent_loaner_charity | patient | loaner_charity | permission to contact the temporary-equipment loaner charity | grant_loaner_charity_consent |
| consent_loaner_charity_disclosure | patient | loaner_charity | permission to disclose minimum-necessary loaner-application information | grant_loaner_charity_disclosure_consent |
| Step | Privileged witness operation |
|---|---|
| 1 | Ask with patient by phone: obtain walker_need_confirmed. |
| 2 | Ask with patient by phone: obtain prescriber_clue. |
| 3 | Ask with public_provider_directory by portal: obtain hospital_operator_contact; transmit prescriber_clue. |
| 4 | Ask with patient by phone: obtain repair_vendor_contact. |
| 5 | Ask with hospital_operator by phone: obtain clinic_direct_number; transmit prescriber_clue. |
| 6 | Ask with resource_helpline by phone: obtain parish_charity_contact. |
Long-Horizon LLM Agents
Long-horizon large language model agents plan, use tools, and preserve task state across extended, multi-step interactions.
See all 475 papers