July 16, 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

6

Plan writes

3

No-change acknowledgements

3

Pending

0

EventDeliveredTypeStatusNote
End-of-day review and reset00:16MIDNIGHTplan_writtenWrote public plan iris-20260716-0016. Resolved 00:18 MDT.
Morning planning cycle05:46SUNRISEplan_writtenWrote public plan iris-20260716-0546. Resolved 05:48 MDT.
Solar peak planning checkpoint13:08SOLAR_MAXackedAcknowledged: SOLAR_MAX no-op: live solar is above the forecast peak (1033 W/m2 vs ~886-929 W/m2 corrected/near-term forecast), but indoor VPD is only mildly above band at 1.34 kPa vs vpd_high 1.22, recent trend is flat rather than accelerating, dew margin is safe at 12.4F, and the active SUNRISE plan already has compliance-first hot-dry posture in force (fog_escalation_kpa 0.15, wet stress override enabled, full water budget, all-fans cooling)... Resolved 13:08 MDT.
Peak Stress15:08TRANSITIONackedAcknowledged: Peak-stress transition checked. Live house is in expected hot-dry stress envelope for the active SUNRISE plan: temp 84.7F is only ~0.7F above high band, VPD 1.40 kPa is ~0.18 kPa above high band, dew margin is safe at 11.4F, and controller is already using VENTILATE with vent, both fans, and fog. Active setpoints are already compliance-first for this window (fog_escalation_kpa 0.15, mister_engage_kpa 1.25 near vpd_high+0.05, mister_all_kpa 1.42, water budget 300 gal, dwell enabled)... Resolved 15:09 MDT.
Decline19:29TRANSITIONackedAcknowledged: TRANSITION decline checked live climate/equipment against active plan and setpoints. House is tracking the existing plan: temp 81.3F below 84F high, VPD 1.22 kPa at the high edge with safe 11.6F dew margin, IDLE mode, and all climate/wet relays off. Existing plan already contains the evening unwind at 21:30 while guardrail-coupled wet assist remains available if dry-edge persists, so no tunable change is warranted. Resolved 19:29 MDT.
Evening planning cycle20:29SUNSETplan_writtenWrote public plan iris-20260716-2029. Resolved 20:30 MDT.

🌅 Morning Cycle (12:18 AM) — iris-20260716-0016

Status

validated

Outcome score

5/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_latest_hour, direct_wet_stress_min_dew_margin_f, direct_wet_stress_vpd_margin_kpa ...

Reflection

Validating previous cycle: iris-20260715-0545

Previous hypothesis: SUNRISE plan for Wednesday 2026-07-15. Yesterday scored 69.9, above the 7-day average 61.6, but the apparent score masks a persistent dual-axis hot-dry limitation: temp compliance was 48.2%, VPD compliance only 36.6%, total stress 25.02h, with VPD-high dominant at 13.96h and heat stress 11.05h. Water use was high at 366 gal total and 171 gal mister water, well above the 167 gal 7-day average, while reliable cost/electric/gas terms were unavailable. I evaluated the prior SUNSET plan iris-20260714-2030 at 4/10; deterministic anchor was 2 because 473 VPD-high guardrail events and 434 held-by-guardrail events show materialization remained strongly reshaped. Current house is safe and in band at about 68.9F, VPD 0.84 kPa, RH 65%, dew margin 12F, IDLE, all relays off… Result: MIDNIGHT reset governed the pre-sunrise window before this SUNRISE cycle. The scoped window score was 60.3, temp compliance 42.6%, VPD compliance 30.7%, heat stress 0.70h, VPD-high stress 0.84h, no cold stress, no VPD-low stress, and the live house at sunrise was safe around 69.9F, VPD 0.86-0.94 kPa, RH about 63-70%, dew margin about 12F, IDLE. It correctly kept the house safe, preserved moisture posture for the coming severe dry ramp, and accepted that VPD remains the limiting axis. But it was still guardrail/materialization-heavy, with current audit showing held-by-guardrail rows and misses for cool_stage2_over_high_f, direct_wet_stress_latest_hour, and mister_pulse_on_s; it should be treated as a safe handoff rather than proof that the daylight hypothesis will recover VPD. Yesterday’s full-day score was 66.7, above the 7-day average 62.8, but VPD compliance was only 35.6% and VPD-high stress dominated at 14.22h. Score: 5/10

New finding: When a midnight hot-dry handoff plan is guardrail-heavy but dew-safe, score it mainly on safe handoff and measured VPD trend, not on predicted daylight recovery; use the next sunrise plan to state severity-reduction expectations instead of full VPD-corridor recovery. → Added to Lessons Learned

Hypothesis

