34 lines
1.1 KiB
Markdown
34 lines
1.1 KiB
Markdown
---
|
|
id: RAIL-BS-WP-0014
|
|
type: workplan
|
|
title: "Keep node remaining CPU honest for State Hub surge and pending demand"
|
|
domain: financials
|
|
repo: railiance-cluster
|
|
status: proposed
|
|
owner: codex
|
|
topic_slug: railiance
|
|
origin: residual
|
|
origin_ref: STATE-WP-0091
|
|
created: "2026-09-14"
|
|
updated: "2026-09-14"
|
|
related: [RCLUSTER-WP-0014, STATE-WP-0091, CUST-WP-0071]
|
|
---
|
|
|
|
Residual from STATE-WP-0091. State Hub now refuses promotion when remaining
|
|
CPU cannot cover its 100m API surge, and when unrelated pending pods would
|
|
eat the 5m sliver above 105m. Cluster observation must keep publishing
|
|
allocatable, allocated, **and pending-unrelated** demand. 105m remaining is
|
|
not capacity admission for factory or other zero-request workloads.
|
|
|
|
## Include pending pods in capacity observations
|
|
|
|
```task
|
|
id: RAIL-BS-WP-0014-T01
|
|
status: todo
|
|
priority: high
|
|
```
|
|
|
|
Extend `tools/observe_cluster_resources.py` / `make cluster-observe` so the
|
|
published observation names pending unscheduled pods and their requests.
|
|
State Hub's preflight already consumes that shape. Do not treat residual
|
|
millicores as a scheduling guarantee.
|