Skip to content

fix(deps): pin every patched package so the nightly desktop build installs again - #726

Merged
Jacksondr5 merged 1 commit into
j5/mainfrom
fix/pin-patched-packages
Oct 26, 2026
Merged

Jacksondr5 merged 1 commit into
j5/mainfrom
fix/pin-patched-packages

Conversation

@Jacksondr5

Copy link
Copy Markdown
Owner

Problem

The 2026-10-26 J5 Nightly failed in the Apple Silicon desktop build (job) with ERR_PNPM_UNUSED_PATCH ... [email protected]. The desktop build installs its staged app without a lockfile, so the server's node-pty: ^1.2.0-beta.15 range resolved to node-pty 1.2.0-beta.18, published 2026-10-23. The beta.15 patch then matched nothing. Every desktop build since node-pty's new betas has this failure, not only tonight's.

What changed

pnpm-workspace.yaml now pins each patched package that lacked one with an exact override. This is an early port of upstream's own fix, pingdotgg#23798, at our current versions (upstream's are newer in places). The staged install already copies the workspace overrides, so it now resolves the patched versions. Upstream's fix arrives with the v0.1.3 advance (#705), which is not landing soon. FORK.md records this as a temporary patch that exits at that advance.

The lockfile changes only in its overrides and specifier lines. Every resolved version is unchanged.

Verified:

  • Scratch reproduction of the staged install (node-pty: ^1.2.0-beta.15 plus the patch): it fails with the same ERR_PNPM_UNUSED_PATCH without the pin, and installs the patched beta.15 with it.
  • node scripts/release-smoke.ts passes.

Upstream impact

  • pnpm-workspace.yaml, pnpm-lock.yaml: the temporary patch "Every patched package has an exact override" in FORK.md, plus ledger rows. It is upstream's fix landed early, not a divergence.

Checklist

  • One concern: the description has no "also"
  • Tests cover the changed behavior: dependency configuration only. The release smoke and the scratch reproduction above stand in for tests.
  • UI changes: none
  • Live testing: nothing to live-test. The next nightly run is the proof.
  • Upstream-owned files: each one is recorded in FORK.md (case text and file-table row) in this PR
  • Upstream product: no change to what upstream's product does
  • Surfaces: affects packaging only (desktop artifacts and lockfile-free installs)
  • Docs: no definitions or user docs affected

Claude Opus 5.5 in J5 Code (Claude Code harness).

🤖 Generated with Claude Code

…talls again

The desktop build installs its staged app without a lockfile, so the server's
`node-pty: ^1.2.0-beta.15` range resolved to node-pty 1.2.0-beta.18 (published
2026-10-23) and pnpm failed with ERR_PNPM_UNUSED_PATCH for the beta.15 patch.

Pin each patched package with an exact override, an early port of
pingdotgg#23798 at our current versions. Resolved versions in the
lockfile are unchanged.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@vercel

vercel Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
j5-code Ready Ready Preview Oct 26, 2026 2:34am UTC

Request Review

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:M 30-99 effective changed lines (test files excluded in mixed PRs). labels Oct 26, 2026
@coderabbitai

coderabbitai Bot commented Oct 26, 2026

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review.

Recent review info
Run configuration
Commits

Reviewing files that changed from the base of the PR and between 53dc635 and 9cf717a.

Files ignored due to path filters: 1
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
Files selected for processing: 2
  • FORK.md
  • pnpm-workspace.yaml

Included review availability: This review used your included allowance. 4 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 5 reviews per hour.

Walkthrough

The workspace adds exact version pins for 18 packages, including patched packages and transitive dependencies. FORK.md documents a desktop build failure involving a patched dependency and updates the package-pinning contract ledger.

Changes: Patched dependency version pins

Layer / File(s) Summary
Pin packages and document the patch contract
pnpm-workspace.yaml, FORK.md
The workspace adds exact version pins for 18 packages and notes that they should be updated alongside patchedDependencies. FORK.md documents the ERR_PNPM_UNUSED_PATCH desktop build failure and updates the ledger for pnpm-lock.yaml and pnpm-workspace.yaml.

Priority: Normal

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Bug fix · Severity of issue fixed: Medium

Suggested reviewers: juliusmarminge, bryantderosier

Merge Risk: Minimal · up to 9cf71

The exact package pins address the reported patched-install mismatch, with no remaining evidence of a merge-blocking issue.

Pre-merge checks: Passed 4
Check name Status Explanation
Title check Passed The title names the main change: pinning every patched package with exact overrides so the nightly desktop build installs again. It is specific, uses the conventional commit form, and matches the raw …
Description check Passed The description follows the template sections: Problem, What changed, Upstream impact, and Checklist. The Problem section names the failing nightly job, the error, and the cause. It links the job URL.…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Title check

Explanation

The title names the main change: pinning every patched package with exact overrides so the nightly desktop build installs again. It is specific, uses the conventional commit form, and matches the raw summary and PR objectives. The title is clear and concise, and it does not use vague terms.

Full details: Description check

Explanation

The description follows the template sections: Problem, What changed, Upstream impact, and Checklist. The Problem section names the failing nightly job, the error, and the cause. It links the job URL. What changed explains the pins, the FORK.md temporary patch, and the lockfile impact. Verification steps are listed. The UI changes section is omitted, which is allowed when there is no UI change. The Live testing section is also omitted. The template says to delete that section when nothing can be live-tested, and the author states there is nothing to live-test. The Problem section does not include a 'Closes #' issue link. The description says the tracking issue is not linked. The template asks for the link, so this is a minor gap. Most checklist items are checked or explained. The unchecked items have reasons stated. The description also omits the model and harness line at the end. The author did include a harness line ('Claude Opus 5.5 in J5 Code (Claude Code harness)'), so that requirement is met. Overall the description is mostly complete.

Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@Jacksondr5
Jacksondr5 merged commit df4b80d into j5/main Oct 26, 2026
31 checks passed
@Jacksondr5
Jacksondr5 deleted the fix/pin-patched-packages branch October 26, 2026 02:47

This branch was successfully deployed

1 active deployment
Preview — 9cf717ab Deployed Oct 26, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M 30-99 effective changed lines (test files excluded in mixed PRs). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant