pub fn check_driver_interface(
transport: &str,
name: &str,
version: &str,
contracts: Option<&WitContracts>,
level: &WitLevel,
) -> Result<(), RuntimeError>Expand description
Checks the inference driver’s exports against the transport that names it and the WIT level this host serves.
Under process the driver’s exports must include the process interface at the version
level lists for murmur:driver (for the served level, PROCESS_DRIVER_IFACE) under that
exact name; other instances alongside it are ignored. A driver exporting the process interface
only at other versions does not fit the level and is refused with
RuntimeError::WitLevelMismatch; one exporting no version of it is not a process driver and
is refused with RuntimeError::ProcessDriverInterfaceMissing. Under http it must export
no version of the process interface. contracts is what
murmur_artifact::extract_wit_contracts read out of the driver’s wasm; None (a core
module, or bytes it could not read) counts as exporting nothing. Any other transport passes.