Research & method
The method, on the record.
Scintilla is built on one conviction: a simulation you cannot reproduce, attribute, or falsify is an anecdote with extra steps. Everything below, from the architecture to the experimental design to the statistics, exists to make each number auditable.
A two-layer engine: language in, arithmetic out
A language model does exactly one job in the verdict path: it reads each piece of courtroom content once and scores it (strength, clarity, sympathy, emotional charge, credibility, and specific causation for this plaintiff), cached by content hash. Everything after that is pure seeded arithmetic: juror state updates, deliberation dynamics, verdict forms, damages. The model never sees, creates, or prompts a juror, and its output cannot vary between runs.
Deliberation prose for the jury room is rendered after the outcome is computed and never feeds state: narration, not an input. The featurization rubric and version are recorded on every element.
Within-subject paired design: the same jury, twice
The classic study design, where one group sees version A and another sees version B, confounds the thing you changed with the difference between groups. Scintilla never does that. One panel set is created content-blind; every jury in it hears both versions from identical seeds. The effect of your change is read off the juries that flipped, and only those.
Because reruns are bit-identical, an A/A comparison produces zero flips: a provable noise floor no sampled panel can offer. Against that floor, inference is exact: the flip-direction count is tested with the exact conditional McNemar test, intervals come from a seeded paired bootstrap, and each comparison reports the minimum detectable effect for its jury count.
Juries from recorded behavior, never demographics
Every simulated juror is a composite built from the recorded behavior of at least 100 real, de-identified people: attitudinal priors, cognitive style, comprehension capacity, persuadability. There is no path from a census profile to a juror. Demographic invention predicts verdicts at chance, and no juror is ever conditioned on a protected class. Venue realism comes from hardship attrition: long trials visibly empty the box of anyone who cannot be away from work for weeks.
Statistical guarantees
| Determinism | Identical runs reproduce bit-for-bit | Every flip is attributable to your change. The noise floor is exactly zero, and any deliberation can be replayed event-for-event from its seed. |
| Inference | Exact conditional McNemar test | No chi-square approximation: significance is computed exactly, which matters at the small flip counts a decisive comparison produces. |
| Intervals | Seeded paired bootstrap | 95% confidence intervals on the verdict-rate effect and the damages delta, resampling whole jury pairs, deterministic per comparison. |
| Power | Minimum detectable effect, always shown | Every comparison states the smallest swing its jury count can resolve. A null that is really underpowered is labeled underpowered. |
| Multiplicity | Holm-adjusted across the matter | Every comparison on a matter is one look at the same case; family-wise error is controlled and the adjusted p is displayed. |
| Reporting | Distributions, never bare points | Wilson intervals on verdict rates, full damages distributions, and hung juries reported, never suppressed. |
| Pre-registration | Hypotheses locked before running | Each comparison records its expected direction up front and is graded against it, including 'opposite of declared'. |
Specific causation, scored for this plaintiff
Strength and outrage can tell you the product looks bad. They cannot tell you whether this plaintiff's injury is tied to it. The feature layer now scores two facts the rest of the vector never captured: fit (how tightly this person's use, onset, and diagnosis sit in a dated window) and alternative cause (named competing explanations in this person's record). The engine keeps a running ledger of both. A gap, meaning an alternative the plaintiff never answered, raises the burden a juror must clear. Outrage can still move a room. It does not get to erase a hole in this plaintiff's chain.
Those constants were fitted on 60 percent of the stress-test cases and kept because the held-out 40 percent improved on both direction and separation. Candidate mechanisms that failed that split were rejected. That is the only way a new channel ships.
Benchmarked against one hundred real verdicts
The engine is scored against one hundred documented US jury trials, rebuilt from their public records and re-run on every engine change. Thirteen are a frozen calibration set: 11 of 13 directions match. Against Liebeck v. McDonald's the simulation reproduces the verdict direction and lands damages near the real award; removing the case-defining conduct evidence swings the verdict by more than fifty points. Eighty-seven more cases are a stress test, drawn heavily from mass-tort bellwethers where near-identical evidence produced verdicts both ways.
Raw direction is 79 of 100 at the 250 juries the product runs, and 74 of 100 at 1,000. 18 stress cases sit within five points of even, and those are the ones that flip between run sizes. On cases where the engine commits, the score is 56 of 69, identical at both sizes. That is the number the regression gate asserts on. Records are authored blind to the real outcome. Target bands are locked before a run. Every miss is on the benchmarks page.
A single real verdict is one draw from a distribution. These are directional checks, not proof of prediction. The suite exists so that future engine changes cannot silently regress against it, and so that a thin or inverted record is visible as a miss rather than tuned away.
The loop this enables
Because a run costs minutes and attribution is exact, preparation becomes an experimental loop rather than a one-shot poll: brief the case, hear the verdict distribution, find the weak point on the moment and comprehension maps, change one element, and price the change against the same juries. A full-matrix search runs every combination of your open decisions and reports the marginal worth of each.
Limitations, stated plainly
- Rehearsal, not prophecy. Scintilla estimates how plausible juries receive your case; it does not and cannot predict what one particular empaneled jury will do. Every export carries that disclaimer.
- Resolution is visible, never faked. When a venue cell resolves from the national cohort, results say so. We degrade visibly rather than claiming county-level resolution we do not have.
- Content in, content out. Juries react to what the brief says. A thin brief produces a rehearsal of a thin case, which is itself useful information, but only if you know that is what you asked for.
- Featurization is versioned. The one model step is cached, versioned, and recorded per element, so any future rubric or model change is a visible version change, never silent drift.
- The record is the experiment. Juries score the facts in the brief. A record that omits this plaintiff's exposure window, or the alternative cause the real defense actually tried, will not reproduce that trial. That is a property of the input, and we show those misses rather than hide them.
See the method run.
Every claim above is inspectable: the hundred-case suite, then a live matter.