Commit Graph

345 Commits

Author SHA1 Message Date
e52a2ba0e8 ci: add Gitea Actions workflow for build, push, and deploy
Some checks failed
Build and Deploy / build-push-deploy (push) Has been cancelled
Self-hosted runner on haskelseed. Pipeline: nix build .#docker →
skopeo push to Gitea registry → helm upgrade on Railiance01 → smoke test.

Runner setup required (one-time):
  - Register Gitea Actions runner on haskelseed with label "haskelseed"
  - Set secrets: GITEA_TOKEN (package:write scope), RAILIANCE01_KUBECONFIG
  - helm + kubectl in runner PATH (or via nix)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 23:17:53 +02:00
9cbf4caadf fix(nix): fix GHC 9.10.3 interface-file crash and binary name
Generated.Types imports 119 modules, pushing the combined .hi read past
a ~287 MB binary-deserialization limit in GHC 9.10.3. Fix by adding a
nixpkgs overlay that patches the inter-hub-models derivation: replaces
Generated/Types.hs with a thin TypesPart1/TypesPart2 re-export wrapper
after build-generated-code runs, and adds the two split modules to the
cabal exposed-modules list.

Also fix the production binary name from /bin/App to /bin/RunProdServer
in deployment.yaml and RUNBOOK.md (the IHP NixSupport build produces
RunProdServer, not App). Switch packages.docker to IHP's built-in
unoptimized-docker-image which already uses the correct binary path.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 23:16:44 +02:00
718fe3782b chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 23:07:37 +02:00
e549501744 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 21:13:42 +02:00
8534583573 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 20:59:10 +02:00
fdbfd8b1f4 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 20:44:35 +02:00
e57b7960d6 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 20:30:03 +02:00
8165e90573 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 20:15:29 +02:00
4e24c53188 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 20:00:56 +02:00
bef63aa14d chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 19:46:22 +02:00
c78d1cbf3b chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 19:31:53 +02:00
31a6700078 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 19:17:22 +02:00
d0373c0e27 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 19:02:55 +02:00
3fd6a33f45 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 18:48:27 +02:00
3801b809ce chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 18:33:47 +02:00
d830c386af chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 18:19:22 +02:00
0a72ee91ea feat(WP-0018/R6): Helm chart and runbook for Railiance01 deployment
Some checks failed
Test / test (push) Has been cancelled
Helm chart at deploy/helm/inter-hub/ with Deployment, Service, Ingress
(Traefik + letsencrypt-prod), and migration init container. Runbook at
deploy/railiance/RUNBOOK.md with build, push, rotate, rollback procedures.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 18:06:44 +02:00
72bc145abd chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 18:04:58 +02:00
f802eb9198 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 17:50:27 +02:00
a25e1db5f8 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 17:36:10 +02:00
3fc99d17ec fix(WP-0018/R1): correct binary name in docker CMD to /bin/App
Some checks failed
Test / test (push) Has been cancelled
IHP cabal executable is named 'App' (not 'inter-hub'), matching the
executable declaration in App.cabal.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 17:27:57 +02:00
452b1042a0 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 17:21:12 +02:00
ab5ecdcf9d chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 17:06:12 +02:00
0d68c667ed chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 16:51:39 +02:00
eeafba8077 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 16:37:12 +02:00
756f50ef46 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 16:22:29 +02:00
3ec6f9e0b1 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 16:08:52 +02:00
df181d1dec feat(WP-0018/R1): add OCI container image build to flake.nix
Some checks failed
Test / test (push) Has been cancelled
packages.docker using dockerTools.buildLayeredImage wraps the IHP
production binary with cacert for Anthropic API calls. Push target:
92.205.130.254:32166/coulomb/inter-hub:TAG via skopeo.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 16:07:27 +02:00
35bd183a6d chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 15:53:24 +02:00
0edf05324e feat(WP-0018): workplan for Railiance01 deployment with full ops scaffold
Some checks failed
Test / test (push) Has been cancelled
OCI image build (Nix dockerTools), Helm chart in railiance-apps,
SOPS/age secrets, PostgreSQL HA on railiance-platform, Traefik ingress,
Gitea Actions CI/CD. Includes dependency gate on K3s cluster readiness.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 15:50:24 +02:00
7c0ae6d17b chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 15:38:38 +02:00
12dfd5058e chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 15:23:57 +02:00
7598e26588 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 15:10:06 +02:00
1e2d473257 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 14:55:01 +02:00
750c9f25ff docs: add new-hub-quickstart.md — two-pattern domain hub guide
Some checks failed
Test / test (push) Has been cancelled
Covers Pattern A (API consumer, any language, start today) and Pattern B
(IHP extension hub, Haskell, shares haskelseed build infra). Includes honest
Haskell/IHP assessment, build-time estimates, hub-core sketch, and a
concrete checklist. References existing domain-hub-extension-guide.md for
type vocabulary registration.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 14:53:19 +02:00
97294558e3 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 14:39:47 +02:00
abdfa8e034 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 14:24:58 +02:00
cc06bfdc90 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 14:10:01 +02:00
26bc67ff79 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 13:55:02 +02:00
7c85b1ed5a chore(workplans): close WP-0014, WP-0015, WP-0017 as done
Some checks failed
Test / test (push) Has been cancelled
All three active inter-hub workplans are complete:
- WP-0017: all E1–E5 done (clean build, 615 modules)
- WP-0014: A1–A5 done (smoke test passed on haskelseed 2026-04-29)
- WP-0015: B1–B7 done (static pages live, root route fixed)

Release: v0.2.0-alpha.1

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
v0.2.0-alpha.1
2026-04-29 13:50:46 +02:00
ad7c938bfa fix(routes): root path "/" now routes to LandingAction
StaticPagesController parseRoute' used endOfInput for "/", but IHP passes
the raw path string so the parser received "/" not "". Match it explicitly
with string "/" before endOfInput, consistent with all other routes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 13:49:23 +02:00
b761fb6987 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 13:40:30 +02:00
84536228cd chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 13:25:28 +02:00
68ef06b504 chore(deploy): add haskelseed Alpine startup scripts
Some checks failed
Test / test (push) Has been cancelled
OpenRC init script + RunDevServer env wrapper for the haskelseed build VM
(Alpine 3.23, GHC 9.10.3, IHP 1.5). IHP DevServer binds to 127.0.0.1:8000
so socat forwards 0.0.0.0:8080 → 127.0.0.1:8000 for external access.

Deploy steps are documented in the file headers.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 13:20:16 +02:00
0fd842768c chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 13:11:01 +02:00
680f1b7de6 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 12:56:02 +02:00
ceffd984dd chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 12:40:52 +02:00
301fbdba07 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 12:25:58 +02:00
b3254ad458 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 12:11:00 +02:00
19275f74b5 chore(consistency): sync task status from DB [auto]
Some checks failed
Test / test (push) Has been cancelled
Updated by fix-consistency on 2026-04-29:
  - update .custodian-brief.md for inter-hub
2026-04-29 11:56:01 +02:00