Facility 4576 · HK Cassandra LLC · 2026-06-24
AROYA · AUTOMAIT Readiness & Implementation Plan

HK Cassandra LLC · AUTOMAIT Readiness Audit + Per-Room Plan

Per-room readiness scoring · proposed AUTOMAIT irrigationSchedule shapes · initial ASI presets · rollback triggers · cross-room risk synthesis · staged rollout sequencing across all 11 rooms · plan-only (no fields will be written until Cian approves)
FacilityHK Cassandra LLC (ID 4576) · Org 3576 Plan date2026-06-24 Rooms in scope11 total (10 FLOWER + 1 VEG) · 7 active flower HGs · 4 dormant Substrate splitSOILLESS rockwool (5 active) · COCO 1.5gal bag, 2×0.3 GPH (R2 + R5) CohortsMay-10 (19d to harvest July-13) · June-3 (42-43d to harvest Aug-5/6) Baseline auditCompanion 2-week agronomic audit (commit a51ca78) — this plan extends it

1 · Executive Summary

UNIVERSAL BLOCKER — No AUTOMAIT controller is wired on any room at this facility
Every one of the 11 room configs returns irrigationControllers: [] in spa_get_room_config. AUTOMAIT cannot fire on any room until an AUTOMAIT-capable controller (Growlink, Modbus, or AROYA-supported integration) is provisioned and linked. Sensor coverage is otherwise complete: every flower room has 4 ter15 substrate probes (one per zone), 1 h421/ee894 climate stack, plus a DRIP-calibrated ter15 and a DRAIN-calibrated ter15. The cultivation telemetry side is ready; the actuation side is not. Until a controller is wired, the readiness floor for the facility is NEEDS-WORK for every room.
Rooms with controller wired
0 / 11
universal blocker · AUTOMAIT cannot fire anywhere today
HGs with recipe linked
0 / 7
2 recipes exist at facility level but no HG references either
Rooms with documented steering intent
0 / 7
AROYA journal empty per room · foundational blocker
Rooms with full sensor coverage
7 / 7
4× substrate VWC + climate + DRIP + DRAIN per active room
First-room recommendation
R9 (18761)
benchmark room · cleanest signature · simplest substrate · brings up at next flip
Highest-leverage cultivator-side fix
R2 + R5 (COCO)
channeling + leaching · must be physically resolved before AUTOMAIT

Readiness summary

Tier
READY 0 / PARTIAL 0
No room currently passes READY or PARTIAL because no controller is wired. Sensor coverage, FC measurements, and substrate config are in place — controller provisioning is the single binding gate.
Tier
NEEDS-WORK · 10 rooms
All 10 flower rooms. Once a controller is wired, R9 → R1 → R3/R10/R11 → R2/R5 unlocks in that order based on substrate physics + readiness signature.
Tier
OUT-OF-SCOPE · 1 room
veg room (18759) — AUTOMAIT typically deployed in flower first; bring up in Phase 5 only if HK Cassandra wants veg-phase automation later.

Recommended first room

Room 9 (id 18761) — Confirmed as the right first AUTOMAIT bring-up
R9 has the cleanest ripening signature in the facility today (substrate EC 5.88, dryback 30 absolute pp, VPD 1.24 kPa, soil temp 73°F — per baseline audit), the simplest substrate (SOILLESS, not COCO), and the lowest measured field capacity of the active fleet (64.2%) which gives AUTOMAIT the largest dryback steering range to work with. It also flips at July-13 — so AUTOMAIT can come up on Day 1 of Cycle N+1 with a fresh substrate, not mid-cohort. That's the right place to start. The one prereq specific to R9 (beyond the universal controller blocker): steering intent must be documented in the AROYA journal AND a recipe must be assigned to the next HG that flips in.

Suggested rollout sequence (full detail in §6)

  1. Phase 0 (now → next 7 days) — Cultivator-side fixes only. R2 P1 shot regime, R5 emitter walkdown, R10 ripening-intent decision, R3 climate correction, R11 CO₂ supplementation. No AUTOMAIT yet.
  2. Phase 1 (Cycle N+1, Day 1 after July-13 flip) — R9 as the benchmark bring-up. Shadow run for 24h, then 7 consecutive clean days before advancing.
  3. Phase 2 (Cycle N+1, Week 2) — R1 next (also SOILLESS, simpler room).
  4. Phase 3 (Cycle N+1, Weeks 3-4) — R3, R10, R11 staggered 48h apart. All SOILLESS, all benefit from R9's proven dial-point.
  5. Phase 4 (Cycle N+1, Weeks 5-6) — R2 then R5 (COCO, last). Coco physics + baseline channeling means highest-risk handoff — only after cultivator-side fixes verified manually for a full cycle.
  6. Phase 5 (Cycle N+2) — Bring up R4, R6, R8, veg room as HGs assigned. Resolve Room 6's silent h421s before any HG flips in (per today's mesh audit).

2 · Methodology — What AUTOMAIT Requires

AUTOMAIT is a closed-loop crop-steering engine. To run safely it needs four things per room: (a) actuation — a wired controller endpoint AROYA can push setpoints to; (b) sensing — substrate VWC + EC + drip + drain telemetry of trustworthy quality and uptime; (c) configuration — a recipe linked to the HG plus an irrigationSchedule defining P0–P3 windows, shot sizing, drain triggers, and guardrails; (d) intent — a documented steering goal (generative vs vegetative, target dryback, EC stack trajectory) so the controller knows what success looks like.

Readiness scoring criteria

TierDefinitionImplication
READYSensors online + controller wired + measured FC + recipe linked + intent documentedCan flip AUTOMAIT this cycle with a shadow-run gate
PARTIALSensors + controller wired but missing recipe assignment or documented intent1–2 prerequisite items needed before bring-up
NEEDS-WORKMissing controller OR missing substrate sensors OR room empty between cyclesMulti-week prerequisite work — controller procurement / sensor reliability fix / cycle wait
OUT-OF-SCOPEVeg/prop/dry/cure rooms not in the flower automation scopeDefer to a later wave or skip

Phase model anchoring (per project irrigation rule)

