diff --git a/src/cli/src/commands/get.ts b/src/cli/src/commands/get.ts index c55f572..ea78f33 100644 --- a/src/cli/src/commands/get.ts +++ b/src/cli/src/commands/get.ts @@ -408,6 +408,17 @@ function toApplyDocs(resource: string, items: unknown[]): Array<{ kind: string } const kind = RESOURCE_KIND[resource] ?? resource; return items.map((item) => { const cleaned = stripInternalFields(item as Record); + // Llm-specific: the new virtual-provider lifecycle fields collide with + // the apply-doc `kind` envelope (the schema uses `kind: public|virtual`) + // and aren't apply-able anyway — they're derived runtime state managed + // by VirtualLlmService. Drop them so YAML round-trips stay clean. + if (resource === 'llms') { + delete cleaned['kind']; + delete cleaned['status']; + delete cleaned['lastHeartbeatAt']; + delete cleaned['inactiveSince']; + delete cleaned['providerSessionId']; + } return { kind, ...cleaned }; }); }