August 25, 2026

Generated lab notebook from daily_summary, plan_journal, plan_delivery_log, and setpoint audit data. It is intentionally chronological and may include in-progress cycles before validation.

Planner Execution Ledger

Planner checkpoints can acknowledge that the active plan is still suitable without writing a new public plan ID. Those no-change decisions are part of the audit trail.

Delivery events

23

Plan writes

1

No-change acknowledgements

2

Pending

0

EventDeliveredTypeStatusNote
End-of-day review and reset00:16MIDNIGHTtimed_outDelivery recorded without a public plan write.
End-of-day review and reset (catch-up)00:48MIDNIGHTtimed_outDelivery recorded without a public plan write.
End-of-day review and reset (catch-up)01:19MIDNIGHTtimed_outDelivery recorded without a public plan write.
End-of-day review and reset (catch-up)01:51MIDNIGHTtimed_outDelivery recorded without a public plan write.
End-of-day review and reset02:22MIDNIGHTtimed_outDelivery recorded without a public plan write.
End-of-day review and reset02:53MIDNIGHTtimed_outDelivery recorded without a public plan write.
Morning planning cycle06:23SUNRISEtimed_outDelivery recorded without a public plan write.
Morning planning cycle (catch-up)06:54SUNRISEtimed_outDelivery recorded without a public plan write.
Morning planning cycle (catch-up)07:26SUNRISEtimed_outDelivery recorded without a public plan write.
Morning planning cycle (catch-up)07:57SUNRISEtimed_outDelivery recorded without a public plan write.
Morning planning cycle08:29SUNRISEtimed_outDelivery recorded without a public plan write.
Morning planning cycle09:00SUNRISEtimed_outDelivery recorded without a public plan write.
Morning planning cycle10:05SUNRISEtimed_outDelivery recorded without a public plan write.
Morning planning cycle10:37SUNRISEtimed_outDelivery recorded without a public plan write.
Morning planning cycle11:08SUNRISEtimed_outDelivery recorded without a public plan write.
Morning planning cycle11:40SUNRISEwrong_actionDelivery recorded without a public plan write.
Morning planning cycle11:55SUNRISEtimed_outDelivery recorded without a public plan write.
Morning planning cycle12:27SUNRISEtimed_outDelivery recorded without a public plan write.
Solar peak planning checkpoint13:04SOLAR_MAXackedAcknowledged: SOLAR_MAX 13:04 MDT: live solar 1014 W/m2 overshoots bias-corrected forecast peak (~745-754) by ~35%, but house is already on the governing plan's compliance-first hot/dry posture and it is working: relay truth VENT_COOL_FOG_ASSIST with 100% wet+fog authority, house VPD actively recovering (13:02 avg ~1.9 kPa -> 13:05 1.48, east 1.08/west 1.17). All Tier 1 moisture levers already at hot/dry aggressive end (fog_esc 0... Resolved 13:07 MDT.
Forecast deviation13:51FORECAST_DEVIATIONaction_completedDelivery recorded without a public plan write. Resolved 13:53 MDT.
Peak Stress15:04TRANSITIONackedAcknowledged: Peak-stress checkpoint 15:04 MDT: conditions tracking. House 84.7F/1.10 kPa VPD inside served band (high edges 85.2F/1.19 kPa), controller IDLE with all actuators off, dew margin 9.6F healthy. VPD peaked ~1.32 kPa at 13:00 and declined two consecutive hours; day's stress window complete and residual afternoon heat physics-limited (outdoor 79.9F, exhaust-only box). Wet thresholds band-coupled and auto-tracking (engage 1.24 = vpd_high+0.05, all 1.44 = vpd_high+0... Resolved 15:07 MDT.
Decline18:44TRANSITIONaction_completedDelivery recorded without a public plan write. Resolved 18:58 MDT.
Evening planning cycle19:44SUNSETplan_writtenWrote public plan iris-20260825-1944. Resolved 19:58 MDT.

🌆 Evening Cycle (7:58 PM) — iris-20260825-1944

Status

validated

Outcome score

3/10

Changed parameters