P0 · Activation
Lights-on → first irrigation
1–3h hold while plant ramps transpiration. lightsBuffer_P0_min sets the delay; additionalDrybackTarget_pp adds extra dryback before first shot. Deeper for generative phases.
P1 · Ramp-up
Small shots → first runoff
Small shots ~15–30 min apart back to FC + first runoff. shotPct_of_FC, shotIntervalMin, and drainTrigger control sizing/cadence/termination.
P2 · Maintenance
Hold VWC at FC, manage EC
Pulses holding VWC at FC, managing substrate EC via runoff. Skipped or minimized in generative phases. vwcMaintenanceFloor_pct sets the top-up trigger.
P3 · Dry-down
Last shot → next morning
Primary steering lever. lightsBuffer_P3_min sets pre-lights-off hold; targetDryback_absPp is the overnight dryback target; minVwc_safetyFloor_pct is the hard stop.

ASI preset direction (critical — counterintuitive)

AROYA's ASI slider is inverted from intuition
GEN 1 = MOST aggressive (deepest dryback, shortest window). GEN 5 = neutral. VEG 6–10 = vegetative. To go DEEPER on dryback you step DOWN toward GEN 1, NOT up. Every recommendation in §5 picks a preset in the GEN 3–5 range — neutral to mildly generative. Coco rooms (R2, R5) get GEN 5 (neutral) regardless of phase, because aggressive steering on a substrate that's already channeling will worsen Cal/Mg lockout. SOILLESS ripening rooms can step to GEN 3 once the cultivator confirms the climate side supports it.

3 · Per-Room Readiness Scoring

Every room's spa_get_room_config was pulled sequentially (SPA config is not parallel-safe per feedback_spa-config-not-parallel-safe.md). Cells reading "no" or "—" reflect actual API state, not gaps in pulling. Field-capacity values are the measured 14-day peak VWC from the baseline audit; no fieldCapacity ceiling is currently configured at the room level anywhere on the facility.

RoomRoom IDActive HGSubstrate VWC sensorsController wiredRecipe linkedMeasured FCIntent documentedTierMissing items
Room 1 (21 LED)18740155042 Mid Flower2/2 zones (ter15)NoNo69.2%NoNEEDS-WORKController, recipe, FC ceiling, intent
Room 2 (99 LED) · COCO 1.5gal18741155044 Mid Flower entry4/4 zones (ter15)NoNo74.6%NoNEEDS-WORKController, recipe, FC ceiling, intent, P1 shot regime fix
Room 3 (42 LED)18742153819 Ripening4/4 zones (ter15)NoNo64.2%NoNEEDS-WORKController, recipe, FC ceiling, intent, climate fix
Room 4 (16 lights)187432/2 zonesNon/aNoNEEDS-WORKController, no active HG (Cycle N+2)
Room 5 (24 lights) · COCO 1.5gal18757155043 Mid Flower2/2 zones (ter15)NoNo75.6%NoNEEDS-WORKController, recipe, FC ceiling, intent, emitter walkdown for channeling
Room 6 (75 lights)187584/4 zonesNon/aNoNEEDS-WORKController, no active HG, 2 silent h421 climate sensors (per mesh audit)
veg room187594/4 zonesNon/aNoOUT-OF-SCOPEVeg-phase — defer until flower automation proven
Room 8 (49 lights)187604/4 zonesNon/aNoNEEDS-WORKController, no active HG (Cycle N+2)
Room 9 (27 lights) · BENCHMARK18761153820 Ripening4/4 zones (ter15)NoNo70.9%NoNEEDS-WORKController, recipe, FC ceiling, intent (but otherwise the cleanest room — first AUTOMAIT bring-up)
Room 10 (27 lights)18762153822 Ripening4/4 zones (ter15)NoNo63.8%NoNEEDS-WORKController, recipe, FC ceiling, intent, ripening-intent decision
Room 11 (31 lights)18763153824 Ripening4/4 zones (ter15)*NoNo70.7%NoNEEDS-WORKController, recipe, FC ceiling, intent, CO₂ supplementation fix; * SPA bridge detached during R11 pull — re-verify device count

Hardware coverage column reads "4/4 zones" or "2/2 zones" — every active flower room has one ter15 substrate probe per defined zone, plus a DRIP-calibrated and DRAIN-calibrated ter15 (drip/drain instrumentation is per-room, single emitter position). Drip volume data isn't exposed via public_api for this facility — count_irrigation_events returns 0 for every room (known SDK gap). Shot counts in §5 are inferred from VWC step-up signatures in the baseline audit.

4 · Current Irrigation Strategy — Per Room

For each active flower room, "current strategy" is reconstructed from analyze_drip_drain (14-day window 2026-06-10 → 2026-06-24), the baseline audit's VWC/EC numbers, and the drip/drain calibration positions. Shot counts are derived from VWC step-up signatures because drip_volume events aren't exposed via public_api on this facility. AUTOMAIT-mismatch flags are the operational gaps that must be closed before each room's irrigation regime maps cleanly to a closed-loop schedule.

Room 1 (id 18740)

252-plant GX · SOILLESS · Mid Flower Day 21 · 42 days to harvest · HG 155042
Operational signature: single drip-instrumented zone (76387). Daily drip peak ≈ 1,249 mL, daily drain peak ≈ 4,110 mL — drain volume 3.3× drip at the metered position (drain pan captures multiple plants while drip is metered at one). Functional shot count: ~8–10 shots/day from VWC swing 35.9 absolute pp (33.3% trough to 69.2% peak). EC stack: drip 1.39 → substrate pore EC 3.40 → drain 1.91 (+0.52 mS substrate-over-drip stack — mild, healthy bulking posture). VPD 1.11 in-range. Steering intent inferred: vegetatively-leaning mid-flower regime that is over-drying for the phase. AUTOMAIT mismatch: (a) drip flow metering covers only 1 zone of 2 — manifold-level metering or an explicit single-zone-proxy confidence flag needed; (b) drip EC 1.39 mS is below any reasonable mid-flower feed — confirm with cultivator this isn't a stale-line reading before AUTOMAIT respects it as input.

Room 2 (id 18741) · COCO 1.5gal · HIGHEST-LEVERAGE FIX

