π‘ Release v2.303.0
ββ Moderate β’ 3 commits β’ 31 files changedNudj now supports Osano cookie consent management alongside the existing OneTrust integration, giving enterprises the flexibility to use their preferred CMP. Admins can now easily toggle tab visibility from the page header for faster configuration workflows.
Whatβs New
- Osano CMP Support β Enterprise organisations can now use Osano for cookie consent management, configured alongside or instead of OneTrust
- Flexible Cookie Consent β Choose between OneTrust, Osano, both, or neither per organisation β each CMP independently gates analytics providers
- Admin Configuration UI β Simple one-step setup: paste your Osano script URL into Organisation Settings β Third Party β Osano
- Tab Visibility Toggle Relocation β Tab visibility controls now appear in page headers across admin engagement sections for faster access and better discoverability
- Improved Test Stability β Fixed flaky daily-period tests that previously failed sporadically during certain UTC times
Apps Updated
User App
β Updated - Osano CMP integration
API
β Updated - Osano config schema & API client
Admin
β Updated - Osano settings UI & tab controls
MCP Server
β No changes
Games
β No changes
Packages
β Updated - Models (Osano config DTO)
Detailed Changes
Enterprise β Osano Cookie Consent Support
Enterprise β Osano Cookie Consent Support
Admin Dashboard β Tab Visibility Controls Relocated
Admin Dashboard β Tab Visibility Controls Relocated
Improved Header Positioning
The tab visibility toggle β used to show/hide content tabs across engagement sections β now appears in the page header instead of buried inside tab content. This applies to:- Challenges β manage Difficulty, Requirement tabs
- Achievements β manage Category, Description tabs
- Rewards β manage Stock, Description tabs
- Posts β manage Status, Published tabs
- Games β manage Details, Config tabs
Technical Improvement
The<TabVisibilityToggle /> component now receives header context from parent page layouts, allowing it to render in the header alongside other action buttons. This maintains a single source of truth for tab-visibility state while placing the control in the highest-priority UI real estate.Backend β Enhanced Stability
Backend β Enhanced Stability
Test Reliability Fix
Fixed flaky daily-period tests in the challenge progress service that were failing sporadically when test execution crossed UTC period boundaries. The issue occurred because tests using relative time calculations (e.g., β3 hours agoβ) would straddle daily, weekly, or monthly boundaries depending on the exact UTC time the test ran.Solution: Tests now pin system time to a fixed date-time (Wednesday, April 15, 2026 at 12:00 PM UTC) using VitestβsuseFakeTimers() API. This ensures relative time calculations never cross a period boundary, eliminating the intermittent failures that plagued CI runs.Benefit: Faster, more reliable CI pipelines. No more mysterious failures that are hard to reproduce locally.Contributors
@jamescockayne2 commits β’ +1,101/-66 lines
@ZuhayrK001 commit β’ +46/-33 linesRelease Stats
| Metric | Value |
|---|---|
| Total Commits | 3 |
| Lines Added | +1,147 |
| Lines Removed | -99 |
| Files Changed | 31 |
v2.303.0 deployed on April 24, 2026

