docs: website/API in ping-collector since 2026-10-18; quiet the install script's port probes
CI / Format & lint (push) Successful in 22s
CI / Test suite (push) Successful in 52s
Docs / Validate documentation (push) Successful in 24s
Rust / fmt, clippy, test, build (push) Successful in 11m39s

This commit is contained in:
grabowski committed 2026-10-18 16:42:40 +07:00
1 parent 779728e38b
commit 330fdf7804
3 files changed
+5 -5

No files matched your search

+3 -3
View File
@@ -1,8 +1,8 @@
# A Rust rewrite: assessment # A Rust rewrite: assessment
Status: **in progress.** Phase 1 (collector) is in production since 2026-10-17, Status: **in progress.** Phase 1 (collector) is in production since 2026-10-17,
phase 2 (forecast + ntfy) since 2026-10-18; phase 3 (website/API + Matrix) is phase 2 (forecast + ntfy) and phase 3 (website/API + Matrix) since
built and parity-checked, cutover pending; see 2026-10-18; see
[rust/README.md](../rust/README.md). Spike: [spikes/rust-forecast](../spikes/rust-forecast/README.md). [rust/README.md](../rust/README.md). Spike: [spikes/rust-forecast](../spikes/rust-forecast/README.md).
## Short version ## Short version
@@ -86,7 +86,7 @@ This slows model iteration, which is the most active part of the repo.
| 0 | Spike: P.1 features + HGB inference | done, bit-identical | | 0 | Spike: P.1 features + HGB inference | done, bit-identical |
| 1 | `ping-collector`: RID, HII, dams, Open-Meteo | in production since 2026-10-17 23:09 (Python: `COLLECTION_ENABLED=false`) | | 1 | `ping-collector`: RID, HII, dams, Open-Meteo | in production since 2026-10-17 23:09 (Python: `COLLECTION_ENABLED=false`) |
| 2 | Forecast crate + ntfy | in production since 2026-10-18 15:08 (`FORECAST_IN_COLLECTOR=true`); live check on production data: 48/48 rows identical, 96/96 probabilities bit-identical | | 2 | Forecast crate + ntfy | in production since 2026-10-18 15:08 (`FORECAST_IN_COLLECTOR=true`); live check on production data: 48/48 rows identical, 96/96 probabilities bit-identical |
| 3 | Website + read API in `ping-collector`, Matrix like ntfy | built 2026-10-18; locally 53 of 53 compared routes identical to FastAPI (`scripts/api_parity.py`); cutover with `install_collector.sh --cutover-api` | | 3 | Website + read API in `ping-collector`, Matrix like ntfy | in production since 2026-10-18 16:40 (`WEB_LISTEN`, `water-monitor.service` disabled); on production data 53 of 53 compared routes identical to FastAPI (`scripts/api_parity.py`) |
| 4 | Cleanup | | | 4 | Cleanup | |
0. **Spike: done.** P.1 features + HGB inference, bit-identical. 0. **Spike: done.** P.1 features + HGB inference, bit-identical.
+1 -1
View File
@@ -7,7 +7,7 @@ costs and the parity rules are in [docs/RUST_REWRITE.md](../docs/RUST_REWRITE.md
| --- | --- | --- | | --- | --- | --- |
| `collector` (`ping-collector`) | RID, HII/ThaiWater, RID dams and Open-Meteo collection in the Python web app | phase 1: in production since 2026-10-17 | | `collector` (`ping-collector`) | RID, HII/ThaiWater, RID dams and Open-Meteo collection in the Python web app | phase 1: in production since 2026-10-17 |
| `forecast` (`ping-forecast`, library) | the flood forecast (`src/ml` serving path); run by `ping-collector` with ntfy | phase 2: in production since 2026-10-18 | | `forecast` (`ping-forecast`, library) | the flood forecast (`src/ml` serving path); run by `ping-collector` with ntfy | phase 2: in production since 2026-10-18 |
| `collector`: `src/web` | the FastAPI app (`src/web_api.py`): dashboard, read API, `/docs` | phase 3: built, cutover pending | | `collector`: `src/web` | the FastAPI app (`src/web_api.py`): dashboard, read API, `/docs` | phase 3: in production since 2026-10-18 |
## ping-collector ## ping-collector
+1 -1
View File
@@ -82,7 +82,7 @@ env_is() { grep -q "^$1=$2\s*$" "$ENV_FILE"; }
wait_http() { # url seconds wait_http() { # url seconds
local i local i
for i in $(seq "$2"); do for i in $(seq "$2"); do
curl -fsS -o /dev/null --max-time 5 "$1" && return 0 curl -fs -o /dev/null --max-time 5 "$1" 2>/dev/null && return 0
sleep 1 sleep 1
done done
return 1 return 1