2026-08-14 13:15:30 +02:00
|
|
|
---
|
2026-08-25 22:58:35 +02:00
|
|
|
id: RPF-WP-0012
|
2026-08-14 13:15:30 +02:00
|
|
|
type: workplan
|
|
|
|
|
title: "Enforce resource-control consumption mode"
|
|
|
|
|
domain: financials
|
|
|
|
|
repo: railiance-platform
|
2026-08-15 14:56:02 +02:00
|
|
|
status: finished
|
2026-08-14 13:15:30 +02:00
|
|
|
owner: codex
|
|
|
|
|
topic_slug: railiance
|
|
|
|
|
created: "2026-08-14"
|
2026-08-15 14:56:02 +02:00
|
|
|
updated: "2026-08-15"
|
2026-08-14 13:15:30 +02:00
|
|
|
related:
|
|
|
|
|
- RESOURCE-WP-0005
|
|
|
|
|
origin: residual
|
|
|
|
|
origin_ref: RESOURCE-WP-0005
|
2026-08-25 22:58:35 +02:00
|
|
|
state_hub_workstream_id: "519e512d-bef0-54ca-85f0-6912a5219ed5"
|
2026-08-14 13:15:30 +02:00
|
|
|
---
|
|
|
|
|
|
2026-08-25 22:58:35 +02:00
|
|
|
# RPF-WP-0012 — enforce consumption mode
|
2026-08-14 13:15:30 +02:00
|
|
|
|
|
|
|
|
## Goal
|
|
|
|
|
|
|
|
|
|
Consume the `open` / `restricted` signal published by
|
|
|
|
|
`resource-control` and enforce it on new orders and elastic usage.
|
|
|
|
|
`resource-control` does not throttle the cluster.
|
|
|
|
|
|
|
|
|
|
Origin: `RESOURCE-WP-0005-T07`. Terms:
|
|
|
|
|
`resource-control/docs/TermsOfResourceProcurement.md` § 11.
|
|
|
|
|
Runbook: `resource-control/docs/resource-procurement-facility.md`.
|
|
|
|
|
|
|
|
|
|
## Boundaries
|
|
|
|
|
|
|
|
|
|
- Restricted monthly new-consumption is €50 transfer price minus that
|
|
|
|
|
month's interest. At the default €1 000 overdue balance that is
|
|
|
|
|
€45.83 transfer price / €38.19 delivered cost.
|
|
|
|
|
- Already-committed provider contracts are flagged to human financial
|
|
|
|
|
authority, not cancelled (OQ-2).
|
|
|
|
|
- Safety paths (backup, identity, ingress needed to avoid data loss)
|
|
|
|
|
may continue; overage is an exception line, not a hidden charge.
|
|
|
|
|
|
|
|
|
|
## T01 — Subscribe to the consumption-mode signal
|
|
|
|
|
|
|
|
|
|
```task
|
2026-08-25 22:58:35 +02:00
|
|
|
id: RPF-WP-0012-T01
|
2026-08-15 14:56:02 +02:00
|
|
|
status: done
|
2026-08-14 13:15:30 +02:00
|
|
|
priority: high
|
2026-08-25 22:58:35 +02:00
|
|
|
state_hub_task_id: "c758776c-bd2a-5d38-a9b7-94db66fc0568"
|
2026-08-14 13:15:30 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Define how platform procurement and admission read the latest
|
|
|
|
|
per-entity consumption mode and remaining transfer-price allowance for
|
|
|
|
|
the current period.
|
|
|
|
|
|
|
|
|
|
Done when a restricted entity cannot place a new order that would
|
|
|
|
|
exceed the published allowance, and an `open` entity is unchanged.
|
2026-08-15 14:56:02 +02:00
|
|
|
|
|
|
|
|
Delivered 2026-08-15: `scripts/consumption_mode.py`,
|
|
|
|
|
`docs/consumption-mode-enforcement.md`, `make consumption-preflight`.
|
|
|
|
|
Restricted + estimate above allowance exits 2. Open and missing-signal
|
|
|
|
|
admit. Safety/committed paths admit with an exception line. `apps-pg-deploy`
|
|
|
|
|
runs the gate when `CONSUMING_ENTITY` is set.
|
|
|
|
|
|
|
|
|
|
## Outcome
|
|
|
|
|
|
|
|
|
|
T01 done. Workplan finished. resource-control still owns the signal;
|
|
|
|
|
this repo only enforces it.
|