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

8

Plan writes

3

No-change acknowledgements

4

Pending

0

EventDeliveredTypeStatusNote
End-of-day review and reset00:15MIDNIGHTplan_writtenWrote public plan iris-20260719-0015. Resolved 00:17 MDT.
Morning planning cycle05:48SUNRISEplan_writtenWrote public plan iris-20260719-0548. Resolved 05:50 MDT.
Solar peak planning checkpoint13:07SOLAR_MAXaction_completedDelivery recorded without a public plan write. Resolved 13:08 MDT.
Peak Stress15:07TRANSITIONackedAcknowledged: Peak-stress transition checked: live greenhouse is in expected dual-axis hot/dry stress, but the active plan and current setpoints are already in maximum compliance-first posture. Temp 86.4F is above the 84F high edge and VPD 1.63 kPa is above the 1.22 high edge, with healthy dew margin 12.9F. Controller is VENTILATE with vent, both fans, fog, and mister active; wet/fog path is allowed and serving. Tactical settings are already more aggressive than the morning plan targets: fog_escalation_kpa 0... Resolved 15:08 MDT.
Forecast deviation18:05FORECAST_DEVIATIONackedAcknowledged: FORECAST_DEVIATION reviewed: observed VPD is lower than raw forecast in the same direction as the known positive VPD forecast bias, while live controller already has vent, both fans, and fog assist active with dew margin safe. No tuning change needed. Resolved 18:05 MDT.
Decline19:27TRANSITIONackedAcknowledged: TRANSITION decline no tunable change: current temp 82.7F is inside/near served sunset band, VPD 1.32 kPa remains above vpd_high 1.22 with east/west dry outliers, dew margin is safe at 12.6F and equipment is already sealed/off after recent fog. The active plan already contains an evening taper waypoint at 21:30; raising mist/fog thresholds now would prematurely close wet assist during live VPD-high recovery before observed VPD is below band. No Slack post required because no changes were made. Resolved 19:27 MDT.
Forecast deviation19:50FORECAST_DEVIATIONackedAcknowledged: FORECAST_DEVIATION assessed: observed cloud cover is much higher than the stale 0% point forecast, but live climate is safe (81.1F, VPD 1.06 kPa, RH 71%, dew margin 10.2F), temp is below the 84F high edge, average VPD is below the 1.22 kPa high edge, and all relays/wet actuators are currently off. Forecast now shows 100/82/90% cloud cover for 20:00-22:00, so this is a near-term forecast/cloud timing error catching up rather than an equipment issue or a hotter/humid regime requiring tactical tuning... Resolved 19:50 MDT.
Evening planning cycle20:27SUNSETplan_writtenWrote public plan iris-20260719-2027. Resolved 20:28 MDT.

🌅 Morning Cycle (12:17 AM) — iris-20260719-0015

Status

validated

Outcome score

4/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-20260718-0547

Previous hypothesis: SUNRISE plan for Saturday 2026-07-18. Yesterday scored 67.2, above the 7-day average 64.2, but it remained strongly VPD/heat limited: temp compliance 48.4%, VPD compliance 35.1%, 10.69h heat stress and 14.53h VPD-high stress, no cold or VPD-low stress, and dew safety held at dp_margin_min 8.8F / dp_risk_hours 0.0. Water was 350 gal versus 343 gal 7-day average, with 143 gal misting-only; resource cost terms are incomplete, so today’s resource constraint is water/wear, not trusted energy cost. I evaluated the completed sunset plan iris-20260717-2028 at 4/10; plan_evaluate returned anchor 2 because 408 guardrail events and 360 held-guardrail events mean that plan was materially reshaped. I accept the anchor warning: recent plans are safe severity-reduction attempts, not clean recovery experiments. Current house is safe and in the low-side morning corridor at about 70.1F, VPD 0… Result: Validated during the SUNSET cycle using the scoped window scorecard. The midnight reset preserved safety but did not materially recover the crop corridor: scoped window score/compliance was 68.3 with temp compliance 48.9% and VPD compliance 36.5%; stress during governance was about 2.00h heat and 2.72h VPD-high with 0.0h cold and 0.0h VPD-low. Dew safety remained good with dp_margin_min_f about 9.1F and 0.0 dp-risk hours. The forecast/stress diagnosis for an extreme hot-dry sequence was right, but the wet/fog posture should be treated as guardrail-shaped severity mitigation rather than a clean recovery experiment; repeated missed/guardrailed values mean future plans should request bounded ClimateIntent values that materialize cleanly and avoid relying on dispatcher correction. Score: 4/10

Hypothesis

Testing: Guardrail-compatible extreme hot-dry severity mitigation: request band-coupled wet/fog assist values directly and judge success by VPD-high hours versus the recent July baseline, not by target-line hugging. Expected outcome: For the new day, keep dew-risk hours at 0 and VPD-low stress at 0 while accepting structural heat stress; reduce VPD-high severity versus the last 7-day pattern if live dew margin remains above 8F, and avoid another plan dominated by guardrail-held wet-assist materializations.

