diff options
Diffstat (limited to 'interop/PROGRESS.md')
| -rw-r--r-- | interop/PROGRESS.md | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/interop/PROGRESS.md b/interop/PROGRESS.md new file mode 100644 index 0000000..576eff2 --- /dev/null +++ b/interop/PROGRESS.md | |||
| @@ -0,0 +1,70 @@ | |||
| 1 | # PROGRESS.md — Interop Test Checklist | ||
| 2 | |||
| 3 | ## Setup | ||
| 4 | |||
| 5 | - [ ] Create `interop/routers.env` from `routers.env.example` | ||
| 6 | - [ ] Verify SSH access to OpenWRT: `ssh root@10.47.41.1 echo ok` | ||
| 7 | - [ ] Verify WiFi connection to ESP32: `ping -c 2 10.192.45.1` | ||
| 8 | - [ ] Build `mint-token` binary: `cd physical-router-test-automation/scripts/mint-token && go build -o /tmp/mint-token .` | ||
| 9 | - [ ] Install `cashu` CLI: `pip install cashu` | ||
| 10 | |||
| 11 | ## Mint Alignment | ||
| 12 | |||
| 13 | - [ ] Add `testnut.cashu.space` to OpenWRT's `accepted_mints` | ||
| 14 | - [ ] Add `nofee.testnut.cashu.space` to ESP32's config | ||
| 15 | - [ ] Verify both mints accepted on OpenWRT | ||
| 16 | - [ ] Verify both mints accepted on ESP32 | ||
| 17 | |||
| 18 | ## Wallet Funding | ||
| 19 | |||
| 20 | - [ ] Fund ESP32 wallet via `cashu send --legacy` (V3 token) | ||
| 21 | - [ ] Fund OpenWRT wallet via `mint-token` (V4 token) | ||
| 22 | - [ ] Verify ESP32 balance > 0 | ||
| 23 | - [ ] Verify OpenWRT balance > 0 | ||
| 24 | |||
| 25 | ## Scenario 1: Laptop → ESP32 | ||
| 26 | |||
| 27 | - [ ] `make interop-laptop-esp32` — mint V3 token, POST to ESP32, verify internet | ||
| 28 | - [ ] Token accepted (kind=1022) | ||
| 29 | - [ ] Internet works after payment | ||
| 30 | - [ ] Spent token rejected (kind=21023) | ||
| 31 | |||
| 32 | ## Scenario 2: Laptop → OpenWRT | ||
| 33 | |||
| 34 | - [ ] `make interop-laptop-openwrt` — mint V4 token, POST to OpenWRT, verify internet | ||
| 35 | - [ ] Token accepted (kind=1022) | ||
| 36 | - [ ] Internet works after payment | ||
| 37 | - [ ] Spent token rejected (kind=21023) | ||
| 38 | |||
| 39 | ## Scenario 3: OpenWRT → ESP32 (Reseller) | ||
| 40 | |||
| 41 | - [ ] `make interop-openwrt-esp32` — OpenWRT connects to ESP32 AP, auto-pays | ||
| 42 | - [ ] OpenWRT STA connects to `TollGate-C0E9CA` | ||
| 43 | - [ ] OpenWRT daemon detects TollGate upstream | ||
| 44 | - [ ] Auto-payment succeeds (ESP32 session created) | ||
| 45 | - [ ] OpenWRT has internet through ESP32 | ||
| 46 | - [ ] ESP32 wallet balance increased | ||
| 47 | - [ ] Cleanup: restore OpenWRT upstream | ||
| 48 | |||
| 49 | ## Scenario 5: ESP32 ↔ ESP32 | ||
| 50 | |||
| 51 | - [ ] Flash Board B with different nsec | ||
| 52 | - [ ] Configure Board B's config.json | ||
| 53 | - [ ] Fund Board B wallet | ||
| 54 | - [ ] `make interop-esp32-esp32` — cross-board payment | ||
| 55 | - [ ] Cleanup: restore both boards | ||
| 56 | |||
| 57 | ## Cleanup | ||
| 58 | |||
| 59 | - [ ] Restore OpenWRT production config | ||
| 60 | - [ ] Restore ESP32 original config (if changed) | ||
| 61 | - [ ] Verify both devices back to normal operation | ||
| 62 | |||
| 63 | ## Infrastructure | ||
| 64 | |||
| 65 | - [x] `interop/INTEROP_PLAN.md` written | ||
| 66 | - [ ] `interop/AGENTS.md` written | ||
| 67 | - [ ] `interop/routers.env.example` written | ||
| 68 | - [ ] `interop/Makefile` written | ||
| 69 | - [ ] `interop-status` target tested against real hardware | ||
| 70 | - [ ] Committed and pushed | ||