Testing: Test whether explicitly guardrail-compatible ClimateIntent values after a 598-event guardrail day reduce held-by-guardrail wet-assist rows while preserving dew safety on another severe hot-dry ramp. Expected outcome: By next midnight, dew-risk hours remain 0, VPD-low stress remains 0, VPD-high stress remains the dominant unavoidable miss but daytime VPD severity improves versus the 2026-07-15 SUNRISE window, and held-by-guardrail wet-assist rows decline from the prior 513-event evaluation.

Conditions

Outdoor peak

96.0°F

RH minimum

13.0%

Solar peak

900.0 W/m²

Cloud average

25.0%

severe repeated July hot-dry sequence; Thursday near 93-96F with RH below 20% and solar near 900 W/m2, followed by hotter Friday/Saturday; forecast VPD is positively biased but corrected VPD remains far above the crop corridor

Expected stress windows

vpd_highhigh · 2026-07-16T08:00:00-06:00 to 2026-07-16T22:00:00-06:00

band-coupled wet assist: engage near vpd_high+0.05, all-zone near +0.20 to +0.25, daylight fog escalation near 0.15, and keep evening recovery available while dew margin stays above 8F

heathigh · 2026-07-16T11:00:00-06:00 to 2026-07-16T21:00:00-06:00

45-60 min thermal lead, solar pre-cool, all-fans VENTILATE with wet/fog assist; accept physical cooling limits rather than target-hugging

vpd_highhigh · 2026-07-17T08:00:00-06:00 to 2026-07-17T22:00:00-06:00

repeat compliance-first wet/fog assist for Friday, with no resource taper until observed VPD recovers

heathigh · 2026-07-18T11:00:00-06:00 to 2026-07-18T22:00:00-06:00

strongest wet-assist posture for forecast 100F+ Saturday while treating peak heat as structural and maintaining dew safety

Parameter rationale

mister_engage_kpa0.82 → 1.27; current vpd_high is about 1.22 and east is already dry-edge at 1.36 kPa before a 900 W/m2 / RH <20% dry ramp

keep S1 wet assist available near vpd_high+0.05 without relying on dispatcher correction

mister_all_kpa1.02 → 1.44; zone VPD spread remains >0.5 kPa and yesterday had 14.21h VPD-high stress

make all-zone rotation available near vpd_high+0.20 to +0.25 during hot-dry ventilation

fog_escalation_kpa0.2 → 0.15; daylight VENTILATE overlaps the 07:00-17:00 fog window and fog has the best recent VPD-error response

reduce VPD-high severity during safe daylight windows while dew margin stays above 8F

mister_pulse_gap_s30.0 → 22.0; forecast solar reaches ~900 W/m2 and corrected VPD remains above band from midmorning into evening

increase effective wet duty during peak dry ventilation without changing crop bands

mister_water_budget_gal260.0 → 300.0; water was high yesterday but VPD compliance was still only 35.6%, so budget clipping would worsen safe out-of-band stress

avoid budget-limited VPD recovery during the severe ramp while still tapering only after measured recovery

Setpoints

Thursday July 16

Primary crop-band changes:

TimeValuesNote
00:15hyst 0.1875post-midnight dry-edge recovery remains safe but solar is ze
05:30hyst 0.1875pre-dawn handoff opens band-coupled moisture before the dry
07:00hyst 0.1825sunrise ramp: compliance-first hot-dry posture before solar
11:00hyst 0.1775peak heat/VPD: prioritize wet/fog assist and accept structur
17:30hyst 0.1875evening decline still has high outdoor VPD; keep measured re
21:30hyst 0.1875night recovery taper: conserve somewhat after solar, but do

Tactical tunable changes:

TimeValuesNote
00:15s2 1.8; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 21; engage 1.27; all 1.47; pulse 33.75; gap 41.25; wt 1.7post-midnight dry-edge recovery remains safe but solar is ze
05:30s2 1.6275; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 37.5; gap 37.5; wt 1.7pre-dawn handoff opens band-coupled moisture before the dry
07:00s2 1.5390000000000001; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 43.5; gap 28.5; wt 1.8000000000000003sunrise ramp: compliance-first hot-dry posture before solar
11:00s2 1.5035; cool_exit 1.42; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 46.5; gap 24; wt 1.8666666666666667peak heat/VPD: prioritize wet/fog assist and accept structur
17:30s2 1.665; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 41.25; gap 33.75; wt 1.7333333333333334evening decline still has high outdoor VPD; keep measured re
21:30s2 1.8175; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 34.5; gap 41.25; wt 1.7night recovery taper: conserve somewhat after solar, but do

Friday July 17

Primary crop-band changes:

TimeValuesNote
05:30hyst 0.1825Friday pre-dawn reset for another severe hot-dry ramp; avoid
15:30hyst 0.1775Friday late-day severe VPD/heat pressure; strongest availabl

Tactical tunable changes:

TimeValuesNote
05:30s2 1.5474999999999999; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 45; gap 26.25; wt 1.8333333333333335Friday pre-dawn reset for another severe hot-dry ramp; avoid
15:30s2 1.4975; cool_exit 1.42; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 48.75; gap 22.5; wt 1.9Friday late-day severe VPD/heat pressure; strongest availabl

Saturday July 18

Primary crop-band changes:

TimeValuesNote
05:30hyst 0.1775Saturday outlook is near 100F+ with very dry air; pre-stage
21:30hyst 0.1875Saturday late recovery: continue measured dry-edge recovery

Tactical tunable changes:

TimeValuesNote
05:30s2 1.4615; cool_exit 1.42; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 48.75; gap 21; wt 1.9133333333333336Saturday outlook is near 100F+ with very dry air; pre-stage
21:30s2 1.77; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 37.5; gap 41.25; wt 1.7Saturday late recovery: continue measured dry-edge recovery

Changed secondary parameters:

TimeParameterChange
00:15band_track_fractioninitial 0
00:15cold_vent_guard_delta_finitial 8
00:15cool_stage2_exit_hysteresis_finitial 1
00:15direct_wet_stress_min_dew_margin_finitial 8
00:15direct_wet_stress_vpd_margin_kpainitial 0.05
00:15dwell_gate_msinitial 210000
00:15enthalpy_closeinitial 1
00:15enthalpy_openinitial -2
00:15fog_escalation_kpainitial 0.25
00:15heat_hysteresisinitial 1
00:15min_fog_off_sinitial 72
00:15min_fog_on_sinitial 59.25
00:15mist_backoff_sinitial 600
00:15mist_max_closed_vent_sinitial 600
00:15mist_thermal_relief_sinitial 90
00:15mister_all_delay_sinitial 75
00:15mister_engage_delay_sinitial 37.5
00:15mister_water_budget_galinitial 280
00:15night_vpd_bias_kpainitial 0
00:15outdoor_staleness_max_sinitial 600
00:15sw_dwell_gate_enabledinitial 1
00:15sw_fog_closes_ventinitial 1
00:15sw_mister_closes_ventinitial 0
00:15sw_summer_vent_enabledinitial 1
00:15temp_hysteresisinitial 1.6
00:15vent_exchange_fractioninitial 0.3
00:15vent_prefer_dp_delta_finitial 3
00:15vent_prefer_temp_delta_finitial 4
00:15vpd_watch_dwell_sinitial 52.5
05:30fog_escalation_kpa0.25 → 0.2
05:30min_fog_off_s72 → 66
05:30min_fog_on_s59.25 → 61.5
05:30mister_water_budget_gal280 → 300
07:00dwell_gate_ms210000 → 195000
07:00fog_escalation_kpa0.2 → 0.15
07:00min_fog_off_s66 → 51.599999999999994
07:00min_fog_on_s61.5 → 66.9
07:00mister_all_delay_s75 → 70.5
07:00mister_engage_delay_s37.5 → 35.25
07:00temp_hysteresis1.6 → 1.51
07:00vpd_watch_dwell_s52.5 → 48.75
11:00dwell_gate_ms195000 → 180000
11:00min_fog_off_s51.599999999999994 → 44.4
11:00min_fog_on_s66.9 → 69.6
11:00mister_all_delay_s70.5 → 66
11:00mister_engage_delay_s35.25 → 33
11:00temp_hysteresis1.51 → 1.42
11:00vpd_watch_dwell_s48.75 → 45
17:30dwell_gate_ms180000 → 210000
17:30fog_escalation_kpa0.15 → 0.22
17:30min_fog_off_s44.4 → 60
17:30min_fog_on_s69.6 → 63.75
17:30mister_all_delay_s66 → 75
17:30mister_engage_delay_s33 → 37.5
17:30temp_hysteresis1.42 → 1.6
17:30vpd_watch_dwell_s45 → 52.5
21:30fog_escalation_kpa0.22 → 0.25
21:30min_fog_off_s60 → 72
21:30min_fog_on_s63.75 → 59.25
05:30dwell_gate_ms210000 → 195000
05:30fog_escalation_kpa0.25 → 0.15
05:30min_fog_off_s72 → 48
05:30min_fog_on_s59.25 → 68.25
05:30mister_all_delay_s75 → 70.5
05:30mister_engage_delay_s37.5 → 35.25
05:30temp_hysteresis1.6 → 1.51
05:30vpd_watch_dwell_s52.5 → 48.75
15:30dwell_gate_ms195000 → 180000
15:30min_fog_off_s48 → 42
15:30min_fog_on_s68.25 → 70.5
15:30mister_all_delay_s70.5 → 66
15:30mister_engage_delay_s35.25 → 33
15:30temp_hysteresis1.51 → 1.42
15:30vpd_watch_dwell_s48.75 → 45
05:30min_fog_off_s42 → 39.6
05:30min_fog_on_s70.5 → 71.4
21:30dwell_gate_ms180000 → 210000
21:30fog_escalation_kpa0.15 → 0.25
21:30min_fog_off_s39.6 → 72
21:30min_fog_on_s71.4 → 59.25
21:30mister_all_delay_s66 → 75
21:30mister_engage_delay_s33 → 37.5
21:30temp_hysteresis1.42 → 1.6
21:30vpd_watch_dwell_s45 → 52.5

