What we read, and what it changed
Research consulted while building Ori, sorted by how much it actually moved the code. Each entry says whether I verified it myself — several earlier claims in this project turned out to be agent-relayed and wrong, so verification status is tracked separately from the citation.
| verification | means |
|---|---|
| ✅ verified | I fetched the source and read the quoted text |
| ⚠ corrected | I fetched it and had to fix what we had been saying |
| ⛔ unverified | Cited from a secondary source or an agent report. Treat as a lead |
Tier 1 — changed the architecture
The freight negotiation paper
Anchor-and-Resume Concession Under Dynamic Pricing for LLM-Augmented Freight Negotiation — Hoang Nguyen, Lu Wang, Marta Gaia Bras, 22 April 2026. arXiv:2604.20732
✅ verified — abstract fetched and read.
Our architecture, in our industry, over 115,125 negotiations:
"All pricing decisions remain in a deterministic formula; the LLM, when used, serves only as a natural-language translation layer."
Why it matters: it names our exact split, and gives the same three reasons we had — LLM brokers "require expensive reasoning models, produce non-deterministic pricing, and remain vulnerable to prompt injection."
⚠ corrected — two things we had been overstating:
- It does not beat an unconstrained LLM on savings. Against a 20-billion- parameter LLM broker it achieves "similar agreement rates and savings."
- The "2.64 retraction events per negotiation" figure is not in the abstract and is unconfirmed in the body.
PROPOSED — the honest reading is parity plus properties: same outcome, plus determinism, auditability, and no path from a carrier's words into pricing. That is a better argument than "it wins", because it does not depend on the model staying bad.
The bargaining benchmark
arXiv:2512.13063 — December 2025
✅ verified — two quotes confirmed verbatim; the date corrected from "2026".
The finding that matters for planning: negotiation ability does not improve with better models.
PROPOSED — this kills the tempting roadmap "keep the ladder for now, hand pricing to the model once they improve." There is no evidence behind it. The split is not a stopgap.
⚠ One figure from this paper we quote — a 5–7% BATNA effect — remains unverified.
CICERO — Meta's Diplomacy agent
Human-level play in the game of Diplomacy by combining language models with strategic reasoning — Meta AI, Science 2022.
⚠ corrected — I extracted the technical report PDF and fixed my own misreading.
CICERO conditioned its dialogue model on a decided strategy — structurally the same as our briefs — and still needed a filter over the output.
- ❌ What I said: "the model contradicted its own strategy 24% of the time."
- ✅ What the report says: 24% is the filter's false-positive rate — how much good output it discarded to catch the bad. Actual strategy mismatch was ~20/1013 ≈ 2%.
PROPOSED — the corrected number is still the argument for FigureGate.
Even at 2%, they kept a hard filter, and paid a quarter of their output for it.
Conditioning is not control.
Tier 2 — validated something we had already built
Delexicalisation / coarse dialogue acts
He et al., Decoupling Strategy and Generation in Negotiation Dialogues, 2018.
⛔ unverified — cited from memory of the literature, not fetched.
The academic name for our {rate} slot. A model that emits a dialogue act with
the values held out, and a separate mechanism that fills them. Our rule chain
maps onto this almost line for line.
PROPOSED — worth verifying properly if it is ever used to justify a decision, rather than just to name one.
The TTS→STT flywheel for Indic ASR
⛔ unverified — cited in strategy/ when the channel harness was designed.
Published validation for exactly what app/scripts/channel.py does: generate
entity-dense audio with TTS, degrade it to telephony quality, measure. We had no
real call recordings and needed to know ASR accuracy on freight entities anyway.
⚠ The limitation is the same one we hit independently: a synthetic corpus flatters
whoever generated it. See 02-experiments.md §1.
Schema-aligned parsing (BAML)
BAML's own benchmark: 93.63% against 91.37% for function-calling on BFCL with gpt-4o.
✅ verified — figures and benchmark confirmed.
⭐ Discovered while verifying: BAML is already a dependency
(pyproject.toml:20, baml-py>=0.225.0) and ADR 0002 is the decision to use it.
We had been discussing adopting something we ship.
Rasa on migrating to LLM-based routing
⛔→✅ verified — quoted verbatim from Rasa's migration page, updated 9 Sep 2026.
The largest company in conversational AI recommends coexistence, not replacement: keep deterministic routing for the flows that must not vary, and let the model handle the rest. Do not switch everything at once.
PROPOSED — this is the shape of the classifier recommendation in
../plan.md: a semantic fallback under the rules, never over them.
Tier 3 — read, not yet applied
These informed the OCR / document-extraction workstream, which is prep, not
shipped in v0.0.1. All ⛔ unverified — collected in strategy/33.
| paper | topic |
|---|---|
| 2606.24420 | Multi-signal confidence for LLM document field extraction |
| 2603.18014 | Trustworthiness scoring for structured outputs |
| 2604.03616 | The Format Tax |
| 2605.02363 | Structured output reliability in small models |
| 2502.09061 | CRANE: reasoning with constrained generation |
| 2605.18796 | UCCI: calibrated uncertainty for cascade routing |
| 2602.21103 | Prompt-level distillation |
| 2606.23050 | Baidu Unlimited-OCR, MIT-licensed weights |
PROPOSED — the confidence-scoring cluster is the most relevant to Ori itself,
not just to OCR. RateHeard.status is already a hand-built confidence signal;
these papers describe calibrated versions of the same idea.
The datasets
Dakshina — Google Research, CC BY-SA 4.0
Used as tier 2 of the transliteration lexicon: 47,611 forms, inverted.
⚠ It is worse than our 484 hand-curated entries if used naively — it disagrees
on 82 of 356 shared words (23%), and the disagreements go the wrong way
(bata → बाटा, the shoe brand). Order is the whole design. See
02-experiments.md §5.
⚠ CC BY-SA is share-alike. A derived lexicon shipped as data to a customer needs attribution and the same licence. It does not touch source code.
Claims still carrying no verification
Listed so they are not mistaken for settled:
- "1,000 completions → 80 outputs" and "16–100 ms embeddings" — agent- reported during the classifier research. Never checked.
- He et al. 2018 — see above.
- arXiv 2605.03073 — see above.
- The 2.64 retractions figure from the freight paper.
- The 5–7% BATNA figure from the bargaining benchmark.
⛔ Four of the eight tier-1 and tier-2 citations required a correction when checked. That is the base rate to assume for anything on this page still marked unverified.