Skip to content

v0.8.1 - Contract Introspection Surface

OrbitFabric v0.8.1 introduces the first Core-owned contract introspection surface.

The release adds a deterministic model_summary.json report generated from the loaded Mission Model.

It is a narrow release.

It does not introduce entity indexing, relationship manifests or plugin behavior.


Purpose

The v0.8.1 goal is to let downstream tools ask a first stable question:

What contract domains are present in this mission?

That answer must come from OrbitFabric Core.

It must not be reconstructed by downstream tools from raw YAML, generated files or human-oriented CLI output.


Added

v0.8.1 adds:

orbitfabric.export package
model_summary_to_dict(model, mission_dir)
write_model_summary(model, mission_dir, output_file)
orbitfabric export model-summary command
model_summary.json output
contract domain counts
contract domain source file metadata
required/present domain status
explicit boundary flags
CLI tests
model summary export tests

CLI

Generate the model summary report with:

orbitfabric export model-summary examples/demo-3u/mission/ \
  --json generated/reports/model_summary.json

Default output:

generated/reports/model_summary.json

Output

The generated report uses:

kind: orbitfabric.model_summary
summary_version: 0.1

It contains:

mission identity
source mission directory
boundary flags
domain counts
domain records

Boundary

v0.8.1 intentionally does not introduce:

new Mission Model semantics
entity index
entity records
relationship manifest
relationship graph
source line or column tracking
YAML node location tracking
plugin API
plugin discovery
Studio-specific API
runtime behavior
ground behavior
versioned plugin surface

Why this matters

This release prepares OrbitFabric Core for downstream tools and future plugin boundaries.

The important architectural decision is:

Core exports structured surfaces.
Downstream tools consume them.
Downstream tools do not infer contract semantics privately.

Validation

The release validation baseline is:

ruff check .
pytest
mkdocs build --strict

Manual smoke command:

orbitfabric export model-summary examples/demo-3u/mission/ \
  --json generated/reports/model_summary.json

Expected result:

Result: PASSED