April 05, 2026

Generated lab notebook from daily_summary, plan_journal, and setpoint audit data. It is intentionally chronological and may include in-progress cycles before validation.

☀️ Midday Cycle (10:18 AM) — iris-20260405-1020

Status

validated

Outcome score

2/10

Changed parameters

temp_high, temp_low, vpd_high, vpd_hysteresis, d_cool_stage_2, mister_engage_kpa, mister_all_kpa, mister_pulse_on_s ...

Result: Catastrophic dispatcher failure. Despite plan setting mister_engage_kpa=1.3, temp_low=58, vpd_hysteresis=0.3, these params remained at 0 on ESP32. Result: 8.3h cold stress overnight (temp_low=0 meant no heating trigger), 0h mister runtime all day despite VPD hitting 3.44 kPa at 2 PM. Fog ran 252 min compensating. South zone reached 87.3F peak. Plan logic was sound but params never pushed.

Reflection

Validating previous cycle: iris-20260404-1200

Previous hypothesis: Earlier aggressive misting deployment (11AM vs noon) on Sunday will catch VPD ramp 1h sooner, reducing peak VPD and total stress hours. Sat afternoon already stressed — immediate aggressive settings will contain damage. Monday overcast suppresses heat/VPD stress naturally. Result: Catastrophic dispatcher failure. Despite plan setting mister_engage_kpa=1.3, temp_low=58, vpd_hysteresis=0.3, these params remained at 0 on ESP32. Result: 8.3h cold stress overnight (temp_low=0 meant no heating trigger), 0h mister runtime all day despite VPD hitting 3.44 kPa at 2 PM. Fog ran 252 min compensating. South zone reached 87.3F peak. Plan logic was sound but params never pushed. Score: 2/10

New finding: After ESP32 reboot, zeroed params may not be restored by normal dispatcher push. mister_engage_kpa=0 silently disables all misting. Must force-verify ALL critical params are non-zero after any reboot. Consider adding a safety check in dispatcher: if temp_low=0 or mister_engage_kpa=0, alert immediately. → Added to Lessons Learned

Hypothesis

Conditions: Post-reboot emergency replan. ESP32 crashed Sat afternoon (state machine failure: fog+fans at 48F, no misters at VPD 3.6). Iris (our OpenClaw AI agent)-dev fixed firmware, ESP32 rebooted. Many params zeroed. Current: 65F, VPD 0.54, RH 77%. Forecast: 3 mild days, peaks 65-67F outdoor (69-71 with bias), dry (16-25% RH midday). Testing: Verify state machine responds correctly to VPD thresholds post-fix. Monitor mister engagement at 1.3 kPa and fog engagement at appropriate COOL_S3 levels. Expected outcome: VPD stress <6h today (mild day), misters engage within 5 min of crossing 1.3 kPa, no equipment stuck states, all zones responsive.

Setpoints

Sunday April 05

Primary crop-band changes:

10:30high 82; low 58; vpd_h 1.8; hyst 0.3

Standard S2 at 85F

12:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard S2

16:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

19:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

22:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

Tactical tunable changes:

10:30d_cool 3; engage 1.3; all 1.6; pulse 60; gap 30; wt 1.5

Standard S2 at 85F

12:00d_cool 3; engage 1.3; all 1.5; pulse 60; gap 30; wt 1.5

Standard S2

16:00d_cool 3; engage 1.4; all 1.8; pulse 60; gap 45; wt 1.5

Standard

19:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

22:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

Monday April 06

Primary crop-band changes:

05:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

09:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

12:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

16:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

19:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

Tactical tunable changes:

05:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

09:00d_cool 3; engage 1.3; all 1.6; pulse 60; gap 30; wt 1.5

Standard

12:00d_cool 3; engage 1.3; all 1.5; pulse 60; gap 30; wt 1.5

Standard

16:00d_cool 3; engage 1.4; all 1.8; pulse 60; gap 45; wt 1.5

Standard

19:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

Tuesday April 07

Primary crop-band changes:

05:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

09:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

12:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

16:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

19:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

Tactical tunable changes:

05:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

09:00d_cool 3; engage 1.4; all 1.8; pulse 60; gap 45; wt 1.5

Standard

12:00d_cool 3; engage 1.4; all 1.8; pulse 60; gap 45; wt 1.5

Standard

16:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

19:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

Changed secondary parameters:

10:20irrig_wall_duration_min

initial 10

10:20irrig_wall_interval_days

initial 1

10:20irrig_wall_start_hour

initial 6

10:20lead_rotate_s

initial 600

10:20mister_water_budget_gal

initial 500

Full secondary parameter dump
10:20irrig_wall_duration_min

