Skip to content

OrbitFabric v0.6.0 — End-to-End Mission Data Flow Evidence

Status: Released
Scope: End-to-End Mission Data Flow Evidence


Summary

OrbitFabric v0.6.0 introduces the first end-to-end contract-level Mission Data Flow Evidence slice.

This release connects the previously introduced contract layers:

Payload Contract
        -> Data Product Contract
        -> Storage Intent
        -> Downlink Intent
        -> Contact Window Assumption
        -> Downlink Flow Contract
        -> Commandability and Autonomy Contract
        -> End-to-End Mission Data Flow Evidence

The feature remains deliberately narrow.

It does not implement real payload data generation, onboard storage, downlink queues, contact scheduling, RF behavior or ground integration.

It records deterministic evidence that declared Mission Model assumptions are connected and inspectable.


Added

v0.6.0 adds:

command expected_effects.data_products
OF-CMD-008 / OF-CMD-009 diagnostics
simulation data-flow evidence records
JSON data_flow_evidence output
scenario expect.data_flow assertions
OF-SCN-014 through OF-SCN-017 diagnostics
payload_data_flow_evidence demo scenario
generated data_flow.md documentation
orbitfabric gen data-flow command
data_flow.md included in standard orbitfabric gen docs output

Command-declared data product effects

Commands may now declare expected data product effects:

expected_effects:
  data_products:
    - payload.radiation_histogram

This makes the command-to-data-product relationship explicit in the Mission Model.


Scenario data-flow evidence

Scenarios may now assert data-flow evidence:

expect:
  data_flow:
    data_product: payload.radiation_histogram
    triggered_by_command: payload.start_acquisition
    storage_intent_declared: true
    downlink_intent_declared: true
    eligible_downlink_flow: science_next_available_contact
    contact_window: demo_contact_001

The simulator checks this against recorded contract-level evidence.


Generated documentation

The standard documentation generator now produces:

generated/docs/data_flow.md

when running:

orbitfabric gen docs examples/demo-3u/mission/

A dedicated generator is also available:

orbitfabric gen data-flow examples/demo-3u/mission/ \
  --output-file generated/docs/data_flow.md

Demo mission

The synthetic demo-3u mission now includes:

examples/demo-3u/scenarios/payload_data_flow_evidence.yaml

It demonstrates:

payload.start_acquisition
        -> payload.radiation_histogram
        -> storage intent declared
        -> downlink intent declared
        -> science_next_available_contact
        -> demo_contact_001

Validation baseline

The release baseline is:

ruff check .
pytest
mkdocs build --strict

orbitfabric --version

orbitfabric lint examples/demo-3u/mission/ \
  --json generated/reports/lint_report.json

orbitfabric gen docs examples/demo-3u/mission/

orbitfabric gen data-flow examples/demo-3u/mission/ \
  --output-file generated/docs/data_flow.md

orbitfabric sim examples/demo-3u/scenarios/battery_low_during_payload.yaml \
  --json generated/reports/battery_low_during_payload_report.json \
  --log generated/logs/battery_low_during_payload.log

orbitfabric sim examples/demo-3u/scenarios/payload_data_flow_evidence.yaml \
  --json generated/reports/payload_data_flow_evidence_report.json \
  --log generated/logs/payload_data_flow_evidence.log

Expected result:

orbitfabric 0.6.0
all checks passing
lint result: PASSED
docs generation: PASSED
data-flow docs generation: PASSED
scenario result: PASSED

Non-Goals

v0.6.0 intentionally does not introduce:

real payload file generation
real onboard storage runtime
file-system behavior
compression behavior
real downlink queue execution
real contact scheduling
RF behavior
live ground integration
CCSDS/PUS/CFDP runtime behavior
runtime skeleton generation
flight-ready software

These are not missing pieces of v0.6.0.

They remain intentionally deferred.


Architectural Meaning

v0.6.0 completes the first end-to-end Mission Data Chain evidence slice.

OrbitFabric can now show that a command expected to produce a data product can be traced to declared storage intent, downlink intent, eligible downlink flows and matching contact windows.

That is the correct contract-level step before generated runtime skeletons in v0.7.


Final Position

OrbitFabric v0.6.0 remains a Mission Data Contract framework.

Data-flow evidence is deterministic contract evidence.

It is not payload processing, storage runtime, downlink runtime, ground software or flight software.