1188-plant Blue Nerdz · COCO 1.5gal bag, 2×0.3 GPH emitters · Mid Flower entry Day 21 · 43 days to harvest · HG 155044
Operational signature: drip/drain on zone 76708 only (of 4 zones). Daily drip peak ≈ 3,792 mL, daily drain peak ≈ 2,657 mL → drain ratio ~70% at that emitter position — 3× the 20–30% coco bulking target. Functional shot count: ~8–12 large shots/day clustered in P1 (typical 07:00–11:00), little to no P2 maintenance. EC stack: drip 5.94 → mean substrate pore EC ~5.6 → drain 2.86 — drip ≈ substrate, drain dumps. Substrate is NOT stacking (drip-to-substrate gap ≈ 0). Steering intent inferred: vegetatively-steered (high volume, high drain, no stack) on an early/mid flower COCO bulking window that wants substrate EC stacking from 6.0 toward 8.0. Wrong-direction. AUTOMAIT mismatch (LARGEST AT THIS FACILITY): the current "fire 8+ big shots, let half drain" regime is the hardest pattern to hand to AUTOMAIT. Closed-loop wants more, smaller P1 shots (~2–3% VWC each) terminating on a defined drain trigger (5–10%), then P2 micro-pulses holding FC. Cultivator must collapse shot sizes, increase shot count, and adopt a runoff-end trigger BEFORE AUTOMAIT will steer correctly. Also: only 1 of 4 zones has drip/drain instrumentation.

Room 3 (id 18742)

450-plant Blue Nerdz · SOILLESS · Mid/Late Ripening Day 45 · 19 days to harvest · HG 153819
Operational signature: drip series severely truncated — only 52h of dfi:zone:76390 returned vs 311h of climate metrics → drip flow meter offline ~8 of 14 days. Daily drip peak (when active) ≈ 369 mL, daily drain peak ≈ 14 mL — drain ratio ~3.7% at the metered position (essentially no drain when measured). Functional shot count from VWC 30.2 pp swing: ~6–8 medium shots/day, appropriate for ripening. EC stack: drip 6.0 → mean pore EC 4.7 (zones 3.28–7.43, spread suggests uneven feed) → drain 1.77 (room-aggregate -4.23 mS leach). Steering intent inferred: vegetatively-leaning despite ripening phase (high feed, big leach). Wrong-direction for finishing — ripening wants substrate EC restacked 6.0–8.0 and longer P3 drydown. AUTOMAIT mismatch: (a) drip flow meter must be brought back online; (b) cultivator must reduce shot frequency and tighten P1 termination; (c) only 1 of 4 zones has drip/drain instrumentation; (d) cold-canopy climate (VPD 0.99, soil 70.7°F per baseline) limits transpiration — irrigation isn't the rate-limiter, climate is.

Room 5 (id 18757) · COCO 1.5gal · CHANNELING SUSPECTED

288-plant Blue Nerdz · COCO 1.5gal bag, 2×0.3 GPH emitters · Mid Flower Day 21 · 42 days to harvest · HG 155043
Operational signature: zone 76459 instrumented. Daily drip peak ≈ 1,248 mL, daily drain peak ≈ 3,469 mL — drain volume 2.8× drip volume at the metered position. VWC span 53.2 pp (22.4% trough to 75.6% peak) is the diagnostic that matters: at 22.4% VWC the COCO 1.5gal bag is well below permanent wilting point (FC 75.6%, wilting <35%) — catastrophic channeling confirmed by baseline. Shots are running through preferred paths straight to drain without rehydrating bag mass. Functional shot count: 12–15+/day firing, but functional water uptake is sporadic. EC stack: drip 5.34 → mean pore EC ~4.9 → drain 2.21 (-3.13 leach). Substrate NOT holding feed EC because it's not holding water. Steering intent inferred: controller is running an aggressive vegetative regime, but the substrate isn't responding — channeling has decoupled controller intent from plant outcome. AUTOMAIT mismatch: R5 is not AUTOMAIT-ready at the substrate level — closed-loop steering will chase a moving target until the COCO bag channeling is physically remediated (emitter walkdown, possible bag rewet, possible repack). AUTOMAIT can only be enabled here AFTER manual rewet cycle confirms VWC trough recovers to ≥55% before each lights-on for 7 consecutive days.

Room 9 (id 18761) · BENCHMARK — CLEANEST RIPENING SIGNATURE

312-plant Blue Nerdz · SOILLESS · Ripening Day 45 · 19 days to harvest · HG 153820
Operational signature: zone 76466 instrumented. Daily drip peak ≈ 3,181 mL, daily drain peak ≈ 2,789 mL → drain ratio ~88% at the metered emitter (extreme but consistent with deliberate ripening leach). Functional shot count: ~8–10 shots/day. EC stack: drip 3.96 → mean pore EC 5.77 (across 4 zones 4.75–6.50) → drain 2.30. Substrate stacks +1.81 mS over drip, drain dumps -1.66 mS below drip — the healthiest stack profile of all 7 rooms. Substrate EC genuinely climbing into ripening (target 6.0–8.0, observed 5.77), drip EC moderate (3.96 = controlled finishing feed, not aggressive), drain releasing salt cleanly. Steering intent inferred: generatively-steered ripening, executing correctly. This is WHY R9 is the benchmark — it shows the operation CAN run a clean stack when inputs are right. AUTOMAIT mismatch: smallest gap of any room. Drip flow metering still single-zone — needs whole-room metering or single-zone-proxy confidence flag. R9 is the cultivator-side training example for what AUTOMAIT should produce in the other rooms.

Room 10 (id 18762)

312-plant G-Runtz + MOB · SOILLESS · Ripening Day 45 · 19 days to harvest · HG 153822
Operational signature: zone 76467 instrumented. Daily drip peak ≈ 2,510 mL, daily drain peak ≈ 37 mL → drain ratio ~1.5% (effectively zero drain). Either drain meter blocked/offline or substrate bone-dry into ripening with no runoff. Baseline-confirmed drip EC 1.54 → drain EC 5.36 indicates drain pan is sitting stale and concentrating by evaporation — no fresh drain flow reaching sensor. Functional shot count: ~6–8 shots/day, modest. EC stack: drip 1.54 (very low — finishing flush) → mean pore EC 5.87 (across 4 zones 2.94–8.64 — huge 5.7 mS spread suggests uneven feed delivery between zones) → "drain" 5.36 is stale and not interpretable. Steering intent inferred: appears to be a controlled finishing flush (low drip EC, modest shots) but the no-drain reading prevents confident assessment. AUTOMAIT mismatch: (a) drain instrumentation must be restored — AUTOMAIT cannot run closed-loop without trustworthy drain volume + drain EC; (b) the 5.7 mS pore EC spread between zones means even drip distribution is broken — per-zone drip auditing + likely emitter/manifold service before enable; (c) ripening-intent decision needs to be made and documented THIS WEEK (see §7).

