April 06, 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.
🌅 Morning Cycle (6:06 AM) — iris-20260406-0600
validated
3/10
temp_low, vpd_high, vpd_hysteresis, d_cool_stage_2, mister_engage_kpa, mister_all_kpa, mister_pulse_gap_s
Result: By noon Monday, the 6AM emergency plan only partially dispatched. mister_engage_kpa updated to 1.5 at 9AM, but current_active_setpoints still show temp_low=0, vpd_high=0, vpd_hysteresis=0 at 12PM. That confirms the experiment: dispatcher batch push failure is systemic, not intermittent. Despite broken target reporting, actual climate performance was decent this morning: overnight held 56-57F with no cold stress, and midday greenhouse is 79.7F avg with 1.90 VPD, south zone 83.8F / 2.23 VPD. Misters remain mostly inactive (mister_state 0.0, only 0.82h total over 24h), so the aggressive noon deploy has not materially engaged yet.
Reflection
Validating previous cycle: iris-20260405-1800
Previous hypothesis: temp_low=58 will protect against 34F Tue AM frost (heaters engage at 58F, gas at 55F). Mon aggressive noon deploy will limit stress to <4h despite 12% RH. Wed is the real test: 74F/12% is March-25-level stress. Even max misting will see 5-6h VPD stress. Lesson #4: accept it. Result: By noon Monday, the 6AM emergency plan only partially dispatched. mister_engage_kpa updated to 1.5 at 9AM, but current_active_setpoints still show temp_low=0, vpd_high=0, vpd_hysteresis=0 at 12PM. That confirms the experiment: dispatcher batch push failure is systemic, not intermittent. Despite broken target reporting, actual climate performance was decent this morning: overnight held 56-57F with no cold stress, and midday greenhouse is 79.7F avg with 1.90 VPD, south zone 83.8F / 2.23 VPD. Misters remain mostly inactive (mister_state 0.0, only 0.82h total over 24h), so the aggressive noon deploy has not materially engaged yet. Score: 3/10
New finding: Confirmed: dispatcher can push some params (mister_engage_kpa) while leaving critical core params stale at 0. This is a partial-write failure mode, worse than total failure because it creates false confidence. Large 10-param waypoints are not reliably atomic. Split critical params into dedicated emergency waypoints and stagger large batches. → Added to Lessons Learned
Hypothesis
Conditions: EMERGENCY: 5 critical params zeroed (temp_low=0, vpd_high=0, vpd_hysteresis=0, d_cool_stage_2=0, mister_water_budget=0) — 4th consecutive dispatcher failure. Current 56.6F avg, VPD 0.38, 42F outdoor, HEAT_S1 active. 72h window: Mon clear+extreme dry (70F/13% RH), Tue AM frost 35F then afternoon extreme dry (72F/12% RH = worst of window), Wed thunderstorm risk PM then clearing. Testing: Monitor today whether dispatcher actually pushes all 10 params from the 6AM emergency waypoint. If vpd_high, temp_low, vpd_hysteresis, d_cool_stage_2 remain at 0 after first dispatch cycle (~15 min), the dispatcher bug is confirmed systemic and needs emergency Iris (our OpenClaw AI agent)-dev fix. Secondary: compare Mon 12PM aggressive deploy (engage 1.3, gap 30s) VPD outcomes with previous Monday-like days. Expected outcome: Zero params restored within 15 min of plan insertion. Mon VPD stress <4h. Tue cold stress 0h (temp_low=58 holds). Tue PM VPD stress 4-6h (physics-limited at 12% RH). Wed VPD stress <3h (thunderstorm moisture helps). Total 3-day mister water <350 gal.
Setpoints
Monday April 06
Primary crop-band changes:
EMERGENCY: Was 0. COOL_S2 at room temp without this.
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
Tactical tunable changes:
EMERGENCY: Was 0. COOL_S2 at room temp without this.
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
Tuesday April 07
Primary crop-band changes:
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
Tactical tunable changes:
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
Wednesday April 08
Primary crop-band changes:
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
Tactical tunable changes:
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
☀️ Midday Cycle (12:02 PM) — iris-20260406-1200
validated
7/10
temp_low, vpd_high, vpd_hysteresis, d_cool_stage_2, mister_engage_kpa, mister_all_kpa, mister_pulse_gap_s
Result: Minute-staggering succeeded operationally even though plan coverage validation marked the plan incomplete. By 5:25 PM the dispatcher pushed temp_low=58, vpd_high=1.60, vpd_hysteresis=0.30, temp_high=82, mister_water_budget_gal=500, and misting params. current_active_setpoints at 6 PM are healthy: temp_low=58, vpd_high=1.6, vpd_hysteresis=0.3, mister_engage=1.3, mister_all=1.5, pulse_gap=30. Climate also improved through the afternoon: greenhouse VPD peaked around 1.90 instead of the forecast 2.2+, and by 6 PM all zones were back in a safe 1.00-1.37 VPD range. The experiment worked technically, but the chart/coverage system cannot represent split-minute transitions as complete.
Reflection
Validating previous cycle: iris-20260405-1800
Previous hypothesis: temp_low=58 will protect against 34F Tue AM frost (heaters engage at 58F, gas at 55F). Mon aggressive noon deploy will limit stress to <4h despite 12% RH. Wed is the real test: 74F/12% is March-25-level stress. Even max misting will see 5-6h VPD stress. Lesson #4: accept it. Result: Minute-staggering succeeded operationally even though plan coverage validation marked the plan incomplete. By 5:25 PM the dispatcher pushed temp_low=58, vpd_high=1.60, vpd_hysteresis=0.30, temp_high=82, mister_water_budget_gal=500, and misting params. current_active_setpoints at 6 PM are healthy: temp_low=58, vpd_high=1.6, vpd_hysteresis=0.3, mister_engage=1.3, mister_all=1.5, pulse_gap=30. Climate also improved through the afternoon: greenhouse VPD peaked around 1.90 instead of the forecast 2.2+, and by 6 PM all zones were back in a safe 1.00-1.37 VPD range. The experiment worked technically, but the chart/coverage system cannot represent split-minute transitions as complete. Score: 7/10
New finding: Minute-staggering improves dispatcher reliability, but the plan coverage validator and homepage expect all 10 core params at the exact same timestamp. Use same-timestamp complete waypoints for published plans, and if emergency reassertion is needed, add separate duplicate complete transitions rather than split half-waypoints. → Added to Lessons Learned
Hypothesis
Conditions: Noon replan after confirming 6AM emergency plan only partially dispatched. Current greenhouse 79.7F avg, south 83.8F / 2.23 VPD, east 76.5F / 1.55 VPD. Current_active_setpoints still show temp_low=0, vpd_high=0, vpd_hysteresis=0 despite morning insert. Forecast remains dry this afternoon, frost 35F Tue dawn, then Tue PM worst VPD window (72F/16-17% RH), Wed clearer morning then cloudier afternoon. Testing: Test whether minute-staggering critical params (12:00 core params, 12:01 misting params) improves dispatcher success compared with same-timestamp 10-param waypoints. Measure by checking current_active_setpoints / recent dispatched changes at next cycle. Success = temp_low, vpd_high, vpd_hysteresis no longer 0 by evening cycle. Expected outcome: By evening cycle, critical params no longer zeroed. Mon VPD stress held under 5h despite late salvage. Tue cold stress 0h. Tue PM VPD stress 4-6h remains likely due to physics, but with actual misting engagement instead of silent failure.
Setpoints
Monday April 06
Primary crop-band changes:
Emergency reassert. Cooling staging must not be 0.
Standard.
Standard.
Standard.
Tactical tunable changes:
Emergency reassert. Cooling staging must not be 0.
Separate minute. Aggressive all-zone threshold.
Standard.
Tightest all-zone.
Standard.
Relax.
Standard.
Default.
Tuesday April 07
Primary crop-band changes:
Standard.
Standard.
Standard.
Standard.
Standard.
Tactical tunable changes:
Standard.
Default.
Standard.
Moderate.
Standard.
Tightest all-zone.
Standard.
Relax.
Standard.
Default.
Wednesday April 08
Primary crop-band changes:
Standard.
Standard.
Standard.
Standard.
Tactical tunable changes:
Standard.
Aggressive.
Standard.
Tight all-zone.
Standard.
Moderate.
Standard.
Default.
🌆 Evening Cycle (6:01 PM) — iris-20260406-1800
validated
8/10
temp_low, vpd_high, vpd_hysteresis, mister_engage_kpa, mister_all_kpa, mister_pulse_gap_s
Result: Previous evening plan restored complete same-timestamp transitions successfully. Plan coverage validation is now complete at 13 of 13 transitions, active setpoints remained non-zero through the night, dawn cold stress stayed at 0h, and the greenhouse entered this cycle in a healthy HEAT_S1_HUM_IDLE posture. Remaining issue: today and tomorrow still carry strong afternoon dry-air VPD risk, so controller health is improved but climate stress remains weather-driven.
Reflection
Validating previous cycle: iris-20260406-0600
Previous hypothesis: Immediate restoration of zeroed params will prevent frost damage tomorrow and enable misting today. Mon afternoon VPD stress 3-5h (70F/13% is warm-dry per Lesson #9 — temp dominates VPD at extreme dryness). Tue dual threat: frost AM (both heaters), then worst VPD afternoon (72F/12% = outdoor VPD 2.37). Wed thunderstorm at 3PM may actually help VPD. Result: Previous evening plan restored complete same-timestamp transitions successfully. Plan coverage validation is now complete at 13 of 13 transitions, active setpoints remained non-zero through the night, dawn cold stress stayed at 0h, and the greenhouse entered this cycle in a healthy HEAT_S1_HUM_IDLE posture. Remaining issue: today and tomorrow still carry strong afternoon dry-air VPD risk, so controller health is improved but climate stress remains weather-driven. Score: 8/10
New finding: Complete same-timestamp transitions are working again when the controller is healthy. Keep published plans as full 10-parameter transitions at one timestamp, then verify dispatch rather than splitting production waypoints. → Added to Lessons Learned
Hypothesis
Conditions: Evening cycle after dispatcher recovery. Current active setpoints are healthy again: temp_low=58, vpd_high=1.6, vpd_hysteresis=0.3, mister_engage=1.3, mister_all=1.5, pulse_gap=30. Greenhouse has relaxed from the afternoon peak to 78-79F with zone VPD 1.0-1.37. Forecast: Tue dawn frost 35F, then Tue PM 72F/15% RH with VPD 2.31. Wed looks worse: 72-73F with 11-15% RH and 2.49 peak VPD, the harshest window of the next 72h. Testing: Test whether returning to complete same-timestamp transitions works now that the controller is healthy again. Measure at next cycle: current_active_setpoints should still match the live evening values and plan coverage should be complete. Secondary measure: Tue dawn cold stress remains 0h while Wed afternoon VPD stress stays below 6h. Expected outcome: Plan coverage validator passes. Tue cold stress 0h. Tue PM VPD stress 3-5h. Wed PM VPD stress 4-6h with max aggression. No zeroed critical params recur.
Setpoints
Monday April 06
Primary crop-band changes:
Standard.
Standard.
Tactical tunable changes:
Standard.
Standard.
Tuesday April 07
Primary crop-band changes:
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
Tactical tunable changes:
Standard.
Standard.
Standard.
Standard.
Standard.
Standard.
Wednesday April 08
Primary crop-band changes:
Standard.
Standard.
Standard.
Standard.
Standard.
Tactical tunable changes:
Standard.
Standard.
Standard.
Standard.
Standard.
End-of-Day Summary
Climate
54.9–82.4°F; avg 66.2°F
0.31–2.58 kPa; avg 0.87 kPa
28.4–80.4%
Stress Hours
- Heat stress (>85°F): 7.8h
- VPD stress (>2.0 kPa): 10.6h
- Cold stress (<55°F): 13.6h
Economics
USD 0.20
USD 0.19
USD 0.330
USD 0.72
Equipment Runtimes
Primary exhaust runtime.
Secondary exhaust runtime.
Intake vent runtime.
Fogger runtime.
Electric heater runtime.
Gas heater runtime.
Supplemental lighting runtime.
South mister runtime.
West mister runtime.
Center mister runtime.
Water
- Total: 132 gal
- Mister: 13 gal
Crop Health (Gemini Vision)
Observation notes are collapsed below to avoid publishing partial vision snippets.
Observation notes are collapsed below to avoid publishing partial vision snippets.
Observation notes are collapsed below to avoid publishing partial vision snippets.
Vision observation notes
[minor leaf discoloration/browning on some leaves, potential for overwatering] Several large potted plants are on the floor. Leaves are generally green, but some plants appear sparse or show minor browning on leaf edges. High soil moisture (58.0%) suggests recent watering or potential overwatering.
Various small potted plants are on the shelves. General health is difficult to assess due to distance and image resolution, but they do not appear to be actively thriving. High soil moisture (56.5%) is noted.
[dryness in aerial roots] Aerial roots are visible hanging in the center zone and appear somewhat dry and tangled.
Hourly Pattern
RH 55.1%.
RH 48.0%.
RH 43.1%.
RH 43.9%.
RH 51.9%.
RH 52.8%.
RH 65.4%.
RH 72.2%.
RH 75.4%.
RH 77.3%.
RH 78.9%.
RH 79.0%.
RH 79.0%.
RH 78.2%.
RH 78.6%.
RH 77.6%.
RH 76.4%.
RH 75.5%.
RH 76.0%.
RH 75.4%.
RH 71.5%.
RH 68.7%.
RH 61.9%.
RH 55.4%.
7-Day Stress Context
Cold stress 12.1h.
Cold stress 19.5h.
Cold stress 11.7h.
Cold stress 16.5h.
Cold stress 13.0h.
Cold stress 12.2h.
Cold stress 13.6h.