September 07, 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

11

Plan writes

3

No-change acknowledgements

8

Pending

0

EventDeliveredTypeStatusNote
End-of-day review and reset00:16MIDNIGHTplan_writtenWrote public plan iris-20260907-0016. Resolved 00:17 MDT.
Morning planning cycle06:36SUNRISEplan_writtenWrote public plan iris-20260907-0636. Resolved 06:37 MDT.
Solar peak planning checkpoint13:00SOLAR_MAXackedAcknowledged: No tunable change: live solar_w/solar_w_m2 are unavailable and lux is only 2105, so forecast peak is unconfirmed. VPD rose to 1.45 kPa but is now 1.06, temp 82.6F is below 83.2F high, dew margin 9.9F, and the active plan's live-gated afternoon posture remains appropriate. Retrieval was attempted but unavailable due missing OPENAI_API_KEY. Resolved 13:01 MDT.
Forecast deviation13:14FORECAST_DEVIATIONackedAcknowledged: No climate write: fresh indoor telemetry shows 83.8F, VPD 1.48, dew margin 14.0F, with SEALED_MIST_FOG/vent-mist response already active and relays just in pulse-off dwell. The 0.94 VPD/0 solar deviation is an outsized forecast/nowcast miss in the same high-direction bias, not evidence of equipment failure; outdoor fields are stale/null. Unified retrieval failed on missing OPENAI_API_KEY, so retain the current safe posture rather than make a cosmetic override. Resolved 13:15 MDT.
Forecast deviation14:15FORECAST_DEVIATIONackedAcknowledged: No tunable change: observed forecast-scope VPD 0.94 was far below forecast 3.87, consistent with the durable positive forecast VPD bias and stale outdoor telemetry, not a confirmed regime shift. Indoor climate is still hot/dry (85.5F, VPD 1.63, dew margin 15F) and the controller is already serving vent+fan1+fan2+fog; no marginal threshold benefit. Retrieval also failed because embedding credentials are unavailable. Resolved 14:15 MDT.
Peak Stress15:00TRANSITIONackedAcknowledged: Peak-stress action was indicated (86.5F and VPD 1.72 kPa above active edges with vent, both fans, fog, and healthy 14.9F dew margin), but mandatory semantic retrieval failed because OPENAI_API_KEY was unavailable. No tunable write was made; recorded explicit neutral fallback after one platform-request attempt and one canonical AI planning agent brief fallback. Resolved 15:01 MDT.
Forecast deviation15:14FORECAST_DEVIATIONackedAcknowledged: No climate-policy change: the deviation is outdoor/forecast-scope VPD (3.46 forecast vs 0.94 observed), in the same direction as the established +0.98 kPa forecast bias. Fresh indoor telemetry is still hot/dry (85.1F, 1.59 kPa) with healthy 14.0F dew margin, and the controller is already serving vent + fan2 + mister assist; fog is outside its 07:00-17:00 window. No marginal tunable benefit; monitor recovery. Resolved 15:15 MDT.
Forecast deviation17:15FORECAST_DEVIATIONackedAcknowledged: Observed outdoor VPD 0.94 versus forecast 3.01 is a large forecast/nowcast miss in the known positive-VPD-bias direction. Indoor telemetry is fresh and currently near the VPD high edge (1.04 kPa), dew margin is healthy (9.9F), controller is IDLE, and all relays are off after recovery. No marginal tunable change is justified; avoid cosmetic moisture writes. Resolved 17:15 MDT.
Forecast deviation17:45FORECAST_DEVIATIONackedAcknowledged: Wind deviation is a forecast miss/nowcast catch-up: observed 3.13 mph vs forecast 18.4 mph, with no established wind-bias calibration. Indoor telemetry is fresh and stable (81.9F, VPD 1.07 kPa, dew margin 10.3F, IDLE); all relays are off as appropriate. No controller-attributable miss or marginal benefit from tuning; acknowledge without climate-policy change. Resolved 17:45 MDT.
Decline18:23TRANSITIONackedAcknowledged: No change: live temp 80.5F is below the 83.2F high edge, VPD 1.01 kPa is near and falling toward the 0.99 high edge, controller is IDLE, and dew margin is healthy at 10.0F. Existing plan already tapers gap/fog by 21:00; no cosmetic override warranted. Semantic retrieval was unavailable due to missing OPENAI_API_KEY, so no tactical write was made. Resolved 18:24 MDT.
Evening planning cycle19:23SUNSETplan_writtenWrote public plan iris-20260907-1923. Resolved 19:25 MDT.