band_track_fraction, cold_vent_guard_delta_f, cool_exit_hysteresis_f, cool_stage2_exit_hysteresis_f, cool_stage2_over_high_f, direct_wet_stress_min_dew_margin_f, direct_wet_stress_vpd_margin_kpa, dwell_gate_ms ...

Reflection

Validating previous cycle: iris-20260824-0017

Previous hypothesis: MIDNIGHT plan for Monday 2026-08-24. Sunday closed at legacy score/compliance 60.6, essentially equal to the 60.8 seven-day average. Temperature and VPD diagnostics were both weak at 49.6% and 48.8%; heat dominated at 10.86 h, followed by 9.26 h VPD-high and 1.43 h VPD-low, with 0 h cold. Dew safety held with an 8.1F minimum margin and 0 risk hours. Attributable/graded compliance and reliable utility/cost fields remain unavailable, so no cost or controller-attributable claim is made. The completed SUNSET plan iris-20260823-1947 is graded 1/10, exactly matching the deterministic anchor. Its 4.4 h window scored 31.9, with 40.0% temperature and 25.7% VPD compliance. Low-side outcomes were safe—0 h cold and VPD-low, only 0.03 h each heat and VPD-high—but the live-edge recovery and stable corridor hypothesis failed causally and at the endpoint. At replacement, the house was 72.9F and 1… Result: Revised 5 → 3 after the deterministic anchor returned 1. Anchor guardrail scorecard: 75 guardrail events, 61 held, 14 dispatched, guardrail_penalty 3 — 81% of the plan’s moisture writes were held by the sticky VPD-high guardrail and did not reach the ESP32. My initial 5 credited the safe outcome (all measurable goals met to the boundary: vpd_high 0.00h, vpd_low 0.00h, dp_risk 0h, 12.9F dew, heat 0h, 129 gal); the anchor prices the materialization failure I under-weighted. The causal gap the anchor does not see: the held writes clamped to conservative-but-reasonable values and the house stayed in-corridor with 0.01h stress, so the process miss did not become an in-window outcome miss. But the plan’s core mechanism — band-coupled wet authority to close the late-night VENTILATE VPD-high moisture-assist gap — mostly did not materialize (14/75 dispatched), and that gap is re-emerging at the boundary (alert 10427, 00:15, VPD-high no moisture assist 100%). Revising to 3: safe outcome above the anchor, but the core mechanism mostly failed to deliver, which is a real causal partial-failure a process score alone understates. The replacement MIDNIGHT plan aligns its first segment with the sticky guardrail values (engage ~vpd_high+0.05, all-zone ~+0.25) to reduce held repairs. Score: 3/10

Hypothesis

Testing: Whether keeping wet authority past 19:00 (wet_cutoff_hour 22) with a gradually widening band-coupled engagement threshold (mister_engage vpd_high+0.05 → +0.20) prevents the late-night VPD-high persistence seen 08-25 23:00-01:00 without creating pre-dawn VPD-low stress. Expected outcome: Overnight 19:45-06:00 MDT: vpd_high_stress under 1.5h, vpd_low_stress under 0.5h, dp_risk 0h with min dew margin >=8F, zero heat runtime, 08-25 total water under 200 gal.

Conditions

Outdoor peak

91.0°F

RH minimum

20.0%

Solar peak

827.0 W/m²

Cloud average

40.0%

tonight mild and increasingly humid (outdoor RH 44→82%, VPD raw 1.5→0.30, cloud 64-100%, no heating needed); tomorrow repeats hot-dry pattern (91F / 20% RH / ~3.9 kPa corrected VPD)

Expected stress windows

vpd_highmedium · 2026-08-25T20:00:00-06:00 to 2026-08-26T01:00:00-06:00

band-coupled wet authority kept open: engage vpd_high+0.05 tapering to +0.10, all-zone +0.25->+0.30, duty 10->8%, wet cutoff 22, stress override active

vpd_lowlow · 2026-08-26T02:00:00-06:00 to 2026-08-26T06:30:00-06:00

taper engage to vpd_high+0.15->+0.20, all-zone +0.35->+0.40, duty 5%, resource sensitivity 0.5; controller DEHUM owns residual excess humidity