🌅 Morning Cycle (5:48 AM) — iris-20260716-0546

Status

validated

Outcome score

5/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_latest_hour, direct_wet_stress_min_dew_margin_f, direct_wet_stress_vpd_margin_kpa ...

Reflection

Validating previous cycle: iris-20260715-2030

Previous hypothesis: SUNSET overnight plan for Wednesday 2026-07-15. Today improved modestly versus the 7-day score average (66.4 vs 62.8) but VPD remained the limiting axis: temp compliance 52.3%, VPD compliance 37.4%, 11.7h VPD-high stress and 8.15h heat stress, with no cold/VPD-low stress and no dew risk (minimum dew margin 9.0F). Reliable resource cost terms are unavailable; water was high from context (about 321 gal today vs 234 gal 7-day average), so the overnight plan conserves after measured recovery but does not close wet assist while VPD remains above band and dew margin is healthy. I evaluated iris-20260715-0016 at 6/10, but deterministic anchor was 3 due 270 VPD-high guardrail events and 247 held-by-guardrail events; I accept that as a materialization warning and keep this plan directly guardrail-compatible… Result: Thursday 2026-07-16 scored 63.6, essentially at the 7-day average 63.5. VPD was the bottleneck: temp compliance 49.1% vs VPD compliance 35.9%. Stress was dominated by VPD-high at 14.30h, with heat stress also high at 10.64h; no cold or VPD-low stress. Dew safety held (dp_margin_min 8.4F, dp_risk_hours 0). Water was elevated at 311 gal total / 104 gal mister water versus 285 gal 7-day average; reliable electric/gas/total-cost terms were unavailable, cost_water was USD 1.51. The hypothesis was directionally right for a severe hot-dry day and preserved safety, but it only achieved severity reduction, not corridor recovery; guardrail-heavy materialization and ongoing VPD stress mean the plan should not be treated as a clean parameter experiment. Score: 5/10

New finding: On repeated July hot-dry days near 95F with RH below 20% and solar near 900 W/m2, even guardrail-compatible band-coupled wet/fog assist may preserve dew safety but not recover VPD into corridor. Grade success by dew-safe severity reduction and guardrail materialization, and keep evening recovery open until observed VPD falls back, not by clock time alone. → Added to Lessons Learned

Hypothesis

Testing: Test whether a full 72h ClimateIntent plan that stays directly guardrail-compatible during repeated July hot-dry stress reduces held-by-guardrail wet-assist rows while preserving dp_risk_hours=0, compared with the prior guardrail-heavy MIDNIGHT plan. Expected outcome: For 2026-07-16, expect safe but physics-limited performance: planner score around 62-68, VPD still the bottleneck near 32-40% compliance, heat stress 8-11h, VPD-high stress 12-15h, no cold/VPD-low stress, dp_risk_hours=0, and fewer held-by-guardrail events than the prior 528-event handoff if materialization accepts the bounded intent.

Conditions

Outdoor peak

93.0°F

RH minimum

17.0%

Solar peak

896.0 W/m²

Cloud average

5.0%

clear severe hot-dry July day after repeated guardrail-heavy VPD-high days; raw forecast VPD is biased high but corrected VPD remains above the crop corridor from late morning through evening; retrieval/static context are degraded

Expected stress windows

vpd_highhigh · 2026-07-16T08:00:00-06:00 to 2026-07-16T22:00:00-06:00

band-coupled wet assist near vpd_high+0.05, all-zone near +0.20 to +0.25, daylight fog escalation 0.15, wet recovery through 22:00 if dew margin stays above 8F

heathigh · 2026-07-16T11:00:00-06:00 to 2026-07-16T21:00:00-06:00

45-60 min thermal lead, solar precool, all-fans VENTILATE with wet/fog assist; accept physics-limited peak heat misses

vpd_highhigh · 2026-07-17T08:00:00-06:00 to 2026-07-17T22:00:00-06:00

repeat compliance-first wet/fog assist for another 94F / RH <20% dry day, taper only after observed VPD recovery

heathigh · 2026-07-18T11:00:00-06:00 to 2026-07-18T22:00:00-06:00

strongest bounded wet-assist posture for forecast 99-100F Saturday while preserving dew safety

Parameter rationale

mister_engage_kpa1.27 → 1.27; current vpd_high is about 1.22 and forecast corrected VPD rises above corridor by midmorning

keep S1 wet assist available near vpd_high+0.05 without relying on resource taper or target-line chasing

mister_all_kpa1.47 → 1.47; yesterday had 14.22h VPD-high stress and the forecast remains clear, hot, and dry