Conditions

Outdoor peak

99.0°F

RH minimum

14.0%

Solar peak

889.0 W/m²

Cloud average

12.0%

extreme July hot-dry sequence; forecast VPD is positively biased but corrected priors remain far above the crop corridor, dew margin is currently safe, and recent plans were guardrail-shaped severity mitigation rather than clean recovery

Expected stress windows

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

guardrail-compatible band-coupled wet assist: engage near vpd_high+0.05, all-zone near +0.20 to +0.25, daylight fog escalation near 0.15, low resource sensitivity while dew margin is safe

heathigh · 2026-07-19T10:30:00-06:00 to 2026-07-19T20:00:00-06:00

early thermal lead and solar precooling, all fans at high, preserve vent-mist/fog assist, and accept structural peak heat rather than target hugging

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

repeat compliance-first wet assist for the hotter Monday ramp; do not unwind until measured VPD is below the served high edge

heathigh · 2026-07-20T10:30:00-06:00 to 2026-07-20T20:00:00-06:00

expect physics-limited heat near 102F outdoors; prioritize safety, VPD severity reduction, and stable relay behavior

vpd_lowmedium · 2026-07-21T22:00:00-06:00 to 2026-07-22T00:15:00-06:00

taper wet/fog intensity and raise dew margin caution as late Tuesday forecast RH rises toward the Wednesday cool/humid handoff

Parameter rationale

mister_engage_kpa0.82 → 1.27; live VPD is already near the 1.22 kPa high edge and Sunday raw VPD exceeds 2 kPa by 09:00 with corrected priors still severe

keep S1 wet assist available at the band edge during safe dry stress without relying on guardrail correction

mister_all_kpa1.02 → 1.42; east is the planted dry outlier and recent VPD compliance was only 36.6% daily / 30.4% in the validated plan window

allow all-zone escalation near vpd_high+0.20 during hot-dry ventilation while preserving the wider deadband for zone spread

fog_escalation_kpa0.2 → 0.15; fog window overlaps the 09:00-17:00 hot-dry ramp and current dew margin is 15F with no dp-risk hours

enable daylight vent-fog assist before severe VPD-high error accumulates

mister_pulse_gap_s30.0 → 22.0; solar near 890 W/m2 and RH near 14-16% through peak stress

maintain useful wet duty during peak ventilation, then taper after sunset to avoid water and relay churn

mister_water_budget_gal300.0 → 300.0; Saturday used 359 gal total and 162 gal misting-only but VPD remained the limiting axis with dew safety intact

avoid budget-limited VPD recovery during safe extreme dry stress while conserving with tapering rather than a lower cap

direct_wet_stress_latest_hour21.0 → 22.0; VPD-high is forecast to persist into the evening while dew margin is presently healthy

permit bounded evening dry-edge recovery through 22:00 when dew margin remains above 8F

Setpoints

Sunday July 19

Primary crop-band changes:

TimeValuesNote
00:15hyst 0.1875post-midnight state is safe with dew margin 15F but VPD near
03:30hyst 0.1875pre-dawn taper while solar is absent and forecast VPD dips;
06:15hyst 0.1825sunrise handoff before the clear dry ramp; reopen band-coupl
08:30hyst 0.1725morning VPD ramp begins; compliance-first wet assist should
12:30hyst 0.16749999999999998peak heat and solar are physics-limited; keep moisture assis
17:30hyst 0.1825fog window has ended but outdoor heat and dry air persist; k
21:30hyst 0.1875late evening taper after the recovery window; avoid low-valu

Tactical tunable changes:

TimeValuesNote
00:15s2 1.76; 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-midnight state is safe with dew margin 15F but VPD near
03:30s2 1.795; 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 taper while solar is absent and forecast VPD dips;
06:15s2 1.58; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 41.25; gap 22.5; wt 1.8333333333333335sunrise handoff before the clear dry ramp; reopen band-coupl
08:30s2 1.5125; cool_exit 1.33; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 45; gap 18.75; wt 1.9morning VPD ramp begins; compliance-first wet assist should
12:30s2 1.5125; cool_exit 1.24; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 48.75; gap 18.75; wt 1.9333333333333331peak heat and solar are physics-limited; keep moisture assis
17:30s2 1.665; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 41.25; gap 26.25; wt 1.7999999999999998fog window has ended but outdoor heat and dry air persist; k
21:30s2 1.83; 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.7late evening taper after the recovery window; avoid low-valu

Monday July 20

Primary crop-band changes:

TimeValuesNote
05:30hyst 0.1825Monday pre-ramp is even hotter and dry; reopen compliance-fi
10:30hyst 0.16749999999999998Monday peak forecast near 102F is structural heat stress; ke
17:30hyst 0.1875Monday evening remains hot and dry after fog cutoff; continu

Tactical tunable changes:

TimeValuesNote
05:30s2 1.615; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 41.25; gap 22.5; wt 1.8333333333333335Monday pre-ramp is even hotter and dry; reopen compliance-fi
10:30s2 1.5125; cool_exit 1.24; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 48.75; gap 18.75; wt 1.9333333333333331Monday peak forecast near 102F is structural heat stress; ke
17:30s2 1.715; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 41.25; gap 30; wt 1.7666666666666666Monday evening remains hot and dry after fog cutoff; continu

Tuesday July 21

Primary crop-band changes:

TimeValuesNote
05:30hyst 0.1875Tuesday remains dry but may become stormier late; use a firm
10:30hyst 0.1775Tuesday hot-dry afternoon still needs compliance-first wet a
20:30hyst 0.1875late Tuesday forecast turns cooler and more humid; taper wet

Tactical tunable changes:

TimeValuesNote
05:30s2 1.645; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 21; engage 1.27; all 1.47; pulse 37.5; gap 30; wt 1.7333333333333334Tuesday remains dry but may become stormier late; use a firm
10:30s2 1.5625; cool_exit 1.42; all_fans 0; dw_stress 1; dw_until 21; engage 1.27; all 1.44; pulse 45; gap 22.5; wt 1.8666666666666667Tuesday hot-dry afternoon still needs compliance-first wet a
20:30s2 1.8475; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 20; engage 1.27; all 1.47; pulse 33.75; gap 41.25; wt 1.7late Tuesday forecast turns cooler and more humid; taper wet

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 300
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
06:15dwell_gate_ms210000 → 195000
06:15fog_escalation_kpa0.25 → 0.15
06:15min_fog_off_s72 → 42
06:15min_fog_on_s59.25 → 70.5
06:15mister_all_delay_s75 → 70.5
06:15mister_engage_delay_s37.5 → 35.25
06:15temp_hysteresis1.6 → 1.51
06:15vpd_watch_dwell_s52.5 → 48.75
08:30dwell_gate_ms195000 → 165000
08:30min_fog_off_s42 → 36
08:30min_fog_on_s70.5 → 72.75
08:30mister_all_delay_s70.5 → 61.5
08:30mister_engage_delay_s35.25 → 30.75
08:30temp_hysteresis1.51 → 1.33
08:30vpd_watch_dwell_s48.75 → 41.25
12:30dwell_gate_ms165000 → 150000
12:30mister_all_delay_s61.5 → 60
12:30mister_engage_delay_s30.75 → 30
12:30temp_hysteresis1.33 → 1.24
12:30vpd_watch_dwell_s41.25 → 37.5
17:30dwell_gate_ms150000 → 195000
17:30fog_escalation_kpa0.15 → 0.2
17:30min_fog_off_s36 → 48
17:30min_fog_on_s72.75 → 68.25
17:30mister_all_delay_s60 → 70.5
17:30mister_engage_delay_s30 → 35.25
17:30temp_hysteresis1.24 → 1.51
17:30vpd_watch_dwell_s37.5 → 48.75
21:30dwell_gate_ms195000 → 210000
21:30fog_escalation_kpa0.2 → 0.25
21:30min_fog_off_s48 → 72
21:30min_fog_on_s68.25 → 59.25
21:30mister_all_delay_s70.5 → 75
21:30mister_engage_delay_s35.25 → 37.5
21:30temp_hysteresis1.51 → 1.6
21:30vpd_watch_dwell_s48.75 → 52.5
05:30dwell_gate_ms210000 → 195000
05:30fog_escalation_kpa0.25 → 0.15
05:30min_fog_off_s72 → 42
05:30min_fog_on_s59.25 → 70.5
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
10:30dwell_gate_ms195000 → 150000
10:30min_fog_off_s42 → 36
10:30min_fog_on_s70.5 → 72.75
10:30mister_all_delay_s70.5 → 60
10:30mister_engage_delay_s35.25 → 30
10:30temp_hysteresis1.51 → 1.24
10:30vpd_watch_dwell_s48.75 → 37.5
17:30dwell_gate_ms150000 → 210000
17:30fog_escalation_kpa0.15 → 0.2
17:30min_fog_off_s36 → 54
17:30min_fog_on_s72.75 → 66
17:30mister_all_delay_s60 → 75
17:30mister_engage_delay_s30 → 37.5
17:30temp_hysteresis1.24 → 1.6
17:30vpd_watch_dwell_s37.5 → 52.5
05:30fog_escalation_kpa0.2 → 0.18
10:30dwell_gate_ms210000 → 180000
10:30fog_escalation_kpa0.18 → 0.15
10:30min_fog_off_s54 → 42
10:30min_fog_on_s66 → 70.5
10:30mister_all_delay_s75 → 66
10:30mister_engage_delay_s37.5 → 33
10:30temp_hysteresis1.6 → 1.42
10:30vpd_watch_dwell_s52.5 → 45
20:30direct_wet_stress_min_dew_margin_f8 → 10
20:30dwell_gate_ms180000 → 210000
20:30fog_escalation_kpa0.15 → 0.25
20:30min_fog_off_s42 → 72
20:30min_fog_on_s70.5 → 59.25
20:30mister_all_delay_s66 → 75
20:30mister_engage_delay_s33 → 37.5
20:30temp_hysteresis1.42 → 1.6
20:30vpd_watch_dwell_s45 → 52.5

🌅 Morning Cycle (5:50 AM) — iris-20260719-0548

Status

validated

Outcome score

4/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-20260718-2029

Previous hypothesis: SUNSET overnight plan for Saturday 2026-07-18. Today scored 66.4, slightly above the 7-day average 65.7, but VPD remained the bottleneck: temp compliance 50.0% vs VPD compliance 38.7%, with 11.23h VPD-high stress and 8.51h heat stress, no cold or VPD-low stress, and dew safety intact at dp_margin_min 8.8F / dp_risk_hours 0.0. Resource cost terms are unavailable, so I am reading water/wear instead: total water was 329 gal vs 345 gal 7-day average, while fog ran 6.34h and water-flow cycling was high. The completed midnight reset iris-20260718-0017 was evaluated at 5/10; plan_evaluate anchored it at 3 because 763 guardrail events and 735 held-by-guardrail events show it was a safe guardrail-shaped handoff rather than a clean recovery experiment. Current house is safe at 81.1F, VPD 1.10 kPa, RH 71%, dew margin 10.5F, IDLE, but east remains the dry outlier near 1… Result: Validated at MIDNIGHT using the scoped window scorecard for 2026-07-19. The forecast diagnosis was directionally right: outdoor temp peaked 98.7F versus 98F predicted, solar was even harsher at 1024 W/m2 versus 886 predicted, and the dominant stress types matched the hypothesis. Safety goals were met: 0.0h cold stress, 0.0h VPD-low stress, dp_margin_min_f 9.1F, and 0.0 dp-risk hours. The plan missed the recovery goal: the governed window scored 58.0 with temp compliance 38.4% and VPD compliance 28.9%, with 5.71h heat stress and 7.43h VPD-high stress. Daily score was 69.8, slightly above 7-day average, but water was high at 403 gal total and 196 gal misting-only, while VPD remained the bottleneck. Rationale grading: band-coupled mist/fog values preserved safety but did not overcome extreme solar/heat capacity limits; fog/mist assist acted as severity mitigation, not clean corridor recovery. The Monday-forward stress windows remain valid, but the previous values were repeatedly guardrail-shaped and should be requested through bounded ClimateIntent values that materialize cleanly instead of relying on correction. Score: 4/10

New finding: On extreme July hot-dry days with solar near or above 1000 W/m2 and outdoor highs near 100F, band-coupled mist/fog assist with fog escalation near 0.15 and short pulse gaps should be treated as severity mitigation unless the scoped window shows VPD compliance improvement; safety may hold while corridor recovery still fails, especially when guardrails materially reshape requested wet-assist values. → Added to Lessons Learned

Hypothesis

Testing: Guardrail-compatible extreme hot-dry severity mitigation: request wet/fog assist values directly inside bounded ClimateIntent and judge success by VPD-high hours below the recent 14h July baseline with dew-risk remaining zero. Expected outcome: Today should preserve dew safety at 0 dp-risk hours, avoid cold and VPD-low stress, and reduce VPD-high severity versus recent hot-dry baseline if fog/mist assist materializes; heat stress will likely remain structural around peak outdoor 98F.

Conditions

Outdoor peak

98.0°F

RH minimum

15.0%

Solar peak

886.0 W/m²

Cloud average

24.0%

extreme July hot-dry day; raw VPD forecast is positively biased but corrected priors and recent history still indicate severe VPD-high plus physics-limited heat stress; dew margin is currently safe

Expected stress windows

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

keep wet assist band-coupled near the VPD high edge, use all-zone escalation near +0.20 to +0.25 kPa, daylight fog escalation near 0.15 kPa, and keep resource sensitivity low while dew margin stays healthy

heathigh · 2026-07-19T10:30:00-06:00 to 2026-07-19T20:00:00-06:00

early thermal lead and solar precooling with vent/fan cooling plus vent-mist/fog assist; accept structural peak heat instead of chasing target-line errors

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

repeat compliance-first wet assist for Monday extreme heat, low resource sensitivity, no clock-only unwind before observed VPD recovery

vpd_lowmedium · 2026-07-21T22:00:00-06:00 to 2026-07-22T05:30:00-06:00

