From abee221b0f0e5a4513ab126afbdfddc2728df6be Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 19 May 2026 03:19:41 +0530 Subject: docs: squash-merge plan complete — all items done MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PLAN-SQUASH-MERGE.md | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ components/esp-miner | 1 - 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 PLAN-SQUASH-MERGE.md delete mode 160000 components/esp-miner diff --git a/PLAN-SQUASH-MERGE.md b/PLAN-SQUASH-MERGE.md new file mode 100644 index 0000000..59eb13e --- /dev/null +++ b/PLAN-SQUASH-MERGE.md @@ -0,0 +1,48 @@ +# Squash + Merge Plan: feature/cvm-relay-stability → master + +## Goal +Squash the 4 commits on `feature/cvm-relay-stability` into a single commit and +fast-forward merge into master. All tasks are complete and tested (17/17 +integration tests, 61/61 unit tests, 120s stable relay connection on Board B). + +## Checklist +- [x] Write this plan to markdown +- [x] Rebase `feature/cvm-relay-stability` onto master +- [x] Squash 4 commits into 1 +- [x] Fast-forward merge into master +- [x] Run `make test-unit` — 61/61 pass +- [x] Push master to remote +- [x] Remove worktree `/home/c03rad0r/esp32-tollgate-cvm-relay` +- [x] Delete local branch `feature/cvm-relay-stability` +- [x] Delete stale backup branches (`backup/master-2cd372c`, `backup/pre-squash-cvm-20260519-010933`, `feature/local-relay-backup`) + +## Squash commit message +``` +feat: CVM relay stability fix + MCP relay integration tests + +Relay disconnect fix: +- TLS read timeout reduced from 15s to 1s (short poll loop) +- Ping timer fires every 30s independently of read activity +- Consecutive timeout counter (65s) detects real disconnects +- Handle relay close frames (opcode 0x08) explicitly +- Result: 120s+ stable connection (previously ~37s disconnect cycle) + +MCP relay integration tests (17/17 pass via `make test-cvm-mcp`): +- MCP initialize roundtrip via relay.primal.net +- get_sessions returns session array (0 active) +- get_usage returns metric/price/step fields +- Non-owner auth rejection (board silently drops) +- Owner control request passes after rejection test + +Build fixes: +- Remove display/font/axs15231b deps (from display branch, not in this tree) +- Add esp_timer to CMakeLists REQUIRES + +Host unit tests: 61/61 pass +``` + +## Branch commits being squashed +1. `81885d2` fix: non-blocking WS reads + decoupled ping timer for relay stability +2. `61fe3ac` fix: remove display deps, add esp_timer to CMakeLists for clean build +3. `9d701c6` test: MCP relay integration tests — get_sessions, get_usage, non-owner auth +4. `6c1ccf1` docs: update checklist — all tasks complete diff --git a/components/esp-miner b/components/esp-miner deleted file mode 160000 index 5d56ca4..0000000 --- a/components/esp-miner +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 5d56ca43fa6759b80d0f5df27542c7998a642dbd -- cgit v1.2.3