July 17, 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.
7
3
2
0
| Event | Delivered | Type | Status | Note |
|---|---|---|---|---|
| End-of-day review and reset | 00:16 | MIDNIGHT | plan_written | Wrote public plan iris-20260717-0016. Resolved 00:19 MDT. |
| Morning planning cycle | 05:47 | SUNRISE | plan_written | Wrote public plan iris-20260717-0547. Resolved 05:49 MDT. |
| Solar peak planning checkpoint | 13:08 | SOLAR_MAX | action_completed | Delivery recorded without a public plan write. Resolved 13:09 MDT. |
| Forecast deviation | 14:34 | FORECAST_DEVIATION | acked | Acknowledged: FORECAST_DEVIATION reviewed: solar drop was transient/short-lived and not a sustained regime change. Live climate is still hot-dry edge (85.7F, VPD 1.32 kPa, dp margin 11.2F) with VENTILATE + both fans + fog already active under the existing compliance-first plan. No tunable change needed; do not reduce wet assist until observed VPD recovers. Resolved 14:34 MDT. |
| Peak Stress | 15:08 | TRANSITION | action_completed | Delivery recorded without a public plan write. Resolved 15:09 MDT. |
| Decline | 19:29 | TRANSITION | acked | Acknowledged: Decline transition checked live climate, equipment, active plan, and setpoints. House is tracking the existing plan: avg VPD is near/in band at 1.20 kPa vs vpd_high 1.22, dew margin is safe at 12.1F, no equipment is currently running, and the active plan already has an evening taper waypoint at 21:30 to widen the wet posture. East remains a dry outlier, so there is no concrete VPD-low or over-wetting signal requiring an immediate tunable change. Resolved 19:29 MDT. |
| Evening planning cycle | 20:28 | SUNSET | plan_written | Wrote public plan iris-20260717-2028. Resolved 20:30 MDT. |
🌅 Morning Cycle (12:19 AM) — iris-20260717-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-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: Evaluated before Friday SUNSET replacement using the scoped window scorecard. The MIDNIGHT reset governed 00:19-05:49 MDT. The house remained dew-safe with no cold stress and no VPD-low stress; daily dp_margin_min was 9.0F with 0.0 dp_risk_hours. Within the scoped window, score was 68.6, temp compliance 51.3%, VPD compliance 36.8%, heat stress 1.86h and VPD-high stress 2.68h. The plan correctly preserved safety and avoided over-humidification, but it did not produce clean VPD recovery and the following day still became strongly VPD/heat limited. Guardrail/missed materialization context remains a warning, so treat this as a safe severity-reduction plan, not a clean parameter experiment. Score: 6/10
New finding: For repeated July hot-dry midnight resets, a safe pre-dawn posture can avoid dew/cold/VPD-low problems, but it should not be credited as VPD recovery unless the following morning/daylight ramp also shows reduced VPD-high severity and fewer guardrail/missed materializations. → Added to Lessons Learned
Hypothesis
Testing: Guardrail-compatible severe hot-dry sequence posture: compare whether explicitly using bounded ClimateIntent wet-assist excess values instead of raw threshold-like thinking reduces guardrail dependence while preserving dew-safe VPD severity reduction. Expected outcome: For the next sunrise review: dp_risk_hours remains 0 and dp_margin_min stays >=8F; no VPD-low or cold stress; Friday VPD-high and heat stress may remain high under physical limits, but VPD severity should improve during daylight fog/mist-assist windows and guardrail-held counts should not increase relative to the previous sunset plan.
Setpoints
Friday July 17
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 00:15 | hyst 0.2125 | Post-midnight stabilization: current VPD has recovered near |
| 05:30 | hyst 0.1925 | Pre-dawn handoff before forecast dry ramp: reopen band-coupl |
| 07:30 | hyst 0.1775 | Sunrise ramp: Friday forecast climbs quickly toward 95F/RH < |
| 12:00 | hyst 0.1725 | Peak Friday hot-dry window: keep wet/fog assist fully availa |
| 17:00 | hyst 0.1875 | Late-day recovery after fog window: keep mister assist avail |
| 21:30 | hyst 0.20249999999999999 | Evening dry-edge recovery: preserve bounded wetting until cu |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 00:15 | s2 1.8699999999999999; cool_exit 2.05; all_fans 0; dw_stress 0; dw_until 22; engage 1.3; all 1.52; pulse 30; gap 60; wt 1.5533333333333332 | Post-midnight stabilization: current VPD has recovered near |
| 05:30 | s2 1.6400000000000001; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 33.75; gap 37.5; wt 1.7999999999999998 | Pre-dawn handoff before forecast dry ramp: reopen band-coupl |
| 07:30 | s2 1.56; cool_exit 1.42; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 37.5; gap 26.25; wt 1.9333333333333331 | Sunrise ramp: Friday forecast climbs quickly toward 95F/RH < |
| 12:00 | s2 1.51; cool_exit 1.33; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 39; gap 22.5; wt 1.98 | Peak Friday hot-dry window: keep wet/fog assist fully availa |
| 17:00 | s2 1.6424999999999998; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 34.5; gap 33.75; wt 1.8399999999999999 | Late-day recovery after fog window: keep mister assist avail |
| 21:30 | s2 1.795; cool_exit 1.87; all_fans 0; dw_stress 1; dw_until 22; engage 1.28; all 1.47; pulse 31.5; gap 41.25; wt 1.7466666666666666 | Evening dry-edge recovery: preserve bounded wetting until cu |
Saturday July 18
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 05:30 | hyst 0.1775 | Saturday pre-ramp: forecast repeats severe hot-dry stress; s |
| 12:00 | hyst 0.1725 | Saturday peak: preserve maximum bounded wet/fog assist throu |
| 21:30 | hyst 0.20249999999999999 | Saturday evening recovery: maintain wet assist while outdoor |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 05:30 | s2 1.5410000000000001; cool_exit 1.42; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 37.5; gap 24; wt 1.9533333333333336 | Saturday pre-ramp: forecast repeats severe hot-dry stress; s |
| 12:00 | s2 1.5; cool_exit 1.33; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 39; gap 22.5; wt 1.98 | Saturday peak: preserve maximum bounded wet/fog assist throu |
| 21:30 | s2 1.785; cool_exit 1.87; all_fans 0; dw_stress 1; dw_until 22; engage 1.28; all 1.47; pulse 31.5; gap 41.25; wt 1.7466666666666666 | Saturday evening recovery: maintain wet assist while outdoor |
Sunday July 19
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 05:30 | hyst 0.16749999999999998 | Sunday extreme pre-ramp: forecast approaches 102F/RH under 1 |
| 12:00 | hyst 0.16749999999999998 | Sunday extreme peak: accept physics-limited heat while keepi |
| 20:30 | hyst 0.19749999999999998 | Sunday evening recovery after extreme heat: keep bounded wet |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 05:30 | s2 1.44; cool_exit 1.24; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 41.25; gap 18.75; wt 2.033333333333333 | Sunday extreme pre-ramp: forecast approaches 102F/RH under 1 |
| 12:00 | s2 1.44; cool_exit 1.24; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 41.25; gap 18.75; wt 2.033333333333333 | Sunday extreme peak: accept physics-limited heat while keepi |
| 20:30 | s2 1.7275; cool_exit 1.78; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 33.75; gap 33.75; wt 1.8333333333333335 | Sunday evening recovery after extreme heat: keep bounded wet |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 00:15 | band_track_fraction | initial 0 |
| 00:15 | cold_vent_guard_delta_f | initial 8 |
| 00:15 | cool_stage2_exit_hysteresis_f | initial 1 |
| 00:15 | direct_wet_stress_min_dew_margin_f | initial 8 |
| 00:15 | direct_wet_stress_vpd_margin_kpa | initial 0.08 |
| 00:15 | dwell_gate_ms | initial 285000 |
| 00:15 | enthalpy_close | initial 1 |
| 00:15 | enthalpy_open | initial -2 |
| 00:15 | fog_escalation_kpa | initial 0.3 |
| 00:15 | heat_hysteresis | initial 1 |
| 00:15 | min_fog_off_s | initial 102 |
| 00:15 | min_fog_on_s | initial 48 |
| 00:15 | mist_backoff_s | initial 600 |
| 00:15 | mist_max_closed_vent_s | initial 600 |
| 00:15 | mist_thermal_relief_s | initial 90 |
| 00:15 | mister_all_delay_s | initial 97.5 |
| 00:15 | mister_engage_delay_s | initial 48.75 |
| 00:15 | mister_water_budget_gal | initial 260 |
| 00:15 | night_vpd_bias_kpa | initial 0 |
| 00:15 | outdoor_staleness_max_s | initial 600 |
| 00:15 | sw_dwell_gate_enabled | initial 1 |
| 00:15 | sw_fog_closes_vent | initial 1 |
| 00:15 | sw_mister_closes_vent | initial 0 |
| 00:15 | sw_summer_vent_enabled | initial 1 |
| 00:15 | temp_hysteresis | initial 2.05 |
| 00:15 | vent_exchange_fraction | initial 0.3 |
| 00:15 | vent_prefer_dp_delta_f | initial 3 |
| 00:15 | vent_prefer_temp_delta_f | initial 4 |
| 00:15 | vpd_watch_dwell_s | initial 71.25 |
| 05:30 | direct_wet_stress_vpd_margin_kpa | 0.08 → 0.05 |
| 05:30 | dwell_gate_ms | 285000 → 225000 |
| 05:30 | fog_escalation_kpa | 0.3 → 0.2 |
| 05:30 | min_fog_off_s | 102 → 66 |
| 05:30 | min_fog_on_s | 48 → 61.5 |
| 05:30 | mister_all_delay_s | 97.5 → 79.5 |
| 05:30 | mister_engage_delay_s | 48.75 → 39.75 |
| 05:30 | mister_water_budget_gal | 260 → 300 |
| 05:30 | temp_hysteresis | 2.05 → 1.69 |
| 05:30 | vpd_watch_dwell_s | 71.25 → 56.25 |
| 07:30 | dwell_gate_ms | 225000 → 180000 |
| 07:30 | fog_escalation_kpa | 0.2 → 0.15 |
| 07:30 | min_fog_off_s | 66 → 48 |
| 07:30 | min_fog_on_s | 61.5 → 68.25 |
| 07:30 | mister_all_delay_s | 79.5 → 66 |
| 07:30 | mister_engage_delay_s | 39.75 → 33 |
| 07:30 | temp_hysteresis | 1.69 → 1.42 |
| 07:30 | vpd_watch_dwell_s | 56.25 → 45 |
| 12:00 | dwell_gate_ms | 180000 → 165000 |
| 12:00 | min_fog_off_s | 48 → 42 |
| 12:00 | min_fog_on_s | 68.25 → 70.5 |
| 12:00 | mister_all_delay_s | 66 → 61.5 |
| 12:00 | mister_engage_delay_s | 33 → 30.75 |
| 12:00 | temp_hysteresis | 1.42 → 1.33 |
| 12:00 | vpd_watch_dwell_s | 45 → 41.25 |
| 17:00 | dwell_gate_ms | 165000 → 210000 |
| 17:00 | fog_escalation_kpa | 0.15 → 0.2 |
| 17:00 | min_fog_off_s | 42 → 60 |
| 17:00 | min_fog_on_s | 70.5 → 63.75 |
| 17:00 | mister_all_delay_s | 61.5 → 75 |
| 17:00 | mister_engage_delay_s | 30.75 → 37.5 |
| 17:00 | temp_hysteresis | 1.33 → 1.6 |
| 17:00 | vpd_watch_dwell_s | 41.25 → 52.5 |
| 21:30 | direct_wet_stress_vpd_margin_kpa | 0.05 → 0.06 |
| 21:30 | dwell_gate_ms | 210000 → 255000 |
| 21:30 | fog_escalation_kpa | 0.2 → 0.3 |
| 21:30 | min_fog_off_s | 60 → 72 |
| 21:30 | min_fog_on_s | 63.75 → 59.25 |
| 21:30 | mister_all_delay_s | 75 → 88.5 |
| 21:30 | mister_engage_delay_s | 37.5 → 44.25 |
| 21:30 | mister_water_budget_gal | 300 → 290 |
| 21:30 | temp_hysteresis | 1.6 → 1.87 |
| 21:30 | vpd_watch_dwell_s | 52.5 → 63.75 |
| 05:30 | direct_wet_stress_vpd_margin_kpa | 0.06 → 0.05 |
| 05:30 | dwell_gate_ms | 255000 → 180000 |
| 05:30 | fog_escalation_kpa | 0.3 → 0.15 |
| 05:30 | min_fog_off_s | 72 → 44.4 |
| 05:30 | min_fog_on_s | 59.25 → 69.6 |
| 05:30 | mister_all_delay_s | 88.5 → 66 |
| 05:30 | mister_engage_delay_s | 44.25 → 33 |
| 05:30 | mister_water_budget_gal | 290 → 300 |
| 05:30 | temp_hysteresis | 1.87 → 1.42 |
| 05:30 | vpd_watch_dwell_s | 63.75 → 45 |
| 12:00 | dwell_gate_ms | 180000 → 165000 |
| 12:00 | min_fog_off_s | 44.4 → 42 |
| 12:00 | min_fog_on_s | 69.6 → 70.5 |
| 12:00 | mister_all_delay_s | 66 → 61.5 |
| 12:00 | mister_engage_delay_s | 33 → 30.75 |
| 12:00 | temp_hysteresis | 1.42 → 1.33 |
| 12:00 | vpd_watch_dwell_s | 45 → 41.25 |
| 21:30 | direct_wet_stress_vpd_margin_kpa | 0.05 → 0.06 |
| 21:30 | dwell_gate_ms | 165000 → 255000 |
| 21:30 | fog_escalation_kpa | 0.15 → 0.3 |
| 21:30 | min_fog_off_s | 42 → 72 |
| 21:30 | min_fog_on_s | 70.5 → 59.25 |
| 21:30 | mister_all_delay_s | 61.5 → 88.5 |
| 21:30 | mister_engage_delay_s | 30.75 → 44.25 |
| 21:30 | mister_water_budget_gal | 300 → 290 |
| 21:30 | temp_hysteresis | 1.33 → 1.87 |
| 21:30 | vpd_watch_dwell_s | 41.25 → 63.75 |
| 05:30 | direct_wet_stress_vpd_margin_kpa | 0.06 → 0.05 |
| 05:30 | dwell_gate_ms | 255000 → 150000 |
| 05:30 | fog_escalation_kpa | 0.3 → 0.15 |
| 05:30 | min_fog_off_s | 72 → 36 |
| 05:30 | min_fog_on_s | 59.25 → 72.75 |
| 05:30 | mister_all_delay_s | 88.5 → 60 |
| 05:30 | mister_engage_delay_s | 44.25 → 30 |
| 05:30 | mister_water_budget_gal | 290 → 300 |
| 05:30 | temp_hysteresis | 1.87 → 1.24 |
| 05:30 | vpd_watch_dwell_s | 63.75 → 37.5 |
| 20:30 | dwell_gate_ms | 150000 → 240000 |
| 20:30 | fog_escalation_kpa | 0.15 → 0.3 |
| 20:30 | min_fog_off_s | 36 → 60 |
| 20:30 | min_fog_on_s | 72.75 → 63.75 |
| 20:30 | mister_all_delay_s | 60 → 84 |
| 20:30 | mister_engage_delay_s | 30 → 42 |
| 20:30 | temp_hysteresis | 1.24 → 1.78 |
| 20:30 | vpd_watch_dwell_s | 37.5 → 60 |
🌅 Morning Cycle (5:49 AM) — iris-20260717-0547
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-20260716-2029
Previous hypothesis: SUNSET overnight plan for Thursday 2026-07-16. Today was safe but still VPD-limited: scorecard 63.5, temp compliance 52.2%, VPD compliance 38.1%, 8.04h heat stress and 11.36h VPD-high stress, no cold/VPD-low stress, dp_margin_min 8.4F and 0 dp_risk_hours. Live at sunset remains warm and dry-edge: about 81.6F, VPD 1.54 kPa, RH 59%, dew margin 15.7F, VENTILATE; east is the dry outlier near 1.82 kPa. The prior SUNRISE plan is scored 5/10 by me because it was safe and directionally correct, but deterministic anchor is 2 due 952 VPD-high guardrail events and 861 held-by-guardrail events; I accept the anchor warning and treat the plan as severity reduction rather than corridor recovery. Retrieval was attempted as required, but knowledge_search and lessons_search are degraded because OPENAI_API_KEY is missing; static site context and plan coverage validation are also degraded… Result: Validated at 2026-07-18 MIDNIGHT using the scoped window scorecard for the period governed by iris-20260717-0547. Forecast conditions matched directionally: outdoor peak was 94F vs 95F predicted, solar reached 1055 W/m2 vs 890 predicted, and the day was clear/hot/dry. The predicted high VPD-high and heat windows were correct, but mitigation only achieved severity reduction, not corridor recovery: scoped score 55.7, temp compliance 40.1%, VPD compliance 29.1%, heat stress 5.43h, VPD-high stress 7.38h, no cold or VPD-low stress. Dew safety held with no dp-risk signal. Rationale grading: band-coupled wet assist and 0.15 fog escalation were appropriate and safe, but did not overcome structural solar/heat load; all-zone misting remained guardrail-shaped; 24s pulse gap increased wet duty but did not restore VPD compliance; 300 gal budget avoided clipping but water reached about 350 gal for the day. Overall: correct diagnosis and safety, missed compliance goals under stronger-than-forecast solar and physics-limited hot-dry load. Score: 5/10
New finding: On clear July days with solar above forecast near or above 1000 W/m2, band-coupled wet assist and 0.15 fog escalation can preserve dew safety and reduce severity but should not be expected to recover VPD corridor compliance; score these as structural heat/VPD mitigation unless VPD-high hours materially drop below the prior 7-day baseline. → Added to Lessons Learned
Hypothesis
Testing: Guardrail-compatible severe hot-dry sequence posture: use bounded ClimateIntent wet-assist excess values and compare guardrail events, dew safety, and VPD-high severity against 2026-07-16. Expected outcome: Maintain dp_risk_hours at 0 and dp_margin_min above 8F; keep VPD-high stress severity from worsening despite 95F/RH15% forecast; reduce guardrail dependence versus the 952-event Thursday sunrise plan, while accepting continued physics-limited heat stress.
Conditions
95.0°F
15.0%
890.0 W/m²
4.0%
severe clear hot-dry July day; forecast VPD is positively biased but corrected priors still exceed the crop corridor from midmorning through evening; Saturday stays severe and Sunday becomes extreme
Expected stress windows
keep wet assist band-coupled: engage near vpd_high+0.05, all-zone near +0.20 to +0.25, daylight fog escalation 0.15, wet recovery until observed VPD recovers and dew margin remains above 8F
early thermal lead and solar pre-cool; accept physics-limited peak heat while preserving vent-mist/fog assist
repeat compliance-first wet assist for another 96F/RH 13-15% day; taper only after measured evening recovery
maximum bounded wet/fog-assist posture for 100F+ forecast while preserving dew and occupancy rails
Parameter rationale
keep S1 wet assist available near vpd_high+0.05 without asking the dispatcher to rewrite unsafe raw thresholds
keep all-zone rotation available near vpd_high+0.20 to +0.25 during hot-dry ventilation
increase daylight vent-fog assist and reduce VPD-high severity while dew margin stays above 8F
increase useful wet duty during peak dry ventilation without changing crop bands
avoid budget-limited VPD recovery under safe VPD-high stress; conserve only after measured evening recovery
Setpoints
Friday July 17
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 05:47 | hyst 0.19749999999999998 | Dawn safe handoff: IDLE around 69.8F/VPD 0.86 with 12F dew m |
| 08:00 | hyst 0.1925 | Morning dry ramp: outdoor RH falls through the 40s toward 20 |
| 12:00 | hyst 0.1925 | Peak stress posture: forecast 90-95F, RH 15-25%, solar 740-8 |
| 17:00 | hyst 0.19749999999999998 | Late-day decline: solar falls but air remains 90F+ and dry; |
| 21:30 | hyst 0.20749999999999996 | Evening recovery/taper: fog window is closed and solar is go |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 05:47 | s2 1.6199999999999999; cool_exit 1.78; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 36; gap 26.25; wt 1.7533333333333334 | Dawn safe handoff: IDLE around 69.8F/VPD 0.86 with 12F dew m |
| 08:00 | s2 1.5875; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 39; gap 22.5; wt 1.8133333333333335 | Morning dry ramp: outdoor RH falls through the 40s toward 20 |
| 12:00 | s2 1.57; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 41.25; gap 22.5; wt 1.8333333333333335 | Peak stress posture: forecast 90-95F, RH 15-25%, solar 740-8 |
| 17:00 | s2 1.635; cool_exit 1.78; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.47; pulse 37.5; gap 30; wt 1.7333333333333334 | Late-day decline: solar falls but air remains 90F+ and dry; |
| 21:30 | s2 1.7325; cool_exit 1.96; all_fans 0; dw_stress 0; dw_until 22; engage 1.3; all 1.52; pulse 31.5; gap 41.25; wt 1.58 | Evening recovery/taper: fog window is closed and solar is go |
Saturday July 18
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 08:00 | hyst 0.1925 | Saturday severe repeat: 95-96F, RH 13-15%, solar near 900 W/ |
| 20:30 | hyst 0.20749999999999996 | Saturday evening recovery: keep dry-edge recovery available |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 08:00 | s2 1.56; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 41.25; gap 22.5; wt 1.8333333333333335 | Saturday severe repeat: 95-96F, RH 13-15%, solar near 900 W/ |
| 20:30 | s2 1.7225; cool_exit 1.96; all_fans 0; dw_stress 0; dw_until 22; engage 1.3; all 1.52; pulse 33; gap 41.25; wt 1.5933333333333333 | Saturday evening recovery: keep dry-edge recovery available |
Sunday July 19
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 07:30 | hyst 0.1925 | Sunday extreme handoff: forecast 100F+ with RH below 12%; us |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 07:30 | s2 1.5165; cool_exit 1.69; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 43.5; gap 21; wt 1.8666666666666667 | Sunday extreme handoff: forecast 100F+ with RH below 12%; us |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 05:47 | band_track_fraction | initial 0 |
| 05:47 | cold_vent_guard_delta_f | initial 8 |
| 05:47 | cool_stage2_exit_hysteresis_f | initial 1 |
| 05:47 | direct_wet_stress_min_dew_margin_f | initial 8 |
| 05:47 | direct_wet_stress_vpd_margin_kpa | initial 0.05 |
| 05:47 | dwell_gate_ms | initial 240000 |
| 05:47 | enthalpy_close | initial 1 |
| 05:47 | enthalpy_open | initial -2 |
| 05:47 | fog_escalation_kpa | initial 0.2 |
| 05:47 | heat_hysteresis | initial 1 |
| 05:47 | min_fog_off_s | initial 48 |
| 05:47 | min_fog_on_s | initial 68.25 |
| 05:47 | mist_backoff_s | initial 600 |
| 05:47 | mist_max_closed_vent_s | initial 600 |
| 05:47 | mist_thermal_relief_s | initial 90 |
| 05:47 | mister_all_delay_s | initial 84 |
| 05:47 | mister_engage_delay_s | initial 42 |
| 05:47 | mister_water_budget_gal | initial 300 |
| 05:47 | night_vpd_bias_kpa | initial 0 |
| 05:47 | outdoor_staleness_max_s | initial 600 |
| 05:47 | sw_dwell_gate_enabled | initial 1 |
| 05:47 | sw_fog_closes_vent | initial 1 |
| 05:47 | sw_mister_closes_vent | initial 0 |
| 05:47 | sw_summer_vent_enabled | initial 1 |
| 05:47 | temp_hysteresis | initial 1.78 |
| 05:47 | vent_exchange_fraction | initial 0.3 |
| 05:47 | vent_prefer_dp_delta_f | initial 3 |
| 05:47 | vent_prefer_temp_delta_f | initial 4 |
| 05:47 | vpd_watch_dwell_s | initial 60 |
| 08:00 | dwell_gate_ms | 240000 → 225000 |
| 08:00 | fog_escalation_kpa | 0.2 → 0.15 |
| 08:00 | min_fog_off_s | 48 → 42 |
| 08:00 | min_fog_on_s | 68.25 → 70.5 |
| 08:00 | mister_all_delay_s | 84 → 79.5 |
| 08:00 | mister_engage_delay_s | 42 → 39.75 |
| 08:00 | temp_hysteresis | 1.78 → 1.69 |
| 08:00 | vpd_watch_dwell_s | 60 → 56.25 |
| 12:00 | cold_vent_guard_delta_f | 8 → 9 |
| 12:00 | vent_prefer_temp_delta_f | 4 → 5 |
| 17:00 | cold_vent_guard_delta_f | 9 → 8 |
| 17:00 | dwell_gate_ms | 225000 → 240000 |
| 17:00 | fog_escalation_kpa | 0.15 → 0.2 |
| 17:00 | min_fog_off_s | 42 → 54 |
| 17:00 | min_fog_on_s | 70.5 → 66 |
| 17:00 | mister_all_delay_s | 79.5 → 84 |
| 17:00 | mister_engage_delay_s | 39.75 → 42 |
| 17:00 | temp_hysteresis | 1.69 → 1.78 |
| 17:00 | vent_prefer_temp_delta_f | 5 → 4 |
| 17:00 | vpd_watch_dwell_s | 56.25 → 60 |
| 21:30 | direct_wet_stress_vpd_margin_kpa | 0.05 → 0.08 |
| 21:30 | dwell_gate_ms | 240000 → 270000 |
| 21:30 | fog_escalation_kpa | 0.2 → 0.3 |
| 21:30 | min_fog_off_s | 54 → 72 |
| 21:30 | min_fog_on_s | 66 → 59.25 |
| 21:30 | mister_all_delay_s | 84 → 93 |
| 21:30 | mister_engage_delay_s | 42 → 46.5 |
| 21:30 | mister_water_budget_gal | 300 → 280 |
| 21:30 | temp_hysteresis | 1.78 → 1.96 |
| 21:30 | vpd_watch_dwell_s | 60 → 67.5 |
| 08:00 | cold_vent_guard_delta_f | 8 → 9 |
| 08:00 | direct_wet_stress_vpd_margin_kpa | 0.08 → 0.05 |
| 08:00 | dwell_gate_ms | 270000 → 225000 |
| 08:00 | fog_escalation_kpa | 0.3 → 0.15 |
| 08:00 | min_fog_off_s | 72 → 42 |
| 08:00 | min_fog_on_s | 59.25 → 70.5 |
| 08:00 | mister_all_delay_s | 93 → 79.5 |
| 08:00 | mister_engage_delay_s | 46.5 → 39.75 |
| 08:00 | mister_water_budget_gal | 280 → 300 |
| 08:00 | temp_hysteresis | 1.96 → 1.69 |
| 08:00 | vent_prefer_temp_delta_f | 4 → 5 |
| 08:00 | vpd_watch_dwell_s | 67.5 → 56.25 |
| 20:30 | cold_vent_guard_delta_f | 9 → 8 |
| 20:30 | direct_wet_stress_vpd_margin_kpa | 0.05 → 0.08 |
| 20:30 | dwell_gate_ms | 225000 → 270000 |
| 20:30 | fog_escalation_kpa | 0.15 → 0.3 |
| 20:30 | min_fog_off_s | 42 → 72 |
| 20:30 | min_fog_on_s | 70.5 → 59.25 |
| 20:30 | mister_all_delay_s | 79.5 → 93 |
| 20:30 | mister_engage_delay_s | 39.75 → 46.5 |
| 20:30 | mister_water_budget_gal | 300 → 280 |
| 20:30 | temp_hysteresis | 1.69 → 1.96 |
| 20:30 | vent_prefer_temp_delta_f | 5 → 4 |
| 20:30 | vpd_watch_dwell_s | 56.25 → 67.5 |
| 07:30 | cold_vent_guard_delta_f | 8 → 9 |
| 07:30 | direct_wet_stress_vpd_margin_kpa | 0.08 → 0.05 |
| 07:30 | dwell_gate_ms | 270000 → 225000 |
| 07:30 | fog_escalation_kpa | 0.3 → 0.15 |
| 07:30 | min_fog_off_s | 72 → 39.6 |
| 07:30 | min_fog_on_s | 59.25 → 71.4 |
| 07:30 | mister_all_delay_s | 93 → 79.5 |
| 07:30 | mister_engage_delay_s | 46.5 → 39.75 |
| 07:30 | mister_water_budget_gal | 280 → 300 |
| 07:30 | temp_hysteresis | 1.96 → 1.69 |
| 07:30 | vent_prefer_temp_delta_f | 4 → 5 |
| 07:30 | vpd_watch_dwell_s | 67.5 → 56.25 |
🌆 Evening Cycle (8:30 PM) — iris-20260717-2028
validated
4/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-20260717-0547
Previous hypothesis: SUNRISE plan for Friday 2026-07-17. Yesterday was safe but not recovered: score 63.6, VPD compliance 35.9% vs temp compliance 49.1%, 14.30h VPD-high stress and 10.64h heat stress, no cold/VPD-low stress, dp_margin_min 8.4F. I scored the governing sunrise plan 5/10 for correct hot-dry diagnosis and dew safety, but plan_evaluate returned anchor 2 because 952 guardrail events and 861 held-by-guardrail events mean the plan was materially reshaped. This plan accepts the anchor warning by using bounded ClimateIntent rather than raw threshold thinking, and grades success as dew-safe severity reduction plus lower guardrail dependence, not full corridor recovery during physics-limited July heat. Retrieval was attempted as required but degraded because knowledge_search and lessons_search require OPENAI_API_KEY; static site context and plan coverage validation are also missing. Result: Validated before Saturday SUNRISE using the scoped window evidence. The plan governed only the late evening/early overnight handoff (about 20:30-00:18 MDT). It preserved safety: no cold stress, no VPD-low stress, and the daily dew margin stayed safe at dp_margin_min 8.8F with 0.0 dp_risk_hours. However it did not produce meaningful dry-edge recovery: the scoped window score was 50.9, temp compliance 42.2%, VPD compliance 31.9%, with 0.49h heat stress and 0.58h VPD-high stress in a short window, and the following dawn still showed strong missed/guardrail materialization plus current active setpoints more conservative than requested. The hypothesis was correct that dew-safe evening recovery was preferable to hard overnight conservation, but the implementation remained guardrail/missed-heavy and should be treated as a safe handoff, not a successful recovery experiment. Score: 4/10
New finding: On July hot-dry evenings, tapering wet assist after sunset can preserve dew safety and avoid VPD-low stress, but it should not be credited as dry-edge recovery unless the next dawn shows lower VPD-high severity and fewer missed or guardrail-held wet-assist materializations. → Added to Lessons Learned
Hypothesis
Testing: Guardrail-compatible sunset taper: keep evening recovery open while dew-safe, then conserve overnight by duty/churn posture rather than closing the wet-assist surface; compare VPD recovery, dew margin, and guardrail events by sunrise. Expected outcome: By sunrise: 0.0h dew-risk and VPD-low stress overnight, no cold stress, VPD near/inside the overnight band by 05:30 if outdoor forecast bias holds, and fewer guardrail-held wet-assist materializations than iris-20260717-0016.
Conditions
94.0°F
17.0%
897.0 W/m²
10.0%
warm dry evening after a VPD-high and heat-stress day; dew margin is safe, east remains the dry outlier, and Saturday is forecast clear/hot/dry with raw VPD positively biased but still directionally severe after correction
Expected stress windows
keep band-coupled wet assist available near vpd_high+0.05 and all-zone near +0.25 through the evening recovery window while dew margin remains above 8F
taper mist duty, keep dew floor 8F, and avoid water/relay churn while solar is absent and humidity should hold better
reopen compliance-first wet assist: engage near +0.05 kPa, all-zone near +0.20, daylight fog escalation near 0.15, and lower resource sensitivity before the hot-dry ramp
use 45 minute thermal lead and solar precooling; accept physics-limited peak heat later in the day and preserve wet/fog assist rather than chasing targets
Parameter rationale
allow evening dry-edge recovery and Saturday morning S1 wet assist without suppressing moisture while rails are safe
keep all-zone rotation available near vpd_high+0.25 during evening recovery and near +0.20 during the Saturday dry ramp
reduce overnight water/relay churn after the evening recovery window while preserving the ability to respond if VPD stays high
enable daylight vent-fog assist before severe VPD-high stress builds, while fog remains irrelevant/blocked overnight
avoid budget-limited VPD recovery during safe hot-dry stress, conserving by duty/resource sensitivity overnight instead of clipping the daily cap
permit bounded evening dry-edge recovery through 22:00 when dew margin remains above 8F
Setpoints
Friday July 17
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 20:25 | hyst 0.1875 | evening_settle: live VPD is near the high edge with east dry |
| 22:30 | hyst 0.1875 | late_evening_taper: solar is gone and humidity should hold b |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 20:25 | s2 1.905; 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: live VPD is near the high edge with east dry |
| 22:30 | s2 1.905; 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 | late_evening_taper: solar is gone and humidity should hold b |
Saturday July 18
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: prepare for the clear dry ramp while still avoidin |
| 07:30 | hyst 0.1875 | morning_handoff: Saturday ramps quickly toward hot-dry VPD s |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 00:30 | s2 1.905; 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.7 | midnight_posture: no heating threat and no dew risk; priorit |
| 05:30 | s2 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.7 | pre_dawn: prepare for the clear dry ramp while still avoidin |
| 07:30 | s2 1.635; cool_exit 1.6; all_fans 0; dw_stress 1; dw_until 22; engage 1.27; all 1.42; pulse 37.5; gap 26.25; wt 1.7666666666666666 | morning_handoff: Saturday ramps quickly toward hot-dry VPD s |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 20:25 | band_track_fraction | initial 0 |
| 20:25 | cold_vent_guard_delta_f | initial 8 |
| 20:25 | cool_stage2_exit_hysteresis_f | initial 1 |
| 20:25 | direct_wet_stress_min_dew_margin_f | initial 8 |
| 20:25 | direct_wet_stress_vpd_margin_kpa | initial 0.05 |
| 20:25 | dwell_gate_ms | initial 210000 |
| 20:25 | enthalpy_close | initial 1 |
| 20:25 | enthalpy_open | initial -2 |
| 20:25 | fog_escalation_kpa | initial 0.25 |
| 20:25 | heat_hysteresis | initial 1 |
| 20:25 | min_fog_off_s | initial 72 |
| 20:25 | min_fog_on_s | initial 59.25 |
| 20:25 | mist_backoff_s | initial 600 |
| 20:25 | mist_max_closed_vent_s | initial 600 |
| 20:25 | mist_thermal_relief_s | initial 90 |
| 20:25 | mister_all_delay_s | initial 75 |
| 20:25 | mister_engage_delay_s | initial 37.5 |
| 20:25 | mister_water_budget_gal | initial 300 |
| 20:25 | night_vpd_bias_kpa | initial 0 |
| 20:25 | outdoor_staleness_max_s | initial 600 |
| 20:25 | sw_dwell_gate_enabled | initial 1 |
| 20:25 | sw_fog_closes_vent | initial 1 |
| 20:25 | sw_mister_closes_vent | initial 0 |
| 20:25 | sw_summer_vent_enabled | initial 1 |
| 20:25 | temp_hysteresis | initial 1.6 |
| 20:25 | vent_exchange_fraction | initial 0.3 |
| 20:25 | vent_prefer_dp_delta_f | initial 3 |
| 20:25 | vent_prefer_temp_delta_f | initial 4 |
| 20:25 | vpd_watch_dwell_s | initial 52.5 |
| 00:30 | cold_vent_guard_delta_f | 8 → 9 |
| 00:30 | vent_prefer_dp_delta_f | 3 → 4 |
| 00:30 | vent_prefer_temp_delta_f | 4 → 5 |
| 05:30 | cold_vent_guard_delta_f | 9 → 8 |
| 05:30 | vent_prefer_dp_delta_f | 4 → 3 |
| 05:30 | vent_prefer_temp_delta_f | 5 → 4 |
| 07:30 | fog_escalation_kpa | 0.25 → 0.15 |
| 07:30 | min_fog_off_s | 72 → 48 |
| 07:30 | min_fog_on_s | 59.25 → 68.25 |
End-of-Day Summary
Climate
69.7–91.8°F; avg 77.7°F
0.85–1.86 kPa; avg 1.21 kPa
54.1–74.6%
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.0h
- VPD stress (>2.0 kPa): 9.6h
- Cold stress (<55°F): 8.3h
Economics
USD —
USD 0.00
USD 1.690
USD —
Equipment Runtimes
| Equipment | Runtime | Reading |
|---|---|---|
| Fan 1 | 696 min | Primary exhaust runtime. |
| Fan 2 | 687 min | Secondary exhaust runtime. |
| Vent | 800 min | Intake vent runtime. |
| Fog | 356 min | Fogger runtime. |
| Heat 1 electric | 0 min | Electric heater runtime. |
| Heat 2 gas | 0 min | Gas heater runtime. |
| Grow lights | 504 min | Supplemental lighting runtime. |
| Mister south | 0.00h | South mister runtime. |
| Mister west | 0.00h | West mister runtime. |
| Mister center | 2.10h | Center mister runtime. |
Water
- Total: 350 gal
- Mister: 143 gal
Hourly Pattern
| Hour | Temperature | VPD | RH |
|---|---|---|---|
| 12:00 | 82.6°F | 1.30 kPa | 66.3% |
| 13:00 | 83.5°F | 1.39 kPa | 66.0% |
| 14:00 | 84.4°F | 1.43 kPa | 67.7% |
| 15:00 | 84.9°F | 1.47 kPa | 67.4% |
| 16:00 | 84.2°F | 1.35 kPa | 68.8% |
| 17:00 | 84.0°F | 1.36 kPa | 68.1% |
| 18:00 | 83.1°F | 1.23 kPa | 69.6% |
| 19:00 | 82.3°F | 1.21 kPa | 69.1% |
| 20:00 | 80.6°F | 1.25 kPa | 65.7% |
| 21:00 | 78.3°F | 1.17 kPa | 65.1% |
| 22:00 | 76.2°F | 1.23 kPa | 60.5% |
| 23:00 | 74.8°F | 1.23 kPa | 58.8% |
| 00:00 | 73.2°F | 1.15 kPa | 59.4% |
| 01:00 | 72.5°F | 1.16 kPa | 57.8% |
| 02:00 | 71.9°F | 1.17 kPa | 56.5% |
| 03:00 | 71.1°F | 1.12 kPa | 57.2% |
| 04:00 | 70.2°F | 1.09 kPa | 56.9% |
| 05:00 | 69.8°F | 0.95 kPa | 62.0% |
| 06:00 | 71.4°F | 0.95 kPa | 64.2% |
| 07:00 | 73.2°F | 1.01 kPa | 63.9% |
| 08:00 | 74.9°F | 1.10 kPa | 62.9% |
| 09:00 | 76.9°F | 1.13 kPa | 64.3% |
| 10:00 | 79.7°F | 1.16 kPa | 67.0% |
| 11:00 | 80.6°F | 1.15 kPa | 67.9% |
7-Day Stress Context
| Date | Heat | VPD high | Cold |
|---|---|---|---|
| 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 |
| 2026-07-16 | 3.2h | 10.0h | 7.8h |
| 2026-07-17 | 4.0h | 9.6h | 8.3h |