Skip to main content

πŸ”΄ Release v2.371.2

⭐⭐⭐ Complex β€’ 15 commits β€’ 164 files
This massive release brings enterprise-grade UI customization through Lite experience settings, powerful admin tools for leaderboard validation and Shopify integration, improved chat AI reliability with multi-provider routing, and critical bug fixes for mobile layouts and reward distribution. Admins gain real-time filter accuracy and better setup guidance, while users enjoy fixed accessibility and improved mobile experience.

What’s New

  • Lite experience settings with per-version preview β€” Design and preview multiple UI themes (calendar, journey, mono, stamp) without affecting live users
  • Accurate challenge status filters in real-time β€” Filter badges now show exact counts instead of approximations, syncing instantly as statuses change
  • Leaderboard setup validation with health panel β€” Catch configuration issues before launch with rank coverage indicators and dangerous-edit warnings
  • Shopify integration management in admin β€” Configure Shopify checkout and loyalty settings directly under Widget & Launcher
  • AI chat reliability improvements β€” Chat models now route through OpenRouter with automatic fallback to Vercel AI Gateway, reducing outages
  • Mobile modal responsiveness β€” Modals and drawers now fit small screens without overflow, improving mobile wallet and reward flows
  • Profile upload feedback β€” Users now see clear error messages when profile pictures fail validation
  • Leaderboard reward distribution fix β€” Rewards now correctly distribute at and after leaderboard expiry

Admin Highlights

  • Lite Experience Settings – Create multiple UI layouts (Calendar, Journey, Mono, Stamp) and preview each per-version before publishing to users
  • Per-Version Live Preview – Toggle between lite versions instantly in preview mode to test themes, layouts, and brand consistency
  • Shared Theme Editor – Edit colors and styling once, share across all lite experience versions in a community
  • Challenge Status Filter Accuracy – Exact badge counts for Draft, Live, Paused, and Completed challenges that update in real-time
  • Leaderboard Setup Health Panel – Visual rank coverage bar, participant count warnings, and dangerous-edit guards prevent misconfigured leaderboards
  • Leaderboard Validation on Save – Configuration errors surfaced before publish, including missing reward allocations and insufficient rank ranges
  • Shopify Integration Tab – Centralized control for Shopify checkout settings, loyalty tier configuration, and brand sync in admin settings
  • AI Chat Model Reliability – Admin chat now routes through OpenRouter with gateway fallback, reducing model provider outages
  • Theme Color Reset – Set brand colors to null to restore defaults during branding experiments

User Highlights

  • Better Mobile Experience – Modals, drawers, and reward details now fit all screen sizes without overflow or clipping
  • Profile Upload Error Messages – Clear feedback when profile pictures don’t meet requirements (size, format, dimensions)
  • Accessible Reward Badges – Popular reward badges now visible and readable by screen readers on benefits cards
  • Fixed Flick Game Layout – Ball stays in view during gameplay on desktop screens with proper viewport letterboxing
  • Session Stability Improvements – Faster auth callback handling reduces timeouts during peak engagement periods

Detailed Changes

