orca/config
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
..
nsis Windows terminal update-survival (single consolidated PR) (#7538) 2026-07-07 19:21:07 -04:00
patches fix(terminal): keep WebGL glyph atlas pages within the shader sampler budget (#8672) 2026-07-14 14:48:21 -07:00
scripts fix(terminal): keep WebGL glyph atlas pages within the shader sampler budget (#8672) 2026-07-14 14:48:21 -07:00
dev-app-update.yml
electron-builder.config.cjs Add version-matched skill guides to the CLI (#8624) 2026-07-14 02:17:55 -07:00
localization-audit.md Revert "Decouple feature copy from translated locale catalogs (#8488)" (#8500) 2026-07-12 23:43:07 -07:00
localization-coverage-allowlist.json Add English localization infrastructure (#4995) 2026-06-09 10:43:04 -07:00
max-lines-baseline.txt Add max-lines ratchet CI gate to block new line-limit bypasses (#7608) 2026-07-06 17:12:27 -07:00
oxlint-react-doctor.json chore: gate high-signal react doctor rules 2026-05-31 22:35:15 -07:00
oxlint-switch-exhaustiveness.json chore: enforce exhaustive switch handling 2026-05-30 13:18:12 -07:00
packaged-runtime-node-modules.cjs Fix Windows bundled ConPTY packaging (#6968) 2026-06-30 18:05:38 -07:00
reliability-gates.jsonc perf(terminal): defer cold worktree activation tab mounts until first reveal (#8597) 2026-07-14 02:58:34 -07:00
tsconfig.cli.json fix(agent-hooks): drain stdin before hook script early exits so agents never hit EPIPE (#8430) 2026-07-13 00:26:22 -07:00
tsconfig.node.json fix(daemon): daemon cannot start in 1.4.129-rc.1 — electron require leaked into daemon-entry chunk (#7844) 2026-07-08 19:41:09 -04:00
tsconfig.relay.json
tsconfig.tc.cli.json
tsconfig.tc.web.json perf(main): make worktree path dedupe linear (#8177) 2026-07-10 20:52:24 -07:00
tsconfig.web.json chore: enforce exhaustive switch handling 2026-05-30 13:18:12 -07:00
vitest.config.ts chore(lint): upgrade oxlint to 1.71 + enable 7 new rules (autofixed backlog) (#6841) 2026-06-29 22:38:29 -07:00