Plans Are Not InterventionsMeasuring and repairing plan leakage in driving world models

Sahil Apage1, Medhansh Abhilash1

1Veermata Jijabai Technological Institute (VJTI), Mumbai

Accepted (Spotlight + Poster) at the CoRL 2026 Workshop on Grounded 4D Multimodal World Models for Autonomous Driving Decision Making

OmniNWM · crashing plan
Repaired · same plan

The plan accelerates into a car stopped at a red light. OmniNWM keeps that car ahead of the ego, so the crash never appears. The repaired world, seen from the same cameras, puts the car back. Bird's-eye strip: where each world places the car, against the real one. Held-out nuScenes, released weights, half speed.

Two questions
A planner needs p(future | do(plan)). Logs teach p(future | plan).
A leak test
Change only the plan. Cars that cannot react should stay put.
The finding
OmniNWM moves the car ahead metre for metre with the plan.
A repair
Past-only queries bring the crash back.
What this work measures. World models are used to judge driving plans and to train policies. We test whether they answer the question a planner asks, find that they read other cars' motion off the plan, measure what that costs, and repair it without retraining.

Abstract

Self-driving systems increasingly use learned world models to judge candidate plans and train policies. This requires predicting what happens if the ego executes a plan, yet a model trained on driving logs learns what happened when drivers chose that plan. These differ because drivers react to traffic: slowing down in the logs usually means the car ahead slowed down, so the model learns to infer other cars' motion from the plan. We call this the plan leak and measure it by changing only the plan and checking whether cars that cannot react move.

In OmniNWM, a 4D driving world model, a plan that drives into the car ahead, even one stopped at a red light, moves that car away by as much as the ego advances, while parked cars barely move, so the crash never appears. Policies trained in a leaky model crash up to 2.8 times as often, and large leaks make planners brake unnecessarily. The cause is how the model sees the plan, not missing data: training on counterfactual plans barely helps, letting each step see only the ego's past removes the leak, and averaging over past-only plans repairs frozen models, bringing OmniNWM's crash back in 16 of 18 scenes.

The plan leak

A planner needs to know what happens if it executes a plan, p(future | history, do(plan)). A model trained on logs learns p(future | history, plan). The two differ whenever the plan carries information about the rest of the world, and in driving it always does: a driver slows down because the car ahead slows down. So when a planner proposes to speed up, a plan-conditioned model moves the car ahead out of the way.

We measure this with one number. Give the model the logged plan and a counterfactual plan that differs only in the ego's motion, and read how far the car ahead moves in the generated future per metre the plan moves the ego further. That slope is the plan leak, β. Within seconds a real car ahead does not react to the car behind it, so the right answer is 0. Parked cars, which no plan can affect, are the control.

What β does to a crash check drag the slider
1.00
The counterfactual plan drives the ego 1 m into the real car. At the moment it truly reaches the car, the model has moved the car β times the extra distance the plan added. The imagined gap closes only by (1 − β) of the extra motion, so near β = 1 every plan looks safe.

OmniNWM moves the car ahead

OmniNWM generates panoramic video with metric depth and semantics, conditioned on the ego's camera pose in every frame. We ran its released weights on 18 held-out nuScenes scenes with a real car up to 25 m ahead in the ego lane, and read the generated car from OmniNWM's own depth and semantics. The counterfactual plan adds the smallest constant acceleration that drives the ego at least 1 m into the real car. All tests were preregistered.

Every test scene pick a scene
Logged plan
Crashing plan
Past-only plan
real car (rear)crashing ego (front)car under the crashing planunder the logged planunder the past-only plan

OmniNWM's front camera under three plans, and where it puts the car ahead. Distances are along the lane, in metres ahead of the ego at the start; the dot marks the real contact of the crashing plan. ▲ marks scenes where the car ahead is stopped. Videos play at half speed.
β = 1.02across the 18 scenes (95% CI 0.98 to 1.08). An independent re-implementation gives 1.00.
0.23metres a parked car moves per metre of plan change, about what imperfect execution alone produces.
0 of 18crashes caught by a check for generated vehicles inside the ego's footprint.

The generated ego does move: visual odometry on the generated frames recovers 86% of the commanded motion. The leak is linear (slope 0.94 over braking, mild and crashing plans) and works both ways. Braking, well within the training distribution, pulls the car ahead towards the ego in all eight scenes where the ego moves. A real car ahead reacts to neither plan. OmniNWM's released collision rule alarms on half of the safe logged plans.

The pattern is general

We ran the same test on four more released world models. Vista, another video model, also keeps the gap, but executes under half of the plan change, so it counts as supporting evidence only. The occupancy models SparseWorld-TC and DOME leak near 1, I²-World about half. Parked cars stay below 0.1 in all three.

car aheadparked cars (control)bars: 95% CI · hover for values
The plan leak β of released world models. Metres the car ahead moves per metre the plan moves the ego; the correct value is 0. At 1 the gap never closes. Vista's parked cars also move with the plan, so its control is uninformative.

Where the leak comes from

