From 60ff4fe4a0d44db88c8c80cf30933c7dd785992d Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Tue, 11 Aug 2026 11:14:40 -0700 Subject: [PATCH] fix(agents): model rehearsal modes as discriminants --- src/commands/agents.db-rehearsal.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/commands/agents.db-rehearsal.ts b/src/commands/agents.db-rehearsal.ts index 9f9dbcdf217e..9686b20195d0 100644 --- a/src/commands/agents.db-rehearsal.ts +++ b/src/commands/agents.db-rehearsal.ts @@ -68,14 +68,16 @@ type InventoryRequest = { configPath: string; }; -type RehearsalRequest = { +type RehearsalRequestBase = { schemaVersion: 1; - mode: "migrate" | "read-only"; privateStateRoot: string; agents: AgentDatabaseRequest[]; pluginPersistence: PluginPersistenceDeclaration[]; }; +type RehearsalRequest = RehearsalRequestBase & + ({ mode: "migrate" } | { mode: "read-only" }); + type ParsedRequest = InventoryRequest | RehearsalRequest; type DatabaseSnapshot = {