Calculate capacity reserve and label whether the reserve is stable, watched, or tight.

reserve report Fixed capacity and demand values can produce a replay-friendly reserve label before any scheduler acts on it.

Capacity Reserve Reliability Report

demand
capacity_reserve.js
Replay: real traced execution (multi-file project)
const demand = 72;
const capacity = 100;
const reserve = capacity - demand;
let reserveStatus = "tight";

if (reserve >= 20) {
    reserveStatus = "stable";
} else if (reserve >= 10) {
    reserveStatus = "watch";
}

console.log(`demand=${demand} reserve=${reserve} status=${reserveStatus}`);
const demand = 88;
const capacity = 100;
const reserve = capacity - demand;
let reserveStatus = "tight";

if (reserve >= 20) {
    reserveStatus = "stable";
} else if (reserve >= 10) {
    reserveStatus = "watch";
}

console.log(`demand=${demand} reserve=${reserve} status=${reserveStatus}`);
const demand = 95;
const capacity = 100;
const reserve = capacity - demand;
let reserveStatus = "tight";

if (reserve >= 20) {
    reserveStatus = "stable";
} else if (reserve >= 10) {
    reserveStatus = "watch";
}

console.log(`demand=${demand} reserve=${reserve} status=${reserveStatus}`);
  1. demand ← 72, capacity ← 100, reserve ← 28, reserveStatus ← tight

    1const demand→ 72 = 72;  //@demand=88, 952const capacity→ 100 = 100;3const reserve→ 28 = capacity→ 100 - demand72;4let reserveStatus→ tight = "tight";
  2. if (reserve >= 20)

    3const reserve = capacity - demand;4let reserveStatus = "tight";56if (reserve28 >= 20) {7    reserveStatus = "stable";8} else if (reserve >= 10) {
  3. console.log(`demand=${demand} reserve=${reserve} status=${reserveStatu…

    9    reserveStatus = "watch";10}1112console.log(`demand=${demand72} reserve=${reserve28} status=${reserveStatusstable}`);
    outputdemand=72 reserve=28 status=stable
  1. demand ← 88, capacity ← 100, reserve ← 12, reserveStatus ← tight

    1const demand→ 88 = 88;2const capacity→ 100 = 100;3const reserve→ 12 = capacity→ 100 - demand88;4let reserveStatus→ tight = "tight";
  2. if (reserve >= 10)

    7    reserveStatus = "stable";8} else if (reserve12 >= 10) {9    reserveStatus = "watch";10}
  3. console.log(`demand=${demand} reserve=${reserve} status=${reserveStatu…

    9    reserveStatus = "watch";10}1112console.log(`demand=${demand88} reserve=${reserve12} status=${reserveStatuswatch}`);
    outputdemand=88 reserve=12 status=watch
  1. demand ← 95, capacity ← 100, reserve ← 5, reserveStatus ← tight

    1const demand→ 95 = 95;2const capacity→ 100 = 100;3const reserve→ 5 = capacity→ 100 - demand95;4let reserveStatus→ tight = "tight";56if (reserve >= 20) {7    reserveStatus = "stable";8} else if (reserve >= 10) {9    reserveStatus = "watch";10}1112console.log(`demand=${demand95} reserve=${reserve5} status=${reserveStatustight}`);
    outputdemand=95 reserve=5 status=tight