Synthetic assurance scenarios
Use these small fixtures to check behavior with declared truth before evaluating real research. They require no provider credentials, network, GPU or native wheel.
uv run python -m quant_platform.scenarios null_signal --seed 7 --output /external/data/null-signal
The output directory must be new. Its manifest uses quant.assurance-scenario.v1
and records the seed, CSV input hashes/types and expected invariants. The reader
checks identity, containment, file hashes and shapes before returning data.
from pathlib import Path
from quant_platform.scenarios import read_scenario
bundle = read_scenario(Path("/external/data/null-signal/manifest.json"))
signals = bundle.frames["signals"]
print(bundle.truth)
Available scenarios are null_signal (constructed orthogonal predictions and
returns), industry_confound (sector-only prediction), delayed_revision
(availability and later correction), partial_fill (ledger and shortfall truth)
and sequence_gap (observed missing channel sequence).
Consumer tests exercise neutralization, execution accounting and event provenance. A contiguous observed subsequence does not establish a complete exchange feed: filtering, resets and provider conventions still matter. Python/Rust replay parity requires the optional native wheel; unavailable native tests are skipped explicitly. Synthetic statistical or cost behavior is not evidence of real strategy performance.
Latest visible revisions
PointInTimeDataView.at(clock).read_latest(name, identity_cols=[...],
revision_col='revision') selects only available rows, then the latest availability
and caller-declared comparable revision per identity. Unknown keys and identical
identity/availability/revision ties fail. Numeric revisions sort numerically;
string revisions sort lexically, so supply an ordered revision field rather than
an opaque identifier. The original read(name) still returns all visible rows.
Date-only disclosure metadata does not supply an intraday publication time. Keep its documented conservative date policy separate from timestamp-aware reads.