Parameter rationale

mister_engage_kpa1.0 → 0.99; house VPD 0.87 kPa (east 1.09) above dispatcher high edge; last night 23:00-01:00 VPD 0.83-0.99 had no moisture assist (alerts 10424/10425); value is vpd_high+0.05 evening, tapers to +0.20 by 05:30

late-night (20:00-01:00) VPD-high stress reduced from ~2-3h to under 1h

mister_all_kpa1.2 → 1.19; outdoor VPD 0.30-0.42 kPa corrected by 03:00-07:00; humidity hold expected, pre-dawn band-low risk; value is vpd_high+0.25 evening, tapers to +0.40 by 05:30

pre-dawn VPD-low stress under 0.5h without a zero-wet cliff

fog_escalation_kpa0.25 → 0.35; fog blocked outside 07:00-17:00; tomorrow 08:00 is 64F/72% RH, unconfirmed dry ramp risks repeat morning over-mist

no fog burst at 07:00 window-open before live VPD confirms the dry ramp

mister_water_budget_gal300.0 → 150.0; authority mode RESOURCE_OPTIMIZATION_ALLOWED, band error 0.00, dew margin 8.4F, in band; resets to 300 at the midnight waypoint

overnight mist runtime under 0.5h; 08-25 total water under 200 gal

Setpoints

Tuesday August 25

Primary crop-band changes:

TimeValuesNote
19:45hyst 0.1975evening_settle (immediate): house at 80.2F / 0.87 kPa house

Tactical tunable changes:

TimeValuesNote
19:45s2 1.76; cool_exit 1.78; all_fans 0; dw_stress 0; engage 0.9870000000000001; all 1.187; pulse 30; gap 48.75; wt 1.4333333333333333evening_settle (immediate): house at 80.2F / 0.87 kPa house

Wednesday August 26

Primary crop-band changes:

