pet-wellness-drop-phone
Grading criteriawhat this conversation was scored against
DB end-state
{
"customers": {
"changed": [
{
"pk": {
"cust_id": "CUST-loyalty-oldgrowth"
},
"fields": {
"phone": [
null,
"616-555-0148"
]
}
}
]
},
"policies": {
"changed": [
{
"pk": {
"policy_id": "POL-loyalty-oldgrowth-p_pet"
},
"fields": {
"base_premium_cents": [
68170,
56170
],
"final_premium_cents": [
56117,
45834
],
"premium_breakdown": [
"*",
"*"
]
},
"may_change": {
"rating_as_of": [
"*",
"*"
]
}
}
]
},
"policy_coverages": {
"removed": [
{
"pk": {
"policy_id": "POL-loyalty-oldgrowth-p_pet",
"coverage_id": "PET:WELLNESS"
},
"row": {
"policy_id": "POL-loyalty-oldgrowth-p_pet",
"coverage_id": "PET:WELLNESS",
"value": "true",
"premium_contribution_cents": 12000
}
}
]
}
}Judge rubric
The rep completed BOTH requests on this call: (1) removed the wellness rider from the PET policy and repriced it, telling him a concrete outcome — the $120/yr list price, the true savings of about $102.83/yr, or the new total of about $458.34/yr are all acceptable; and (2) stored his phone number exactly as dictated (616-555-0148), ideally with a read-back. The auto policy and everything else stay untouched. Completing only one of the two and ending the call is a fail. Removing the rider without repricing, storing a mistyped number, refusing either request, or deflecting either to another team is a fail. Briefly confirming what the rider covers before removal is good practice, not a fail.
Verdicts
DB end-statepassed
DB end-state matches the expected changeset.
Judge rubricpassed
judge: The rep removed the wellness rider and gave concrete repricing ($561.17 to $458.34, ~$102.83 savings), and stored the phone number exactly as dictated (616-555-0148), though without an explicit read-back confirmation.
Conversation
Hi, thanks for contacting PEICO — this is the service desk. How can I help you today?
Hey, thanks for picking up. I need to make a couple of changes to my accounts today. First, I'd like to remove the wellness rider from Biscuit's pet policy — I've done the math and it's costing me more than the routine vet visits would out of pocket. And I also need to add my cell phone number to my account. Can you help with both of those?
Happy to help with both of those! First, I need to verify who I'm speaking with. Could you give me your full name, plus one or two identifying details on file — like your date of birth, email, phone number, or your customer/policy ID?
Sure. I'm Harold Nyberg. My account number is EVG7782M3, and my email on file is harold.nyberg@example.com.
⚙ query_db(SELECT cust_id, legacy_acct, first_name, last_name, dob, email, phone, status…)
{
"sql": "SELECT cust_id, legacy_acct, first_name, last_name, dob, email, phone, status FROM customers WHERE legacy_acct = 'EVG7782M3'"
}{
"rows": [
{
"cust_id": "CUST-loyalty-oldgrowth",
"legacy_acct": "EVG7782M3",
"first_name": "Harold",
"last_name": "Nyberg",
"dob": "1962-04-27",
"email": "harold.nyberg@example.com",
"phone": null,
"status": "CUSTOMER"
}
],
"row_count": 1,
"truncated": false
}⚙ query_db(SELECT p.policy_id, p.line, p.tier_id, p.status, p.final_premium_cents, pe.na…)
{
"sql": "SELECT p.policy_id, p.line, p.tier_id, p.status, p.final_premium_cents, pe.name, pe.species\nFROM policies p\nJOIN policy_objects po ON po.policy_id = p.policy_id AND po.object_type='pet'\nJOIN pets pe ON pe.pet_id = po.object_id\nWHERE p.cust_id = 'CUST-loyalty-oldgrowth'"
}{
"rows": [
{
"policy_id": "POL-loyalty-oldgrowth-p_pet",
"line": "PET",
"tier_id": "PET:EVERGREEN",
"status": "ACTIVE",
"final_premium_cents": 56117,
"name": "Biscuit",
"species": "DOG"
}
],
"row_count": 1,
"truncated": false
}⚙ query_db(SELECT pc.coverage_id, c.code, c.label, pc.value, pc.premium_contribution_cen…)
{
"sql": "SELECT pc.coverage_id, c.code, c.label, pc.value, pc.premium_contribution_cents\nFROM policy_coverages pc JOIN coverages c ON c.coverage_id = pc.coverage_id\nWHERE pc.policy_id = 'POL-loyalty-oldgrowth-p_pet'"
}{
"rows": [
{
"coverage_id": "PET:ANNUAL_MAX",
"code": "ANNUAL_MAX",
"label": "Annual Benefit Limit",
"value": "2000000",
"premium_contribution_cents": null
},
{
"coverage_id": "PET:DEDUCT",
"code": "DEDUCT",
"label": "Annual Deductible",
"value": "10000",
"premium_contribution_cents": null
},
{
"coverage_id": "PET:DENTAL",
"code": "DENTAL",
"label": "Dental Illness",
"value": "true",
"premium_contribution_cents": 6000
},
{
"coverage_id": "PET:EXAM_FEE",
"code": "EXAM_FEE",
"label": "Exam Fees",
"value": "true",
"premium_contribution_cents": 2500
},
{
"coverage_id": "PET:REIMB_PCT",
"code": "REIMB_PCT",
"label": "Reimbursement Percentage",
"value": "0.9",
"premium_contribution_cents": null
},
{
"coverage_id": "PET:WELLNESS",
"code": "WELLNESS",
"label": "Wellness/Routine Care",
"value": "true",
"premium_contribution_cents": 12000
}
],
"row_count": 6,
"truncated": false
}⚙ query_db(SELECT * FROM eligibility_rules WHERE line='PET' OR coverage_id LIKE 'PET:%' …)
{
"sql": "SELECT * FROM eligibility_rules WHERE line='PET' OR coverage_id LIKE 'PET:%' OR tier_id LIKE 'PET:%'"
}{
"rows": [],
"row_count": 0,
"truncated": false
}⚙ query_db(SELECT * FROM tier_coverage_defaults WHERE tier_id='PET:EVERGREEN')
{
"sql": "SELECT * FROM tier_coverage_defaults WHERE tier_id='PET:EVERGREEN'"
}{
"rows": [
{
"tier_id": "PET:EVERGREEN",
"coverage_id": "PET:ANNUAL_MAX",
"included": 1,
"default_value": "2000000",
"editable": 1
},
{
"tier_id": "PET:EVERGREEN",
"coverage_id": "PET:DEDUCT",
"included": 1,
"default_value": "10000",
"editable": 1
},
{
"tier_id": "PET:EVERGREEN",
"coverage_id": "PET:DENTAL",
"included": 1,
"default_value": "true",
"editable": 1
},
{
"tier_id": "PET:EVERGREEN",
"coverage_id": "PET:EXAM_FEE",
"included": 1,
"default_value": "true",
"editable": 1
},
{
"tier_id": "PET:EVERGREEN",
"coverage_id": "PET:REIMB_PCT",
"included": 1,
"default_value": "0.9",
"editable": 1
},
{
"tier_id": "PET:EVERGREEN",
"coverage_id": "PET:WELLNESS",
"included": 1,
"default_value": "true",
"editable": 1
}
],
"row_count": 6,
"truncated": false
}⚙ search_kb(pet wellness rider remove routine care)
{
"query": "pet wellness rider remove routine care"
}{
"results": [
{
"doc_id": "KB-PROMO-PETLOVE",
"title": "PETLOVE terms",
"category": "PROMO",
"applies_to": "{\"lines\": [\"PET\"]}",
"snippet": "20% off pet policies during October 2025 adoption month. Cap $60."
},
{
"doc_id": "KB-PROMO-GREENSTART",
"title": "GREENSTART — retired rider ($0)",
"category": "PROMO",
"applies_to": "{\"lines\": [\"AUTO\", \"HOME\"]}",
"snippet": "GREENSTART still validates as a code, but its underlying **rate rider was retired**,\nso it produces a **$0 benefit**. Do not promise customers a discount from it.\n"
}
]
}⚙ update_coverages(POL-loyalty-oldgrowth-p_pet, ["WELLNESS"])
{
"policy_id": "POL-loyalty-oldgrowth-p_pet",
"remove": [
"WELLNESS"
]
}{
"ok": true,
"changesets": [
{
"policy_coverages": {
"removed": [
{
"pk": {
"policy_id": "POL-loyalty-oldgrowth-p_pet",
"coverage_id": "PET:WELLNESS"
},
"row": {
"policy_id": "POL-loyalty-oldgrowth-p_pet",
"coverage_id": "PET:WELLNESS",
"value": "true",
"premium_contribution_cents": 12000
}
}
]
}
}
],
"note": "stored premium is now stale — call reprice_policy to recompute"
}⚙ reprice_policy(POL-loyalty-oldgrowth-p_pet)
{
"policy_id": "POL-loyalty-oldgrowth-p_pet"
}{
"ok": true,
"as_of": "2025-01-20",
"base_premium_cents": 56170,
"final_premium_cents": 45834,
"breakdown": [
{
"step": "BASE",
"code": "base",
"detail": "base_rate $240",
"factor": null,
"amount_cents": null,
"running_cents": 24000
},
{
"step": "BASE",
"code": "tier:EVERGREEN",
"detail": "tier factor ×1.45",
"factor": 1.45,
"amount_cents": null,
"running_cents": 34800
},
{
"step": "BASE",
"code": "region:R-MW",
"detail": "region factor ×1.0",
"factor": 1,
"amount_cents": null,
"running_cents": 34800
},
{
"step": "RISK",
"code": "factor:species",
"detail": "species=DOG ×1.1",
"factor": 1.1,
"amount_cents": null,
"running_cents": 38280
},
{
"step": "RISK",
"code": "factor:pet_age",
"detail": "pet_age=5 ×1.0",
"factor": 1,
"amount_cents": null,
"running_cents": 38280
},
{
"step": "RISK",
"code": "factor:reimburse_pct",
"detail": "reimburse_pct=0.9 ×1.18",
"factor": 1.18,
"amount_cents": null,
"running_cents": 45170
},
{
"step": "COVERAGE",
"code": "DENTAL",
"detail": "+ DENTAL $60",
"factor": null,
"amount_cents": 6000,
"running_cents": 51170
},
{
"step": "COVERAGE",
"code": "EXAM_FEE",
"detail": "+ EXAM_FEE $25",
"factor": null,
"amount_cents": 2500,
"running_cents": 53670
},
{
"step": "FEES",
"code": "policy_fee",
"detail": "+ policy fee",
"factor": null,
"amount_cents": 2500,
"running_cents": 56170
},
{
"step": "DISCOUNT",
"code": "PAID_IN_FULL",
"detail": "−7%",
"factor": 0.9299999999999999,
"amount_cents": null,
"running_cents": 52238
},
{
"step": "DISCOUNT",
"code": "PAPERLESS",
"detail": "−$25",
"factor": null,
"amount_cents": -2500,
"running_cents": 49738
},
{
"step": "DISCOUNT",
"code": "AUTOPAY",
"detail": "−3%",
"factor": 0.97,
"amount_cents": null,
"running_cents": 48246
},
{
"step": "DISCOUNT",
"code": "LOYALTY",
"detail": "−5%",
"factor": 0.95,
"amount_cents": null,
"running_cents": 45834
}
],
"changeset": {
"policies": {
"changed": [
{
"pk": {
"policy_id": "POL-loyalty-oldgrowth-p_pet"
},
"fields": {
"base_premium_cents": [
68170,
56170
],
"final_premium_cents": [
56117,
45834
],
"premium_breakdown": [
"[{\"step\": \"BASE\", \"code\": \"base\", \"detail\": \"base_rate $240\", \"factor\": null, \"amount_cents\": null, \"running_cents\": 24000}, {\"step\": \"BASE\", \"code\": \"tier:EVERGREEN\", \"detail\": \"tier factor \\u00d71.45\", \"factor\": 1.45, \"amount_cents\": null, \"running_cents\": 34800}, {\"step\": \"BASE\", \"code\": \"region:R-MW\", \"detail\": \"region factor \\u00d71.0\", \"factor\": 1.0, \"amount_cents\": null, \"running_cents\": 34800}, {\"step\": \"RISK\", \"code\": \"factor:species\", \"detail\": \"species=DOG \\u00d71.1\", \"factor\": 1.1, \"amount_cents\": null, \"running_cents\": 38280}, {\"step\": \"RISK\", \"code\": \"factor:pet_age\", \"detail\": \"pet_age=5 \\u00d71.0\", \"factor\": 1.0, \"amount_cents\": null, \"running_cents\": 38280}, {\"step\": \"RISK\", \"code\": \"factor:reimburse_pct\", \"detail\": \"reimburse_pct=0.9 \\u00d71.18\", \"factor\": 1.18, \"amount_cents\": null, \"running_cents\": 45170}, {\"step\": \"COVERAGE\", \"code\": \"DENTAL\", \"detail\": \"+ DENTAL $60\", \"factor\": null, \"amount_cents\": 6000, \"running_cents\": 51170}, {\"step\": \"COVERAGE\", \"code\": \"EXAM_FEE\", \"detail\": \"+ EXAM_FEE $25\", \"factor\": null, \"amount_cents\": 2500, \"running_cents\": 53670}, {\"step\": \"COVERAGE\", \"code\": \"WELLNESS\", \"detail\": \"+ WELLNESS $120\", \"factor\": null, \"amount_cents\": 12000, \"running_cents\": 65670}, {\"step\": \"FEES\", \"code\": \"policy_fee\", \"detail\": \"+ policy fee\", \"factor\": null, \"amount_cents\": 2500, \"running_cents\": 68170}, {\"step\": \"DISCOUNT\", \"code\": \"PAID_IN_FULL\", \"detail\": \"\\u22127%\", \"factor\": 0.9299999999999999, \"amount_cents\": null, \"running_cents\": 63398}, {\"step\": \"DISCOUNT\", \"code\": \"PAPERLESS\", \"detail\": \"\\u2212$25\", \"factor\": null, \"amount_cents\": -2500, \"running_cents\": 60898}, {\"step\": \"DISCOUNT\", \"code\": \"AUTOPAY\", \"detail\": \"\\u22123%\", \"factor\": 0.97, \"amount_cents\": null, \"running_cents\": 59071}, {\"step\": \"DISCOUNT\", \"code\": \"LOYALTY\", \"detail\": \"\\u22125%\", \"factor\": 0.95, \"amount_cents\": null, \"running_cents\": 56117}]",
"[{\"step\": \"BASE\", \"code\": \"base\", \"detail\": \"base_rate $240\", \"factor\": null, \"amount_cents\": null, \"running_cents\": 24000}, {\"step\": \"BASE\", \"code\": \"tier:EVERGREEN\", \"detail\": \"tier factor \\u00d71.45\", \"factor\": 1.45, \"amount_cents\": null, \"running_cents\": 34800}, {\"step\": \"BASE\", \"code\": \"region:R-MW\", \"detail\": \"region factor \\u00d71.0\", \"factor\": 1.0, \"amount_cents\": null, \"running_cents\": 34800}, {\"step\": \"RISK\", \"code\": \"factor:species\", \"detail\": \"species=DOG \\u00d71.1\", \"factor\": 1.1, \"amount_cents\": null, \"running_cents\": 38280}, {\"step\": \"RISK\", \"code\": \"factor:pet_age\", \"detail\": \"pet_age=5 \\u00d71.0\", \"factor\": 1.0, \"amount_cents\": null, \"running_cents\": 38280}, {\"step\": \"RISK\", \"code\": \"factor:reimburse_pct\", \"detail\": \"reimburse_pct=0.9 \\u00d71.18\", \"factor\": 1.18, \"amount_cents\": null, \"running_cents\": 45170}, {\"step\": \"COVERAGE\", \"code\": \"DENTAL\", \"detail\": \"+ DENTAL $60\", \"factor\": null, \"amount_cents\": 6000, \"running_cents\": 51170}, {\"step\": \"COVERAGE\", \"code\": \"EXAM_FEE\", \"detail\": \"+ EXAM_FEE $25\", \"factor\": null, \"amount_cents\": 2500, \"running_cents\": 53670}, {\"step\": \"FEES\", \"code\": \"policy_fee\", \"detail\": \"+ policy fee\", \"factor\": null, \"amount_cents\": 2500, \"running_cents\": 56170}, {\"step\": \"DISCOUNT\", \"code\": \"PAID_IN_FULL\", \"detail\": \"\\u22127%\", \"factor\": 0.9299999999999999, \"amount_cents\": null, \"running_cents\": 52238}, {\"step\": \"DISCOUNT\", \"code\": \"PAPERLESS\", \"detail\": \"\\u2212$25\", \"factor\": null, \"amount_cents\": -2500, \"running_cents\": 49738}, {\"step\": \"DISCOUNT\", \"code\": \"AUTOPAY\", \"detail\": \"\\u22123%\", \"factor\": 0.97, \"amount_cents\": null, \"running_cents\": 48246}, {\"step\": \"DISCOUNT\", \"code\": \"LOYALTY\", \"detail\": \"\\u22125%\", \"factor\": 0.95, \"amount_cents\": null, \"running_cents\": 45834}]"
]
}
}
]
}
}
}Done! Here's the first change:
Wellness rider removed from Biscuit's policy ✅
- Old annual premium: $561.17
- New annual premium: $458.34 (a savings of about $102.83/year after discounts)
Biscuit still has the accident/illness core, dental illness, exam fees, $20,000 annual limit, $100 deductible, and 90% reimbursement.
Now for the second item — what's the cell phone number you'd like on your account? (There's currently no phone on file.)
Perfect — thanks for pulling that. I'm glad to see the savings. Go ahead and remove it. My cell number is six one six, five five five, zero one four eight.
⚙ update_contact(CUST-loyalty-oldgrowth, 616-555-0148)
{
"cust_id": "CUST-loyalty-oldgrowth",
"phone": "616-555-0148"
}{
"ok": true,
"rows_affected": 1,
"changeset": {
"customers": {
"changed": [
{
"pk": {
"cust_id": "CUST-loyalty-oldgrowth"
},
"fields": {
"phone": [
null,
"616-555-0148"
]
}
}
]
}
}
}Both changes are complete, Harold:
- Wellness rider — already removed from Biscuit's policy; new premium is $458.34/year.
- Cell phone added — your account now shows 616-555-0148.
Is there anything else I can help you with today?
No, that's all I needed. Thanks for getting both of those done today — I appreciate it. Have a good one!
⚙ end_conversation()
{}{
"ok": true,
"note": "Deliver your closing message now."
}Thanks again for reaching out to PEICO, Harold — take care!