diff options
| author | Tianren Dong <tianrendong.dtr@gmail.com> | 2026-05-16 13:00:48 -0400 |
|---|---|---|
| committer | Tianren Dong <tianrendong.dtr@gmail.com> | 2026-05-16 13:00:48 -0400 |
| commit | fcae5b188baa1bdfed48208d7cfc2b711af4aae3 (patch) | |
| tree | 040c6cde8b8d23d1909c7235641e6694ed170495 /CHANGELOG.md | |
| parent | 43c62c2f338654394f82c86aa12b22be6a358d94 (diff) | |
0.17.2: fix /next lastSeenAt + strict daemon version match
Bugs surfaced in real-world 0.17.0/0.17.1 testing:
1. Daemon /next only recorded lastSeenAt AFTER the auth/pair checks. Pre-pair
the daemon returns needsPairing early without recording the poll, so
connected stayed false even though the extension was polling. /chrome
onboard's wait-for-poll loop spun forever on a healthy extension.
Fix: record lastSeenAt at the top of /next for any chrome-extension
origin, before auth checks. Onboard now correctly detects 'extension
alive but unpaired' which is the precise state during pair step.
2. Daemon compatibility was checked at major.minor match. Result: a patch
release fixing a daemon bug (like #1) couldn't replace the running
daemon — new Pi client joins old buggy daemon as client.
Fix: exact version match. Patch releases auto-kill+respawn the daemon.
Diffstat (limited to 'CHANGELOG.md')
| -rw-r--r-- | CHANGELOG.md | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 5f2fed8..978bd75 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,13 @@ All notable user-facing changes to `pi-chrome`. +## 0.17.2 — 2026-05-16 + +### Fixes for the daemon model surfaced during 0.17.0/0.17.1 testing + +- **Daemon: record `lastSeenAt` on *every* `/next` from a chrome-extension origin**, not only after the paired-auth checks. Pre-pairing the daemon returns `needsPairing: true` early; before this fix it never updated `lastSeenAt`, so the daemon's `connected` flag stayed `false` even when the extension was happily polling. `/chrome onboard` would loop forever on "Waiting for the extension to wake up…" even with a perfectly healthy extension. +- **Daemon compatibility is now checked at exact version match**, not just major.minor. Without this, a 0.17.x patch release that fixes a daemon bug couldn't actually replace the running 0.17.0 daemon — the new Pi client would `sameMajorMinor`-match the old daemon and join as client, never triggering a respawn. Patch releases now auto-kill+respawn the daemon, so daemon bug fixes ship cleanly via `pi update`. + ## 0.17.1 — 2026-05-16 ### Fix: `/chrome onboard` stuck on "Waiting for the extension to wake up…" |
