# Month-1 Arithmetic Verdict — Daily State System (Days 0–30)

Generated by `substrate/daily_state/engine/report.py` (T11). A pure consumer of the
chain outputs (ledger + state CSVs + day files + recipe book). No wall-clock
timestamps (AC-1.9). Where the arithmetic contradicts canon, the contradiction
is **reported, not silently bent** (AC-5.1).

## 1. Opening food stock vs the “~12 days” claim (AC-4.3, non-circular)

- Computed opening `food_stock_kcal` = **57,260,836 kcal**, from the
  recipe `food_stock` section (Σ inventory mass × cited density) — never the
  12-day figure as an input.
- Day-0 population need (2,435 people, workload=light) = **4,872,400 kcal/day**.
- Computed days of food at normal rations = opening / need = **11.75 days**.
- `weeks_layer_inputs.md` §3.1 claim = **~12 days**; computed/claim ratio = **0.98**.

**Verdict:** PASS — the independently-computed opening stock lands within 2% of the canon ~12-day design target. The headline non-circular check holds.

## 2. Day-by-day depletion vs the §4.1.1 windows

`food_stock_person_days` = food_stock_kcal / kcal_need_total (days of food if everyone ate full physiological need that day).

| Day | Window | food_stock_kcal | person-days | ration modal | hunting kg | diesel L |
|----:|--------|----------------:|------------:|--------------|-----------:|---------:|
| 0 | Day 0 | 57,260,836 | 11.75 | normal | 0 | 25,500 |
| 1 | Days 1–6 | 51,211,739 | 10.51 | normal | 120 | 21,742 |
| 2 | Days 1–6 | 45,117,527 | 9.26 | normal | 140 | 18,307 |
| 3 | Days 1–6 | 40,003,750 | 8.21 | normal | 150 | 16,687 |
| 4 | Days 1–6 | 34,909,972 | 7.16 | normal | 160 | 15,067 |
| 5 | Days 1–6 | 29,856,194 | 6.13 | normal | 180 | 13,447 |
| 6 | Days 1–6 | 24,842,416 | 5.10 | normal | 200 | 11,827 |
| 7 | Days 7–9 | 21,803,461 | 4.47 | slim | 240 | 10,207 |
| 8 | Days 7–9 | 19,075,194 | 3.91 | slim | 260 | 8,587 |
| 9 | Days 7–9 | 16,928,305 | 3.47 | slim | 280 | 6,967 |
| 10 | Days 10–11 | 14,821,416 | 3.04 | bridge_50 | 300 | 6,643 |
| 11 | Days 10–11 | 13,115,372 | 3.16 | bridge_50 | 300 | 6,319 |
| 12 | Days 12–23 | 13,082,594 | 3.15 | micro | 280 | 5,995 |
| 13 | Days 12–23 | 12,669,817 | 3.05 | micro | 90 | 5,671 |
| 14 | Days 12–23 | 12,237,261 | 2.95 | micro | 80 | 5,347 |
| 15 | Days 12–23 | 11,784,706 | 2.84 | micro | 70 | 5,023 |
| 16 | Days 12–23 | 11,332,928 | 2.73 | micro | 70 | 4,699 |
| 17 | Days 12–23 | 10,901,150 | 2.63 | micro | 80 | 4,375 |
| 18 | Days 12–23 | 10,489,372 | 2.53 | micro | 90 | 4,051 |
| 19 | Days 12–23 | 10,097,817 | 2.44 | micro | 100 | 3,727 |
| 20 | Days 12–23 | 10,066,261 | 2.43 | micro | 280 | 3,403 |
| 21 | Days 12–23 | 10,066,261 | 2.43 | micro | 320 | 3,079 |
| 22 | Days 12–23 | 10,066,261 | 2.43 | micro | 350 | 2,755 |
| 23 | Days 12–23 | 10,066,261 | 2.43 | micro | 380 | 2,431 |
| 24 | Day 24+ | 9,763,392 | 2.36 | refeed_step | 1000 | 2,107 |
| 25 | Day 24+ | 8,451,564 | 2.04 | refeed_step | 380 | 1,783 |
| 26 | Day 24+ | 7,140,650 | 1.72 | refeed_step | 380 | 1,459 |
| 27 | Day 24+ | 5,599,633 | 1.35 | refeed_step | 380 | 1,135 |
| 28 | Day 24+ | 4,098,616 | 0.99 | refeed_step | 400 | 811 |
| 29 | Day 24+ | 2,597,600 | 0.63 | refeed_step | 400 | 487 |
| 30 | Day 24+ | 1,896,583 | 0.46 | refeed_step | 800 | 163 |

