orca/docs
Neil a0944cc129
fix(linux): restore Ubuntu 20.04 launch — pin node-pty glibc symbols + add glibc/libstdc++ packaging gate (#9902) (#10019)
* fix(linux): restore Ubuntu 20.04 launch by pinning node-pty glibc symbols (#9902)

The bundled node-pty pty.node is compiled from source in release CI on
ubuntu-latest (glibc 2.39). glibc's 2.32-2.34 libpthread/libutil merge
relocated openpty/forkpty (GLIBC_2.34) and pthread_sigmask (GLIBC_2.32)
into libc under new symbol versions, so the from-source build bound to
versions absent on Ubuntu 20.04 (glibc 2.31). The main process imports
node-pty at startup, so the app crashed on launch. pty.node is the sole
blocker (Electron needs GLIBC_2.25; other native modules <= 2.17).

- Patch node-pty: a .symver shim pins the 3 symbols to their pre-merge
  version (GLIBC_2.2.5 x64 / GLIBC_2.17 arm64), and Linux-only ldflags
  force libutil.so.1/libpthread.so.0 back into DT_NEEDED. Guarded to
  Linux; macOS/Windows untouched.
- Add a packaging gate (verify-linux-glibc-floor.cjs, afterPack): reads
  each bundled native binary's objdump -p version needs and fails the
  Linux build if any strong GLIBC_/GLIBCXX_/CXXABI_ node exceeds stock
  Ubuntu 20.04 (glibc 2.31 / GLIBCXX_3.4.28 / CXXABI_1.3.12). Catches
  GLIBC_ABI_DT_RELR, rejects GLIBC_PRIVATE, skips weak needs, fail-closed.
- Docs + tests; the lazy sherpa-onnx speech prebuilt (GLIBCXX_3.4.29,
  never loaded at launch) is a documented libstdc++-floor exemption.

* fix(linux): assert DT_NEEDED provider deps in the glibc-floor gate

Harden the packaging gate (flagged in adversarial re-eval): the version-floor
check alone can false-pass if the patch's forced `-l:libutil.so.1` ever silently
drops — the pinned openpty@GLIBC_2.2.5 still resolves from libc's compat alias at
build time, but fails to load on Ubuntu 20.04 where openpty/forkpty live only in
libutil. The gate now also asserts that any binary importing openpty/forkpty
keeps libutil.so.1 in DT_NEEDED. Validated on a real symver-pinned .so with
libutil dropped (now fails) vs. present (passes). Documents the recommended
real-host smoke-test follow-up.
2026-07-22 19:11:44 -07:00
..
assets Update README downloads badge 2026-07-23 00:55:31 +00:00
bug-reproductions/8979-screenshots fix(rate-limits): surface Fable weekly usage when is_active is false (#8979) (#9389) 2026-07-20 00:39:08 -07:00
readme docs(readme): add French translation and reorder language links 2026-07-20 01:18:55 -07:00
reference fix(linux): restore Ubuntu 20.04 launch — pin node-pty glibc symbols + add glibc/libstdc++ packaging gate (#9902) (#10019) 2026-07-22 19:11:44 -07:00
STYLEGUIDE.md 1.4.131 rc2 release prep (#8020) 2026-07-09 21:54:22 -07:00
agent-status-over-wsl.md Agent status over WSL: guest-resident hook relay + WSL-side hook installers (STA-1515) (#7903) 2026-07-10 00:19:45 -07:00
android-emulation-streaming.md feat(emulator): Android emulation via scrcpy (cross-platform, iOS parity) (#6434) 2026-06-28 21:01:09 -07:00
android-emulation.md feat(emulator): Android emulation via scrcpy (cross-platform, iOS parity) (#6434) 2026-06-28 21:01:09 -07:00
automations-navigation-stack.md
browser-normal-download-behavior.md Improve built-in browser downloads (#5940) 2026-06-20 16:33:20 -07:00
claude-fable-weekly-usage-meter.md Support Claude weekly Fable usage meter (#7079) 2026-07-02 01:34:44 -07:00
claude-scoped-oauth-usage-limits.md fix(rate-limits): surface Fable weekly usage when is_active is false (#8979) (#9389) 2026-07-20 00:39:08 -07:00
claude-usage-tracking-codexbar-parity.md Improve Claude usage refresh fallback behavior (#5995) 2026-06-21 13:10:25 -07:00
cmd-j-tab-session-search.md Add Cmd-J tab session search (#5775) 2026-06-19 00:27:05 -07:00
compact-worktree-card-setting-graduation.md Graduate compact worktree card setting (#4924) 2026-06-08 17:37:11 -07:00
configurable-open-in-menu.md
delete-workspace-windows-unregistered.md Fix Windows workspace deletion runtime resolution (#5888) 2026-06-20 03:16:29 -07:00
double-tap-modifier-keybindings-design.md feat(shortcuts): double-tap modifier keybindings (#5516) 2026-06-17 18:25:27 -07:00
droid-orchestration-group.md Add Droid orchestration routing (#4624) 2026-06-04 10:00:11 -07:00
editor-find-layout-aware-shortcut.md Fix layout-aware find in the source editor (#8088) 2026-07-10 03:56:55 -07:00
failed-automation-rerun-action.md Add failed automation rerun action (#2913) 2026-05-27 11:28:16 -07:00
floating-terminal-panel-position-persistence.md fix: persist floating terminal panel bounds (#3828) 2026-05-30 11:59:19 -07:00
github-tasks-close-reason-parity.md Add GitHub task close reason parity (#6141) 2026-06-23 15:18:46 -07:00
image-viewer-pinch-zoom.md Add image viewer pinch zoom (#3531) 2026-05-31 14:07:15 -07:00
issue-7649-vscode-wsl-launch.md fix(windows): open WSL workspaces in VS Code remote (#7982) 2026-07-09 22:37:40 -04:00
kill-all-sessions-also-kills-empty-terminals.md chore: remove release-scan artifact and trailing whitespace (#8184) 2026-07-10 17:13:39 -07:00
linear-issues-load-more.md Add Linear issue load more (#4437) 2026-06-01 23:35:47 -07:00
linear-scope-selector.md Improve Linear scope selection (#3850) 2026-05-30 12:55:13 -07:00
native-chat-codex-tui-parity.md Polish desktop native chat view (#6641) 2026-06-28 15:43:07 -07:00
new-worktree-sidebar-reveal.md Revert centered sidebar jump behavior (#8019) 2026-07-10 03:00:51 -07:00
orchestration-reset-scope-validation.md Validate orchestration reset scope (#2960) 2026-05-27 21:40:33 -04:00
persist-tree-view-source-control.md
refresh-github-issues-after-create.md Refresh GitHub issues after creation (#3018) 2026-05-28 21:14:58 -04:00
remote-web-paste-activity-fixes.md Fix remote paste and workspace activity (#3521) 2026-05-30 03:35:56 -04:00
renderer-memory-profile-2026-06-01.md Handle ANSI redraw controls in terminal previews (#4418) 2026-06-01 16:21:11 -07:00
show-full-tab-title-tooltip.md Show full tab titles in tab tooltips (#2986) 2026-05-28 11:16:32 -07:00
source-control-push-failure-ai-recovery.md feat(source-control): add push failure AI recovery (#7826) 2026-07-08 18:59:28 -07:00
ssh-config-target-compatibility.md Improve SSH config target handling (#3899) 2026-05-30 13:10:39 -07:00
ssh-handler-reregistration-port-forwards.md Fix SSH handler re-registration port forwards (#2963) 2026-05-27 21:04:30 -07:00
terminal-close-confirmation.md Refine terminal close confirmation (#5541) 2026-06-16 17:42:48 -07:00
terminal-main-owned-state.md Terminal performance initiative: pipeline fixes + term-speed-2 revival + PTY flow control (integration branch) (#7214) 2026-07-10 17:27:47 -07:00
terminal-scroll-intent-architecture.md Fix terminal scroll intent across workspace switches (#6319) 2026-06-24 20:16:14 -07:00
windows-secure-file-acl-hardening.md fix(windows): stop main-thread PowerShell ACL storm on env-store reads (#5011) 2026-06-09 01:47:29 -07:00
worktree-delete-preflight.md
worktree-sidebar-drag-autoscroll.md Add workspace sidebar drag autoscroll (#3027) 2026-05-28 21:52:08 -07:00
wrapped-terminal-file-link-fragments.md Fix hard-wrapped terminal file links (#8100) 2026-07-10 08:26:06 -07:00
wsl-osc7-sleep-wake-cwd.md fix: preserve WSL CWD across daemon sleep wake 2026-07-19 16:04:05 -07:00