Conversation
…ements from InboxEngine
blockOrg / unblockOrg / getBlockedOrgs server actions (zod-validated, rate-limited, idempotent). Hiding unfollows and following unhides, each in one transaction. notFromHiddenOrg() filters hidden orgs from the map and org suggestions; getOrg/getOrgs expose isHidden.
- For you: +2.5 x source quality (announced on a listserv: min(1, log2(1+n)/2); unannounced MyPrincetonU listing: -0.3; Forum-created: +0.2). Org affinity weight 1 -> 4 so followed orgs reach the first pages; diversity cap kept. - Sorts: foryou | soonest | recent (coalesce(announced_at, created_at) desc), validated with zod; same candidate set for every sort. - Hidden orgs excluded from candidates in every sort, similar events and friends' activity. Pinned asOf snapshots follows/hides/new events so pagination is stable; orgs hidden since asOf drop out without shifting. - FeedPage returns nextOffset/remaining; event detail exposes follow/hidden. - Unit tests for scoring/sorts; DB-backed test for hides, sorts, paging. - docs/ranking.md updated.
A ⋯ menu (shadcn DropdownMenu) with Follow/Unfollow <Org> and Hide events from <Org>, shown only for events with an org. Hiding shows a sonner toast with Undo (restoring a follow the hide removed).
…hide from cards Sort sits beside the Cards/List toggle, lives in ?sort= (zod-validated on the server) and is remembered per browser. Pagination uses the server's nextOffset/remaining with asOf, per sort. Hiding an org drops its cards at once and re-reads the counts; following updates every card from that org.
Org page keeps Follow primary and adds a secondary menu (Hide from my feed / Show in my feed) plus a slim notice with Undo while hidden. The Orgs page gets a Hidden chip (shown once something is hidden, /orgs?view=hidden) listing hidden orgs with Unhide; hidden orgs are marked in the main list.
… overflowing on phones
The standalone per-event hide icon is gone from cards and list rows. The ⋯ menu is on every feed card: Not interested in this event (same stub + Unhide, now with an Undo toast), then Follow/Unfollow and Hide events from the org when there is one.
A display name equal to the NetID (new accounts) or empty counts as no name. Home reads it from the database, since the session name is captured at sign-in and stays the NetID after onboarding. Onboarding's completion line follows the same rule.
Feed controls: hoist listserv-announced events, sort options, follow/hide orgs
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.
Promotes #58 to https://forum.tigerapps.org (migration 0006).
Report: https://claude.ai/artifact/GPsuX6BNxsRyApw62oW37c