reef-storage/workplans/REEF-STORAGE-WP-0002-fill-after-purchase.md
tegwick 9c6b025226 chore: finish bootstrap workplan and wait on restore for active
WP-0001 tasks were already done. WP-0002 waits on RESOURCE-WP-0002-T05
before lifecycle_state active. Provider S3 is out of ADR-0008.
2026-08-15 20:52:04 +02:00

58 lines
1.6 KiB
Markdown

---
id: REEF-STORAGE-WP-0002
type: workplan
title: "Fill Scaleway attributes after purchase"
domain: financials
repo: reef-storage
status: active
owner: grok
topic_slug: railiance
created: "2026-08-14"
updated: "2026-08-15"
related:
- RESOURCE-WP-0002
- ADR-0008
---
# REEF-STORAGE-WP-0002 — fill after purchase
Purchase happened 2026-08-14. Follow `docs/post-purchase-seed.md`.
## T01 — Write live non-secret attributes
```task
id: REEF-STORAGE-WP-0002-T01
status: done
priority: high
```
Fill `substrate/object-stores/platform-audit-storage.yaml` endpoint,
bucket, prefix, project ref, versioning, lifecycle. Promote topology
members. No secrets.
Done 2026-08-14: bucket `railiance-platform-pg-backup` in `nl-ams` is
live (versioning on, 30-day current and noncurrent expiration, owner-only
ACL). Attributes, topology member, and declaration `current_members`
written. Reef `lifecycle_state` stays `planned` until RESOURCE-WP-0002-T05.
Cost backstop is a founder email billing alert. Scaleway has no
euro hard-stop; that gap is accepted.
Scaleway S3 is a provider-native API. ADR-0008 does not apply a
`public` grant to it. Do not set `exposure.posture: public` on this
reef.
## T02 — Wait for restore before lifecycle_state active
```task
id: REEF-STORAGE-WP-0002-T02
status: wait
priority: medium
```
Depends on `RESOURCE-WP-0002-T05` (first restore). This repo then sets
`lifecycle_state: active`. Secrets stay in `railiance-platform`. Backup
schedule stays in `rapp-postgres`.
**Done when:** declaration `lifecycle_state` matches the first proven
restore, or this task is cancelled if resource-control records that
decision instead.