taper wet/fog intensity and raise dew margin caution as forecast shifts toward cloudy/humid overnight conditions

Parameter rationale

mister_engage_kpa1.27 → 1.27; live VPD is safe at dawn but forecast VPD exceeds 2 kPa by 09:00 and recent VPD compliance was only 36.6%

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

mister_all_kpa1.47 → 1.42; VPD-high dominated yesterday and planted east remains the dry-side zone while solar approaches 900 W/m2

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

fog_escalation_kpa0.25 → 0.15; the 07:00-17:00 fog window overlaps the dry ramp and dew margin is currently 12F

enable daylight vent-fog assist before severe VPD-high error accumulates

mister_pulse_gap_s41.25 → 22.0; forecast RH falls to 15-16% with solar near 886 W/m2 during peak heat

increase useful wet duty during VENTILATE without changing crop bands, then taper at night

mister_water_budget_gal300.0 → 300.0; Saturday water was 359 gal versus 345 gal average but VPD remained the limiting axis and dew risk was zero

avoid budget-limited recovery on a safe extreme dry day while conserving by evening taper rather than lowering the cap

direct_wet_stress_latest_hour21.0 → 22.0; VPD-high is forecast to persist after sunset and the prior 22:00 request did not materialize

permit bounded evening dry-edge recovery through 22:00 if dew margin remains above 8F and verify materialization

Setpoints

Sunday July 19

Primary crop-band changes:

TimeValuesNote
05:48hyst 0.1925Dawn is safe but forecast dry ramp starts early; pre-stage g
08:00hyst 0.1925Morning solar/VPD ramp begins; open band-coupled wet/fog sur
12:30hyst 0.1875Peak solar and hot-dry ventilation: compliance-first wet ass
16:30hyst 0.19749999999999998Solar is declining but outdoor air remains very dry/hot; kee
21:30hyst 0.2125Evening recovery window: keep bounded wetting available unti

Tactical tunable changes:

TimeValuesNote
05:48s2 1.5475; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 37.5; gap 30; wt 1.7333333333333334Dawn is safe but forecast dry ramp starts early; pre-stage g
08:00s2 1.4300000000000002; cool_exit 1.69; all_fans 1; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 41.25; gap 22.5; wt 1.8333333333333335Morning solar/VPD ramp begins; open band-coupled wet/fog sur
12:30s2 1.3275; cool_exit 1.6; all_fans 1; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 45; gap 18.75; wt 1.9Peak solar and hot-dry ventilation: compliance-first wet ass
16:30s2 1.5325; cool_exit 1.78; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 41.25; gap 26.25; wt 1.7999999999999998Solar is declining but outdoor air remains very dry/hot; kee
21:30s2 1.7675; cool_exit 2.05; all_fans 0; dw_stress 0; dw_until 22; engage 1.32; all 1.52; pulse 30; gap 41.25; wt 1.5666666666666669Evening recovery window: keep bounded wetting available unti

Monday July 20

Primary crop-band changes:

TimeValuesNote
05:30hyst 0.1925Monday is forecast hotter than Sunday; reopen compliance-fir
12:30hyst 0.1875Monday peak is near 101F with RH near 15%; maintain maximum

Tactical tunable changes:

TimeValuesNote
05:30s2 1.4300000000000002; cool_exit 1.69; all_fans 1; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 41.25; gap 22.5; wt 1.8333333333333335Monday is forecast hotter than Sunday; reopen compliance-fir
12:30s2 1.3275; cool_exit 1.6; all_fans 1; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 45; gap 18.75; wt 1.9Monday peak is near 101F with RH near 15%; maintain maximum

Tuesday July 21

Primary crop-band changes:

TimeValuesNote
20:30hyst 0.22249999999999998Late Tuesday forecast turns cloudier/humid with precipitatio

Tactical tunable changes:

TimeValuesNote
20:30s2 1.8625; cool_exit 2.23; all_fans 0; dw_stress 0; dw_until 20; engage 1.3699999999999999; all 1.5699999999999998; pulse 30; gap 52.5; wt 1.4133333333333333Late Tuesday forecast turns cloudier/humid with precipitatio

Changed secondary parameters:

