Repository navigation
chore(pr-kit): add the PR body checker to hush/0.0.x - #108
Conversation
…line The pr-kit workflow runs from main under pull_request_target and checks out the PR's base SHA to run .claude/skills/open-pr/check.ts. hush/0.0.x branched before the kit landed, so every PR into it fails with Module not found. This copies the kit folder from main unchanged.
|
Note The title starts with
|
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review: 1
Please check the settings in the CodeRabbit UI or the
|
There was a problem hiding this comment.
Important
The body checker works in focused tests, but the newly discoverable open-pr skill has a missing sibling dependency that breaks its advertised installation path.
Reviewed changes Reviewed the complete maintenance-branch backport, verified its integration with the workflow on main, and exercised the checker and sibling-dependent entry points.
- Body validation: Adds the CLI and shared contract for PR titles, draft state, required sections, review dispositions, merge danger, and attribution. Focused acceptance/rejection tests and CLI event probes passed.
- Skill discovery: Adds the
open-prinstructions and.agentssymlink, exposing the copied skill to local agents. - Supporting kit: Copies the shell parser, PR gate, installer, version markers, and workflow template unchanged from
main; theopen-prtree hashes match. - CI bootstrap: The existing workflow on
mainexplicitly checks out the PR base SHA, so future events can use this checker after it lands onhush/0.0.x. This PR's current missing-module failure is expected before that bootstrap merge.
gpt-6.1-sol | 𝕏
kit.ts digests both skill folders and gate.ts imports ../land-pr/merge. Without land-pr, kit.ts check and gate.ts fail with ENOENT. Copied from main unchanged.
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes Reviewed 3ffe3cf since the prior Pullfrog review, focusing on the added land-pr sibling and its integration with the existing PR kit.
- Completed the kit: Added the matching
land-prfiles and discovery symlink, resolving the missing dependency in the installer, gate import, and skill handoff. The sibling tree matchesmain, andkit.ts checkconfirms the VERSION 24 digest. - Supplied merge decisions: Added the merge-policy module and landing instructions. Focused gate-loading, invalid-body refusal, symlink, and 13 merge-verdict probes passed, including app identity, duplicate signals, and conflict-fix inheritance cases.
- Preserved bootstrap behavior: Left the workflow unchanged. The current body-check failure still reports the missing checker at the base SHA, as expected until this bootstrap PR lands; repository CI checks are green. The full repository suite was not rerun locally.
gpt-6.1-sol | 𝕏
|
Spec fidelity at 3ffe3cf: no deviations. The goal was to give hush/0.0.x the checker that the pr-kit workflow runs from the base SHA. Both kit folders and their symlinks match main exactly (open-pr tree 5bfb4b0, land-pr tree b782f72). The red PR body check on this PR is the expected bootstrap failure. Its base has no checker until this PR merges. |

Problem
Every PR into
hush/0.0.xfails the PR body contract check. Thepr-kitworkflow runs frommainand checks out the PR's base SHA. It then runs.claude/skills/open-pr/check.ts.hush/0.0.xbranched before the kit landed, so that file does not exist and PR #101 fails withModule not found.Change
Both kit folders are copied from
mainunchanged. Their tree hashes equalmain's (open-pris5bfb4b0,land-prisb782f72).Proof
The first row ran the checker the workflow calls, with PR #101's event payload, on a clean export of each tree.
origin/hush/0.0.x)3ffe3cf)bun .claude/skills/open-pr/check.ts --event event.jsonerror: Module not found ".claude/skills/open-pr/check.ts", exit 1PR body contract: pass. Door two-way, blast radius low., exit 0bun .claude/skills/open-pr/kit.ts checkad36ae9:ENOENTscanningland-prVERSION 24 matches the shipped files., exit 0bun run check3ffe3cfReview
open-prneeds itsland-prsibling, sokit.ts checkandgate.tsfail with ENOENT (Pullfrog P2)3ffe3cfaddsland-prfrommain.kit.ts checkandgate.tsnow load.Merge danger
Door: two-way. Revert this PR to undo it.
Blast radius: low. Only the PR body check reads these files. Package contents, Pi discovery, lint, and typecheck skip them, and
bun run checkstays green on the branch.Changes made by Claude Opus 5.5 via Claude Code