Lite Experience Settings (NUDJ-4022) β€” New admin interface for designing and previewing lite UI experiences. Supports Calendar, Journey, Mono, and Stamp layouts with real-time per-version preview and shared theme editing.Leaderboard Setup Validation (NJ-771) β€” Added health panel showing rank coverage, participant counts, and configuration warnings. Blocks dangerous edits with confirmation dialog. Validates reward allocation and assignment before save.Challenge Status Filter Accuracy (NJ-786) β€” Real-time badge counts for challenge statuses (Draft, Live, Paused, Completed). Powered by new CommunityReadinessService with comprehensive challenge analysis.Shopify Integration Tab (NJ-762) β€” Moved Shopify setup under Widget & Launcher settings. Consolidates checkout, rewards, and brand configuration.AI Chat Model Routing (NUDJ-0000) β€” All admin chat now routes through OpenRouter with automatic fallback to Vercel AI Gateway. Improves reliability and reduces single-provider dependency.Brand Color Nullification (NJ-889) β€” Admins can now set brand colors to null in branding config, resetting to default theme colors.
Modal Responsiveness (NUDJ-578) β€” Fixed overflow and clipping on small screens. Updated modal-viewport component and spend-view flow for responsive layouts. Improved purchase flows (asset, giveaway) and reward detail pages.Profile Upload Feedback (NUDJ-678) β€” Users now see validation errors when profile picture uploads fail. Updated upload-dropzone component to surface rejection reasons in profile settings and comments.Session Optimization (NUDJ-0000) β€” Avoid after-phase request APIs in NextAuth session callback to prevent timeouts during high engagement periods.Accessibility Improvements (NJ-857) β€” Popular reward badge on benefits cards now properly visible and exposed to screen readers. Updated spend-view styling across widget and main app.Lite Experience Routes β€” New routes for each lite experience variant (calendar, journey, mono, stamp) with full challenge, action, and wallet support.
Leaderboard Distribution Fix (NJ-769) β€” Corrected logic to distribute leaderboard rewards properly at and after expiry. Added comprehensive integration tests for distribution event triggers.Leaderboard Validation β€” New validate-leaderboard-config-setup.ts validates configuration completeness. New service CommunityReadinessService (1036 lines) provides real-time challenge status analysis for accurate filter badges.Theme API Enhancement (NJ-889) β€” Updated style-platform-config-dto.model.ts to accept null values for color reset. Added comprehensive null-handling tests.Policy URL Persistence (NJ-891) β€” Community legal policy URLs now persist correctly on branding save.Distribution Index β€” Added distribution_event_allocations_index for optimized leaderboard distribution queries.
Flick Game Viewport (NJ-893) β€” Fixed letterbox aspect ratio for flick game play area. Ball now stays in view on desktop screens with proper portrait orientation constraints.

Breaking Changes

None in this release.

Technical Notes

Lite Experience Architecture β€” Community-gated feature enabling multiple UI layouts stored in community.liteConfig. Each layout (Calendar, Journey, Mono, Stamp) is independently designed with shared theme inheritance. CommunityReadinessService β€” New 1036-line service replacing AuthConfigService for real-time community configuration analysis. Powers accurate challenge status badges, leaderboard validation, and setup health checks. Leaderboard Distribution β€” Fixed edge case where distribution events queued after leaderboard expiry didn’t trigger correctly. Now properly handles statuses Expired, CompletedExpired, and PausedExpired. Chat Model Routing β€” OpenRouter primary with Vercel AI Gateway fallback improves resilience. OpenRouter unavailability (missing API key) gracefully falls back without service interruption. Database β€” New distribution event allocations index on leaderboard config ID for optimized reward distribution queries.

Per-App Changes

AppTypeSummary
AdminfeatLite experience settings, leaderboard validation, Shopify integration, challenge status accuracy
UserfixModal responsiveness, profile upload feedback, session optimization, accessibility
APIfixLeaderboard distribution, validation, policy persistence, theme colors
GamesfixFlick game viewport letterboxing
DatabasechoreDistribution event allocations index
Design Systemchorei18n entries for accessibility badges

Contributors

Derek CounihanDerek Counihan6 commits β€’ +1,796/-338 lines

James CockayneJames Cockayne2 commits β€’ +2,898/-1,079 lines

MoMo2 commits β€’ +2,573/-522 lines

Zuhayrul KarimZuhayrul Karim1 commit β€’ +1,559/-38 lines

David ChenDavid Chen3 commits β€’ +155/-15 lines

Release Stats

MetricValue
Total Commits15
Lines Added+9,384
Lines Removed-2,227
Files Changed164
Release SizeπŸ”΄ Massive
Complexity⭐⭐⭐ Complex

v2.371.2 deployed on June 9, 2026