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

arXiv:2605.03073

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.