@fabricorg/compiler
Build-time compiler for versioned Fabric module manifests. It normalizes v1/v2 inputs, produces a stable namespace-ordered IR and SHA-256 manifest digest, runs optional conformance adapters, classifies semantic compatibility, and invokes deterministic generator targets.
Adding or removing an action finalization protocol is classified as a breaking action-contract
difference because consumers must review Host transaction and lifecycle requirements.
Changing an action's stagesInvocations allowlist is classified as potentially breaking, alongside
policy and permission changes, because it changes which descendant mutations Host may accept.
Changing stagedInvocationPrincipals is also potentially breaking because it changes the identity
under which an accepted descendant is entitled, admitted, authorized, and executed.
Required invariants fail closed during compilation when their JSON Schema keyword, state machine,
or policy reference does not resolve. Host-adapter and application-owned evidence is resolved by an
explicit CertificationProfile; declaring application ownership is never treated as proof.
It does not load live modules, execute handlers, or run inside @fabricorg/platform.