docs calendar feat/calendar-oauth-1d-spec #2 / 2
aaronrene · 18 days ago · Jul 5, 2026 · Diff

docs(calendar): freeze Phase 1D Google read-only OAuth connector spec

Step 11a (Thinking) — freeze the Google Calendar read-only OAuth connector: confidential web client + PKCE (reuse companion-oauth-pkce), least-privilege read-only scopes, encrypted refresh-token vault (AES-256-GCM/scrypt pattern), connector API (POST/GET/DELETE + callback), incremental sync + 90d/365d horizon, 24h revoke-delete SLA, PII minimization, and the Knowtation seven-tier matrix. Build gated on CALENDAR_OAUTH_GOOGLE_AUTHORIZED (false). Build = step 11b (Auto).

Also resolves V0-spec open decisions (recurrence, horizon, timeline) and marks 1D spec FROZEN; updates OVERSEER-HANDOVER active track to 11b.

sha256:71b14d087cfde1925562446300935485c8512f24664f1ff2f32685d215ce1fb9 sha
+25 ~8 −17 symbols
sha256:9b84aff5d911e2abc8edc8f0bf39c848a4c9abe80e014f5d061807a097d9d5c7 snapshot
+25
symbols added
~8
symbols modified
−17
symbols removed
0
dead code introduced
Semantic Changes 50 symbols
+ Calendar OAuth Connector — Phase 1D Frozen Spec (Google read-only) section Calendar OAuth Connector — Phase 1D Frozen Spec (Google read-only) L1–199
+ Connector API (freezes V0 §"Deferred (1C+)" for google) section Connector API (freezes V0 §"Deferred (1C+)" for google) L109–139
+ Revoke sequence (DELETE /connectors/:id) section Revoke sequence (DELETE /connectors/:id) L124–139
+ table section table L114–121
+ Data model additions section Data model additions L85–109
+ table section table L89–98
+ Design decisions frozen in this spec section Design decisions frozen in this spec L37–56
+ table section table L39–53
+ OAuth flow (server-side authorization code + PKCE) section OAuth flow (server-side authorization code + PKCE) L56–85
+ code[text] variable variable code[text] L58–79
+ Out of scope (separate freezes / gates) section Out of scope (separate freezes / gates) L191–199
+ Security invariants (must hold — enforced, not documented-only) section Security invariants (must hold — enforced, not documented-only) L139–172
+ Environment (secrets — never committed) section Environment (secrets — never committed) L157–172
+ table section table L159–167
+ Seven-tier test matrix (Knowtation — 11b Definition of Done) section Seven-tier test matrix (Knowtation — 11b Definition of Done) L172–191
+ table section table L177–186
+ Simple summary section Simple summary L14–22
+ Technical summary section Technical summary L22–37
~ docs/OVERSEER-HANDOVER.md .md 7 symbols added, 17 symbols removed
Overseer Handover — Knowtation (Phase 8 P1b) section Overseer Handover — Knowtation (Phase 8 P1b) L1–99
Attachment gates (Scooling Phase 2F-b) section Attachment gates (Scooling Phase 2F-b) L51–60
table section table L53–57
Change log section Change log L60–76
table section table L62–73
Media write surfaces (2F-b-d-kn) section Media write surfaces (2F-b-d-kn) L39–51
table section table L41–48
Next step at a glance (2026-07-03) section Next step at a glance (2026-07-03) L10–39
table@L12 section table@L12 L12–22
table@L23 section table@L23 L23–30
table@L31 section table@L31 L31–36
Next-chat prompt — PRIMARY — Phase 7B-a (Scooling) · Model: Thinking → Auto section Next-chat prompt — PRIMARY — Phase 7B-a (Scooling) · Model: Thinking → Auto L76–99
CONSUMED — 2F-b-d-kn-d attach gate · Model: Auto (Tier 3 operator) section CONSUMED — 2F-b-d-kn-d attach gate · Model: Auto (Tier 3 operator) L92–99
code[text] variable variable code[text] L96–99
CONSUMED — 2F-b-d-kn-d-merge · Model: Auto (Tier 3 operator) section CONSUMED — 2F-b-d-kn-d-merge · Model: Auto (Tier 3 operator) L84–92
code[text] variable variable code[text] L88–91
code[text] variable variable code[text] L80–83
+ Overseer Handover — Knowtation section Overseer Handover — Knowtation L1–51
+ Change log (recent) section Change log (recent) L32–46
+ table section table L34–41
+ Knowtation status section Knowtation status L21–32
+ table section table L23–29
+ Legacy detail (2026-07-03 snapshot — reference only) section Legacy detail (2026-07-03 snapshot — reference only) L46–51
+ NEXT SESSION — same as Scooling PRIMARY section NEXT SESSION — same as Scooling PRIMARY L10–21

0 comments

No comments yet. Be the first to start the discussion.

To add a comment, use the Muse CLI: muse hub commit comment sha256:71b14d087cfde1925562446300935485c8512f24664f1ff2f32685d215ce1fb9 --body "your comment"