mirror of
https://github.com/stablyai/orca.git
synced 2026-10-12 16:03:03 +00:00
* fix(remote): recover stalled terminal streams * fix(i18n): localize manual disconnect error * fix(remote): park paired terminals with host snapshots * test(remote): mock authoritative resync snapshots * fix(terminal): defer startup mounts until hydration * fix(remote): raise paired terminal stream capacity * fix(remote): harden terminal recovery lifecycle * fix(remote): preserve calls across control refresh * test(remote): harden paired recovery oracle * test(workspace): seed Jira source context * test(remote): assert raw host terminal identities * test(terminal): keep restore sentinels atomic * test(terminal): keep restore sentinel on one row --------- Co-authored-by: OrcaWin <293788423+OrcaWin@users.noreply.github.com>
39 lines
1.2 KiB
TypeScript
39 lines
1.2 KiB
TypeScript
import { test } from './helpers/orca-app'
|
|
import {
|
|
createRuntimeDesktopPairingOffer,
|
|
launchPairedWebClient
|
|
} from './helpers/paired-electron-client'
|
|
import { runPairedTerminalParkingOracle } from './helpers/paired-terminal-parking-oracle'
|
|
|
|
test('ordinary-parks paired terminals and restores authoritative host scrollback @headful', async ({
|
|
electronApp,
|
|
orcaPage
|
|
}) => {
|
|
test.setTimeout(240_000)
|
|
const seed = await orcaPage.evaluate(() => {
|
|
const state = window.__store?.getState()
|
|
const worktrees = state?.allWorktrees() ?? []
|
|
const active = worktrees.find((worktree) => worktree.id === state?.activeWorktreeId)
|
|
if (!active) {
|
|
throw new Error('Paired retention host has no active seeded worktree')
|
|
}
|
|
return { activeWorktreeId: active.id, repoId: active.repoId }
|
|
})
|
|
const offer = await createRuntimeDesktopPairingOffer(orcaPage)
|
|
const client = await launchPairedWebClient(electronApp, offer, {
|
|
terminalParkingDelayMs: 100
|
|
})
|
|
try {
|
|
await runPairedTerminalParkingOracle(
|
|
client.page,
|
|
{
|
|
fallbackWorktreeId: seed.activeWorktreeId,
|
|
repoId: seed.repoId
|
|
},
|
|
{ hostPage: orcaPage }
|
|
)
|
|
} finally {
|
|
await client.dispose()
|
|
}
|
|
})
|