Skip to main content

πŸ”΄ Release v2.221.0

⭐⭐⭐ Complex β€’ 22 commits β€’ 701 files changed
This release introduces achievement tier management, comprehensive referral program configuration, NPS survey actions, and significant performance improvements. Platform administrators can now deeply customize referral rewards and gather customer feedback via NPS surveys, while end users benefit from 56% faster app load times and cleaner reward displays.

What’s New

  • Achievement Tier Management – Assign multiple tier levels to achievements with different unlock criteria and reward amounts
  • Referral Program Configuration – Complete admin UI and API for setting up referral rewards, conditions, and distribution rules
  • NPS Survey Actions – Gather customer feedback with Net Promoter Score surveys, follow-up questions, and detailed analytics
  • 56% Faster Cold Compile – Eliminated barrel imports in user app for dramatically improved build and load performance
  • Challenge Stats Reconciliation – Fixed data consistency issues in challenge completion tracking and leaderboard calculations
  • Clearer Reward Pool UI – Improved admin labels and descriptions for reward allocation and distribution methods
  • Shopify Rewards Polish – Hidden stock/supply indicators for Shopify-based rewards to reduce confusion
  • Enhanced Embed Authentication – Better support for anonymous login and improved widget embedding experience

Apps Updated

User App

βœ“ Updated - 2 major features

API

βœ“ Updated - 4 major features

Admin

βœ“ Updated - 5 major features

MCP Server

βœ“ Updated - Infrastructure improvements

Website

β€” No changes

Games

β€” No changes

Detailed Changes

Made achievement tiers a required system component with automatic migration and backward compatibility shims. This foundational change enables:
  • Multiple unlock levels per achievement
  • Tier-specific reward configurations
  • Progressive achievement unlocking
  • Backward compatibility for existing achievements during migration
Admin Features:
  • Tier configuration during achievement creation/editing
  • Default tier generation for referral and streak achievements
  • Migration handling with automatic tier assignment
  • API shims for seamless data transformation
Files Changed: 20 files across models, API, admin, and services
Complete rewrite of referral configuration with dedicated admin UI and comprehensive API endpoints. Community managers can now:
  • Set referral reward amounts for referrer and referee
  • Configure referral conditions (new users only, minimum purchases, etc.)
  • Choose from preset condition templates for quick setup
  • Configure landing page URLs and incentive messaging
  • Preview referral distribution assignments
  • Manage reward allocation pools
Admin Interface:
  • Dedicated referral settings page in community configuration
  • Condition preset selector with templates
  • Reward distribution form with real-time validation
  • Landing URL configuration section
API Endpoints:
  • GET /admin/communities/referral-config – Fetch current config
  • PATCH /admin/communities/referral-config – Update general settings
  • PATCH /admin/communities/referral-conditions – Update conditions
  • POST /admin/communities/assign-referral-distribution – Distribute referral rewards
Files Changed: 40+ files across admin UI, API endpoints, and supporting services
New interaction-based action type enabling customer feedback collection via Net Promoter Score surveys. Admins can:
  • Add NPS survey questions to challenges
  • Configure follow-up questions based on score ranges (Detractors, Passives, Promoters)
  • Set custom question text and response options
  • View detailed NPS analytics in challenge statistics
  • Track response distribution and trends
Survey Configuration:
  • Main NPS question (1-10 scale)
  • Follow-up message per NPS segment
  • Segment-specific follow-up questions
  • Custom XP rewards for survey completion
Admin Analytics:
  • NPS score distribution chart
  • Response count and participation rate
  • Segment breakdown (Detractors, Passives, Promoters)
  • Follow-up response analysis
User Experience:
  • Clean NPS rating interface (1-10 visual selector)
  • Conditional follow-up question display
  • Clear feedback submission flow
Files Changed: 66+ files across admin forms, user components, design system, and API schemas
Fixed denormalization drift in challenge completion statistics by implementing a reconciliation system. This resolves:
  • Inaccurate completion counts in leaderboards
  • Stale challenge statistics in dashboards
  • Data consistency issues from race conditions
  • Incomplete historical aggregations
Implementation:
  • Queue-based reconciliation system for challenge stats
  • Automated sync cron job (configurable frequency)
  • Event-driven stat updates with reconciliation fallback
  • Bulk stat counter updates for efficiency
  • Comprehensive test coverage with 1000+ lines of tests
Technical Impact:
  • Ensures leaderboards show accurate completion counts
  • Fixes denormalization inconsistencies automatically
  • Reduces manual intervention for data corrections
  • Scales to handle large numbers of challenges
Files Changed: 28 files including queue handlers, services, and extensive tests
Eliminated barrel imports across the user app, resulting in a 56% improvement in cold compile time. This significantly improves:
  • Initial page load speed
  • Development feedback loop
  • CI/CD build times
  • User perceived performance
