Lucas Berger
cdb097c5b3
docs(03): record Gate 2 live-verification results (2026-06-07)
...
A1 (OIDC login → app), D1/D4/D5 (create/edit/delete round-trips), D6 (412
conflict), and /health-over-tunnel verified live this session via operator
browser testing + outbox evidence. Remaining: A2/A3 + D2/D3 (desktop, quick),
B (iOS device, load-bearing), C (SSE — Phase 4 entry gate per D-14).
2026-06-07 18:02:53 -04:00
Lucas Berger
3ae7724df1
wip: phase 03 Gate 2 paused — live bring-up working; edit/delete join fix is the next blocker
2026-06-06 22:42:06 -04:00
Lucas Berger
505f64ed93
docs: add backlog item 999.2 — slick unauthenticated-entry (no login flash)
2026-06-06 22:11:33 -04:00
Lucas Berger
ca87c023ef
wip: phase 03 paused — gap-closure done, docker bring-up awaiting auth+PWA decisions
2026-06-05 21:48:17 -04:00
Lucas Berger
ad181e7b2a
docs(03-11): complete outbox durability + etag fix plan summary (CR-04, CR-05, WR-02)
2026-06-05 21:08:07 -04:00
Lucas Berger
aefdde13bd
docs(03-10): complete outbox ICS builder wiring plan summary
...
CR-02, CR-03, WR-01, WR-04, WR-08, IN-01 closed.
2026-06-05 20:53:04 -04:00
Lucas Berger
1fc56f42d0
merge(03-12): EventForm edit/a11y gap closure (WR-03/05/07, IN-03)
2026-06-05 20:43:45 -04:00
Lucas Berger
a30a16b18a
docs(03-12): complete EventForm gap-closure plan — WR-03/05/07, IN-03/04, PWA assets
2026-06-05 20:43:12 -04:00
Lucas Berger
0d3883ee02
docs(03-09): complete plan 09 summary — schema rename + OIDC resolution
...
CR-01: eventFieldsSchema aligned to canonical title/start/end (PWA contract)
CR-06: resolveUserId async with upsertUser on all 5 write handlers
19 tests pass; tsc clean
2026-06-05 20:42:13 -04:00
Lucas Berger
941c4d621f
docs(03): revise gap plans 03-10/11/12 per checker feedback
2026-06-05 19:27:19 -04:00
Lucas Berger
d1658bd1db
docs(03): gap-closure plans 03-09..03-12 for write-path review findings
2026-06-05 19:20:25 -04:00
Lucas Berger
628894c8c2
docs(03): add code review report
2026-06-05 19:11:12 -04:00
Lucas Berger
1f8775e7b6
docs(03-08): scaffold Gate 2 results + record production build status
...
- PWA build: CLEAN — 1818 modules, sw.js + workbox generated (build SHA 40dfbb4 )
- API build: CLEAN — tsc passed, no errors
- 03-GATE2-RESULTS.md created with deploy header (URL TBD), full Gate 2 checklist
(all rows marked PENDING — operator/device), and operator-setup section covering:
Authelia OIDC client registration, OIDC_AUTH_EXTERNAL_URL, Pangolin/Newt Mode A rig,
DB schema push, and /health tunnel verification
2026-06-05 18:51:37 -04:00
Lucas Berger
40dfbb48d5
docs(03-06): complete edit/delete + sync toast plan
2026-06-05 18:48:17 -04:00
Lucas Berger
dbd09bc2bb
docs(03-05): complete event write UI plan — EventForm + client calls + FAB
2026-06-05 18:32:37 -04:00
Lucas Berger
82ab87a633
docs(03-04): complete outbox worker plan — state machine GREEN, wired at boot
2026-06-05 18:23:01 -04:00
Lucas Berger
95864e5dc8
docs(03-07): complete PWA install plan — manifest, InstallPrompt, icons
2026-06-05 18:07:59 -04:00
Lucas Berger
7398946aa8
docs(03-03): complete write API surface plan — enqueue-only endpoints GREEN
2026-06-05 17:59:53 -04:00
Lucas Berger
4eb7c28797
docs(03-02): complete broker primitives plan — vevent.ts + write.ts GREEN
2026-06-05 17:50:23 -04:00
Lucas Berger
a487569c7e
docs(03-01): complete foundation-scaffold plan
2026-06-05 17:41:41 -04:00
Lucas Berger
93302cf942
docs(03): finalize phase plan (8 plans, verified)
2026-06-05 17:08:16 -04:00
Lucas Berger
9dd08d28d1
docs(03): create phase plan (8 plans, 5 waves)
2026-06-05 16:57:01 -04:00
Lucas Berger
6f5110266d
docs(03): UI design contract
...
Establishes Phase 3 visual and interaction contract for event write-back
(EventForm, SyncStateToast, DeleteConfirmationDialog, calendar picker) and
PWA install surfaces (iOS A2HS walkthrough, Android beforeinstallprompt).
Inherits Phase 2 token layer in full; activates --color-destructive for
delete actions.
2026-06-05 16:39:15 -04:00
Lucas Berger
7b0463d25e
docs(03): add research + validation strategy
2026-06-05 16:33:30 -04:00
Lucas Berger
364b6e68b0
docs(03): research phase domain
2026-06-05 16:32:38 -04:00
Lucas Berger
e579a6870a
docs(03): capture phase context
2026-06-05 16:17:26 -04:00
Lucas Berger
b794785e09
test(02): human UAT approved — all 4 success criteria; verification passed
2026-06-05 16:00:27 -04:00
Lucas Berger
11595e7924
docs(02-05): complete plan 05 autonomous tasks — SUMMARY.md
2026-06-05 10:59:31 -04:00
Lucas Berger
7b32bc1456
docs(02-04): complete CalendarShell plan — SUMMARY.md
2026-06-05 10:44:04 -04:00
Lucas Berger
010ef78230
docs(02-02): complete windowed events + expansion plan
...
- SUMMARY.md created with task outcomes, deviations, self-check
- Task 3 deferral documented (shared calendar marking pending operator setup)
2026-06-05 10:32:30 -04:00
Lucas Berger
5435df6bbe
docs(02-03): complete plan 03 summary — token layer, calendar config, hydration, store
2026-06-05 09:49:39 -04:00
Lucas Berger
2d75b2b73b
docs(02-01): complete plan 01 — schema columns, test harness, dev-auth bypass summary
2026-06-05 09:35:53 -04:00
Lucas Berger
81d5c61aa5
wip: calendar-display paused — planned, not executed (0/5 plans)
2026-06-04 15:29:39 -04:00
Lucas Berger
8bd52c6923
docs: add backlog item 999.1 — treat Fastmail as a calendar provider, support adding more
2026-06-04 15:12:20 -04:00
Lucas Berger
fc4cc2ccf8
docs(02): create phase plan
2026-06-04 15:09:55 -04:00
Lucas Berger
b842955612
docs(02): create calendar-display phase plan (5 plans, 4 waves)
2026-06-04 14:56:57 -04:00
Lucas Berger
5e14413024
docs(02): add pattern map
2026-06-04 14:47:28 -04:00
Lucas Berger
a707f8d9ca
docs(02): add research and validation strategy
2026-06-04 14:44:14 -04:00
Lucas Berger
e9fcd7a372
docs(02): research calendar display phase
2026-06-04 14:43:23 -04:00
Lucas Berger
f1604b5057
docs(02): UI design contract
2026-06-04 14:24:20 -04:00
Lucas Berger
79a18b9ea2
docs(02): add UI design contract for calendar display phase
...
Specifies the token-layer architecture, Schedule-X as the rendering
library (all four views, CSS-var theming, per-calendar color), per-member
event colors, shared-family rose (#F25C7A), spacing/typography/breakpoints,
component inventory, and copywriting contract for Phase 2.
2026-06-04 14:21:57 -04:00
Lucas Berger
dbec9b510c
docs(02): capture phase context
2026-06-04 14:14:07 -04:00
Lucas Berger
5bed2228b7
test(01): verification (human_needed, 11/13) + persist Gate 2 human-UAT
...
Code verified against codebase, 24 tests pass, CAL-01 + CAL-08 proven live.
AUTH-01/02/03 live login + SSE-over-Pangolin smoke test require operator infra —
tracked as 01-HUMAN-UAT.md (status: partial).
2026-06-04 11:44:52 -04:00
Lucas Berger
0b074cd568
docs(01-04): record CAL-08 GO decision — broker read path proven live
...
Live spike against me@lucasberger.ca: one app password enumerated both account
calendars (PROPFIND), and a REPORT fetched + cached 503 real events into MariaDB
with correct D-13 timed/all-day handling (CAL-01). Per-member app-password model
(D-09) validated; no cross-account ACL needed; no fallback required. Gate 2 (live
Authelia/Pangolin login + SSE smoke test) remains pending operator action.
2026-06-04 11:39:44 -04:00
Lucas Berger
22a0f05170
docs(01-04): complete integration+gate plan summary; add CAL-08 decision template
...
- 01-04-SUMMARY.md: code-complete; Task 1 committed (48f90ce ); Tasks 2+3 are live-gate checkpoints with exact human-action steps
- CAL-08-DECISION.md: template for human to fill in after running apps/api/src/broker/spike.ts against real Fastmail credentials
2026-06-04 11:18:04 -04:00
Lucas Berger
191cea70cc
docs(01-03): complete CalDAV broker slice plan summary
...
- covers all 3 tasks: AES-256-GCM crypto, broker client/sync/events, ctag poller
- documents D-13 dtstart split decision and ctag null-defence pattern
- notes live Fastmail integration + personal-calendar ACL deferred to plan 04
2026-06-04 11:10:02 -04:00
Lucas Berger
3bfffd60ae
docs(01-02): complete OIDC auth slice plan summary
2026-06-04 10:24:18 -04:00
Lucas Berger
ee4c71fa46
docs(01-01): clear Task 3 checkpoint, mark plan complete
...
Stack verified live (/health green, 4 tables pushed). Record Docker deviation in
SUMMARY, mark 01-01 complete in ROADMAP, clean up paused-setup handoff files.
2026-06-04 10:17:21 -04:00
Lucas Berger
6b500170ab
docs(01-01): complete walking skeleton plan — SUMMARY
...
Tasks 1-2 done: monorepo scaffold, Drizzle schema, /health slice.
Stopped at Task 3 checkpoint (drizzle-kit push requires live Docker stack).
2026-06-04 09:54:10 -04:00
Lucas Berger
fb849605b1
docs(01): mark research open questions deferred-to-spike
2026-06-04 08:19:12 -04:00