TimeParameterChange
05:48band_track_fractioninitial 0
05:48cold_vent_guard_delta_finitial 8
05:48cool_stage2_exit_hysteresis_finitial 1
05:48direct_wet_stress_min_dew_margin_finitial 8
05:48direct_wet_stress_vpd_margin_kpainitial 0.05
05:48dwell_gate_msinitial 225000
05:48enthalpy_closeinitial 1
05:48enthalpy_openinitial -2
05:48fog_escalation_kpainitial 0.2
05:48heat_hysteresisinitial 1
05:48min_fog_off_sinitial 54
05:48min_fog_on_sinitial 66
05:48mist_backoff_sinitial 600
05:48mist_max_closed_vent_sinitial 600
05:48mist_thermal_relief_sinitial 90
05:48mister_all_delay_sinitial 79.5
05:48mister_engage_delay_sinitial 39.75
05:48mister_water_budget_galinitial 300
05:48night_vpd_bias_kpainitial 0
05:48outdoor_staleness_max_sinitial 600
05:48sw_dwell_gate_enabledinitial 1
05:48sw_fog_closes_ventinitial 1
05:48sw_mister_closes_ventinitial 0
05:48sw_summer_vent_enabledinitial 1
05:48temp_hysteresisinitial 1.69
05:48vent_exchange_fractioninitial 0.3
05:48vent_prefer_dp_delta_finitial 3
05:48vent_prefer_temp_delta_finitial 4
05:48vpd_watch_dwell_sinitial 56.25
08:00fog_escalation_kpa0.2 → 0.15
08:00min_fog_off_s54 → 42
08:00min_fog_on_s66 → 70.5
12:30dwell_gate_ms225000 → 210000
12:30min_fog_off_s42 → 36
12:30min_fog_on_s70.5 → 72.75
12:30mister_all_delay_s79.5 → 75
12:30mister_engage_delay_s39.75 → 37.5
12:30temp_hysteresis1.69 → 1.6
12:30vpd_watch_dwell_s56.25 → 52.5
16:30dwell_gate_ms210000 → 240000
16:30fog_escalation_kpa0.15 → 0.2
16:30min_fog_off_s36 → 48
16:30min_fog_on_s72.75 → 68.25
16:30mister_all_delay_s75 → 84
16:30mister_engage_delay_s37.5 → 42
16:30temp_hysteresis1.6 → 1.78
16:30vpd_watch_dwell_s52.5 → 60
21:30direct_wet_stress_vpd_margin_kpa0.05 → 0.1
21:30dwell_gate_ms240000 → 285000
21:30fog_escalation_kpa0.2 → 0.3
21:30min_fog_off_s48 → 72
21:30min_fog_on_s68.25 → 59.25
21:30mister_all_delay_s84 → 97.5
21:30mister_engage_delay_s42 → 48.75
21:30temp_hysteresis1.78 → 2.05
21:30vpd_watch_dwell_s60 → 71.25
05:30direct_wet_stress_vpd_margin_kpa0.1 → 0.05
05:30dwell_gate_ms285000 → 225000
05:30fog_escalation_kpa0.3 → 0.15
05:30min_fog_off_s72 → 42
05:30min_fog_on_s59.25 → 70.5
05:30mister_all_delay_s97.5 → 79.5
05:30mister_engage_delay_s48.75 → 39.75
05:30temp_hysteresis2.05 → 1.69
05:30vpd_watch_dwell_s71.25 → 56.25
12:30dwell_gate_ms225000 → 210000
12:30min_fog_off_s42 → 36
12:30min_fog_on_s70.5 → 72.75
12:30mister_all_delay_s79.5 → 75
12:30mister_engage_delay_s39.75 → 37.5
12:30temp_hysteresis1.69 → 1.6
12:30vpd_watch_dwell_s56.25 → 52.5
20:30direct_wet_stress_min_dew_margin_f8 → 10
20:30direct_wet_stress_vpd_margin_kpa0.05 → 0.15
20:30dwell_gate_ms210000 → 315000
20:30fog_escalation_kpa0.15 → 0.35
20:30min_fog_off_s36 → 90
20:30min_fog_on_s72.75 → 52.5
20:30mister_all_delay_s75 → 106.5
20:30mister_engage_delay_s37.5 → 53.25
20:30mister_water_budget_gal300 → 220
20:30temp_hysteresis1.6 → 2.23
20:30vpd_watch_dwell_s52.5 → 78.75

🌆 Evening Cycle (8:28 PM) — iris-20260719-2027

Status

validated

Outcome score

7/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-20260719-0548

Previous hypothesis: SUNRISE plan for Sunday 2026-07-19. Yesterday scored 65.6, essentially flat against the 7-day average 65.7, but remained dual-axis limited: VPD was the bottleneck at 36.6% compliance versus 47.4% temp compliance, with 14.13h VPD-high stress and 11.09h heat stress. Dew safety held at dp_margin_min_f 8.8F and 0.0 dp-risk hours, so the correct response is not moisture suppression. I evaluated the completed sunset plan iris-20260718-2029 at 4/10; plan_evaluate anchored it at 2 because 602 VPD-high guardrail events and 568 held-by-guardrail events show the plan was materially guardrail-shaped. The self-score is higher than the anchor only because the plan preserved safety, not because it recovered the corridor. Current state is safe and low-side: 70.5F, VPD 0.88 kPa, RH 66%, dew margin 12F, IDLE, all relays off. Today is forecast extreme hot/dry: 98F raw high, RH 15-16%, raw VPD up to 5… Result: Weekly review evaluation using the available scoped window row before superseding with the weekly plan. The plan governed about 0.160 day overnight and currently shows a strong scoped score/compliance of 95.9, with only about 0.15h heat stress and 0.17h VPD-high stress, 0.0h cold stress, 0.0h VPD-low stress, and dew safety preserved. This is a short overnight window, so it is not proof that the daytime wet/fog posture recovers the corridor; it does validate that tapering overnight did not create condensation or low-VPD overshoot before Monday’s severe ramp. Current partial Monday data remains dominated by upcoming forecast risk, so keep the lesson narrow. Score: 7/10

