Files
inter-hub/workplans/ADHOC-2026-06-15.md
tegwick a280fb12cd chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-06-15:
  - ADHOC-2026-06-15-T01: progress → wait
2026-06-15 23:36:58 +02:00

2.8 KiB

id, type, title, domain, repo, status, owner, created, updated, state_hub_workstream_id
id type title domain repo status owner created updated state_hub_workstream_id
ADHOC-2026-06-15 workplan Ad hoc Inter-Hub production fixes custodian inter-hub active codex 2026-06-15 2026-06-15 9e7a50b4-da7f-4df9-9154-7b89a071f520

Ad hoc Inter-Hub production fixes

Fix COUNT decode failures in v2 bootstrap endpoints

id: ADHOC-2026-06-15-T01
status: wait
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.

Deploy trigger attempt on 2026-06-15:

  • Confirmed current main contains the COUNT decode fix and is at commit f8fde35.
  • Confirmed the deploy workflow is the normal path and is pinned to runs-on: [self-hosted, haskelseed].
  • Confirmed image tag gitea.coulomb.social/coulomb/inter-hub:f8fde35 returns manifest unknown.
  • Gitea Actions API inspection/dispatch was attempted using the locally configured tea token, but the public HTTPS API returned 401 Unauthorized for Actions endpoints; the raw configured HTTP endpoint was not reachable from this session.
  • Pushed empty commit 68c66b9 (chore: trigger inter-hub deploy) because the previous contract/docs commit was ignored by the deploy workflow's paths-ignore rules.
  • Polled the registry for gitea.coulomb.social/coulomb/inter-hub:68c66b9 for about five minutes after push; it continued to return manifest unknown.

Current wait reason: the source fix is pushed, but image publication/deploy now requires authenticated Gitea Actions workflow dispatch or inspection of the self-hosted haskelseed runner path. The normal workflow needs haskelseed as build runner; an equivalent operator-controlled build host with Nix, registry push credentials, and Railiance deploy credentials could substitute.