Closes the coverage gap where existing bats suites would report green on a node whose dashboard tiles 502 because the proxy upstream is dead. First pass against .198 caught real prod issues immediately: /app/lnd/ → 502 (lnd container exited) /app/mempool/ → 502 (mempool container exited) /app/fedimint/ → 502 (fedimint container exited) while existing tests reported only "container is up: false" with no 404/502 distinction. * lib/ui-probes.bash — sourced helper. probe_https_200, probe_app_url (skip-if-container-down else assert-200), probe_dashboard_shell (asserts the Vue SPA HTML, not nginx default — catches the layout regression from feedback_release_tarball_layout.md), probe_dashboard_catalog (asserts /catalog.json non-empty). * bats/ui-coverage.bats — 9 @test cases covering the dashboard + bitcoin-ui :8334 + the seven HTTPS_PROXY_PATHS most users hit (lnd, electrumx, mempool, fedimint, btcpay, filebrowser). URL list mirrors HTTPS_PROXY_PATHS in neode-ui/src/views/appSession/appSessionConfig.ts. Divergence between the two is the exact bug class we're guarding against. Loops clean under run-20x.sh. Container-state oracle is via local podman inspect, so the suite must run on the archy host (same as companion-survives-archipelago-restart.bats). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
4.7 KiB
4.7 KiB