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