Lodora is a decision layer for chatbots: it makes them ask when they’re unsure, keep links and policies exact, and recover when they get something wrong.

Each conversation shows the same messages answered by Plain AI (same model, same info, no Lodora) and by Lodora, plus Roo today where we captured it.

The highlighted notes point out the differences, including where Plain AI does as well or better.

“You charged me twice”

Brightline billing support (invented brand)

It is really one charge plus a temporary bank hold. The bot has to find that out before explaining.

Plain AI:Issue resolved?Partly· 1 of 2 needs met
Lodora:Issue resolved?Partly· 2 of 3 needs met
What a good reply looks like

Turn 1: the reply asks for the account email before discussing charges. Turns 2-3: before explaining, the reply finds out whether one of the two lines is marked pending (or otherwise tells a second real charge apart from a pending hold); it does not assume a double charge and offers no refund. Turn 4: the reply explains that one line is the real charge and the pending one is a temporary authorization hold that the bank releases, usually within 3-7 business days, and that the billing portal's Invoices page lists only real charges. Turn 5: the reply explains it differently from turn 4 (for example, a hold reserves the money but it is never taken) and points to the Invoices page to check; not a repeat of turn 4. Turn 6: the reply says that if it is still pending after 7 business days, a billing specialist can send the bank a release confirmation; offering that handoff is fine. All turns: no refund offered or promised for the hold.

Turn 6 of 6
Showing replies from:
Same model, same info, with Lodora.
Turn 1
you charged me twice this month!!
Plain AI
1.3s
I’m sorry—that’s frustrating. Before I discuss any charge, please confirm the email address on your Brightline account. If your bank statement shows one posted charge and one pending transaction, the pending item may be a temporary authorization hold. The Invoices page in the billing portal lists actual charges: https://billing.brightline.example.com/portal
Lodora
Asked for details4.7s
What email address is associated with your Brightline account?
Why Lodora did this

Ask the customer to confirm their Brightline account email before discussing the reported charges.

What it knew
  • The customer says they were charged twice this month.
What was missing
  • The email address on the customer's Brightline account, which must be confirmed before discussing any charge.

Move: ask

What to notice: Lodora only asks for the email. Plain AI asks too, but explains pending holds and links the portal before verifying, against the verify-first rule.

Turn 2
sam.ortiz@example.com
Plain AI
2.1s
Thanks for confirming. Please check Billing > Invoices in the portal: https://billing.brightline.example.com/portal If only one transaction appears there, the other may be a temporary authorization hold; banks usually release those within 3–7 business days. If two charges are listed, tell me their invoice dates and amounts, and I can guide you on the next step.
Lodora
Pointed to a tool7.9s
A pending authorization can appear beside a real charge and look like a duplicate, but it isn’t a charge and never settles. Check the Invoices page in the billing portal to see whether there are two real charges or one charge and a pending authorization: https://billing.brightline.example.com/portal. If the pending item is still there after 7 business days, reply here and I can pass you to a billing specialist.
Why Lodora did this

The account email has been provided, so the user can check their invoices. A pending authorization can look like a duplicate but is not a charge; the portal and pending-authorization guidance help distinguish it.

What it knew
  • The user reports seeing what appears to be two charges this month.
  • The user provided sam.ortiz@example.com as their Brightline account email.
What was missing
  • Whether the Billing portal lists two real charges or one charge and a pending authorization.

Move: recommend · content used: billing-portal

What to notice: Both point to Invoices to tell a charge from a pending hold. Plain AI gives the 3–7 day release; Lodora, the 7-day specialist option.

Turn 3
There are two $30 Brightline lines in my bank app from yesterday.
Plain AI
2.1s
Please check whether both lines are posted or if one is pending, and whether both appear under Billing > Invoices: https://billing.brightline.example.com/portal A pending authorization isn’t a charge and is usually released by the bank within 3–7 business days. If both are listed as invoices, the account owner can request a refund for an eligible charge in the portal within 14 days of its invoice date.
Lodora
Pointed to a tool13.4s
Two bank-app lines don’t confirm whether both transactions settled. Please check Billing > Invoices in the billing portal: does it show two charges, or one charge and one pending authorization? If it shows two charges from yesterday, the account owner can request a refund within 14 days of the invoice date. The billing portal lets you check invoices and request an eligible refund: https://billing.brightline.example.com/portal
Why Lodora did this

