July 15, 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.
6
3
2
0
| Event | Delivered | Type | Status | Note |
|---|---|---|---|---|
| End-of-day review and reset | 00:16 | MIDNIGHT | plan_written | Wrote public plan iris-20260715-0016. Resolved 00:18 MDT. |
| Morning planning cycle | 05:45 | SUNRISE | plan_written | Wrote public plan iris-20260715-0545. Resolved 05:47 MDT. |
| Solar peak planning checkpoint | 13:07 | SOLAR_MAX | action_completed | Delivery recorded without a public plan write. Resolved 13:08 MDT. |
| Peak Stress | 15:07 | TRANSITION | acked | Acknowledged: Peak-stress transition checked live climate, equipment, active plan, and setpoints. Conditions are stressful but tracking the active sunrise plan's expected hot-dry window: temp is only about 1°F over high edge, VPD is ~0.23 kPa over high with healthy 11.9°F dew margin, and the controller already has the intended peak posture available/active (vent + both fans + fog, fog_escalation_kpa 0.15, mister_engage_kpa 1.25 near vpd_high+0.05, mister_all_kpa 1... Resolved 15:07 MDT. |
| Decline | 19:30 | TRANSITION | acked | Acknowledged: Decline checkpoint: live house is tracking the active plan. Climate is safe and served on the house average (81.7F, VPD 1.01 kPa vs current high about 1.22, dew margin 9.4F), controller is IDLE, and all relays/misters/fog/vent are off. Existing plan already contains an evening taper waypoint at 21:30 (higher mist thresholds/gap and fog escalation), so no immediate tunable change is justified. Resolved 19:30 MDT. |
| Evening planning cycle | 20:30 | SUNSET | plan_written | Wrote public plan iris-20260715-2030. Resolved 20:32 MDT. |
🌅 Morning Cycle (12:18 AM) — iris-20260715-0016
validated
6/10
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-20260714-0545
Previous hypothesis: SUNRISE plan for Tuesday 2026-07-14. Yesterday’s daily scorecard endpoint is degraded by db_statement_timeout, and mandatory semantic retrieval is degraded because knowledge_search/lessons_search require OPENAI_API_KEY. I evaluated iris-20260713-0544 at 5/10, but plan_evaluate returned deterministic anchor 2 due 324 VPD-high guardrail events and 256 held-by-guardrail events; I accept the anchor as the stronger materialization warning. The forecast repeats an extreme clear hot-dry sequence: today 97F, RH 12-13%, solar 923 W/m2, raw VPD near 5.15 kPa, with corrected VPD still far above the Vanda/food corridor from late morning through evening. Current house is safe and in-band at about 69.3F, VPD 0.76 kPa, RH 69%, dew margin 10.6F, IDLE, all relays off… Result: MIDNIGHT reset governed the late-night/pre-dawn window before the SUNRISE plan replaced it. Window score was 66.4, with temp compliance 52.3%, VPD compliance 37.4%, heat stress 1.86h, VPD-high stress 2.67h, no cold stress, no VPD-low stress, and dew safety preserved (dp_margin_min 9.0F, dp_risk_hours 0.0). It correctly kept the house safe and preserved moisture assist for the coming dry ramp, but VPD remained the bottleneck and materialization remained guardrail-limited; this does not prove the full daylight hypothesis because the plan was superseded at sunrise. Score: 6/10
New finding: The late-night reset was safe but did not materially improve dry-edge VPD before sunrise; on repeated July hot-dry sequences, overnight plans should keep measured-recovery wet assist available while avoiding claims that pre-dawn posture alone can solve the next daylight VPD capacity limit. → Added to Lessons Learned
Hypothesis
Testing: Test whether a directly guardrail-compatible midnight-to-daylight wet-assist posture can reduce guardrail reshaping and preserve dew safety through another severe hot-dry ramp. Expected outcome: By sunrise, dew margin remains above 8F with no cold stress; through Wednesday, VPD-high remains the bottleneck but wet/fog assist stays materialized with fewer guardrail-held rows than 2026-07-14, no dp-risk hours, and no water-budget clipping of live VPD recovery.
Conditions
95.0°F
14.0%
903.0 W/m²
8.0%
another clear severe hot-dry July ramp after a guardrail-heavy VPD-high day; current average VPD is served but east zone remains dry-edge and dew margin is safe
Expected stress windows
guardrail-compatible band-coupled wet assist: engage near vpd_high+0.05, all-zone near +0.20 to +0.25, 35-40% duty, fog escalation 0.15 during 07:00-17:00 fog window, wet recovery until measured VPD returns inside band
45 min thermal lead, strong solar precool, all-fans VENTILATE wet assist; accept structural cooling misses near 95F
repeat band-coupled wet/fog assist for 94F/RH 15% Thursday with no clock taper while readings remain above band
early pre-cool and wet VENTILATE posture for hotter Friday; expect physics-limited heat stress and protect VPD/dew safety
Parameter rationale
keep S1 wet assist available near vpd_high+0.05 without relying on dispatcher guardrail correction
make all-zone rotation available near vpd_high+0.20 to +0.25 during hot-dry ventilation
trigger 7x fog assist earlier during safe daylight VPD-high windows
increase effective wet duty during peak VPD-high without changing crop bands
avoid clipping live VPD recovery while dew and occupancy rails are safe
Setpoints
Wednesday July 15
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 00:16 | hyst 0.1875 | post-midnight: house is safe with strong dew margin but east |
| 05:45 | hyst 0.1875 | sunrise ramp: restore compliance-first wet assist before sol |
| 08:30 | hyst 0.1825 | morning dry ramp: forecast VPD crosses band and solar rises; |
| 12:30 | hyst 0.1825 | peak hot-dry VENTILATE: heat is partly structural; preserve |
| 17:30 | hyst 0.1875 | evening recovery: keep wet assist open after fog window whil |
| 21:30 | hyst 0.1875 | late evening: modest churn/resource taper only after solar i |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 00:16 | s2 1.755; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 37.5; gap 33.75; wt 1.7000000000000002 | post-midnight: house is safe with strong dew margin but east |
| 05:45 | s2 1.585; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 41.25; gap 26.25; wt 1.7999999999999998 | sunrise ramp: restore compliance-first wet assist before sol |
| 08:30 | s2 1.5175; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 45; gap 22.5; wt 1.8666666666666667 | morning dry ramp: forecast VPD crosses band and solar rises; |
| 12:30 | s2 1.5175; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 46.5; gap 22.5; wt 1.88 | peak hot-dry VENTILATE: heat is partly structural; preserve |
| 17:30 | s2 1.6700000000000002; 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.7666666666666666 | evening recovery: keep wet assist open after fog window whil |
| 21:30 | s2 1.7875; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 36; gap 37.5; wt 1.7 | late evening: modest churn/resource taper only after solar i |
Thursday July 16
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | hyst 0.1875 | Thursday handoff: repeat pre-ramp posture for another clear |
| 12:30 | hyst 0.1825 | Thursday peak: maintain compliance-first wet/fog assist unde |
| 21:30 | hyst 0.1875 | Thursday evening: measured-recovery taper, not a hard clock |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | s2 1.565; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 41.25; gap 26.25; wt 1.7999999999999998 | Thursday handoff: repeat pre-ramp posture for another clear |
| 12:30 | s2 1.4975; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 46.5; gap 22.5; wt 1.88 | Thursday peak: maintain compliance-first wet/fog assist unde |
| 21:30 | s2 1.7675; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 36; gap 37.5; wt 1.7 | Thursday evening: measured-recovery taper, not a hard clock |
Friday July 17
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | hyst 0.1875 | Friday pre-ramp: hotter outlook near 99F requires early pre- |
| 12:30 | hyst 0.1825 | Friday peak: accept structural heat limits while protecting |
| 21:30 | hyst 0.1875 | Friday evening: protect recovery without unnecessary overnig |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | s2 1.5085; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 43.5; gap 24; wt 1.8399999999999999 | Friday pre-ramp: hotter outlook near 99F requires early pre- |
| 12:30 | s2 1.45; cool_exit 1.51; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 48.75; gap 22.5; wt 1.9 | Friday peak: accept structural heat limits while protecting |
| 21:30 | s2 1.7375; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 36; gap 37.5; wt 1.7 | Friday evening: protect recovery without unnecessary overnig |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 00:16 | band_track_fraction | initial 0 |
| 00:16 | cold_vent_guard_delta_f | initial 8 |
| 00:16 | cool_stage2_exit_hysteresis_f | initial 1 |
| 00:16 | direct_wet_stress_min_dew_margin_f | initial 8 |
| 00:16 | direct_wet_stress_vpd_margin_kpa | initial 0.05 |
| 00:16 | dwell_gate_ms | initial 210000 |
| 00:16 | enthalpy_close | initial 1 |
| 00:16 | enthalpy_open | initial -2 |
| 00:16 | fog_escalation_kpa | initial 0.2 |
| 00:16 | heat_hysteresis | initial 1 |
| 00:16 | min_fog_off_s | initial 60 |
| 00:16 | min_fog_on_s | initial 63.75 |
| 00:16 | mist_backoff_s | initial 600 |
| 00:16 | mist_max_closed_vent_s | initial 600 |
| 00:16 | mist_thermal_relief_s | initial 90 |
| 00:16 | mister_all_delay_s | initial 75 |
| 00:16 | mister_engage_delay_s | initial 37.5 |
| 00:16 | mister_water_budget_gal | initial 300 |
| 00:16 | night_vpd_bias_kpa | initial 0 |
| 00:16 | outdoor_staleness_max_s | initial 600 |
| 00:16 | sw_dwell_gate_enabled | initial 1 |
| 00:16 | sw_fog_closes_vent | initial 1 |
| 00:16 | sw_mister_closes_vent | initial 0 |
| 00:16 | sw_summer_vent_enabled | initial 1 |
| 00:16 | temp_hysteresis | initial 1.6 |
| 00:16 | vent_exchange_fraction | initial 0.3 |
| 00:16 | vent_prefer_dp_delta_f | initial 3 |
| 00:16 | vent_prefer_temp_delta_f | initial 4 |
| 00:16 | vpd_watch_dwell_s | initial 52.5 |
| 05:45 | cold_vent_guard_delta_f | 8 → 7 |
| 05:45 | fog_escalation_kpa | 0.2 → 0.15 |
| 05:45 | min_fog_off_s | 60 → 48 |
| 05:45 | min_fog_on_s | 63.75 → 68.25 |
| 05:45 | vent_prefer_temp_delta_f | 4 → 3 |
| 08:30 | dwell_gate_ms | 210000 → 195000 |
| 08:30 | min_fog_off_s | 48 → 42 |
| 08:30 | min_fog_on_s | 68.25 → 70.5 |
| 08:30 | mister_all_delay_s | 75 → 70.5 |
| 08:30 | mister_engage_delay_s | 37.5 → 35.25 |
| 08:30 | temp_hysteresis | 1.6 → 1.51 |
| 08:30 | vpd_watch_dwell_s | 52.5 → 48.75 |
| 17:30 | cold_vent_guard_delta_f | 7 → 8 |
| 17:30 | dwell_gate_ms | 195000 → 210000 |
| 17:30 | fog_escalation_kpa | 0.15 → 0.2 |
| 17:30 | min_fog_off_s | 42 → 54 |
| 17:30 | min_fog_on_s | 70.5 → 66 |
| 17:30 | mister_all_delay_s | 70.5 → 75 |
| 17:30 | mister_engage_delay_s | 35.25 → 37.5 |
| 17:30 | temp_hysteresis | 1.51 → 1.6 |
| 17:30 | vent_prefer_temp_delta_f | 3 → 4 |
| 17:30 | vpd_watch_dwell_s | 48.75 → 52.5 |
| 21:30 | fog_escalation_kpa | 0.2 → 0.25 |
| 21:30 | min_fog_off_s | 54 → 66 |
| 21:30 | min_fog_on_s | 66 → 61.5 |
| 05:45 | cold_vent_guard_delta_f | 8 → 7 |
| 05:45 | fog_escalation_kpa | 0.25 → 0.15 |
| 05:45 | min_fog_off_s | 66 → 48 |
| 05:45 | min_fog_on_s | 61.5 → 68.25 |
| 05:45 | vent_prefer_temp_delta_f | 4 → 3 |
| 12:30 | dwell_gate_ms | 210000 → 195000 |
| 12:30 | min_fog_off_s | 48 → 42 |
| 12:30 | min_fog_on_s | 68.25 → 70.5 |
| 12:30 | mister_all_delay_s | 75 → 70.5 |
| 12:30 | mister_engage_delay_s | 37.5 → 35.25 |
| 12:30 | temp_hysteresis | 1.6 → 1.51 |
| 12:30 | vpd_watch_dwell_s | 52.5 → 48.75 |
| 21:30 | cold_vent_guard_delta_f | 7 → 8 |
| 21:30 | dwell_gate_ms | 195000 → 210000 |
| 21:30 | fog_escalation_kpa | 0.15 → 0.25 |
| 21:30 | min_fog_off_s | 42 → 66 |
| 21:30 | min_fog_on_s | 70.5 → 61.5 |
| 21:30 | mister_all_delay_s | 70.5 → 75 |
| 21:30 | mister_engage_delay_s | 35.25 → 37.5 |
| 21:30 | temp_hysteresis | 1.51 → 1.6 |
| 21:30 | vent_prefer_temp_delta_f | 3 → 4 |
| 21:30 | vpd_watch_dwell_s | 48.75 → 52.5 |
| 05:45 | cold_vent_guard_delta_f | 8 → 7 |
| 05:45 | fog_escalation_kpa | 0.25 → 0.15 |
| 05:45 | min_fog_off_s | 66 → 44.4 |
| 05:45 | min_fog_on_s | 61.5 → 69.6 |
| 05:45 | vent_prefer_temp_delta_f | 4 → 3 |
| 12:30 | dwell_gate_ms | 210000 → 195000 |
| 12:30 | min_fog_off_s | 44.4 → 42 |
| 12:30 | min_fog_on_s | 69.6 → 70.5 |
| 12:30 | mister_all_delay_s | 75 → 70.5 |
| 12:30 | mister_engage_delay_s | 37.5 → 35.25 |
| 12:30 | temp_hysteresis | 1.6 → 1.51 |
| 12:30 | vpd_watch_dwell_s | 52.5 → 48.75 |
| 21:30 | cold_vent_guard_delta_f | 7 → 8 |
| 21:30 | dwell_gate_ms | 195000 → 210000 |
| 21:30 | fog_escalation_kpa | 0.15 → 0.25 |
| 21:30 | min_fog_off_s | 42 → 66 |
| 21:30 | min_fog_on_s | 70.5 → 61.5 |
| 21:30 | mister_all_delay_s | 70.5 → 75 |
| 21:30 | mister_engage_delay_s | 35.25 → 37.5 |
| 21:30 | temp_hysteresis | 1.51 → 1.6 |
| 21:30 | vent_prefer_temp_delta_f | 3 → 4 |
| 21:30 | vpd_watch_dwell_s | 48.75 → 52.5 |
🌅 Morning Cycle (5:47 AM) — iris-20260715-0545
validated
5/10
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-20260714-2030
Previous hypothesis: SUNSET 2026-07-14 overnight plan. Prior MIDNIGHT reset iris-20260714-0018 was evaluated 4/10 and matched deterministic anchor 4; 291 VPD-high guardrail events mean the plan was safe but only partially materialized, so this plan requests guardrail-compatible band-relative wet assist instead of relying on correction. Today scored 71.4 versus a 7-day average of 61.6, but VPD remained the limiting axis: temp compliance 51.1%, VPD compliance 38.3%, heat stress 8.43h, VPD-high stress 11.14h, no cold stress, and no dew risk (minimum dew margin 8.8F). Live house is safe and mostly served at about 79.7F, VPD 1.05 kPa, RH 70%, dew margin 10.7F, IDLE, but east remains dry-edge at 1.34 kPa and zone spread is large. Overnight challenge is not heating; it is finishing dry-edge recovery without wasting water or adding relay churn, then handing off to another severe hot-dry Wednesday ramp… Result: SUNRISE plan governed 61.5% of 2026-07-15 and correctly predicted the stress class: severe heat and VPD-high occurred, with actual outdoor temp near 95.4F and solar peaking 1053 W/m2 versus the 901 W/m2 plan prior. Safety goals were met: no cold stress, no VPD-low stress, dp_margin_min stayed 9.0F, and dp_risk_hours were 0. However the measurable compliance outcome was only partial: window score 55.2, temp compliance 41.2%, VPD compliance 29.5%, heat stress 5.28h, and VPD-high stress 7.23h while daily water remained high at 350 gal total / 143 gal mister water. Rationale grading: band-coupled mister/fog settings kept wet assist available and safe but did not produce VPD recovery into the corridor; fog escalation 0.15 was directionally correct, but capacity and guardrail/materialization limits dominated; extending evening wet recovery was safe but did not erase the dry-edge deficit. Overall: safe and correctly diagnosed, but optimistic about achievable VPD compliance under >1000 W/m2 solar and mid-90s heat. Score: 5/10
New finding: On repeated July hot-dry days where solar exceeds about 1000 W/m2 and outdoor highs reach the mid-90s, even guardrail-compatible band-coupled wet/fog assist can preserve dew safety but still leave VPD compliance near 30%. Frame plans around severity reduction and measured recovery, not full corridor recovery, and do not unwind wet assist until observed VPD is back inside band. → Added to Lessons Learned
Hypothesis
Testing: Test whether a fully guardrail-compatible sunrise plan, with aggressive daylight wet assist and 22:00 measured-recovery window, reduces held-by-guardrail events and improves VPD compliance versus 2026-07-14 without adding dew-risk hours. Expected outcome: Dew-risk hours remain 0, VPD-high stress improves from 13.96h toward under 12h despite 95F/900 W/m2 conditions, and guardrail held events fall relative to the 434-event sunset-plan anchor.
Conditions
95.0°F
13.0%
901.0 W/m²
0.0%
clear severe hot-dry July day after another guardrail-heavy VPD-high day; forecast VPD has known positive bias but corrected VPD remains above crop corridor from morning through evening
Expected stress windows
band-coupled wet assist: engage near vpd_high+0.05, all-zone near +0.20 to +0.25, mist duty 35-40%, fog escalation 0.15 during daylight fog window, wet recovery to 22:00 if dew margin holds
45-60 min thermal lead, strong solar precool, VENTILATE with wet/fog assist; accept structural cooling misses near 95F
repeat band-coupled wet/fog assist for another 93F/RH 15-17% clear day; no clock taper before measured recovery
full compliance-first wet assist for hotter 99F/RH 13% outlook; treat heat as physics-limited and protect dew margin
Parameter rationale
keep physical S1 wet assist available near vpd_high+0.05 without relying on dispatcher correction
keep all-zone rotation available near vpd_high+0.20 to +0.25 during hot-dry ventilation
reduce daylight VPD-high band error while dew margin stays above the 8F floor
increase wet duty during peak dry ventilation without changing crop bands
avoid budget-limited VPD recovery while dew and occupancy rails are healthy
permit bounded evening dry-edge recovery, then taper only after measured recovery and dew-margin safety
Setpoints
Wednesday July 15
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | hyst 0.20249999999999999 | Dawn handoff: house is safe and in band, but dry ramp begins |
| 07:30 | hyst 0.19749999999999998 | Morning ramp: clear skies and VPD rising through band; pre-s |
| 10:30 | hyst 0.1925 | Pre-peak stress: temp and VPD both forecast above band, dew |
| 14:00 | hyst 0.1925 | Peak heat/dry window: raw VPD 4.5+ kPa, RH below 20%, solar |
| 17:30 | hyst 0.20249999999999999 | Late decline: fog window ending but VPD remains high; keep w |
| 21:30 | hyst 0.2175 | Evening recovery: preserve bounded wetting until 22:00 for d |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | s2 1.725; cool_exit 1.87; all_fans 0; dw_stress 0; dw_until 22; engage 1.27; all 1.46; pulse 37.5; gap 41.25; wt 1.6333333333333333 | Dawn handoff: house is safe and in band, but dry ramp begins |
| 07:30 | s2 1.5985; cool_exit 1.78; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 41.25; gap 31.5; wt 1.7533333333333334 | Morning ramp: clear skies and VPD rising through band; pre-s |
| 10:30 | s2 1.516; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 45; gap 24; wt 1.8533333333333335 | Pre-peak stress: temp and VPD both forecast above band, dew |
| 14:00 | s2 1.51; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 45; gap 22.5; wt 1.8666666666666667 | Peak heat/dry window: raw VPD 4.5+ kPa, RH below 20%, solar |
| 17:30 | s2 1.6424999999999998; cool_exit 1.87; all_fans 0; dw_stress 1; dw_until 22; engage 1.28; all 1.46; pulse 41.25; gap 33.75; wt 1.7333333333333334 | Late decline: fog window ending but VPD remains high; keep w |
| 21:30 | s2 1.8425; cool_exit 2.14; all_fans 0; dw_stress 0; dw_until 22; engage 1.3; all 1.52; pulse 33.75; gap 48.75; wt 1.5333333333333332 | Evening recovery: preserve bounded wetting until 22:00 for d |
Thursday July 16
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | hyst 0.19749999999999998 | Thursday severe dry ramp repeat: reset to compliance-first d |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | s2 1.6275; cool_exit 1.78; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.44; pulse 41.25; gap 30; wt 1.7666666666666666 | Thursday severe dry ramp repeat: reset to compliance-first d |
Friday July 17
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | hyst 0.1925 | Friday outlook is hotter near 99F with RH near 13%; use peak |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 05:45 | s2 1.5275; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 45; gap 22.5; wt 1.8666666666666667 | Friday outlook is hotter near 99F with RH near 13%; use peak |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 05:45 | band_track_fraction | initial 0 |
| 05:45 | cold_vent_guard_delta_f | initial 8 |
| 05:45 | cool_stage2_exit_hysteresis_f | initial 1 |
| 05:45 | direct_wet_stress_min_dew_margin_f | initial 8 |
| 05:45 | direct_wet_stress_vpd_margin_kpa | initial 0.05 |
| 05:45 | dwell_gate_ms | initial 255000 |
| 05:45 | enthalpy_close | initial 1 |
| 05:45 | enthalpy_open | initial -2 |
| 05:45 | fog_escalation_kpa | initial 0.18 |
| 05:45 | heat_hysteresis | initial 1 |
| 05:45 | min_fog_off_s | initial 72 |
| 05:45 | min_fog_on_s | initial 59.25 |
| 05:45 | mist_backoff_s | initial 600 |
| 05:45 | mist_max_closed_vent_s | initial 600 |
| 05:45 | mist_thermal_relief_s | initial 90 |
| 05:45 | mister_all_delay_s | initial 88.5 |
| 05:45 | mister_engage_delay_s | initial 44.25 |
| 05:45 | mister_water_budget_gal | initial 300 |
| 05:45 | night_vpd_bias_kpa | initial 0 |
| 05:45 | outdoor_staleness_max_s | initial 600 |
| 05:45 | sw_dwell_gate_enabled | initial 1 |
| 05:45 | sw_fog_closes_vent | initial 1 |
| 05:45 | sw_mister_closes_vent | initial 0 |
| 05:45 | sw_summer_vent_enabled | initial 1 |
| 05:45 | temp_hysteresis | initial 1.87 |
| 05:45 | vent_exchange_fraction | initial 0.3 |
| 05:45 | vent_prefer_dp_delta_f | initial 3 |
| 05:45 | vent_prefer_temp_delta_f | initial 4 |
| 05:45 | vpd_watch_dwell_s | initial 63.75 |
| 07:30 | dwell_gate_ms | 255000 → 240000 |
| 07:30 | fog_escalation_kpa | 0.18 → 0.15 |
| 07:30 | min_fog_off_s | 72 → 56.4 |
| 07:30 | min_fog_on_s | 59.25 → 65.1 |
| 07:30 | mister_all_delay_s | 88.5 → 84 |
| 07:30 | mister_engage_delay_s | 44.25 → 42 |
| 07:30 | temp_hysteresis | 1.87 → 1.78 |
| 07:30 | vpd_watch_dwell_s | 63.75 → 60 |
| 10:30 | dwell_gate_ms | 240000 → 225000 |
| 10:30 | min_fog_off_s | 56.4 → 44.4 |
| 10:30 | min_fog_on_s | 65.1 → 69.6 |
| 10:30 | mister_all_delay_s | 84 → 79.5 |
| 10:30 | mister_engage_delay_s | 42 → 39.75 |
| 10:30 | temp_hysteresis | 1.78 → 1.69 |
| 10:30 | vpd_watch_dwell_s | 60 → 56.25 |
| 14:00 | min_fog_off_s | 44.4 → 42 |
| 14:00 | min_fog_on_s | 69.6 → 70.5 |
| 17:30 | direct_wet_stress_vpd_margin_kpa | 0.05 → 0.06 |
| 17:30 | dwell_gate_ms | 225000 → 255000 |
| 17:30 | fog_escalation_kpa | 0.15 → 0.2 |
| 17:30 | min_fog_off_s | 42 → 60 |
| 17:30 | min_fog_on_s | 70.5 → 63.75 |
| 17:30 | mister_all_delay_s | 79.5 → 88.5 |
| 17:30 | mister_engage_delay_s | 39.75 → 44.25 |
| 17:30 | temp_hysteresis | 1.69 → 1.87 |
| 17:30 | vpd_watch_dwell_s | 56.25 → 63.75 |
| 21:30 | direct_wet_stress_vpd_margin_kpa | 0.06 → 0.08 |
| 21:30 | dwell_gate_ms | 255000 → 300000 |
| 21:30 | fog_escalation_kpa | 0.2 → 0.3 |
| 21:30 | min_fog_off_s | 60 → 84 |
| 21:30 | min_fog_on_s | 63.75 → 54.75 |
| 21:30 | mister_all_delay_s | 88.5 → 102 |
| 21:30 | mister_engage_delay_s | 44.25 → 51 |
| 21:30 | temp_hysteresis | 1.87 → 2.14 |
| 21:30 | vpd_watch_dwell_s | 63.75 → 75 |
| 05:45 | direct_wet_stress_vpd_margin_kpa | 0.08 → 0.05 |
| 05:45 | dwell_gate_ms | 300000 → 240000 |
| 05:45 | fog_escalation_kpa | 0.3 → 0.15 |
| 05:45 | min_fog_off_s | 84 → 54 |
| 05:45 | min_fog_on_s | 54.75 → 66 |
| 05:45 | mister_all_delay_s | 102 → 84 |
| 05:45 | mister_engage_delay_s | 51 → 42 |
| 05:45 | temp_hysteresis | 2.14 → 1.78 |
| 05:45 | vpd_watch_dwell_s | 75 → 60 |
| 05:45 | dwell_gate_ms | 240000 → 225000 |
| 05:45 | min_fog_off_s | 54 → 42 |
| 05:45 | min_fog_on_s | 66 → 70.5 |
| 05:45 | mister_all_delay_s | 84 → 79.5 |
| 05:45 | mister_engage_delay_s | 42 → 39.75 |
| 05:45 | temp_hysteresis | 1.78 → 1.69 |
| 05:45 | vpd_watch_dwell_s | 60 → 56.25 |
🌆 Evening Cycle (8:32 PM) — iris-20260715-2030
validated
5/10
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: SUNSET overnight plan governed the late evening / pre-dawn handoff window into 2026-07-16. It was safe and directionally correct but only partially effective: scoped window score 60.3, temp compliance 42.6%, VPD compliance 30.7%, heat stress 0.48h, VPD-high stress 0.58h, no cold stress, no VPD-low stress, dp_margin_min stayed safe at 9.0F with 0.0 dp_risk_hours. The hypothesis that overnight challenge was dry-edge recovery and relay/water churn was right; the plan preserved wet assist while dew margin was safe and avoided disease risk. However VPD remained the bottleneck at sunrise and the explicit direct_wet_stress_latest_hour=22 posture did not stick in the current active setpoints, so the plan did not materially improve the next-day dry-edge baseline. Daily water was high at 350 gal total / 143 gal mister water versus 234 gal 7-day average total water; reliable cost/electric/gas terms were unavailable. Score: 5/10
New finding: On hot-dry July sequences, sunset/overnight recovery plans can safely preserve wet assist and dew margin, but they should be graded as partial success if VPD remains the sunrise bottleneck; do not claim overnight posture solved the next daylight VPD capacity limit unless measured VPD is back inside band by dawn. → Added to Lessons Learned
Hypothesis
Testing: Test whether a measured-recovery sunset taper can reduce overnight water/relay churn after 22:30 without adding VPD-low or dew-risk hours, while still handing off aggressive wet assist for Thursday morning. Expected outcome: By sunrise, dew-risk hours remain 0, VPD-low stress remains 0, VPD-high stress after 22:30 stays under 3h, and the controller reports fewer guardrail-held wet-assist rows than the prior night.
Conditions
85.0°F
23.0%
0.0 W/m²
35.0%
warm dry evening after a hot-dry VPD-high day; current house VPD is above band with safe dew margin around 13F, and Thursday ramps to severe heat/VPD again after sunrise
Expected stress windows
keep moisture engage near vpd_high+0.05 and all-zone near +0.25 while dew margin stays above 8F; allow bounded evening recovery before taper
wider overnight mist duty and higher resource sensitivity because humidity should hold better after solar is gone; keep dew floor 8F
morning handoff reopens band-coupled wet/fog assist before the severe dry ramp if SUNRISE is delayed
Parameter rationale
permit measured evening recovery instead of suppressing S1 wet assist while the house is still dry
keep all-zone rotation available near vpd_high+0.25 during recovery without relying on dispatcher correction
reduce low-value overnight water/relay churn after the measured recovery window while preserving wet assist if VPD remains above band
avoid implying aggressive overnight fog while preserving compliance-first morning fog posture
conserve slightly overnight without clipping morning/daylight VPD recovery if the severe ramp arrives
Setpoints
Wednesday July 15
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 20:30 | hyst 0.1875 | evening_settle: VPD remains above band and dew margin is saf |
| 22:30 | hyst 0.1875 | post_recovery_taper: after solar is gone, humidity should ho |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 20:30 | s2 1.855; 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.7 | evening_settle: VPD remains above band and dew margin is saf |
| 22:30 | s2 1.855; 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.7 | post_recovery_taper: after solar is gone, humidity should ho |
Thursday July 16
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 00:30 | hyst 0.1875 | midnight_posture: no heating threat and no dew risk; priorit |
| 05:30 | hyst 0.1875 | pre_dawn: begin moving back toward compliance-first wet assi |
| 07:30 | hyst 0.1875 | morning_handoff: if SUNRISE is delayed, Thursday’s clear hot |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 00:30 | s2 1.855; 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.7 | midnight_posture: no heating threat and no dew risk; priorit |
| 05:30 | s2 1.705; 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.7 | pre_dawn: begin moving back toward compliance-first wet assi |
| 07:30 | s2 1.5925; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.45; pulse 41.25; gap 37.5; wt 1.7 | morning_handoff: if SUNRISE is delayed, Thursday’s clear hot |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 20:30 | band_track_fraction | initial 0 |
| 20:30 | cold_vent_guard_delta_f | initial 8 |
| 20:30 | cool_stage2_exit_hysteresis_f | initial 1 |
| 20:30 | direct_wet_stress_min_dew_margin_f | initial 8 |
| 20:30 | direct_wet_stress_vpd_margin_kpa | initial 0.05 |
| 20:30 | dwell_gate_ms | initial 210000 |
| 20:30 | enthalpy_close | initial 1 |
| 20:30 | enthalpy_open | initial -2 |
| 20:30 | fog_escalation_kpa | initial 0.25 |
| 20:30 | heat_hysteresis | initial 1 |
| 20:30 | min_fog_off_s | initial 72 |
| 20:30 | min_fog_on_s | initial 59.25 |
| 20:30 | mist_backoff_s | initial 600 |
| 20:30 | mist_max_closed_vent_s | initial 600 |
| 20:30 | mist_thermal_relief_s | initial 90 |
| 20:30 | mister_all_delay_s | initial 75 |
| 20:30 | mister_engage_delay_s | initial 37.5 |
| 20:30 | mister_water_budget_gal | initial 300 |
| 20:30 | night_vpd_bias_kpa | initial 0 |
| 20:30 | outdoor_staleness_max_s | initial 600 |
| 20:30 | sw_dwell_gate_enabled | initial 1 |
| 20:30 | sw_fog_closes_vent | initial 1 |
| 20:30 | sw_mister_closes_vent | initial 0 |
| 20:30 | sw_summer_vent_enabled | initial 1 |
| 20:30 | temp_hysteresis | initial 1.6 |
| 20:30 | vent_exchange_fraction | initial 0.3 |
| 20:30 | vent_prefer_dp_delta_f | initial 3 |
| 20:30 | vent_prefer_temp_delta_f | initial 4 |
| 20:30 | vpd_watch_dwell_s | initial 52.5 |
| 22:30 | mister_water_budget_gal | 300 → 260 |
| 00:30 | mister_water_budget_gal | 260 → 250 |
| 05:30 | fog_escalation_kpa | 0.25 → 0.24 |
| 05:30 | mister_water_budget_gal | 250 → 300 |
| 07:30 | fog_escalation_kpa | 0.24 → 0.18 |
| 07:30 | min_fog_off_s | 72 → 66 |
| 07:30 | min_fog_on_s | 59.25 → 61.5 |
End-of-Day Summary
Climate
68.9–88.2°F; avg 77.2°F
0.81–1.88 kPa; avg 1.21 kPa
53.0–74.2%
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.2h
- VPD stress (>2.0 kPa): 9.6h
- Cold stress (<55°F): 8.8h
Economics
USD —
USD 0.00
USD 1.690
USD —
Equipment Runtimes
| Equipment | Runtime | Reading |
|---|---|---|
| Fan 1 | 667 min | Primary exhaust runtime. |
| Fan 2 | 667 min | Secondary exhaust runtime. |
| Vent | 782 min | Intake vent runtime. |
| Fog | 382 min | Fogger runtime. |
| Heat 1 electric | 0 min | Electric heater runtime. |
| Heat 2 gas | 0 min | Gas heater runtime. |
| Grow lights | 482 min | Supplemental lighting runtime. |
| Mister south | 0.00h | South mister runtime. |
| Mister west | 0.00h | West mister runtime. |
| Mister center | 1.98h | Center mister runtime. |
Water
- Total: 350 gal
- Mister: 143 gal
Hourly Pattern
| Hour | Temperature | VPD | RH |
|---|---|---|---|
| 12:00 | 82.4°F | 1.28 kPa | 66.5% |
| 13:00 | 83.8°F | 1.41 kPa | 66.1% |
| 14:00 | 85.1°F | 1.54 kPa | 64.8% |
| 15:00 | 86.9°F | 1.80 kPa | 60.5% |
| 16:00 | 88.6°F | 2.20 kPa | 52.9% |
| 17:00 | 85.9°F | 1.98 kPa | 53.8% |
| 18:00 | 83.5°F | 1.47 kPa | 62.8% |
| 19:00 | 82.1°F | 1.20 kPa | 68.2% |
| 20:00 | 80.5°F | 1.15 kPa | 67.9% |
| 21:00 | 78.2°F | 1.18 kPa | 64.3% |
| 22:00 | 76.1°F | 1.20 kPa | 61.0% |
| 23:00 | 74.1°F | 1.22 kPa | 58.0% |
| 00:00 | 72.6°F | 1.15 kPa | 58.4% |
| 01:00 | 71.6°F | 1.15 kPa | 56.8% |
| 02:00 | 70.9°F | 1.18 kPa | 54.5% |
| 03:00 | 69.9°F | 1.14 kPa | 54.5% |
| 04:00 | 69.0°F | 0.98 kPa | 59.5% |
| 05:00 | 69.1°F | 0.84 kPa | 65.5% |
| 06:00 | 70.3°F | 0.95 kPa | 62.6% |
| 07:00 | 72.1°F | 1.04 kPa | 61.8% |
| 08:00 | 73.7°F | 1.12 kPa | 60.5% |
| 09:00 | 75.8°F | 1.15 kPa | 62.5% |
| 10:00 | 78.2°F | 1.14 kPa | 65.7% |
| 11:00 | 80.6°F | 1.17 kPa | 67.7% |
7-Day Stress Context
| Date | Heat | VPD high | Cold |
|---|---|---|---|
| 2026-07-09 | 0.5h | 4.6h | 0.0h |
| 2026-07-10 | 2.4h | 3.8h | 1.0h |
| 2026-07-11 | 3.8h | 9.0h | 9.2h |
| 2026-07-12 | 5.1h | 10.3h | 8.2h |
| 2026-07-13 | 4.5h | 9.2h | 9.3h |
| 2026-07-14 | 4.5h | 9.9h | 8.8h |
| 2026-07-15 | 4.2h | 9.6h | 8.8h |