Skip to content

fix: pin node-pty 1.2.0-beta.15 again, and test the pin (#159) - #160

Merged
Maxaubert merged 4 commits into
mainfrom
fix/pty-pin
Oct 10, 2026
Merged

Maxaubert merged 4 commits into
mainfrom
fix/pty-pin

Conversation

@Maxaubert

@Maxaubert Maxaubert commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

Fixes #159.

The owner's screenshot (2026-10-10) showed node-pty's "Assertion failed! conpty.node ... remove_pty_baton(baton->id)" dialog again, the #127 crash. The cause: #130 (the icon PR, 86ed365) put package.json back to node-pty ^1.1.0 in a merge, undoing #128's pin to 1.2.0-beta.15. Stable, the installed PT and Prism have all shipped node-pty 1.1.0 since.

  • package.json / lockfile: node-pty 1.2.0-beta.15 again (and its allowScripts entry).
  • src/main/nodePtyPin.test.ts: fails if package.json or the lockfile lose the pin, so a merge cannot drop it silently again (the quit e2e only catches the race sometimes).
  • docs/regression-rules.md: the rule notes the loss and the test.
  • core/package.json: the peer is ^1.1.0 || 1.2.0-beta.15 (1.1.0 still allowed so Prism's automatic core bump installs before Prism's own pin lands). A ^1.1.0 peer matches no prerelease, so Prism's npm ci refused the pin (ERESOLVE). This is a core change, so Prism gets it: once released, Prism takes its own pin in a follow-up PR (prepared on Prism fix/pty-pin). Core 0.28.2, app 0.35.2.

Gates: typecheck, lint, unit 1557/0 (the new test failed first). e2e with the beta installed: quitManyShells 4/4 runs pass (12 quits with ten shells); on 1.1.0 it fails about 1 run in 3. Full run: every scenario passes except settingsLook (8 checks), which fails on main too (its "only accent button" check predates #139's accent switches) and is fixed in #161.

🤖 Generated with Claude Code

https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t

#130's merge put node-pty ^1.1.0 back, undoing #128, and the owner saw
node-pty 1.1.0's 'Assertion failed! remove_pty_baton' dialog again. Re-pin,
and a unit test fails on any build without the pin.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t
Maxaubert and others added 3 commits October 10, 2026 08:37
Core's peer was ^1.1.0, which no prerelease matches, so Prism's npm refused
the pin (ERESOLVE). Core 0.28.2.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t
Prism still asks for 1.1.0 until its own pin lands; an exact peer would make
its core bump fail to install.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t
@Maxaubert
Maxaubert merged commit 32130fd into main Oct 10, 2026
2 checks passed
@Maxaubert
Maxaubert deleted the fix/pty-pin branch October 10, 2026 06:43
github-actions Bot pushed a commit that referenced this pull request Oct 10, 2026
* fix: pin node-pty 1.2.0-beta.15 again, and test the pin (#159)

#130's merge put node-pty ^1.1.0 back, undoing #128, and the owner saw
node-pty 1.1.0's 'Assertion failed! remove_pty_baton' dialog again. Re-pin,
and a unit test fails on any build without the pin.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t

* fix(core): the core asks its hosts for node-pty 1.2.0-beta.15 (#159)

Core's peer was ^1.1.0, which no prerelease matches, so Prism's npm refused
the pin (ERESOLVE). Core 0.28.2.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t

* fix(core): the peer allows 1.1.0 or the pinned beta (#159)

Prism still asks for 1.1.0 until its own pin lands; an exact peer would make
its core bump fail to install.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t

* fix: type the pin test's package files, no any (#159)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

node-pty pin lost: remove_pty_baton assertion is back

1 participant