Repository navigation
Conversation
9 tasks done
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ELI5
Running ten agents should not give every build and test runner the whole machine. Add
pnpm lean <script>to limit each invocation, and remove unnecessary work from normal development builds. Stacked on #29345.What Changed
pnpm lean dev --watch,pnpm lean test <file>,pnpm lean tc, andpnpm lean build:electron-viteuse two native threads, two test workers, and one typecheck project at a time. Explicit environment and CLI limits remain usable. Vitest limits apply to its child projects too; the isolated measurement suite stays at one worker.node_modulesinstalls from repeatedly invalidating other worktrees' caches. Exclude these caches from packaging.Why
Normal commands retain their existing concurrency. A portable opt-in command lets busy machines trade a little individual build latency for lower contention without reducing test coverage or changing production bundling. Reuse the existing process host, compiler scheduler, Vite behavior, and test configuration rather than adding another build system or cache-validity mechanism.
Three alternating desktop bundle runs on this 24-thread Linux host, Node 24.22.0 and pnpm 12.8.1 (medians; warm filesystem):
That is about 14% less CPU time and 10% less peak memory for a roughly one-second latency cost. This is a local resource measurement, not a universal speedup claim. Development-main measurements did not show a reliable elapsed-time improvement. The benchmark used Python
wait4resource accounting; the before configuration enabled the previous gzip reporting, and lean used the final command.Linked Issue
Maintainer-requested development performance work; builds on #29345.
Visual Proof
N/A — development tooling and build reporting changes, with no intended application UI change.
Testing
With
ORCA_BACKGROUND_LAUNCH=1, Node 24.22.0, pnpm 12.8.1, and Bun 1.4.3 on Linux:Full
pnpm lean tcpasses.112 focused tests pass, three existing skips: resolved development/production configuration, public entry exports, packaging exclusions, command forwarding, resource limits, compiler scheduling, and fake dev-launcher teardown.
34 focused tests also pass under Node through
pnpm lean test:node.Desktop and standalone web bundles pass their output checks. Desktop production builds exercised both normal and lean modes.
Changed-code quality, formatting, whitespace checks, and precommit hooks pass.
macOS and Windows execution, the full test suite, and complete native/mobile packaging remain for CI. No visible Electron app was launched.
I manually tested these changes locally
Automated tests added/updated, or explained why not below
Review
The command uses the existing cross-platform process host and forwards cancellation. No application RPC, SSH execution, agent status, provider, credential, or integration behavior changes. Caches are worktree-local and packaging-excluded. Limits are per invocation rather than a machine-wide reservation; descendant programs inherit the selected environment limits. UI review is not applicable.
Agent skill upstream boundary
Notes
TypeScript already uses its native compiler, and React already uses Oxc in the parent PR. No compiler replacement or persistent Vitest transform cache is introduced. Full native and mobile builds were not run locally.
Checklist
N/Awith reasonpnpm lint,pnpm typecheck,pnpm test, andpnpm buildpass (or CI will cover; local preferred)