Files
orca/src/main/ipc/filesystem-watcher.ts
T
Neil d140e561a6 Split filesystem watcher responsibilities (#17274)
* Split speech session lifecycle

* Split terminal output scheduler pipeline

* Split mobile browser pane modules

* Prune resolved max-lines suppressions

* Split pane tree equalization logic

* Extract mobile troubleshoot screen styles

* Split external automation manager

* Split main window service attachments

* Split hosted review creation checks

* Split automation dispatch event handling

* Split settings navigation metadata

* Split daemon initialization lifecycle

* Split GitLab item dialog

* Split relay dispatcher layers

* Split mobile host screen

* Retarget mobile view settings source test

* Split runtime file client layers

* Split ports panel layers

* Split runtime environments pane layers

* Split local PTY provider responsibilities

* Split CDP bridge responsibilities

* Split relay Git handler responsibilities

* Track moved relay Git fetch audit

* Split Linear item drawer responsibilities

* Split telemetry event schema responsibilities

* Split resource usage status responsibilities

* Split remote terminal multiplexer responsibilities

* Split Git worktree responsibilities

* Split Codex hook service responsibilities

* Keep mirrored hook trust type private

* Split web runtime session responsibilities

* Split GitHub project view read path

* Split Claude runtime auth responsibilities

* Split runtime RPC server responsibilities

* Split Settings page responsibilities

* Split filesystem watcher responsibilities

* Fix F3-speech for #17123

* Fix F1-cycle for #17131

* Fix F4-navtest for #17157

* Fix F2-allowlist for #17161
2026-08-29 20:24:02 -07:00

36 lines
1.8 KiB
TypeScript

import type { WorktreeWatcherRemoval } from './worktree-watcher-removal'
import {
closeLocalWatcherForWorktreePath,
forgetLocalWatcherRemovalSnapshot,
restoreLocalWatcherAfterFailedRemoval
} from './filesystem-watcher-local-removal'
import {
closeRemoteWatcherForWorktreePath,
forgetRemoteWatcherRemovalSnapshot,
restoreRemoteWatcherAfterFailedRemoval
} from './filesystem-watcher-remote-removal'
export { closeLocalWatcherForWorktreePath } from './filesystem-watcher-local-removal'
export { restoreLocalWatcherAfterFailedRemoval } from './filesystem-watcher-local-removal'
export { forgetLocalWatcherRemovalSnapshot } from './filesystem-watcher-local-removal'
export { closeRemoteWatcherForWorktreePath } from './filesystem-watcher-remote-removal'
export { restoreRemoteWatcherAfterFailedRemoval } from './filesystem-watcher-remote-removal'
export { forgetRemoteWatcherRemovalSnapshot } from './filesystem-watcher-remote-removal'
export { registerFilesystemWatcherHandlers } from './filesystem-watcher-handlers'
export { closeAllWatchers } from './filesystem-watcher-shutdown'
// ── Public API ───────────────────────────────────────────────────────
/** The desktop binding for {@link WorktreeWatcherRemoval}. Installed during startup. */
export const desktopWorktreeWatcherRemoval: WorktreeWatcherRemoval = {
closeLocal: (worktreePath, deadline) =>
deadline
? closeLocalWatcherForWorktreePath(worktreePath, deadline)
: closeLocalWatcherForWorktreePath(worktreePath),
restoreLocal: restoreLocalWatcherAfterFailedRemoval,
forgetLocal: forgetLocalWatcherRemovalSnapshot,
closeRemote: closeRemoteWatcherForWorktreePath,
restoreRemote: restoreRemoteWatcherAfterFailedRemoval,
forgetRemote: forgetRemoteWatcherRemovalSnapshot
}