--- id: RAILIANCE-WP-0017 type: workplan title: "Enforce resource-control consumption mode" domain: financials repo: railiance-platform status: finished owner: codex topic_slug: railiance created: "2026-08-14" updated: "2026-08-15" related: - RESOURCE-WP-0005 origin: residual origin_ref: RESOURCE-WP-0005 state_hub_workstream_id: "f33be601-51b5-4bcf-82bf-31f8dba59b9f" --- # RAILIANCE-WP-0017 — enforce consumption mode ## 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 id: RAILIANCE-WP-0017-T01 status: done priority: high state_hub_task_id: "1c872918-0872-4b2a-8596-89b106239e54" ``` 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. 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.