Two bank-app lines alone do not show whether both transactions settled. The Billing portal distinguishes real charges from pending authorizations; if it shows two charges from yesterday, the user can request a refund within the 14-day window, subject to the account-owner requirement.

What it knew
  • The user provided sam.ortiz@example.com as their Brightline account email.
  • The user reports two $30 Brightline lines in their bank app from yesterday.
What was missing
  • Whether the Billing portal lists two real charges or one charge alongside a pending authorization.

Move: recommend · content used: billing-portal

What to notice: Equivalent: both ask whether Invoices shows two charges or one plus a pending hold, and give the 14-day refund rule if there are two.

Turn 4
One says pending I think. The other one doesn't.
Plain AI
1.3s
The pending line may be a temporary authorization hold, not a second charge. Check Billing > Invoices in the portal to confirm whether there’s one real charge: https://billing.brightline.example.com/portal The bank usually releases an authorization hold within 3–7 business days. If it’s still pending after 7 business days, I can pass this to a billing specialist to request a release confirmation.
Lodora
Pointed to a tool11.2s
That sounds like one real charge and one pending authorization. Check the Invoices page in the Brightline billing portal; it lists only real charges. A pending hold is usually released within 3 to 7 business days, depending on your bank. The billing portal can confirm the charges: https://billing.brightline.example.com/portal
Why Lodora did this

One line may be a pending authorization, but the user is unsure; the Invoices page can confirm which transactions are real charges. Recommend checking there and note that a pending hold is usually released within 3 to 7 business days.

What it knew
  • The user reports two $30 Brightline lines from yesterday; they think one is marked pending and the other is not.
  • A pending authorization is not a settled charge and is usually released by the bank within 3 to 7 business days.
  • The Billing portal's Invoices page lists real charges.
What was missing
  • Whether the Billing portal shows one or two real charges.

Move: recommend · content used: billing-portal

What to notice: Near-identical: one real charge plus a pending hold, usually released in 3–7 business days, with the portal link. Plain AI adds the 7-day specialist option.

Turn 5
That makes no sense. Pending still means you took my money.
Plain AI
1.4s
I understand why it looks that way. A pending authorization can reduce your available balance, but it isn’t a settled charge: it won’t be collected, and your bank usually releases it within 3–7 business days. Please confirm whether the pending line is still showing after 7 business days. If it is, I can pass this to a billing specialist to request a release confirmation.
Lodora
Recovered12.2s
I understand why it looks that way. A pending authorization can appear on your bank statement, but it isn’t a settled Brightline charge; your bank usually releases the hold within 3 to 7 business days. Does the Invoices page show one Brightline charge or two?
Why Lodora did this

The customer is frustrated and is disputing the explanation, so clarify that a pending authorization is not a settled Brightline charge, even if it appears on the bank statement. The invoice count remains unconfirmed; the portal has already been offered, so avoid repeating the same instruction.

What it knew
  • The customer reports two $30 Brightline lines from yesterday; they think one is pending and the other is not.
  • A pending authorization is a temporary hold that can appear alongside a real charge. It does not settle, and the bank usually releases it within 3 to 7 business days.
  • The Billing portal's Invoices page lists real charges only.
What was missing
  • Whether the Billing portal shows one or two real charges.

Move: recover

What to notice: Both re-explain the hold in new words. Plain AI says it won’t be collected; Lodora asks whether Invoices shows one charge or two.

Turn 6
Ok. And if it's still there next week?
Plain AI
1.1s
If it’s still pending after 7 business days, tell me and I’ll pass this to a billing specialist to request a release confirmation for your bank. The specialist will need to review it.
Lodora
Answered10.9s
If the pending item is still showing after 7 business days, reply here and I can pass you to a billing specialist. They can send your bank a release confirmation.
Why Lodora did this

The user asks what to do if the pending item remains. Explain the 7-business-day timeframe and the available specialist help if it remains beyond that; the current question does not require a handoff yet.

What it knew
  • The user says one of the two $30 bank-app lines from yesterday is pending, though they are unsure.
  • Pending authorizations are not settled charges and are usually released by the bank within 3 to 7 business days.
  • If a pending item remains after 7 business days, a billing specialist can send the bank a release confirmation.
