Skip to content

Fix cold reconnect and improve the attendee learning path - #2

Merged
patty-chow merged 3 commits into
mainfrom
workshop/attendee-polish-reconnect-20261017
Oct 17, 2026
Merged

patty-chow merged 3 commits into
mainfrom
workshop/attendee-polish-reconnect-20261017

Conversation

@patty-chow

@patty-chow patty-chow commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Follow-up to #1 and the actual attendee acceptance walkthrough.

  • Fix the confirmed first-connection failure bug: await public MongoClient.connect() on every async database acquisition, including each readiness-loop retry. Preserve explicit targets, validated cloud TLS, timeouts and retryWrites:false; no automatic replay of writes.
  • Add first-failure, concurrent acquisition, shutdown and readiness unit tests plus a real isolated Compose regression that proves recovery with the same app PID and original waiting process. The harness owns and cleans only its ephemeral project.
  • Replace intentional TODO error screens with accessible exercise checkpoints; remove misleading indefinite loading; retain real errors. Add persistent guide and calendar-import links and clarify editable implementation labeling.
  • Add concrete Codespaces file/Ports navigation and progressive hints for both driver exercises.
  • Add actual projected document/index inspection for migration before/after and an optional read-only Monday-by-track aggregation exercise with snapshot-derived expectations.
  • Add Google Calendar web and Apple Calendar macOS import instructions and timezone/snapshot/reimport guidance.
  • Preserve catalog, data volumes, credentials, starter/reference recovery, dependency pins, and Azure exclusion from the attendee scenario.

Verified results

  • macOS final code: 46 tests passed, 1 existing Linux-only permission test skipped, 0 failures. In the restarted Codespace: 47/47 passed, no skips.
  • 46 local documentation links checked; actual two-server database integration 2/2 passed.
  • Actual local Docker and Codespaces reconnect regressions passed: original wait process recovered; first-use Site B failure recovered in the same app PID; concurrent acquisition and healthy-client outage recovery passed; notebook digests unchanged; own ephemeral project cleaned.
  • Main attendee app browser proof: first-ever Site B connection failed while B was stopped; after restarting only B, the browser retry succeeded with the same actual server PID, start time, container and request-token hash. No app restart or workaround.
  • SIGINT/SIGTERM interruption cleanup 2/2 passed, including repeated signals during cleanup and independent empty container/volume/network inventories. The review finding about interruption leaks is fixed.
  • Full restarted-Codespace attendee flow passed: blue expected checkpoints, sequential TODOs, 216 entries, save/overlap/persistence, independent B, copy/retry/return, live inspection v1 -> v2, migration 216 then 0, optional aggregation 17 groups/74 entries, and real three-event browser ICS download. Starter/reference switching preserved both solved exercises and notebooks.
  • Independent review approved application changes and the harness cleanup follow-up. Runtime/browser proof was at 8993fac; final harness retests were at a3f9c5a, which changed no app/UI code. Final commit records acceptance in documentation only.
  • The same Codespace is verified Shutdown, with prior and final notebooks/solutions preserved. No new Azure resources or duplicate calendar imports in this retest.

Prior-environment evidence and limits

The previous main was exercised in a fresh two-core Codespace, real Google Calendar import (3/3 exact events), and a local-workstation-to-managed-Azure round trip. The temporary Azure cluster/group were deleted and verified absent. Those prior results are not presented as fresh testing of this revision. No new Azure resources are created for this change. Actual event laptop/network and a timed novice/classroom rehearsal remain outside the claim.

@patty-chow
patty-chow merged commit 9a47a84 into main Oct 17, 2026
2 checks passed
@patty-chow
patty-chow deleted the workshop/attendee-polish-reconnect-20261017 branch October 19, 2026 00:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant