feat: collect accountability root evidence

This commit is contained in:
2026-05-24 03:11:47 +02:00
parent 43d3866b18
commit 999f90dcbe
7 changed files with 808 additions and 1 deletions

View File

@@ -86,7 +86,7 @@ Result:
```task
id: RAIL-FAB-WP-0018-T02
status: todo
status: done
priority: high
state_hub_task_id: "09246f06-10db-4c6c-9cb3-f2808fdbaa38"
```
@@ -110,6 +110,27 @@ Done when:
state;
- adapters can run against the current local Railiance workspace.
Result:
- Added `railiance_fabric/accountability_roots.py` to load and validate the
accountability root manifest and collect raw evidence from registered roots.
- Added `schemas/accountability-root-evidence.schema.yaml` for
`AccountabilityRootEvidenceRun` payloads.
- Added `railiance-fabric discover-roots` with `--manifest`,
`--max-items-per-root`, and opt-in `--include-remote`.
- Implemented initial adapters for registry manifests, repository checkouts,
host paths, deployment/infrastructure/service/endpoint file roots, State Hub
metadata roots, Gitea metadata roots, and metadata-only backup/secret roots.
- Raw evidence carries source, provenance, fingerprints, durable evidence
state, and `live_telemetry: false` without promoting candidates into accepted
graph state.
- Added adapter coverage in `tests/test_accountability_root_adapters.py` and
documented the evidence command in the manifest/operator docs.
- Verified with
`python3 -m pytest tests/test_accountability_roots.py tests/test_accountability_root_adapters.py -q`,
`python3 -m railiance_fabric.cli discover-roots --max-items-per-root 5`,
and full `python3 -m pytest`.
## T03 - Build Evidence Store And Identity Normalization
```task