Skip to main content

Module version

Module version 

Source
Expand description

The one compatibility identity that crosses a Phoxal process boundary.

Two Phoxal binaries speak the same contracts exactly when they were built from the same framework train, so the framework’s SemVer version is that statement in full: one FrameworkVersion per participant, compared for exact equality. There is no second, per-boundary identity to negotiate, and no way for a bus, launch, or document claim to disagree with the train that produced it.

The schema tags on persisted documents (phoxal/runtime-bundle/v0, phoxal/participant-metadata/v0) are not identities of this kind. They are parse-time format discriminators owned by the document that carries them: a reader refuses a tag it does not implement before it looks at any field.

The identity lives on the process-boundary floor rather than in the crate that implements a contract, because the record that declares it (crate::metadata::ParticipantMetadata) sits below phoxal-bus, phoxal-api, and phoxal-manifest in the graph.

Structs§

FrameworkVersion
The framework train one binary was built from, and therefore the whole of what it claims about compatibility.
FrameworkVersionError
A framework version that is not the canonical SemVer spelling of a version this type can represent.

Enums§

CompatibilityLine
The SemVer line a FrameworkVersion belongs to.