Typed Iris requests expose ModelLocator.local_path as a required caller input. Object-store targets are materialized into that path, while an immutable Hugging Face target cannot be represented: ModelSource accepts only object-store URIs and rejects source metadata paired with a Hub repo ID. Callers therefore have to choose between supplying a launcher-owned staging path and dropping the exact Hub revision.
This also makes the target-model contract inconsistent with speculative draft models, whose public configuration contains only a source URI and immutable identity.
Done when:
- Typed job callers provide only the target source URI and immutable identity; they do not choose a task-local path.
- Hugging Face repositories retain and load the requested commit through training, rollout, resume, and terminal export.
- S3 and GCS targets retain their immutable identity and use an implementation-owned cache or staging directory when a downstream loader requires a filesystem path.
- Existing unpinned Hub repo IDs remain supported during migration.
- Launcher tests cover immutable Hugging Face and object-store target locators end to end.
Typed Iris requests expose
ModelLocator.local_pathas a required caller input. Object-store targets are materialized into that path, while an immutable Hugging Face target cannot be represented:ModelSourceaccepts only object-store URIs and rejects source metadata paired with a Hub repo ID. Callers therefore have to choose between supplying a launcher-owned staging path and dropping the exact Hub revision.This also makes the target-model contract inconsistent with speculative draft models, whose public configuration contains only a source URI and immutable identity.
Done when: