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

  1. Resolve source type/version from payload metadata or payload structure

    via descriptor-resolution helpers.

  2. Resolve source version into a registered source-specific plugin.

  3. Run plugin trust/integrity verification for the source/version.

  4. Validate source additional data using the plugin-defined schema.

  5. Dispatch to the plugin materialiser to construct canonical data.

Extension points

To add a new source or source version:

  1. Implement a source-specific plugin conforming to SourceMaterialiserPlugin.

  2. Register it with register_materialiser_plugin from

    qat.experimental.system_data.materialisers.plugins.

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:
  • source_payload (dict[str, Any]) – Raw source payload as a parsed JSON-like dict.

  • source_additional_data (Optional[dict[str, Any]]) – Strict source/version-specific additional datasets needed by the selected source materialiser.

Return type:

CanonicalSystemData

Returns:

Canonical system data.

Raises: