Shipped
- Updated route param handling to support Next.js 15+ (
React.use()for async params) - Fixed an infinite re-render loop in
exercise-sets-tableusinguseMemofor schema calculations - Refactored Digital Obsidian CSS into Tailwind layers with RGB token support
- Improved builder header/tabs layout (sticky top stack + better mobile swipe handling)
- Added Tailwind theme extensions for Obsidian CSS variable tokens
Why
- Framework upgrades shouldn’t break core routes or silently degrade UX
- Builder stability is non-negotiable: it’s the heart of Protocol authoring
- Token-based theming prevents future UI drift and reduces styling churn
Next
- Consolidate modal patterns across the app (consistent wrappers + scroll containment)
- Keep tightening play/timer UX and schema documentation