Conversation
Thread transfer impact
This comment will update automatically after the next completed run. |
This branch has not been deployed
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.
Note
🤖 Claude Opus 5.5 on behalf of Oliver
ELI5
If you want, T3 Code can tuck a thread away once its pull request's CI comes back all green, and bring it back if a check later fails or someone leaves review feedback.
Why
A thread whose PR is green usually needs nothing until review. It still sits in the inbox until you snooze it by hand.
Implementation
snoozeGreenPullRequests: off (default),"indefinitely", or a number of hours. Settings → General → Organization on web, Threads settings on mobile. Gated on a newpullRequestWatchAutoSnoozecapability.checks_finishedis the only hit and every check passed or skipped. A green delivery arms a row inpull_request_auto_snoozes(migration 058).thread.snooze. A failed reply, a pending approval, a pin, or a snooze the user already set drops it instead.thread.unsnooze(newpull-requestreason). Merge/close, a timer wake, a manual unsnooze, or new agent activity retire the row without waking anything.INDEFINITE_SNOOZE_UNTIL), so the snooze model needs no new wake state. Plain open-ended snoozes show∞instead of a countdown.pullRequestSnooze(PR,wokeAt,wakeReasons) in its JSON payload, so no projection migration. Auto-snooze sets it, apull-requestunsnooze records why it woke, and any manual snooze, wake, pin, or new message clears it.Why poll instead of webhooks
T3 servers usually run on a laptop behind NAT, and GitHub webhooks need a public URL plus admin access to each repo. The observer already exists and works anywhere
ghdoes. One read per snoozed PR every 15 minutes is small next to the one-minute watch poll.UI Changes
Before: no setting; a green thread stays in the inbox until you snooze it by hand.
After:
Snoozed and watching:
Woken by a review comment:
https://gh-file-drop-api-prod-galwoqjslzlnws6s.oliver-boorstein.workers.dev/f/8b6e8623fe7124ae/wake.mp4
Full workflow from the first iteration (the snoozed row showed
∞before the eye icon landed):Workflow, recorded against the sandbox PR flamboh/t3-pr-ui-sandbox#13:
https://gh-file-drop-api-prod-galwoqjslzlnws6s.oliver-boorstein.workers.dev/f/be99c2e2fc5ab50a/clip-1-settings.mp4
https://gh-file-drop-api-prod-galwoqjslzlnws6s.oliver-boorstein.workers.dev/f/aaf07811bb549a67/clip-2-agent.mp4
https://gh-file-drop-api-prod-galwoqjslzlnws6s.oliver-boorstein.workers.dev/f/34c4bfb27fda62f3/clip-3-snooze.mp4
https://gh-file-drop-api-prod-galwoqjslzlnws6s.oliver-boorstein.workers.dev/f/37ce8a2dd5db7cbe/clip-4-wake.mp4
Built with Claude Opus 5.5 in Claude Code (T3 Code).