Skip to content

v1.2.1#368

Merged
Avi0n merged 8 commits into
mainfrom
dev
Jul 13, 2026
Merged

v1.2.1#368
Avi0n merged 8 commits into
mainfrom
dev

Conversation

@Avi0n

@Avi0n Avi0n commented Jul 13, 2026

Copy link
Copy Markdown
Owner

No description provided.

Avi0n added 8 commits July 12, 2026 14:21
- an empty or partial GATT result with a nil error during auto-reconnect no longer drops the state machine to idle
- exiting the phase let the next didConnect get cancelled as unexpected, killing the OS standing reconnect until the next foreground
- recovery is unchanged: the armed discovery timeout bounds a foreground stall, the OS pending connect covers background
- state machine tests cover the replayed sequence, error branches, and explicit disconnect
- the old copy told users to check a PIN that is never on screen when a saved device fails to connect
- now says the saved pairing stopped working and points at Remove and Try Again, which re-pairs in the app
- all 9 locales updated; quoted button labels match each locale's actual label
- replace the 1000-row connection-time prune with 7-day retention plus a 50000-row ceiling
- a connected sync burst writes hundreds of rows, so an incident could fall out of the log before an evening export
- raise the export fetch window and limit to match what retention keeps
- production default is 3, the test expected 5
Encryption timeouts at the edge of BLE range look exactly like an
invalidated bond, so exhausting the auto-reconnect retry budget on
them could tell a user to re-pair a radio whose bond still works.

- record when a bond last carried an encrypted session (fresh
  connect, device switch, auto-reconnect rebuild)
- an exhausted encryption-timeout budget escalates to re-pair only
  if there was no verified session in the last 6 hours; otherwise
  it tears down as a plain connection failure and the watchdog
  keeps retrying
- a dead bond can never refresh the stamp, so it still escalates
  within one episode once the grace runs out
- definitive bond errors and the discovery-stall path stay
  immediate and are never graced
- log the verification age at the decision point so debug exports
  show why an episode went either way
- tests: fringe replay, mid-episode adoption reset, stale and
  missing stamps, definitive-code immunity, store round-trip
- change diagnostics.footer in all 9 locales from "last 24 hours" to 7 days
- reword so the retention window sits with the prune clause, matching DebugLogRetention.window
@Avi0n
Avi0n merged commit 76cfe90 into main Jul 13, 2026
8 of 9 checks passed
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