🌅 Morning Cycle (12:17 AM) — iris-20260907-0016

Status

validated

Outcome score

8/10

Changed parameters

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

Reflection

Validating previous cycle: iris-20260906-0634

Previous hypothesis: {“conditions”:{“outdoor_temp_peak_f”:92.0,“outdoor_rh_min_pct”:20.0,“solar_peak_w_m2”:773.0,“cloud_cover_avg_pct”:40.0,“notes”:“Cool humid dawn then hot dry high-solar afternoon; forecast dryness is gated by live VPD.”},“stress_windows”:[{“kind”:“vpd_high”,“start”:“2026-09-06T12:00:00-06:00”,“end”:“2026-09-06T19:00:00-06:00”,“severity”:“high”,“mitigation”:“Live-VPD-gated vent-mist assist; fog 0.15 in safe hours; taper after measured recovery.”},{“kind”:“heat”,“start”:“2026-09-06T13:00:00-06:00”,“end”:“2026-09-06T18:00:00-06:00”,“severity”:“high”,“mitigation”:“Pre-cool and use thermal venting; avoid sealed high-temperature humidity trapping.”}],“rationale”:[{“parameter”:“mister_engage_kpa”,“old_value”:1.6,“new_value”:1.25,“forecast_anchor”:“Dawn VPD is 0.72; corrected afternoon VPD peaks about 3.18 kPa… Result: Window score 94.9; temp 96.7%, VPD 93.2%; 0.00h total or axis stress and dew-risk 0.00h. Safety and overnight recovery objective held, but many planned tactical values were missed or clamped, so effect attribution is weak. Score: 8/10

Hypothesis

Testing: Test live-VPD-gated overnight taper followed by bounded morning vent-mist assist under forecast uncertainty. Expected outcome: Keep overnight dew margin >=8F and VPD-low stress ⇐0.5h; reduce controller-attributable dry-edge time during the morning ramp without sealing above 85F.

Setpoints

Monday September 07

Primary crop-band changes:

TimeValuesNote
00:16hyst 0.1875Live VPD 0.86, dew margin 11.6F; bridge only near edge while
04:30hyst 0.1875Taper after recovery; forecast VPD 1.0-1.2 and fog is blocke
07:30hyst 0.1875Dry solar ramp begins; use live-gated vent-mist assist, not
10:00hyst 0.1875Forecast reaches 80F/2.1 VPD at 10:00 and 3+ later; enable b

Tactical tunable changes:

TimeValuesNote
00:16s2 1.8175000000000001; cool_exit 1.6; all_fans 0; dw_stress 1; engage 0.811; all 1.0110000000000001; pulse 33.75; gap 41.25; wt 1.7Live VPD 0.86, dew margin 11.6F; bridge only near edge while
04:30s2 1.8175000000000001; cool_exit 1.6; all_fans 0; dw_stress 1; engage 0.811; all 1.0110000000000001; pulse 33.75; gap 41.25; wt 1.7Taper after recovery; forecast VPD 1.0-1.2 and fog is blocke
07:30s2 1.6425; cool_exit 1.6; all_fans 0; dw_stress 1; engage 0.811; all 1.0110000000000001; pulse 37.5; gap 41.25; wt 1.7Dry solar ramp begins; use live-gated vent-mist assist, not
10:00s2 1.5250000000000001; cool_exit 1.6; all_fans 1; dw_stress 1; engage 0.811; all 1.0110000000000001; pulse 45; gap 33.75; wt 1.9333333333333331Forecast reaches 80F/2.1 VPD at 10:00 and 3+ later; enable b

Changed secondary parameters:

TimeParameterChange
00:16band_track_fractioninitial 0
00:16cold_vent_guard_delta_finitial 9
00:16cool_stage2_exit_hysteresis_finitial 1
00:16direct_wet_stress_min_dew_margin_finitial 8
00:16direct_wet_stress_vpd_margin_kpainitial 0.05
00:16dwell_gate_msinitial 210000
00:16enthalpy_closeinitial 1
00:16enthalpy_openinitial -2
00:16fog_escalation_kpainitial 0.25
00:16heat_hysteresisinitial 1
00:16min_fog_off_sinitial 72
00:16min_fog_on_sinitial 59.25
00:16mist_backoff_sinitial 600
00:16mist_max_closed_vent_sinitial 600
00:16mist_thermal_relief_sinitial 90
00:16mister_all_delay_sinitial 75
00:16mister_engage_delay_sinitial 37.5
00:16mister_water_budget_galinitial 240
00:16night_vpd_bias_kpainitial 0
00:16outdoor_staleness_max_sinitial 600
00:16sw_dwell_gate_enabledinitial 1
00:16sw_fog_closes_ventinitial 1
00:16sw_mister_closes_ventinitial 0
00:16sw_summer_vent_enabledinitial 1
00:16temp_hysteresisinitial 1.6
00:16vent_exchange_fractioninitial 0.3
00:16vent_prefer_dp_delta_finitial 5
00:16vent_prefer_temp_delta_finitial 5
00:16vpd_watch_dwell_sinitial 52.5
07:30cold_vent_guard_delta_f9 → 8
07:30fog_escalation_kpa0.25 → 0.2
07:30mister_water_budget_gal240 → 300
07:30vent_prefer_dp_delta_f5 → 3
07:30vent_prefer_temp_delta_f5 → 4
10:00fog_escalation_kpa0.2 → 0.15
10:00min_fog_off_s72 → 60
10:00min_fog_on_s59.25 → 63.75

🌅 Morning Cycle (2:03 AM) — iris-20260907-0203

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_min_dew_margin_f, direct_wet_stress_vpd_margin_kpa, dwell_gate_ms ...

Reflection

Validating previous cycle: iris-20260906-1925

Previous hypothesis: {“conditions”:{“outdoor_temp_peak_f”:77.0,“outdoor_rh_min_pct”:48.0,“solar_peak_w_m2”:0.0,“cloud_cover_avg_pct”:70.0,“notes”:“Hot dry day ended with live VPD 1.04 and 11F dew margin; forecast drops into a cool humid trough overnight.”},“stress_windows”:[{“kind”:“vpd_high”,“start”:“2026-09-06T19:25:00-06:00”,“end”:“2026-09-06T21:00:00-06:00”,“severity”:“medium”,“mitigation”:“Keep wet assist available near the edge; taper only after measured VPD clears 0.99.”},{“kind”:“vpd_low”,“start”:“2026-09-07T02:00:00-06:00”,“end”:“2026-09-07T07:00:00-06:00”,“severity”:“medium”,“mitigation”:“Suppress mist and fog duty, preserve an 8F dew floor, and avoid rapid vent cycling.”}],“rationale”:[{“parameter”:“mister_pulse_gap_s”,“old_value”:45.0,“new_value”:60.0,“forecast_anchor”:“VPD falls from 1.63 at 20:00 to 0.32-0.52 from 02:00-07:00… Result: Window score 77.5; temp compliance 69.3%, VPD compliance 76.3%; 0.85h total stress including 0.27h VPD-high, with no cold or VPD-low stress. The planned hot-dry posture reduced risk but forecast/telemetry overcalled the heat and dry ramp; this was partial success rather than full target attainment. Score: 7/10

New finding: When a hot-dry forecast is uncertain, live-VPD gating and bounded moisture assist are safer than fully pre-staging aggressive cooling; evaluate controller-attributable VPD-high time after the ramp before tapering. → Added to Lessons Learned

Hypothesis

Testing: Weekly test: live-VPD gating plus two hot-dry assist windows; compare VPD-high hours, dew risk, water, and wet-served action share. Expected outcome: Keep dew margin >=8F, VPD-low stress ⇐0.5h in troughs, and reduce controller-attributable VPD-high time by >=20% during live-confirmed dry windows; accept capacity-limited heat.

Setpoints

Monday September 07

Primary crop-band changes:

TimeValuesNote
02:00hyst 0.1875Current VPD 0.76 and dew margin 10.8F; taper wet assist, kee
10:00hyst 0.1875Forecast ramp reaches 2.1-3.2 kPa; pre-cool and open band-co
20:00hyst 0.1875After hot window, taper on measured VPD; protect 9F dew marg

Tactical tunable changes:

TimeValuesNote
02:00s2 1.68; cool_exit 1.6; all_fans 0; dw_stress 1; engage 0.789; all 1; pulse 33.75; gap 41.25; wt 1.7Current VPD 0.76 and dew margin 10.8F; taper wet assist, kee
10:00s2 1.455; cool_exit 1.6; all_fans 1; dw_stress 1; engage 0.789; all 1; pulse 37.5; gap 41.25; wt 1.8833333333333333Forecast ramp reaches 2.1-3.2 kPa; pre-cool and open band-co
20:00s2 1.8175000000000001; cool_exit 1.6; all_fans 0; dw_stress 1; engage 0.789; all 1; pulse 33.75; gap 41.25; wt 1.7666666666666666After hot window, taper on measured VPD; protect 9F dew marg

Tuesday September 08

Primary crop-band changes:

TimeValuesNote
08:00hyst 0.1875Tue dry heat follows a VPD-low dawn; re-enable assist only o

Tactical tunable changes:

TimeValuesNote
08:00s2 1.4025; cool_exit 1.6; all_fans 1; dw_stress 1; engage 0.789; all 1; pulse 41.25; gap 37.5; wt 1.9499999999999997Tue dry heat follows a VPD-low dawn; re-enable assist only o

Wednesday September 09

Primary crop-band changes:

TimeValuesNote
08:00hyst 0.1875Wed clear dry ramp repeats; prioritize corridor time, accept

Tactical tunable changes:

TimeValuesNote
08:00s2 1.3875; cool_exit 1.6; all_fans 1; dw_stress 1; engage 0.789; all 1; pulse 45; gap 33.75; wt 2.0999999999999996Wed clear dry ramp repeats; prioritize corridor time, accept

Changed secondary parameters:

TimeParameterChange
02:00band_track_fractioninitial 0
02:00cold_vent_guard_delta_finitial 8
02:00cool_stage2_exit_hysteresis_finitial 1
02:00direct_wet_stress_min_dew_margin_finitial 8
02:00direct_wet_stress_vpd_margin_kpainitial 0.05
02:00dwell_gate_msinitial 210000
02:00enthalpy_closeinitial 1
02:00enthalpy_openinitial -2
02:00fog_escalation_kpainitial 0.25
02:00heat_hysteresisinitial 1
02:00min_fog_off_sinitial 72
02:00min_fog_on_sinitial 59.25
02:00mist_backoff_sinitial 600
02:00mist_max_closed_vent_sinitial 600
02:00mist_thermal_relief_sinitial 90
02:00mister_all_delay_sinitial 75
02:00mister_engage_delay_sinitial 37.5
02:00mister_water_budget_galinitial 180
02:00night_vpd_bias_kpainitial 0
02:00outdoor_staleness_max_sinitial 600
02:00sw_dwell_gate_enabledinitial 1
02:00sw_fog_closes_ventinitial 1
02:00sw_mister_closes_ventinitial 0
02:00sw_summer_vent_enabledinitial 1
02:00temp_hysteresisinitial 1.6
02:00vent_exchange_fractioninitial 0.3
02:00vent_prefer_dp_delta_finitial 3
02:00vent_prefer_temp_delta_finitial 4
02:00vpd_watch_dwell_sinitial 52.5
10:00fog_escalation_kpa0.25 → 0.2
10:00mister_water_budget_gal180 → 240
20:00cold_vent_guard_delta_f8 → 9
20:00direct_wet_stress_min_dew_margin_f8 → 9
20:00fog_escalation_kpa0.2 → 0.25
20:00mister_water_budget_gal240 → 160
20:00vent_prefer_temp_delta_f4 → 5
08:00cold_vent_guard_delta_f9 → 8
08:00direct_wet_stress_min_dew_margin_f9 → 8
08:00fog_escalation_kpa0.25 → 0.2
08:00min_fog_off_s72 → 66
08:00min_fog_on_s59.25 → 61.5
08:00mister_water_budget_gal160 → 260
08:00vent_prefer_temp_delta_f5 → 4
08:00min_fog_off_s66 → 60
08:00min_fog_on_s61.5 → 63.75
08:00mister_water_budget_gal260 → 280

🌅 Morning Cycle (6:37 AM) — iris-20260907-0636

Status

validated

Outcome score

5/10

Changed parameters

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

Reflection

Validating previous cycle: iris-20260907-0016

Previous hypothesis: Live-VPD-gated midnight recovery: preserve an 8F dew margin, taper wet assist only after measured recovery, then pre-cool and provide bounded vent-mist/fog assist for the forecast dry ramp. Outdoor telemetry is unavailable and forecast skill has been poor; live conditions override. Prior plan self-score 6 vs deterministic anchor 8 because forecast-mismatch and missed materialization limited the test. Result: Window score 69.9; temp compliance 60.7%, VPD compliance 68.6%; 2.11h total stress with 0.66h VPD-high and no cold/VPD-low/dew-risk hours. Dew margin stayed safe. Forecast overstated heat/dryness (predicted 90F/24% RH/721 W/m2; observed peak 67.4F proxy, indoor RH min 51%); 68 guardrail writes were missed, including fog, mist gap, hysteresis, and stage-2 cooling changes, so the experiment was only partially materialized. Score: 5/10

Hypothesis

Testing: Live-VPD gating: compare 09:00-19:00 wet-served share and VPD-high hours against yesterday; preserve >=8F dew margin. Expected outcome: VPD-high stress below yesterday’s 2.94h when forecast conditions materialize, zero dew-risk hours, and no relay-churn increase; heat overshoot may remain physics-limited.

Conditions

Outdoor peak

90.0°F

RH minimum

24.0%

Solar peak

721.0 W/m²

Cloud average

56.0%

Yesterday scored 6 vs anchor 8: heat/dry forecast overcalled and tactical values missed materialization. Today uses live-VPD gating; outdoor telemetry is currently unavailable.

Expected stress windows

vpd_highhigh · 2026-09-07T09:00:00-06:00 to 2026-09-07T19:00:00-06:00

Band-coupled wet assist with fog 0.15 during safe hours; taper only after measured recovery.

heathigh · 2026-09-07T11:00:00-06:00 to 2026-09-07T18:00:00-06:00

Pre-cool and ventilate; accept capacity-limited heat while preserving VPD assist.

Parameter rationale

fog_escalation_kpa0.4 → 0.15; Corrected VPD 2.2-2.56 kPa, 09:00-18:00; fog safety gates remain active.

Earlier bounded fog during safe hot-dry VENTILATE without closing dew-margin protection.

mister_pulse_gap_s45.0 → 20.0; Forecast VPD exceeds 3.0 kPa from 12:00-18:00; current dew margin is 8.7F.

Increase bounded evaporative duty and reduce controller-attributable VPD-high time.

mister_engage_kpa1.6 → 1.25; Live VPD is 0.71 kPa at dawn; engage remains live-edge gated before the dry ramp.

Make wet assist available at the band edge without repeating dawn over-wetting.

Setpoints

Monday September 07

Primary crop-band changes:

TimeValuesNote
06:36hyst 0.20750000000000002Dawn recovery: stay conservative until live VPD confirms the
09:00hyst 0.1975Morning ramp: pre-cool and open band-coupled wet assist if V
13:00hyst 0.20750000000000002Peak stress: compliance-first vent-mist/fog assist; heat cap
18:30hyst 0.1975Decline: hold wet assist through observed VPD recovery, then
21:00hyst 0.20750000000000002Evening: reduce duty while retaining live-edge recovery and

Tactical tunable changes:

TimeValuesNote
06:36s2 1.8625; cool_exit 1.96; all_fans 0; dw_stress 0; engage 1.004; all 1.154; pulse 30; gap 52.5; wt 1.4666666666666666Dawn recovery: stay conservative until live VPD confirms the
09:00s2 1.5275; cool_exit 1.78; all_fans 0; dw_stress 1; engage 0.9540000000000001; all 1.154; pulse 41.25; gap 37.5; wt 1.8666666666666667Morning ramp: pre-cool and open band-coupled wet assist if V
13:00s2 1.2950000000000002; cool_exit 1.96; all_fans 1; dw_stress 1; engage 0.9540000000000001; all 1.154; pulse 48.75; gap 26.25; wt 2.1166666666666663Peak stress: compliance-first vent-mist/fog assist; heat cap
18:30s2 1.7025000000000001; cool_exit 1.78; all_fans 0; dw_stress 1; engage 0.9540000000000001; all 1.154; pulse 41.25; gap 37.5; wt 1.8666666666666667Decline: hold wet assist through observed VPD recovery, then
21:00s2 1.95; cool_exit 1.96; all_fans 0; dw_stress 0; engage 1.004; all 1.154; pulse 30; gap 52.5; wt 1.5499999999999998Evening: reduce duty while retaining live-edge recovery and

Changed secondary parameters:

TimeParameterChange
06:36band_track_fractioninitial 0
06:36cold_vent_guard_delta_finitial 8
06:36cool_stage2_exit_hysteresis_finitial 1
06:36direct_wet_stress_min_dew_margin_finitial 8
06:36direct_wet_stress_vpd_margin_kpainitial 0.1
06:36dwell_gate_msinitial 270000
06:36enthalpy_closeinitial 1
06:36enthalpy_openinitial -2
06:36fog_escalation_kpainitial 0.3
06:36heat_hysteresisinitial 1
06:36min_fog_off_sinitial 90
06:36min_fog_on_sinitial 52.5
06:36mist_backoff_sinitial 600
06:36mist_max_closed_vent_sinitial 600
06:36mist_thermal_relief_sinitial 90
06:36mister_all_delay_sinitial 93
06:36mister_engage_delay_sinitial 46.5
06:36mister_water_budget_galinitial 180
06:36night_vpd_bias_kpainitial 0
06:36outdoor_staleness_max_sinitial 600
06:36sw_dwell_gate_enabledinitial 1
06:36sw_fog_closes_ventinitial 1
06:36sw_mister_closes_ventinitial 0
06:36sw_summer_vent_enabledinitial 1
06:36temp_hysteresisinitial 1.96
06:36vent_exchange_fractioninitial 0.3
06:36vent_prefer_dp_delta_finitial 3
06:36vent_prefer_temp_delta_finitial 4
06:36vpd_watch_dwell_sinitial 67.5
09:00direct_wet_stress_vpd_margin_kpa0.1 → 0.05
09:00dwell_gate_ms270000 → 240000
09:00fog_escalation_kpa0.3 → 0.2
09:00min_fog_off_s90 → 66
09:00min_fog_on_s52.5 → 61.5
09:00mister_all_delay_s93 → 84
09:00mister_engage_delay_s46.5 → 42
09:00mister_water_budget_gal180 → 240
09:00temp_hysteresis1.96 → 1.78
09:00vpd_watch_dwell_s67.5 → 60
13:00dwell_gate_ms240000 → 270000
13:00fog_escalation_kpa0.2 → 0.15
13:00min_fog_off_s66 → 48
13:00min_fog_on_s61.5 → 68.25
13:00mister_all_delay_s84 → 93
13:00mister_engage_delay_s42 → 46.5
13:00mister_water_budget_gal240 → 280
13:00temp_hysteresis1.78 → 1.96
13:00vpd_watch_dwell_s60 → 67.5
18:30dwell_gate_ms270000 → 240000
18:30fog_escalation_kpa0.15 → 0.25
18:30min_fog_off_s48 → 66
18:30min_fog_on_s68.25 → 61.5
18:30mister_all_delay_s93 → 84
18:30mister_engage_delay_s46.5 → 42
18:30mister_water_budget_gal280 → 260
18:30temp_hysteresis1.96 → 1.78
18:30vpd_watch_dwell_s67.5 → 60
21:00direct_wet_stress_vpd_margin_kpa0.05 → 0.1
21:00dwell_gate_ms240000 → 270000
21:00fog_escalation_kpa0.25 → 0.35
21:00min_fog_off_s66 → 90
21:00min_fog_on_s61.5 → 52.5
21:00mister_all_delay_s84 → 93
21:00mister_engage_delay_s42 → 46.5
21:00mister_water_budget_gal260 → 200
21:00temp_hysteresis1.78 → 1.96
21:00vpd_watch_dwell_s60 → 67.5

🌆 Evening Cycle (7:25 PM) — iris-20260907-1923

Status

validated

Outcome score

9/10

Changed parameters

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

Reflection

Validating previous cycle: iris-20260907-0636

Previous hypothesis: {“conditions”:{“outdoor_temp_peak_f”:90.0,“outdoor_rh_min_pct”:24.0,“solar_peak_w_m2”:721.0,“cloud_cover_avg_pct”:56.0,“notes”:“Yesterday scored 6 vs anchor 8: heat/dry forecast overcalled and tactical values missed materialization. Today uses live-VPD gating; outdoor telemetry is currently unavailable.”},“stress_windows”:[{“kind”:“vpd_high”,“start”:“2026-09-07T09:00:00-06:00”,“end”:“2026-09-07T19:00:00-06:00”,“severity”:“high”,“mitigation”:“Band-coupled wet assist with fog 0.15 during safe hours; taper only after measured recovery.”},{“kind”:“heat”,“start”:“2026-09-07T11:00:00-06:00”,“end”:“2026-09-07T18:00:00-06:00”,“severity”:“high”,“mitigation”:“Pre-cool and ventilate; accept capacity-limited heat while preserving VPD assist.”}],“rationale”:[{“parameter”:“fog_escalation_kpa”,“old_value”:0.4,“new_value”:0.15,“forecast_anchor”:“Corrected VPD 2.2-2… Result: Window scorecard: planner score 91.2, temp compliance 94.6%, VPD compliance 88.0%, total stress 0.00h, heat 0.00h, cold 0.00h, VPD-high 0.00h, VPD-low 0.00h, dew-risk 0.00h. The cool/humid overnight posture met its no-stress objective; utility cost fields unavailable, so resource efficiency could not be graded. Score: 9/10

Hypothesis

Testing: Overnight humid-trough guard: compare VPD-low hours and dew-risk with the prior sunset window while retaining live-edge recovery. Expected outcome: Zero dew-risk, no VPD-low overshoot attributable to wet assist, fewer mister/relay transitions, and live-edge recovery only if measured VPD exceeds the high edge.

Conditions

Outdoor peak

70.0°F

RH minimum

69.0%

Solar peak

0.0 W/m²

Cloud average

65.0%

Cool humid overnight; forecast VPD 0.18-0.76, live VPD 0.94, dew margin 9.7F. Prior hot-dry plan scored 5 vs anchor 6 after forecast miss and missed writes.

Expected stress windows

vpd_lowhigh · 2026-09-07T21:00:00-06:00 to 2026-09-08T07:00:00-06:00

Suppress routine wetting; retain live-edge recovery and hold an 8F dew floor.

Parameter rationale

mister_pulse_gap_s45.0 → 60.0; VPD falls 0.76 to 0.18 by 06:00 with RH 69-90%.

Prevent VPD-low overshoot and reduce overnight mister re-firing.

vpd_watch_dwell_s60.0 → 90.0; VPD stays below the high edge after 21:00; current mode is IDLE.

Avoid short sealed-mist cycles during the humid trough.

Setpoints

Monday September 07

Primary crop-band changes:

TimeValuesNote
19:23hyst 0.2175evening_settle: live VPD 0.94, dew margin 9.7F; falling humi

Tactical tunable changes:

TimeValuesNote
19:23s2 1.995; cool_exit 2.14; all_fans 0; dw_stress 0; engage 0.999; all 1.1989999999999998; pulse 30; gap 60; wt 1.3evening_settle: live VPD 0.94, dew margin 9.7F; falling humi

Tuesday September 08

Primary crop-band changes:

TimeValuesNote
00:00hyst 0.22749999999999998midnight_posture: forecast VPD 0.35, RH 83%; suppress routin
05:30hyst 0.22749999999999998pre_dawn: forecast VPD 0.18-0.29 and 60-62F; preserve heat a

Tactical tunable changes:

TimeValuesNote
00:00s2 2.0700000000000003; cool_exit 2.3200000000000003; all_fans 0; dw_stress 0; engage 0.999; all 1.1989999999999998; pulse 30; gap 60; wt 1.1333333333333333midnight_posture: forecast VPD 0.35, RH 83%; suppress routin
05:30s2 2.0700000000000003; cool_exit 2.3200000000000003; all_fans 0; dw_stress 0; engage 0.999; all 1.1989999999999998; pulse 30; gap 60; wt 1.1333333333333333pre_dawn: forecast VPD 0.18-0.29 and 60-62F; preserve heat a

Changed secondary parameters:

TimeParameterChange
19:23band_track_fractioninitial 0
19:23cold_vent_guard_delta_finitial 10
19:23cool_stage2_exit_hysteresis_finitial 1
19:23direct_wet_stress_min_dew_margin_finitial 8
19:23direct_wet_stress_vpd_margin_kpainitial 0.05
19:23dwell_gate_msinitial 300000
19:23enthalpy_closeinitial 1
19:23enthalpy_openinitial -2
19:23fog_escalation_kpainitial 0.35
19:23heat_hysteresisinitial 1
19:23min_fog_off_sinitial 108
19:23min_fog_on_sinitial 45.75
19:23mist_backoff_sinitial 600
19:23mist_max_closed_vent_sinitial 600
19:23mist_thermal_relief_sinitial 90
19:23mister_all_delay_sinitial 102
19:23mister_engage_delay_sinitial 51
19:23mister_water_budget_galinitial 120
19:23night_vpd_bias_kpainitial 0
19:23outdoor_staleness_max_sinitial 600
19:23sw_dwell_gate_enabledinitial 1
19:23sw_fog_closes_ventinitial 1
19:23sw_mister_closes_ventinitial 0
19:23sw_summer_vent_enabledinitial 1
19:23temp_hysteresisinitial 2.14
19:23vent_exchange_fractioninitial 0.3
19:23vent_prefer_dp_delta_finitial 6
19:23vent_prefer_temp_delta_finitial 6
19:23vpd_watch_dwell_sinitial 75
00:00cold_vent_guard_delta_f10 → 12
00:00dwell_gate_ms300000 → 330000
00:00fog_escalation_kpa0.35 → 0.4
00:00min_fog_off_s108 → 138
00:00min_fog_on_s45.75 → 34.5
00:00mister_all_delay_s102 → 111
00:00mister_engage_delay_s51 → 55.5
00:00mister_water_budget_gal120 → 100
00:00temp_hysteresis2.14 → 2.3200000000000003
00:00vent_prefer_dp_delta_f6 → 8
00:00vent_prefer_temp_delta_f6 → 8
00:00vpd_watch_dwell_s75 → 82.5

End-of-Day Summary

Climate

Temperature

68.1–86.5°F; avg 76.2°F

VPD

0.55–1.89 kPa; avg 1.01 kPa

Relative humidity

50.7–77.3%

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): 12.1h
  • Cold stress (<55°F): 8.5h

Economics

Electric

Not available

Gas

USD 0.00

Water

Not available

Total

Not available

Equipment Runtimes

EquipmentRuntimeReading
Fan 1550 minPrimary exhaust runtime.
Fan 2560 minSecondary exhaust runtime.
Vent651 minIntake vent runtime.
Fog798 minFogger runtime.
Heat 1 electric33 minElectric heater runtime.
Heat 2 gas0 minGas heater runtime.
Grow lights166 minSupplemental lighting runtime.
Mister south0.00hSouth mister runtime.
Mister west0.00hWest mister runtime.
Mister center2.26hCenter mister runtime.

Hourly Pattern

HourTemperatureVPDRH
12:0084.0°F1.48 kPa63.2%
13:0085.9°F1.68 kPa60.8%
14:0086.1°F1.59 kPa63.2%
15:0087.3°F1.78 kPa59.9%
16:0083.0°F1.28 kPa67.0%
17:0081.7°F1.24 kPa66.6%
18:0080.4°F1.35 kPa61.9%
19:0078.7°F1.00 kPa70.1%
20:0076.5°F1.21 kPa61.4%
21:0075.4°F1.10 kPa63.6%
22:0073.8°F1.18 kPa58.6%
23:0072.2°F0.98 kPa63.6%
00:0070.8°F0.84 kPa67.2%
01:0069.5°F0.77 kPa68.7%
02:0068.5°F0.77 kPa67.8%
03:0068.6°F0.64 kPa73.2%
04:0069.0°F0.57 kPa76.4%
05:0070.0°F0.60 kPa76.2%
06:0072.2°F0.71 kPa74.0%
07:0072.3°F0.70 kPa74.1%
08:0073.2°F0.71 kPa74.6%
09:0074.8°F0.77 kPa73.8%
10:0078.4°F0.94 kPa71.9%
11:0082.5°F1.20 kPa68.5%

7-Day Stress Context

DateHeatVPD highCold
2026-09-015.4h9.5h9.3h
2026-09-026.1h14.8h8.9h
2026-09-035.7h15.2h8.9h
2026-09-046.9h15.8h8.1h
2026-09-055.1h16.0h9.5h
2026-09-064.4h15.3h9.2h
2026-09-074.3h12.1h8.5h