Room 11 (id 18763)

351-plant G-Runtz · SOILLESS · Ripening Day 45 · 19 days to harvest · HG 153824
Operational signature: zone 76469 — drip flow meter offline (dfi n=51 / mean=0 / max=0) for nearly the entire window. Drain meter on the same zone is healthy (n=311, daily peak 2,278 mL). Room-level drip EC pulled from pore_ec_drip:zone:room_18763 = 3.64 mean, drain EC 1.79 = -1.85 leach. Functional shot count from VWC 30 pp swing: ~6–8 shots/day, ripening-appropriate. EC stack: drip 3.64 → mean pore EC 5.07 (across 4 zones 2.81–7.98 — again 5.2 mS spread, uneven feed) → drain 1.79. Substrate holding +1.43 mS above drip — modest stack, lower than R9 benchmark but directionally correct for ripening. Steering intent inferred: generative-leaning ripening, executing reasonably. AUTOMAIT mismatch: (a) drip flow meter must be repaired before AUTOMAIT enable — current drip volume = 0 mL is a hardware failure not an irrigation choice; (b) zone-to-zone pore EC spread (2.81–7.98) indicates per-zone feed delivery is uneven — AUTOMAIT cannot compensate for upstream emitter inconsistency; (c) CO₂ 996 ppm is starving photosynthesis (per baseline) — irrigation isn't the rate-limiter, CO₂ is.

5 · Proposed AUTOMAIT Config — Per Room

For every active flower room: assumed steering goal (to verify with head grower), a proposed irrigationSchedule JSON shape anchored on the room's measured field capacity, an initial ASI preset, a rollback trigger, and per-room risks. All VWC numbers use minVwc = FC × (1 − target_prop_dryback). Substrate-aware: COCO bag rooms cap target dryback below 30 pp (Cal/Mg lockout risk because coco CEC binds divalent cations preferentially as the bag dries). ASI direction verified: all presets pick GEN 3–5 (neutral to mildly generative); no recommendation steps toward GEN 6+ (which would be vegetative).

Room 9 (id 18761) · BENCHMARK · FIRST AUTOMAIT BRING-UP

A. Assumed steering goal

Hold the existing clean ripening signature (36.3 pp dryback, +1.81 mS substrate stack, drain releasing salt cleanly). Default recommendation: do NOT enable AUTOMAIT mid-cohort on R9 — finish the current cycle manually, then bring AUTOMAIT up on Day 1 of the next flip when the substrate is fresh. If cultivator wants to enable now anyway, the schedule below mirrors current behavior. To verify with head grower before implementation.

B. Proposed irrigationSchedule

FC 70.9%, target 36 pp absolute dryback → safety floor 32% VWC (1 pp below current trough 34.6%).

{
  "phaseType": "FLOWER",
  "phaseName": "Late Ripening - Benchmark mirror",
  "p0": {
    "lightsBuffer_P0_min": 180,
    "additionalDrybackTarget_pp": 4
  },
  "p1": {
    "shotPct_of_FC": 2.5,
    "shotIntervalMin": 45,
    "drainTrigger": "first_drain"
  },
  "p2": {
    "enabled": false,
    "shotPct_of_FC": 0,
    "vwcMaintenanceFloor_pct": 0
  },
  "p3": {
    "lightsBuffer_P3_min": 240,
    "targetDryback_absPp": 36,
    "minVwc_safetyFloor_pct": 32.0
  },
  "guardrails": {
    "soil_moist_target_max_pct": 72.0,
    "maxEcpw_mS": 8.5,
    "drainGoal_pctOfDrip": 10.0
  }
}

C. Initial ASI preset

GEN 4 — only if cultivator forces an in-cycle enable. The room is performing at target; neutral-to-slightly-generative preserves the existing shape. Default remains: leave manual through July-13 harvest, then bring AUTOMAIT up on Day 1 of Cycle N+1.

D. Rollback trigger

If VWC trough drops below 30% (root viability floor) OR substrate EC climbs above 9.5 mS within 24h of enabling AUTOMAIT, revert to manual recipe (set HG irrigationSchedule: null) and notify head grower.

E. Per-room risks

  • Only risk here is AUTOMAIT changing what's already working. Strong recommendation: exclude from initial in-cycle enable wave and use as visual control.
  • 19 days to harvest — disrupting cadence now puts finished-product quality at risk for zero upside.
  • If kept manual through current cycle, R9 IS the validation reference for whether AUTOMAIT changes to R3/R10/R11 produced the intended convergence.

Room 1 (id 18740)

A. Assumed steering goal

Continue the existing generative bias visible in the 35.9 pp dryback signature but moderate it as the room transitions from Mid Flower into Bulking over the next 14 days — target 18–22 pp dryback to protect bulking turgor. To verify with head grower before implementation.

B. Proposed irrigationSchedule

FC 69.2%, target 20 pp absolute dryback → minVwc floor 49.2% (currently overshooting at 33.3% trough).

{
  "phaseType": "FLOWER",
  "phaseName": "Mid Flower - Bulking transition",
  "p0": {
    "lightsBuffer_P0_min": 90,
    "additionalDrybackTarget_pp": 3
  },
  "p1": {
    "shotPct_of_FC": 2.0,
    "shotIntervalMin": 30,
    "drainTrigger": "first_drain"
  },
  "p2": {
    "enabled": true,
    "shotPct_of_FC": 1.5,
    "vwcMaintenanceFloor_pct": 55.0
  },
  "p3": {
    "lightsBuffer_P3_min": 180,
    "targetDryback_absPp": 20,
    "minVwc_safetyFloor_pct": 45.0
  },
  "guardrails": {
    "soil_moist_target_max_pct": 70.0,
    "maxEcpw_mS": 6.5,
    "drainGoal_pctOfDrip": 15.0
  }
}

C. Initial ASI preset

GEN 4 — room already shows generative shape (deep dryback, gentle EC stack). A neutral-to-slightly-generative preset moderates the swing as bulking begins rather than pushing it deeper.