New finding: On warm dry overnight handoffs before an extreme hot-dry day, a tapered moisture posture can preserve dew safety and avoid VPD-low overshoot, but a short high-scoring overnight window should not be extrapolated to daytime corridor recovery. → Added to Lessons Learned

Hypothesis

Testing: Dew-safe sunset taper before extreme Monday: reduce overnight water/churn without losing east dry-edge recovery, then reopen band-coupled wet/fog assist before sunrise. Expected outcome: Overnight dew-risk remains 0h, VPD-low remains 0h, and Monday pre-ramp wet assist materializes without the large VPD-high guardrail held pattern seen in iris-20260719-0015.

Conditions

Outdoor peak

102.0°F

RH minimum

15.0%

Solar peak

885.0 W/m²

Cloud average

18.0%

warm dry evening with safe dew margin after VPD-high and heat dominated Sunday; Monday is forecast extreme hot-dry with raw VPD positively biased but corrected priors still severe

Expected stress windows

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

keep band-coupled wet assist available through the evening dry-edge recovery window while dew margin remains above 8F

vpd_highmedium · 2026-07-19T22:30:00-06:00 to 2026-07-20T05:30:00-06:00

taper duty and raise resource/churn caution overnight; humidity should hold better without solar, but raw outdoor VPD remains dry

vpd_highhigh · 2026-07-20T07:30:00-06:00 to 2026-07-20T20:30:00-06:00

reopen compliance-first wet assist before the ramp: engage near vpd_high+0.05, all-zone near +0.20 to +0.25, daylight fog escalation near 0.15, low resource sensitivity while dew margin is safe

heathigh · 2026-07-20T10:00:00-06:00 to 2026-07-20T20:00:00-06:00

use thermal lead and solar precooling, all-fans cooling posture, and vent-mist/fog assist; accept structural peak heat rather than chasing target-line errors

Parameter rationale

mister_engage_kpa1.0 → 1.27; current VPD is right at the 1.22 kPa high edge, east is near 1.50 kPa, and Monday raw VPD exceeds 2 kPa by 08:00

preserve dry-edge recovery tonight and keep S1 wet assist available near vpd_high+0.05 before Monday's ramp

mister_all_kpa1.21 → 1.47; zone VPD spread is about 0.7 kPa now and VPD-high was the dominant stress today at 11.76h

allow all-zone recovery when the dry edge is meaningful while tapering duty after solar is gone

mister_pulse_gap_s26.25 → 45.0; solar is absent overnight and water/relay cycling were high today

reduce low-value overnight churn while preserving a lower effective gap again at pre-dawn/morning ramp

fog_escalation_kpa0.2 → 0.15; Monday fog window overlaps 08:00-17:00 hot-dry ramp with dew margin currently 11.9F and dp-risk 0h

enable daylight vent-fog assist before severe VPD-high error accumulates

mister_water_budget_gal300.0 → 300.0; water is above the 7-day average but VPD remains the limiting axis and dew safety is intact

avoid budget-limited recovery during safe extreme dry stress while conserving overnight by duty posture rather than lowering the cap

Setpoints

Sunday July 19

Primary crop-band changes:

TimeValuesNote
20:25hyst 0.1875evening_settle: safe dew margin but east remains dry; keep b
22:30hyst 0.1875late_evening_taper: no solar and fog window closed; humidity

Tactical tunable changes:

TimeValuesNote
20:25s2 1.825; 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: safe dew margin but east remains dry; keep b
22:30s2 1.825; 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.7late_evening_taper: no solar and fog window closed; humidity

Monday July 20

Primary crop-band changes:

TimeValuesNote
00:30hyst 0.1875midnight_posture: avoid low-value mist/fog churn while outdo
05:30hyst 0.1875pre_dawn: Monday dry ramp starts early; reopen band-coupled
08:00hyst 0.1875morning_ramp_failsafe: if SUNRISE handoff is delayed, keep c

Tactical tunable changes:

TimeValuesNote
00:30s2 1.825; 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: avoid low-value mist/fog churn while outdo
05:30s2 1.615; 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: Monday dry ramp starts early; reopen band-coupled
08:00s2 1.5175; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 37.5; gap 30; wt 1.7333333333333334morning_ramp_failsafe: if SUNRISE handoff is delayed, keep c

