ny-sapling-floor-quote
Grading criteriawhat this conversation was scored against
DB end-state
The database must be left untouched: the correct outcome for this case is no writes at all.
Judge rubric
The rep determined that the Sapling auto tier is not sellable in New York — the state's minimum required liability limits exceed Sapling's — and therefore did NOT quote, offer, or begin signing the customer up for Sapling. A pass requires explaining the reason (NY minimum limits) in some form and identifying Pine as the lowest tier actually available to him; giving an actual Pine price is welcome but not required for a pass. Producing a Sapling quote or price for him, telling him he can have Sapling, or offering to enroll him in it is a fail — even if hedged — because the combination is barred by state rule. Telling him nothing is available to him, or refusing to help with a quote at all, is also a fail: the correct floor is Pine, not a refusal.
Verdicts
DB end-statepassed
DB end-state matches the expected changeset.
Judge rubricpassed
judge: The rep correctly refused to quote Sapling, explained the NY minimum liability limits rule, identified Pine as the lowest available tier, and provided a Pine price.
Conversation
Hi, thanks for contacting PEICO — this is the service desk. How can I help you today?
Hi, thanks for picking up. I'm looking to get a quote for auto insurance. I checked out your website and I'm interested in the Sapling plan for my 2015 Honda Fit. Can you help me with that?
⚙ search_kb(auto quote required facts sapling tier underwriting guide vehicle mileage gar…)
{
"query": "auto quote required facts sapling tier underwriting guide vehicle mileage garaging state driver incidents eligibility",
"limit": 5
}{
"results": [
{
"doc_id": "KB-NE-MIN-LIMITS",
"title": "NY/NJ minimum auto liability limits",
"category": "COMPLIANCE",
"applies_to": "{\"lines\": [\"AUTO\"], \"states\": [\"NY\", \"NJ\"]}",
"snippet": "New York and New Jersey mandate minimum BI/PD limits above the Sapling tier's\nlimits, so **Sapling auto is not sellable** in those states — quote Pine or higher.\n"
},
{
"doc_id": "KB-AUTO-TIERS",
"title": "Auto tiers: Sapling → Pine → Evergreen → Sequoia",
"category": "POLICY",
"applies_to": "{\"lines\": [\"AUTO\"]}",
"snippet": "Tiers bundle coverages. Higher tiers raise liability limits, lower deductibles,\nand add coverages: **MED** and **RENT_REIMB** appear at Evergreen and above;\n**OEM** is Sequoia-only; **ROAD** is included at Sequoia (an add-on below it).\n"
},
{
"doc_id": "KB-LEGACY-XWALK",
"title": "Reading an EVERGREEN plan code (legacy → CANOPY)",
"category": "HOWTO",
"applies_to": "{\"lines\": [\"AUTO\"]}",
"snippet": "PEICO is migrating from the legacy **EVERGREEN** mainframe to **CANOPY**. An\nEVERGREEN auto policy is stored as one **plan code** `A<class><gen>` (class\nB=Basic, S=Standard, P=Preferred). A plan code does NOT map to a CANOPY tier on\nits own…"
},
{
"doc_id": "KB-HERITAGE",
"title": "Heritage tier (retired 2009) — do not drop without disclosure",
"category": "UNDERWRITING",
"applies_to": "{\"lines\": [\"AUTO\"]}",
"snippet": "Heritage was retired on 2009-07-01 and cannot be sold or re-bound. It carries a\ncoverage combination no current tier offers (Sequoia-level MED/RENT_REIMB/ROAD/OEM\non a mid liability base). A customer who drops Heritage **loses that combinat…"
},
{
"doc_id": "KB-AUTO-GAP",
"title": "GAP coverage eligibility",
"category": "UNDERWRITING",
"applies_to": "{\"lines\": [\"AUTO\"]}",
"snippet": "Loan/Lease GAP is available only on **financed or leased** vehicles. It cannot be\nadded to a vehicle owned outright.\n"
}
]
}⚙ get_doc(KB-AUTO-TIERS)
{
"doc_id": "KB-AUTO-TIERS"
}{
"doc_id": "KB-AUTO-TIERS",
"title": "Auto tiers: Sapling → Pine → Evergreen → Sequoia",
"category": "POLICY",
"applies_to": "{\"lines\": [\"AUTO\"]}",
"body_md": "Tiers bundle coverages. Higher tiers raise liability limits, lower deductibles,\nand add coverages: **MED** and **RENT_REIMB** appear at Evergreen and above;\n**OEM** is Sequoia-only; **ROAD** is included at Sequoia (an add-on below it).\n"
}⚙ query_db(SELECT tier_id, line, code, label, position, sellable, retired_on, notes FROM…)
{
"sql": "SELECT tier_id, line, code, label, position, sellable, retired_on, notes FROM tiers WHERE line = 'AUTO' AND code = 'SAPLING'"
}{
"rows": [
{
"tier_id": "AUTO:SAPLING",
"line": "AUTO",
"code": "SAPLING",
"label": "Sapling",
"position": 1,
"sellable": 1,
"retired_on": null,
"notes": null
}
],
"row_count": 1,
"truncated": false
}⚙ query_db(SELECT coverage_id, included, default_value, editable FROM tier_coverage_defa…)
{
"sql": "SELECT coverage_id, included, default_value, editable FROM tier_coverage_defaults WHERE tier_id = 'AUTO:SAPLING' ORDER BY coverage_id"
}{
"rows": [
{
"coverage_id": "AUTO:BI",
"included": 1,
"default_value": "2500000/5000000",
"editable": 1
},
{
"coverage_id": "AUTO:COLL",
"included": 1,
"default_value": "100000",
"editable": 1
},
{
"coverage_id": "AUTO:COMP",
"included": 1,
"default_value": "100000",
"editable": 1
},
{
"coverage_id": "AUTO:GAP",
"included": 0,
"default_value": null,
"editable": 1
},
{
"coverage_id": "AUTO:MED",
"included": 0,
"default_value": null,
"editable": 0
},
{
"coverage_id": "AUTO:OEM",
"included": 0,
"default_value": null,
"editable": 0
},
{
"coverage_id": "AUTO:PD",
"included": 1,
"default_value": "2500000",
"editable": 1
},
{
"coverage_id": "AUTO:RENT_REIMB",
"included": 0,
"default_value": null,
"editable": 0
},
{
"coverage_id": "AUTO:ROAD",
"included": 0,
"default_value": null,
"editable": 1
},
{
"coverage_id": "AUTO:UMUIM",
"included": 0,
"default_value": "2500000/5000000",
"editable": 1
}
],
"row_count": 10,
"truncated": false
}⚙ query_db(SELECT rule_id, line, tier_id, coverage_id, state, effect, condition, effecti…)
{
"sql": "SELECT rule_id, line, tier_id, coverage_id, state, effect, condition, effective_start, effective_end, reason_doc, notes FROM eligibility_rules WHERE line = 'AUTO' AND (tier_id = 'AUTO:SAPLING' OR tier_id IS NULL) AND date('2025-06-01') BETWEEN date(effective_start) AND date(COALESCE(effective_end, '9999-12-31')) ORDER BY state, tier_id, coverage_id"
}{
"rows": [],
"row_count": 0,
"truncated": false
}Absolutely — I can help with that.
Sapling is currently a sellable auto tier. At a high level, it includes:
- Bodily injury liability
- Property damage liability
- Collision
- Comprehensive
Optional/add-on availability on Sapling includes:
- GAP, if the car is financed or leased
- Roadside
- UM/UIM in some situations
Not included on Sapling:
- Medical payments
- Rental reimbursement
- OEM parts coverage
To generate an accurate quote for your 2015 Honda Fit, I’ll need a few details:
- What state is the car primarily garaged in?
- ZIP code
- About how many miles do you drive per year?
- Personal commute/business/other use?
- Is the Honda financed or owned outright?
- Your date of birth
- How many licensed drivers in the household should be rated, and have any had accidents or violations in the last 5 years?
If you want, you can send those in one message and I’ll put together the quote.
Good news, I've got all that. Car's garaged in Buffalo, New York — ZIP is 14222. I drive about 9,000 miles a year, just commuting to work. The Fit is paid off, so no financing. I'm Miguel Santana, DOB February 11, 1997. And it's just me — no accidents or violations on my record.
⚙ query_db(SELECT a.state, a.region, a.zip FROM addresses a WHERE a.zip = '14222' LIMIT 5)
{
"sql": "SELECT a.state, a.region, a.zip FROM addresses a WHERE a.zip = '14222' LIMIT 5"
}{
"rows": [
{
"state": "NY",
"region": "R-NE",
"zip": "14222"
}
],
"row_count": 1,
"truncated": false
}⚙ query_db(SELECT rule_id, line, tier_id, coverage_id, state, effect, condition, effecti…)
{
"sql": "SELECT rule_id, line, tier_id, coverage_id, state, effect, condition, effective_start, effective_end, reason_doc, notes FROM eligibility_rules WHERE line = 'AUTO' AND state = 'NY' AND (tier_id = 'AUTO:SAPLING' OR tier_id IS NULL) AND date('2025-06-01') BETWEEN date(effective_start) AND date(COALESCE(effective_end, '9999-12-31')) ORDER BY tier_id, coverage_id"
}{
"rows": [],
"row_count": 0,
"truncated": false
}⚙ get_doc(KB-NE-MIN-LIMITS)
{
"doc_id": "KB-NE-MIN-LIMITS"
}{
"doc_id": "KB-NE-MIN-LIMITS",
"title": "NY/NJ minimum auto liability limits",
"category": "COMPLIANCE",
"applies_to": "{\"lines\": [\"AUTO\"], \"states\": [\"NY\", \"NJ\"]}",
"body_md": "New York and New Jersey mandate minimum BI/PD limits above the Sapling tier's\nlimits, so **Sapling auto is not sellable** in those states — quote Pine or higher.\n"
}⚙ query_db(SELECT tier_id, code, label, sellable FROM tiers WHERE line = 'AUTO' AND code…)
{
"sql": "SELECT tier_id, code, label, sellable FROM tiers WHERE line = 'AUTO' AND code = 'PINE'"
}{
"rows": [
{
"tier_id": "AUTO:PINE",
"code": "PINE",
"label": "Pine",
"sellable": 1
}
],
"row_count": 1,
"truncated": false
}⚙ query_db(SELECT coverage_id, included, default_value, editable FROM tier_coverage_defa…)
{
"sql": "SELECT coverage_id, included, default_value, editable FROM tier_coverage_defaults WHERE tier_id = 'AUTO:PINE' ORDER BY coverage_id"
}{
"rows": [
{
"coverage_id": "AUTO:BI",
"included": 1,
"default_value": "5000000/10000000",
"editable": 1
},
{
"coverage_id": "AUTO:COLL",
"included": 1,
"default_value": "100000",
"editable": 1
},
{
"coverage_id": "AUTO:COMP",
"included": 1,
"default_value": "50000",
"editable": 1
},
{
"coverage_id": "AUTO:GAP",
"included": 0,
"default_value": null,
"editable": 1
},
{
"coverage_id": "AUTO:MED",
"included": 0,
"default_value": null,
"editable": 0
},
{
"coverage_id": "AUTO:OEM",
"included": 0,
"default_value": null,
"editable": 0
},
{
"coverage_id": "AUTO:PD",
"included": 1,
"default_value": "5000000",
"editable": 1
},
{
"coverage_id": "AUTO:RENT_REIMB",
"included": 0,
"default_value": null,
"editable": 0
},
{
"coverage_id": "AUTO:ROAD",
"included": 0,
"default_value": null,
"editable": 1
},
{
"coverage_id": "AUTO:UMUIM",
"included": 0,
"default_value": "5000000/10000000",
"editable": 1
}
],
"row_count": 10,
"truncated": false
}⚙ quote(2025-06-01, {"line":"AUTO","region":"R-NE","state":"NY","tier":"PINE","vehicl…)
{
"as_of": "2025-06-01",
"facts": {
"line": "AUTO",
"region": "R-NE",
"state": "NY",
"tier": "PINE",
"vehicle_year": 2015,
"vehicle_make": "Honda",
"vehicle_model": "Fit",
"annual_miles": 9000,
"usage": "COMMUTE",
"financed": false,
"driver_age": 28,
"drivers": 1,
"incidents_5yr": 0,
"peico_risk": "STANDARD",
"coverages": [
"BI",
"PD",
"COLL",
"COMP"
]
}
}{
"error": "rate_failed",
"detail": "'<=' not supported between instances of 'str' and 'int'"
}⚙ search_kb(quote engine AUTO required facts examples peico_risk age usage annual_miles r…)
{
"query": "quote engine AUTO required facts examples peico_risk age usage annual_miles region state tier vehicle quote format",
"limit": 5
}{
"results": [
{
"doc_id": "KB-HERITAGE",
"title": "Heritage tier (retired 2009) — do not drop without disclosure",
"category": "UNDERWRITING",
"applies_to": "{\"lines\": [\"AUTO\"]}",
"snippet": "Heritage was retired on 2009-07-01 and cannot be sold or re-bound. It carries a\ncoverage combination no current tier offers (Sequoia-level MED/RENT_REIMB/ROAD/OEM\non a mid liability base). A customer who drops Heritage **loses that combinat…"
},
{
"doc_id": "KB-GLOSSARY-AUTO",
"title": "Auto coverage codes, decoded",
"category": "GLOSSARY",
"applies_to": "{\"lines\": [\"AUTO\", \"MOTO\", \"RV\", \"BOAT\", \"CLSC\"]}",
"snippet": "EVERGREEN stores auto coverages under terse codes. Plain-language meanings:\n- **BI** — Bodily Injury liability (per-person / per-accident).\n- **PD** — Property Damage liability.\n- **UM/UIM** (`UMUIM`) — Uninsured / Underinsured Motorist.\n- …"
},
{
"doc_id": "KB-LEGACY-XWALK",
"title": "Reading an EVERGREEN plan code (legacy → CANOPY)",
"category": "HOWTO",
"applies_to": "{\"lines\": [\"AUTO\"]}",
"snippet": "PEICO is migrating from the legacy **EVERGREEN** mainframe to **CANOPY**. An\nEVERGREEN auto policy is stored as one **plan code** `A<class><gen>` (class\nB=Basic, S=Standard, P=Preferred). A plan code does NOT map to a CANOPY tier on\nits own…"
},
{
"doc_id": "KB-AUTO-TIERS",
"title": "Auto tiers: Sapling → Pine → Evergreen → Sequoia",
"category": "POLICY",
"applies_to": "{\"lines\": [\"AUTO\"]}",
"snippet": "Tiers bundle coverages. Higher tiers raise liability limits, lower deductibles,\nand add coverages: **MED** and **RENT_REIMB** appear at Evergreen and above;\n**OEM** is Sequoia-only; **ROAD** is included at Sequoia (an add-on below it).\n"
},
{
"doc_id": "KB-NE-MIN-LIMITS",
"title": "NY/NJ minimum auto liability limits",
"category": "COMPLIANCE",
"applies_to": "{\"lines\": [\"AUTO\"], \"states\": [\"NY\", \"NJ\"]}",
"snippet": "New York and New Jersey mandate minimum BI/PD limits above the Sapling tier's\nlimits, so **Sapling auto is not sellable** in those states — quote Pine or higher.\n"
}
]
}Yes — with one important catch:
Because the car is garaged in New York, I can’t quote Sapling. New York’s minimum required liability limits are above Sapling’s limits, so Sapling isn’t sellable in NY. The next tier up, Pine, is sellable there.
For Pine, your base included coverages are:
- Bodily Injury: 50/100
- Property Damage: 50
- Collision deductible: $1,000
- Comprehensive deductible: $500
Based on what you gave me, I’m ready to quote Pine for your 2015 Honda Fit in Buffalo.
I hit a formatting issue in the rating engine on my first pass, so I need one quick detail to finish it cleanly:
- Is your commute one-way distance roughly:
- under 10 miles
- 10–25 miles
- over 25 miles
If you send that, I’ll finalize the quote.
I get it — New York's got stricter minimums. That makes sense. For my commute, it's about 12 miles one way, so I'd say 10–25 miles.
⚙ quote(2025-06-01, {"line":"AUTO","region":"R-NE","state":"NY","tier":"PINE","vehicl…)
{
"as_of": "2025-06-01",
"facts": {
"line": "AUTO",
"region": "R-NE",
"state": "NY",
"tier": "PINE",
"vehicle_year": 2015,
"vehicle_make": "Honda",
"vehicle_model": "Fit",
"annual_miles": 9000,
"usage": "COMMUTE",
"commute_band": "10_25",
"financed": false,
"age": 28,
"drivers": 1,
"incidents_5yr": 0,
"coverages": [
"BI",
"PD",
"COLL",
"COMP"
]
}
}{
"as_of": "2025-06-01",
"base_premium_cents": 113650,
"final_premium_cents": 100012,
"breakdown": [
{
"step": "BASE",
"code": "base",
"detail": "base_rate $900",
"factor": null,
"amount_cents": null,
"running_cents": 90000
},
{
"step": "BASE",
"code": "tier:PINE",
"detail": "tier factor ×1.0",
"factor": 1,
"amount_cents": null,
"running_cents": 90000
},
{
"step": "BASE",
"code": "region:R-NE",
"detail": "region factor ×1.3",
"factor": 1.3,
"amount_cents": null,
"running_cents": 117000
},
{
"step": "RISK",
"code": "factor:annual_miles",
"detail": "annual_miles=9000 ×1.0",
"factor": 1,
"amount_cents": null,
"running_cents": 117000
},
{
"step": "RISK",
"code": "factor:incidents_5yr",
"detail": "incidents_5yr=0 ×0.95",
"factor": 0.95,
"amount_cents": null,
"running_cents": 111150
},
{
"step": "FEES",
"code": "policy_fee",
"detail": "+ policy fee",
"factor": null,
"amount_cents": 2500,
"running_cents": 113650
},
{
"step": "DISCOUNT",
"code": "SAFE_DRIVER",
"detail": "−12%",
"factor": 0.88,
"amount_cents": null,
"running_cents": 100012
}
]
}Thanks — I’ve got it.
Your PEICO Auto Pine quote for the 2015 Honda Fit in Buffalo, NY 14222 is:
- Quoted premium: $1,000.12
- Base premium before discount: $1,136.50
What’s built into that quote:
- Bodily Injury: 50/100
- Property Damage: 50
- Collision deductible: $1,000
- Comprehensive deductible: $500
What drove the price:
- Northeast region factor
- 9,000 annual miles
- Clean driving record
- Safe driver discount: 12%
- Standard policy fee included
A couple of notes:
- Sapling isn’t available in New York, so this is quoted on Pine
- Since the car is paid off, GAP would not apply
If you want, I can also give you:
- a version with lower deductibles,
- a quote with Roadside added, or
- a higher-tier comparison like Evergreen so you can see whether the extra coverage is worth the difference.
Thanks for breaking that down. I appreciate the quote, but honestly I wasn't expecting to go up a tier. Let me think it over — Pine is more than I was hoping to spend right now, and I want to see if there's anything else I can do on my end first. I'll reach out if I have questions. Thanks for your help today.
⚙ end_conversation()
{}{
"ok": true,
"note": "Deliver your closing message now."
}Of course — totally understandable. Thanks for giving me the details, and I’m glad I could help clarify the New York tier requirement.
If you come back, I can help you look at deductible changes or other quote options to see if we can bring the price down.
Thanks for contacting PEICO, and have a great day.