docs: tracker updated — fixes landed, tests green, remaining steps are the two mnemonic ceremonies + node updates
This commit is contained in:
+21
-13
@@ -25,9 +25,9 @@ same class cannot silently return.
|
||||
| B3 HSTS: none on :80, `max-age=0` on :443 (actively clears cached policy) | `image-recipe/configs/nginx-archipelago.conf` | ✅ code |
|
||||
| B4 NPM manifest: `/etc/letsencrypt` mount + `NET_BIND_SERVICE` | `apps/nginx-proxy-manager/manifest.yml` | ✅ code |
|
||||
| B5 `portAuth` alias resolution + unanimous port-wide fallback | `neode-ui/src/views/discover/curatedApps.ts` | ✅ code |
|
||||
| B6 Catalog cache warmed at dashboard bootstrap | `neode-ui/src/App.vue` | ⬜ |
|
||||
| B7 NIP-07 bridge: host/port equality + reply to `event.origin` | `neode-ui/src/stores/appLauncher.ts` ✅ · `neode-ui/src/views/appSession/useNostrBridge.ts` ⬜ | 🔶 |
|
||||
| B8 Stale LND 0.18.4 refs in test expectations | `tests/lifecycle/remote-lifecycle.sh` + fixtures | ⬜ |
|
||||
| B6 Catalog cache warmed at dashboard bootstrap | `neode-ui/src/App.vue` | ✅ |
|
||||
| B7 NIP-07 bridge: host/port equality + reply to `event.origin` | `neode-ui/src/stores/appLauncher.ts` ✅ · `neode-ui/src/views/appSession/useNostrBridge.ts` ✅ | ✅ |
|
||||
| B8 Stale LND 0.18.4 refs in test expectations | `tests/lifecycle/remote-lifecycle.sh` | ✅ |
|
||||
|
||||
## C. Regression tests ("never again")
|
||||
|
||||
@@ -35,22 +35,30 @@ same class cannot silently return.
|
||||
|------|-------|--------|
|
||||
| C1 Rust: router v2 response shape, nested errors, failure reasons | B1 | ✅ |
|
||||
| C2 Rust: setup-token log extraction (live-captured 2.45.0 line shape) | B2 | ✅ |
|
||||
| C3 bats: `lnd-api-compat` — POST `/v2/router/send` on the running LND must answer (never 404) | B1 vs image skew at gate time | ⬜ |
|
||||
| C4 bats: nginx must NOT send HSTS on :80; :443 must send `max-age=0` | B3 | ⬜ |
|
||||
| C5 neode-ui unit: portAuth alias + unanimous-scan (incl. bitcoin-knots→8334 https) | B5/B4-mixed-content | ⬜ |
|
||||
| C6 neode-ui unit: bridge origin equality ignores scheme | B7 | ⬜ |
|
||||
| C3 bats: `lnd-api-compat` — POST `/v2/router/send` on the running LND must answer (never 404) | B1 vs image skew at gate time | ✅ (route probe verified live on shorty: HTTP 500 ≠ 404) |
|
||||
| C4 bats: nginx must NOT send HSTS on :80; :443 must send `max-age=0` | B3 | ✅ |
|
||||
| C5 neode-ui unit: portAuth alias + unanimous-scan (incl. bitcoin-knots→8334 https) | B5/B4-mixed-content | ✅ (6 tests) |
|
||||
| C6 neode-ui unit: bridge origin equality ignores scheme | B7 | ✅ (2 tests) |
|
||||
|
||||
Backend suites: 34 targeted Rust tests green (payments v2 shape, setup-token
|
||||
extraction, lnd wallet/info regressions); middleware/dispatcher suite green;
|
||||
full neode-ui suite green (62 tests in the touched areas); production bundle
|
||||
built and verified to embed the alias fix. `cargo fmt` applied.
|
||||
|
||||
## D. Deploy & live verification
|
||||
|
||||
| Step | Status |
|
||||
|------|--------|
|
||||
| D1 shorty NPM crash-loop stopped cleanly (user-stopped marker; public hosts keep serving via host nginx mirror) | ✅ 12:52Z |
|
||||
| D2 shorty live nginx HSTS patch + reload | ⬜ |
|
||||
| D3 Regenerate catalog (releases/app-catalog.json + store copies) | ⬜ |
|
||||
| D4 **User runs `scripts/sign-catalog.sh`** (signer build running in background) | ⬜ |
|
||||
| D5 Commit + push (origin + gitea-vps2 OTA mirror) | ⬜ |
|
||||
| D6 OTA on shorty-s + framework-pt (Update button; framework-pt has no SSH from here) | ⬜ |
|
||||
| D7 Post-deploy live checks: LND send+receive; mempool/IndeeHub/bitcoin-UI frames over https; NPM healthy + admin :8081; portainer token card on fresh DB; zero CORS errors | ⬜ |
|
||||
| D2 shorty live nginx HSTS patch + reload | ✅ verified: :80 and :443 both answer `max-age=0` |
|
||||
| D3 Regenerate catalog (releases/app-catalog.json + store copies) | ✅ semantic diff = exactly the two NPM fixes |
|
||||
| D4 **User runs `scripts/sign-catalog.sh`** (signer built at /tmp/archy-sign-bin) | ⬜ waiting on mnemonic |
|
||||
| D5 Commit + push (origin + gitea-vps2 OTA mirror) | ✅ 6 commits pushed (signed catalog commits after D4) |
|
||||
| D6 Release v1.8.9-alpha: `scripts/create-release.sh 1.8.9-alpha` (mnemonic) → `scripts/publish-release-assets.sh 1.8.9-alpha gitea-vps2` | ⬜ waiting on mnemonic |
|
||||
| D7 OTA on shorty-s + framework-pt (Update button; framework-pt has no SSH from here) | ⬜ |
|
||||
| D8 shorty: clear the NPM user-stopped marker + Start (or it starts via the fixed catalog) | ⬜ |
|
||||
| D9 framework-pt: Start Mempool — its containers are confirmed stopped (port 4080 refuses; gate answers on 7778/8334/50002/18083 so those apps will embed over https immediately) | ⬜ |
|
||||
| D10 Post-deploy live checks: LND send+receive; mempool/IndeeHub/bitcoin-UI frames over https; NPM healthy + admin :8081; portainer token card on fresh DB; zero CORS errors | ⬜ |
|
||||
|
||||
framework-pt immediate workaround until its OTA lands: open the dashboard by
|
||||
IP (`http://192.168.x.x`) instead of `framework-pt.local`, and/or clear the
|
||||
|
||||
Reference in New Issue
Block a user