mirror of
https://github.com/stablyai/orca.git
synced 2026-10-01 16:02:03 +00:00
* fix(wsl): scan sessions only in running distros * test(ai-vault): pin WSL discovery platform * fix(wsl): suspend transcript watchers for stopped distros * test(wsl): pin transcript scan gate platform * fix(wsl): settle stopped transcript loading * fix(wsl): add last-known-good fallback and backoff to running-distro discovery listRunningWslDistrosAsync failed closed on any probe error (timeout, ENOENT, wsl.exe hiccup), indistinguishable from "no distros running". A 2s poll (wsl-transcript-running-observer.ts) calls it indefinitely while any WSL transcript tab is open, so a persistently broken wsl.exe silently made every WSL session vanish app-wide with no way to tell "discovery broken" from "distro stopped", and re-spawned wsl.exe every 2s forever. Extract a dedicated cache/backoff module (wsl-running-distro-cache.ts, mirroring the sibling machinery already in wsl.ts for the full distro list) so a probe failure falls back to the last-known-good running-distro list and backs off further probes, while a genuine empty result (no distros running) stays authoritative. Add a consumer-level test simulating a sustained wsl.exe outage across a live transcript-watcher polling session, asserting the observer keeps reporting "running" and that real wsl.exe spawns stay bounded. * fix(build): list the new WSL cache module in the web typecheck project config/tsconfig.tc.web.json enumerates its files explicitly, so a new module imported by wsl.ts fails the full typecheck with TS6307 until it is listed. pnpm tc:node passes without it, which is how this got missed. src/main/wsl.ts(13,8): error TS6307: File 'src/main/wsl-running-distro-cache.ts' is not listed within the file list of project 'config/tsconfig.tc.web.json'. --------- Co-authored-by: OrcaWin <293788423+OrcaWin@users.noreply.github.com> Co-authored-by: Neil <4138956+nwparker@users.noreply.github.com>
41 lines
1.5 KiB
JSON
41 lines
1.5 KiB
JSON
{
|
|
"extends": "./tsconfig.web.json",
|
|
"include": [
|
|
"../src/renderer/src/env.d.ts",
|
|
"../src/renderer/src/**/*",
|
|
"../src/renderer/src/**/*.tsx",
|
|
"../src/preload/api-types.ts",
|
|
"../src/preload/api/**/*",
|
|
"../src/shared/**/*",
|
|
"../src/main/gitlab/mappers.ts",
|
|
"../src/main/ipc/worktree-branch-name.ts",
|
|
"../src/main/ipc/worktree-logic.ts",
|
|
"../src/main/ipc/worktree-linked-work-item-metadata.ts",
|
|
"../src/main/ipc/worktree-metadata-merge.ts",
|
|
"../src/main/ipc/worktree-path-comparison.ts",
|
|
"../src/main/wsl-availability.ts",
|
|
"../src/main/wsl-distro-list-output.ts",
|
|
"../src/main/wsl-distro-retry.ts",
|
|
"../src/main/wsl-running-distro-cache.ts",
|
|
"../src/main/wsl.ts",
|
|
"../src/main/persistence/applying-settings/ui-state-read.ts",
|
|
"../src/main/persistence/applying-settings/ui-state-update.ts",
|
|
"../src/main/persistence/applying-settings/ui-selection-normalization.ts",
|
|
"../src/main/persistence/applying-settings/ui-interaction-merge.ts",
|
|
"../src/main/protected-secret-persistence.ts",
|
|
"../src/main/startup/serve-desktop-activation.ts",
|
|
"../src/main/startup/serve-mode-argv.ts",
|
|
"../src/main/startup/single-instance-lock.ts",
|
|
"../src/main/startup/startup-diagnostics.ts",
|
|
"../src/main/window/focus-existing-window.ts",
|
|
"../src/main/window/foreground-activation-policy.ts",
|
|
"../src/main/window/macos-app-activation.ts"
|
|
],
|
|
"compilerOptions": {
|
|
"paths": {
|
|
"@renderer/*": ["../src/renderer/src/*"],
|
|
"@/*": ["../src/renderer/src/*"]
|
|
}
|
|
}
|
|
}
|