- Fix tag filtering (sa_text import shadowing caused UnboundLocalError) - Add TagBrowser component with per-section search - Multi-category selection (OR within categories, AND with tags) - AI image validation: has_figure field in extraction prompt - Skip known branding images by MD5 hash + dimension filters - Fix quiz timer auto-submit (wrong useEffect dependency) - Fix QuizResponse schema: section_id nullable - Fix Question.quiz_id → source_quiz_id attribute name - Fix SQL injection in quizzes.py vector search - Add PDF processing progress steps via Redis - Add delete user from admin panel - Admin page: no spinner flash on data refresh - Upload progress: axios 1.x e.progress, remove manual Content-Type - Duplicate model error: 409 with clear message - Backend startup: retry DDL migration on lock timeout - Replace all silent except:pass with warning logs - Comprehensive multi-page documentation (docs/) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
12 lines
532 B
JavaScript
12 lines
532 B
JavaScript
// Minimal service worker — network-only, no caching.
|
|
// This exists solely to make the app installable as a PWA.
|
|
// Do NOT add caching here: the app loads JS modules dynamically
|
|
// and stale cache causes blank-screen / module-not-found failures.
|
|
|
|
self.addEventListener('install', () => self.skipWaiting())
|
|
self.addEventListener('activate', event => event.waitUntil(self.clients.claim()))
|
|
|
|
// Pass every fetch straight through to the network.
|
|
self.addEventListener('fetch', event => {
|
|
event.respondWith(fetch(event.request))
|
|
})
|