- **Day 12 (D0):** food_stock_person_days = **3.15** (stock 13,082,594 kcal) — **NOT ≈ 0**.
- **Day 30:** food_stock_person_days = **0.46** (stock 1,896,583 kcal), still falling.

**Finding (reported, not bent):** AC-5.1's loose target “stock person-days ≈ 0 around Day 12” does **not** hold, and this is *correct* against canon's own arithmetic. `weeks_layer_inputs.md` §3.1 states the 12-day stock “stretches to 24 days at 50%, 60 days at 20%”; the ration curve (slim day 7, bridge day 10, micro day 12) plus the same-day hunting credit conserve the stores, so they plateau ~10–13M kcal through the micro window (days 12–23) rather than emptying. The day-12 “bulk food service stops” is a **distributional/policy** halt (reserve remaining stores for the micro-fuel lists + protect seed grain), not physical exhaustion. The stores instead draw down hardest during the day-24+ refeed ramp (whole colony at ~0.50 of need from stores while hunting covers only part), reaching ~0.5 person-days by day 30 — right as the first Portuguese cargo (Day 30–35) and the peak-hunting ramp (§6.3) take over.

## 3. Death placement and risk bands (AC-5.1)

- Total deaths in horizon: **6** (famine-window Days 12–23: **4**; refeed Days 24–27: **2**).
- Canon targets: 3–5 famine deaths Days 12–23 (incl. the first medication death per §4.3); 2–3 refeed deaths Days 24–27.

