Add control APIs, control-plane binary, and close the CLI gate bypass
Some checks failed
ci / build (push) Has been cancelled
Some checks failed
ci / build (push) Has been cancelled
Completes FLUID-WP-0004. The Revision and Intent APIs (Blueprint 44.1 and 44.5) are served by fluid-control, which is deliberately off the request path and must never be reachable by interface consumers: it is the mechanism that evolves the interface in response to their behaviour. Intent amendment is a proposal, never an edit. Rewriting a recorded version returns 409, because changing what a version says would change what already-published revisions were governed by. A rejected candidate comes back as 422 with its full stage report rather than as a server fault. Rejection is a normal outcome (invariant 14) and the reasons are the evidence a later hypothesis needs. Also closes a real hole this workplan opened: `fluid revision publish` previously wrote straight into the evidence store, which was a way around the deterministic policy gate for anyone with shell access. It now runs the same pipeline the control plane does and requires a signing key. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014KmVxhJ35tCo7rE7UnLwWu Assistant: claude-code Assistant-Model: opus Assistant-Process: 1116572@bnt-lap001 Assistant-Session: 8ba9bb93-a72a-4883-b189-2499cce5c400
This commit is contained in:
parent
a2d561eae5
commit
03ff7a8ad7
8 changed files with 930 additions and 35 deletions
|
|
@ -4,7 +4,7 @@ type: workplan
|
|||
title: "Revision publication pipeline and control APIs"
|
||||
domain: infotech
|
||||
repo: fluid-core
|
||||
status: active
|
||||
status: done
|
||||
owner: worsch
|
||||
topic_slug: fluid-core
|
||||
created: "2026-09-04"
|
||||
|
|
@ -26,7 +26,7 @@ bypass.
|
|||
|
||||
```task
|
||||
id: FLUID-WP-0004-T01
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "74bf29c7-b8a6-5a18-bfc7-94641d12564b"
|
||||
```
|
||||
|
|
@ -38,7 +38,7 @@ CHECK, SIGN, PUBLISH, ROUTE. Each stage emits an audit event.
|
|||
|
||||
```task
|
||||
id: FLUID-WP-0004-T02
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "9449aa0b-3c73-56d5-8768-df94b26f0282"
|
||||
```
|
||||
|
|
@ -51,7 +51,7 @@ tested.
|
|||
|
||||
```task
|
||||
id: FLUID-WP-0004-T03
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "ba302369-3243-57ac-a34a-9a0a29002ac5"
|
||||
```
|
||||
|
|
@ -62,7 +62,7 @@ Blueprint §44.1: create, verify, publish, set state, query lineage.
|
|||
|
||||
```task
|
||||
id: FLUID-WP-0004-T04
|
||||
status: todo
|
||||
status: done
|
||||
priority: medium
|
||||
state_hub_task_id: "27c597da-4f58-5a0d-b70e-8ba0749d9002"
|
||||
```
|
||||
|
|
@ -75,7 +75,7 @@ governed — the API records a proposal, it does not enact one.
|
|||
|
||||
```task
|
||||
id: FLUID-WP-0004-T05
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "b2f96c6c-2c37-5892-bafd-ab9eb2c3f8c2"
|
||||
```
|
||||
|
|
@ -90,7 +90,7 @@ policy.
|
|||
|
||||
```task
|
||||
id: FLUID-WP-0004-T06
|
||||
status: todo
|
||||
status: done
|
||||
priority: medium
|
||||
state_hub_task_id: "70cc234b-9570-5c51-8620-1a7d32b9a25c"
|
||||
```
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue