Adopts a verified, already-completed Imp.Clients.TrainingJob as a workflow step.
Adoption performs no training, trainer dispatch, fusion, or artifact mutation. It
exists so an ordinary consumer can continue a composition such as
BetterTogether from a durable weight artifact produced earlier. Construction
binds the exact job, verified artifact, base program, and base-model identities.
Execution verifies all four again before TrainingJob.rebind/3 starts the
artifact's supported deployment.
Only providers with an Imp content verifier are accepted. Currently those are local MLX-LM fused artifacts and Imp↔TRL artifacts. A changed job, artifact tree, incoming program, or base model fails before rebinding.
Summary
Functions
Binds a completed job to the exact compatible program that may later adopt it.
Types
@type t() :: %Imp.Optimizer.TrainingJobAdoption{ artifact_sha256: String.t(), base_model_identity: map(), job: Imp.Clients.TrainingJob.t(), job_sha256: String.t(), program_sha256: String.t() }
Functions
@spec new(Imp.Clients.TrainingJob.t(), struct()) :: t()
Binds a completed job to the exact compatible program that may later adopt it.
This constructor reads and verifies durable artifact contents but never starts a deployment or invokes a trainer.