TimeValuesNote
00:00hyst 0.1975midnight_posture: outdoor at 66F/66% RH rising, cloud 0-5%;
03:00hyst 0.1975humidity_hold: deepest humidity trough (outdoor 62F/78% RH,
05:30hyst 0.1975pre_dawn: outdoor 59F/78-82% RH, VPD 0.30-0.39; hold the VPD

Tactical tunable changes:

TimeValuesNote
00:00s2 1.775; cool_exit 1.78; all_fans 0; dw_stress 0; engage 1.0370000000000001; all 1.237; pulse 30; gap 52.5; wt 1.3866666666666667midnight_posture: outdoor at 66F/66% RH rising, cloud 0-5%;
03:00s2 1.775; cool_exit 1.78; all_fans 0; dw_stress 0; engage 1.087; all 1.287; pulse 30; gap 52.5; wt 1.3666666666666667humidity_hold: deepest humidity trough (outdoor 62F/78% RH,
05:30s2 1.775; cool_exit 1.78; all_fans 0; dw_stress 0; engage 1.137; all 1.3370000000000002; pulse 30; gap 52.5; wt 1.3666666666666667pre_dawn: outdoor 59F/78-82% RH, VPD 0.30-0.39; hold the VPD

Changed secondary parameters:

TimeParameterChange
19:45band_track_fractioninitial 0
19:45cold_vent_guard_delta_finitial 8
19:45cool_stage2_exit_hysteresis_finitial 1
19:45direct_wet_stress_min_dew_margin_finitial 8
19:45direct_wet_stress_vpd_margin_kpainitial 0.05
19:45dwell_gate_msinitial 240000
19:45enthalpy_closeinitial 1
19:45enthalpy_openinitial -2
19:45fog_escalation_kpainitial 0.35
19:45heat_hysteresisinitial 1
19:45min_fog_off_sinitial 84
19:45min_fog_on_sinitial 54.75
19:45mist_backoff_sinitial 600
19:45mist_max_closed_vent_sinitial 600
19:45mist_thermal_relief_sinitial 90
19:45mister_all_delay_sinitial 84
19:45mister_engage_delay_sinitial 42
19:45mister_water_budget_galinitial 150
19:45night_vpd_bias_kpainitial 0
19:45outdoor_staleness_max_sinitial 600
19:45sw_dwell_gate_enabledinitial 1
19:45sw_fog_closes_ventinitial 1
19:45sw_mister_closes_ventinitial 0
19:45sw_summer_vent_enabledinitial 1
19:45temp_hysteresisinitial 1.78
19:45vent_exchange_fractioninitial 0.3
19:45vent_prefer_dp_delta_finitial 3
19:45vent_prefer_temp_delta_finitial 4
19:45vpd_watch_dwell_sinitial 60
00:00direct_wet_stress_vpd_margin_kpa0.05 → 0.1
00:00min_fog_off_s84 → 90
00:00min_fog_on_s54.75 → 52.5
00:00mister_water_budget_gal150 → 300
03:00direct_wet_stress_vpd_margin_kpa0.1 → 0.15
05:30direct_wet_stress_vpd_margin_kpa0.15 → 0.2
05:30fog_escalation_kpa0.35 → 0.3

End-of-Day Summary

Climate

Temperature

67.0–85.8°F; avg 76.4°F

VPD

0.59–2.06 kPa; avg 0.95 kPa

Relative humidity

51.3–77.9%

Interior Light Evidence

  • Crop DLI: unavailable
  • Reason: source_reading_missing
  • Provenance: legacy_invalid_exterior_proxy_plus_fixture_estimate
  • Validity: dli-validity-v1; 2024-01-01T00:00:00+00:00 → open
  • Qualified-light minutes and photoperiod remain independent of unavailable DLI.

Stress Hours

  • Heat stress (>85°F): 6.3h
  • VPD stress (>2.0 kPa): 11.3h
  • Cold stress (<55°F): 7.3h

Economics

Electric

Not available

Gas

USD 0.00

Water

USD 0.620

Total

Not available

Equipment Runtimes

EquipmentRuntimeReading
Fan 1156 minPrimary exhaust runtime.
Fan 2160 minSecondary exhaust runtime.
Vent224 minIntake vent runtime.
Fog87 minFogger runtime.
Heat 1 electric0 minElectric heater runtime.
Heat 2 gas0 minGas heater runtime.
Grow lights1180 minSupplemental lighting runtime.
Mister south0.00hSouth mister runtime.
Mister west0.00hWest mister runtime.
Mister center0.85hCenter mister runtime.

Water

  • Total: 129 gal
  • Mister: 18 gal

Hourly Pattern

HourTemperatureVPDRH
12:0082.4°F1.37 kPa64.5%
13:0084.7°F1.62 kPa61.5%
14:0084.4°F1.42 kPa65.5%
15:0083.6°F1.16 kPa70.5%
16:0083.8°F1.15 kPa71.0%
17:0083.8°F1.16 kPa70.8%
18:0082.1°F1.22 kPa67.6%
19:0080.1°F1.06 kPa70.1%
20:0078.9°F0.93 kPa72.7%
21:0076.9°F0.80 kPa74.9%
22:0075.2°F0.70 kPa76.5%
23:0073.3°F0.83 kPa70.2%
00:0070.8°F0.99 kPa61.5%
01:0069.4°F0.84 kPa65.9%
02:0068.6°F0.75 kPa68.8%
03:0069.0°F0.63 kPa74.0%
04:0067.8°F0.67 kPa71.0%
05:0067.6°F0.65 kPa71.9%
06:0068.8°F0.70 kPa71.2%
07:0071.6°F0.78 kPa70.9%
08:0074.4°F0.89 kPa69.8%
09:0077.2°F1.07 kPa66.8%
10:0078.9°F1.21 kPa64.3%
11:0080.5°F1.21 kPa66.2%

7-Day Stress Context

DateHeatVPD highCold
2026-08-198.0h11.6h7.3h
2026-08-207.2h14.9h7.4h
2026-08-217.1h18.2h6.3h
2026-08-226.8h11.8h4.8h
2026-08-237.3h14.3h5.7h
2026-08-246.5h13.3h6.7h
2026-08-256.3h11.3h7.3h