Measure the capability you need
These are established evaluation concerns, not new Multivon metrics. See the
decision-focused position paper. Use upstream
video tools such as WorldFoundry
or WorldModelBench for their supported outputs;
their results do not establish this profile’s control performance.
Capture an actual reference and forecast
Install the existing Gymnasium extra:initial_state and
actions. It returns exactly one vector per supplied action. It may also return
aligned standard_deviation vectors for marginal Gaussian diagnostics and a
portable metadata object describing the method. Positive finite deviations,
finite coordinates and matching dimensions are required. Do not attach future
truth through the callback’s closure or global state.
planned_actions must match the actually executed prefix. Freeze that sequence
before simulation: its length must not disclose when the reference terminates.
If omitted, the API explicitly records action_scope="observed_prefix"; the
model then knows the reference-dependent sequence length. This mode is useful
for saved-prefix diagnostics but cannot claim a predeclared forecast experiment.
Preserve missing evidence
ForecastEvidence retains the bound native episode, request, returned forecast,
model/contract IDs and errors. References with simulator/setup/cleanup failures
receive simulator_error, and the model is not called. Failed or malformed model
responses receive model_error. Neither becomes a quality score. A digest checks
content consistency, not authenticity or the independence of an oracle.
Valid finite prefixes can be scored without natural episode termination.
Horizons after the observed prefix are censored; do not invent absorbing
states or call env.step after termination to fill them. Report the denominator
at every horizon and, when comparing horizon curves, also consider the same
source cohort. Sources surviving longer can differ from those that terminate.
forecast_metrics reports signed/absolute error in each coordinate’s physical
unit. When standard deviations are supplied, it also reports nominal interval
bounds, observed coverage and marginal Gaussian negative log density. Density is
not probability; its logarithm depends on units and can be negative. Missing
uncertainty stays unavailable. This API does not prove Gaussian assumptions or
calibration, and it does not combine unlike physical units into a quality score.
Connect to release evidence
forecast_case_result(forecast, tolerances={...}) applies explicit per-coordinate
absolute-error tolerances and produces normal saved trials. Checks are named
dynamics/<coordinate>/h<horizon>. Censored checks are skipped. Require their
coverage through an AcceptancePolicy; an aggregate pass rate alone can omit
missing horizons. Simulator failures become evaluator errors with their source
identified, while model failures remain model errors.
Choose tolerances from the application’s failure consequences, not a universal
world-model threshold. The bridge’s model ID is caller supplied: record the
checkpoint/configuration digest and preserve upstream model artifacts yourself.
The synchronous callback cannot interrupt a blocked prediction; use your existing
execution framework for process isolation, deadlines and cancellation.

