style(13-03): apply Prettier formatting across repo
Mechanical reformat — no logic changes. 398 files changed, 19125 insertions(+), 16457 deletions(-). Prettier 3.8.4 with .prettierrc (singleQuote:true, semi:true, tabWidth:2, trailingComma:all, printWidth:100). Isolated per D-13-08 for reviewability.
This commit is contained in:
@@ -30,19 +30,19 @@ displayName, ctag, syncToken). It never logs the password.
|
||||
|
||||
### Calendars Discovered
|
||||
|
||||
| displayName | URL | ctag returned? | syncToken returned? |
|
||||
|-------------|-----|----------------|---------------------|
|
||||
| Calendar | `https://caldav.fastmail.com/dav/calendars/user/me@lucasberger.ca/2180A37A-806E-11EB-872C-AE53E9CB9923/` | yes (`1615249618-218118`) | yes (`data:,1615249618-218118`) |
|
||||
| displayName | URL | ctag returned? | syncToken returned? |
|
||||
| ------------ | -------------------------------------------------------------------------------------------------------- | ------------------------- | ------------------------------- |
|
||||
| Calendar | `https://caldav.fastmail.com/dav/calendars/user/me@lucasberger.ca/2180A37A-806E-11EB-872C-AE53E9CB9923/` | yes (`1615249618-218118`) | yes (`data:,1615249618-218118`) |
|
||||
| USA Holidays | `https://caldav.fastmail.com/dav/calendars/user/me@lucasberger.ca/2da291bc-7962-4a0e-94bc-7bb135c90d6e/` | yes (`1635037263-211516`) | yes (`data:,1635037263-211516`) |
|
||||
|
||||
### Questions Resolved
|
||||
|
||||
| Question | Finding |
|
||||
|----------|---------|
|
||||
| Does one Fastmail app password see all of that account's calendars? | **Yes** — a single app password (scope "Mail, Contacts & Calendars") enumerated every collection owned by the account via PROPFIND. |
|
||||
| Question | Finding |
|
||||
| ------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Does one Fastmail app password see all of that account's calendars? | **Yes** — a single app password (scope "Mail, Contacts & Calendars") enumerated every collection owned by the account via PROPFIND. |
|
||||
| Does the broker need cross-account ACL sharing to read a member's personal calendar? | **No** — under the locked design (D-09) each member supplies their own app password; the broker stores one encrypted credential per member and aggregates. Cross-account ACL sharing (the original CAL-08 risk) is not on the critical path. |
|
||||
| Which change-detection field does Fastmail use — ctag or syncToken? | **Both** are returned. The poller uses ctag as the primary change signal with syncToken available as a fallback (matches the SKELETON poller design). |
|
||||
| Can the broker actually fetch + cache real events (CAL-01)? | **Yes** — a live REPORT against the `Calendar` collection fetched and cached **503 events** into `calendar_events`, with correct D-13 handling (timed events → `dtstart_utc` set, `dtstart_date` null, `all_day` false). |
|
||||
| Which change-detection field does Fastmail use — ctag or syncToken? | **Both** are returned. The poller uses ctag as the primary change signal with syncToken available as a fallback (matches the SKELETON poller design). |
|
||||
| Can the broker actually fetch + cache real events (CAL-01)? | **Yes** — a live REPORT against the `Calendar` collection fetched and cached **503 events** into `calendar_events`, with correct D-13 handling (timed events → `dtstart_utc` set, `dtstart_date` null, `all_day` false). |
|
||||
|
||||
---
|
||||
|
||||
@@ -53,7 +53,7 @@ displayName, ctag, syncToken). It never logs the password.
|
||||
**Rationale:** The personal-calendar read path is proven end-to-end against live Fastmail. A
|
||||
single app password reaches every calendar owned by its account, and the broker successfully
|
||||
fetched and cached real events (CAL-01). The original CAL-08 worry — whether the broker token
|
||||
could see *another member's* personal calendar via Fastmail cross-account share+accept — is
|
||||
could see _another member's_ personal calendar via Fastmail cross-account share+accept — is
|
||||
moot: the project already locked the **per-member app-password** model (D-09), where each
|
||||
member contributes their own credential. That model is validated here. The wife's personal
|
||||
calendar is reached the same way (her own app password), onboarded in Phase 2.
|
||||
|
||||
Reference in New Issue
Block a user