A capacity remediation report can turn remaining reserve into a small action label that operators can scan quickly.

Program

Play the script to choose reserve and inspect the capacity action.

reserve
capacity_shift_report.R
Replay: real traced execution (multi-file project)
reserve <- 8
action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"
line <- paste0('reserve=', reserve, ' ', action)
cat(line, "\n", sep = "")
reserve <- 4
action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"
line <- paste0('reserve=', reserve, ' ', action)
cat(line, "\n", sep = "")
reserve <- 16
action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"
line <- paste0('reserve=', reserve, ' ', action)
cat(line, "\n", sep = "")
  1. reserve ← 8

    1reserve <- 82action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"
    values this step8reserve
  2. action ← shift

    1reserve <- 82action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"3line <- paste0('reserve=', reserve, ' ', action)
    values this stepshiftaction8reserve
  3. line ← reserve=8 shift

    2action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"3line <- paste0('reserve=', reserve, ' ', action)4cat(line, "\n", sep = "")
    values this stepreserve=8 shiftline8reserveshiftaction
  4. cat(line, " ", sep = "")

    3line <- paste0('reserve=', reserve, ' ', action)4cat(line, "\n", sep = "")
    outputreserve=8 shift
    values this stepreserve=8 shiftline
  1. reserve ← 4

    1reserve <- 42action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"
    values this step4reserve
  2. action ← shed

    1reserve <- 42action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"3line <- paste0('reserve=', reserve, ' ', action)
    values this stepshedaction4reserve
  3. line ← reserve=4 shed

    2action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"3line <- paste0('reserve=', reserve, ' ', action)4cat(line, "\n", sep = "")
    values this stepreserve=4 shedline4reserveshedaction
  4. cat(line, " ", sep = "")

    3line <- paste0('reserve=', reserve, ' ', action)4cat(line, "\n", sep = "")
    outputreserve=4 shed
    values this stepreserve=4 shedline
  1. reserve ← 16

    1reserve <- 162action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"
    values this step16reserve
  2. action ← hold

    1reserve <- 162action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"3line <- paste0('reserve=', reserve, ' ', action)
    values this stepholdaction16reserve
  3. line ← reserve=16 hold

    2action <- if (reserve >= 15) "hold" else if (reserve >= 8) "shift" else "shed"3line <- paste0('reserve=', reserve, ' ', action)4cat(line, "\n", sep = "")
    values this stepreserve=16 holdline16reserveholdaction
  4. cat(line, " ", sep = "")

    3line <- paste0('reserve=', reserve, ' ', action)4cat(line, "\n", sep = "")
    outputreserve=16 hold
    values this stepreserve=16 holdline
reserve selector `reserve` is a scalar report signal that stays simple enough for deterministic variants.
remediation tiers Higher reserve can hold steady, medium reserve shifts load, and low reserve sheds optional work.
operator output The report line exposes both the numeric reserve and the action label.