D. Rollback trigger

If VWC trough drops below 42% (Ca uptake floor in soilless) OR substrate EC climbs above 7.0 mS within 24h, revert to manual and notify head grower.

E. Per-room risks

  • Drip EC 1.39 is weak for bulking — AUTOMAIT respects drip EC as input. Feed concentration needs to climb to ~2.5–3.0 mS independently before AUTOMAIT can build the substrate stack needed for bulk.
  • 252-plant count is moderate; soilless substrate is forgiving but the 35.9 pp baseline dryback is at the upper edge of bulking turgor tolerance.
  • Phase transition mid-window — re-evaluate ASI preset at Day 28 (flip to bulking proper).

Room 3 (id 18742)

A. Assumed steering goal

Hold the existing ripening dryback shape (30 pp) and lean modestly more generative to drive metabolite finish over the last 19 days, while addressing the cold-canopy signature (VPD 0.99, soil 70.7°F) suppressing transpiration. To verify with head grower before implementation.

B. Proposed irrigationSchedule

FC 64.2%, target 32 pp absolute dryback → minVwc floor 32.2% (currently 34% trough is close to target).

{
  "phaseType": "FLOWER",
  "phaseName": "Late Ripening",
  "p0": {
    "lightsBuffer_P0_min": 150,
    "additionalDrybackTarget_pp": 4
  },
  "p1": {
    "shotPct_of_FC": 2.5,
    "shotIntervalMin": 45,
    "drainTrigger": "first_drain"
  },
  "p2": {
    "enabled": false,
    "shotPct_of_FC": 0,
    "vwcMaintenanceFloor_pct": 0
  },
  "p3": {
    "lightsBuffer_P3_min": 240,
    "targetDryback_absPp": 32,
    "minVwc_safetyFloor_pct": 30.0
  },
  "guardrails": {
    "soil_moist_target_max_pct": 65.0,
    "maxEcpw_mS": 8.0,
    "drainGoal_pctOfDrip": 10.0
  }
}

C. Initial ASI preset

GEN 3 — room is already in clean ripening shape; stepping toward GEN 3 (more aggressive than neutral GEN 5) deepens dryback modestly without forcing a swing AUTOMAIT can't deliver if canopy stays cold.

D. Rollback trigger

If VWC trough drops below 28% (root viability floor for soilless ripening) OR substrate EC climbs above 9.0 mS within 24h, revert to manual and notify head grower.

E. Per-room risks

  • Cold canopy is the rate-limiter, not irrigation — AUTOMAIT cannot drive deeper dryback if the plant isn't transpiring. Climate fix (lift soil temp toward 74°F, push VPD toward 1.4) must happen WITH or BEFORE the schedule change.
  • 19 days to harvest leaves no recovery window if the room drifts — high-frequency check-ins (Day +2, +5, +10) required.
  • Drain EC 1.57 vs drip 4.22 shows substantial EC sink in substrate already; over-leaching during ripening burns finish quality.

Room 10 (id 18762)

A. Assumed steering goal

Diagnose the drip-vs-drain EC inversion (drip 1.54 / drain 5.36 — drain HEAVIER than feed, indicating massive substrate EC dump out OR stale drain pan) before enabling AUTOMAIT. The 28 pp dryback shape is acceptable for ripening but the EC signature suggests either feed-tank labeling error, line crossover, or stale drain pan reading. To verify with head grower before implementation.

B. Proposed irrigationSchedule

FC 63.8%, target 30 pp absolute dryback → minVwc floor 33.8% (currently 35.6% trough is close to target).

{
  "phaseType": "FLOWER",
  "phaseName": "Late Ripening - Pending EC diagnosis",
  "p0": {
    "lightsBuffer_P0_min": 150,
    "additionalDrybackTarget_pp": 3
  },
  "p1": {
    "shotPct_of_FC": 2.5,
    "shotIntervalMin": 45,
    "drainTrigger": "first_drain"
  },
  "p2": {
    "enabled": false,
    "shotPct_of_FC": 0,
    "vwcMaintenanceFloor_pct": 0
  },
  "p3": {
    "lightsBuffer_P3_min": 210,
    "targetDryback_absPp": 30,
    "minVwc_safetyFloor_pct": 32.0
  },
  "guardrails": {
    "soil_moist_target_max_pct": 65.0,
    "maxEcpw_mS": 7.5,
    "drainGoal_pctOfDrip": 10.0
  }
}

C. Initial ASI preset

GEN 4 — slight generative bias to deepen dryback the small amount needed to hit ripening target, but ONLY AFTER drip EC anomaly is resolved. Do not enable until feed line is verified.

D. Rollback trigger

If VWC trough drops below 30% OR if drain EC > drip EC by more than 2.0 mS persists for 12h after enable (confirming inversion is real, not sensor glitch), revert to manual.

E. Per-room risks

  • EC inversion is the #1 risk — drain EC 3.5× drip EC means either (a) substrate dumping accumulated stack (could be intentional ripening leach), (b) feed tank mislabel / line crossover, (c) drain sample contamination. AUTOMAIT respects drip EC as input — if input is wrong, engine starves the plant.
  • 19 days to harvest, 312 plants — quality risk window is short.
  • If the EC pattern is actually a deliberate leach-down ripening step the cultivator chose, AUTOMAIT is the WRONG tool; manual is correct.

Room 11 (id 18763)

A. Assumed steering goal

Mirror the R9 benchmark — this room has the right dryback shape (30 pp) and a clean EC stack-up signature; the bottleneck is CO₂ starvation (996 ppm) suppressing photosynthesis, not irrigation. Use AUTOMAIT only to hold what's working while CO₂ supplementation is fixed. To verify with head grower before implementation.

B. Proposed irrigationSchedule

FC 70.7%, target 32 pp absolute dryback → minVwc floor 38.7% (currently 40.7% trough is just inside target).

{
  "phaseType": "FLOWER",
  "phaseName": "Late Ripening",
  "p0": {
    "lightsBuffer_P0_min": 150,
    "additionalDrybackTarget_pp": 3
  },
  "p1": {
    "shotPct_of_FC": 2.5,
    "shotIntervalMin": 45,
    "drainTrigger": "first_drain"
  },
  "p2": {
    "enabled": false,
    "shotPct_of_FC": 0,
    "vwcMaintenanceFloor_pct": 0
  },
  "p3": {
    "lightsBuffer_P3_min": 210,
    "targetDryback_absPp": 32,
    "minVwc_safetyFloor_pct": 36.0
  },
  "guardrails": {
    "soil_moist_target_max_pct": 71.0,
    "maxEcpw_mS": 8.0,
    "drainGoal_pctOfDrip": 12.0
  }
}

