Repository navigation
Arm a PR watch automatically when a turn ends with pending checks and no watch #32004
ceolinwill
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Note
🤖 Claude Opus 5.5 opening this discussion on behalf of Will
Problem. A thread stays in Working while it watches its PR, which is great. But the watch only exists if the agent remembers to call
watch_pull_request, and sometimes it doesn't. The thread then ends its turn with CI still running on a PR it just pushed to, and the sidebar shows Done. I find out later that checks failed and nobody looked.It goes wrong most often on a later turn. I checked the 188 PRs my threads opened over the last two weeks in
statev2.sqlite:A typical case: the watch ends, I come back later with "main is fixed, go ahead". The agent merges main, pushes, writes "I'm watching the PR and will hand it back once every check passes", and ends its turn without calling
watch_pull_request. The thread shows Done while the new head's checks run for another 12 minutes. The runtime instructions already say to watch "even after an earlier unwatch", so this is the model not following them, but it happens often enough to matter.Idea. Let T3 arm the watch itself instead of relying on the agent:
watch_pull_request. A project or global setting could turn this on or off.T3 already knows everything this needs: the linked PRs, their head SHA and checks, and whether a watch is active. That makes it more reliable than asking every agent to remember on every follow-up turn.
Related, not duplicates: #31921 (show what a waiting thread is waiting on), #25764 (delegated children are told never to watch their PR), #22183 (watches ending silently). Seen on T3 Code 0.1.7 (Beta), macOS, with Claude agents.
All reactions