Value 10.

10:20irrig_wall_interval_days

Value 1.

10:20irrig_wall_start_hour

Value 6.

10:20lead_rotate_s

Value 600.

10:20mister_water_budget_gal

Value 500.


☀️ Midday Cycle (12:04 PM) — iris-20260405-1200

Status

validated

Outcome score

4/10

Changed parameters

temp_low, vpd_hysteresis, mister_engage_kpa, vpd_high, mister_all_kpa, mister_pulse_gap_s

Result: Partial success. Dispatcher pushed mister_engage_kpa (1.5) and mister_all_kpa (1.8) but temp_low and vpd_hysteresis REMAINED AT 0. Misters finally engaged after noon push: center 0.51h, west 0.17h, south 0.10h. Afternoon VPD improved: 2.07→2.03→1.65→1.59 (2-5PM). Total VPD stress 5.77h — mostly morning crash hours before plan deployed. Fog ran 4.58h compensating. No cold stress because outdoor stayed above 44F. State machine confirmed working post-firmware-fix.

Reflection

Validating previous cycle: iris-20260404-1200

Previous hypothesis: Earlier aggressive misting deployment (11AM vs noon) on Sunday will catch VPD ramp 1h sooner, reducing peak VPD and total stress hours. Sat afternoon already stressed — immediate aggressive settings will contain damage. Monday overcast suppresses heat/VPD stress naturally. Result: Partial success. Dispatcher pushed mister_engage_kpa (1.5) and mister_all_kpa (1.8) but temp_low and vpd_hysteresis REMAINED AT 0. Misters finally engaged after noon push: center 0.51h, west 0.17h, south 0.10h. Afternoon VPD improved: 2.07→2.03→1.65→1.59 (2-5PM). Total VPD stress 5.77h — mostly morning crash hours before plan deployed. Fog ran 4.58h compensating. No cold stress because outdoor stayed above 44F. State machine confirmed working post-firmware-fix. Score: 4/10