C. Initial ASI preset

GEN 4 — slight generative bias to nudge dryback from 30 pp toward 32 pp; the existing shape is healthy and only needs preservation, not aggression.

D. Rollback trigger

If VWC trough drops below 34% (root viability floor) OR substrate EC climbs above 9.0 mS within 24h, revert to manual.

E. Per-room risks

  • CO₂ starvation is the rate-limiter, not irrigation. AUTOMAIT cannot improve yield if photosynthesis is capped. CO₂ fix (verify supplementation system, target 1100–1400 ppm during photoperiod) must run in parallel.
  • 351 plants is the highest count in the ripening cohort — small per-plant changes scale up. Verify sensor placement is representative.
  • 19 days to harvest — limited recovery window.

Room 2 (id 18741) · COCO 1.5gal · DEFER TO PHASE 4

A. Assumed steering goal

Eliminate the channeling/leaching signature (-3.08 EC stack) and rebuild root-zone EC by switching to many small shots that wet the bag uniformly, while capping dryback below the Cal/Mg lockout threshold for coco. To verify with head grower before implementation.

B. Proposed irrigationSchedule

FC 74.6%, target 18 pp dryback (coco-capped) → minVwc floor 56.6% (currently 37.6% trough is FAR too deep for coco — Cal/Mg lockout risk).

{
  "phaseType": "FLOWER",
  "phaseName": "Mid Flower - Bulking transition (COCO)",
  "p0": {
    "lightsBuffer_P0_min": 60,
    "additionalDrybackTarget_pp": 2
  },
  "p1": {
    "shotPct_of_FC": 1.5,
    "shotIntervalMin": 20,
    "drainTrigger": "shots:8"
  },
  "p2": {
    "enabled": true,
    "shotPct_of_FC": 1.0,
    "vwcMaintenanceFloor_pct": 62.0
  },
  "p3": {
    "lightsBuffer_P3_min": 120,
    "targetDryback_absPp": 18,
    "minVwc_safetyFloor_pct": 54.0
  },
  "guardrails": {
    "soil_moist_target_max_pct": 76.0,
    "maxEcpw_mS": 5.5,
    "drainGoal_pctOfDrip": 20.0
  }
}

C. Initial ASI preset

GEN 5 (neutral) — coco bag is already channeling and leaching at this dryback depth; a generative preset would deepen the swing and worsen Cal/Mg lockout. Neutral lets AUTOMAIT rebuild the substrate EC stack with small frequent shots first.

D. Rollback trigger

If VWC trough drops below 52% (Cal/Mg lockout floor in 1.5gal coco) OR drain EC drops below drip EC by more than 4.0 mS within 24h (worsening leach), revert to manual IMMEDIATELY and notify head grower.

E. Per-room risks

  • 1188 plants in coco — largest room. Channeling probably has a physical root cause (drip stake alignment, bag compaction, uneven flow). AUTOMAIT will NOT fix dripper placement; walk-through BEFORE enable is mandatory.
  • Coco CEC binds Ca/Mg preferentially as bag dries — current 37 pp dryback is squarely in the lockout zone. Capping at 18 pp is non-negotiable.
  • Drip EC 5.94 is high but drain 2.86 shows it's not making it to the root zone — confirm dripper output uniformity by emitter check before flipping AUTOMAIT on.
  • Defer to Phase 4 (Cycle N+1 weeks 5–6) — coco is last because substrate physics + baseline channeling = highest failure cost.

Room 5 (id 18757) · COCO 1.5gal · HARDWARE PROBLEM FIRST

A. Assumed steering goal

Stop the catastrophic 53 pp dryback swing that is almost certainly driven by physical channeling, restore even bag saturation with small frequent shots, and cap dryback well inside the coco safe range. To verify with head grower before implementation.

B. Proposed irrigationSchedule

FC 75.6%, target 15 pp dryback (coco-capped, channeling-aware) → minVwc floor 60.6% (currently 22.4% trough is critical).

{
  "phaseType": "FLOWER",
  "phaseName": "Mid Flower - Recovery (COCO)",
  "p0": {
    "lightsBuffer_P0_min": 45,
    "additionalDrybackTarget_pp": 1
  },
  "p1": {
    "shotPct_of_FC": 1.0,
    "shotIntervalMin": 15,
    "drainTrigger": "shots:10"
  },
  "p2": {
    "enabled": true,
    "shotPct_of_FC": 1.0,
    "vwcMaintenanceFloor_pct": 65.0
  },
  "p3": {
    "lightsBuffer_P3_min": 90,
    "targetDryback_absPp": 15,
    "minVwc_safetyFloor_pct": 58.0
  },
  "guardrails": {
    "soil_moist_target_max_pct": 78.0,
    "maxEcpw_mS": 5.5,
    "drainGoal_pctOfDrip": 25.0
  }
}

C. Initial ASI preset

GEN 5 (neutral) — this room MUST NOT receive a generative preset until channeling is mechanically diagnosed and fixed; neutral lets AUTOMAIT establish even saturation as the baseline.

D. Rollback trigger

If VWC trough drops below 55% (severe Cal/Mg lockout zone for coco) OR a single AUTOMAIT P1 phase fails to drive drain at the configured shot count within 24h (confirming channeling persists), revert to manual IMMEDIATELY and notify head grower.

E. Per-room risks

  • THIS ROOM IS A HARDWARE PROBLEM FIRST. 53 pp dryback in coco is not a steering choice — it's physical (channeling, dead drippers, uneven bag fill, or substrate sensor placed in dry pocket). AUTOMAIT cannot be enabled until walk-through diagnoses the cause.
  • 288 plants in coco at 22% VWC trough may have already taken Cal/Mg uptake damage — visible deficiency may appear in the next 5–7 days regardless of fix.
  • Substrate sensor reliability check needed — single TEROS-12 reading 22% in a 1.5gal coco bag is either real (catastrophic) or sensor-in-channel (artifact). Cross-check against a second probe before any change.
  • Defer to Phase 4 (Cycle N+1 weeks 5–6) — only after R2 has proven coco AUTOMAIT works without leaf-tip burn or Cal/Mg symptom.

