2.3 KiB
2.3 KiB
Tasks: enterprise-pwa
Scaffolding
- Add
pwatodata:plugin inscripts/folder-reorg/assignment.yml. - Create
packages/foundation/data/pwa/skeleton (package.json,README.md,tsconfig.lib.json,vite.config.ts,vitest.config.ts). - Wire workspace + catalog deps:
@suaveplan/error,@suaveplan/opentelemetry,@suaveplan/types,tslib,@opentelemetry/api,zod.
Implementation
errors/errors.ts—PWA_CODES,PwaError, metadata table.schemas/schemas.ts— Zod schemas for sync-queue entry + Web App Manifest.observability/observability.ts+ types.service-worker/service-worker.ts—ServiceWorkerManagerwith injectable container.update-controller/update-controller.ts— cross-tab reload via BroadcastChannel.sync-queue/memory-store.ts+local-storage-store.ts+indexeddb-store.ts.sync-queue/version-migration.ts— forward migrator registry.sync-queue/sync-queue.ts— pluggable queue.sync-queue/background-sync.ts—SyncManagerbridge + visibility fallback.push-notifications/vapid.ts— URL-safe base64 decoder.push-notifications/push-notifications.ts—PushNotificationManager.install-prompt/install-prompt.ts—InstallPromptManager.caching-strategies/caching-strategies.ts— 5 strategies.caching-strategies/router.ts—Router.registerRoute()+handle().manifest/manifest.ts—ManifestBuilder.index.ts— explicit named re-exports (rule 10).
Documentation
- Sibling
.mdnext to every.tsper CLAUDE rule (≥200 words, 6 sections). - Root
README.mdwith quick-start + module links.
Gates
bunx turbo lint typecheck test build --filter=@suaveplan/pwagreen.bunx turbo test:coverage --filter=@suaveplan/pwa≥ 100/100/100/100.bun scripts/folder-reorg/generate-manifest.ts(refresh MANIFEST).
Finalisation
- Fold
specs/pwa/spec.mdintoopenspec/specs/pwa/spec.md. - Move change to
openspec/archive/2026-05-25-enterprise-pwa/. - Flip
STATUS.mdrow from–to✅and bump counts. - Commit on
feat/migrate-pwawith Conventional Commit + Claude co-author footer (do not push).