Initial Commit

This commit is contained in:
2026-05-27 23:29:53 +01:00
commit fbc70f96e6
10000 changed files with 1102152 additions and 0 deletions

View File

@@ -0,0 +1,46 @@
# Tasks: enterprise-pwa
## Scaffolding
- [ ] Add `pwa` to `data:` plugin in `scripts/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` — `ServiceWorkerManager` with 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` — `SyncManager` bridge + 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 `.md` next to every `.ts` per CLAUDE rule (≥200 words, 6 sections).
- [ ] Root `README.md` with quick-start + module links.
## Gates
- [ ] `bunx turbo lint typecheck test build --filter=@suaveplan/pwa` green.
- [ ] `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.md` into `openspec/specs/pwa/spec.md`.
- [ ] Move change to `openspec/archive/2026-05-25-enterprise-pwa/`.
- [ ] Flip `STATUS.md` row from `–` to `✅` and bump counts.
- [ ] Commit on `feat/migrate-pwa` with Conventional Commit + Claude co-author footer (do not push).