fix(windows): hide the Stop-hook build console (#393) - #398
Frankie-Xu wants to merge 1 commit into
Conversation
🌱 graft blast radiusNothing outside this diff depends on it. 1 area changed; no indexed dependents at depth 2. Who knows this code — 2 people across 1 area
Ownership is git history over each area's own files, weighted towards recent work (120-day half-life). Merge commits and bots are dropped, and you are dropped from your own PR. A name with no Test signal per changed area — 1 ✓Reached = a node under a test path has a resolved edge into the changed symbol. It undercounts anything called indirectly — through a CLI, a spawned process or a dynamic import — so read a low ratio as “look here”, never as a coverage gate.
1 test suite also references this code1 symbol, kept out of the diagram and the table so they cannot crowd out the areas a reviewer has to look at.
Open the interactive graph → — click an area to see the code that changed, and the line that reaches it. |
Summary
sync-run.jswithwindowsHide: true, but that flag is per-spawn and is not inherited. The parent isdetachedwithstdio: 'ignore', so it owns no console.realBuild'sexecFileSyncgrandchild therefore allocated a visiblenode.exewindow on Windows for the duration ofgraft build.windowsHide: trueon that grandchild. Same flag ongraftJsonfor a future console-less caller.graft init's visiblestdio: 'inherit'build is unchanged.Not in this PR
graft init(that build is meant to be seen).runSync.Closes #393
Test plan
execOptsForHiddenBuildcarrieswindowsHide: trueandrealBuilduses it at theexecFileSynccall siteGRAFT_DIR--dirargv test still passesnode --import tsx --test --test-name-pattern "windowsHide|GRAFT_DIR is set|runSync clears" test/claude-hooks.test.ts