Skip to content
The Liberation Engine

Before the disaster / Lesson 3 of 3 · Check

Would you investigate the diesel that passed the lab?

Three diesel vehicles met in the same field study, but their road results did not tell the same story. Freeze the record in May 2014 and decide whether a regulator should demand an investigation before learning what officials found.

What the agent made

Ran it for real with OMP 18.11.0 on 2026-10-15. The first session started with no saved memory; each later session was a new one that kept only the files in the folder. Your result will differ.

Then a brand-new session used what it saved on new input: see the proof.

Make your own

  1. Get the files

    Download the practice folder (ZIP)

    Unzip it: you get a folder called cli-practice with 3 practice files. Only WVU's May 2014 report and a February 2000 federal emissions rule enter the blind folder. The study anonymizes all three vehicles. The later regulator notice, announcement, and plea arrive in a separate session. It also has a for-later folder with the new files for the fresh sessions.

  2. Open your agent in that folder

    Open a terminal in cli-practice and type claude or omp --approval-mode always-ask. First time? Set up in about five minutes, with steps for Mac, Windows, and Linux.

  3. Paste this prompt

    You are assisting a regulator as of May 30, 2014. Work only inside this practice folder with cafee-study.txt, tier2-rule.txt and SOURCES.csv. Do not change inputs; do not use the network, install packages, read files outside this folder, or ask for a reply. Use Python 3 standard library only. Do not use em dashes or en dashes. Treat the dated report and the old rule as the whole record. The vehicles are anonymized in the original study: keep their letters, do not guess makes or model names.
    
    Decide whether the measured road/lab difference can reasonably be dismissed as ordinary driving variation or warrants a regulator demanding an investigation of possible test-dependent emissions controls. A demand to investigate is not a finding of a defeat device or a legal certification failure. Parse the source table for each route and vehicle, handle missing readings as missing, reconcile the rule's miles with the study's kilometers, and calculate the study-benchmark multiples for every measured route. Keep the third vehicle in the comparison. Show the two recorded laboratory FTP-75 results in their own category. Investigate alternative explanations, the limited sample, route terrain, regeneration, instrument/route variability, and the difference between an on-road observation and a formal certification test. Distinguish measurements, reporter interpretations and your own inference. Do not use or claim any later evidence, identify the manufacturer, generalize to an entire fleet, or claim intent from this packet.
    
    Write only audit.py, analysis.json, check.py, and analysis.html. audit.py must re-read source texts, calculate all route-by-vehicle values, carry source IDs and provenance, name the decision and limits, and write analysis.json; missing entries remain null. check.py independently reads input texts without importing or running audit.py, computes the benchmark and all route multiples using its own parsing approach, compares each route and both lab readings against JSON and tagged values in HTML, and flags absent source links, invented rows, a missing third vehicle, a 2015/2017 claim or an unsupported misconduct finding. Its --self-test must demonstrate at least three distinct in-memory corruptions that it catches, including one missing-value-to-zero substitution. Run audit.py, check.py and check.py --self-test and report exit codes.
    
    Make analysis.html a complete, self-contained evidence room that opens offline and on a static website. Lead with the dated call and a clear distinction between test measurements and unproven mechanism. Use one source-linked inline SVG chart showing comparable route multiples against a clearly labeled common benchmark, with a zero baseline, explicit units and source IDs. The complete baseline numerical table, sources, uncertainties and finding must be readable in semantic HTML with JavaScript off. Let a reader choose a vehicle and visibly inspect its route comparisons and evidence, including missing routes, while retaining a static complete table; reset restores the full comparison. A pointer click and keyboard use must both work. No external scripts, fonts, CDN or assets. Design for an environmental case, not a generic dashboard: a restrained field-notes motif, strong display heading and calm evidence-reading body. At 360 pixels wide and wider, the page fits the screen and nothing scrolls sideways, not even inside a table or chart box; the chart scales to the width; no word or amount ever breaks mid-word; narrow tables become stacked cards; each source shows as a short named link with its full URL in the link, never printed as page text. At desktop width, keep a comfortable reading measure, clear focus styling and a reduced-motion path. Do not use em dashes or en dashes.
    
    Test the layout at both 360 and 1280 pixels wide after selecting each vehicle and after resetting. The document, including each vehicle evidence table and the chart, must fit the viewport at either width with no sideways scrolling anywhere; constrain tables within their card as stacked cards rather than letting a selected vehicle's table extend beyond the page or scroll inside a box.

    The prompt asks the agent to stay in this folder; it cannot enforce that. Read each file change and command before you approve it.

  4. Check it yourself

    Open cli-practice/analysis.html in your web browser (double-click it), then:

    Human check: Independent /tmp/referee-vw-diesel-gap.py parses the study's printed 0.043 g/km rounded standard and federal rule's 0.07 g/mi: route 1 A/B/C 14.28/8.00/1.12x; route 2 23.00/18.81/1.63x; route 3 35.00/15.60/9.51x; route 4 A/B 34.42/15.70x with C missing; route 5 B/C 18.95/1.23x with A missing. FTP-75 A 0.022 and B 0.016 g/km, each below the study benchmark. Ask for investigation, not a proven device or a formal road-test violation. All three vehicles and missing values visible; no later event in blind page. Run both independent checker modes and confirm interaction/no-script/mobile.

    When we checked the recording above: 2026-10-14 re-record (360px prompt): exit 0, no changed inputs; in a clean rebuilt folder check.py, --self-test, reveal-check.py and --self-test all exit 0; headline call and key figures match the earlier referee-checked run; headless sweep at 360/375/390/1280 with all disclosures open: no element past the edge, no sideways scroller, no printed URLs; every control changes visible text and re-sweeps clean; no external requests

