railiance-apps/workplans/archived/260702-RAPPS-WP-0006-reuse-surface-hub-on-railiance01.md
codex d03edc946c
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
fix(workplans): migrate archived workplans off the retired RAILIANCE-WP prefix
Completes the migration begun on 2026-08-25, which covered active workplans
only. The archived copies kept their historical identifiers, and three
repositories shared one number space — so their task identifiers collided,
blocking task-level projection reset for those workplans.

Numbering continues each repository's active sequence rather than restarting,
so no identifier is reused. Projection UUIDs are re-derived from the new
canonical ids.

Refs CUST-WP-0068, STATE-WP-0083-T06

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
2026-08-26 08:05:43 +02:00

3.6 KiB

id type title domain repo status owner topic_slug created updated state_hub_workstream_id
RAPPS-WP-0006 workplan Deploy reuse-surface federation service on railiance01 financials railiance-apps finished codex railiance 2026-06-15 2026-06-15 f703ac97-bcfd-5fe4-8e9e-aff518761cd9

Terminology note: Historical text in this archived workplan may use the legacy term "workstream". The fleet term is workplan (canon/standards/workplan-terminology-fleet_v0.1.md).

Deploy reuse-surface federation service on railiance01

Companion to reuse-surface REUSE-WP-0011. Own the S5 Helm release, ingress, and operator targets for the federation service on production cluster node railiance01 (92.205.62.239).

Goal

Expose the helix_forge federation API at https://reuse.coulomb.social so repos can register capability index URLs via reuse-surface hub without per-machine sources.yaml maintenance.

Gitea repo: coulomb/reuse-surface
OCI image: gitea.coulomb.social/coulomb/reuse-surface:<tag>

DNS evidence

reuse.coulomb.social A → 92.205.62.239 (operator confirmed 2026-06-15). Ingress host configured in charts/reuse-surface/values.yaml.

Upstream dependency

Upstream Workplan Required artifact
Service + image reuse-surface REUSE-WP-0011 Image gitea.coulomb.social/coulomb/reuse-surface:<tag>, reuse-surface serve, /health

Do not deploy until REUSE-WP-0011-T04 publishes a buildable image.

Placement

Follow the inter-hub pattern:

  • charts/reuse-surface/ — Helm chart (Deployment, Service, Ingress, PVC)
  • helm/reuse-surface-values.yaml — non-secret overrides (image tag)
  • Secret reuse-surface-env with REUSE_SURFACE_TOKEN
  • Makefile targets: reuse-dry-run, reuse-deploy, reuse-status, reuse-logs
  • Namespace: reuse

Safety contract

  • Do not commit decrypted SOPS values or REUSE_SURFACE_TOKEN.
  • Pin image tags in helm/reuse-surface-values.yaml.
  • PVC at /data for SQLite (reuse.db) and fetch cache.

Scaffold Helm Chart For reuse-surface

id: RAPPS-WP-0006-T01
status: done
priority: high
state_hub_task_id: "a383fc06-b624-5c76-880c-ecb536028317"

Create charts/reuse-surface/ with Deployment (reuse-surface serve), Service, PVC, Ingress, probes on /health.

Add Values, Secret Template, And Makefile Targets

id: RAPPS-WP-0006-T02
status: done
priority: high
state_hub_task_id: "6dd7ec2b-7606-51ea-aef7-2110814f5a83"

Add helm/reuse-surface-values.yaml, document Secret reuse-surface-env, and Makefile reuse-* targets.

Configure Ingress For reuse.coulomb.social

id: RAPPS-WP-0006-T03
status: done
priority: medium
state_hub_task_id: "14236066-434c-5616-b432-2314b1f3a85d"

Ingress enabled in chart values:

  • ingress.host: reuse.coulomb.social
  • cert-manager.io/cluster-issuer: letsencrypt-prod
  • Traefik annotations matching inter-hub

DNS A record live: reuse.coulomb.social → 92.205.62.239.

Deploy Release To railiance01

id: RAPPS-WP-0006-T04
status: done
priority: medium
state_hub_task_id: "90423829-b8b3-5026-9abd-d7943825e00a"

Helm revision 3 (image cb7a6e4). Pod Running; /health and /v1/federated verified. TLS Ready after DNS A → 92.205.62.239.

Post-Deploy Verification And Runbook

id: RAPPS-WP-0006-T05
status: done
priority: low
state_hub_task_id: "f1f2ba9d-677b-51e0-a706-3841d3688b08"

Runbook docs/reuse-surface-on-railiance01.md updated with deploy evidence, token retrieval, and TLS/DNS operator note. Smoke checks pass via ingress and public TLS on DNS A → 92.205.62.239.