qat.experimental.system_data.materialisers.boundary module
Experimental compiler materialisation boundary orchestrator.
Architecture overview
This module is the single public boundary entrypoint where external source data crosses into compiler-owned canonical system data.
Boundary stages
- Resolve source type/version from payload metadata or payload structure
via descriptor-resolution helpers.
Resolve source version into a registered source-specific plugin.
Run plugin trust/integrity verification for the source/version.
Validate source additional data using the plugin-defined schema.
Dispatch to the plugin materialiser to construct canonical data.
Extension points
To add a new source or source version:
Implement a source-specific plugin conforming to
SourceMaterialiserPlugin.- Register it with
register_materialiser_pluginfrom qat.experimental.system_data.materialisers.plugins.
- Register it with
Each plugin owns source-version dispatch, additional-data validation schema, integrity verification, and materialisation behavior.
- materialise(*, source_payload, source_additional_data=None)
Materialise canonical system data from a supported external source.
- Parameters:
- Return type:
- Returns:
Canonical system data.
- Raises:
UnsupportedSourceError – If source type is unsupported.
UnsupportedSourceVersionError – If source version is unsupported.
SourceValidationError – If source metadata/additional-data validation fails.
MaterialisationError – Passthrough for structured plugin-raised failures.
SourceIntegrityError – If boundary trust/integrity verification fails. The dispatch route is source-type and source-version specific. Unsupported combinations fail early with structured boundary errors.