feat: Phase 6 — interactions, thread view, notifications + home-feed modernization #1
No reviewers
Labels
No labels
auth
bug
composer
correctness
database
durability
enhancement
feeds
interactions
notifications
performance
reliability
safety
security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
starsetbyte/peregrine!1
Loading…
Reference in a new issue
No description provided.
Delete branch "claude/phase-6-interactions-thread-notifications"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Task 1 (complete): Wire like/repost to real AT Protocol API - PostEntity: likeUri/repostUri nullable columns for deleteRecord rkey lookup - PostDao: 3-param updateLike/updateRepost to persist viewer URIs - FeedRepository: stores real viewer URIs from API; removes "cached" sentinel - InteractionRepository: optimistic Room write → createRecord/deleteRecord → revert on error - FeedViewModel/CustomFeedViewModel: inject InteractionRepository, expose snackbarFlow Task 2 (partial): RepostBottomSheet composable added; FeedHostScreen wiring pending - RepostBottomSheet: ModalBottomSheet with Repost/Undo Repost + Quote Post rows - PeregrineNavHost: compose route extended with quoteUri/quoteCid/quoteHandle optional params - FeedHostScreen not yet updated to match new nav host signature (compile-blocking) - Composer quote post support (ComposerRepository/ViewModel/Screen) not yet applied Task 3 (complete): Thread detail screen - ThreadModels: PostThreadResponse + ThreadViewItem union with TypedUnionSerializer - FeedService: getPostThread endpoint - ThreadRepository: getThread() flattens parent chain + depth-1 replies - ThreadViewModel: assisted inject with postUri, StateFlow<ThreadUiState>, retry/like/repost - ThreadScreen/ThreadRoute: LazyColumn with parents → focused post (surfaceVariant, scroll-to) → replies - PeregrineNavHost: thread/{postUri} route; shell-scoped NotificationsViewModel; BadgedBox on tab Task 4 (DB only): Notification Room layer added - NotificationEntity + NotificationDao: PagingSource, upsertAll, deleteAll, getUnreadCount - PeregrineDatabase v8 includes NotificationEntity - NotificationService/NotificationModels/NotificationsRepository/ViewModel/Screen still pending See docs/PHASE_6_STATUS.md for full status and compile-blocking gaps. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>rerun checks