← 1628world.com  ·  Day 0 & Weeks Substrate Explorer

Daily State Ledger: Days 0–30

每日状态账本:第 0–30 天 — the colony's first month as balanced books

A per-person daily record of the displaced campus's first month: all 2,435 people, their rations, the food and fuel arithmetic, and who was at risk — generated from the worldbuilding canon by a deterministic build. Physical bookkeeping is computed from cited parameters; every authorial decision is logged with its reason. The novel's events are one path through this record.

Since 2026-10-01 the days are produced one at a time under the loop: the agent drafts the day, the solve realizes it against the day before, the ledger computes it, the author accepts it. Each day's page carries its brief, every person counted by lens, the crews against the formation schedule, what moved, the rules and chains that acted, and the raw files. The loop run is day_loop_2026-10-01: a day marked accepted is the author's accepted day and is what this ledger row was rebuilt from; solved, awaiting acceptance has its page but the row below still comes from the dictated day file; the rest are the dictated day files as authored.

The month at a glance

DayWindowAliveDeaths (cum)Food (person-days)Ration phaseHunt (kg edible)Diesel (L)Critical bandUnder the loop
0W-02435011.75normal025500.00solved under the loop, awaiting acceptance →
1W-02435010.51normal12021741.60dictated day file
2W-0243509.26normal14018307.20dictated day file
3W-1243508.21normal15016687.20dictated day file
4W-1243507.16normal16015067.20dictated day file
5W-1243506.13normal18013447.20dictated day file
6W-1243505.10normal20011827.20dictated day file
7W-1243504.47slim24010207.20dictated day file
8W-2243503.91slim2608587.20dictated day file
9W-2243503.47slim2806967.20dictated day file
10W-2243503.04bridge_503006643.20dictated day file
11W-2243503.16bridge_503006319.2120dictated day file
12W-2243503.15micro2805995.22406dictated day file
13W-2243503.05micro905671.22435dictated day file
14W-2243412.95micro805347.22434dictated day file
15W-3243412.84micro705023.22434dictated day file
16W-3243322.73micro704699.22433dictated day file
17W-3243322.63micro804375.22433dictated day file
18W-3243322.53micro904051.22433dictated day file
19W-3243232.44micro1003727.22432dictated day file
20W-3243232.43micro2803403.22432dictated day file
21W-3243232.43micro3203079.22432dictated day file
22W-3243142.43micro3502755.22431dictated day file
23W-3243142.43micro3802431.22431dictated day file
24W-4243142.36refeed_step10002107.22431dictated day file
25W-4243052.04refeed_step3801783.22430dictated day file
26W-4242961.72refeed_step3801459.22429dictated day file
27W-4242961.35refeed_step3801135.22429dictated day file
28W-4242960.99refeed_step400811.22429dictated day file
29W-4242960.63refeed_step400487.22429dictated day file
30W-4242960.46refeed_step800163.22429dictated day file

Data downloads

Month-1 arithmetic verdict

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)

recipe food_stock section (Σ inventory mass × cited density) — never the

