| Age | Commit message (Expand) | Author |
| 2026-05-19 | docs: rebase, backup, squash & merge plan with checklistbackup/multi-mint-support-pre-rebase | Your Name |
| 2026-05-19 | fix: merge readiness — display_enabled config, real pubkey, probe interval,... | Your Name |
| 2026-05-19 | docs: update plan with Board B make target test results — all 4 mints reach... | Your Name |
| 2026-05-19 | wip: disable display for stability testing — board survives 2+ min without it | Your Name |
| 2026-05-19 | fix: add per-board mutex locks to flash targets | Your Name |
| 2026-05-19 | docs: update WPA auto-detect plan with hardware verification results | Your Name |
| 2026-05-19 | feat: WPA auto-detect, STA connectivity fix, lwip crash fix | Your Name |
| 2026-05-19 | test: burst-fetch integration test — all endpoints verified passing | Your Name |
| 2026-05-18 | test: multi-mint integration test + test report | Your Name |
| 2026-05-18 | fix: divide-by-zero crash when no WiFi networks configured | Your Name |
| 2026-05-18 | Add test_mint_health: 14 host unit tests for mint health module | Your Name |
| 2026-05-18 | Move /mints to API server (port 2121), fix services persistence | Your Name |
| 2026-05-18 | docs: update checklist — phases 1-8 complete, build passes | Your Name |
| 2026-05-18 | fix: format-truncation warning in captive portal mint list | Your Name |
| 2026-05-18 | test: add mint_health stub for host unit tests, fix test_cashu build | Your Name |
| 2026-05-18 | feat: multi-mint health tracker, discovery, portal, multi-wallet (Phase 3-8) | Your Name |
| 2026-05-18 | test: update test_cashu for multi-mint acceptance (14/14 pass) | Your Name |
| 2026-05-18 | feat: multi-mint config array and acceptance check (Phase 1+2) | Your Name |
| 2026-05-18 | docs: add worktree strategy and updated checklist to design doc | Your Name |
| 2026-05-18 | docs: multi-mint support design document | Your Name |
| 2026-05-18 | fix: EVENT msg buffer underflow + WS write loop + WPA3 auth | Your Name |
| 2026-05-18 | feat: ContextVM (MCP over Nostr) server with WS masking fix | Your Name |
| 2026-05-18 | fix: move MAC set after wifi_set_mode, start services without STA | Your Name |
| 2026-05-17 | refactor: reorganize test suite, add integration tests for NAT filter | Your Name |
| 2026-05-17 | feat: per-client NAT filtering via LWIP_HOOK_IP4_CANFORWARD | Your Name |
| 2026-05-17 | Bug fixes: reset_auth clears sessions, port 80 /usage shows real data, metric... | Your Name |
| 2026-05-17 | Playwright interop tests: 18 tests (ESP32 happy path + OpenWRT comparison) | Your Name |
| 2026-05-17 | Phase 7: MCP handler (25 tests), NIP-04 encrypt/decrypt (15 tests), CVM serve... | Your Name |
| 2026-05-17 | feat(phase6): bytes-based billing - dual metric support | Your Name |
| 2026-05-17 | Phase 5: Lightning auto-payout with LNURL-pay and NUT-05 melt | Your Name |
| 2026-05-17 | Phase 4: TollGate client detection + auto-payment | Your Name |
| 2026-05-17 | interop: ESP32 ↔ OpenWRT TollGate cross-platform test suite | Your Name |
| 2026-05-17 | test_cashu (10/10) + test_session (18/18): all 86 unit tests passing | Your Name |
| 2026-05-17 | test_nostr_event: 23/23 passing — NIP-01 event ID, Schnorr signing, JSON se... | Your Name |
| 2026-05-17 | test_identity: 24/24 passing — HMAC-SHA512 derivation, MAC bits, SSID/IP de... | Your Name |
| 2026-05-17 | Testing infrastructure: AGENTS.md rules + unit test framework + geohash tests... | Your Name |
| 2026-05-16 | Phase 3: Nostr identity derivation + wifistr service discovery | Your Name |
| 2026-05-16 | Phase 3: on-device Cashu wallet with mbedTLS secp256k1 + SPIFFS persistence +... | Your Name |
| 2026-05-16 | Fix test 22: use dynamic TOLLGATE_IP instead of hardcoded 192.168.4.1 for rou... | Your Name |
| 2026-05-16 | Fix captive portal detection on GrapheneOS + embed mint URL in portal HTML | Your Name |
| 2026-05-16 | Unique SSID/IP per board + captive detection fix + mint list in portal | Your Name |
| 2026-05-16 | Phase 2 Playwright tests: 10/10 passing (portal, captive detection, API) | Your Name |
| 2026-05-16 | Phase 2 tests 22-23 passing: session expiry + renewal (21/21) | Your Name |
| 2026-05-16 | Captive portal detection fix + Phase 2 tests 16-18,20 passing (17/17) | Your Name |
| 2026-05-16 | gitignore: exclude generated config.json (contains WiFi credentials) | Your Name |
| 2026-05-16 | Phase 2 WIP: token decode works, TLS checkstate succeeds (crashes after respo... | Your Name |
| 2026-05-15 | Fix stack overflow and heap-allocate large buffers in Cashu/payment path | Your Name |
| 2026-05-15 | Phase 2 WIP: Cashu payment endpoints, session tracking, updated checklist | Your Name |
| 2026-05-15 | Phase 1 working: captive portal, DNS hijack, NAT-based access control | Your Name |
| 2026-05-15 | initiall commit | Your Name |