Allow following channel messages before their first reply - #7692
Conversation
🔐 Codex Security Review
|
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c265db12de
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
wesbillman
left a comment
There was a problem hiding this comment.
Carl, an automated reviewer, commenting via Wes’s GitHub account.
Reviewed head da4ca7b9d6bbdf93bb13695ff022dbef351959cf against base/merge-base 6dfd145cde4bf0d45091de1cc5e6c7e3462d5703.
The feature is a good fit: explicit interest before a first reply avoids posting a throwaway reply and preserves opt-in notification defaults. Mattermost documents this exact zero-reply-message interaction; Slack has the same broader per-thread notification control. The small change reuses existing follow storage and notification routing.
Requesting changes for two user-visible state/behavior mismatches below. These can be addressed without introducing a new subscription system or changing default notification policy. Keep the existing self-authored/participation, pending-message, reload, and broadcast-root regressions; add coverage for mentioned-only membership and the intended DM boundary.
Validation: current-head CI is green, including Desktop Core and four smoke-E2E shards. Completed CI shard-4 logs confirm all three new thread-follow browser regressions passed. I traced UI -> follow/mute persistence -> live and catch-up notification consumers. Focused exact-head Node probes reproduced the mentioned-only predicate mismatch and the DM callback bypass using production code. I did not rerun broad CI suites or exercise native OS banners. The PR body's old Rust CI-failure note should also be refreshed (non-blocking).
b199568 to
0b8a944
Compare
wesbillman
left a comment
There was a problem hiding this comment.
Carl, an automated reviewer, commenting via Wes’s GitHub account.
No remaining material findings in this follow-up review. Both prior P2 blockers are addressed: mention-only interest now leaves Follow available without broadening notification defaults, and DM timeline rows omit Follow/Unfollow in both plain and thread-summary layouts. The mute snapshot also invalidates the menu immediately for implicitly followed roots.
Reviewed head 0b8a944905b48f4847831b1c68b53c8417b58e8b against base/merge-base 3b2e50b15c6afba3ff3b8fbe1bdf0a7a69d29f7b.
- Validation: current-head CI is green. Smoke shard 4 confirms all six thread-follow regressions passed without retries. An exact-head local probe compared the production menu predicate with the production ordinary-reply notification policy across all 32 follow/mute/participation/authorship/mention combinations; all agreed, and direct mentions retained their existing behavior.
- Remaining limits: native OS banners were not exercised. Broad CI suites were not rerun locally; unrelated smoke tests passed after retries.
- Merge status: GitHub currently reports merge conflicts (
DIRTY). Resolve those and validate the resulting head before merge. This is a comment-only re-review, not approval.
f4006f0 to
c88b934
Compare
Signed-off-by: Matthew Boston <mboston@squareup.com>
Signed-off-by: Matthew Boston <mboston@squareup.com>
Signed-off-by: Matthew Boston <mboston@squareup.com>
Signed-off-by: Matthew Boston <mboston@squareup.com>
Signed-off-by: Matthew Boston <mboston@squareup.com>
21ae030 to
735cd48
Compare
Main added eight commits since the last merge: mobile onboarding and push settings (#8019, #8025, #7526), desktop reads after channel writes (#7999), following a channel message before its first reply (#7692), two ACP fixes (#7568, #8022) and the macOS icon (#8018). They change buzz-acp, desktop, mobile, CI workflows and tooling only. No file is changed on both sides, and main adds no migration. The merge is textually clean and needs no follow-on edit. buzz-db, buzz-relay, migrations, schema and Cargo.lock are byte-identical to the branch before the merge, and this branch's diff against main is unchanged: the same 31 files with the same added and removed lines. Co-authored-by: Eva <011987e296fd5006292d2f930b574be47c7801048d1983c46c425d3c95f0cffd@buzz.block.builderlab.xyz> Signed-off-by: Eva <011987e296fd5006292d2f930b574be47c7801048d1983c46c425d3c95f0cffd@buzz.block.builderlab.xyz>
Summary
Channel messages only offered Follow thread after receiving a reply. Add Follow/Unfollow to delivered messages immediately, so users can opt into future replies. Keep the same follow state when broadcast replies gain replies of their own.
Threads you authored, participated in, or explicitly followed offer Unfollow. A mention alone leaves Follow available. These controls apply to channel timelines; DM notification behavior remains unchanged.
Related issue
None found in existing issues or PRs.
Testing
Screenshots