feat: add repository-owned babysit-pr skill - #25
Merged
Conversation
## Summary - Serialize watcher and retry-controller access to the PR state file - Reserve one durable per-head retry cycle before rerunning any workflow - Report per-run trigger failures without rolling back the consumed budget - Add regression coverage for partial command failure and competing state ## Why - Keep bounded retry policy correct across partial GitHub failures and concurrent watcher activity
## Summary - Centralize repository/PR state-path resolution for every watcher mode - Route one-shot snapshots through the same lock as watch and retry operations - Reject target identity changes while the state lock is held - Add focused one-shot locking and target-change coverage ## Why - Prevent one-shot state writes from racing with and erasing durable retry reservations or feedback-deduplication state
## Summary - Pass the locked state path into snapshot collection - Reject live target drift before reading or writing state - Replace mocked mismatch coverage with a real double-resolution regression ## Why - Ensure every state mutation occurs under the exact repository and pull request lock
## Summary - Capture the initially resolved repository and pull request as immutable lock context - Reject target drift before any state read or write, including explicit state files - Add regression coverage for automatic target changes with a fixed state path ## Why - Keep every snapshot and retry fenced to the exact pull request whose state lock was acquired
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
TL;DR
Adds a portable, repository-owned
babysit-prskill that drives an existing GitHub PR through candidate-bound validation, feedback, review, CI, mergeability, and an explicitly authorized completion policy.Summary
ready_to_merge,merge_when_ready, andwatch_until_closedcontracts with strict authority and mutation-ownership boundaries.review-code-changeevidence after head-changing fixes and for standalone readiness when the caller has not supplied current evidence.implement-ticketremains the dependent Delegate implement-ticket PR lifecycle to babysit-pr #24 follow-up.Validation
just checkgit diff --checkpython3 skills/babysit-pr/scripts/gh_pr_watch.py --repo shaug/agent-scripts --pr 22 --onceTickets
Fixes #23