Changes:
  • Direct imports replacing index.ts barrel imports
  • Reduced module bundling overhead
  • Improved tree-shaking efficiency
  • Generated mappings for systematic import refactoring
Development Tools:
  • Automated codemod for eliminating barrel imports
  • Mapping files documenting all import changes
  • Systematic refactoring across 500+ files
Impact:
  • Faster local development iterations
  • Improved CI pipeline speed
  • Better user app responsiveness
  • Reduced bundle size for end users
Files Changed: 543 files in user app, admin, shopify, and MCP apps
Reward Pool Labels (NUDJ-3016):
  • Clarified reward distribution method descriptions
  • Improved allocation terminology
  • Better guidance for pool selection
Shopify Rewards (NUDJ-0000):
  • Hidden stock/supply indicators for Shopify-based rewards
  • Cleaner reward display in both list and detail views
  • Reduced visual complexity for Shopify integration
Anonymous Login & Embed (NUDJ-5245):
  • Enhanced embed.js for anonymous user support
  • Improved widget initialization without authentication
  • Better embed snippet configuration
  • Widget CSS improvements for Shopify integration
  • Streak section performance optimizations

For Platform Administrators

  • Achievement Tiers System – Create multi-tier achievements with different unlock conditions and reward amounts, enabling progressive gamification
  • Referral Program Configuration UI – Complete admin interface for setting up and managing referral rewards, conditions, and distribution
  • Referral Preset Templates – Quick-start condition templates (new users, minimum purchase, etc.) for faster referral program setup
  • NPS Survey Builder – Add Net Promoter Score surveys to challenges with segment-specific follow-up questions
  • NPS Analytics Dashboard – View detailed NPS results including score distribution, segment breakdown, and follow-up responses
  • Challenge Stats Dashboard – Accurate, real-time challenge completion counts and leaderboard data with automatic reconciliation
  • Clearer Reward Pool UI – Improved labels and descriptions for reward allocation and distribution methods

For End Users

  • Cleaner Reward Display – Stock/supply indicators removed from Shopify-based rewards for a simpler reward experience
  • Faster App Loading – 56% improvement in cold compile time means significantly faster page loads and better app responsiveness
  • Anonymous Widget Access – Enhanced embed support for accessing loyalty program without creating an account
  • Better Survey Experience – Intuitive NPS rating interface with clear follow-up flows for providing feedback

Platform Updates

User App

  • Eliminated barrel imports for 56% faster cold compile time
  • Enhanced embed.js with anonymous authentication support
  • Improved widget CSS and Shopify integration
  • Hidden stock/supply indicators for Shopify rewards
  • Optimized streak section rendering

API

  • Achievement tier system with migration and shims
  • Referral config endpoints (get, update, assign distribution)
  • NPS survey action type with complete validation
  • Challenge stats reconciliation queue system
  • Event-driven stat aggregation with fallback reconciliation
  • Comprehensive API schema updates for new features

Admin

  • New referral program configuration page with wizard-style UI
  • Referral condition preset selector
  • Reward distribution assignment interface
  • Landing URL configuration section
  • NPS survey form in challenge builder
  • NPS results analytics with charts and breakdowns
  • Clearer reward pool labels and descriptions
  • Updated challenge statistics with reconciliation

MCP Server

  • Infrastructure improvements and performance optimizations

Breaking Changes

None. This release maintains full backward compatibility. Achievement migrations are handled automatically with API shims.

Technical Notes

Achievement Tiers Migration:
  • Automatic migration assigns default single-tier structure to existing achievements
  • API shims handle read/write operations transparently
  • No manual intervention required for existing data
Referral Configuration:
  • Replaces previous referral reward form architecture
  • Centralized configuration in community settings
  • Distribution system based on referral conditions
Challenge Stats Consistency:
  • Queue-based reconciliation runs periodically
  • Event-driven updates for immediate consistency
  • Aggregation service ensures leaderboard accuracy
  • No user-facing changes to data access patterns
Performance Improvements:
  • Tree-shaking now works more efficiently without barrel imports
  • Module resolution faster with direct imports
  • Reduced JavaScript bundle size for user app

Contributors

James Cockayne@jamescockayne10 commits β€’ +22,227/-5,319 lines β€’ 188 files

Derek Counihan@erek_d6 commits β€’ +16,055/-806 lines β€’ 543 files

Derek Heredia@dch3 commits β€’ +71/-76 lines β€’ 13 files

Saad@SaadK942 commits β€’ +386/-47 lines β€’ 2 files

Release Stats

MetricValue
Total Commits22
Lines Added38,954
Lines Removed6,228
Files Changed701
Release SizeπŸ”΄ Massive
Complexity⭐⭐⭐ Complex

v2.221.0 deployed on March 13, 2026