keep all-zone rotation available near vpd_high+0.20 to +0.25 during hot-dry ventilation

fog_escalation_kpa0.2 → 0.15; hot-dry VENTILATE overlaps the 07:00-17:00 fog window and fog is the strongest wet-assist path

reduce daylight VPD-high severity while dew margin stays above the 8F floor

mister_pulse_gap_s37.0 → 24.0; solar reaches about 896 W/m2 and RH falls below 20% during peak stress

increase effective wet duty during peak dry ventilation, expecting severity reduction rather than full VPD recovery

mister_water_budget_gal300.0 → 300.0; water use is already high but VPD compliance was only 35.6%, so clipping water would worsen safe out-of-band stress

avoid budget-limited VPD recovery while dew and occupancy rails remain safe

direct_wet_stress_latest_hour21.0 → 22.0; forecast VPD remains above corridor into the evening and prior clock tapers did not restore VPD by dawn

permit bounded evening dry-edge recovery, then taper only after measured recovery and dew-margin safety

Setpoints

Thursday July 16

Primary crop-band changes:

TimeValuesNote
05:45hyst 0.19749999999999998dawn handoff: house is safe and in band, but clear hot-dry r
07:00hyst 0.19749999999999998fog window opens and VPD ramp begins; use compliance-first h
10:30hyst 0.20249999999999999late morning dual-axis risk: corrected VPD and solar are hig
13:30hyst 0.20749999999999996peak heat/VPD: accept structural heat miss, prioritize VPD s
17:30hyst 0.20749999999999996post-peak decline: fog window has closed but VPD remains hig
21:30hyst 0.2125evening recovery: reduce churn and water after measured impr

Tactical tunable changes:

TimeValuesNote
05:45s2 1.635; cool_exit 1.78; all_fans 0; dw_stress 0; dw_until 22; engage 1.27; all 1.47; pulse 37.5; gap 37.5; wt 1.6666666666666665dawn handoff: house is safe and in band, but clear hot-dry r
07:00s2 1.585; cool_exit 1.78; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 41.25; gap 33.75; wt 1.7333333333333334fog window opens and VPD ramp begins; use compliance-first h
10:30s2 1.5350000000000001; cool_exit 1.87; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 45; gap 30; wt 1.8000000000000003late morning dual-axis risk: corrected VPD and solar are hig
13:30s2 1.5025; cool_exit 1.96; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 46.5; gap 26.25; wt 1.8466666666666667peak heat/VPD: accept structural heat miss, prioritize VPD s
17:30s2 1.6324999999999998; cool_exit 1.96; all_fans 0; dw_stress 0; dw_until 22; engage 1.28; all 1.47; pulse 41.25; gap 41.25; wt 1.6666666666666665post-peak decline: fog window has closed but VPD remains hig
21:30s2 1.745; cool_exit 2.05; all_fans 0; dw_stress 0; dw_until 22; engage 1.3; all 1.52; pulse 33.75; gap 56.25; wt 1.4666666666666666evening recovery: reduce churn and water after measured impr

Friday July 17

Primary crop-band changes:

TimeValuesNote
06:00hyst 0.20749999999999996Friday repeat severe hot-dry ramp: preserve guardrail-compat

Tactical tunable changes:

TimeValuesNote
06:00s2 1.5290000000000001; cool_exit 1.96; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 46.5; gap 28.5; wt 1.8266666666666667Friday repeat severe hot-dry ramp: preserve guardrail-compat

Saturday July 18

Primary crop-band changes:

TimeValuesNote
06:00hyst 0.2125Saturday extreme outlook near 99-100F: strongest bounded moi

Tactical tunable changes:

TimeValuesNote
06:00s2 1.4735; cool_exit 2.05; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 48.75; gap 24; wt 1.8866666666666667Saturday extreme outlook near 99-100F: strongest bounded moi

Changed secondary parameters:

