Files
LocalAI/core/backend
Ettore Di Giacinto fd809c23f9 harden(model-artifacts): name the source repo when a companion is unresolved
Defensive follow-up to #11075. It does NOT fix the longcat-video remote-load
failure observed earlier — that turned out to be a stale worker backend
(predating #10949, so it lacked _resolve_option_path) and was fixed by
upgrading the backend. This only hardens the option-synthesis path.

withCompanionArtifactOptions previously dropped a declared companion artifact
whenever it had no resolved snapshot, emitting nothing. A dropped companion is
invisible to the backend, which then falls back to its own hardcoded default and
fails far from the cause. Instead, fall back to the companion's DECLARED source
repository id so the backend fetches the artifact the config actually asked for;
the resolved snapshot path (the staged, no-download fast path) is still
preferred whenever the companion is resolved, so the healthy path is unchanged.
The fallback logs a warning so the missing controller-side resolution stays
diagnosable.

The synthesis is factored into an exported ManagedCompanionOptions /
CompanionArtifactOptions so the distributed reconciler can re-derive the same
options when it replays a stored proto blob (next commit).

Assisted-by: Claude Code:claude-opus-4-8[1m] [Read] [Edit] [Bash]

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
2026-07-23 21:25:48 +00:00
..