railiance-fabric/workplans/RAIL-FAB-WP-0028-hosted-financial-fabric-authority.md
repo-manager 18fabb37ce
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
repo.work.assign_missing_identifiers
source: repo-manager
reason: deterministic projection registration

Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a053ff-1d6f-7fe2-ac1c-a6eb40a42a0c
2026-08-31 23:17:51 +02:00

77 lines
2.2 KiB
Markdown

---
id: RAIL-FAB-WP-0028
type: workplan
title: "Host and operate the financial Fabric authority"
domain: financials
repo: railiance-fabric
status: proposed
owner: codex
topic_slug: railiance
created: "2026-08-31"
updated: "2026-08-31"
state_hub_workstream_id: "58a56363-3bda-50f7-8240-1e45131bc7d9"
---
# RAIL-FAB-WP-0028 - Hosted financial Fabric authority
## Goal
Turn the local registry-backed authority proven by FIN-WP-0003 and
STATE-WP-0079-D2 into a durable production owner surface. State Hub can retain
an immutable projection during the strangler window, but retirement must not
depend on a workstation process or a workstation-owned SQLite database.
Origin: residual from `STATE-WP-0079-T04` after the 2026-08-31 D2 parity and
rollback rehearsal.
## T01 - Decide runtime and persistence ownership
```task
id: RAIL-FAB-WP-0028-T01
status: todo
priority: high
state_hub_task_id: "65702f41-b87e-59e5-9396-cd1fda5e8ef4"
```
Select the production runtime, persistent registry store, backup/restore
boundary, authentication policy, and deployment repository. Preserve accepted
snapshot history and deterministic snapshot-set provenance.
## T02 - Deploy the authority service
```task
id: RAIL-FAB-WP-0028-T02
status: wait
priority: high
state_hub_task_id: "cad1af1d-177b-5a47-a9fa-d99c40bb2649"
```
Package and deploy the registry service with health/readiness checks and stable
owner endpoints for `/exports/financial`, `/graph/summary`, and `/graph/edges`.
Do not expose mutation endpoints without the authorization selected in T01.
## T03 - Automate freshness and recovery
```task
id: RAIL-FAB-WP-0028-T03
status: wait
priority: high
state_hub_task_id: "78a73d4e-46aa-53c7-911b-be5f79bc25e8"
```
Run a reviewed accepted-snapshot refresh loop, surface stale/error state, and
prove backup/restore without changing the deterministic export for an unchanged
accepted snapshot set.
## T04 - Cut direct consumers over
```task
id: RAIL-FAB-WP-0028-T04
status: wait
priority: high
state_hub_task_id: "c66c3fa4-8856-5999-8c47-dbb2f6efc21e"
```
Run the fin-hub consumer gate against the hosted owner endpoint, inventory and
switch any real callers, exercise rollback, and hand the receipts back to
`STATE-WP-0079-T04` before State Hub's Fabric projection routes retire.