Package boundaries
opensdl-core: models, identifiers, enums, errors, lifecycle, and the campaign and optimizer contract.
opensdl-schemas: manifests, JSON Schemas, validation.
opensdl-twin: scene bindings, digests, event projection.
opensdl-capabilities: adapters, registry, plugins, conformance.
opensdl-policy: scoped allow and deny decisions.
opensdl-workflows: loading, DAG validation, reference resolution.
opensdl-storage: relational repositories and artifacts.
opensdl-simulation: fault plans, state, replay.
opensdl-runtime: workflows and campaigns.
opensdl-provenance: exports, graphs, propagation.
opensdl-operators: context and typed tools.
opensdl-sdk: public client.
opensdl-cli: command line and generators.
opensdl-controller: composition root.
opensdl-api: HTTP transport.