ci: add shared-inputs stamp drift check to CI and pre-commit - #2069
Conversation
A stamp generated before a new shared input is git-added is silently stale; check-release-triggers only verifies that stamp files were touched, not that their hashes are current. Regenerate-and-diff in CI and auto-restamp in the pre-commit hook close that gap. Co-authored-by: Cursor <cursoragent@cursor.com>
The full EditMode suite only runs on schedule or workflow_dispatch of unity-editmode-tests.yml. Without this note, agents can wrongly assume PR CI covers EditMode verification. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (1)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthroughCI now checks regenerated shared release-input stamps for drift and documents that the full Unity EditMode suite runs only on scheduled or manually dispatched workflows. ChangesCI consistency checks
Estimated code review effort: 1 (Trivial) | ~5 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
The per-file partial-staging loop only inspected staged paths, so an unstaged edit to another shared input could still leak into the stamp hash. A single dirty-path check covers both cases. Co-authored-by: Cursor <cursoragent@cursor.com>
Summary
User Impact
git add-ed could ship with a silently stale hash.check-release-triggersonly checked that stamp files were touched, not that their values were current (this happened in PR feat: replace unknown-command list with closest-match suggestions #2063 and was found only by manual recalculation in review).Changes
Check shared-inputs stamp driftstep tobuild-cliinbuild-and-test.yml(regenerate-and-diff on the two stamp files only)..husky/pre-committo detect staged shared-input paths, reject partial staging / unstaged stamp edits, restamp, andgit addthe stamp files.AGENTS.mdthatunity-editmode-tests.ymlruns only on schedule /workflow_dispatch, never on PR CI.Regenerate-and-diff reuses
scripts/stamp-release-inputs.shso the hash logic is not duplicated in Go. The hook's path filter is intentionally coarser than the stamp script's real input list; restamping is idempotent, so a false positive is a no-op.Verification
scripts/stamp-release-inputs.shon a clean branch: porcelain empty (no pre-existing drift).scripts/test-stamp-release-inputs.shpassed.