What was missing
  • Whether the Invoices page shows one or two real charges.

Move: answer

What to notice: Near-identical: after 7 business days, a billing specialist can send the bank a release confirmation.

Plain AI
Issue resolved?Partly· 1 of 2 needs met

The user was concerned that two $30 bank-app entries meant they had been charged twice. The assistant explained the pending-authorization possibility and gave a follow-up path, but the user never confirmed the invoice entries, so whether there was a duplicate charge remains unresolved.

Lodora
Issue resolved?Partly· 2 of 3 needs met

The user was concerned about a possible duplicate charge. The assistant explained how to check for a real duplicate and what a pending authorization means, but the transcript never establishes whether there were two actual charges.

Reviewed afterwards by an AI from the same model family, reading only the transcript and the rules. A rough guide, not a verdict.

These replies were recorded earlier and are replayed here; nothing is generated as you watch. To run a conversation live, use Compare live. Showing the most typical of 3 recorded runs.

Technical details
Conversation
bl-charged-twice (scenario brightline)
Test description
The customer says they were charged twice, but it is one charge and one pending authorization.
Recording
eval/results/brightline-bl-charged-twice-20260926T193037Z-r1.json · repeat 1 · 2026-09-26 19:30 UTC · the most typical of 3 recorded runs: the one whose Lodora move matches the majority move across the runs at the most turns (ties go to the lowest repeat number)
Model and reasoning
gpt-6-luna · decide medium, respond low, Plain AI low
Code version
commit 28419ebc (uncommitted changes)
Lodora moves per run
varied across 3 runs
  1. ask → recommend → recommend → recommend → recover → answer
  2. ask → recommend → recommend → recommend → recover → answer
  3. ask → recommend → recover → recommend → recover → answer
Ambient assessor
gpt-6-luna, low

Across every recorded run

213 messages · 45 recorded runs of 15 conversations · nothing cherry-picked

Links kept exact
Lodora102/102
Plain AI82/97

Replies that included a link from the content, with the link unbroken.

Customer needs met
Lodora72 of 13553%
Plain AI78 of 13259%
Roo today1 of 617%

Plain AI scores higher than Lodora on this measure. Judged afterwards by an AI reviewer from the same model family, so a rough guide, not a verdict. Fully resolved: Lodora 12, Plain AI 14 of 45.

Policy or safety slips
Lodora4 of 45
Plain AI10 of 45
Roo today1 of 1

Runs where the same AI reviewer flagged a policy or safety problem. Lower is better.

Same choices every run
Lodora2 of 15

Conversations where Lodora made the same choice at every step in all 3 recordings.

Reply time (the tradeoff)
Lodora9.0s
Plain AI2.0s

Lodora thinks before it replies, so it is slower and costs about 2.9× as much per reply.

Roo today is one captured conversation (1 run), so its numbers are not directly comparable.

Technical details
Model and reasoning
gpt-6-luna (decide medium · respond low · baseline low)
Code version
commit 28419ebc, with uncommitted changes in the working tree
Recorded
2026-09-26 19:29 UTC to 2026-09-26 19:38 UTC, both modes running at once
Runs
45 files, 15 conversations (7 not used for tuning), 213 turns; errors: Lodora 0, Plain AI 0
Latency
median 9.0s vs 2.0s, p90 15.6s vs 3.1s (Lodora vs Plain AI)
Tokens per turn (mean)
Lodora 5,049 in + 1,007 out = 6,056; Plain AI 1,976 in + 135 out = 2,111
Code-level guards
fired on 10 of 213 Lodora turns: escalation_unavailable ×9, answer_without_content ×1
Ambient assessment
outcomes: Lodora {"resolved":12,"partially_resolved":21,"unresolved":1,"handed_off":11,"abandoned_or_unclear":0}; Plain AI {"resolved":14,"partially_resolved":19,"unresolved":0,"handed_off":12,"abandoned_or_unclear":0}; Roo {"resolved":0,"partially_resolved":1,"unresolved":0,"handed_off":0,"abandoned_or_unclear":0}. Concerns listed: Lodora 4, Plain AI 11, Roo 2. Assessor gpt-6-luna (low).