Skip to main content

🔵 v2.407.17

⭐ Simple • 4 commits • 12 files
This release stabilizes the rewards system and fixes the widget landing page configuration. We reverted a complex optimization that was causing issues, eliminated 500 errors when fetching rewards linked to legacy achievement data, and restored the widget landing page toggle to work as intended for new communities.

What’s New

  • Rewards system stability – Fixed critical 500 errors when fetching rewards linked to achievements with incomplete data
  • Widget landing page control – The standalone landing page toggle now works correctly and defaults to enabled for new communities
  • Simplified architecture – Removed complex optimization layer that was introducing reliability issues; system now uses proven aggregation approach

Apps Updated

User App

✓ Updated - Widget landing page behavior fix

API

✓ Updated - Rewards hydration stability improvements

Admin

✓ Updated - Widget settings UI fix

MCP Server

— No changes

Games

— No changes

Database

✓ Updated - Migration cleanup

Detailed Changes

Rewards System Reliability

Fixed 500 errors when fetching rewards with legacy achievement data – The getPaginatedRewards endpoint was failing when a reward was linked to an achievement tier that lacked a complete criteria configuration. This occurred with legacy or partially-migrated achievement documents. The fix ensures the rewards mapper always returns fully-populated achievement progress data, preventing schema validation failures downstream.Simplified rewards aggregation architecture – Reverted the complex rewards hydration optimization introduced in v2.407.13 that used specialized database indexes and lookup queries. This simplification restores the proven aggregation pipeline while maintaining the same API contract and performance characteristics.Changes:
  • Fixed getDefaultAchievementProgress helper to handle missing or null criteria gracefully
  • Updated reward-to-integration mapper to always produce valid schema output
  • Removed complex hydration lookup layer and associated database migrations
  • Added comprehensive test coverage for legacy/malformed achievement tier data

Widget Landing Page Configuration

Widget settings section now displays correctly – The “Standalone landing page” section in Community Settings > Brand Kit was collapsed by default and didn’t display the landing-page toggle control. Now it expands on load so admins can immediately see and adjust the landing-page settings.Changes:
  • Fixed the section defaultOpen behavior in brand-kit settings
  • Added tests confirming the toggle renders and functions correctly

Widget Landing Page Behavior

Landing page now enabled by default for new communities – The widget’s standalone landing page (shown to logged-out visitors who open the widget URL directly) was defaulting to disabled when no configuration existed. Now it defaults to enabled, providing new communities with an immediate branded welcome experience.Changes:
  • Updated landing config resolver to default enabled: true instead of false
  • Updated tests to reflect the new default behavior

Admin Highlights

  • Widget Landing Page Settings – The “Standalone landing page” section in Community Settings > Brand Kit now opens by default and properly displays the toggle control for enabling/disabling the logged-out landing experience
  • Rewards Fetching Reliability – Eliminated 500 errors that occurred when fetching rewards linked to legacy achievement data; the system now gracefully handles partially-migrated achievement documents

User Experience Improvements

  • Widget Landing Page Enabled by Default – New communities now show the branded landing page by default when logged-out visitors access the widget URL directly, providing an immediate welcome experience instead of the bare widget
  • Stable Rewards Display – Rewards now load reliably regardless of achievement tier configuration state, preventing display errors

Technical Notes

This release prioritizes stability over optimization. The v2.407.13 rewards hydration optimization introduced significant complexity through custom lookup pipelines and database indexes. While well-intentioned, this approach created edge cases around legacy data and added surface area for bugs. The revert restores the original MongoDB aggregation pipeline, which is proven, simpler to reason about, and performs adequately for current scale. The achievement tier criteria fix handles a regression where the system assumed all achievement tiers had complete configuration data. Legacy tiers (pre-2025) may lack the criteria subdoc entirely. The fix makes this optional while ensuring the API response schema remains valid and complete.

Migration Guide

No action required. This is a backward-compatible release:
  • API consumers: The /rewards endpoint behavior and schema are unchanged
  • Admins: Widget landing page toggle now defaults to enabled for communities without prior configuration (new communities)
  • Database: Old migration files have been removed; no new migrations included in this release

Contributors

jamescockayne@jamescockayne2 commits • +251/-663 lines

erek_d@me.com@erek_d@me.com1 commit • +63/-4 lines

Release Stats

MetricValue
Total Commits4
Lines Added+322
Lines Removed-516
Files Changed12
Release SizeSmall
ComplexitySimple

v2.407.17 deployed on June 30, 2026