Skip to content

feat(web): snooze a thread until its pull request needs attention - #7

Open
flamboh wants to merge 1 commit into
t3code/attention-snooze-serverfrom
t3code/attention-snooze-web
Open

flamboh wants to merge 1 commit into
t3code/attention-snooze-serverfrom
t3code/attention-snooze-web

Conversation

@flamboh

@flamboh flamboh commented Oct 7, 2026

Copy link
Copy Markdown
Owner

Note

🤖 Claude Opus 5.5 on behalf of Oliver

Important

Middle of the stack: server → web → mobile. This PR's own change is the top commit.

What's added

Web and desktop UI for snoozing a thread until its pull request needs attention.

  • Snooze menus: "Until it needs attention" appears in every snooze menu (sidebar row, context menu, chat header and bulk selection). It shows when the server advertises threadSnoozeUntilAttention and the thread has an open linked PR, and isn't offered on subagent or settled threads. It respects operate permission.
  • Command palette: "Snooze until it needs attention", plus a new "Wake thread" action, which also covers timed snoozes.
  • Settings: Snooze pull requests awaiting review in Settings → General. It's disabled with a status line on servers without the capability.
  • Sidebar: the Snoozed section shows an eye where a timed snooze shows its wake time, and sorts timed snoozes first.
  • Thread view: the status line reads "Snoozed until its pull request needs attention · Wake now". While the thread is snoozed, its PR watches are hidden from the composer's background-work banner, so "Waiting on monitor … Stop" doesn't present the watch as the thread's state. Stop stays in the thread details card.

Screenshots

Sidebar Snoozed section showing an attention-snoozed thread with the eye indicator

Snooze menu with the new "Until it needs attention" entry

Settings → General with the "Snooze pull requests awaiting review" toggle

A full demo video will go on the upstream PR.

Validation

  • Adversarial review rounds with GPT-6.1-Sol until a round came back with no findings.
  • A real-browser pass caught a banner-priority bug that code review missed; it's fixed.
  • Logic tests: snooze availability, palette actions, sidebar sort and drop, composer background-work filtering, permissions, and settings restore. Web typecheck passes.

Implemented by Claude Opus 5.5 subagents through the T3 Code orchestrator, reviewed by GPT-6.1-Sol (Codex), and coordinated by Claude Opus 5.5 in Claude Code within T3 Code.

Every snooze menu on web and desktop (the sidebar row's hover button and
context menu, the bulk selection menu, and the chat header menu) offers
"Until it needs attention" when the thread links an open pull request and
its server advertises threadSnoozeUntilAttention. The command palette offers
"Snooze until it needs attention" for the current thread the same way, and
"Wake thread" while it is snoozed. Both snooze paths dispatch
thread.snooze-until-attention through snoozeThread, so rejections toast like
other snooze failures and Undo wakes the thread. offersSnoozeUntilAttention
holds the availability rule, and snoozeThread refuses the command for a
server without the capability.

The snoozed shelf shows an eye in place of the wake countdown and sorts
these threads after timed snoozes, oldest snooze first, so a new one joins
the end. The thread's status line reads "Snoozed until its pull request needs
attention" in place of the wake time. Dropping a row out of the shelf and undoing
a settle carry the new flag. Settings → General gains "Snooze pull requests
awaiting review", disabled unless every selected environment supports it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L labels Oct 7, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant