Operational Remediation Reports
Capacity Shift Report
Pick an Action
A SQL capacity remediation report can convert a selected reserve into a hold, shift, or shed action.
Program
Play the query to choose reserve and inspect the capacity action row.
capacity_shift_report.sql
Replay: real traced execution (multi-file project)
CREATE TABLE capacity_policy (hold_min INTEGER, shift_min INTEGER);
INSERT INTO capacity_policy VALUES (12, 6);
WITH params(reserve) AS (VALUES (8)) SELECT 'capacity' AS scope, reserve, CASE WHEN reserve >= (SELECT hold_min FROM capacity_policy) THEN 'hold' WHEN reserve >= (SELECT shift_min FROM capacity_policy) THEN 'shift' ELSE 'shed' END AS action FROM params;
CREATE TABLE capacity_policy (hold_min INTEGER, shift_min INTEGER);
INSERT INTO capacity_policy VALUES (12, 6);
WITH params(reserve) AS (VALUES (4)) SELECT 'capacity' AS scope, reserve, CASE WHEN reserve >= (SELECT hold_min FROM capacity_policy) THEN 'hold' WHEN reserve >= (SELECT shift_min FROM capacity_policy) THEN 'shift' ELSE 'shed' END AS action FROM params;
CREATE TABLE capacity_policy (hold_min INTEGER, shift_min INTEGER);
INSERT INTO capacity_policy VALUES (12, 6);
WITH params(reserve) AS (VALUES (16)) SELECT 'capacity' AS scope, reserve, CASE WHEN reserve >= (SELECT hold_min FROM capacity_policy) THEN 'hold' WHEN reserve >= (SELECT shift_min FROM capacity_policy) THEN 'shift' ELSE 'shed' END AS action FROM params;
tables ← 1 row
1CREATE TABLE capacity_policy (hold_min INTEGER, shift_min INTEGER);2INSERT INTO capacity_policy VALUES (12, 6);values this step1 rowtablescapacity_policy ← 1 row
1CREATE TABLE capacity_policy (hold_min INTEGER, shift_min INTEGER);2INSERT INTO capacity_policy VALUES (12, 6);3WITH params(reserve) AS (VALUES (8)) SELECT 'capacity' AS scope, reserve, CASE WHEN reserve >= (SELECT hold_min FROM capacity_policy) THEN 'hold' WHEN reserve >= (SELECT shift_min FROM capacity_policy) THEN 'shift' ELSE 'shed' END AS action FROM params;values this step1 rowcapacity_policyresult ← 1 row
2INSERT INTO capacity_policy VALUES (12, 6);3WITH params(reserve) AS (VALUES (8)) SELECT 'capacity' AS scope, reserve, CASE WHEN reserve >= (SELECT hold_min FROM capacity_policy) THEN 'hold' WHEN reserve >= (SELECT shift_min FROM capacity_policy) THEN 'shift' ELSE 'shed' END AS action FROM params;values this step1 rowresult
tables ← 1 row
1CREATE TABLE capacity_policy (hold_min INTEGER, shift_min INTEGER);2INSERT INTO capacity_policy VALUES (12, 6);values this step1 rowtablescapacity_policy ← 1 row
1CREATE TABLE capacity_policy (hold_min INTEGER, shift_min INTEGER);2INSERT INTO capacity_policy VALUES (12, 6);3WITH params(reserve) AS (VALUES (4)) SELECT 'capacity' AS scope, reserve, CASE WHEN reserve >= (SELECT hold_min FROM capacity_policy) THEN 'hold' WHEN reserve >= (SELECT shift_min FROM capacity_policy) THEN 'shift' ELSE 'shed' END AS action FROM params;values this step1 rowcapacity_policyresult ← 1 row
2INSERT INTO capacity_policy VALUES (12, 6);3WITH params(reserve) AS (VALUES (4)) SELECT 'capacity' AS scope, reserve, CASE WHEN reserve >= (SELECT hold_min FROM capacity_policy) THEN 'hold' WHEN reserve >= (SELECT shift_min FROM capacity_policy) THEN 'shift' ELSE 'shed' END AS action FROM params;values this step1 rowresult
tables ← 1 row
1CREATE TABLE capacity_policy (hold_min INTEGER, shift_min INTEGER);2INSERT INTO capacity_policy VALUES (12, 6);values this step1 rowtablescapacity_policy ← 1 row
1CREATE TABLE capacity_policy (hold_min INTEGER, shift_min INTEGER);2INSERT INTO capacity_policy VALUES (12, 6);3WITH params(reserve) AS (VALUES (16)) SELECT 'capacity' AS scope, reserve, CASE WHEN reserve >= (SELECT hold_min FROM capacity_policy) THEN 'hold' WHEN reserve >= (SELECT shift_min FROM capacity_policy) THEN 'shift' ELSE 'shed' END AS action FROM params;values this step1 rowcapacity_policyresult ← 1 row
2INSERT INTO capacity_policy VALUES (12, 6);3WITH params(reserve) AS (VALUES (16)) SELECT 'capacity' AS scope, reserve, CASE WHEN reserve >= (SELECT hold_min FROM capacity_policy) THEN 'hold' WHEN reserve >= (SELECT shift_min FROM capacity_policy) THEN 'shift' ELSE 'shed' END AS action FROM params;values this step1 rowresult
reserve parameter
`reserve` is selected in the parameter CTE rather than read from live capacity data.
policy table
Fixed threshold rows keep the hold and shift boundaries visible.
action result
The result row keeps the reserve and remediation action together.