Then prove it: fresh sessions

Each run below is a brand-new session, recorded for real in OMP. It remembers nothing from the run before except the files saved in the folder, so the short prompt is the whole instruction.

2 · Open the regulators' later record

Before this run, copy the files from for-later/reveal in the ZIP into cli-practice: OUTCOME_SOURCES.csv, outcomes.txt.

Quit the agent, start it again in cli-practice, and paste only this:

This is a fresh session. Read the original source texts and your existing audit and page before the added outcomes.txt and OUTCOME_SOURCES.csv. Leave all inputs and previous outputs unchanged. No network, installs, file access outside the folder, or replies. Python 3 standard library only; do not use em dashes or en dashes. Do not retroactively describe 2015 or 2017 information as knowable in May 2014.

Write only reveal.json, reveal.html and reveal-check.py. Show two dated evidence columns: the original May 2014 measurements and bounded investigation call, versus EPA's September 18, 2015 notice/announcement and the subsequent Volkswagen corporate plea agreement. Preserve the lab/road distinction and the third vehicle. Attribute the 2015 notice as an EPA allegation and description of its subsequent investigation, then identify what the defendant actually stipulated in the 2017 agreement, without suggesting the 2014 paper alone identified software or proved intent. Quote primary passages with source ID, date and original URLs; do not infer personal motives or name employees as culprits. Never claim a plea agreement was already a court judgment at signing. Give readers one consequential native disclosure or compare control that exposes the later admitted evidence and makes visible text change, with an equivalent cited no-script reading path. Include a source-linked dated SVG timeline, complete baseline numbers in plain semantic HTML with scripts off, no remote assets, and phone-safe cards. At 360 pixels wide and wider, the page fits the screen and nothing scrolls sideways, not even inside a timeline, table or chart box; the timeline scales to the width; no word or amount ever breaks mid-word; narrow tables become stacked cards; each source shows as a short named link with its URL in the link, never printed as page text. A keyboard can operate the control and reduced-motion mode preserves the evidence.
The later ICCT statement VW6 names the three previously anonymized vehicles. Match their after-treatment descriptions to the original labels, cite VW6, and keep those identities strictly in the later column.


reveal.json preserves original route multiples, the dated later source claims, legal status, and explicit original unknowns. reveal-check.py independently parses the original and later source texts without importing audit.py, independently verifies all material JSON and tagged HTML numbers, source URLs and date-column boundaries, rejects attribution of software to the May report and missing vehicle C, and demonstrates at least three distinct in-memory corruptions with --self-test. Run reveal-check.py and reveal-check.py --self-test; report exit codes.

Human check: May 2014 study: A max 35.00x, B max 18.95x, C rural uphill 9.51x; all three must stay, with the lab vs road comparison. September 18 2015 EPA NOV is an allegation, and EPA says investigation followed the WVU/ICCT study. January 2017 signed plea section 1.E stipulates Exhibit 2 true; Exhibit 2 paragraph 52 explicitly refers to the ICCT study and paragraph 53 describes subsequent CARB/EPA tests. Do not retroject defeat-device knowledge into May 2014. Check reveal-check.py and --self-test, dated columns, interaction and no-script baseline.

When we checked the recording: 2026-10-14 re-record (360px prompt): exit 0, no changed inputs; in a clean rebuilt folder check.py, --self-test, reveal-check.py and --self-test all exit 0; headline call and key figures match the earlier referee-checked run; headless sweep at 360/375/390/1280 with all disclosures open: no element past the edge, no sideways scroller, no printed URLs; every control changes visible text and re-sweeps clean; no external requests

Do it for real

For a live emissions complaint, preserve original instrument files, calibration records and vehicle condition, and ask a qualified regulator or emissions specialist to assess the applicable test procedures. A road-to-lab comparison justifies questions; it is not itself a legal determination of a defeat device.

Why an agent, not a chat window

An agent extracts a source table with missing entries, reconciles miles and kilometers, calculates route-by-route ratios for three vehicles, and makes a dated investigation decision with an independently executed checker. The later fresh session tests that decision against the actual notice and a corporate plea.

Go deeper

Why the prompt is written this way

The recorded runs

ToolModelFirst run tookFiles madeSessions
OMP 18.11.0openai-codex/gpt-6-sol8 min 01 s4first session + 1 later

OMP completed both dated sessions: a selectable vehicle comparison in the blind page and a native disclosure of the later corporate stipulation. Claude Code's final attempt was blocked by its provider quota after the desktop overflow fix, so no passing cross-tool comparison is claimed.

Push it further