feat: complete fabric authority cutover contract
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s

Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a053ff-1d6f-7fe2-ac1c-a6eb40a42a0c
This commit is contained in:
tegwick 2026-08-31 22:18:39 +02:00
parent bbfa2d661b
commit debe67edf0
7 changed files with 344 additions and 8 deletions

View file

@ -0,0 +1,28 @@
# FIN-WP-0003 pre-cutover evidence — 2026-08-31
The new gate was exercised against the current local Fabric registry and the
live State Hub projection:
```bash
PYTHONPATH=src .venv/bin/python -m fin_hub.cli fabric-cutover-check \
--authority http://127.0.0.1:8765/exports/financial \
--projection http://127.0.0.1:8000/fabric/graph/summary
```
Result: expected exit `2`, `ready: false`.
| Measure | Fabric authority | State Hub read model |
| --- | ---: | ---: |
| API version | `railiance.fabric/v1alpha2` | `railiance.fabric/v1alpha2` |
| Nodes | 131 | 49 |
| Edges | 117 | 58 |
| Actors | 2 | 2 |
| Fabrics | 1 | 1 |
| Unresolved | 0 | 0 |
The content hashes differ. The authority now supplies immutable snapshot-set
revision and path provenance; the old State Hub import has null source revision,
path, and export time. This is a correct no-go result: the owner contract and
checker are ready, but STATE-WP-0079 must refresh from one selected authority
export and obtain a green comparison before switching callers or removing the
legacy tables. No production route was changed by FIN-WP-0003.