6 · Cross-Room Risk Synthesis + Staged Rollout

6.1 · Cross-room risks

Substrate-physics risk · HIGH
R2 and R5 are 1.5gal coco bags; the other five active rooms are SOILLESS rockwool. AUTOMAIT recipes are not substrate-aware out of the box — if a SOILLESS recipe (peak VWC 65%, trough 35%, 30 pp dryback target) gets pushed to R2 or R5, coco's high CEC + low forgiveness will accelerate Cal/Mg lockout already implied by R2's drain–drip delta of -3.08 mS. R5's current 53 pp swing in COCO is the canary: applying a generative SOILLESS recipe here would compound channeling, not correct it. Coco rooms need their own recipe family with shallower dryback (12–18 pp), higher shot count, tighter P1 runoff gates.
Cohort-synchronization risk · HIGH
Four May-10 rooms (R3, R9, R10, R11) are 19 days from a coordinated July-13 harvest. Enabling AUTOMAIT mid-ripening means the controller takes over P3 depth and morning re-wet timing on a crop already metabolically committed. The cycle won't tolerate a coordinated transpiration shift — and if the controller mis-fires on one of four sister rooms, the cohort goes out of phase. Defer all May-10 cohort AUTOMAIT to Cycle N+1 after July-13. Non-negotiable per the project's "agronomic mistakes compound" principle.
Sensor reliability risk · MEDIUM, growing
Room 6's 2 silent h421 climate sensors (per today's mesh audit) are a leading indicator. AUTOMAIT mis-fires (or no-fires) on stale telemetry — a 30-minute substrate-EC outage during P1 means the controller can't close the runoff gate and the operator won't know. Pre-AUTOMAIT mandatory check: 14-day rolling sensor uptime ≥ 99% per room for substrate VWC, substrate EC, climate temp/RH, CO₂. No exceptions. Also: drip flow meters offline on R3 and R11, drain meter blocked/offline on R10 — all must be restored before those rooms can run closed-loop.
Cultivator-readiness risk · BLOCKING
Zero HK Cassandra HGs reference either of the 2 saved recipes (151496 "Flower 63 DAYS" / 151494 "Flower 64 DAYS"). AROYA journal has no documented steering intent (generative vs vegetative, per phase, per room) for ANY room. AUTOMAIT requires an explicit "what is this room trying to do" before it can decide what to fire. This is the first blocker — everything else waits on it.
Operational compounding risk · MEDIUM
Per Cian's framing: agronomic mistakes compound through the 9-week cycle. A P1 mis-fire on Day 7 becomes a Cal/Mg lockout by Day 21 becomes a yield-down at harvest. Enabling AUTOMAIT on 5 rooms the same day during an active cohort multiplies the surface area for compounded failure with no clean rollback. Doctrine: one room at a time, verification gate between rooms, no parallel enablements within a cohort. Phases below enforce this structurally.

6.2 · Staged rollout — the order-of-operations

