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
This commit is contained in:
tegwick 2026-09-04 01:50:34 +02:00
parent c2cfe86d88
commit 82becd0fda
12 changed files with 408 additions and 83 deletions

View file

@ -0,0 +1,135 @@
---
id: FLUID-WP-0003
type: workplan
title: "Deterministic data plane (Blueprint Phase A)"
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: 2
depends_on:
- FLUID-WP-0002
---
# FLUID-WP-0003 - Deterministic data plane
The production request path. No AI, no analysis, no dependency on the control
plane. Blueprint §5 and §34: the gateway must keep serving when everything
above it is dead.
## T01 - Edge gateway
```task
id: FLUID-WP-0003-T01
status: todo
priority: high
```
Transport termination, correlation IDs, coarse rate limiting, request size and
shape limits. Blueprint §5.1 — the gateway must not invent interface semantics.
## T02 - Revision resolver
```task
id: FLUID-WP-0003-T02
status: todo
priority: high
```
The §5.2 precedence chain: explicit revision, bound client contract, experiment
assignment, stable default. Every resolution records its reason; resolution
without an auditable reason is a defect.
## T03 - Revision router
```task
id: FLUID-WP-0003-T03
status: todo
priority: high
```
Map a resolved revision to an adapter upstream. Reject unpublished, failed,
ineligible and retired revisions (§5.3). Allocation rules are deterministic and
read from routing policy the router does not author.
## T04 - Contract validator
```task
id: FLUID-WP-0003-T04
status: todo
priority: high
```
OpenAPI 3.1 request and response validation (§5.4). The contract digest is part
of the revision artifact and is content-addressed.
## T05 - Backend connector layer
```task
id: FLUID-WP-0003-T05
status: todo
priority: high
```
Timeout, retry, circuit breaker, error mapping, tenant propagation (§5.6). The
adapter is an upstream process reached over HTTP — this is where the
language-agnostic promise is kept.
## T06 - Response policy
```task
id: FLUID-WP-0003-T06
status: todo
priority: medium
```
Structured errors carrying a FLUID correlation reference, leaking no backend
detail (§5.7).
## T07 - Telemetry emitter
```task
id: FLUID-WP-0003-T07
status: todo
priority: high
```
Fire-and-forget emission. Blueprint §34.2 is a hard invariant: telemetry
backpressure must never block or slow a request. Test it under a stalled sink.
## T08 - Evidence store
```task
id: FLUID-WP-0003-T08
status: todo
priority: high
```
Append-only event storage, SQLite for development and Postgres-ready. Mutable
summaries exist only as derived views (§26).
## T09 - Intent store
```task
id: FLUID-WP-0003-T09
status: todo
priority: high
```
Bind every revision to an `InterfaceEvolutionIntent` version (§27), so audit can
later answer whether a change was valid under the intent that existed when it
was made.
## T10 - Operator CLI, first commands
```task
id: FLUID-WP-0003-T10
status: todo
priority: medium
```
`fluid revision create|publish|list`, `fluid intent show`, `fluid events tail`.