Commit graph

6 commits

Author SHA1 Message Date
Lumen Stage1
398f0b097a Make the app work: bind transport fetch (Illegal invocation), emergency phone content, real map assets+POIs, wire map loader into routes, offline icon cache match, multi-day event times, hide empty emergency groups; remove bottom nav bar (home tiles + brand cover navigation)
Some checks failed
ci / check (push) Has been cancelled
2026-10-03 12:31:43 -05:00
Lumen Stage1
5b69b87394 Showcase: user-initiated sync coordinator wired into Status screen
runSync() composes transport -> verifier -> quarantine no-loop -> staging ->
activation as one user action (the phone tap). Trust comes from same-origin
/sync-config.json (edition + origin + pinned fingerprint->SPKI map). Prep
guidance view gains a real Download button with phase messages and outcome
notes (ok/no-update/offline/rejected/not-configured). Pipeline now writes the
per-edition pointer /editions/<ed>/latest.json the HttpTransport consumes, and
takes --min-app-version so staging packages pass shell compatibility.
6 new end-to-end tests (fake fetch + fake-indexedDB): activate, no-update,
untrusted-key rejection keeps v1 + quarantines v2, no-loop fetches ONLY
latest.json on a quarantined pointer. Full CI green: 291 tests.
2026-10-02 12:40:17 -05:00
Lumen Stage1
c6479d6811 Stage 6: prettier format run.ts
Some checks failed
ci / check (push) Has been cancelled
2026-09-30 14:40:24 -05:00
Lumen Stage1
1a13b9d58c Stage 6 runbook CLI: validate->build->hash->sign->upload->smoke end-to-end (local origin-layout dir, test Ed25519 key, smoke re-verifies all file hashes + signature; npm run package:staging / package:smoke) 2026-09-30 14:38:32 -05:00
Lumen Stage1
fcc18ddcc8 Checkpoint: current Lumen state
Some checks failed
ci / check (push) Has been cancelled
2026-09-23 18:58:21 -05:00
Lumen Stage1
c0bfd413ff Stage 1: project foundation (strict TS, lint boundaries B-1..B-7, directory structure, CI, boundary tests)
- dedicated git repo at /home/avi/Projects/Lumen (main)
- TypeScript strict (target ES2022, bundler, exactOptionalPropertyTypes, noUncheckedIndexedAccess)
- ESLint 9 + typescript-eslint strictTypeChecked + eslint-plugin-boundaries for B-1..B-7, no-restricted-globals/syntax for B-1/B-7
- Prettier 3.5
- Structure per IMPLEMENTATION-CONTRACT.md §4 (src/platform/idb|cache|sw, storage, data, sync/{transport,verifier}, domain/{emergency,schedule,map,festival,readiness,clock,favorites}, ui/{components,views,router,render}, app, emergency-baseline, assets, public, content, pipeline, tests, scripts)
- CI: .github/workflows/ci.yml (typecheck + lint + format + test)
- Boundary tests: tests/unit/boundaries.test.ts (4 tests) + scripts/check-boundaries.ts
- No feature code, no PWA/IDB/sync/mesh/accounts per contract Stage 1
2026-08-30 23:25:35 -05:00