mirror of
https://github.com/stablyai/orca.git
synced 2026-11-01 01:27:35 +00:00
feat(wsl-mover): pause a moving project's terminals through Sleep and prove they exited (D1b-5d) (#28820)
* feat(wsl-mover): pause a moving project's terminals through Sleep and prove they exited (D1b-5d) * fix(wsl-mover): gate again under the fence, swap journal phases atomically, keep sessions frozen through commit (D1b-5d) * test(wsl-mover): the fence e2e walks the journal one phase at a time, as a move writes it (D1b-5d)
This commit is contained in:
@@ -73,6 +73,15 @@ export const uiClipboardAndWindowControlsApi = {
|
||||
ipcRenderer.on('ui:sleepWorktree', listener)
|
||||
return () => ipcRenderer.removeListener('ui:sleepWorktree', listener)
|
||||
},
|
||||
onWorktreeSleepRequest: (callback) => {
|
||||
const listener = (_event: Electron.IpcRendererEvent, request: Parameters<typeof callback>[0]) =>
|
||||
callback(request)
|
||||
ipcRenderer.on('ui:worktreeSleepRequest', listener)
|
||||
return () => ipcRenderer.removeListener('ui:worktreeSleepRequest', listener)
|
||||
},
|
||||
respondWorktreeSleep: (response) => {
|
||||
ipcRenderer.send('ui:worktreeSleepResponse', response)
|
||||
},
|
||||
onResumeSleepingAgents: (callback: (data: { worktreeId: string }) => void): (() => void) => {
|
||||
const listener = (_event: Electron.IpcRendererEvent, data: { worktreeId: string }) =>
|
||||
callback(data)
|
||||
|
||||
@@ -48,6 +48,10 @@ import type {
|
||||
SessionTabCloseRequest,
|
||||
SessionTabCloseResponse
|
||||
} from '../../shared/session-tab-close'
|
||||
import type {
|
||||
WorktreeSleepRequest,
|
||||
WorktreeSleepResponse
|
||||
} from '../../shared/worktree-sleep-request'
|
||||
|
||||
export type CloseActiveTabPayload = { sourceId: string }
|
||||
|
||||
@@ -262,6 +266,8 @@ export type UiCommandEventApi = {
|
||||
onTerminalTabCloseRequest: (callback: (request: TerminalTabCloseRequest) => void) => () => void
|
||||
respondTerminalTabClose: (response: TerminalTabCloseResponse) => void
|
||||
onSleepWorktree: (callback: (data: { worktreeId: string }) => void) => () => void
|
||||
onWorktreeSleepRequest: (callback: (request: WorktreeSleepRequest) => void) => () => void
|
||||
respondWorktreeSleep: (response: WorktreeSleepResponse) => void
|
||||
onResumeSleepingAgents: (callback: (data: { worktreeId: string }) => void) => () => void
|
||||
onTerminalZoom: (callback: (direction: 'in' | 'out' | 'reset') => void) => () => void
|
||||
onSystemResumed: (callback: () => void) => () => void
|
||||
|
||||
Reference in New Issue
Block a user