The fancy interactive 404 page was importing AbacusReact and other heavy dependencies, causing ~4.7MB of JavaScript to be loaded on EVERY page (Next.js App Router preloads not-found chunks for soft navigation). Changes: - Extract heavy 404 content to InteractiveNotFound component - Use next/dynamic with ssr: false to lazy-load only when 404 occurs - Simplify practice/[studentId]/not-found.tsx by removing PageWithNav - Remove unused manifest.json reference from layout.tsx (was 404ing) - Simplify /api/classrooms/mine to use getDbUserId helper Also includes worksheet parsing review progress feature: - Add useReviewProgress hook for tracking review state - Add WorksheetReviewSummary component for summary display - Add review-progress API endpoint - Integrate into OfflineWorkSection and SummaryClient 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
6 lines
223 B
SQL
6 lines
223 B
SQL
-- Custom SQL migration file, put your code below! --
|
|
|
|
-- Add review_progress column to practice_attachments
|
|
-- Stores JSON for resumable review workflow state
|
|
ALTER TABLE `practice_attachments` ADD `review_progress` text;
|