Let De and Da be the future displacements of the ego and of another agent. A model fitted to logs learns, to first order, the slope β = Cov(Da, De | h) / Var(De | h). When the ego follows a car, its motion is caused by the lead's, so β > 0, although the true, interventional slope is zero. How much a model absorbs depends on which plan steps it sees when it generates the next moment.

Same data, same network choose the plan input
Object world models on nuScenes vehicle tracks, identical except for the plan steps they see when generating t + 1 (dots: three seeds). Future plan steps encode how the driver will react to the world, so a model that sees them can read the world off the plan. The whole-plan model's leak matches the coupling in the training logs (0.67) with nothing fitted. Repaired: g-computation of the next-0.5 s model.

The causal model, whose world at t + 1 sees the ego only up to t, does not leak (|β| ≤ 0.13 under two plan families) yet keeps the real reaction of a car following the ego. Accuracy rewards the leak: logged-plan error is lowest for the whole-plan model. More counterfactual data does not remove it either. Fine-tuning SparseWorld-TC on counterfactual plans barely changes its leak, from 0.83 to 0.77, or 0.73 with fully random plans.

What the leak costs

Extra ego motion closes the imagined gap by only 1 − β, so near β = 1 crash checks pass every plan. On 653 held-out decisions, trusting SparseWorld-TC's or DOME's verdict does not beat ignoring it; physics is best. The leak also shapes what is learned and planned inside the model.

Policies trained inside each model
Real crash rate on held-out logs at equal progress (3 model × 3 policy seeds). Policies trained in the next-0.5 s model learn that speeding up makes the car ahead drive away.
Braking judged less safe than cruising
Simulator states where each plan is safe, truly and as judged by the whole-plan model. Braking would pull the car ahead back, so the leak inverts the order of plans.

In closed loop, a planner replans every 0.5 s and keeps plans whose predicted gap to every car ahead stays above a margin. To vary only the leak, it judges with the causal prediction plus k times (whole plan − causal). Harm grows with k. In the simulator the whole-plan model brakes hard four to eight times as often as the causal one, and 72% of these brakes are unnecessary. On real nuScenes traffic (log replay, 150 scenes) near-misses rise 1.7- to 3.3-fold at k = 3 for all seeds.

Closed loop, simulator
Hard brakes per episode against leak dose k (0: causal, 1: whole plan). Band: three model seeds.
Closed loop, real traffic
Near-misses (time to collision under 1.5 s) per episode; thin lines: model seeds; dashed: a planner using the true effects.

Repairs

Frozen models can be repaired at test time. g-computation steps a one-step model forward, shows the candidate plan only up to the present, and averages over past-only continuations; it removes the leak and the policy cost of the next-0.5 s model. A whole-plan video model can be repaired for detection: query OmniNWM with a plan that reveals only the past, so no car can respond to the crash, and view that world from the candidate plan's cameras using OmniNWM's own metric depth.

Conditioned on the crashing plan
Repaired · same cameras

The scene follows the picker above. Speckle is re-rendering holes; near contact the camera enters the reconstructed car, so the last frames break up.
conditioned on the crashing planpast-only worldclick a row to load that scene
The gap at the real contact, scene by scene. Where each world puts the car ahead relative to the crashing ego's front, read when the ego truly reaches the real car. Shaded: the car is within 1 m of the crashing ego, so the crash shows. A planner built on such queries still under-reacts to braking cars, so this repair is for detection.

Recommendations

  1. Vary only the plan. Report β with a parked-car control, and check how much of the plan the model executes before reading it.
  2. Condition causally. Video models should place other agents from the ego's past, then render frame t + 1.
  3. Select models by closed-loop decisions against physics and a plan-blind baseline, not by logged-plan accuracy.

Method

5 released world models18 preregistered OmniNWM scenes653 held-out decisions150 real-traffic closed-loop scenes

Models
OmniNWM and Vista (video); SparseWorld-TC, DOME and I²-World (4D occupancy), all with released weights. Object world models trained on nuScenes vehicle tracks with identical network, data and budget, differing only in the plan input.
Leak test
Logged plan against the logged plan plus the smallest constant acceleration that drives the ego at least 1 m into the real car. β is read at the real contact, as the median over scenes with a scene-bootstrap interval, separately for the car ahead and for parked cars. Execution is checked with visual odometry on the generated frames.
Data
Held-out nuScenes validation scenes; OmniNWM scenes with a real car up to 25 m ahead in the ego lane, first 18 in a fixed random order.
Closed loop
A simulator with known true effects, and log replay of real nuScenes traffic. The planner replans every 0.5 s; the leak dose k mixes the causal and whole-plan predictions.
Protocol
Every confirmatory test was committed with the hash of its analysis code before its held-out outputs existed, and an independent re-implementation re-derived the headline numbers.

Citation

@misc{apage2026plans,
  title  = {Plans Are Not Interventions: Measuring and Repairing
            Plan Leakage in Driving World Models},
  author = {Apage, Sahil and Abhilash, Medhansh},
  year   = {2026},
  note   = {CoRL 2026 Workshop on Grounded 4D Multimodal World
            Models for Autonomous Driving Decision Making}
}

A plan is not an intervention.

Sahil Apage · Medhansh Abhilash · VJTI Mumbai