docs(haskell): STATUS: live at 7d40789 after the review fixes

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Paul Campbell pushed by claude agent, operated by paul@keymail.dev b9fbdff08f01a6cc9b0e563c0514555f6ac091b7 parent a4df260
1 file changed, +27 −3
  • apps/haskell/STATUS.md +27 −3
diff --git a/apps/haskell/STATUS.md b/apps/haskell/STATUS.md
index ecaac90..c65f3e9 100644
--- a/apps/haskell/STATUS.md
+++ b/apps/haskell/STATUS.md
@@ -1,9 +1,10 @@
-LIVE https://todo-haskell.bfj.oncarlos.com 7881a7e
+LIVE https://todo-haskell.bfj.oncarlos.com 7d40789
# todo-haskell: status
-Deployed build `7881a7e` to `todo-haskell.bfj.oncarlos.com` (channel
-`edge`). `/api/version` and `X-Carlos-Version` both report `7881a7e`.
+Deployed build `7d40789` to `todo-haskell.bfj.oncarlos.com` (channel
+`edge`). `/api/version` reports `7d40789`. The first deploy was
+`7881a7e`; `7d40789` fixes the review findings below.
## Checks
@@ -32,3 +33,26 @@ Deployed build `7881a7e` to `todo-haskell.bfj.oncarlos.com` (channel
client certificates, which the edge already handles).
- Static glibc warns about `getaddrinfo`, `dlopen` and `getpw*`. The app
calls none of them at runtime.
+
+## Review findings fixed (7d40789)
+
+1. **An edit in progress was lost when a response arrived.** `app.js`
+ replaced the whole list with each action's answer, which dropped any
+ editor opened while that request was pending. It now records the open
+ edit (item, typed value, selection, focus) before swapping in the new
+ list and puts it back on the same item afterwards. It also ignores the
+ `focusout` caused by the swap, so the old input isn't saved by
+ mistake. Checked in Chromium with a toggle response delayed 1.5 s:
+ double-clicking another item and typing during the delay leaves the
+ editor open, focused and holding the typed text, and Enter saves it.
+2. **`--listen` accepted any `127.x.x.x` address.** It now accepts exactly
+ `127.0.0.1:<port>`. `127.0.0.2:8080` and `0.0.0.0:8080` are refused
+ with a usage error.
+
+After the fixes: `make test` passes, the shared suite passes locally and
+against https://todo-haskell.bfj.oncarlos.com (67 passed, 3 skipped),
+and `boot-check.sh` passes.
+
+## Review findings not fixed
+
+None.