PhaseRoom(s)WhenPrerequisitesSuccess criteriaAdvance gateRollback trigger
0 All 7 active rooms (cultivator-side only) Now → next 7 days None — pre-AUTOMAIT R2 P1 shot count multiplied (smaller shots, more of them) · R5 emitter flow uniformity within ±10% post-walkdown · R10 ripening intent decision logged in AROYA journal · R3 VPD reaches 1.15+ via temperature lift · R11 CO₂ reaches 1100+ ppm during photoperiod All 5 cultivator-side fixes verified by Cian on site N/A — no AUTOMAIT firing yet
1 R9 (id 18761) — benchmark first Cycle N+1, Day 1 after July-13 flip Controller wired and verified · Steering intent documented in journal · Recipe assigned · R9 sensor uptime ≥99% over prior 14d · R9 substrate EC baseline ≤ 6.0 mS at flip First P1 fires within 90s of lights-on · P1→P2 closes on first measurable drain (≥2% of shot volume) · trough VWC within 3 pp of recipe target · overnight dryback within 5 pp of recipe target · no Cal/Mg leaf symptoms by Day 7 7 consecutive days of clean fires, no manual overrides Any single day with >2 mis-fires OR substrate EC drift >1.5 mS from target OR drain EC delta < -2.0 mS → revert R9 to manual, hold all subsequent phases
2 R1 (id 18740) Cycle N+1, Week 2 after R9 gate passed R9 gate passed · R1 sensor uptime ≥99% · R1 recipe assigned (SOILLESS, generative early-flower bias given current 36 pp dryback indicates room runs hot) · feed EC corrected to ≥2.8 mS Same as R9 + feed EC correction verified within first 3 P1 cycles 7 consecutive clean days, R1 substrate EC trajectory matches recipe intent Same as R9
3 R3 → R10 → R11 (staggered, 48h between each) Cycle N+1, Weeks 3–4 R9 + R1 both holding clean · R3 climate fix verified (VPD ≥1.15, soil ≥72°F) · R11 CO₂ fix verified (≥1100 ppm during photoperiod) · R10 intent decision implemented in recipe · drip/drain meters restored on all three Per room: R9 gates plus the room-specific fix is stable under AUTOMAIT control (controller doesn't fight climate setpoint) Each room must hold 5 clean days before next room enables Any one of R3/R10/R11 fails → halt remaining SOILLESS bring-ups, hold COCO indefinitely
4 R2 then R5 (COCO — sequential, 7 days apart) Cycle N+1, Weeks 5–6 ALL SOILLESS rooms holding clean for 14+ days · coco-specific recipe authored and reviewed · R2 P1 shot regime proven manually for full prior cycle · R5 emitter uniformity verified post-walkdown · drain EC delta ≥ -1.0 mS (not -3.08) at flip Trough VWC within 2 pp of coco recipe target (tighter than SOILLESS) · drain EC delta stays ≥ -1.5 mS · no leaf-tip burn · no interveinal chlorosis by Day 14 R2 holds 7 clean days before R5 enables; R5 holds 7 clean days before phase closes Any drain EC delta < -2.5 mS OR visible Cal/Mg symptom → revert to manual, defer COCO AUTOMAIT another full cycle
5 R4, R6, R8, veg room Cycle N+2 as HGs are assigned Room 6 silent h421s resolved + 14d uptime verified BEFORE any HG flips into R6 · each room follows R9-pattern bring-up (Day 1 of new HG, not mid-cycle) Same as R9 baseline Same as Phase 1 Same as Phase 1

6.3 · Why this sequence holds up

7 · Open Questions for Cian + Customer

Blockers Cian needs to resolve with HK Cassandra before any AUTOMAIT field gets written to the AROYA portal. Ranked by urgency.

CUSTOMER · BLOCKER 1
Document steering intent per room in the AROYA journal — generative vs vegetative, per phase, with target dryback / shot count / substrate EC trajectory.
AUTOMAIT cannot be configured without this. Foundational; blocks Phase 1 entirely. Without a documented "this room is going for [X yield / Y terpene / Z generative push]", the controller has nothing to decide against. Owner: HK Cassandra head grower + Cian. Deadline: before July-13 harvest.
CUSTOMER · BLOCKER 2
Confirm recipe assignments and author a coco-specific recipe.
Facility has 2 saved recipes (151496 "Flower 63 DAYS", 151494 "Flower 64 DAYS") but zero HGs reference them. Neither is differentiated by substrate. Needs: 1 SOILLESS recipe + 1 COCO recipe minimum, both with explicit P0/P1/P2/P3 targets matching the documented intent. Blocks Phase 1.
CUSTOMER · BLOCKER 3
R5 emitter walkdown + R2 P1 shot regime fix.
Substrate-physics blockers. Until R5's 53 pp swing is mechanically resolved (emitter flow uniformity, bag-to-bag VWC variance) and R2's drain–drip delta is brought from -3.08 mS into the -1.0 to -1.5 mS range via multiplied P1 shot count, AUTOMAIT cannot reliably hand off either room. Blocks Phase 4. Deadline: within current cycle (next 19 days) so the verification can run before Cycle N+1 starts.
CUSTOMER · URGENT
Decide R10 ripening intent THIS WEEK.
R10 has drip 1.54 mS on a ripening room — is the operator ramping for terpene drive (raise feed to 3.0+ mS over 5 days) or flushing for finish? Won't survive as an open question into next cycle; the recipe authoring in Blocker 2 depends on the answer. Deadline: by end of this week.
CIAN · OPERATIONS
Confirm controller procurement plan and target install date.
The universal blocker: irrigationControllers: [] on every room. AUTOMAIT cannot fire on any room until a Growlink/Modbus/AROYA-supported controller is wired and linked. Procurement + install + commissioning is the long-pole — Phase 1 cannot start until at least R9's controller is online. Action: confirm with HK Cassandra what's purchased and when it lands; if nothing is on order, raise it as the gating step.
CIAN · TELEMETRY
Restore drip flow meter on R3 + R11, drain meter on R10.
Per Agent 2 drip/drain pull: R3 drip meter offline ~8/14 days · R11 drip meter offline (n=51, mean=0) · R10 drain meter reading stale (37 mL/day vs 2510 mL drip = ~1.5% drain). AUTOMAIT cannot run closed-loop without trustworthy drip+drain on each instrumented zone. Field service ticket before Phase 3 bring-ups.
CIAN · NEXT CYCLE
Resolve Room 6 silent h421s before any HG flips into R6.
Mesh audit flagged 2 silent climate sensors. Not blocking today (no active HG in R6), but blocks Phase 5 for R6 specifically. Coordinate with the mesh audit's remediation plan.
HEAD GROWER · DATA
Verify drip EC readings on R1 (1.39 mS) and R10 (1.54 mS) aren't stale-line artifacts.
Both rooms show drip EC well below any reasonable mid-flower / ripening feed setpoint. Either the cultivator is intentionally running a low-EC recipe (in which case document it as intent) or the in-line drip EC probe is reading stale water from a non-flowing section. AUTOMAIT will respect drip EC as input — if it's wrong, the engine starves the plant.

8 · Cross-References

9 · Appendix — Data Gaps & Methodology Notes

9.1 · Data gaps encountered

9.2 · Methodology — how readiness was scored

For each of the 11 rooms, Agent 1 (parallel sub-agent) called mcp__aroya__spa_get_room_config(facility=4576, room=<id>, window=30) strictly sequentially (per feedback_spa-config-not-parallel-safe.md) and extracted: substrate VWC sensor count from devices[] (ter15 modelKey, calibrationType NONE counted as substrate); controller wiring from room.irrigationControllers list; light schedule from currentLightSchedule; substrate type from substrateConfig / substrateType; target ranges from target_ranges response field; recipe assignment cross-checked against spa_get_recipes (facility-level) and HG phases_json[].recipe linkage. Tier assignment used the table in §2.

9.3 · Methodology — how proposed configs were derived

For each active flower room, Agent 3 (parallel sub-agent) built the proposed irrigationSchedule from: (a) measured FC from baseline audit 14-day peak VWC; (b) target absolute pp dryback per phase per substrate (SOILLESS ripening 25–35 pp, mid-flower bulking 12–18 pp; COCO bag capped at 12–18 pp regardless of phase due to Cal/Mg lockout physics); (c) minVwc = FC × (1 − target_prop_dryback). ASI presets verified against reference_aroya-asi-slider-direction.md — pre-publish grep on Agent 3's output confirmed no "step up", "ASI 7", "ASI 8", or "ASI 9" framings (inverted-direction signatures).

9.4 · Methodology — staged rollout sequencing

Sequence prioritizes: (1) cultivator-side fixes before any AUTOMAIT firing (Phase 0); (2) SOILLESS before COCO (substrate physics — coco's high CEC + low forgiveness makes channeling/leaching the highest-cost failure mode); (3) cleanest signature first (R9 benchmark before R1 before R3/R10/R11); (4) one room per phase with verification gates between rooms (per Cian's "agronomic mistakes compound" framing); (5) all May-10 cohort deferred to Cycle N+1 to avoid mid-cohort transpiration-shift risk on 4 sister rooms 19 days from a coordinated harvest.

9.5 · Why this is plan-only

No AUTOMAIT field will be written to the AROYA portal as part of this report. Per the request: Cian approves the plan, then implements room-by-room with the gates in §6.2 between each phase. Every proposed irrigationSchedule JSON in §5 is a draft for review, not a payload.