TimeParameterChange
05:45band_track_fractioninitial 0
05:45cold_vent_guard_delta_finitial 8
05:45cool_stage2_exit_hysteresis_finitial 1
05:45direct_wet_stress_min_dew_margin_finitial 8
05:45direct_wet_stress_vpd_margin_kpainitial 0.05
05:45dwell_gate_msinitial 240000
05:45enthalpy_closeinitial 1
05:45enthalpy_openinitial -2
05:45fog_escalation_kpainitial 0.2
05:45heat_hysteresisinitial 1
05:45min_fog_off_sinitial 66
05:45min_fog_on_sinitial 61.5
05:45mist_backoff_sinitial 600
05:45mist_max_closed_vent_sinitial 600
05:45mist_thermal_relief_sinitial 90
05:45mister_all_delay_sinitial 84
05:45mister_engage_delay_sinitial 42
05:45mister_water_budget_galinitial 300
05:45night_vpd_bias_kpainitial 0
05:45outdoor_staleness_max_sinitial 600
05:45sw_dwell_gate_enabledinitial 1
05:45sw_fog_closes_ventinitial 1
05:45sw_mister_closes_ventinitial 0
05:45sw_summer_vent_enabledinitial 1
05:45temp_hysteresisinitial 1.78
05:45vent_exchange_fractioninitial 0.3
05:45vent_prefer_dp_delta_finitial 3
05:45vent_prefer_temp_delta_finitial 4
05:45vpd_watch_dwell_sinitial 60
07:00fog_escalation_kpa0.2 → 0.15
07:00min_fog_off_s66 → 60
07:00min_fog_on_s61.5 → 63.75
10:30cold_vent_guard_delta_f8 → 7
10:30dwell_gate_ms240000 → 255000
10:30min_fog_off_s60 → 54
10:30min_fog_on_s63.75 → 66
10:30mister_all_delay_s84 → 88.5
10:30mister_engage_delay_s42 → 44.25
10:30temp_hysteresis1.78 → 1.87
10:30vent_prefer_temp_delta_f4 → 3
10:30vpd_watch_dwell_s60 → 63.75
13:30dwell_gate_ms255000 → 270000
13:30min_fog_off_s54 → 48
13:30min_fog_on_s66 → 68.25
13:30mister_all_delay_s88.5 → 93
13:30mister_engage_delay_s44.25 → 46.5
13:30temp_hysteresis1.87 → 1.96
13:30vpd_watch_dwell_s63.75 → 67.5
17:30cold_vent_guard_delta_f7 → 8
17:30direct_wet_stress_vpd_margin_kpa0.05 → 0.06
17:30fog_escalation_kpa0.15 → 0.2
17:30min_fog_off_s48 → 72
17:30min_fog_on_s68.25 → 59.25
17:30vent_prefer_temp_delta_f3 → 4
21:30direct_wet_stress_vpd_margin_kpa0.06 → 0.08
21:30dwell_gate_ms270000 → 285000
21:30fog_escalation_kpa0.2 → 0.3
21:30min_fog_off_s72 → 96
21:30min_fog_on_s59.25 → 50.25
21:30mister_all_delay_s93 → 97.5
21:30mister_engage_delay_s46.5 → 48.75
21:30mister_water_budget_gal300 → 280
21:30temp_hysteresis1.96 → 2.05
21:30vpd_watch_dwell_s67.5 → 71.25
06:00cold_vent_guard_delta_f8 → 7
06:00direct_wet_stress_vpd_margin_kpa0.08 → 0.05
06:00dwell_gate_ms285000 → 270000
06:00fog_escalation_kpa0.3 → 0.15
06:00min_fog_off_s96 → 51.599999999999994
06:00min_fog_on_s50.25 → 66.9
06:00mister_all_delay_s97.5 → 93
06:00mister_engage_delay_s48.75 → 46.5
06:00mister_water_budget_gal280 → 300
06:00temp_hysteresis2.05 → 1.96
06:00vent_prefer_temp_delta_f4 → 3
06:00vpd_watch_dwell_s71.25 → 67.5
06:00dwell_gate_ms270000 → 285000
06:00min_fog_off_s51.599999999999994 → 44.4
06:00min_fog_on_s66.9 → 69.6
06:00mister_all_delay_s93 → 97.5
06:00mister_engage_delay_s46.5 → 48.75
06:00temp_hysteresis1.96 → 2.05
06:00vpd_watch_dwell_s67.5 → 71.25

🌆 Evening Cycle (8:30 PM) — iris-20260716-2029

Status

validated

Outcome score

6/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_latest_hour, direct_wet_stress_min_dew_margin_f, direct_wet_stress_vpd_margin_kpa ...

Reflection

Validating previous cycle: iris-20260716-0546

Previous hypothesis: SUNRISE plan for Thursday 2026-07-16. Yesterday scored 66.7, above the 7-day average 62.8, but VPD remained the clear bottleneck: temp compliance 49.7%, VPD compliance 35.6%, total stress 24.6h, heat stress 10.38h, VPD-high stress 14.22h, no cold or VPD-low stress, and dew safety held with dp_margin_min 9.0F / 0.0 dp_risk_hours. Water was high at 350 gal total / 143 gal mister water versus 234 gal 7-day total-water average; reliable electric/gas/cost terms are unavailable except cost_water USD 1.69, so the resource tradeoff is mainly water/wear rather than trusted energy cost. I evaluated the SUNSET and MIDNIGHT backlog plans at 5/10 each; both returned deterministic anchor 3 because guardrail materialization remained heavy (441 and 528 VPD-high guardrail events)… Result: Midnight partial evaluation of the Thursday sunset plan before replacing it with the required midnight reset. The plan’s evening/early-night hypothesis was mostly met so far: dew safety held (current dp_margin about 11.6F; 2026-07-16 dp_margin_min 8.4F and dp_risk_hours 0.0), no VPD-low or cold stress appeared, and live VPD recovered from the sunset dry-edge state (about 1.54 kPa at sunset; current house VPD about 0.96 kPa, east about 1.13). Yesterday’s full day still scored only 63.6 with temp compliance 49.1%, VPD compliance 35.9%, 10.64h heat stress and 14.30h VPD-high stress, so the plan did not change the structural hot-dry limitation. Its morning-handoff prediction is not yet fully measurable at midnight, and materialization remained guardrail-heavy: direct_wet_stress_latest_hour requested 22 but actual remained 21, with moisture guardrail holding/rewriting several wet-assist values. I score 6/10 for safe dew-margin recovery and correct diagnosis, with reservations for incomplete sunrise outcome and guardrail dependence. Score: 6/10

