feat: validate financial fabric graph exports

This commit is contained in:
2026-05-24 00:57:14 +02:00
parent 3318d2c1b9
commit 3a47a92729
5 changed files with 612 additions and 2 deletions

View File

@@ -142,7 +142,7 @@ Result:
```task
id: RAIL-FAB-WP-0017-T03
status: todo
status: done
priority: high
state_hub_task_id: "7ff1c162-f778-4ab4-9e09-a512a54b2f68"
```
@@ -167,6 +167,25 @@ Done when:
- invalid missing-owner cases fail or are flagged according to the contract;
- existing snapshot/export code can emit the vNext model.
Result:
- Added `railiance_fabric/financial.py` with `v1alpha2` financial Fabric
graph materialization, validation, and merge helpers.
- Registry snapshot ingestion now materializes financial graphs before
validation while preserving the legacy `v1alpha1` schema path.
- Registry combined graph output can preserve and merge `v1alpha2` actors,
fabrics, nodes, edges, unresolved gaps, ownership, containment, accounting,
and utility metadata when all latest snapshots use the financial contract.
- Added canon mappings for vNext kinds and edge types such as `FabricActor`,
`Fabric`, `Subfabric`, `UtilityInterface`, `CostCenter`, `ProfitCenter`,
`contains`, `owned_by`, `operated_by`, `provides_utility_to`, and accounting
attribution edges.
- Added registry tests covering missing accepted-node ownership rejection,
financial graph snapshot ingestion, utility edge materialization, and
combined `v1alpha2` graph output.
- Verified with `python3 -m pytest tests/test_registry.py -q` and full
`python3 -m pytest`.
## T04 - Update The State Hub Export Contract
```task