New finding: Dispatcher confirmed dropping params from batch push (Lesson #6 re-validated). temp_low and vpd_hysteresis stuck at 0 despite plan waypoints. Misters did respond once engage_kpa pushed — state machine functional. Need to verify ALL 10 core params individually after each push. → Added to Lessons Learned

Hypothesis

Conditions: DEVIATION-TRIGGERED REPLAN. Forecast was wrong by +22F temp, +32% RH, -610 W/m2 solar. Critical: temp_low=0, vpd_hysteresis=0, mister_engage_kpa=0 persisted from reboot despite morning plan. Misters ran 0h while VPD hit 3.44. Current: 76F avg, VPD 0.93, south 85F. Mon peaks 69F/13% RH (extreme dry). Tue cold-wet (36F/70%). Wed clear+dry (68F/19%). Testing: Compare Mon VPD stress hours with aggressive pre-noon misting (engage 1.3 at 12PM) vs Sat Apr 4 which had engage 1.3 at noon in similar conditions. Mon has worse RH (13% vs 16%) but cooler temp (69 vs 64 outdoor). If temp dominates per Lesson #9, Mon stress should be <3h despite worse RH. Expected outcome: Mon VPD stress <4h (69F/13% — extreme dry but moderate temp). Tue VPD stress <1h (rain). Wed VPD stress <3h (clear+dry, early deploy). Total 3-day mister water <300 gal.

Setpoints

Sunday April 05

Primary crop-band changes:

12:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard S2 at 85F

16:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

19:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

22:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

Tactical tunable changes:

12:00d_cool 3; engage 1.4; all 1.8; pulse 60; gap 40; wt 1.5

Standard S2 at 85F

16:00d_cool 3; engage 1.5; all 1.8; pulse 60; gap 45; wt 1.5

Standard

19:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

22:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

Monday April 06

Primary crop-band changes:

05:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

09:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

12:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

16:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

19:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

22:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

Tactical tunable changes:

05:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

09:00d_cool 3; engage 1.4; all 1.8; pulse 60; gap 40; wt 1.5

Standard

12:00d_cool 3; engage 1.3; all 1.6; pulse 60; gap 30; wt 1.5

Standard

16:00d_cool 3; engage 1.3; all 1.5; pulse 60; gap 30; wt 1.5

Standard

19:00d_cool 3; engage 1.5; all 1.8; pulse 60; gap 40; wt 1.5

Standard

22:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

Tuesday April 07

Primary crop-band changes:

05:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

09:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

12:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

15:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

18:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

22:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

Tactical tunable changes:

05:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

09:00d_cool 3; engage 1.5; all 1.8; pulse 60; gap 45; wt 1.5

Standard

12:00d_cool 3; engage 1.3; all 1.6; pulse 60; gap 30; wt 1.5

Standard

15:00d_cool 3; engage 1.3; all 1.5; pulse 60; gap 30; wt 1.5

Standard

18:00d_cool 3; engage 1.4; all 1.8; pulse 60; gap 40; wt 1.5

Standard

22:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

Wednesday April 08

Primary crop-band changes:

05:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

09:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

12:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

Tactical tunable changes:

05:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

09:00d_cool 3; engage 1.3; all 1.6; pulse 60; gap 30; wt 1.5

Standard

12:00d_cool 3; engage 1.3; all 1.5; pulse 60; gap 30; wt 1.5

Standard


🌆 Evening Cycle (6:02 PM) — iris-20260405-1800

Status

validated

Outcome score

3/10

Changed parameters

temp_low, vpd_hysteresis, vpd_high, mister_engage_kpa, mister_all_kpa, mister_pulse_gap_s

Result: Sunday evening through Monday 6AM: benign conditions. Overnight held 55-57F (slab retention at 42F outdoor). VPD 0.33-0.38 overnight — no stress. Misters finally engaging (center 0.51h, west 0.17h, south 0.10h). CRITICAL FAILURE: temp_low, vpd_high, vpd_hysteresis STILL at 0 despite plan waypoints. Dispatcher batch push failed for 4th consecutive plan. vpd_high=0 corrupts stress accounting (23.6h false VPD-high). No actual harm overnight due to mild conditions, but Tuesday 35F frost will be catastrophic without temp_low=58.

Reflection

Validating previous cycle: iris-20260405-1020

Previous hypothesis: After firmware fix, the state machine will correctly engage misters when VPD exceeds thresholds. Pre-positioned misting (engage 1.3, gap 30s) during peak hours will control VPD below 2.0 avg on dry days. Result: Sunday evening through Monday 6AM: benign conditions. Overnight held 55-57F (slab retention at 42F outdoor). VPD 0.33-0.38 overnight — no stress. Misters finally engaging (center 0.51h, west 0.17h, south 0.10h). CRITICAL FAILURE: temp_low, vpd_high, vpd_hysteresis STILL at 0 despite plan waypoints. Dispatcher batch push failed for 4th consecutive plan. vpd_high=0 corrupts stress accounting (23.6h false VPD-high). No actual harm overnight due to mild conditions, but Tuesday 35F frost will be catastrophic without temp_low=58. Score: 3/10

New finding: Dispatcher batch push failure is now a systemic issue (4 consecutive plans failed to push temp_low, vpd_hysteresis, vpd_high). Zeroed vpd_high corrupts all stress metrics. Need emergency direct push mechanism bypassing normal dispatcher. → Added to Lessons Learned

Hypothesis

Conditions: Evening cycle. temp_low and vpd_hysteresis STILL stuck at 0 from Saturday reboot — noon plan dispatcher failed to push them (Lesson #6 confirmed again, 3rd time). Frost risk Tue AM (34F). Current 79F avg, VPD 1.59, all zones balanced (78-80F). Misters working post-noon-fix. Mon peak: 70F/12-13% RH (extreme dry). Tue AM: 34F frost risk then warming to 70F/20%. Wed: 74F/12% — worst VPD day of window (forecast 2.52 kPa). Testing: Wednesday 9AM aggressive deploy (engage 1.3, gap 30s) on a 74F/12% day — the most extreme dry day since system came online. Compare VPD stress hours to March 25 (88F outdoor, similar RH) to quantify the outdoor temp vs indoor VPD relationship at extreme dryness. Expected outcome: Mon VPD stress <4h. Tue VPD stress <1h (rain AM then drying). Wed VPD stress 4-6h (extreme, physics-limited). Zero cold stress all 3 days (temp_low=58 verified). Mister water <400 gal total.

Setpoints

Sunday April 05

Primary crop-band changes:

18:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

22:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

Tactical tunable changes:

18:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

22:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

Monday April 06

Primary crop-band changes:

05:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

09:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

12:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

15:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

19:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

22:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

Tactical tunable changes:

05:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

09:00d_cool 3; engage 1.5; all 1.8; pulse 60; gap 45; wt 1.5

Standard

12:00d_cool 3; engage 1.3; all 1.6; pulse 60; gap 30; wt 1.5

Standard

15:00d_cool 3; engage 1.3; all 1.5; pulse 60; gap 30; wt 1.5

Standard

19:00d_cool 3; engage 1.5; all 1.8; pulse 60; gap 40; wt 1.5

Standard

22:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

Tuesday April 07

Primary crop-band changes:

05:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

10:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

13:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

17:00high 82; low 58; vpd_h 1.8; hyst 0.3

Standard

22:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

Tactical tunable changes:

05:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

10:00d_cool 3; engage 1.5; all 1.8; pulse 60; gap 45; wt 1.5

Standard

13:00d_cool 3; engage 1.3; all 1.6; pulse 60; gap 30; wt 1.5

Standard

17:00d_cool 3; engage 1.4; all 1.8; pulse 60; gap 40; wt 1.5

Standard

22:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

Wednesday April 08

Primary crop-band changes:

05:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

09:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

13:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

17:00high 82; low 58; vpd_h 1.6; hyst 0.3

Standard

20:00high 82; low 58; vpd_h 2; hyst 0.3

Standard

Tactical tunable changes:

05:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard

09:00d_cool 3; engage 1.3; all 1.6; pulse 60; gap 30; wt 1.5

Standard

13:00d_cool 3; engage 1.3; all 1.5; pulse 60; gap 30; wt 1.5

Standard

17:00d_cool 3; engage 1.3; all 1.5; pulse 60; gap 30; wt 1.5

Standard

20:00d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 1.5

Standard


End-of-Day Summary

Climate

Temperature

44.0–83.5°F; avg 65.4°F

VPD

0.19–2.88 kPa; avg 0.87 kPa

Relative humidity

27.5–85.4%

Stress Hours

  • Heat stress (>85°F): 8.7h
  • VPD stress (>2.0 kPa): 13.2h
  • Cold stress (<55°F): 12.2h

Economics

Electric

USD 0.64

Gas

USD 0.85

Water

USD 0.760

Total

USD 2.25

Equipment Runtimes

Fan 1799 min

Primary exhaust runtime.

Fan 2799 min

Secondary exhaust runtime.

Vent409 min

Intake vent runtime.

Fog275 min

Fogger runtime.

Heat 1 electric82 min

Electric heater runtime.

Heat 2 gas82 min

Gas heater runtime.

Grow lights2766 min

Supplemental lighting runtime.

Mister south0.10h

South mister runtime.

Mister west0.17h

West mister runtime.

Mister center0.51h

Center mister runtime.

Water

  • Total: 340 gal
  • Mister: 20 gal

Hourly Pattern

12:0074.9°F; VPD 1.95 kPa

RH 34.5%.

13:0083.9°F; VPD 2.95 kPa

RH 26.8%.

14:0086.1°F; VPD 3.44 kPa

RH 19.9%.

15:0085.7°F; VPD 3.33 kPa

RH 21.1%.

16:0082.3°F; VPD 3.06 kPa

RH 19.7%.

17:0080.2°F; VPD 1.85 kPa

RH 47.7%.

18:0076.8°F; VPD 1.60 kPa

RH 49.3%.

19:0069.7°F; VPD 1.10 kPa

RH 56.0%.

20:0065.3°F; VPD 0.84 kPa

RH 60.9%.

21:0062.5°F; VPD 0.72 kPa

RH 62.7%.

22:0060.2°F; VPD 0.64 kPa

RH 64.0%.

23:0058.6°F; VPD 0.59 kPa

RH 65.2%.

00:0059.7°F; VPD 0.64 kPa

RH 63.4%.

01:0059.8°F; VPD 0.65 kPa

RH 63.0%.

02:0059.5°F; VPD 0.65 kPa

RH 62.5%.

03:0059.9°F; VPD 0.68 kPa

RH 61.7%.

04:0059.4°F; VPD 0.67 kPa

RH 61.5%.

05:0061.5°F; VPD 0.77 kPa

RH 58.6%.

06:0051.0°F; VPD 0.39 kPa

RH 71.9%.

07:0044.4°F; VPD 0.20 kPa

RH 80.3%.

08:0045.7°F; VPD 0.22 kPa

RH 79.7%.

09:0047.4°F; VPD 0.21 kPa

RH 81.3%.

10:0067.0°F; VPD 0.52 kPa

RH 77.3%.

11:0076.0°F; VPD 0.93 kPa

RH 71.0%.

7-Day Stress Context

2026-03-30Heat 14.5h; VPD high 10.5h

Cold stress 3.9h.

2026-03-31Heat 3.0h; VPD high 1.7h

Cold stress 12.1h.

2026-04-01Heat 0.5h; VPD high 2.1h

Cold stress 19.5h.

2026-04-02Heat 10.8h; VPD high 8.9h

Cold stress 11.7h.

2026-04-03Heat 6.2h; VPD high 13.2h

Cold stress 16.5h.

2026-04-04Heat 7.6h; VPD high 13.8h

Cold stress 13.0h.

2026-04-05Heat 8.7h; VPD high 13.2h

Cold stress 12.2h.