Files
orca/pnpm-workspace.yaml
T
Neil 18d25591f9 fix(deps): resolve body-parser and happy-dom security findings (#32983)
* fix(deps): resolve body-parser and happy-dom security findings

* test(mobile): await rich markdown effect cleanup
2026-10-23 17:35:12 -07:00

142 lines
5.5 KiB
YAML

# The desktop host and internal packages share an install. `mobile/` is a separate workspace
# with its own pnpm-workspace.yaml and lockfile, so keep it out of the root
# package graph. Without this file `pnpm -r` auto-discovers mobile/ and its
# nested package, and the root's patchedDependencies fail as ERR_PNPM_UNUSED_PATCH.
#
# native/windows-registry and native/windows-security are listed explicitly rather than reached by a glob: as a `file:`
# dependency pnpm re-linked it on every install (including --frozen-lockfile), and that
# virtual-store churn raced node-gyp reading the same tree, which lost @vscode/windows-process-tree's
# binding.gyp mid-rebuild on Windows CI. A workspace link is resolved once instead.
packages:
- native/windows-registry
- native/windows-security
- src/packages/*
minimumReleaseAge: 4320
# Preserve the existing exception for the explicitly selected Bun 1.4.4 release.
minimumReleaseAgeExclude:
# Security fix for compressed-request crashes (GHSA-27r3-jxmh-p828).
- 'body-parser@2.4.0'
- 'bun@1.4.4'
- '@oven/bun-darwin-aarch64@1.4.4'
- '@oven/bun-darwin-x64@1.4.4'
- '@oven/bun-freebsd-aarch64@1.4.4'
- '@oven/bun-freebsd-x64@1.4.4'
- '@oven/bun-linux-aarch64-android@1.4.4'
- '@oven/bun-linux-aarch64-musl@1.4.4'
- '@oven/bun-linux-aarch64@1.4.4'
- '@oven/bun-linux-x64-android@1.4.4'
- '@oven/bun-linux-x64-musl@1.4.4'
- '@oven/bun-linux-x64@1.4.4'
- '@oven/bun-windows-aarch64@1.4.4'
- '@oven/bun-windows-x64@1.4.4'
shamefullyHoist: true
# Enables pnpm's global virtual store outside CI; under config/ because the repo root only admits
# allowlisted entries.
pnpmfile: config/pnpmfile.cjs
# Orca always launches the user's own resolved Claude CLI via
# pathToClaudeCodeExecutable, so the SDK's bundled ~95 MB-per-platform CLI
# binaries must never be installed. Excluding them is what makes the path
# override mandatory rather than merely preferred.
ignoredOptionalDependencies:
- '@anthropic-ai/claude-agent-sdk-darwin-arm64'
- '@anthropic-ai/claude-agent-sdk-darwin-x64'
- '@anthropic-ai/claude-agent-sdk-linux-arm64'
- '@anthropic-ai/claude-agent-sdk-linux-arm64-musl'
- '@anthropic-ai/claude-agent-sdk-linux-x64'
- '@anthropic-ai/claude-agent-sdk-linux-x64-musl'
- '@anthropic-ai/claude-agent-sdk-win32-arm64'
- '@anthropic-ai/claude-agent-sdk-win32-x64'
# Development and test jobs need only their host. Cross-target packaging opts in
# with pnpm install:release (or explicit pnpm install --os / --cpu targets).
supportedArchitectures:
os:
- current
cpu:
- current
allowBuilds:
'@parcel/watcher': true
'@swc/core': false
'@vscode/windows-process-tree': false
agent-browser: false
bun: true
cpu-features: true
electron-winstaller: false
esbuild: true
msw: false
node-pty: true
ssh2: false
'@orca/windows-registry': false
'@orca/windows-security': false
# Links the project's @types/<peer> next to every package that peer-depends on <peer> (e.g.
# @types/react beside lucide-react), so peer types resolve under the global virtual store.
addMissingPeerTypes: true
# These packages' published .d.ts import modules they never declare. Hoisting hides that,
# but under the global virtual store each package sees only its declared deps, so the types
# silently became `any` or (jest-dom) the vitest matcher augmentation vanished.
packageExtensions:
'@testing-library/jest-dom':
dependencies:
'@types/aria-query': ^5.0.1
peerDependencies:
vitest: '*'
peerDependenciesMeta:
vitest:
optional: true
'@tiptap/extension-list':
dependencies:
prosemirror-model: ^1.0.0
# electron-vite reads electron/package.json and the binary path at build and dev time.
electron-vite:
peerDependencies:
electron: '*'
electron-updater:
peerDependencies:
electron: '*'
peerDependenciesMeta:
electron:
optional: true
mermaid:
dependencies:
'@iconify/types': ^2.0.0
'@types/d3-selection': ^3.0.0
type-fest: ^5.0.0
playwright-core:
peerDependencies:
electron: '*'
peerDependenciesMeta:
electron:
optional: true
remark-parse:
dependencies:
vfile: ^6.0.0
overrides:
hono@>=4.12.4 <4.13.11: 4.13.11
dompurify@<3.4.17: 3.4.17
# Upstream markdown/math packages still require the vulnerable 0.16 line.
katex@>=0.11.0 <0.18.2: 0.18.10
patchedDependencies:
'@xterm/addon-image@0.10.0-beta.301': config/patches/@xterm__addon-image@0.10.0-beta.301.patch
node-pty@1.1.0: config/patches/node-pty@1.1.0.patch
'@xterm/addon-ligatures@0.11.0-beta.301': config/patches/@xterm__addon-ligatures@0.11.0-beta.301.patch
'@xterm/addon-webgl@0.20.0-beta.300': config/patches/@xterm__addon-webgl@0.20.0-beta.300.patch
'@xterm/addon-search@0.17.0-beta.301': config/patches/@xterm__addon-search@0.17.0-beta.301.patch
'@xterm/addon-serialize@0.15.0-beta.301': config/patches/@xterm__addon-serialize@0.15.0-beta.301.patch
'@xterm/xterm@6.1.0-beta.304': config/patches/@xterm__xterm@6.1.0-beta.304.patch
lint-staged@16.4.0: config/patches/lint-staged@16.4.0.patch
'@vscode/windows-process-tree@0.8.0': config/patches/@vscode__windows-process-tree@0.8.0.patch
i18next-cli@1.74.2: config/patches/i18next-cli@1.74.2.patch
ws@8.22.0: config/patches/ws@8.22.0.patch
oxlint-plugin-anti-slop@0.1.2: config/patches/oxlint-plugin-anti-slop@0.1.2.patch
monaco-editor@0.55.1: config/patches/monaco-editor@0.55.1.patch
sprintf-js@1.1.3: config/patches/sprintf-js@1.1.3.patch
'@tiptap/extension-list@3.31.3': config/patches/@tiptap__extension-list@3.31.3.patch