The Republic — Updates Since Last Week
86 commits since last week... Over 12 per day, on average 👀👀
Community partners now have much more control over their raids and leaderboards - giving them the ability to manage sprints, recurring sprints, or manually reset leaderboard, etc.
My biggest focus was on building out a caching layer to optimize database usage and building out a much more robust Squad infrastructure to make it easier to manage your Squad's quests, team size, etc.
Major Updates / Features
- Home top navbar removed and moved into the sidebar. The old Home page top navigation was removed. The desktop sidebar now owns the beta notice, notification bell, profile card, profile dropdown, signed-out Join button, community actions, social links, and disclaimer.
- Sidebar profile and notifications upgrade. The user profile card now lives in the sidebar with avatar, username, rank badge, About The Republic, and Log Out. The notification bell also lives in the sidebar for signed-in users and keeps unread-count behavior.
- Battle Map / old map stack removed. The old Battle Map/geospatial app stack was removed, including map shell code, map settings/public map API pieces, PMTiles/map style assets, old map route wiring, and related placeholder behavior.
- Notifications panel “Read All” action. Users can now clear all visible notifications from the panel with a Read All action instead of removing them one at a time.
- Home loading and authentication hardening. Several commits focused on making the Home page load correctly for guests, returning users, and users coming back from Discord authentication. The goal was to avoid stuck loading states, stale cached Home data, and mismatched auth/session states.
- Guest Home loads faster and cleaner. Guest users can now land on the Home route without waiting on signed-in-only bootstrap work.
- App boot flow cleaned up. The application boot process was reorganized into clearer guest/authenticated app paths, with cleaner lazy-loaded app pieces and modal panels. This makes startup behavior more predictable and reduce unnecessary work.
- Modal system cleanup. About, Onboarding, and Bounty Board modal internals were split into cleaner panel components and lazy-loading gates. This keeps modal behavior flexible while reducing app-start overhead.
- Database/read-reduction work continued. More caching and cache-invalidation work landed after the prior report. The app now avoids more repeated reads across Home, Republic access, progression, leaderboard, opportunities, transparency, referrals, and related user/session flows.
- Shared cache read amplification reduced. The shared cache architecture was tightened so repeated requests do less duplicated work and clear only the right cache entries when data changes.
- Unauthenticated cache queries gated. The app now avoids making signed-in-only cache queries before the user is actually authenticated, reducing unnecessary unauthorized requests.
- Legionary promotion gate restored. The “Arise, Legionary” promotion behavior was restored outside the removed map shell so eligible users can still be promoted in the newer Home routing structure.
- Legionary VP threshold lowered. The VP threshold for Legionary progression was reduced in app/server logic and UI copy.
- Squad absolution and treasury payout flow. New squad-related endpoints and UI behavior were added around absolution-style squad actions and treasury payout/VP history support.
- Safer squad actions. Squad actions are now guarded until the app knows the viewer’s current squad role. This prevents users from seeing or taking actions before their role is confirmed.
- Squad guide polish. The Squad guide received multiple fixes for mobile CTAs, responsive layout, final-step behavior, resume-step copy, and “Do next” badge wording.
- Squad directory cache improvements. The Squads page now handles directory/cache state better after users leave or join squads, so the visible state updates faster and more reliably.
- Squads quest workspace added. Squads now have a richer quest workspace flow with squad mission participation, squad-specific chat/channel access, mission participant tracking, and related UI rails.
- Squad chat responsive fixes. Squad chat was adjusted so it behaves better on smaller screens and does not overflow awkwardly.
- Squad chat history routing fixed. Quest/squad chat history routing was improved so users land in the right channel/history view from the Home command center and squad workspace.
- Squad avatar rendering fixed. Squad avatar URL handling was improved so squad cards/rails render squad images more reliably.
- Community leaderboard sprint history and rewards flow. Leaderboard sprint history, reward display, and sprint-related admin/community views were improved so past and current sprint context is clearer.
- Manual leaderboard sprint reset. Admins now have a path to manually reset leaderboard sprint state when needed.
- Leaderboard snapshot coverage improved. Platform leaderboard snapshot generation and coverage were improved so users/community leaderboard data is more complete and reliable.
- Community leaderboard date/window handling simplified. Leaderboard window serialization was simplified so date ranges and sprint windows are easier to handle consistently.
- Manual raid requirements workflow. Admins can now define manual raid requirements, and raid modals/submission flows can show and enforce those requirements more clearly.
- Raid proof and verifier review improvements. Discord proof/evidence is preserved more carefully for verifier review, helping review cases retain the proof context they need.
- Raid automation duplicate tweet updates reduced. Raid automation now avoids duplicate tweet-update behavior in the worker flow.
- Chat system upgrades. Chat routes, channel history, message lists, composer behavior, and real-time channel panels were improved across squad and quest-related chat surfaces.
- Quest chat channel and mission ID handling improved. Quest CTA/chat routing now resolves the right mission/channel details more reliably.
- Conquest modal rail scrolling fixed. The conquest modal side rail now scrolls better instead of trapping or cutting off content.
- Conquest Agent / builder hardening. The conquest-building agent now handles quiz option labels more safely, validates malformed quiz data better, and has stronger document-ingest/context behavior.
- Verification/admin review cleanup. Admin and verifier review areas received fixes around evidence URLs, verification case assignment, tenant submission review utilities, and reviewer-facing proof handling.
- Page-local guide and lock UI improved. Section locks, page-local guide copy, guide badges, and locked/next-step UI were clarified across relevant pages.
- More app root cleanup. A stale root-level app file was removed or retired from active use so tests and runtime code point at the actual app boot structure.
- Multiple deployment checkpoints. Covering the Home/auth fixes, cache/read-reduction work, Squads updates, leaderboard/rewards work, raid requirements, chat fixes, Battle Map removal, and sidebar utility changes.
Specific Bug Fixes
- Fixed Home bootstrap not carrying the right VP/auth payload.
- Fixed guest Home loading so anonymous users are not stuck waiting for signed-in-only data.
- Fixed Home root loading after auth callback.
- Fixed real Discord callback/session timing so authenticated users return to Home correctly.
- Fixed authenticated route redirect behavior.
- Fixed critical deploy/startup errors blocking the app.
- Fixed stale bootstrap/cache data after auth/session changes.
- Fixed unauthenticated users triggering signed-in-only cache requests.
- Fixed database auto-ID wrapper behavior.
- Fixed shared cache reads doing more work than needed.
- Fixed squad transaction read ordering.
- Fixed squad actions appearing before the user’s active role was confirmed.
- Fixed mobile Squad guide CTA clipping.
- Fixed the Current Squad guide final step.
- Fixed Squad guide resume-step copy and responsive layout.
- Fixed Squad directory state after leaving a squad.
- Fixed Squad access/cache state after joining a squad.
- Fixed Squad avatar rendering.
- Fixed squad chat responsive overflow.
- Fixed squad chat history routing.
- Fixed quest chat channel and mission ID resolution.
- Fixed conquest modal rail scrolling.
- Fixed duplicate raid automation tweet updates.
- Fixed leaderboard snapshot coverage gaps.
- Fixed community leaderboard window/date serialization.
- Fixed manual leaderboard sprint reset support.
- Fixed Discord proof evidence being lost or weakened before verifier review.
- Fixed verification evidence URL/review case hardening paths.
- Fixed notification clearing by adding a Read All action.
- Fixed the sidebar notification panel being clipped by the sidebar.
- Fixed the sidebar profile card being squeezed when notifications are disabled.
- Fixed old Home top-nav markup/tests lingering after the sidebar utility move.
- Fixed Battle Map/sidebar placeholder regression risk by keeping Battle Map copy out of the sidebar.