From dea6cb65a1f2f65d7aa6a1d22cc954b0a5d7a7d8 Mon Sep 17 00:00:00 2001 From: Lucas Berger Date: Sun, 7 Jun 2026 21:49:30 -0400 Subject: [PATCH] docs(260607-u8o): mark Phase 1 UAT item 4 (SSE smoke) PASS - Record SSE-over-Pangolin smoke PASS (2026-06-08) with verbatim evidence - Update Summary: passed 0->1, pending 4->3 --- .planning/phases/01-foundation-broker-spike/01-HUMAN-UAT.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.planning/phases/01-foundation-broker-spike/01-HUMAN-UAT.md b/.planning/phases/01-foundation-broker-spike/01-HUMAN-UAT.md index 7bdcfab..6563c23 100644 --- a/.planning/phases/01-foundation-broker-spike/01-HUMAN-UAT.md +++ b/.planning/phases/01-foundation-broker-spike/01-HUMAN-UAT.md @@ -27,14 +27,14 @@ result: [pending] ### 4. SSE-over-Pangolin smoke test (de-risks Phase 4) expected: With a valid session cookie, `curl -N -H "Cookie: oidc-auth=" https://familysync./api/sse/heartbeat` streams a `heartbeat` event roughly every 10s and stays open for 5+ minutes without Pangolin cutting the stream. PASS = continuous heartbeats; FAIL = stream cut early (investigate Pangolin idle-timeout; note as Phase 4 constraint, ref issue #1034). -result: [pending] +result: PASS (2026-06-08) — GET /api/sse/heartbeat over familysync-dev.bergerhouse.net (Pangolin→Newt→api) with a valid session cookie held open ~6 min (01:37:53Z→01:43:54Z), 35 heartbeat events id 0→34 at ~10s cadence; response bytes grew 71→2535 (incremental delivery → Pangolin buffering OFF); no early cut. Phase 4 entry gate (D-14 / issue #1034) CLEARED. Caveat: proves no idle-timeout/buffering over ~6 min, not the absence of a max total connection-duration cap — residual risk covered by Phase 4 design (D-10/D-11/D-12 in 04-CONTEXT.md). ## Summary total: 4 -passed: 0 +passed: 1 issues: 0 -pending: 4 +pending: 3 skipped: 0 blocked: 0