feat(workspaces): own lifecycle through runtimes

Reconcile runtime placement and lifecycle by workspace identity, preserve state through archive and recovery, and make deletion, observation replay, scripts, and resource cleanup convergent across local, worktree, and Docker runtimes.
This commit is contained in:
Mohamed Boudra
2026-08-11 16:49:27 +02:00
parent 36241cbd87
commit cbf59f4c96
69 changed files with 3766 additions and 865 deletions
+3
View File
@@ -3314,6 +3314,9 @@ export const WorkspaceDescriptorPayloadSchema = z
projectCustomIconRevision: z.string().nullable().optional(),
projectRootPath: z.string(),
workspaceDirectory: z.string().optional(),
// Explicit capability for host editor/file-manager integrations. Runtime-local cwd is not enough.
// COMPAT(host-visible-path): added in v0.3.1; older daemons omit this capability.
hostVisiblePath: z.string().optional(),
// COMPAT(worktreeSlug): added in v0.2.6, remove optional after 2027-01-31.
// Present only for Paseo-owned worktrees; this is the basename of their root directory.
worktreeSlug: z.string().optional(),