| Day | Decedent | Band (prev day) | Override | Cause (clinical) |
|----:|----------|-----------------|:--------:|------------------|
| 14 | Liu Pingcai | critical | no | diabetic ketoacidosis — colony pooled insulin (medication.insulin_pool_dose_days |
| 16 | Ceng Fuer | critical | no | cardiac arrest in sleep — starvation cardiomyopathy / electrolyte derangement in |
| 19 | Zhou Weifang | critical | no | fatal cardiac arrhythmia under starvation stress — decompensation of pre-existin |
| 22 | Chen Xiugui | critical | no | starvation cardiac failure — terminal cachexia and bradycardia in a frail 73-yea |
| 25 | Eldane Jelil | critical | no | refeeding syndrome — sudden hypophosphataemia/hypokalaemia → fatal cardiac arrhy |
| 26 | Enkhtsogt Büüvei | critical | no | refeeding syndrome — cardiac collapse 48–72 h after the ration jump; electrolyte |

- **All dictated deaths land in the computed `critical` band** on the consulted (previous) day — none required an override (check 19 clean).

**Finding (band saturation):** by day 12 the *entire* alive colony is in the `critical` band (deficit-ratio path: cumulative deficit ≥ 3.0× daily need). The risk bands therefore confirm a colony-wide crisis but do **not** by themselves single out the decedents — decedent selection is the dictation layer's job (governing principle: physiology constrains plausibility, it does not compute who dies). All six decedents are tier-3; the famine deaths skew to the canon-vulnerable cohorts (insulin-dependent T1 diabetic, two frail elders in the 73–79 bracket, one chronic-cardiovascular adult), the refeed deaths to the worst-emaciated general-micro adults with `refeed_flag` set.

## 4. Contradictions and findings (reported, never bent)

1. **Diesel cannot sustain the mandatory safety floor for 30 days.** The chem_vent + bio_bsl2 floor is 1,944 L/day (WEEKS §3.9.5, declared “indefinite”); 25,500 L ÷ 1,944 = **13.1 days**. With no diesel resupply in the horizon, a clean 30-day build is only possible by **decommissioning the safety labs** — the build dictates BSL-2 decommission on day 3 (§3.9.5 ‘Biology decommissioning path’) and chemistry wind-down on day 10, plus a hospital cut to 4 h/day. Diesel ends the month at 163 L. This is a genuine over-constraint: the canon’s “indefinite 1,944 L/day floor” is incompatible with 25,500 L of starting diesel.

2. **Cold chain vs fuel is over-constrained.** Holding the cafeteria cold chain through the day-12 food window (§3.9.4) would cost ~1,296 L/day × 12 ≈ 15,600 L — which, with the safety floor, blows the diesel budget. The build cuts the cafeteria generator on day 1 yet keeps `cold_chain = intact`, because the model treats cold-chain continuity as an **independent policy switch** (chain.py docstring), not mechanically coupled to cafeteria fuel. So the meat stays available despite no cafeteria power. A future model could couple them (cafeteria off → cold_chain broken → perishables spoil → mass-cook windfall per §3.9.4); that coupling is **not** modelled here.

3. **Roster sampling artifact — no frail elder has heart disease.** Canon §4.3 names “frail elders with pre-existing cardiac issues” as the archetypal early casualties, but in the generated roster every `chronic_cardiovascular` person is a woman aged 18–44 (sampled), and all three age≥73 persons are `healthy`. The two elder deaths therefore rest on the **age≥65 vulnerability flag** rather than an explicit cardiac `health_status`, and the cardiac death (day 19) is a 44-year-old. The casualties still match canon’s *pattern*; the mismatch is in the roster’s health sampling, flagged for a future roster pass.

4. **Refeed-flag window vs death dates.** The computed refeed window is 3 days (`physiology.refeed_window_days`), opened by the day-24 jump (micro ~0.11 → refeed 0.50, > the 0.35 threshold). Both refeed deaths (days 25–26) land inside the flagged window; canon’s “first 3–7 days” would also admit a day-27 death, but only two are dictated (lower bound of the 2–3 band).

5. **Food near-exhaustion at day 30.** Feeding 2,435 people at ~0.50 of need from stores during the refeed ramp (days 24–30), with hunting covering only part, draws the stores down to ~0.5 person-days by day 30. Inside the horizon this is not negative, but the trend implies exhaustion within days — consistent with the canon hand-off to Portuguese cargo (Day 30–35) and the peak-hunting ramp, both **outside** this build’s horizon.

## 5. Consolidated pick list (AC-5.2 — for Stephen's review)

Every authored numeric pick within (or, with override, outside) a recipe band. All picks below are in-band (no overrides).

| Day | Pick key | Value | Effective band | Reason (abbreviated) |
|----:|----------|------:|----------------|----------------------|
| 1 | hunting_yield_kg | 120 | [100, 400] | FOOD §4.1.1 'Days 1–6 — Burning Through Campus Food': hunting/fishing teams 'still disorga |
| 2 | hunting_yield_kg | 140 | [100, 400] | FOOD §4.1.1 'Days 1–6 — Burning Through Campus Food': hunting still disorganised; marginal |
| 3 | hunting_yield_kg | 150 | [100, 400] | FOOD §4.1.1 'Days 1–6': hunting still disorganised; slow day-3 ramp within early_yield [10 |
| 4 | hunting_yield_kg | 160 | [100, 400] | FOOD §4.1.1 'Days 1–6 — Burning Through Campus Food': teams organising slowly; day-4 edibl |
| 5 | hunting_yield_kg | 180 | [100, 400] | FOOD §4.1.1 'Days 1–6 — Burning Through Campus Food': hunting still supplements, not susta |
| 6 | hunting_yield_kg | 200 | [100, 400] | FOOD §4.1.1 end of 'Days 1–6': teams more coordinated by day 6, yield rising toward the mi |
| 7 | hunting_yield_kg | 240 | [100, 400] | FOOD §4.1.1 'Days 7–9': hunting now better organised; day-7 yield in the upper-middle of e |
| 7 | ration_fraction_slim | 0.65 | [0.5, 0.7] | FOOD §4.1.1 'Days 7–9 — First Official Cuts' = 50–70% of pre-teleport meals. Day 7 is the  |
| 8 | hunting_yield_kg | 260 | [100, 400] | FOOD §4.1.1 'Days 7–9': hunting yield continues its slow climb within early_yield [100,400 |
| 8 | ration_fraction_slim | 0.6 | [0.5, 0.7] | FOOD §4.1.1 'Days 7–9 — First Official Cuts': portions tighten from the day-7 0.65 toward  |
| 9 | hunting_yield_kg | 280 | [100, 400] | FOOD §4.1.1 'Days 7–9': hunting near the top of early_yield [100,400] as the SUV teams coo |
| 9 | ration_fraction_slim | 0.5 | [0.5, 0.7] | weeks_layer_inputs.md §5 'Day 9 canteen-manager 50% ration cut' (C1 curve inflection): the |
| 10 | hunting_yield_kg | 300 | [100, 400] | FOOD §4.1.1 'Days 10–11': day-10 hunting at the upper end of early_yield [100,400] (pre-ra |
| 11 | hunting_yield_kg | 300 | [100, 400] | FOOD §4.1.1 'Days 10–11': last pre-rain day of organised fair-weather hunting at the top o |
| 12 | hunting_yield_kg | 280 | [100, 400] | FOOD §4.1.1 day-12 'D0': last fair-weather day before the rain week; organised hunting in  |
| 12 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1 'Day ~12 — D0': bulk food service stops, most people drop to 'roughly 0–300 kc |
| 12 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: the micro-fuel list (hunters on duty, night medical/perimeter, mothers with i |
| 13 | hunting_yield_kg | 90 | [40, 160] (×0.4 rain) | Rain week day 1 (WEEKS §3.2): SUV hunting 'substantially harder' — the rain modifier x0.4  |
| 13 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero). |
| 13 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]). |
| 14 | hunting_yield_kg | 80 | [40, 160] (×0.4 rain) | Rain week (WEEKS §3.2): degraded SUV hunting, effective band [40,160] under the x0.4 modif |
| 14 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero). |
| 14 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]). |
| 15 | hunting_yield_kg | 70 | [40, 160] (×0.4 rain) | Rain week trough (WEEKS §3.2): worst of the 'severely degraded' window, effective band [40 |
| 15 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero). |
| 15 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]). |
| 16 | hunting_yield_kg | 70 | [40, 160] (×0.4 rain) | Rain week trough (WEEKS §3.2): degraded SUV hunting, effective band [40,160]; 70 kg edible |
| 16 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero). |
| 16 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]). |
| 17 | hunting_yield_kg | 80 | [40, 160] (×0.4 rain) | Rain week (WEEKS §3.2): degraded SUV hunting, effective band [40,160]; 80 kg edible as the |
| 17 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero). |
| 17 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]). |
| 18 | hunting_yield_kg | 90 | [40, 160] (×0.4 rain) | Rain week easing (WEEKS §3.2): effective band [40,160]; 90 kg edible. |
| 18 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero). |
| 18 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]). |
| 19 | hunting_yield_kg | 100 | [40, 160] (×0.4 rain) | Last rain-week day (WEEKS §3.2, Days 13–19): rain easing, effective band [40,160]; 100 kg  |
| 19 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero). |
| 19 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]). |
| 20 | hunting_yield_kg | 280 | [100, 400] | Rain cleared (day 20): fair-weather SUV hunting resumes, back into the full early_yield ba |
| 20 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero). |
| 20 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]). |
| 21 | hunting_yield_kg | 320 | [100, 400] | Post-rain recovery: organised fair-weather hunting climbing toward the top of early_yield  |
| 21 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero). |
| 21 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]). |
| 22 | hunting_yield_kg | 350 | [100, 400] | Post-rain recovery: near the top of early_yield [100,400] as the SUV teams re-coordinate;  |
| 22 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero). |
| 22 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]). |
| 23 | hunting_yield_kg | 380 | [100, 400] | Last micro day before the big hunt: organised fair-weather hunting at the top of early_yie |
| 23 | ration_kcal_micro | 200 | [0, 300] | FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero). |
| 23 | ration_kcal_micro_fuel_list | 700 | [500, 900] | FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]). |
| 24 | hunting_yield_kg | 1000 | [500, 1500] | FOOD §4.1.1 'Around Day 24 — Big Hunt': SUV-enabled large-game success brings in 'hundreds |
| 24 | ration_fraction_refeed_step | 0.5 | [0.2, 0.5] | FOOD §4.1.1 / §4.2 Phase C: 'rations jump too fast for some of the most starved'. The step |
| 25 | hunting_yield_kg | 380 | [100, 400] | Day after the big hunt: yield falls back to organised fair-weather level (early_yield [100 |
| 25 | ration_fraction_refeed_step | 0.45 | [0.2, 0.5] | FOOD §4.2 Phase C: after the day-24 jump, clinicians hold the ramp at a controlled 0.45 of |
| 26 | hunting_yield_kg | 380 | [100, 400] | Organised fair-weather hunting holds at the top of early_yield [100,400]; 380 kg edible (b |
| 26 | ration_fraction_refeed_step | 0.45 | [0.2, 0.5] | FOOD §4.2 Phase C: controlled refeed held at 0.45 of need (within band [0.30,0.50]). |
| 27 | hunting_yield_kg | 380 | [100, 400] | Organised fair-weather hunting holds at the top of early_yield [100,400]; 380 kg edible (b |
| 27 | ration_fraction_refeed_step | 0.5 | [0.2, 0.5] | FOOD §4.2 Phase C: with the worst refeeding casualties past (72 h after the hunt), the ram |
| 28 | hunting_yield_kg | 400 | [100, 400] | Hunting stabilising at the top of early_yield [100,400] as the colony settles into the chr |
| 28 | ration_fraction_refeed_step | 0.5 | [0.2, 0.5] | FOOD §4.1.1 'Day 30+ — Stabilised Chronic Under-Eating': ramp held at 0.50 of need (top of |
| 29 | hunting_yield_kg | 400 | [100, 400] | Hunting stable at the top of early_yield [100,400]; 400 kg edible (band-window proxy, see  |
| 29 | ration_fraction_refeed_step | 0.5 | [0.2, 0.5] | FOOD §4.1.1 'Day 30+ — Stabilised Chronic Under-Eating': ramp held at 0.50 of need (top of |
| 30 | hunting_yield_kg | 800 | [800, 1300] | FOOD §4.1.1 'Day 30+ — Stabilised Chronic Under-Eating' / §6.3 Phase 1: hunting now 'rampi |
| 30 | ration_fraction_refeed_step | 0.5 | [0.2, 0.5] | FOOD §4.1.1 'Day 30+': ramp held at 0.50 of need (top of refeed_step band [0.30,0.50]); th |

## 6. Assumption list (recipe entries flagged `confidence: assumption`)

Every number below is authored (canon gives direction or concept, not the figure). These are the knobs most worth Stephen's scrutiny.

| Recipe key | Value / band | Rationale (abbreviated) |
|------------|--------------|-------------------------|
| agriculture.germination_days | [7, 14] days | Days from planting (seeds_planted) to germination (germinated) — the maize/grain sprout band. Authored 7-14 da |
| agriculture.maturation_days | 290 days | Days from germination (growing_crop) to first harvest. Authored ~290 so that planting in W-2 (~day 10-14) + ge |
| agriculture.seed_kg_per_area_unit | 25 kg | Seed mass (kg) consumed per hectare planted — the seed-stock draw of apply_planting (S5.2). Authored 25 kg/ha  |
| agriculture.yield_kcal_per_area_unit | 20000 kcal_per_person_day | Edible kcal per hectare per day at FULL maturity (the area unit is the hectare, matching the day-file `plantin |
| goods.bricks | [150, 300] table | Daily fired-brick yield band for the W5-brick-kiln (cluster_trajectories.md §W5-brick-kiln). Canon (WEEKS §W5) |
| hunting.big_hunt_yield | [500, 1500] kg_edible_per_day | FOOD §4.1.1 (Day ~24 big hunt) describes 'hundreds of kilos of fresh meat' from an SUV-enabled large-game succ |
| hunting.early_yield | [100, 400] kg_edible_per_day | FOOD §4.1.1 says Days 1-6 hunting is 'still disorganised' with 'almost all calories from campus stores', and q |
| hunting.gasoline_range_l_per_kg | 1 L_per_person_day | Gasoline→range→kill-ceiling coupling (state-ledgers spec, US-4 AC-4.6; design §4.1 cap_hunting_by_gasoline). T |
| hunting.rain_modifier | 0.4 multiplier | WEEKS §3.2 dictates that the Day-13 rain week makes SUV hunting 'substantially harder' (bogged vehicles, scatt |
| medication.insulin_pool_dose_days_initial | 80 days | Colony-pooled insulin coverage in person-days at T0, for the chain.py dose-day pool (design §9 medication deci |
| morale.baseline | 0 count | The per-cohort morale index opens at 0.0 (neutral) for every cohort on Day 0 (design §5.1: morale_by_cohort op |
| morale.despair_per_deficit_person_day | -0.0008 count | Despair delta per deficit-person-day (food ledger: Σ over persons over the day of max(0, need − intake), a phy |
| morale.event_shock | 0 count | Dictated event-shock deltas keyed by the day-file `morale_events` tag (the `shocks` map; the scalar `value` 0. |
| morale.grief_per_death | -3 count | Per-death grief delta applied per colony death in the window (deaths-in-window from the casualty_check.py roll |
| morale.trauma_weight | -8 count | Per-person carry for a cohort member in the casualty register's `traumatized` state (casualties.yaml line 41 — |
| physiology.condition_add_lactating | 500 kcal | Design §6 flags the lactation increment as assumption-flagged. +500 kcal/day is the conventional exclusive-bre |
| physiology.condition_add_pregnant | 300 kcal | Design §6 flags the pregnancy increment as assumption-flagged. +300 kcal/day is the conventional 2nd/3rd-trime |
| physiology.refeed_jump_threshold | 0.35 fraction | FOOD §4.2 Phase C / §3.3 establish the refeeding-syndrome concept (rations raised too fast kill the most starv |
| projects.agriculture | (structured) | Canon (WEEKS §W5-agriculture) names the farming crew; the C-AGRI seed chain (S5) consumes this project's perso |
| projects.brick_kiln | (structured) | Canon (WEEKS §W5-brick-kiln) names the construction team and the kiln build but gives no bricks/person-day thr |
| projects.cs_lab | (structured) | Canon (WEEKS §W5-cs-lab-cluster) names the CS-lab operators; light-labor, shared compute draw (not a dedicated |
| projects.hunt | (structured) | Canon (WEEKS §W5-hunt, FOOD §4.1.1) names the hunting crew; the KILL itself is a dictated pick (hunting.early_ |
| projects.language_bridge | (structured) | Canon (WEEKS §W5-language-bridge) names the small (~3-8) integration-bridge crew; light-labor, headcount-only. |
| projects.medical | (structured) | Canon (WEEKS §W5-medical) names the clinic team; light-labor, headcount-only — no energy sink. Authored: 1 wor |
| projects.procedural | (structured) | Canon (WEEKS §W5-procedural) names the governance/procedure team; light-labor, headcount-only. Authored: 1 wor |
| projects.security_perimeter | (structured) | Canon (WEEKS §W5-security-perimeter) names the perimeter/watch team; light-labor, headcount-only. Authored: 1  |
| ration_phases.cooked_meal_waste_fraction | 0.1 fraction | Canon does not quantify kitchen/serving/plate loss on cooked communal meals. Authored 10% waste applied to ser |
| ration_phases.refeed_step | [0.2, 0.5] fraction | FOOD §4.2 Phase C names the refeeding window ('rations increased too fast → refeeding syndrome') but does not  |
| spoilage.throttle_curve | (structured) | Cold-chain spoilage is a CONTINUOUS throttle T∈[0,1] (state-ledgers spec, design §3.2): spoiled_fraction(class |
| water.drinking_l_per_person_day | 2.5 L_per_person_day | FOOD §6 states water is 'almost as important as food' and WEEKS §3.9.2 makes lake-fetching a daily labour/risk |

## 7. Headline

- Opening-stock check: **PASS** (ratio 0.98 vs the ~12-day claim).
- Deaths: **6** total — 4 famine-window (Days 12–23) + 2 refeed (Days 25–26), all in the computed `critical` band, all tier-3, no overrides.
- Food/fuel never negative across Days 0–30; chain builds clean; determinism gate passes (check 21).
- Open findings for Stephen: the **diesel/safety-floor over-constraint** (#1), the **cold-chain decoupling** (#2), the **roster cardiac-elder sampling gap** (#3), and the **day-12 stock not ≈ 0** (correct vs §3.1, but diverges from AC-5.1's loose wording).

