May 18, 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.
5
2
3
0
| Event | Delivered | Type | Status | Result | Resolved | Note |
|---|---|---|---|---|---|---|
| Morning planning cycle | 05:43 | SUNRISE | plan_written | iris-20260518-0543 | 05:46 | Wrote public plan iris-20260518-0543. Resolved 05:46 MDT. |
| Solar peak planning checkpoint | 12:58 | SOLAR_MAX | acked | - | 12:58 | Acknowledged: SOLAR_MAX reviewed live climate, forecast, active plan, and setpoints. Live solar (~198 W/m2) is above the immediate overcast forecast but still modest and below the SUNRISE plan's expected weak-solar ceiling; house remains IDLE, temp 73.5F within 72-78F band, VPD 0.98 kPa below vpd_high 1.30 with no VPD-high stress, RH 65%, and dew margin 12.5F. Existing cold/wet suppression plan covers the afternoon and no tunable nudge is warranted. Resolved 12:58 MDT. |
| Peak Stress | 14:58 | TRANSITION | acked | - | 14:58 | Acknowledged: Peak-stress transition checked: current house is in band overall (75.9F, VPD 1.14 vs vpd_high 1.23) with safe dew margin 13.1F, IDLE mode, no fans/vent/misters/fog active, and only heat1 on. South VPD is locally high at 1.71 but matches the south target context and average VPD is below the high band; no VPD-high or heat stress is climbing beyond the active cold/wet suppression plan... Resolved 14:58 MDT. |
| Decline | 19:13 | TRANSITION | acked | - | 19:14 | Acknowledged: Decline transition checked: climate is tracking the cold/wet suppression plan. House is IDLE at 64.3F, VPD 0.47 kPa, RH 78%, dew margin 7.1F; outdoor remains cold/saturated, fog/misters/vent/fans are off, heat1 is providing mild support, and the existing plan already has a 22:00 conservative overnight waypoint. No concrete signal warrants a tunable change. Resolved 19:14 MDT. |
| Evening planning cycle | 20:12 | SUNSET | plan_written | iris-20260518-2012 | 20:15 | Wrote public plan iris-20260518-2012. Resolved 20:15 MDT. |
🌅 Morning Cycle (5:46 AM) — iris-20260518-0543
validated
7/10
bias_cool, bias_heat, d_cool_stage_2, d_heat_stage_2, dwell_gate_ms, enthalpy_close, enthalpy_open, fog_escalation_kpa ...
Reflection
Validating previous cycle: iris-20260517-2014
Previous hypothesis: SUNSET overnight plan for Sunday 2026-05-17. Today’s score improved sharply versus the 7-day trend (80.1 vs 50.4) with both-axis compliance 76.6%, low cost USD 0.85 vs USD 4.79, and no dew-point risk. VPD-high was still the largest stress (3.23h), but the current and forecast risk has shifted: house VPD is now 0.50 kPa with RH 78% and a safe 7.1F dew margin, while the next 12h are cold, saturated, cloudy/rainy, and fall to 41-45F with outdoor VPD near 0.05-0.10 kPa. I evaluated the governing SUNRISE plan at 6/10 versus anchor 3; my grade is higher because the operator-level VPD-low, dew-risk, water, and VPD-high targets mostly succeeded, while the anchor penalized 171 guardrail events and the plan missed heat/compliance targets after actual solar exceeded forecast… Result: Plan-window scorecard for the 2026-05-18 SUNRISE cold/wet suppression plan: score 73.7 with 75.0% both-axis compliance, temp compliance 75.3%, VPD compliance 84.3%, heat stress 0.22h, cold stress 0.90h, VPD-high 0.00h, VPD-low 0.05h, cost about USD 0.60 in the plan window. Full-day partial score by sunset improved to 87.0 with 88.6% both-axis compliance, temp 88.9%, VPD 99.5%, 0 dp-risk hours, and only 8 gal water. Hypothesis was mostly validated: conservative moisture posture kept VPD-low and condensation essentially at zero, while bias_cool +4 and gas staging bounded cold stress. Remaining score loss was mostly temp/cold-band alignment and gas cost from a cold saturated day, not VPD control failure. Score: 7/10
New finding: Cold wet overcast days with outdoor VPD near 0.1-0.3 kPa validate high moisture thresholds, conservative fog escalation, wide VPD hysteresis, short sealed-mist residence, and bias_cool +4 with gas staging; success should be judged by VPD-low and dp-risk avoidance plus bounded cold stress rather than water use alone. → Added to Lessons Learned
Hypothesis
Testing: All-day cold/wet suppression with daytime bias_heat trim: test whether high moisture thresholds plus bias_cool +4 and gas staging keep VPD-low/dp-risk at zero while reducing heat overshoot versus the overnight posture. Expected outcome: By tonight: planner score >80, both-axis compliance >80%, VPD compliance >95%, VPD-low 0h, dp-risk 0h, cold stress <1.5h, heat stress <1.0h, mister/fog water near zero, and total daily cost below the 7-day average.
Conditions
44.0°F
85.0%
294.0 W/m²
96.0%
Cold wet overcast day: outdoor 38-44F, RH 85-100%, raw outdoor VPD 0.00-0.13 kPa, rain probability high through afternoon, and current house is 64.5F, VPD 0.48 kPa, RH 77%, dew margin 7.4F, IDLE with heat1 on. Primary risks are VPD-low/condensation pressure and heater-to-vent/heat overshoot, not dry-air VPD-high.
Expected stress windows
Keep mister_engage_kpa 2.35-2.45, mister_all_kpa 2.5, 60s gaps, 900s mist delays, fog_escalation 1.0, vpd_hysteresis 0.50, and mist_max_closed_vent_s 120s.
Use d_heat_stage_2 3.0, heat_hysteresis 1.5, dwell gate ON, and bias_cool +4.0; keep bias_heat modest during day and restore 1.75 in the evening as outdoor falls toward the high 30s.
Avoid over-driving heaters through the small solar/rainy midday window by trimming bias_heat to 1.25 while keeping wide cooling bias to prevent vent dumps.
Parameter rationale
Reduce heater overshoot/heat stress while keeping cold stress under about 1.5h using gas staging and slab retention.
Prevent vent dumps after heater overshoot and keep cold stress bounded.
Keep VPD-low near 0h and misting water near zero unless an unexpected live VPD rise occurs.
Avoid fog-driven condensation and keep dp_risk_hours at 0.
Maintain minimum dew margin above 5F.
Reduce ordinary mode churn without blocking safety or thermal-relief exits.
Setpoints
Monday May 18
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 05:50 | hyst 0.5 | Immediate sunrise cold/wet posture: suppress mist/fog, keep |
| 08:30 | hyst 0.5 | Morning rain block: outdoor VPD stays near zero; keep moistu |
| 11:30 | hyst 0.5 | Wet midday with possible small solar pulse: trim heat bias t |
| 14:00 | hyst 0.5 | Peak rain/cold period and forecast solar blip: remain humidi |
| 18:30 | hyst 0.5 | Evening cold returns with little solar: restore stronger hea |
| 22:00 | hyst 0.5 | Cold saturated overnight handoff: continue gas-friendly heat |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 05:50 | d_cool 3; engage 2.4; all 2.5; pulse 60; gap 60; wt 2 | Immediate sunrise cold/wet posture: suppress mist/fog, keep |
| 08:30 | d_cool 3; engage 2.4; all 2.5; pulse 60; gap 60; wt 2 | Morning rain block: outdoor VPD stays near zero; keep moistu |
| 11:30 | d_cool 3; engage 2.4; all 2.5; pulse 60; gap 60; wt 2 | Wet midday with possible small solar pulse: trim heat bias t |
| 14:00 | d_cool 3; engage 2.45; all 2.5; pulse 60; gap 60; wt 2 | Peak rain/cold period and forecast solar blip: remain humidi |
| 18:30 | d_cool 3; engage 2.4; all 2.5; pulse 60; gap 60; wt 2 | Evening cold returns with little solar: restore stronger hea |
| 22:00 | d_cool 3; engage 2.4; all 2.5; pulse 60; gap 60; wt 2 | Cold saturated overnight handoff: continue gas-friendly heat |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 05:50 | bias_cool | initial 4 |
| 05:50 | bias_heat | initial 1.5 |
| 05:50 | d_heat_stage_2 | initial 3 |
| 05:50 | dwell_gate_ms | initial 300000 |
| 05:50 | enthalpy_close | initial 1 |
| 05:50 | enthalpy_open | initial -2 |
| 05:50 | fog_escalation_kpa | initial 1 |
| 05:50 | heat_hysteresis | initial 1.5 |
| 05:50 | min_fog_off_s | initial 180 |
| 05:50 | min_fog_on_s | initial 45 |
| 05:50 | min_heat_off_s | initial 180 |
| 05:50 | min_heat_on_s | initial 120 |
| 05:50 | min_vent_off_s | initial 60 |
| 05:50 | min_vent_on_s | initial 60 |
| 05:50 | mist_backoff_s | initial 2400 |
| 05:50 | mist_max_closed_vent_s | initial 120 |
| 05:50 | mist_thermal_relief_s | initial 90 |
| 05:50 | mister_all_delay_s | initial 900 |
| 05:50 | mister_engage_delay_s | initial 900 |
| 05:50 | mister_water_budget_gal | initial 600 |
| 05:50 | outdoor_staleness_max_s | initial 600 |
| 05:50 | sw_dwell_gate_enabled | initial 1 |
| 05:50 | sw_fog_closes_vent | initial 1 |
| 05:50 | sw_fsm_controller_enabled | initial 1 |
| 05:50 | sw_mister_closes_vent | initial 1 |
| 05:50 | sw_summer_vent_enabled | initial 1 |
| 05:50 | temp_hysteresis | initial 2 |
| 05:50 | vent_prefer_dp_delta_f | initial 5 |
| 05:50 | vent_prefer_temp_delta_f | initial 5 |
| 05:50 | vpd_watch_dwell_s | initial 120 |
| 11:30 | bias_heat | 1.5 → 1.25 |
| 18:30 | bias_heat | 1.25 → 1.75 |
🌆 Evening Cycle (8:15 PM) — iris-20260518-2012
validated
8/10
bias_cool, bias_heat, d_cool_stage_2, d_heat_stage_2, dwell_gate_ms, enthalpy_close, enthalpy_open, fog_escalation_kpa ...
Reflection
Validating previous cycle: iris-20260518-0543
Previous hypothesis: SUNRISE plan for Monday 2026-05-18. Yesterday improved sharply: daily score 81.7, both-axis compliance 78.8%, temp compliance 85.2%, VPD compliance 86.1%, cost USD 1.04 vs 7-day average USD 4.79, and 0 dp-risk hours. VPD-high and heat were yesterday’s dominant stresses, but the completed overnight plan validated the cold/wet suppression posture: plan-window score 85.4, VPD compliance 100%, VPD-low 0h, dp-risk 0h, cold 0.20h. My prior self-score 8 deviated from anchor 5 because the anchor penalized guardrail/dispatched events while operator safety goals were fully met; I am carrying the operational lesson forward but being conservative about heat overshoot today. Today’s forecast is cold, saturated, rainy, and overcast with raw outdoor VPD 0.00-0.13 kPa, peak solar only about 294 W/m2, and temperatures 38-44F… Result: Overnight plan-window result: score 85.5 with 83.4% both-axis compliance, temp compliance 83.4%, VPD compliance 100.0%, heat stress 0.04h, cold stress 0.32h, VPD-high 0.00h, VPD-low 0.00h, and plan-window cost about USD 0.394. The full previous day scorecard was 86.6 with 88.8% both-axis compliance, temp 89.1%, VPD 99.6%, 2.12h cold stress, 0.48h heat stress, 0.10h VPD-low, 0 VPD-high, cost USD 3.36 mostly gas-driven, 8 gal water, and 0 dp-risk hours. Hypothesis was validated: high mist thresholds, conservative fog, short sealed-mist cap, wide VPD hysteresis, bias_cool +4, and modest gas staging kept VPD-low and condensation at zero overnight while bounding cold stress. Remaining score loss was the structural spring-morning temp/cold-band alignment rather than humidity control failure. Score: 8/10
New finding: Cold saturated nights with outdoor VPD near 0.05-0.15 kPa validate conservative moisture suppression plus bias_cool +4 and modest gas staging: keep mister_engage_kpa 2.35-2.45, mister_all_kpa 2.5, fog_escalation_kpa 1.0, 60s gaps, 300/600s mist delays, 120s sealed cap, and dwell gate on to maintain 0 VPD-high/VPD-low and 0 dp-risk while keeping cold stress under about 0.5h. → Added to Lessons Learned
Hypothesis
Testing: Cold saturated overnight restoration: test whether high mist thresholds plus bias_cool +4 and modest bias_heat +2 at the coldest hours keep VPD-low and dp-risk near zero while reducing cold stress versus today. Expected outcome: By Tuesday sunrise: VPD-high 0h, VPD-low under 0.25h, dp-risk 0h, cold stress near or below 1h, paired compliance above 80% for the overnight window, and cost dominated by gas but remaining proportional to sub-40F weather.
Conditions
40.0°F
84.0%
24.0 W/m²
100.0%
Cold saturated overnight: outdoor 40F at sunset falling to 37-38F pre-dawn, RH 84-89%, raw outdoor VPD 0.09-0.12 kPa, 100% cloud, no meaningful solar. Current house is 63.3F, VPD 0.46 kPa, RH 78%, dew margin 7.2F, IDLE with heat1 on. Main challenge is stable gas/electric heating and avoiding VPD-low/condensation, not VPD-high.
Expected stress windows
bias_cool 4.0, bias_heat 1.75 rising to 2.0 at coldest hours, d_heat_stage_2 3.0, heat_hysteresis 1.5, dwell gate ON, and normal nonzero heat timers to prevent heater-to-vent oscillation while allowing sustained gas support.
mister_engage_kpa 2.35-2.45, mister_all_kpa 2.5, 60s pulse gaps, 300/600s mist delays, fog_escalation 1.0, vpd_hysteresis 0.50, and 120s sealed-mist cap. This also protects dew-point margin because structured hypothesis only allows heat/cold/vpd_high/vpd_low stress kinds.
Parameter rationale
Prevent physical misting overnight and keep VPD-low under 0.25h with dp-risk at 0h.
Keep all-zone mist unavailable unless an unexpected severe VPD spike occurs.
Avoid short humidity pulses during transient VPD noise.
Avoid all-zone mist rotation overnight.
Reduce VPD-low and water use without increasing VPD-high stress.
Keep cold stress near or below 1h overnight while maintaining dew margin above 5F.
Avoid vent dumps after heater overshoot and keep heat/cold whipsaw low.
Maintain dp_risk_hours at 0.
Reduce dehum/mist chatter while preserving safety.
Setpoints
Monday May 18
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 20:20 | hyst 0.5 | evening_settle: restore conservative saturated-night moistur |
| 22:30 | hyst 0.5 | mid_evening_cold_deepening: outdoor near 39F, saturated and |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 20:20 | d_cool 3; engage 2.4; all 2.5; pulse 60; gap 60; wt 2 | evening_settle: restore conservative saturated-night moistur |
| 22:30 | d_cool 3; engage 2.4; all 2.5; pulse 60; gap 60; wt 2 | mid_evening_cold_deepening: outdoor near 39F, saturated and |
Tuesday May 19
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 02:00 | hyst 0.5 | coldest_saturated_block: forecast 38F, RH near 89%, outdoor |
| 05:30 | hyst 0.5 | pre_dawn_hold: outdoor still 38F with no solar; hold heating |
| 08:15 | hyst 0.5 | morning_handoff_fallback: if the sunrise cycle is delayed, r |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 02:00 | d_cool 3; engage 2.45; all 2.5; pulse 60; gap 60; wt 2 | coldest_saturated_block: forecast 38F, RH near 89%, outdoor |
| 05:30 | d_cool 3; engage 2.45; all 2.5; pulse 60; gap 60; wt 2 | pre_dawn_hold: outdoor still 38F with no solar; hold heating |
| 08:15 | d_cool 3; engage 2.35; all 2.5; pulse 60; gap 60; wt 2 | morning_handoff_fallback: if the sunrise cycle is delayed, r |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 20:20 | bias_cool | initial 4 |
| 20:20 | bias_heat | initial 1.75 |
| 20:20 | d_heat_stage_2 | initial 3 |
| 20:20 | dwell_gate_ms | initial 300000 |
| 20:20 | enthalpy_close | initial 1 |
| 20:20 | enthalpy_open | initial -2 |
| 20:20 | fog_escalation_kpa | initial 1 |
| 20:20 | heat_hysteresis | initial 1.5 |
| 20:20 | min_fog_off_s | initial 180 |
| 20:20 | min_fog_on_s | initial 45 |
| 20:20 | min_heat_off_s | initial 180 |
| 20:20 | min_heat_on_s | initial 120 |
| 20:20 | min_vent_off_s | initial 60 |
| 20:20 | min_vent_on_s | initial 60 |
| 20:20 | mist_backoff_s | initial 2400 |
| 20:20 | mist_max_closed_vent_s | initial 120 |
| 20:20 | mist_thermal_relief_s | initial 90 |
| 20:20 | mister_all_delay_s | initial 600 |
| 20:20 | mister_engage_delay_s | initial 300 |
| 20:20 | mister_water_budget_gal | initial 600 |
| 20:20 | outdoor_staleness_max_s | initial 600 |
| 20:20 | sw_dwell_gate_enabled | initial 1 |
| 20:20 | sw_fog_closes_vent | initial 1 |
| 20:20 | sw_fsm_controller_enabled | initial 1 |
| 20:20 | sw_mister_closes_vent | initial 1 |
| 20:20 | sw_summer_vent_enabled | initial 1 |
| 20:20 | temp_hysteresis | initial 2 |
| 20:20 | vent_prefer_dp_delta_f | initial 5 |
| 20:20 | vent_prefer_temp_delta_f | initial 5 |
| 20:20 | vpd_watch_dwell_s | initial 120 |
| 22:30 | bias_heat | 1.75 → 1.85 |
| 02:00 | bias_heat | 1.85 → 2 |
| 08:15 | bias_cool | 4 → 3.5 |
| 08:15 | bias_heat | 2 → 1.5 |
End-of-Day Summary
Climate
61.7–76.5°F; avg 67.8°F
0.33–1.23 kPa; avg 0.67 kPa
60.9–83.4%
Stress Hours
- Heat stress (>85°F): 0.5h
- VPD stress (>2.0 kPa): 0.0h
- Cold stress (<55°F): 2.1h
Economics
USD 5.87
USD 3.27
USD 0.040
USD 9.18
Equipment Runtimes
| Equipment | Runtime | Reading |
|---|---|---|
| Fan 1 | 0 min | Primary exhaust runtime. |
| Fan 2 | 0 min | Secondary exhaust runtime. |
| Vent | 0 min | Intake vent runtime. |
| Fog | 0 min | Fogger runtime. |
| Heat 1 electric | 1312 min | Electric heater runtime. |
| Heat 2 gas | 315 min | Gas heater runtime. |
| Grow lights | 1757 min | Supplemental lighting runtime. |
| Mister south | 0.00h | South mister runtime. |
| Mister west | 0.00h | West mister runtime. |
| Mister center | 0.01h | Center mister runtime. |
Water
- Total: 8 gal
- Mister: 0 gal
Crop Health (Gemini Vision)
| Crop | Zone | Health | Observations | Note |
|---|---|---|---|---|
| Canna Lilies | south | 80% | 4 | Observation notes are collapsed below to avoid publishing partial vision snippets. |
| Vanda Orchids | center | 80% | 4 | Observation notes are collapsed below to avoid publishing partial vision snippets. |
| lettuce | east | 80% | 4 | Observation notes are collapsed below to avoid publishing partial vision snippets. |
| pepper | east | 70% | 4 | Observation notes are collapsed below to avoid publishing partial vision snippets. |
| strawberry | east | 80% | 4 | Observation notes are collapsed below to avoid publishing partial vision snippets. |
Vision observation notes
Canna Lilies appear healthy with robust foliage visible in the IR image.
Hanging orchids appear healthy with green foliage.
Seedlings appear healthy and are establishing well.
Seedlings are growing, but some variation in size is visible.
Seedlings are growing steadily.
Hourly Pattern
| Hour | Temperature | VPD | RH |
|---|---|---|---|
| 12:00 | 75.7°F | 1.03 kPa | 66.1% |
| 13:00 | 73.3°F | 0.85 kPa | 70.0% |
| 14:00 | 77.1°F | 1.23 kPa | 62.3% |
| 15:00 | 79.1°F | 1.46 kPa | 57.7% |
| 16:00 | 76.0°F | 1.01 kPa | 67.3% |
| 17:00 | 76.2°F | 0.93 kPa | 70.1% |
| 18:00 | 76.3°F | 1.05 kPa | 66.3% |
| 19:00 | 70.5°F | 0.97 kPa | 62.1% |
| 20:00 | 66.2°F | 0.53 kPa | 76.4% |
| 21:00 | 64.0°F | 0.51 kPa | 75.6% |
| 22:00 | 62.9°F | 0.42 kPa | 78.6% |
| 23:00 | 63.7°F | 0.39 kPa | 80.5% |
| 00:00 | 63.4°F | 0.38 kPa | 81.1% |
| 01:00 | 63.3°F | 0.38 kPa | 81.0% |
| 02:00 | 63.3°F | 0.40 kPa | 80.0% |
| 03:00 | 63.4°F | 0.41 kPa | 79.4% |
| 04:00 | 63.3°F | 0.41 kPa | 79.3% |
| 05:00 | 64.0°F | 0.44 kPa | 78.5% |
| 06:00 | 65.9°F | 0.54 kPa | 75.8% |
| 07:00 | 68.1°F | 0.63 kPa | 73.5% |
| 08:00 | 70.8°F | 0.79 kPa | 69.9% |
| 09:00 | 72.5°F | 0.94 kPa | 66.4% |
| 10:00 | 73.5°F | 1.03 kPa | 64.3% |
| 11:00 | 73.8°F | 1.04 kPa | 64.0% |
7-Day Stress Context
| Date | Heat | VPD high | Cold |
|---|---|---|---|
| 2026-05-12 | 8.0h | 7.9h | 0.7h |
| 2026-05-13 | 12.0h | 8.0h | 0.6h |
| 2026-05-14 | 11.4h | 10.9h | 0.0h |
| 2026-05-15 | 5.8h | 6.3h | 0.2h |
| 2026-05-16 | 9.1h | 8.6h | 0.1h |
| 2026-05-17 | 3.1h | 3.2h | 0.4h |
| 2026-05-18 | 0.5h | 0.0h | 2.1h |