Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,31 @@ All notable changes to this project are documented here. The format follows

## [Unreleased]

## [0.1.1] - 2026-07-30

Bugfix release: a client used concurrently from cold now opens one firmware
session instead of one per caller. Everything else is documentation.

### Fixed

- Concurrent first use of a `nanokvm.Client` no longer opens a firmware session
per caller. `Token()` sampled the token, released the lock, and only then
logged in, so goroutines arriving together each ran a full login; login is
now serialized behind its own mutex with a token re-check, and callers queued
behind an in-flight login reuse its result (#10).

### Documentation

- Day-to-day Claude Code setup, as validated on hardware: an SSH master socket
carrying the tunnel (one auth), the dropbear agent-flood gotcha,
`ExitOnForwardFailure` and tunnel liveness checks, and the bearer token
pulled to a mode-600 file and used by reference everywhere (#9).
- Capture trails HID input by roughly one frame on firmware 2.4.3, so a
screenshot taken immediately after input can come back showing the screen
before the input landed. Workaround: end the input batch with a `wait` action
of ~100–200 ms, or take a second screenshot (#11).
- CI, release, and license badges at the top of the README (#12).

## [0.1.0] - 2026-07-28

Initial public release, validated on real hardware (NanoKVM Beta, firmware
Expand Down