April 20, 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.
29
8
0
0
| Event | Delivered | Type | Status | Result | Resolved | Note |
|---|---|---|---|---|---|---|
| New forecast data | 00:37 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 01:36 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 02:37 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 03:37 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 04:37 | FORECAST | plan_written | iris-20260420-0615 | 06:20 | Wrote public plan iris-20260420-0615. Resolved 06:20 MDT. |
| Pre Dawn | 05:15 | TRANSITION | plan_written | iris-20260420-0615 | 06:20 | Wrote public plan iris-20260420-0615. Resolved 06:20 MDT. |
| New forecast data | 05:37 | FORECAST | plan_written | iris-20260420-0615 | 06:20 | Wrote public plan iris-20260420-0615. Resolved 06:20 MDT. |
| Morning planning cycle | 06:15 | SUNRISE | plan_written | iris-20260420-0615 | 06:20 | Wrote public plan iris-20260420-0615. Resolved 06:20 MDT. |
| New forecast data | 06:37 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 07:37 | FORECAST | timed_out | iris-20260420-0842 | 08:45 | Delivery recorded without a public plan write. Resolved 08:45 MDT. |
| New forecast data | 08:42 | FORECAST | timed_out | iris-20260420-0842 | 08:45 | Delivery recorded without a public plan write. Resolved 08:45 MDT. |
| New forecast data | 09:42 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 10:42 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 11:41 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 13:41 | FORECAST | delivery_failed | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 14:54 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| Peak Stress | 15:00 | TRANSITION | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 15:54 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 16:54 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| Tree Shade | 17:00 | TRANSITION | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 17:54 | FORECAST | plan_written | iris-20260420-1945 | 19:50 | Wrote public plan iris-20260420-1945. Resolved 19:50 MDT. |
| Decline | 18:44 | TRANSITION | plan_written | iris-20260420-1945 | 19:50 | Wrote public plan iris-20260420-1945. Resolved 19:50 MDT. |
| New forecast data | 18:54 | FORECAST | plan_written | iris-20260420-1945 | 19:50 | Wrote public plan iris-20260420-1945. Resolved 19:50 MDT. |
| Evening planning cycle | 19:45 | SUNSET | plan_written | iris-20260420-1945 | 19:50 | Wrote public plan iris-20260420-1945. Resolved 19:50 MDT. |
| New forecast data | 19:54 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| Evening Settle | 20:44 | TRANSITION | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 21:19 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 22:19 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
| New forecast data | 23:18 | FORECAST | timed_out | - | unknown | Delivery recorded without a public plan write. |
🌅 Morning Cycle (6:20 AM) — iris-20260420-0615
validated
4/10
none recorded
Reflection
Validating previous cycle: iris-20260419-1903
Previous hypothesis: Late-day catch-up plan — previous plan iris-20260419-0022 ran unmodified for 18+ hours with no intraday replanning. Today’s scorecard: 25.5 score, 17.8% compliance, 14.4h cold stress (structural — crop band alignment on spring mornings per lesson #6), 4.2h heat stress, 4.5h VPD high stress. Peak reached 85.6°F/2.02 VPD at 2 PM MDT — better than forecast predicted but still 4+ hours outside band. Evening vpd_high=0.60 was too aggressive — drove south zone to 0.08 VPD (near condensation). This plan corrects the evening posture immediately and covers Mon-Wed. Monday is the second extreme dry day: overcast morning (100% cloud until 14:00, then clearing to 8%), 82°F peak outdoor, 4% RH. The overcast morning is an advantage — slower heating ramp gives more time before misting is needed. But afternoon clearing will bring a fast spike… Result: [backfill] compliance unavailable over plan window 2026-04-20 12:20 → 2026-04-20 14:45 Score: 4/10
Hypothesis
Testing: Compare Monday overcast-to-clear transition (13:00 clearing) vs Tuesday all-day clear to measure cloud cover’s effect on VPD stress onset timing and water consumption. Hypothesis: Monday’s overcast morning delays VPD stress onset by 2-3 hours and reduces water usage by 20-30% vs Tuesday. Expected outcome: Monday: compliance 15-25% (tight bands), heat_stress 3-5h, vpd_high 4-6h, water 250-350 gal, cost USD 7-9. Tuesday: compliance 10-20%, heat_stress 5-7h, vpd_high 6-8h, water 350-450 gal, cost USD 8-11. Wednesday: compliance 25-35%, heat_stress 3-4h, vpd_high 3-5h, water 150-250 gal, cost USD 5-7. 72h total: USD 20-27.
Setpoints
Monday April 20
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 06:30 | hyst 0.3 | Morning hold — overcast, outdoor 36-55F. bias_cool +4 delays |
| 10:00 | hyst 0.3 | Pre-noon ramp — still overcast but outdoor RH dropping fast |
| 13:00 | hyst 0.2 | PEAK STRESS — clouds clearing (100→0%), solar 800+ W/m², out |
| 18:00 | hyst 0.3 | Late afternoon decline — solar dropping but still dry (6% RH |
| 20:00 | hyst 0.3 | Evening — outdoor 66F, 8% RH, sunset. Conservative misting, |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 06:30 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 2.5 | Morning hold — overcast, outdoor 36-55F. bias_cool +4 delays |
| 10:00 | d_cool 3; engage 1.4; all 1.7; pulse 60; gap 30; wt 2.5 | Pre-noon ramp — still overcast but outdoor RH dropping fast |
| 13:00 | d_cool 3; engage 1.3; all 1.6; pulse 60; gap 20; wt 2.5 | PEAK STRESS — clouds clearing (100→0%), solar 800+ W/m², out |
| 18:00 | d_cool 3; engage 1.4; all 1.8; pulse 60; gap 30; wt 2.5 | Late afternoon decline — solar dropping but still dry (6% RH |
| 20:00 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 2.5 | Evening — outdoor 66F, 8% RH, sunset. Conservative misting, |
Tuesday April 21
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 06:00 | hyst 0.3 | Tuesday dawn — worst day. Clear sky, 48F, 12% RH. Pre-positi |
| 11:00 | hyst 0.2 | Tuesday peak — MAXIMUM AGGRESSION. Clear sky all day, 83F pe |
| 19:00 | hyst 0.3 | Tuesday evening — same wind-down pattern. High bias_cool pre |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 06:00 | d_cool 3; engage 1.4; all 1.7; pulse 60; gap 30; wt 2.5 | Tuesday dawn — worst day. Clear sky, 48F, 12% RH. Pre-positi |
| 11:00 | d_cool 3; engage 1.3; all 1.6; pulse 60; gap 15; wt 2.5 | Tuesday peak — MAXIMUM AGGRESSION. Clear sky all day, 83F pe |
| 19:00 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 2.5 | Tuesday evening — same wind-down pattern. High bias_cool pre |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 06:30 | bias_cool | initial 4 |
| 06:30 | bias_heat | initial 4 |
| 06:30 | enthalpy_close | initial 1 |
| 06:30 | enthalpy_open | initial -2 |
| 06:30 | fog_escalation_kpa | initial 0.5 |
| 06:30 | min_fog_off_s | initial 60 |
| 06:30 | min_fog_on_s | initial 60 |
| 06:30 | min_heat_off_s | initial 300 |
| 06:30 | min_heat_on_s | initial 120 |
| 06:30 | min_vent_off_s | initial 60 |
| 06:30 | min_vent_on_s | initial 60 |
| 06:30 | mist_max_closed_vent_s | initial 300 |
| 06:30 | mist_thermal_relief_s | initial 90 |
| 06:30 | mist_vent_close_lead_s | initial 15 |
| 06:30 | mist_vent_reopen_delay_s | initial 45 |
| 06:30 | mister_water_budget_gal | initial 500 |
| 06:30 | vpd_watch_dwell_s | initial 60 |
| 10:00 | bias_cool | 4 → 3 |
| 10:00 | bias_heat | 4 → 0 |
| 10:00 | fog_escalation_kpa | 0.5 → 0.4 |
| 10:00 | mist_max_closed_vent_s | 300 → 600 |
| 10:00 | vpd_watch_dwell_s | 60 → 45 |
| 13:00 | bias_cool | 3 → 0 |
| 13:00 | fog_escalation_kpa | 0.4 → 0.3 |
| 13:00 | mist_max_closed_vent_s | 600 → 900 |
| 13:00 | mist_thermal_relief_s | 90 → 60 |
| 18:00 | bias_cool | 0 → 2 |
| 18:00 | fog_escalation_kpa | 0.3 → 0.4 |
| 18:00 | mist_max_closed_vent_s | 900 → 600 |
| 18:00 | mist_thermal_relief_s | 60 → 90 |
| 18:00 | vpd_watch_dwell_s | 45 → 60 |
| 20:00 | bias_cool | 2 → 4 |
| 20:00 | bias_heat | 0 → 3 |
| 20:00 | fog_escalation_kpa | 0.4 → 0.5 |
| 20:00 | mist_max_closed_vent_s | 600 → 300 |
| 06:00 | bias_cool | 4 → 3 |
| 06:00 | fog_escalation_kpa | 0.5 → 0.4 |
| 06:00 | mist_max_closed_vent_s | 300 → 600 |
| 06:00 | vpd_watch_dwell_s | 60 → 45 |
| 11:00 | bias_cool | 3 → 0 |
| 11:00 | bias_heat | 3 → 0 |
| 11:00 | fog_escalation_kpa | 0.4 → 0.3 |
| 11:00 | mist_max_closed_vent_s | 600 → 900 |
| 11:00 | mist_thermal_relief_s | 90 → 60 |
| 19:00 | bias_cool | 0 → 4 |
| 19:00 | bias_heat | 0 → 3 |
| 19:00 | fog_escalation_kpa | 0.3 → 0.5 |
| 19:00 | mist_max_closed_vent_s | 900 → 300 |
| 19:00 | mist_thermal_relief_s | 60 → 90 |
| 19:00 | vpd_watch_dwell_s | 45 → 60 |
🌅 Morning Cycle (8:45 AM) — iris-20260420-0842
validated
1/10
none recorded
Reflection
Validating previous cycle: iris-20260419-1903
Result: [backfill] avg compliance 20.6% (stress 182.1 h) over plan window 2026-04-20 14:45 → 2026-04-26 21:08 Score: 1/10
Hypothesis
Testing: Modified overcast-to-clear experiment: Monday now clears at 10 AM (3h overcast) vs Tuesday all-day clear. Smaller differential than originally planned but still measurable. Compare VPD stress onset time and water usage 10 AM-2 PM window on both days. Expected outcome: Monday: compliance 12-20% (tight bands + earlier clearing), heat_stress 3-5h, vpd_high 5-7h (was 4-6h before reforecast), water 300-400 gal, cost USD 7-10. Tuesday: compliance 10-18%, heat_stress 5-7h, vpd_high 6-9h, water 350-450 gal, cost USD 8-11. Wednesday: compliance 8-15% (worst day — 86F + wind), heat_stress 5-8h, vpd_high 5-8h, water 250-350 gal, cost USD 6-9. 72h total: USD 21-30.
Setpoints
Monday April 20
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 10:00 | hyst 0.2 | Clearing at 10 AM — 3h earlier than previous plan. Maximum m |
| 18:00 | hyst 0.3 | Evening taper — solar dropping, VPD easing. Moderate posture |
| 20:00 | hyst 0.3 | Night — clouds return (76-100%), 60-67°F outdoor. Pre-heat b |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 10:00 | d_cool 3; engage 1.3; all 1.6; pulse 60; gap 20; wt 2.5 | Clearing at 10 AM — 3h earlier than previous plan. Maximum m |
| 18:00 | d_cool 3; engage 1.4; all 1.8; pulse 60; gap 30; wt 2.5 | Evening taper — solar dropping, VPD easing. Moderate posture |
| 20:00 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 2.5 | Night — clouds return (76-100%), 60-67°F outdoor. Pre-heat b |
Tuesday April 21
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 06:00 | hyst 0.3 | Tuesday dawn — clear sky, 48°F outdoor. Maintain heat bias. |
| 09:30 | hyst 0.2 | Tuesday all-day clear — hardest day. 66°F/14% RH by 9 AM. Fu |
| 19:00 | hyst 0.3 | Tuesday night — overcast returns, 67-78°F outdoor. Pre-heat |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 06:00 | d_cool 3; engage 1.4; all 1.7; pulse 60; gap 30; wt 2.5 | Tuesday dawn — clear sky, 48°F outdoor. Maintain heat bias. |
| 09:30 | d_cool 3; engage 1.3; all 1.6; pulse 60; gap 15; wt 2.5 | Tuesday all-day clear — hardest day. 66°F/14% RH by 9 AM. Fu |
| 19:00 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 2.5 | Tuesday night — overcast returns, 67-78°F outdoor. Pre-heat |
Wednesday April 22
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 06:00 | hyst 0.3 | Wednesday morning — overcast, 53°F, 41% RH. Much more humidi |
| 11:00 | hyst 0.2 | Wednesday midday — clears, peaks 86°F. 27-37 mph wind makes |
| 18:00 | hyst 0.3 | Wednesday evening — temp crashes to 55°F with clearing + str |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 06:00 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 2.5 | Wednesday morning — overcast, 53°F, 41% RH. Much more humidi |
| 11:00 | d_cool 3; engage 1.3; all 1.6; pulse 60; gap 20; wt 2.5 | Wednesday midday — clears, peaks 86°F. 27-37 mph wind makes |
| 18:00 | d_cool 3; engage 1.5; all 1.9; pulse 60; gap 40; wt 2.5 | Wednesday evening — temp crashes to 55°F with clearing + str |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 10:00 | bias_cool | initial 0 |
| 10:00 | bias_heat | initial 0 |
| 10:00 | enthalpy_close | initial 1 |
| 10:00 | enthalpy_open | initial -2 |
| 10:00 | fog_escalation_kpa | initial 0.3 |
| 10:00 | min_fog_off_s | initial 60 |
| 10:00 | min_fog_on_s | initial 60 |
| 10:00 | min_heat_off_s | initial 300 |
| 10:00 | min_heat_on_s | initial 120 |
| 10:00 | min_vent_off_s | initial 60 |
| 10:00 | min_vent_on_s | initial 60 |
| 10:00 | mist_max_closed_vent_s | initial 900 |
| 10:00 | mist_thermal_relief_s | initial 90 |
| 10:00 | mist_vent_close_lead_s | initial 15 |
| 10:00 | mist_vent_reopen_delay_s | initial 45 |
| 10:00 | mister_water_budget_gal | initial 500 |
| 10:00 | vpd_watch_dwell_s | initial 60 |
| 18:00 | bias_cool | 0 → 2 |
| 18:00 | fog_escalation_kpa | 0.3 → 0.4 |
| 18:00 | mist_max_closed_vent_s | 900 → 600 |
| 20:00 | bias_cool | 2 → 4 |
| 20:00 | bias_heat | 0 → 3 |
| 20:00 | fog_escalation_kpa | 0.4 → 0.5 |
| 20:00 | mist_max_closed_vent_s | 600 → 300 |
| 06:00 | bias_cool | 4 → 3 |
| 06:00 | fog_escalation_kpa | 0.5 → 0.4 |
| 06:00 | mist_max_closed_vent_s | 300 → 600 |
| 09:30 | bias_cool | 3 → 0 |
| 09:30 | bias_heat | 3 → 0 |
| 09:30 | fog_escalation_kpa | 0.4 → 0.3 |
| 09:30 | mist_max_closed_vent_s | 600 → 900 |
| 19:00 | bias_cool | 0 → 4 |
| 19:00 | bias_heat | 0 → 3 |
| 19:00 | fog_escalation_kpa | 0.3 → 0.5 |
| 19:00 | mist_max_closed_vent_s | 900 → 300 |
| 06:00 | bias_cool | 4 → 3 |
| 06:00 | bias_heat | 3 → 2 |
| 06:00 | fog_escalation_kpa | 0.5 → 0.4 |
| 06:00 | mist_max_closed_vent_s | 300 → 600 |
| 11:00 | bias_cool | 3 → 0 |
| 11:00 | bias_heat | 2 → 0 |
| 11:00 | fog_escalation_kpa | 0.4 → 0.3 |
| 11:00 | mist_max_closed_vent_s | 600 → 480 |
| 18:00 | bias_cool | 0 → 3 |
| 18:00 | bias_heat | 0 → 2 |
| 18:00 | fog_escalation_kpa | 0.3 → 0.5 |
| 18:00 | mist_max_closed_vent_s | 480 → 300 |
🌅 Morning Cycle (8:57 AM) — iris-20260420-0850
validated
3/10
none recorded
Reflection
Validating previous cycle: iris-20260419-1903
Result: Score 16.6, compliance 11.6% (temp 17.2%, VPD 28.6%). Heat stress 15.82h dominated — largely structural from tight crop band (temp_high ~67.5°F overnight while slab held greenhouse at 70-72°F). VPD high 16.97h from extreme dry outdoor air (11-14% RH). Cold stress 4.0h (morning band ramp, structural). Peak temp 90.4°F, peak VPD 3.04. Cost USD 9.51 (USD 5.60 gas, USD 2.23 electric, USD 1.68 water). Heat1 had 53 transitions (oscillation), heat2 17 transitions. 4 ESP32 reboots (guru/panic + task wdt). vpd_target_center unconfirmed alerts persisted for hours (validates platform lesson). Multiple firmware relief ceiling and vent latch alerts during afternoon peak. Leak alerts during misting. Water 348 gal (238 mister). Score: 3/10
New finding: Heat stress hours are heavily inflated by tight nighttime crop band (temp_high ~67.5°F) while slab thermal mass holds greenhouse at 70-72°F overnight. Of 15.82h heat stress, estimated 8-10h are structural overnight band misalignment, not actual overheating. Heater oscillation (53 transitions) suggests the controller is fighting to maintain temp_low while simultaneously being above temp_high — an impossible band situation. The 4.5°F nighttime band (63-67.5°F) with slab retention of 70°F+ guarantees continuous out-of-band readings regardless of control strategy. → Added to Lessons Learned
Hypothesis
Testing: Mon/Tue overcast-to-clear paired comparison preserved (Mon clears 10 AM vs Tue all-day clear). Compare VPD stress onset and water usage 10 AM-2 PM both days. Expected outcome: Mon: compliance 12-20%, vpd_high 5-7h, cost USD 7-10. Tue: compliance 10-18%, vpd_high 6-9h, cost USD 8-11. Wed: 8-15% (worst), cost USD 6-9. Thu: 40-60%, cost USD 3-5. Fri: 50-70%, cost USD 4-7. Sat: 30-50%, cold_stress 4-6h, cost USD 6-10 (gas). Sun: 35-55%, cost USD 5-8. 7-day total: USD 39-60.
Setpoints
Monday April 20
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 09:00 | hyst 0.3 | Mon morning overcast — moderate posture before clearing at 1 |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 09:00 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 2.5 | Mon morning overcast — moderate posture before clearing at 1 |
| 10:00 | engage 1.3; all 1.6; gap 25 | Clouds clear 10 AM. Aggressive misting. Outdoor RH 15% dropp |
| 13:00 | gap 20 | Peak solar 78°F/6% outdoor. Tightest gap, longest sealed win |
| 18:00 | engage 1.5; all 1.8; gap 35 | Solar dropping. Taper misting. |
| 19:44 | engage 1.6; all 1.9; gap 45 | SUNSET Mon. Night posture. |
Tuesday April 21
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | hyst 0.3 | SUNRISE Tue. All-day clear — hardest hot day. Full param sta |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 2.5 | SUNRISE Tue. All-day clear — hardest hot day. Full param sta |
| 09:30 | engage 1.3; all 1.6; gap 25 | Dawn-clear 66°F/14%. Aggressive posture 90 min early. |
| 12:00 | gap 20 | Peak ramp 80°F/9% outdoor. Tightest pulses. |
| 15:00 | gap 15 | Absolute peak 83°F/8%. Maximum aggression. |
| 18:00 | engage 1.5; all 1.8; gap 35 | Evening taper. Solar down. |
| 19:44 | engage 1.6; all 1.9; gap 45 | SUNSET Tue. Night posture. |
Wednesday April 22
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 00:00 | hyst 0.3 | MIDNIGHT Wed. Overnight 60°F → 53°F, RH rising to 41%. |
| 06:15 | hyst 0.3 | SUNRISE Wed. 86°F + wind day. Full param state. Budget reset |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 2.5 | SUNRISE Wed. 86°F + wind day. Full param state. Budget reset |
| 10:00 | engage 1.3; all 1.6; gap 25 | Clearing + wind. Shorter sealed windows. |
| 14:00 | gap 20 | Peak 84°F/6% + 27-37 mph wind. Worst day. |
| 18:00 | engage 1.5; all 1.8; gap 35 | Wind easing, dramatic evening cool-down. |
| 19:44 | engage 1.6; all 1.9; gap 45 | SUNSET Wed. Weather shift begins. Transition to cold bias. |
Thursday April 23
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | hyst 0.3 | SUNRISE Thu. Overcast, max 64°F. Full param state. Lower bud |
| 12:00 | hyst 0.3 | Midday Thu. 63°F/15% overcast. Hold morning state. |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 2.5 | SUNRISE Thu. Overcast, max 64°F. Full param state. Lower bud |
| 19:44 | engage 1.6 | SUNSET Thu. Cold night: 45°F → 35°F. Heating priority. Longe |
Friday April 24
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | hyst 0.3 | SUNRISE Fri. 34°F/79%. Full param state. Heating priority. L |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 2.5 | SUNRISE Fri. 34°F/79%. Full param state. Heating priority. L |
Saturday April 25
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | hyst 0.3 | SUNRISE Sat. 32°F/96%. Full param state. Pure heating day. M |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 2.5 | SUNRISE Sat. 32°F/96%. Full param state. Pure heating day. M |
Sunday April 26
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | hyst 0.3 | SUNRISE Sun. 34°F/86%. Full param state. Cold but warming tr |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | d_cool 3; engage 1.6; all 2; pulse 60; gap 45; wt 2.5 | SUNRISE Sun. 34°F/86%. Full param state. Cold but warming tr |
Monday April 27
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | hyst 0.3 | SUNRISE Mon Apr 27. Jason home. Full param state. Normal pla |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 06:15 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 2.5 | SUNRISE Mon Apr 27. Jason home. Full param state. Normal pla |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 09:00 | bias_cool | initial 4 |
| 09:00 | bias_heat | initial 4 |
| 09:00 | enthalpy_close | initial 1 |
| 09:00 | enthalpy_open | initial -2 |
| 09:00 | fog_escalation_kpa | initial 0.4 |
| 09:00 | min_fog_off_s | initial 60 |
| 09:00 | min_fog_on_s | initial 60 |
| 09:00 | min_heat_off_s | initial 300 |
| 09:00 | min_heat_on_s | initial 120 |
| 09:00 | min_vent_off_s | initial 60 |
| 09:00 | min_vent_on_s | initial 60 |
| 09:00 | mist_max_closed_vent_s | initial 300 |
| 09:00 | mist_thermal_relief_s | initial 90 |
| 09:00 | mist_vent_close_lead_s | initial 15 |
| 09:00 | mist_vent_reopen_delay_s | initial 45 |
| 09:00 | mister_water_budget_gal | initial 700 |
| 09:00 | vpd_watch_dwell_s | initial 60 |
| 10:00 | bias_cool | 4 → 3 |
| 10:00 | bias_heat | 4 → 5 |
| 10:00 | fog_escalation_kpa | 0.4 → 0.3 |
| 10:00 | mist_max_closed_vent_s | 300 → 600 |
| 13:00 | mist_max_closed_vent_s | 600 → 700 |
| 18:00 | bias_cool | 3 → 4 |
| 18:00 | fog_escalation_kpa | 0.3 → 0.4 |
| 18:00 | mist_max_closed_vent_s | 700 → 300 |
| 19:44 | bias_cool | 4 → 5 |
| 19:44 | bias_heat | 5 → 4 |
| 19:44 | fog_escalation_kpa | 0.4 → 0.5 |
| 06:15 | bias_cool | 5 → 4 |
| 06:15 | fog_escalation_kpa | 0.5 → 0.4 |
| 09:30 | bias_cool | 4 → 3 |
| 09:30 | bias_heat | 4 → 5 |
| 09:30 | fog_escalation_kpa | 0.4 → 0.3 |
| 09:30 | mist_max_closed_vent_s | 300 → 600 |
| 12:00 | mist_max_closed_vent_s | 600 → 700 |
| 15:00 | mist_max_closed_vent_s | 700 → 600 |
| 18:00 | bias_cool | 3 → 4 |
| 18:00 | fog_escalation_kpa | 0.3 → 0.4 |
| 18:00 | mist_max_closed_vent_s | 600 → 300 |
| 19:44 | bias_cool | 4 → 5 |
| 19:44 | bias_heat | 5 → 4 |
| 19:44 | fog_escalation_kpa | 0.4 → 0.5 |
| 06:15 | bias_cool | 5 → 4 |
| 06:15 | fog_escalation_kpa | 0.5 → 0.4 |
| 10:00 | bias_cool | 4 → 3 |
| 10:00 | bias_heat | 4 → 5 |
| 10:00 | fog_escalation_kpa | 0.4 → 0.3 |
| 10:00 | mist_max_closed_vent_s | 300 → 480 |
| 18:00 | bias_cool | 3 → 4 |
| 18:00 | fog_escalation_kpa | 0.3 → 0.4 |
| 18:00 | mist_max_closed_vent_s | 480 → 300 |
| 19:44 | bias_cool | 4 → 5 |
| 19:44 | bias_heat | 5 → 3 |
| 19:44 | fog_escalation_kpa | 0.4 → 0.5 |
| 00:00 | min_heat_on_s | 120 → 180 |
| 06:15 | mister_water_budget_gal | 700 → 500 |
| 19:44 | bias_cool | 5 → 6 |
| 19:44 | bias_heat | 3 → 2 |
| 19:44 | min_heat_on_s | 180 → 300 |
| 06:15 | mister_water_budget_gal | 500 → 300 |
| 06:15 | mister_water_budget_gal | 300 → 200 |
| 12:00 | bias_cool | 6 → 5 |
| 06:15 | bias_heat | 2 → 3 |
| 06:15 | min_heat_on_s | 300 → 180 |
| 06:15 | mister_water_budget_gal | 200 → 400 |
🌆 Evening Cycle (7:50 PM) — iris-20260420-1945
validated
5/10
none recorded
Reflection
Validating previous cycle: iris-20260420-0850
Previous hypothesis: JASON-AWAY CONSERVATIVE STAY-IN-BAND: 7-day coverage through Sunday Apr 27. Two distinct regimes: PHASE 1 (Mon-Wed): Extreme dry-hot. Outdoor 81-86°F, 5-8% RH, VPD 3.0-4.0 kPa. Conservative-aggressive misting: lower engage thresholds (1.3 kPa), generous water budgets (700 gal/day), moderate sealed windows (600s vs 900s — safer without Jason to catch thermal traps). Accept physics-limited heat stress but buy every VPD minute we can. Wednesday worst: 86°F + 27-37 mph wind, shortened sealed windows (480s). PHASE 2 (Thu): Transition. Overcast, 64°F peak. Minimal intervention needed. PHASE 3 (Fri-Sun): Cold front. 32-56°F outdoor, 50-97% RH. Full heating regime. Gas heater primary for efficiency. Minimal misting — ambient humidity keeps VPD naturally low. Dehumid may trigger on Sat/Sun (outdoor RH 80-97%)… Result: Evaluated overnight window only (8 PM Apr 20 → 6 AM Apr 21) — plan replaced at sunrise before daytime predictions could be tested. Overnight temps held 62-65°F (hypothesis predicted 65-70°F from slab retention — 3-5°F optimistic). VPD dipped to 0.40 kPa at 2 AM and hit 0.26 kPa during reboot cluster, triggering vpd_extreme warnings — not anticipated by hypothesis. 5 ESP32 reboots between 1:30-2:26 AM (guru/panic + task wdt) disrupted control continuity. bias_cool +5 successfully prevented vent oscillation during heating cycles — heat1 transitions appear reduced vs previous night (53→~30 est). Heat2 ran 2.69h for gas heating. Evening alerts included firmware vent latch and relief ceiling events from daytime carry-over (10-11 PM). Overall: adequate overnight management, slab prediction slightly optimistic, VPD low risk in the 1-3 AM window needs attention in future overnight plans. Score: 5/10
New finding: Overnight slab retention in spring with outdoor 50-60°F delivers 62-65°F, not 65-70°F as commonly predicted. Use 62-66°F as the overnight slab equilibrium range when outdoor is 48-55°F. VPD can dip below 0.35 kPa between 1-3 AM when RH climbs above 75% — consider whether vpd_low should be relaxed overnight to avoid unnecessary dehumid cycling. → Added to Lessons Learned
Hypothesis
Testing: Tue vs Wed paired comparison under near-identical heat/dryness (84°F/6% vs 85°F/5%) but different cloud profiles (Tue clear AM/variable PM vs Wed overcast AM/clearing PM) and wind (Tue light vs Wed 20+ mph). Compare: (1) VPD stress onset time, (2) fog activation count, (3) water usage, (4) whether Wed wind improves or degrades compliance vs Tue calm. Expected outcome: Tuesday: compliance 10-15%, heat_stress 6-9h (structural band + physics), vpd_high 8-12h, water 300-450 gal, cost USD 7-11. Wednesday: compliance 12-18% (cloudier morning delays onset), heat_stress 5-8h, vpd_high 7-10h, water 250-400 gal, cost USD 6-9. Thursday: compliance 25-35% (much milder), heat_stress 0-2h, vpd_high 2-4h, cost USD 4-7 (higher gas from cold overnight). 72h total: USD 17-27.
Setpoints
Monday April 20
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 20:00 | hyst 0.3 | Evening settle — outdoor 68°F/11% dropping. Anti-oscillation |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 20:00 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 1.5 | Evening settle — outdoor 68°F/11% dropping. Anti-oscillation |
Tuesday April 21
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 00:00 | hyst 0.3 | Midnight — outdoor 55°F/17%. Slab holds ~68°F. Heaters inter |
| 05:30 | hyst 0.3 | Pre-dawn — coldest point 50°F outdoor. bias_heat +4 pre-warm |
| 06:15 | hyst 0.3 | Sunrise — begin loosening mist thresholds. VPD weight 2.5 fo |
| 09:30 | hyst 0.2 | VPD assault — outdoor 68°F/16% and climbing fast. Max aggres |
| 12:00 | hyst 0.2 | Peak heat — 81-84°F outdoor, 7-8% RH, solar 803-852 W/m². Sh |
| 15:00 | hyst 0.2 | Sustained peak — 83-84°F, variable clouds (31-63%). Solar re |
| 18:00 | hyst 0.3 | Evening — solar fading but outdoor still 82°F/6%. Relax mist |
| 19:45 | hyst 0.3 | Tue sunset — outdoor 79°F/6% dropping to 72 by 8 PM. Anti-os |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 00:00 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 1.5 | Midnight — outdoor 55°F/17%. Slab holds ~68°F. Heaters inter |
| 05:30 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 1.5 | Pre-dawn — coldest point 50°F outdoor. bias_heat +4 pre-warm |
| 06:15 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 2.5 | Sunrise — begin loosening mist thresholds. VPD weight 2.5 fo |
| 09:30 | d_cool 2; engage 1.3; all 1.6; pulse 60; gap 15; wt 2.5 | VPD assault — outdoor 68°F/16% and climbing fast. Max aggres |
| 12:00 | d_cool 2; engage 1.3; all 1.6; pulse 60; gap 15; wt 2.5 | Peak heat — 81-84°F outdoor, 7-8% RH, solar 803-852 W/m². Sh |
| 15:00 | d_cool 2; engage 1.3; all 1.6; pulse 60; gap 15; wt 2.5 | Sustained peak — 83-84°F, variable clouds (31-63%). Solar re |
| 18:00 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 1.5 | Evening — solar fading but outdoor still 82°F/6%. Relax mist |
| 19:45 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 1.5 | Tue sunset — outdoor 79°F/6% dropping to 72 by 8 PM. Anti-os |
Wednesday April 22
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 00:00 | hyst 0.3 | Wed midnight — outdoor 60°F/13%, milder than Mon night. Slab |
| 06:15 | hyst 0.3 | Wed sunrise — 100% overcast morning, slower ramp than Tue. M |
| 10:00 | hyst 0.2 | Wed morning assault — clouds clearing, VPD climbing. 74°F/14 |
| 14:00 | hyst 0.2 | Wed peak — 85°F/6%, very windy (20 mph). Wind aids fan cooli |
| 18:00 | hyst 0.3 | Wed evening — cool front pushing through. Outdoor dropping 7 |
| 19:45 | hyst 0.3 | Wed sunset — cool front arrived. Outdoor 55°F/37% by 9 PM. A |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 00:00 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 1.5 | Wed midnight — outdoor 60°F/13%, milder than Mon night. Slab |
| 06:15 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 2.5 | Wed sunrise — 100% overcast morning, slower ramp than Tue. M |
| 10:00 | d_cool 2; engage 1.3; all 1.6; pulse 60; gap 20; wt 2.5 | Wed morning assault — clouds clearing, VPD climbing. 74°F/14 |
| 14:00 | d_cool 2; engage 1.3; all 1.6; pulse 60; gap 15; wt 2.5 | Wed peak — 85°F/6%, very windy (20 mph). Wind aids fan cooli |
| 18:00 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 1.5 | Wed evening — cool front pushing through. Outdoor dropping 7 |
| 19:45 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 1.5 | Wed sunset — cool front arrived. Outdoor 55°F/37% by 9 PM. A |
Thursday April 23
Primary crop-band changes:
| Time | Values | Note |
|---|---|---|
| 00:00 | hyst 0.3 | Thu midnight — cold front. Outdoor 46°F/39%. bias_heat +4 fo |
| 06:15 | hyst 0.3 | Thu sunrise — 47°F/31% outdoor, overcast. Cool day ahead. Co |
| 12:00 | hyst 0.3 | Thu midday — 62°F/11% outdoor, overcast, windy. Much milder |
| 19:45 | hyst 0.3 | Thu sunset — 60°F/20% outdoor. Standard overnight posture. C |
Tactical tunable changes:
| Time | Values | Note |
|---|---|---|
| 00:00 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 1.5 | Thu midnight — cold front. Outdoor 46°F/39%. bias_heat +4 fo |
| 06:15 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 2.5 | Thu sunrise — 47°F/31% outdoor, overcast. Cool day ahead. Co |
| 12:00 | d_cool 3; engage 1.5; all 1.8; pulse 60; gap 35; wt 1.5 | Thu midday — 62°F/11% outdoor, overcast, windy. Much milder |
| 19:45 | d_cool 3; engage 1.6; all 1.9; pulse 60; gap 45; wt 1.5 | Thu sunset — 60°F/20% outdoor. Standard overnight posture. C |
Changed secondary parameters:
| Time | Parameter | Change |
|---|---|---|
| 20:00 | bias_cool | initial 5 |
| 20:00 | bias_heat | initial 3 |
| 20:00 | enthalpy_close | initial 1 |
| 20:00 | enthalpy_open | initial -2 |
| 20:00 | fog_escalation_kpa | initial 0.5 |
| 20:00 | min_fog_off_s | initial 60 |
| 20:00 | min_fog_on_s | initial 60 |
| 20:00 | min_heat_off_s | initial 300 |
| 20:00 | min_heat_on_s | initial 120 |
| 20:00 | min_vent_off_s | initial 60 |
| 20:00 | min_vent_on_s | initial 60 |
| 20:00 | mist_max_closed_vent_s | initial 600 |
| 20:00 | mist_thermal_relief_s | initial 90 |
| 20:00 | mist_vent_close_lead_s | initial 15 |
| 20:00 | mist_vent_reopen_delay_s | initial 45 |
| 20:00 | mister_water_budget_gal | initial 500 |
| 20:00 | vpd_watch_dwell_s | initial 60 |
| 05:30 | bias_heat | 3 → 4 |
| 06:15 | bias_cool | 5 → 4 |
| 06:15 | fog_escalation_kpa | 0.5 → 0.4 |
| 06:15 | mist_max_closed_vent_s | 600 → 480 |
| 06:15 | vpd_watch_dwell_s | 60 → 45 |
| 09:30 | bias_cool | 4 → 0 |
| 09:30 | bias_heat | 4 → 0 |
| 09:30 | enthalpy_open | -2 → -3 |
| 09:30 | fog_escalation_kpa | 0.4 → 0.3 |
| 09:30 | min_fog_off_s | 60 → 45 |
| 09:30 | min_fog_on_s | 60 → 45 |
| 09:30 | min_vent_off_s | 60 → 45 |
| 09:30 | min_vent_on_s | 60 → 45 |
| 09:30 | mist_thermal_relief_s | 90 → 60 |
| 09:30 | mist_vent_reopen_delay_s | 45 → 30 |
| 09:30 | vpd_watch_dwell_s | 45 → 30 |
| 12:00 | mist_max_closed_vent_s | 480 → 420 |
| 15:00 | mist_max_closed_vent_s | 420 → 480 |
| 18:00 | bias_cool | 0 → 4 |
| 18:00 | enthalpy_open | -3 → -2 |
| 18:00 | fog_escalation_kpa | 0.3 → 0.4 |
| 18:00 | min_fog_off_s | 45 → 60 |
| 18:00 | min_fog_on_s | 45 → 60 |
| 18:00 | min_vent_off_s | 45 → 60 |
| 18:00 | min_vent_on_s | 45 → 60 |
| 18:00 | mist_max_closed_vent_s | 480 → 600 |
| 18:00 | mist_thermal_relief_s | 60 → 90 |
| 18:00 | mist_vent_reopen_delay_s | 30 → 45 |
| 18:00 | vpd_watch_dwell_s | 30 → 60 |
| 19:45 | bias_cool | 4 → 5 |
| 19:45 | bias_heat | 0 → 3 |
| 19:45 | fog_escalation_kpa | 0.4 → 0.5 |
| 06:15 | bias_cool | 5 → 4 |
| 06:15 | fog_escalation_kpa | 0.5 → 0.4 |
| 06:15 | mist_max_closed_vent_s | 600 → 480 |
| 06:15 | vpd_watch_dwell_s | 60 → 45 |
| 10:00 | bias_cool | 4 → 0 |
| 10:00 | bias_heat | 3 → 0 |
| 10:00 | enthalpy_open | -2 → -3 |
| 10:00 | fog_escalation_kpa | 0.4 → 0.3 |
| 10:00 | min_fog_off_s | 60 → 45 |
| 10:00 | min_fog_on_s | 60 → 45 |
| 10:00 | min_vent_off_s | 60 → 45 |
| 10:00 | min_vent_on_s | 60 → 45 |
| 10:00 | mist_thermal_relief_s | 90 → 60 |
| 10:00 | mist_vent_reopen_delay_s | 45 → 30 |
| 10:00 | vpd_watch_dwell_s | 45 → 30 |
| 14:00 | mist_max_closed_vent_s | 480 → 420 |
| 18:00 | bias_cool | 0 → 4 |
| 18:00 | enthalpy_open | -3 → -2 |
| 18:00 | fog_escalation_kpa | 0.3 → 0.4 |
| 18:00 | min_fog_off_s | 45 → 60 |
| 18:00 | min_fog_on_s | 45 → 60 |
| 18:00 | min_vent_off_s | 45 → 60 |
| 18:00 | min_vent_on_s | 45 → 60 |
| 18:00 | mist_max_closed_vent_s | 420 → 600 |
| 18:00 | mist_thermal_relief_s | 60 → 90 |
| 18:00 | mist_vent_reopen_delay_s | 30 → 45 |
| 18:00 | vpd_watch_dwell_s | 30 → 60 |
| 19:45 | bias_cool | 4 → 5 |
| 19:45 | bias_heat | 0 → 3 |
| 19:45 | fog_escalation_kpa | 0.4 → 0.5 |
| 00:00 | bias_heat | 3 → 4 |
| 06:15 | fog_escalation_kpa | 0.5 → 0.4 |
| 12:00 | bias_cool | 5 → 2 |
| 12:00 | bias_heat | 4 → 0 |
| 19:45 | bias_cool | 2 → 5 |
| 19:45 | bias_heat | 0 → 3 |
| 19:45 | fog_escalation_kpa | 0.4 → 0.5 |
End-of-Day Summary
Climate
59.1–91.9°F; avg 74.0°F
0.23–3.12 kPa; avg 1.18 kPa
25.8–88.6%
Stress Hours
- Heat stress (>85°F): 17.7h
- VPD stress (>2.0 kPa): 17.4h
- Cold stress (<55°F): 1.0h
Economics
USD 2.47
USD 5.36
USD 2.730
USD 10.56
Equipment Runtimes
| Equipment | Runtime | Reading |
|---|---|---|
| Fan 1 | 230 min | Primary exhaust runtime. |
| Fan 2 | 242 min | Secondary exhaust runtime. |
| Vent | 314 min | Intake vent runtime. |
| Fog | 134 min | Fogger runtime. |
| Heat 1 electric | 724 min | Electric heater runtime. |
| Heat 2 gas | 516 min | Gas heater runtime. |
| Grow lights | 0 min | Supplemental lighting runtime. |
| Mister south | 1.50h | South mister runtime. |
| Mister west | 1.45h | West mister runtime. |
| Mister center | 2.29h | Center mister runtime. |
Water
- Total: 565 gal
- Mister: 133 gal
Crop Health (Gemini Vision)
| Crop | Zone | Health | Observations | Note |
|---|---|---|---|---|
| Canna Lilies | south | 70% | 4 | Observation notes are collapsed below to avoid publishing partial vision snippets. |
| Vanda Orchids | center | 70% | 4 | Observation notes are collapsed below to avoid publishing partial vision snippets. |
| lettuce | east | 58% | 4 | Observation notes are collapsed below to avoid publishing partial vision snippets. |
| pepper | east | 60% | 4 | Observation notes are collapsed below to avoid publishing partial vision snippets. |
| strawberry | east | 65% | 4 | Observation notes are collapsed below to avoid publishing partial vision snippets. |
Vision observation notes
Canna lilies in pots on the floor appear generally healthy, though some lower leaves might be slightly yellow.
Hanging orchids appear healthy with extensive root systems visible.
Seedlings appear healthy and are establishing well.
Seedlings look generally healthy, but some minor variation in size.
Seedlings are green and appear to be growing normally.
Hourly Pattern
| Hour | Temperature | VPD | RH |
|---|---|---|---|
| 12:00 | 79.0°F | 1.27 kPa | 63.0% |
| 13:00 | 83.5°F | 1.73 kPa | 56.0% |
| 14:00 | 85.6°F | 1.79 kPa | 56.8% |
| 15:00 | 84.4°F | 2.02 kPa | 49.0% |
| 16:00 | 80.9°F | 1.84 kPa | 47.9% |
| 17:00 | 73.3°F | 0.91 kPa | 68.4% |
| 18:00 | 71.3°F | 0.69 kPa | 74.0% |
| 19:00 | 65.8°F | 0.83 kPa | 62.2% |
| 20:00 | 61.7°F | 0.56 kPa | 70.9% |
| 21:00 | 60.7°F | 0.49 kPa | 73.2% |
| 22:00 | 55.3°F | 0.81 kPa | 47.0% |
| 23:00 | 60.4°F | 0.94 kPa | 47.9% |
| 00:00 | 70.0°F | 1.02 kPa | 58.6% |
| 01:00 | 71.4°F | 1.09 kPa | 58.4% |
| 02:00 | 72.1°F | 1.12 kPa | 58.2% |
| 03:00 | 69.8°F | 1.00 kPa | 59.9% |
| 04:00 | 71.8°F | 1.12 kPa | 57.7% |
| 05:00 | 72.0°F | 1.14 kPa | 57.3% |
| 06:00 | 72.9°F | 1.14 kPa | 58.3% |
| 07:00 | 74.0°F | 1.11 kPa | 60.8% |
| 08:00 | 73.3°F | 0.98 kPa | 64.9% |
| 09:00 | 72.5°F | 0.96 kPa | 64.6% |
| 10:00 | 76.3°F | 1.01 kPa | 67.7% |
| 11:00 | 79.6°F | 1.13 kPa | 67.6% |
7-Day Stress Context
| Date | Heat | VPD high | Cold |
|---|---|---|---|
| 2026-04-14 | 0.8h | 2.2h | 11.6h |
| 2026-04-15 | 6.6h | 7.6h | 13.8h |
| 2026-04-16 | 7.3h | 5.9h | 10.6h |
| 2026-04-17 | 0.1h | 2.9h | 18.3h |
| 2026-04-18 | 4.2h | 4.6h | 12.7h |
| 2026-04-19 | 6.8h | 9.0h | 14.0h |
| 2026-04-20 | 17.7h | 17.4h | 1.0h |