# Runtime Compatibility ## Evidence model `RuntimeCompatibilityAssessment` records the exact ArtifactSet, RuntimeProfile, ComputeNode, adapter/version, artifact and hardware snapshots, blockers, warnings, approvals, static result and a canonical environment fingerprint. It distinguishes runtime-declared support from locally proven support. Static analysis never claims a model was loaded. ## Common checks - complete, locally available and integrity-verified exact ArtifactSet; - no quarantined/corrupt member, unapproved pickle or remote-code requirement; - all registered artifact locations belong to the target node; - online, enabled and lab-eligible node advertising `runtime.probe.v1`; - GPU presence for CUDA-required profiles, compute capability, driver/CUDA compatibility and VRAM; - environment package, modality and serialization-format declarations; - required model configuration/tokenizer/processor files and shard-index presence; - requested quantization evidence. Resource estimates are stored as `kind=estimated`; only a real probe produces `kind=measured`. ## Runtime-specific inspectors - SentenceTransformers requires safe Transformers files plus `modules.json` and pooling config. - Transformers requires config, tokenizer and Safetensors weights. - vLLM uses Transformers-format checks but remains `requires_probe` until proven for the task. - llama.cpp requires a local GGUF variant; Safetensors alone yields `NO_GGUF_ARTIFACT_VARIANT`. - Diffusers requires a pipeline `model_index.json`; an embedding repository is blocked. - custom runners never receive an implicit compatibility claim. ## Staleness Every read recomputes the canonical fingerprint from current immutable profile/environment identity, artifact evidence and hardware facts. Driver, CUDA, GPU, node state, artifact security/integrity, image or profile changes make prior evidence stale. A stale assessment cannot queue a probe.