New finding: For repeated July hot-dry sunset plans, a midnight evaluation can credit measured dew-safe evening VPD recovery when VPD falls back near/inside band with no VPD-low or dew risk, but it must not claim the sunrise-ramp hypothesis is proven before dawn; keep the next midnight/sunrise plan focused on guardrail-compatible band-coupled wet assist and explicit severity-reduction expectations. → Added to Lessons Learned

Hypothesis

Testing: Test whether a sunset plan that keeps wet recovery open until 22:00, then tapers water/churn while preserving band-coupled morning handoff, can lower overnight VPD-high duration without creating dew risk. Expected outcome: By sunrise: dp_risk_hours remains 0, dp_margin_min stays >=8F, no VPD-low or cold stress, and VPD-high severity declines after 22:30 despite reduced overnight mist duty; tomorrow morning starts with wet assist available before the dry ramp.

Conditions

Outdoor peak

83.0°F

RH minimum

28.0%

Solar peak

0.0 W/m²

Cloud average

44.0%

warm dry evening after a hot-dry July day; live house VPD remains above band with safe dew margin; Friday ramps quickly to about 95F with RH below 20% and solar near 800 W/m2

Expected stress windows

vpd_highmedium · 2026-07-16T20:30:00-06:00 to 2026-07-16T22:30:00-06:00

keep moisture engage near vpd_high+0.05 and all-zone near +0.25 through the recovery window while dew margin stays above 8F

vpd_highlow · 2026-07-16T22:30:00-06:00 to 2026-07-17T05:30:00-06:00

taper mist duty and raise resource sensitivity after measured evening recovery; preserve dew floor and avoid relay/water churn

vpd_highhigh · 2026-07-17T07:30:00-06:00 to 2026-07-17T11:00:00-06:00

morning handoff reopens band-coupled wet assist and lower fog escalation before the hot-dry ramp

Parameter rationale

mister_engage_kpa1.0 → 1.27; live VPD is 1.54 kPa, above the dispatcher vpd_high around 1.22, with east dry outlier near 1.82 and dew margin 15.7F

allow bounded evening VPD recovery without suppressing S1 wet assist while the house is still dry

mister_all_kpa1.2 → 1.47; zone VPD spread remains large and today's VPD compliance was only 38.1%

keep all-zone rotation available near vpd_high+0.25 during the evening recovery window

mister_pulse_gap_s30.0 → 45.0; solar is zero overnight and water/wear were high, but dew margin is safe

reduce low-value overnight water and relay churn after the recovery window without closing wet assist at the VPD edge

fog_escalation_kpa0.2 → 0.3; fog is blocked overnight and dew safety is good; morning handoff lowers fog escalation before daylight dry ramp

avoid implying aggressive overnight fog while still enabling daylight vent-fog assist after sunrise

mister_water_budget_gal300.0 → 260.0; Thursday used 282 gal total water versus a 285 gal 7-day average and cost terms remain unavailable

conserve modestly overnight while not clipping morning/daylight VPD recovery

direct_wet_stress_latest_hour21.0 → 22.0; active VPD stress remains open at sunset and prior clock-only tapers did not restore VPD by dawn

permit bounded evening dry-edge recovery through 22:00 while dew margin remains safe

Setpoints

Thursday July 16

Primary crop-band changes:

TimeValuesNote
20:28hyst 0.1875evening_settle: live VPD remains above band with safe 15F de
22:30hyst 0.1875post_recovery_taper: after wet cutoff and no solar, humidity

Tactical tunable changes:

TimeValuesNote
20:28s2 1.835; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 33.75; gap 41.25; wt 1.7evening_settle: live VPD remains above band with safe 15F de
22:30s2 1.835; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 33.75; gap 41.25; wt 1.7post_recovery_taper: after wet cutoff and no solar, humidity

Friday July 17

Primary crop-band changes:

TimeValuesNote
00:30hyst 0.1875midnight_posture: no heating challenge and no dew risk expec
05:30hyst 0.1875pre_dawn_handoff: start easing back toward compliance-first
07:30hyst 0.1875morning_ramp_safety_net: Friday forecast quickly becomes hot

