Ticket 064 — Batch Scenario and Batch Propagate Modes¶
Status: Planned¶
Problem¶
BatchManifest (batch.v1) only supports estimate runs. There is no way
to batch-run scenarios or stochastic propagations from a manifest file.
A CI pipeline that wants to run 20 scenarios against one vehicle change
must script individual CLI calls with no structured output. Real teams
maintaining a library of scenarios for regression testing need this.
Acceptance Criteria¶
BatchManifestgains an optionalrun_typefield:"estimate"(default),"scenario", or"propagate".- For
run_type: "scenario", eachBatchRunreferences a scenario file instead of (or in addition to) mission + vehicle. - For
run_type: "propagate", eachBatchRunreferences a stochastic plan file. bvlos-sim batch manifest.yamldetectsrun_typeand dispatches to the appropriate runner.- The batch table output is extended with
statuscolumns appropriate for each run type (scenario pass/fail, propagate feasibility rate). - The
--outputflag writes per-run envelopes to a directory (one JSON file per run ID). - Existing
batch.v1manifests withoutrun_typedefault to estimate and are fully backwards compatible. - At least one CLI-level test per run type.
Scope¶
schemas/batch.py— addrun_typefield and scenario/propagate run variantsadapters/batch_support.py— dispatch by run typeadapters/batch_io.py— schema version bump or extensionadapters/cli_batch_support.py— output per-run filesadapters/cli.py— batch command updatedocs/USAGE.md— document new run typestests/— new batch scenario and propagate tests
Notes¶
- The manifest format version should remain
batch.v1with a new optional field rather than bumping tobatch.v2, as long as old manifests are fully compatible. - Per-run output files follow the same envelope format as the individual commands (scenario-envelope.v2, stochastic-envelope.v1).