--- id: ADHOC-2026-06-15 type: workplan title: "Ad hoc Inter-Hub production fixes" domain: custodian repo: inter-hub status: active owner: codex created: "2026-06-15" updated: "2026-06-15" state_hub_workstream_id: "9e7a50b4-da7f-4df9-9154-7b89a071f520" --- # Ad hoc Inter-Hub production fixes ## Fix COUNT decode failures in v2 bootstrap endpoints ```task id: ADHOC-2026-06-15-T01 status: progress priority: high state_hub_task_id: "cceee9f1-56af-44bc-898d-21c4508df07c" ``` Production Ops Hub bootstrap exposed a PostgreSQL/Haskell type mismatch in the v2 API helpers. `COUNT(*)` returns `bigint`, while the helper code decoded the result as `Int`, causing `UnexpectedColumnTypeStatementError` in widget type validation and API request log rate-limit checks. Fix the count queries so widget creation and authenticated hub-registry reads work through the documented v2 bootstrap API. Source fix on 2026-06-15: - `Application/Helper/TypeRegistry.hs` now casts registry validation `COUNT(*)` queries to `int`. - `Application/Helper/ApiRateLimit.hs` now casts API request log `COUNT(*)` queries to `int`. - Commit `5101eb5 Fix API count decoding` was pushed to `origin/main`. Blocked before live completion: - The Gitea deploy workflow did not update production during the session. - Production still reports image `gitea.coulomb.social/coulomb/inter-hub:5c13de1`. - Local `nix develop ... scripts/compile-check` is blocked by local devenv setup, and the local `nix build .#docker` remained in dependency compilation after more than 20 minutes. The build was stopped cleanly.