docs(hooks): document the pre-push temp-worktree tool-drift hazard - #376
docs(hooks): document the pre-push temp-worktree tool-drift hazard#376rigel-mintaka wants to merge 1 commit into
Conversation
The pre-push gate runs `moon ci` inside jj-vine's throwaway hook worktree (`/tmp/jj-hooks-worktree-*`), which has the checked-out tree but no direnv activation. So `moon ci` there resolves biome/moon from the ambient system PATH instead of the devenv pins — a system biome that is not the biome.json pin (2.5.4) reformats files the pinned biome leaves clean and reds the gate falsely. Extend the `hk.pkl` header comment with the hazard, a never-`--write`-from-the-worktree warning, the interim workaround (verify in the devenv shell, push with hooks skipped, confirm GitHub CI green), and a pointer that the durable fix — propagating the repo's devenv env into the hook worktree, one fix fleet-wide — is tracked in the zireael/jj-hp lane. Comment-only; the `check = "moon ci"` step is untouched and `hk validate` passes. Spec-impact: none. Refs SEA-2006 Co-authored-by: Matt Wilkinson <matt@rigel.build>
|
Compass engineering docs preview: https://compass-sea-2006-t7-hkpkl-ga.compass-eng-docs.pages.dev Deployed from |
|
Closing unmerged — obsolete. This documented an interim workaround for the jj-hp pre-push temp-worktree tool-drift (hook worktree ran moon ci without the devenv env, resolving off-version biome/moon). The durable fix has since shipped in jj-hp (0.3.10): it injects the repo devenv env into the hook worktree via |
The pre-push gate runs
moon ciinside jj-vine's throwaway hook worktree (/tmp/jj-hooks-worktree-*), which has the checked-out tree but no direnv activation. Somoon cithere resolves biome/moon from the ambient system PATH instead of the devenv pins — a system biome that is not the biome.json pin (2.5.4) reformats files the pinned biome leaves clean and reds the gate falsely.Extend the
hk.pklheader comment with the hazard, a never---write-from-the-worktree warning, the interim workaround (verify in the devenv shell, push with hooks skipped, confirm GitHub CI green), and a pointer that the durable fix — propagating the repo's devenv env into the hook worktree, one fix fleet-wide — is tracked in the zireael/jj-hp lane. Comment-only; thecheck = "moon ci"step is untouched andhk validatepasses.Spec-impact: none. Refs SEA-2006
Co-authored-by: Matt Wilkinson matt@rigel.build