Remove engagement layer app-side (issue #85)#86
Merged
Conversation
Delete the comments feature end to end: API routes, UI components, lib/comments helpers, and their tests. Strip the comment branches from report/moderation code (reports schema, report creation, admin report list and page, ReportActions, RestoreButton, audit page target-type options) and drop the now-unused `comment` rate-limit bucket. Post and user reports keep working; posts.comment_count display is left alone for a later task per the plan. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Everyone gets the reverse-chronological feed the anon path already rendered; the personalized For-You feed and all heat-score ranking (lib/heat.ts, shortlist/rerank/affinity, trending tags/feed/strip, /trending) are gone. Sidebar top-by-type rails switch from heat-score to published_at recency and get retitled "Recent playbooks" / "Recent deep dives". Like/bookmark/comment counts stay wired through for now; Task 3 strips those. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… (issue #85) - Capture .order() call arguments in test mock (orderArgs array) and assert the recency test verifies .order was called with 'published_at' and { ascending: false }; the suite can now detect dropped or reversed sorts. - Remove unused 'hash' icon from RailIconName union and ICON_PATHS, leftover from deleted TrendingTagsRail component. - Update .rail-heading CSS comment to reference only surviving consumers: TopByType (playbooks and deep dives) and FeaturedTagsFallback (featured topics). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Delete the likes/bookmarks routes, buttons, list page, and engagement lookup, and strip like_count/bookmark_count/comment_count out of every UI surface that displayed them: PostCard, the post detail page, the home/latest/tag feeds, and search results. Rename the shared 'engagement' rate-limit bucket to 'follow' since /api/follows (removed in a later task) was its only remaining consumer after likes/bookmarks are gone. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Delete the follow/unfollow feature: the API route, FollowButton, UserCard, follow-state/follow-list lookups, and the followers/following list pages. Strip follower_count/following_count from profile lookups and the ProfileHeader stats row, and drop the now-unused follow rate-limit bucket. The DB still has the follows table and count columns; the app just stops reading them (Task 6 drops the schema). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Delete the view-beacon API route and component; strip view_count from post/profile lookups and the view_count rate-limit bucket. Also removes the now-dead Phase 7 comments CSS block (comments feature was fully deleted in an earlier task on this branch) and fixes tests/docs that were forced stale or broken by these deletions. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- tests/e2e/a11y.spec.ts: remove /trending from PUBLIC_ROUTES - tests/e2e/mobile.spec.ts: delete stale trending-strip test - lib/feed/index.ts + app/page.tsx: rename ShortlistRow to LatestFeedRow - tests/e2e/global-setup.ts: update comment (remove engagement/comments examples) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.
Summary
App-side removal of the engagement layer (part of #85). Comments, likes, bookmarks, follows, view counts, and the heat/trending/For-You feed are deleted; the home page now always renders the reverse-chronological Latest feed via the anon client, sidebar rails are recency-ranked, and moderation is narrowed to post/user report targets.
The DB schema is intentionally untouched here: no app code reads or writes any engagement table, count column, or RPC anymore (grep-verified), so this deploys safely against the current schema. The schema drop follows in the stacked migration PR, which must merge and be applied only after this deploys.
Verification
pnpm typecheck,pnpm test(1047 tests), andpnpm buildall green🤖 Generated with Claude Code