feat: allow provider-delegated reefs with no rail

Object-storage reefs omit primary_rail and hosted_rails. Scaleway
operates S3; reef-storage only names the boundary. Finish
RMASTER-WP-0022.
This commit is contained in:
codex 2026-08-14 15:53:30 +02:00
parent 82b7b7295d
commit 654bbe891b
8 changed files with 67 additions and 32 deletions

View file

@ -4,7 +4,7 @@ type: workplan
title: "Establish reef-storage for Scaleway object storage"
domain: financials
repo: railiance-master
status: proposed
status: finished
owner: grok
topic_slug: railiance
created: "2026-08-14"
@ -76,7 +76,7 @@ Non-secret attributes live under e.g.
```task
id: RMASTER-WP-0022-T01
status: todo
status: done
priority: high
state_hub_task_id: "c222e439-795d-45bb-ba81-b94b2a571a1c"
```
@ -89,11 +89,15 @@ Document `substrate_kind: object-storage`. Keep `reef-railiance` valid.
Done when a planned `reef-storage` declaration validates and
`reef-railiance` still validates.
Completed 2026-08-14: `primary_rail` / `hosted_rails` optional; empty
`current_members` allowed; substrate model documents provider-delegated
reefs with no rail. Confirmed: no rail — Scaleway operates S3.
## T02 — Bootstrap the reef-storage repo
```task
id: RMASTER-WP-0022-T02
status: todo
status: done
priority: high
state_hub_task_id: "61617b38-27b5-4c44-be8a-244a2476f1eb"
```
@ -107,11 +111,14 @@ Done when the repo exists, declares `lifecycle_state: planned`, and
resource-control can name `reef:storage/…` paths that will be filled after
purchase.
Completed 2026-08-14: operator provided the repo; declaration, INTENT,
SCOPE, and planned attribute path committed.
## T03 — Attribute file contract for object stores
```task
id: RMASTER-WP-0022-T03
status: todo
status: done
priority: medium
state_hub_task_id: "6ea318c4-33e5-4177-9f87-433670636304"
```
@ -123,3 +130,7 @@ paste.
Done when a schema or documented example exists and WP-0002 T03 can cite
it as the destination of non-secret attributes after buy.
Completed 2026-08-14:
`reef-storage/schemas/object-store-attributes.schema.json` and planned
`substrate/object-stores/platform-audit-storage.yaml`.