12-day figure as an input.

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
0Day 057,260,83611.75normal025,500
1Days 1–651,211,73910.51normal12021,742
2Days 1–645,117,5279.26normal14018,307
3Days 1–640,003,7508.21normal15016,687
4Days 1–634,909,9727.16normal16015,067
5Days 1–629,856,1946.13normal18013,447
6Days 1–624,842,4165.10normal20011,827
7Days 7–921,803,4614.47slim24010,207
8Days 7–919,075,1943.91slim2608,587
9Days 7–916,928,3053.47slim2806,967
10Days 10–1114,821,4163.04bridge_503006,643
11Days 10–1113,115,3723.16bridge_503006,319
12Days 12–2313,082,5943.15micro2805,995
13Days 12–2312,669,8173.05micro905,671
14Days 12–2312,237,2612.95micro805,347
15Days 12–2311,784,7062.84micro705,023
16Days 12–2311,332,9282.73micro704,699
17Days 12–2310,901,1502.63micro804,375
18Days 12–2310,489,3722.53micro904,051
19Days 12–2310,097,8172.44micro1003,727
20Days 12–2310,066,2612.43micro2803,403
21Days 12–2310,066,2612.43micro3203,079
22Days 12–2310,066,2612.43micro3502,755
23Days 12–2310,066,2612.43micro3802,431
24Day 24+9,763,3922.36refeed_step10002,107
25Day 24+8,451,5642.04refeed_step3801,783
26Day 24+7,140,6501.72refeed_step3801,459
27Day 24+5,599,6331.35refeed_step3801,135
28Day 24+4,098,6160.99refeed_step400811
29Day 24+2,597,6000.63refeed_step400487
30Day 24+1,896,5830.46refeed_step800163

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)

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

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)
1hunting_yield_kg120[100, 400]FOOD §4.1.1 'Days 1–6 — Burning Through Campus Food': hunting/fishing teams 'still disorga
2hunting_yield_kg140[100, 400]FOOD §4.1.1 'Days 1–6 — Burning Through Campus Food': hunting still disorganised; marginal
3hunting_yield_kg150[100, 400]FOOD §4.1.1 'Days 1–6': hunting still disorganised; slow day-3 ramp within early_yield [10
4hunting_yield_kg160[100, 400]FOOD §4.1.1 'Days 1–6 — Burning Through Campus Food': teams organising slowly; day-4 edibl
5hunting_yield_kg180[100, 400]FOOD §4.1.1 'Days 1–6 — Burning Through Campus Food': hunting still supplements, not susta
6hunting_yield_kg200[100, 400]FOOD §4.1.1 end of 'Days 1–6': teams more coordinated by day 6, yield rising toward the mi
7hunting_yield_kg240[100, 400]FOOD §4.1.1 'Days 7–9': hunting now better organised; day-7 yield in the upper-middle of e
7ration_fraction_slim0.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
8hunting_yield_kg260[100, 400]FOOD §4.1.1 'Days 7–9': hunting yield continues its slow climb within early_yield [100,400
8ration_fraction_slim0.6[0.5, 0.7]FOOD §4.1.1 'Days 7–9 — First Official Cuts': portions tighten from the day-7 0.65 toward
9hunting_yield_kg280[100, 400]FOOD §4.1.1 'Days 7–9': hunting near the top of early_yield [100,400] as the SUV teams coo
9ration_fraction_slim0.5[0.5, 0.7]weeks_layer_inputs.md §5 'Day 9 canteen-manager 50% ration cut' (C1 curve inflection): the
10hunting_yield_kg300[100, 400]FOOD §4.1.1 'Days 10–11': day-10 hunting at the upper end of early_yield [100,400] (pre-ra
11hunting_yield_kg300[100, 400]FOOD §4.1.1 'Days 10–11': last pre-rain day of organised fair-weather hunting at the top o
12hunting_yield_kg280[100, 400]FOOD §4.1.1 day-12 'D0': last fair-weather day before the rain week; organised hunting in
12ration_kcal_micro200[0, 300]FOOD §4.1.1 'Day ~12 — D0': bulk food service stops, most people drop to 'roughly 0–300 kc
12ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: the micro-fuel list (hunters on duty, night medical/perimeter, mothers with i
13hunting_yield_kg90[40, 160] (×0.4 rain)Rain week day 1 (WEEKS §3.2): SUV hunting 'substantially harder' — the rain modifier x0.4
13ration_kcal_micro200[0, 300]FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero).
13ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]).
14hunting_yield_kg80[40, 160] (×0.4 rain)Rain week (WEEKS §3.2): degraded SUV hunting, effective band [40,160] under the x0.4 modif
14ration_kcal_micro200[0, 300]FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero).
14ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]).
15hunting_yield_kg70[40, 160] (×0.4 rain)Rain week trough (WEEKS §3.2): worst of the 'severely degraded' window, effective band [40
15ration_kcal_micro200[0, 300]FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero).
15ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]).
16hunting_yield_kg70[40, 160] (×0.4 rain)Rain week trough (WEEKS §3.2): degraded SUV hunting, effective band [40,160]; 70 kg edible
16ration_kcal_micro200[0, 300]FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero).
16ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]).
17hunting_yield_kg80[40, 160] (×0.4 rain)Rain week (WEEKS §3.2): degraded SUV hunting, effective band [40,160]; 80 kg edible as the
17ration_kcal_micro200[0, 300]FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero).
17ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]).
18hunting_yield_kg90[40, 160] (×0.4 rain)Rain week easing (WEEKS §3.2): effective band [40,160]; 90 kg edible.
18ration_kcal_micro200[0, 300]FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero).
18ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]).
19hunting_yield_kg100[40, 160] (×0.4 rain)Last rain-week day (WEEKS §3.2, Days 13–19): rain easing, effective band [40,160]; 100 kg
19ration_kcal_micro200[0, 300]FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero).
19ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]).
20hunting_yield_kg280[100, 400]Rain cleared (day 20): fair-weather SUV hunting resumes, back into the full early_yield ba
20ration_kcal_micro200[0, 300]FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero).
20ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]).
21hunting_yield_kg320[100, 400]Post-rain recovery: organised fair-weather hunting climbing toward the top of early_yield
21ration_kcal_micro200[0, 300]FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero).
21ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]).
22hunting_yield_kg350[100, 400]Post-rain recovery: near the top of early_yield [100,400] as the SUV teams re-coordinate;
22ration_kcal_micro200[0, 300]FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero).
22ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]).
23hunting_yield_kg380[100, 400]Last micro day before the big hunt: organised fair-weather hunting at the top of early_yie
23ration_kcal_micro200[0, 300]FOOD §4.1.1: micro phase carried — 200 kcal (mid micro band [0,300], near-zero).
23ration_kcal_micro_fuel_list700[500, 900]FOOD §4.1.1: micro-fuel list carried — 700 kcal (mid band [500,900]).
24hunting_yield_kg1000[500, 1500]FOOD §4.1.1 'Around Day 24 — Big Hunt': SUV-enabled large-game success brings in 'hundreds
24ration_fraction_refeed_step0.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
25hunting_yield_kg380[100, 400]Day after the big hunt: yield falls back to organised fair-weather level (early_yield [100
25ration_fraction_refeed_step0.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
26hunting_yield_kg380[100, 400]Organised fair-weather hunting holds at the top of early_yield [100,400]; 380 kg edible (b
26ration_fraction_refeed_step0.45[0.2, 0.5]FOOD §4.2 Phase C: controlled refeed held at 0.45 of need (within band [0.30,0.50]).
27hunting_yield_kg380[100, 400]Organised fair-weather hunting holds at the top of early_yield [100,400]; 380 kg edible (b
27ration_fraction_refeed_step0.5[0.2, 0.5]FOOD §4.2 Phase C: with the worst refeeding casualties past (72 h after the hunt), the ram
28hunting_yield_kg400[100, 400]Hunting stabilising at the top of early_yield [100,400] as the colony settles into the chr
28ration_fraction_refeed_step0.5[0.2, 0.5]FOOD §4.1.1 'Day 30+ — Stabilised Chronic Under-Eating': ramp held at 0.50 of need (top of
29hunting_yield_kg400[100, 400]Hunting stable at the top of early_yield [100,400]; 400 kg edible (band-window proxy, see
29ration_fraction_refeed_step0.5[0.2, 0.5]FOOD §4.1.1 'Day 30+ — Stabilised Chronic Under-Eating': ramp held at 0.50 of need (top of
30hunting_yield_kg800[800, 1300]FOOD §4.1.1 'Day 30+ — Stabilised Chronic Under-Eating' / §6.3 Phase 1: hunting now 'rampi
30ration_fraction_refeed_step0.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] daysDays from planting (seeds_planted) to germination (germinated) — the maize/grain sprout band. Authored 7-14 da
agriculture.maturation_days290 daysDays from germination (growing_crop) to first harvest. Authored ~290 so that planting in W-2 (~day 10-14) + ge
agriculture.seed_kg_per_area_unit25 kgSeed mass (kg) consumed per hectare planted — the seed-stock draw of apply_planting (S5.2). Authored 25 kg/ha
agriculture.yield_kcal_per_area_unit20000 kcal_per_person_dayEdible kcal per hectare per day at FULL maturity (the area unit is the hectare, matching the day-file `plantin
goods.bricks[150, 300] tableDaily 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_dayFOOD §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_dayFOOD §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_kg1 L_per_person_dayGasoline→range→kill-ceiling coupling (state-ledgers spec, US-4 AC-4.6; design §4.1 cap_hunting_by_gasoline). T
hunting.rain_modifier0.4 multiplierWEEKS §3.2 dictates that the Day-13 rain week makes SUV hunting 'substantially harder' (bogged vehicles, scatt
medication.insulin_pool_dose_days_initial80 daysColony-pooled insulin coverage in person-days at T0, for the chain.py dose-day pool (design §9 medication deci
morale.baseline0 countThe 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 countDespair delta per deficit-person-day (food ledger: Σ over persons over the day of max(0, need − intake), a phy
morale.event_shock0 countDictated event-shock deltas keyed by the day-file morale_events tag (the shocks map; the scalar value 0.
morale.grief_per_death-3 countPer-death grief delta applied per colony death in the window (deaths-in-window from the casualty_check.py roll
morale.trauma_weight-8 countPer-person carry for a cohort member in the casualty register's traumatized state (casualties.yaml line 41 —
physiology.condition_add_lactating500 kcalDesign §6 flags the lactation increment as assumption-flagged. +500 kcal/day is the conventional exclusive-bre
physiology.condition_add_pregnant300 kcalDesign §6 flags the pregnancy increment as assumption-flagged. +300 kcal/day is the conventional 2nd/3rd-trime
physiology.refeed_jump_threshold0.35 fractionFOOD §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_fraction0.1 fractionCanon 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] fractionFOOD §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_day2.5 L_per_person_dayFOOD §6 states water is 'almost as important as food' and WEEKS §3.9.2 makes lake-fetching a daily labour/risk

7. Headline

Build unknown. Generated by substrate/daily_state/engine/export_site.py; data and methodology: substrate/daily_state/ in the project repository.