Skip to content

Say what actually lands in the inbox - #166

Merged
imshashank merged 1 commit into
mainfrom
fix/inbox-empty-state
Aug 8, 2026
Merged

Say what actually lands in the inbox#166
imshashank merged 1 commit into
mainfrom
fix/inbox-empty-state

Conversation

@imshashank

@imshashank imshashank commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

Why

Someone looked at an empty inbox and could not tell whether notifications were broken or the inbox was simply quiet. The empty state was part of the reason:

Assignments, mentions, reviews, and PR updates land here.

Reviews and PR updates cannot land there. pr_review_requested, pr_review_submitted, pr_approved, pr_merged, pr_closed and pr_checks_failed are declared in NOTIFICATION_TYPES, but nothing in packages/core or packages/services emits any of them, because the GitHub pull request sync is not built yet.

What the inbox really does

Checked against production: 294 notifications exist, all delivered, across five people. The types that actually fire today are issue_assigned, issue_status_changed, comment_created, comment_replied, mention, reaction and subscription_activity.

The surprising part, and the reason one workspace owner saw nothing at all, is that the actor is excluded from their own notifications. dedupeAudience(groups, [principal.userId]) in issue-service.ts does that deliberately, and it is right: you should not be told about work you just did yourself. But somebody who created and self-assigned 182 of their own issues, and who was the actor on all 294 notifications everyone else received, correctly ends up with an empty inbox and no explanation.

The new copy names what arrives and states that plainly.

Not changed here

The "Pull requests" tab stays. It is scaffolding for the sync that is coming, and the six types already exist in the schema. Once that lands the tab populates and the copy should mention reviews again.

The eight declared-but-never-emitted notification types are tracked separately rather than fixed here.

Greptile Summary

The PR updates the inbox empty-state description to reflect the notifications users currently receive and clarify that actions performed by the user do not notify them.

  • Replaces references to reviews and PR updates with assignments, mentions, replies, and followed-item activity.
  • Explains actor exclusion directly in the empty state.

Confidence Score: 5/5

The PR appears safe to merge because it only changes static inbox copy and introduces no actionable defect.

The revised description remains consistent with the current notification and actor-exclusion behavior, and the change does not affect application logic.

Important Files Changed

Filename Overview
apps/web/src/features/inbox/inbox-view.tsx Updates static empty-state copy without changing rendering, state, or notification behavior.

Reviews (1): Last reviewed commit: "fix(inbox): describe what actually lands..." | Re-trigger Greptile

The empty state promised "reviews, and PR updates". Neither can happen:
the six pr_* notification types are declared but nothing emits them,
because the GitHub pull request sync is not built yet. Somebody reading
inbox zero had no way to tell whether the product was broken or simply
quiet.

It now names what does arrive, and says plainly that your own actions do
not, which is the part that surprises people. The audience builder
excludes the actor by design, so somebody who assigns every issue in the
workspace themselves correctly sees nothing.
@imshashank
imshashank requested a review from pulkitxm as a code owner August 8, 2026 06:17
@vercel

vercel Bot commented Aug 8, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
orbit Error Error Aug 8, 2026 6:19am

Request Review

@coderabbitai

coderabbitai Bot commented Aug 8, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@imshashank, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 6 minutes

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 30797519-a562-455b-b9de-ad56286b713a

📥 Commits

Reviewing files that changed from the base of the PR and between 4aa999d and 3a3f61e.

📒 Files selected for processing (1)
  • apps/web/src/features/inbox/inbox-view.tsx

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added needs tests Touches source without touching a test area: web The Next.js app and its UI labels Aug 8, 2026
@imshashank
imshashank merged commit f4204b1 into main Aug 8, 2026
11 of 12 checks passed
@imshashank
imshashank deleted the fix/inbox-empty-state branch August 8, 2026 06:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: web The Next.js app and its UI needs tests Touches source without touching a test

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant