Files
deepseek-harness/apps/desktop/scripts/runtime-patch-policy.ts
T

26 lines
1.8 KiB
TypeScript

/** Desktop-specific selection of workspace and runtime-only dependency patches. */
/** A patch shared with the workspace, excluded from runtime installation, or supplied only to Desktop. */
export type DesktopRuntimePatch =
| { scope: 'shared'; reason: string }
| { scope: 'workspace-only'; reason: string }
| { scope: 'runtime-only'; path: string; reason: string }
/** Every workspace patch requires an explicit Desktop decision; runtime-only entries may add or replace a patch. */
export const DESKTOP_RUNTIME_PATCHES: Readonly<Record<string, DesktopRuntimePatch>> = {
'@earendil-works/[email protected]': { scope: 'shared', reason: 'Runtime providers need the streamed argument parsing fix.' },
'@electron/[email protected]': { scope: 'workspace-only', reason: 'Signing executes on the build host.' },
'@fortune-sheet/[email protected]': { scope: 'workspace-only', reason: 'Patched spreadsheet code is embedded in the client bundle.' },
'@fortune-sheet/[email protected]': { scope: 'workspace-only', reason: 'Patched spreadsheet code is embedded in the client bundle.' },
'@yao-pkg/[email protected]': { scope: 'workspace-only', reason: 'The executable packer executes on the build host.' },
'[email protected]': { scope: 'workspace-only', reason: 'DMG format validation executes on the build host.' },
'[email protected]': { scope: 'workspace-only', reason: 'The patched parser is embedded in the client bundle and worker.' },
'[email protected]': { scope: 'shared', reason: 'Runtime terminals need helper resolution and Windows worker cleanup.' },
}
/** Reviewed Desktop dependency constraints, independent of patch selection. */
export const DESKTOP_RUNTIME_DEPENDENCY_OVERRIDES: Readonly<Record<string, string>> = {
// The provider declares ^1.0.2; its patch is qualified against 1.0.2.
'@earendil-works/pi-ai@^1.0.2': '1.0.2',
}