Changed secondary parameters:

TimeParameterChange
20:25band_track_fractioninitial 0
20:25cold_vent_guard_delta_finitial 9
20:25cool_stage2_exit_hysteresis_finitial 1
20:25direct_wet_stress_min_dew_margin_finitial 8
20:25direct_wet_stress_vpd_margin_kpainitial 0.05
20:25dwell_gate_msinitial 210000
20:25enthalpy_closeinitial 1
20:25enthalpy_openinitial -2
20:25fog_escalation_kpainitial 0.25
20:25heat_hysteresisinitial 1
20:25min_fog_off_sinitial 72
20:25min_fog_on_sinitial 59.25
20:25mist_backoff_sinitial 600
20:25mist_max_closed_vent_sinitial 600
20:25mist_thermal_relief_sinitial 90
20:25mister_all_delay_sinitial 75
20:25mister_engage_delay_sinitial 37.5
20:25mister_water_budget_galinitial 300
20:25night_vpd_bias_kpainitial 0
20:25outdoor_staleness_max_sinitial 600
20:25sw_dwell_gate_enabledinitial 1
20:25sw_fog_closes_ventinitial 1
20:25sw_mister_closes_ventinitial 0
20:25sw_summer_vent_enabledinitial 1
20:25temp_hysteresisinitial 1.6
20:25vent_exchange_fractioninitial 0.3
20:25vent_prefer_dp_delta_finitial 4
20:25vent_prefer_temp_delta_finitial 5
20:25vpd_watch_dwell_sinitial 52.5
22:30direct_wet_stress_min_dew_margin_f8 → 9
05:30cold_vent_guard_delta_f9 → 8
05:30direct_wet_stress_min_dew_margin_f9 → 8
05:30fog_escalation_kpa0.25 → 0.18
05:30vent_prefer_dp_delta_f4 → 3
05:30vent_prefer_temp_delta_f5 → 4
08:00fog_escalation_kpa0.18 → 0.15
08:00min_fog_off_s72 → 54
08:00min_fog_on_s59.25 → 66

End-of-Day Summary

Climate

Temperature

70.5–89.4°F; avg 78.4°F

VPD

0.82–2.02 kPa; avg 1.24 kPa

Relative humidity

55.3–73.8%

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): 4.6h
  • VPD stress (>2.0 kPa): 10.3h
  • Cold stress (<55°F): 7.3h

Economics

Electric

USD —

Gas

USD 0.00

Water

USD 1.950

Total

USD —

Equipment Runtimes

EquipmentRuntimeReading
Fan 1850 minPrimary exhaust runtime.
Fan 2845 minSecondary exhaust runtime.
Vent922 minIntake vent runtime.
Fog441 minFogger runtime.
Heat 1 electric0 minElectric heater runtime.
Heat 2 gas0 minGas heater runtime.
Grow lights780 minSupplemental lighting runtime.
Mister south0.00hSouth mister runtime.
Mister west0.00hWest mister runtime.
Mister center2.01hCenter mister runtime.

Water

  • Total: 403 gal
  • Mister: 196 gal

Hourly Pattern

HourTemperatureVPDRH
12:0082.6°F1.28 kPa66.8%
13:0083.9°F1.39 kPa66.8%
14:0084.9°F1.43 kPa68.2%
15:0086.0°F1.51 kPa67.8%
16:0086.6°F1.68 kPa63.9%
17:0084.2°F1.43 kPa66.5%
18:0083.8°F1.40 kPa65.3%
19:0082.2°F1.23 kPa67.7%
20:0080.3°F1.17 kPa67.5%
21:0078.3°F1.25 kPa62.5%
22:0075.8°F1.23 kPa60.0%
23:0074.7°F1.22 kPa58.9%
00:0073.6°F1.17 kPa59.0%
01:0073.2°F1.19 kPa57.7%
02:0072.7°F1.18 kPa57.1%
03:0072.2°F1.19 kPa56.0%
04:0071.4°F1.14 kPa56.6%
05:0070.7°F1.00 kPa61.2%
06:0071.9°F0.85 kPa68.5%
07:0073.9°F0.89 kPa69.1%
08:0075.8°F0.97 kPa68.3%
09:0078.3°F1.09 kPa67.2%
10:0079.6°F1.11 kPa67.9%
11:0081.0°F1.16 kPa68.0%

7-Day Stress Context

DateHeatVPD highCold
2026-07-134.5h9.2h9.3h
2026-07-144.5h9.9h8.8h
2026-07-154.2h9.6h8.8h
2026-07-163.2h10.0h7.8h
2026-07-174.0h9.6h8.3h
2026-07-184.4h10.0h7.4h
2026-07-194.6h10.3h7.3h