8000 feat(timeline): snooze a source, person or kind for an hour or a week as well as a day by adeelahmad · Pull Request #660 · adeelahmad/lense · GitHub
[go: up one dir, main page]

Skip to content

feat(timeline): snooze a source, person or kind for an hour or a week as well as a day - #660

Merged
adeelahmad merged 1 commit into
mainfrom
claude/project-thread-pf8kii
Oct 19, 2026
Merged

adeelahmad merged 1 commit into
mainfrom
claude/project-thread-pf8kii

Conversation

@adeelahmad
Copy link
Copy Markdown
Owner

Requested by Adeel · project thread

Description

Before: the menu beside Mute on a timeline item snoozed a source, person or kind for a day only; any other length meant the API.

After: the menu offers Mute Work Gmail for an hour, for a day and for a week, and the same three for the item's kind, next to muting for good. The notice says how long ("Muted Work Gmail for a week"), and Undo or the Muted row lifts it as before.

How: the lengths live in one place in the page's model (SNOOZES, snoozeUntil); the menu lists them, and useMutes().mute takes the length and sends until. No server change.

Motivation and Context

A refine-later item of the activity stream's muting step (#643): "a snooze of your own length from the page". A snooze to a time you pick stays on the refine-later list (the API already takes any until).

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change; ! in the title)

Checklist:

  • The title is a Conventional Commit.
  • My code follows the code style of this project (make hooks checks it on commit).
  • I added or updated tests.
  • My change requires documentation updates, and I have updated docs/ accordingly.
  • Users need more than the title to understand it, so I wrote it as a fragment in changelog.d/ (timeline-snooze-lengths.md).

Done questions (AGENTS.md)

  • Goal: three snooze lengths from the page; merged on green CI.
  • Agents: POST /api/v1/activities/mute and mute_activities already take any until.
  • Zero setup: nothing to configure.
  • Fewest clicks: two clicks for any of them, as for a day before; Undo, no confirm.
  • Configurable: n/a, no new setting.
  • Light: no new request.
  • Private and secure: mutes stay each person's own; no new surface.
  • Cost: no model call.
  • User decides: each snooze is the person's own pick; defaults unchanged.
  • Upgrades: nothing stored changes shape.
  • Honest: docs/timeline.md, Muting, names the three lengths.
  • Tested and documented: jest the menu beside Mute snoozes a source for an hour, a day or a week, or mutes the item's kind and a snooze ends an hour, a day or a week from now; docs, requirements.md, changelog.d.
  • Open standards: n/a.
  • Reported: result goes back in the thread; refine later: a snooze to a time you pick.
  • Reuse: the existing mute menu, useMutes and the mute route.

CI on the PR decides the merge.


Generated by Claude Code

… as well as a day

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ln25ykE6uBDqx21WBU94SX
@adeelahmad
adeelahmad merged commit 6853965 into main Oct 19, 2026
10 checks passed
@adeelahmad
adeelahmad deleted the claude/project-thread-pf8kii branch October 19, 2026 03:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

0