fix(run): add node-gyp bootstrap to script PATH#518
Conversation
Greptile SummaryThis PR adds node-gyp availability to
Confidence Score: 5/5Safe to merge; the lazy shim correctly defers all registry access until node-gyp is actually invoked by a script. The core concerns from previous review threads are fully resolved by the lazy mechanism. Remaining observations are minor style nits that do not affect correctness or reliability. No files require special attention. Important Files Changed
Reviews (4): Last reviewed commit: "[autofix.ci] apply automated fixes" | Re-trigger Greptile |
0fb4ccb to
80038f9
Compare
80038f9 to
f262ae9
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit f262ae9. Configure here.

Summary
aube run/aube test..binto scriptPATHwhen ambientPATHhas nonode-gyp.Root Cause
Dependency lifecycle scripts already used aube's node-gyp bootstrap path, but regular package script execution only prepended the project's
node_modules/.bin. If the host PATH did not already containnode-gyp,aube testcould fail withnode-gyp: not found, diverging from pnpm/npm script behavior.Validation
cargo fmt --checkcargo check -p aubecargo buildmise run test:bats test/node_gyp_bootstrap.batscargo clippy -p aube --all-targets -- -D warningscargo fmt,shellcheck,shfmt,cargo clippyNote
Medium Risk
Touches script execution environment (
PATH+ new env vars) and adds a hidden bootstrap subcommand, which could affect howaube run/testexecutes user scripts across platforms if the shim/lookup logic misbehaves.Overview
aube run/aube testnow ensurenode-gypis available to package scripts when it’s not already on the ambientPATH, by prepending a lazy node-gyp shim bin dir (and passingAUBE_NODE_GYP_EXE/AUBE_NODE_GYP_PROJECT_DIR) alongside the project’snode_modules/.bin.The existing install-time node-gyp bootstrap has been refactored to expose cached-ensure and shim helpers, and a hidden
__node-gyp-bootstrapCLI subcommand was added to print the resolved bootstrapped binary path (used by the lazy shim). Tests and the pnpm import tracker were updated to cover direct, indirect, workspace-root, and no-bootstrap scenarios.Reviewed by Cursor Bugbot for commit 365d26c. Bugbot is set up for automated code reviews on this repo. Configure here.