feat(consistency): implement ADR-001 consistency checking engine (CUST-WP-0008)
Adds state-hub/scripts/consistency_check.py with C-01 through C-12 checks: bidirectional file↔DB validation, --fix for auto-fixable issues, --all for all repos, --json output, exit codes 0/1/2. MCP tool: check_repo_consistency(repo_slug, fix=False) Makefile: check-consistency, fix-consistency, check-consistency-all, fix-consistency-all Auto-fixes applied across all repos: - C-09: activity-core-foundation + activity-core-triggers-ops repo_id → activity-core - C-04: railiance phase-0-operational-baseline status → completed - C-05: railiance phase-0 title synced from file - C-10/C-11: task status drifts resolved; state_hub_task_id injected into CUST-WP-0006 and CUST-WP-0007 task blocks Remaining orphans reported for human review: repo-integration-activity-core, infospace-s3-closeout, testdrive-jsui-publication, staged-promotion-lifecycle, three-phoenix-ha-cluster, current-env-safety-net. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -37,6 +37,7 @@ id: T01
|
||||
status: done
|
||||
priority: critical
|
||||
assignee: custodian
|
||||
state_hub_task_id: "1c21c419-30f8-4208-9a55-c2fd83d5005a"
|
||||
```
|
||||
|
||||
Operations:
|
||||
@@ -56,6 +57,7 @@ id: T02
|
||||
status: done
|
||||
priority: critical
|
||||
assignee: custodian
|
||||
state_hub_task_id: "fe4f5673-6053-404a-8930-4bc0c7d29fd9"
|
||||
```
|
||||
|
||||
Replace `domain: Mapped[str]` with `domain_id: Mapped[uuid.UUID]` FK +
|
||||
@@ -68,6 +70,7 @@ id: T03
|
||||
status: done
|
||||
priority: high
|
||||
assignee: custodian
|
||||
state_hub_task_id: "c1ccf2ae-6241-4281-a443-12953796c1ee"
|
||||
```
|
||||
|
||||
Add `repo_id: Mapped[uuid.UUID | None]` nullable FK to `managed_repos`.
|
||||
@@ -79,6 +82,7 @@ id: T04
|
||||
status: done
|
||||
priority: high
|
||||
assignee: custodian
|
||||
state_hub_task_id: "4997aa59-39c0-46d6-8c63-f13fffd8d6ea"
|
||||
```
|
||||
|
||||
- Filter by `domain_id` FK instead of domain string
|
||||
@@ -91,6 +95,7 @@ id: T05
|
||||
status: done
|
||||
priority: high
|
||||
assignee: custodian
|
||||
state_hub_task_id: "50fdb7ee-91c3-4a2b-be27-e171c144aec6"
|
||||
```
|
||||
|
||||
`register_extension_point` and `register_technical_debt` still accept
|
||||
@@ -103,6 +108,7 @@ id: T06
|
||||
status: done
|
||||
priority: medium
|
||||
assignee: custodian
|
||||
state_hub_task_id: "4b19bb95-7200-4fa4-a240-afe14012bafa"
|
||||
```
|
||||
|
||||
`extensions.md` and `techdept.md` load domain list from `/domains/` API and
|
||||
@@ -125,6 +131,7 @@ id: T07
|
||||
status: done
|
||||
priority: critical
|
||||
assignee: custodian
|
||||
state_hub_task_id: "b34b6bb0-3968-464f-b340-389c4758821e"
|
||||
```
|
||||
|
||||
Operations:
|
||||
@@ -141,6 +148,7 @@ id: T08
|
||||
status: done
|
||||
priority: critical
|
||||
assignee: custodian
|
||||
state_hub_task_id: "6f1fcf2c-824b-4e3e-884f-5e48b5dea51d"
|
||||
```
|
||||
|
||||
Add `repo_id: Mapped[uuid.UUID | None]` nullable FK to `managed_repos`.
|
||||
@@ -153,6 +161,7 @@ id: T09
|
||||
status: done
|
||||
priority: high
|
||||
assignee: custodian
|
||||
state_hub_task_id: "58a23afa-601a-40a5-b658-2603dc006d13"
|
||||
```
|
||||
|
||||
- `create_workstream` MCP tool: add optional `repo_id` / `repo_slug` param
|
||||
@@ -166,6 +175,7 @@ id: T10
|
||||
status: done
|
||||
priority: high
|
||||
assignee: custodian
|
||||
state_hub_task_id: "b0bf1338-b097-4130-ab18-95b4980cf551"
|
||||
```
|
||||
|
||||
Add `repo_slug` field to ADR-001 workplan frontmatter spec. Update existing
|
||||
@@ -178,6 +188,7 @@ id: T11
|
||||
status: done
|
||||
priority: high
|
||||
assignee: custodian
|
||||
state_hub_task_id: "2a49ad8e-8d6d-4082-8833-a79d9ace0b34"
|
||||
```
|
||||
|
||||
`dependencies.md` currently resolves domain via `topicMap[w.topic_id]?.domain_slug`.
|
||||
@@ -199,6 +210,7 @@ id: T12
|
||||
status: done
|
||||
priority: critical
|
||||
assignee: custodian
|
||||
state_hub_task_id: "1ab3b919-64f7-432a-b173-7b66b042955f"
|
||||
```
|
||||
|
||||
Operations:
|
||||
@@ -216,6 +228,7 @@ id: T13
|
||||
status: done
|
||||
priority: critical
|
||||
assignee: custodian
|
||||
state_hub_task_id: "015462de-2095-48ff-8b2e-3f53e41dfe32"
|
||||
```
|
||||
|
||||
New model `api/models/sbom_snapshot.py` with FK to managed_repos.
|
||||
@@ -227,6 +240,7 @@ id: T14
|
||||
status: done
|
||||
priority: critical
|
||||
assignee: custodian
|
||||
state_hub_task_id: "f0f1a2d0-f0a3-45a4-ad10-b86f32849a84"
|
||||
```
|
||||
|
||||
Add `snapshot_id` FK to `sbom_snapshots`. Update `repo` relationship to go
|
||||
@@ -239,6 +253,7 @@ id: T15
|
||||
status: done
|
||||
priority: high
|
||||
assignee: custodian
|
||||
state_hub_task_id: "2a90b3f7-4938-4235-8ab6-1f9ad9cb06a7"
|
||||
```
|
||||
|
||||
- Ingest creates/finds a snapshot record, then creates entries under it
|
||||
@@ -252,6 +267,7 @@ id: T16
|
||||
status: done
|
||||
priority: high
|
||||
assignee: custodian
|
||||
state_hub_task_id: "081ef72e-e19c-4938-b6de-c0c17b98d99a"
|
||||
```
|
||||
|
||||
`ingest_sbom_tool` returns `snapshot_id` in result. New MCP resource:
|
||||
@@ -264,6 +280,7 @@ id: T17
|
||||
status: done
|
||||
priority: medium
|
||||
assignee: custodian
|
||||
state_hub_task_id: "5626cd89-ff77-4f45-90e6-2059673e4247"
|
||||
```
|
||||
|
||||
`sbom.md` "By Repo" section adds a snapshot history row showing ingest dates
|
||||
|
||||
Reference in New Issue
Block a user