orca/config/scripts
Brennan Benson 59a7fffcd6
fix(terminal): keep WebGL glyph atlas pages within the shader sampler budget (#8672)
* fix(terminal): keep WebGL glyph atlas pages within the shader sampler budget

The fragment shader has sampler slots for maxAtlasPages (16 on most Macs)
and leaves outColor uninitialized for any higher page index, so glyphs
rasterized onto pages past the budget render as garbled pixels. Long
sessions grow past the budget via the merge fallback, and the previous
wipe fix re-activated those unbindable pages, so every atlas wipe
re-allocated glyphs onto them (post-wipe allocation prefers the last,
highest-index active page) and garbled whole panes mid-stream.

Fix, matching the direction xterm.js maintainers are pursuing upstream
(xtermjs/xterm.js#6043): a shared _evictAllPages resets the atlas to one
fresh page, called from clearTexture and from the two allocation paths
that could otherwise push a page past the budget (merge fallback and
oversized-glyph page creation), so the page count can never exceed the
renderer's texture capacity. Defensive backstops: a one-time warn plus
bind-loop clamp, and an else branch in the generated shader so an
unexpected overflow renders blank instead of undefined pixels.

* test(terminal): cover WebGL atlas sampler budget

* fix(terminal): align WebGL atlas invalidation source
2026-07-14 14:48:21 -07:00
..
styled-scrollbars Upgrade to TypeScript 7 and Electron 43 (#8189) 2026-07-10 19:08:12 -07:00
windows-apphang-repro Improve Windows terminal performance: retain WebGL contexts, warm first ConPTY (#7085) 2026-07-02 18:41:23 -04:00
audit-localization-coverage.mjs Revert "Decouple feature copy from translated locale catalogs (#8488)" (#8500) 2026-07-12 23:43:07 -07:00
benchmark-artifact-comparison.test.mjs Reduce git trace and branch compare polling churn (#6002) 2026-06-22 19:13:32 -07:00
bootstrap-locale-catalog.mjs Revert "Decouple feature copy from translated locale catalogs (#8488)" (#8500) 2026-07-12 23:43:07 -07:00
bootstrap-zh-catalog.mjs
build-computer-macos.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
build-native-for-platform.mjs fix(cli): preserve multiline arguments on Windows (#8374) 2026-07-12 02:13:41 -07:00
build-notification-status-macos.mjs onboarding: seamless macOS notification permission step with live state detection (#7684) 2026-07-08 22:21:40 -07:00
build-relay.mjs Fix ssh watcher isolation (#8463) 2026-07-12 21:34:59 -07:00
build-windows-cli-launcher.mjs P2 windows cli hardening (#8638) 2026-07-13 18:58:21 -07:00
build-windows-cli-launcher.test.mjs P2 windows cli hardening (#8638) 2026-07-13 18:58:21 -07:00
check-feature-wall-assets.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
check-max-lines-ratchet.mjs Add max-lines ratchet CI gate to block new line-limit bypasses (#7608) 2026-07-06 17:12:27 -07:00
check-max-lines-ratchet.test.mjs Add max-lines ratchet CI gate to block new line-limit bypasses (#7608) 2026-07-06 17:12:27 -07:00
check-reliability-gates.mjs cleanup(main): defer serve-sim materialization, dedupe reload flags, guard gate validators (#7321) 2026-07-03 22:32:11 -07:00
check-reliability-gates.test.mjs Harden reliability gate policy and register merged terminal regression tests as gates (#7295) 2026-07-03 19:58:07 -07:00
check-styled-scrollbars.mjs
check-styled-scrollbars.test.mjs
check-terminal-perf-report-budgets.mjs Fix e2e tests (#8495) 2026-07-13 00:48:51 -07:00
check-terminal-perf-report-budgets.test.mjs Fix e2e tests (#8495) 2026-07-13 00:48:51 -07:00
codemod-settings-search-keywords.mjs
compare-benchmark-artifacts.mjs Reduce git trace and branch compare polling churn (#6002) 2026-06-22 19:13:32 -07:00
computer-e2e-workflow.test.mjs Fix Windows terminal daemon death after workspace close (#8140) 2026-07-10 13:50:38 -07:00
computer-use-skill-guidance.test.mjs docs(computer-use): clarify get-app-state JSON tree field (#7788) 2026-07-11 22:50:30 -07:00
computer-use-smoke.mjs
computer-use-smoke.test.mjs
create-draft-release.mjs fix: bound release notes by published releases (#7311) 2026-07-03 20:53:16 -07:00
create-draft-release.test.mjs fix: bound release notes by published releases (#7311) 2026-07-03 20:53:16 -07:00
daemon-boot-smoke.mjs ci(daemon): fail builds, packaging, and CI when the terminal daemon cannot start — and stop failing silently (#7849) 2026-07-08 19:46:14 -04:00
dev-fresh-profile.sh
electron-builder-config.test.mjs Add version-matched skill guides to the CLI (#8624) 2026-07-14 02:17:55 -07:00
electron-builder-native-rebuild.cjs fix(cli): preserve multiline arguments on Windows (#8374) 2026-07-12 02:13:41 -07:00
electron-builder-native-rebuild.test.mjs fix(cli): preserve multiline arguments on Windows (#8374) 2026-07-12 02:13:41 -07:00
ensure-native-runtime.mjs fix(build): skip spawn-helper check on Linux to avoid spurious node-pty rebuilds (#7762) 2026-07-10 01:17:55 -07:00
ensure-native-runtime.test.mjs fix(build): skip spawn-helper check on Linux to avoid spurious node-pty rebuilds (#7762) 2026-07-10 01:17:55 -07:00
file-explorer-tree-projection-benchmark.mjs
generate-bundled-skill-guides.mjs Add version-matched skill guides to the CLI (#8624) 2026-07-14 02:17:55 -07:00
generate-bundled-skill-guides.test.mjs Add version-matched skill guides to the CLI (#8624) 2026-07-14 02:17:55 -07:00
generate-terminal-perf-html-report.mjs Terminal performance initiative: pipeline fixes + term-speed-2 revival + PTY flow control (integration branch) (#7214) 2026-07-10 17:27:47 -07:00
generate-terminal-perf-html-report.test.mjs Terminal performance initiative: pipeline fixes + term-speed-2 revival + PTY flow control (integration branch) (#7214) 2026-07-10 17:27:47 -07:00
git-binary-compatibility-workflow.test.mjs Revert "Decouple feature copy from translated locale catalogs (#8488)" (#8500) 2026-07-12 23:43:07 -07:00
hibernation-output-epoch-leak-benchmark.mjs perf(renderer): drop per-tick matchMedia alloc + purge hibernation epoch map (#6696) 2026-06-28 21:16:02 -07:00
idle-cpu-synthetic-spinners.mjs
install-dev-cli.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
install-electron-package-binary.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
install-electron-package-binary.test.mjs
latest-stable-release.mjs
latest-stable-release.test.mjs
lint-react-doctor-changed.mjs
linux-wayland-renderer-diagnostics.mjs fix(linux): disable GPU sandbox to stop terminal input freeze on Wayland (#5319) 2026-06-28 19:43:18 -07:00
linux-wayland-terminal-exercise.mjs fix(linux): disable GPU sandbox to stop terminal input freeze on Wayland (#5319) 2026-06-28 19:43:18 -07:00
linux-wayland-validation-watchdog.mjs fix(linux): disable GPU sandbox to stop terminal input freeze on Wayland (#5319) 2026-06-28 19:43:18 -07:00
locale-cjk-latin-spaced-terms.mjs fix(i18n): correct Korean mistranslations and particle spacing (#5761) 2026-06-18 21:26:12 -07:00
locale-cross-locale-key-overrides.mjs fix(i18n): correct Korean mistranslations 2026-06-19 15:52:05 -07:00
locale-ja-phrase-fixes.mjs
locale-ja-value-overrides.mjs
locale-key-override-merge.mjs fix(i18n): correct Korean mistranslations 2026-06-19 15:52:05 -07:00
locale-key-overrides.mjs fix(i18n): correct Chinese MT errors and translate Settings panel strings (#5915) 2026-06-21 21:23:36 -07:00
locale-ko-key-overrides.json fix(pet): stop i18n from corrupting CSS keyframes 2026-07-04 14:43:57 -07:00
locale-ko-key-overrides.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
locale-ko-key-overrides.test.mjs fix(i18n): correct Korean mistranslations 2026-06-19 15:52:05 -07:00
locale-ko-phrase-fixes-round5.mjs
locale-ko-phrase-fixes.mjs
locale-ko-value-overrides.mjs Fix paste ownership, input bounds, and IPC validation 2026-06-19 17:14:55 -07:00
locale-phrase-fixes.mjs fix(i18n): correct Spanish "PR" mistranslated as "relaciones públicas" (#6749) 2026-06-29 11:56:26 -07:00
locale-screen-cursor-exemptions.mjs
locale-search-keyword-overrides.mjs
locale-translation-policy-ko-round5.test.mjs fix(i18n): correct Korean mistranslations 2026-06-19 15:52:05 -07:00
locale-translation-policy.es-pr.test.mjs fix(i18n): correct Spanish "PR" mistranslated as "relaciones públicas" (#6749) 2026-06-29 11:56:26 -07:00
locale-translation-policy.es-round5.test.mjs
locale-translation-policy.ja-round5.test.mjs
locale-translation-policy.mjs Revert "Decouple feature copy from translated locale catalogs (#8488)" (#8500) 2026-07-12 23:43:07 -07:00
locale-translation-policy.test.mjs fix(i18n): correct Korean mistranslations 2026-06-19 15:52:05 -07:00
locale-translation-policy.zh-round5.test.mjs
locale-value-overrides.mjs
locale-zh-phrase-fixes-round5.mjs
locale-zh-value-overrides.mjs
localize-renderer-strings.mjs Upgrade to TypeScript 7 and Electron 43 (#8189) 2026-07-10 19:08:12 -07:00
macos-launch-diagnostics.sh
marine-creatures-parity.test.mjs
markdown-toc-parse-benchmark.mjs perf(editor): skip markdown TOC parse while the panel is closed (#6695) 2026-06-28 21:19:10 -07:00
mjpeg-frame-parser-alloc-benchmark.mjs perf(emulator): return MJPEG frames as views instead of per-frame copies (#6707) 2026-06-28 23:40:55 -07:00
node-old-space-limit.mjs build: publish linux arm64 release artifacts (#4755) 2026-06-22 01:07:16 -07:00
node-old-space-limit.test.mjs build: publish linux arm64 release artifacts (#4755) 2026-06-22 01:07:16 -07:00
orca-cli-skill-guidance.test.mjs Add version-matched skill guides to the CLI (#8624) 2026-07-14 02:17:55 -07:00
orca-dev
orca-dev-bin.test.mjs
orca-dev.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
orca-linear-skill-guidance.test.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
orchestration-skill-guidance.test.mjs Add Cursor orchestration group routing (#8436) 2026-07-12 17:39:18 -07:00
package-electron-runtime-contract.test.mjs fix(terminal): keep WebGL glyph atlas pages within the shader sampler budget (#8672) 2026-07-14 14:48:21 -07:00
pty-batch-flush-benchmark.mjs
publish-complete-draft-releases.mjs
publish-complete-draft-releases.test.mjs
rebuild-native-deps.mjs fix(build): skip spawn-helper check on Linux to avoid spurious node-pty rebuilds (#7762) 2026-07-10 01:17:55 -07:00
rebuild-native-deps.test.mjs fix(build): skip spawn-helper check on Linux to avoid spurious node-pty rebuilds (#7762) 2026-07-10 01:17:55 -07:00
relay-watcher-fault-harness.mjs Fix ssh watcher isolation (#8463) 2026-07-12 21:34:59 -07:00
release-mac-build-workflow-dispatch.test.mjs ci: isolate Blacksmith mac release build (#6962) 2026-06-30 16:36:59 -07:00
release-rc-history.mjs Terminal performance initiative: pipeline fixes + term-speed-2 revival + PTY flow control (integration branch) (#7214) 2026-07-10 17:27:47 -07:00
release-rc-history.test.mjs
repair-locale-catalog.mjs Revert "Decouple feature copy from translated locale catalogs (#8488)" (#8500) 2026-07-12 23:43:07 -07:00
repro-windows-apphang-terminal-activation.mjs Improve Windows terminal performance: retain WebGL contexts, warm first ConPTY (#7085) 2026-07-02 18:41:23 -04:00
run-electron-vite-build.mjs build: publish linux arm64 release artifacts (#4755) 2026-06-22 01:07:16 -07:00
run-electron-vite-dev.mjs onboarding: seamless macOS notification permission step with live state detection (#7684) 2026-07-08 22:21:40 -07:00
run-idle-cpu-benchmark.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
run-internal-dev-setup.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
run-internal-dev-setup.test.mjs
run-multi-workspace-typing-bench.mjs Terminal performance initiative: pipeline fixes + term-speed-2 revival + PTY flow control (integration branch) (#7214) 2026-07-10 17:27:47 -07:00
run-release-mac-build-workflow.mjs ci: isolate Blacksmith mac release build (#6962) 2026-06-30 16:36:59 -07:00
run-ssh-codex-artifacts-repro-e2e.mjs Fix SSH terminal replay artifacts 2026-06-22 16:42:20 -07:00
run-ssh-docker-perf-e2e.mjs
run-ssh-docker-watcher-isolation-e2e.mjs Ssh watcher isolation e2e (#8494) 2026-07-12 23:50:00 -07:00
run-terminal-scale-perf-e2e.mjs
run-terminal-scale-perf-report-gate.mjs Terminal performance initiative: pipeline fixes + term-speed-2 revival + PTY flow control (integration branch) (#7214) 2026-07-10 17:27:47 -07:00
run-terminal-scale-perf-report-gate.test.mjs Terminal performance initiative: pipeline fixes + term-speed-2 revival + PTY flow control (integration branch) (#7214) 2026-07-10 17:27:47 -07:00
run-vite-web-build.mjs build: publish linux arm64 release artifacts (#4755) 2026-06-22 01:07:16 -07:00
runtime-file-watcher-fault-harness.mjs fix(runtime): prevent file watcher SIGSEGV from crashing orca serve (#8370) 2026-07-12 18:15:15 -07:00
serve-headless-fresh-profile-pairing.mjs Fix OMP worktree title identity flicker 2026-07-07 13:51:25 -07:00
serve-sim-seen-keys-leak-benchmark.mjs perf(emulator): prune serve-sim dedupe keys on worktree forget (#6708) 2026-06-28 23:41:14 -07:00
smoke-packaged-cli.mjs fix(cli): preserve multiline arguments on Windows (#8374) 2026-07-12 02:13:41 -07:00
summarize-terminal-perf-report.mjs Terminal performance initiative: pipeline fixes + term-speed-2 revival + PTY flow control (integration branch) (#7214) 2026-07-10 17:27:47 -07:00
summarize-terminal-perf-report.test.mjs Reduce git trace and branch compare polling churn (#6002) 2026-06-22 19:13:32 -07:00
terminal-e2e-helpers.mjs chore(lint): upgrade oxlint to 1.71 + enable 7 new rules (autofixed backlog) (#6841) 2026-06-29 22:38:29 -07:00
terminal-perf-report-annotations.mjs Reduce git trace and branch compare polling churn (#6002) 2026-06-22 19:13:32 -07:00
terminal-perf-report-annotations.test.mjs Reduce git trace and branch compare polling churn (#6002) 2026-06-22 19:13:32 -07:00
terminal-perf-report-rows.mjs Terminal performance initiative: pipeline fixes + term-speed-2 revival + PTY flow control (integration branch) (#7214) 2026-07-10 17:27:47 -07:00
trim-windows-icon-source.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
trim-windows-icon-source.test.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
vendor-feature-wall-assets.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
verify-agent-hook-stdin-lifecycle.mjs fix(agent-hooks): drain stdin before hook script early exits so agents never hit EPIPE (#8430) 2026-07-13 00:26:22 -07:00
verify-cli-bin.mjs fix: pin CLI build output to CommonJS (#6656) 2026-06-28 22:58:27 -07:00
verify-cli-bin.test.mjs fix: pin CLI build output to CommonJS (#6656) 2026-06-28 22:58:27 -07:00
verify-computer-native.mjs
verify-linux-wayland-gpu-sandbox.mjs fix(linux): disable GPU sandbox to stop terminal input freeze on Wayland (#5319) 2026-06-28 19:43:18 -07:00
verify-localization-catalog.mjs Revert "Decouple feature copy from translated locale catalogs (#8488)" (#8500) 2026-07-12 23:43:07 -07:00
verify-localization-catalog.test.mjs Revert "Decouple feature copy from translated locale catalogs (#8488)" (#8500) 2026-07-12 23:43:07 -07:00
verify-macos-entitlements.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
verify-macos-release-env.mjs
verify-packaged-daemon-entry.cjs Harden layout validation, watcher lifecycle, and connection robustness (#7924) 2026-07-09 16:09:09 -07:00
verify-packaged-daemon-entry.test.mjs Harden layout validation, watcher lifecycle, and connection robustness (#7924) 2026-07-09 16:09:09 -07:00
verify-release-required-assets.mjs lint(unicorn): enable prefer-number-properties, prefer-array-find, prefer-array-index-of (#7516) 2026-07-05 23:56:37 -07:00
verify-release-required-assets.test.mjs build: publish linux arm64 release artifacts (#4755) 2026-06-22 01:07:16 -07:00
verify-telemetry-constants.mjs chore(lint): adopt unicorn/prefer-import-meta-properties (error) (#6847) 2026-06-29 23:37:30 -07:00
verify-web-build.mjs chore(lint): upgrade oxlint to 1.71 + enable 7 new rules (autofixed backlog) (#6841) 2026-06-29 22:38:29 -07:00
verify-windows-inner-signature.mjs Fix Windows inner signature PowerShell path (#7136) 2026-07-02 12:11:58 -07:00
verify-windows-inner-signature.test.mjs Fix Windows inner signature PowerShell path (#7136) 2026-07-02 12:11:58 -07:00
windows-daemon-workspace-close-repro.mjs Fix Windows terminal daemon death after workspace close (#8140) 2026-07-10 13:50:38 -07:00
wrap-localized-search-exports.mjs