fluid-core/workplans/FLUID-WP-0004-publication-and-control-apis.md
tegwick 82becd0fda Register with State Hub and align workplan IDs to FLUID-WP prefix
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
2026-09-04 01:50:34 +02:00

93 lines
2.1 KiB
Markdown

---
id: FLUID-WP-0004
type: workplan
title: "Revision publication pipeline and control APIs"
domain: infotech
repo: fluid-core
status: active
owner: worsch
topic_slug: fluid-core
created: "2026-09-04"
updated: "2026-09-04"
planning_priority: high
planning_order: 3
depends_on:
- FLUID-WP-0003
---
# FLUID-WP-0004 - Publication and control APIs
Nothing reaches the router unsigned. The deterministic policy gate is built now,
before anything can generate candidates, so a future Daimon has nowhere to
bypass.
## T01 - Publication pipeline
```task
id: FLUID-WP-0004-T01
status: todo
priority: high
```
Blueprint §35: SOURCE, BUILD, CONTRACT CHECK, TEST, SECURITY CHECK, POLICY
CHECK, SIGN, PUBLISH, ROUTE. Each stage emits an audit event.
## T02 - Descriptor signing and verification
```task
id: FLUID-WP-0004-T02
status: todo
priority: high
```
The router accepts only signed or otherwise authenticated published revision
descriptors (§35). An unsigned descriptor must be refused, and that refusal
tested.
## T03 - Revision API
```task
id: FLUID-WP-0004-T03
status: todo
priority: high
```
Blueprint §44.1: create, verify, publish, set state, query lineage.
## T04 - Intent API
```task
id: FLUID-WP-0004-T04
status: todo
priority: medium
```
Blueprint §44.5: read active intent, read historical intent, validate a
candidate against intent, propose an amendment. Amendment stays separately
governed — the API records a proposal, it does not enact one.
## T05 - Deterministic policy gate
```task
id: FLUID-WP-0004-T05
status: todo
priority: high
```
Blueprint §28.2. Allowed adaptation class, permitted operational mode,
complexity threshold, security status, test status, compatibility status,
traffic-allocation maximum, budget, approval requirement. This gate is the
architectural boundary that stops agentic reasoning from becoming security
policy.
## T06 - Trust model in the type system
```task
id: FLUID-WP-0004-T06
status: todo
priority: medium
```
Blueprint §47 made mechanical: generated artifacts are an untrusted candidate
type until verification produces a signed revision. The compiler should make the
unsafe path awkward to write.