sojorn/sojorn_app/lib/screens/home
Patrick Britton 15e83c6a14 feat: Flutter group nav, quip repair API, share, capsule key rotation, admin groups/quips pages
Flutter:
- clusters_screen: _navigateToGroup now pushes real GroupScreen (was print)
- public_cluster_screen: calls GET /groups/:id/feed instead of fetchNearbyBeacons
- feed_sojorn_screen: _sharePost uses share_plus
- api_service: getSignedMediaUrl calls Go /media/sign endpoint
- quip_repair_screen: fully rewired to Go admin API (GET /admin/quips/broken, POST repair)
- private_capsule_screen: auto key rotation on open (_checkAndRotateKeysIfNeeded),
  _performKeyRotation helper; _CapsuleAdminPanel now ConsumerStatefulWidget with
  working Rotate/Invite/Remove/Settings modals

Admin panel:
- Sidebar: Groups & Capsules + Quip Repair links added
- /groups: full group management page with member panel + deactivate/remove
- /quips: quip repair page with per-row and repair-all
- /algorithm: live feed scores table (lazy-loaded)
- api.ts: listGroups, getGroup, deleteGroup, listGroupMembers, removeGroupMember,
  getBrokenQuips, repairQuip, setPostThumbnail, getFeedScores

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-17 15:45:42 -06:00
..
feed_personal_screen.dart feat: Add feed filtering UI with FeedFilterButton and integrate into personal feed 2026-02-17 10:33:32 -06:00
feed_sojorn_screen.dart feat: Flutter group nav, quip repair API, share, capsule key rotation, admin groups/quips pages 2026-02-17 15:45:42 -06:00
full_screen_shell.dart security: sanitized baseline for public release 2026-02-15 00:33:24 -06:00
home_shell.dart fix: Navigate to beacon tab instead of pushing new BeaconScreen to avoid duplicate GlobalKey error 2026-02-17 10:48:13 -06:00