Tactical tunable changes:

TimeValuesNote
00:30s2 1.835; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 33.75; gap 41.25; wt 1.7midnight_posture: no heating challenge and no dew risk expec
05:30s2 1.7475; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 33.75; gap 41.25; wt 1.7pre_dawn_handoff: start easing back toward compliance-first
07:30s2 1.625; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 39; gap 41.25; wt 1.7morning_ramp_safety_net: Friday forecast quickly becomes hot

Changed secondary parameters:

TimeParameterChange
20:28band_track_fractioninitial 0
20:28cold_vent_guard_delta_finitial 8
20:28cool_stage2_exit_hysteresis_finitial 1
20:28direct_wet_stress_min_dew_margin_finitial 8
20:28direct_wet_stress_vpd_margin_kpainitial 0.05
20:28dwell_gate_msinitial 210000
20:28enthalpy_closeinitial 1
20:28enthalpy_openinitial -2
20:28fog_escalation_kpainitial 0.25
20:28heat_hysteresisinitial 1
20:28min_fog_off_sinitial 72
20:28min_fog_on_sinitial 59.25
20:28mist_backoff_sinitial 600
20:28mist_max_closed_vent_sinitial 600
20:28mist_thermal_relief_sinitial 90
20:28mister_all_delay_sinitial 75
20:28mister_engage_delay_sinitial 37.5
20:28mister_water_budget_galinitial 260
20:28night_vpd_bias_kpainitial 0
20:28outdoor_staleness_max_sinitial 600
20:28sw_dwell_gate_enabledinitial 1
20:28sw_fog_closes_ventinitial 1
20:28sw_mister_closes_ventinitial 0
20:28sw_summer_vent_enabledinitial 1
20:28temp_hysteresisinitial 1.6
20:28vent_exchange_fractioninitial 0.3
20:28vent_prefer_dp_delta_finitial 3
20:28vent_prefer_temp_delta_finitial 4
20:28vpd_watch_dwell_sinitial 52.5
22:30mister_water_budget_gal260 → 250
00:30mister_water_budget_gal250 → 240
05:30mister_water_budget_gal240 → 260
07:30fog_escalation_kpa0.25 → 0.2
07:30mister_water_budget_gal260 → 300

End-of-Day Summary

Climate

Temperature

69.8–86.4°F; avg 77.7°F

VPD

0.84–1.77 kPa; avg 1.20 kPa

Relative humidity

53.9–75.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): 3.2h
  • VPD stress (>2.0 kPa): 9.9h
  • Cold stress (<55°F): 7.8h

Economics

Electric

USD —

Gas

USD 0.00

Water

USD 1.510

Total

USD —

Equipment Runtimes

EquipmentRuntimeReading
Fan 1648 minPrimary exhaust runtime.
Fan 2652 minSecondary exhaust runtime.
Vent747 minIntake vent runtime.
Fog309 minFogger runtime.
Heat 1 electric0 minElectric heater runtime.
Heat 2 gas0 minGas heater runtime.
Grow lights648 minSupplemental lighting runtime.
Mister south0.00hSouth mister runtime.
Mister west0.00hWest mister runtime.
Mister center2.02hCenter mister runtime.

Water

  • Total: 311 gal
  • Mister: 104 gal

Hourly Pattern

HourTemperatureVPDRH
12:0082.3°F1.26 kPa67.0%
13:0083.9°F1.38 kPa66.8%
14:0084.6°F1.42 kPa67.9%
15:0085.2°F1.51 kPa67.0%
16:0085.6°F1.59 kPa65.2%
17:0084.3°F1.49 kPa65.6%
18:0082.9°F1.35 kPa66.1%
19:0081.8°F1.21 kPa68.1%
20:0080.6°F1.16 kPa68.2%
21:0078.6°F1.21 kPa64.4%
22:0076.1°F1.25 kPa60.2%
23:0074.4°F1.22 kPa58.8%
00:0073.0°F1.14 kPa59.6%
01:0072.3°F1.15 kPa58.2%
02:0071.6°F1.19 kPa55.6%
03:0071.1°F1.19 kPa54.6%
04:0070.2°F1.07 kPa57.5%
05:0070.0°F0.88 kPa64.7%
06:0071.6°F0.90 kPa66.3%
07:0073.4°F1.02 kPa64.0%
08:0075.2°F1.19 kPa60.2%
09:0076.9°F1.15 kPa63.9%
10:0079.4°F1.15 kPa66.9%
11:0080.9°F1.15 kPa68.1%

7-Day Stress Context

DateHeatVPD highCold
2026-07-102.4h3.8h1.0h
2026-07-113.8h9.0h9.2h
2026-07-125.1h10.3h8.2h
2026-07-134.5h9.2h9.3h
2026-07-144.5h9.9h8.8h
2026-07-154.2h9.6h8.8h
2026-07-163.2h10.0h7.8h