Facility 3754 - Facility auditFacility 3754 - Facility audit

POWRHOUSE: POWRHOUSE: phase-2 facility auditphase-2 facility audit

2-week report - 2026-05-07 to 2026-05-21 - generated 2026-05-21 20:46 PDT2-week report - 2026-05-07 to 2026-05-21 - generated 2026-05-21 20:46 PDT

AROYA public API + Claude MCP runtimeAROYA public API + Claude MCP runtime - Publisher-compatible light/dark pairPublisher-compatible light/dark pair - Inline Chart.jsInline Chart.js
9 rooms9 rooms 14 critical14 critical 93 warnings93 warnings OpenCLI SPA harvest connectedOpenCLI SPA harvest connected

Headline FindingsHallazgos principales

Rooms analyzedRooms analyzed ClimateClima
9
6 biologically active / likely active
Occupancy inferred from data until SPA harvest groups are availableOccupancy inferred from data until SPA harvest groups are available
Critical issuesCritical issues SubstrateSustrato
14
78 substrate-linked flags
Phase-aware triage still needs SPA/HG target rangesPhase-aware triage still needs SPA/HG target ranges
WarningsWarnings ClimateClima
93
29 climate-linked flags
Warnings are grouped by room below instead of shipped as a flat listWarnings are grouped by room below instead of shipped as a flat list
Avg VWCAvg VWC SubstrateSustrato
37.1%
room mean across available sensors
Use overnight relative dryback once hourly SPA readings are connectedUse overnight relative dryback once hourly SPA readings are connected
Avg pore ECAvg pore EC SubstrateSustrato
4.02
room mean across EC series
EC stack needs drip/drain context before calling the causeEC stack needs drip/drain context before calling the cause
Avg VPDAvg VPD ClimateClima
0.93 kPa
air temp mean 71.5 degF
Climate read is public-API only in this buildClimate read is public-API only in this build

The leadResumen

POWRHOUSE is running through the phase-2 Codex audit shell: 14 critical issues and 93 warnings across 9 rooms. OpenCLI is connected: 33 harvest groups, 9 recipes, 9/9 room configs, 5/9 target-range room matches, and 1/9 rooms with active harvest-group overlap were harvested for the report spine. The analysis gate is crop-steering first: phase, substrate, relative dryback, EC stack, P0/P1/P2/P3 intent, and climate's effect on transpiration must drive the findings.POWRHOUSE is running through the phase-2 Codex audit shell: 14 critical issues and 93 warnings across 9 rooms. OpenCLI is connected: 33 harvest groups, 9 recipes, 9/9 room configs, 5/9 target-range room matches, and 1/9 rooms with active harvest-group overlap were harvested for the report spine. The analysis gate is crop-steering first: phase, substrate, relative dryback, EC stack, P0/P1/P2/P3 intent, and climate's effect on transpiration must drive the findings.

i
Phase-2 coverage notePhase-2 coverage note
This renderer is facility-generic, and the data-quality gate treats OpenCLI as the audit spine. Public API aggregates can support the analysis, but OpenCLI harvest groups, target ranges, recipes, room config, dataReadings, and irrigation events are required before HTML is generated or published.This renderer is facility-generic, and the data-quality gate treats OpenCLI as the audit spine. Public API aggregates can support the analysis, but OpenCLI harvest groups, target ranges, recipes, room config, dataReadings, and irrigation events are required before HTML is generated or published.

OpenCLI Data SpineColumna de datos OpenCLI

SPA harvest statusSPA harvest status

OpenCLI is connected: 33 harvest groups, 9 recipes, 9/9 room configs, 5/9 target-range room matches, and 1/9 rooms with active harvest-group overlap were harvested for the report spine.OpenCLI is connected: 33 harvest groups, 9 recipes, 9/9 room configs, 5/9 target-range room matches, and 1/9 rooms with active harvest-group overlap were harvested for the report spine.

required for audit-graderequired for audit-grade
  • Required: active/overlapping harvest groups with phase dates and room assignments.Required: active/overlapping harvest groups with phase dates and room assignments.
  • Required: targetRanges, harvest config, room config, recipes, journals, and computed alerts.Required: targetRanges, harvest config, room config, recipes, journals, and computed alerts.
  • Required: sequential /dataReadings harvest for soil_moist, pore_ec, vpd, air_temp, soil_temp, rel_hum, co2, and solar_quantum.Required: sequential /dataReadings harvest for soil_moist, pore_ec, vpd, air_temp, soil_temp, rel_hum, co2, and solar_quantum.
  • Required: irrigation events to calculate shots/day, P0 delay, P1 ramp, P2 maintenance cadence, and P3 drydown.Required: irrigation events to calculate shots/day, P0 delay, P1 ramp, P2 maintenance cadence, and P3 drydown.
  • Current status: OpenCLI data harvested.Current status: OpenCLI data harvested.

Prior-Commitment AuditAuditoria de compromisos previos

Context registerContext register

Phase 2 placeholder until client history and prior reports are pulled from the Claude brain / Notion sources.Phase 2 placeholder until client history and prior reports are pulled from the Claude brain / Notion sources.

2026-05-07 -> 2026-05-21
  • Do not infer prior commitments from current sensor data alone.Do not infer prior commitments from current sensor data alone.
  • Next buildout should attach customer history, grower names, previous owner commitments, and source-register citations before this section is called complete.Next buildout should attach customer history, grower names, previous owner commitments, and source-register citations before this section is called complete.
  • Highest current follow-up pressure: POWR 3, POWR 4, POWR 1.Highest current follow-up pressure: POWR 3, POWR 4, POWR 1.

HVAC Capacity & Climate LoadCapacidad HVAC y carga climatica

Room verdict tableRoom verdict table

Public API aggregates now; lights-on/lights-off split lands once SPA readings are available.Public API aggregates now; lights-on/lights-off split lands once SPA readings are available.

107 total flags107 total flags
RoomRoom OccupancyOccupancy PhasePhase VWCVWC ECEC VPDVPD TempTemp CritCrit WarnWarn
POWR 1 likely planted despite stale metadata Early Flower/Generative (flower) 48.0 4.96 0.86 80.1 0 27
POWR 2 likely planted despite stale metadata flower - phase needs SPA/HG confirmation 52.5 4.83 1.22 71.5 0 11
POWR 3 likely planted despite stale metadata flower - phase needs SPA/HG confirmation 46.2 5.85 0.85 75.1 2 29
POWR 4 transitional / verify occupancy flower - phase needs SPA/HG confirmation 1.3 0.18 1.12 76.8 11 7
Veg Room likely planted despite stale metadata vegetative 37.6 4.26 0.70 78.9 1 13
Dry 1 transitional / verify occupancy dry/cure - exclude from flower thresholds n/a n/a 1.06 68.9 0 0
Dry 2 likely inactive or insufficient data dry/cure - exclude from flower thresholds n/a n/a 0.80 62.2 0 2
Vault likely inactive or insufficient data dry/cure - exclude from flower thresholds n/a n/a 0.81 64.5 0 4
Cure transitional / verify occupancy dry/cure - exclude from flower thresholds n/a n/a 0.93 65.6 0 0

Climate <-> Irrigation InterplayInteraccion clima-riego

!

POWR 3 / Zone 9b - Top: soil moist below target

Evidence: POWR 3 / Zone 9b - Top: soil moist below target at 2.30 %.Evidence: POWR 3 / Zone 9b - Top: soil moist below target at 2.30 %.

Why it matters: VWC and dryback are the plant's steering signal; when the room falls outside target, P0/P1/P2/P3 timing can push the crop vegetative or generative without anyone changing the recipe.Why it matters: VWC and dryback are the plant's steering signal; when the room falls outside target, P0/P1/P2/P3 timing can push the crop vegetative or generative without anyone changing the recipe.

!

POWR 3 / Zone 9b - Top: pore ec below target

Evidence: POWR 3 / Zone 9b - Top: pore ec below target at 0.00 mS/cm.Evidence: POWR 3 / Zone 9b - Top: pore ec below target at 0.00 mS/cm.

Why it matters: Substrate EC is an output, not a setpoint. A gap here can mean the crop is concentrating salts faster than irrigation is clearing them.Why it matters: Substrate EC is an output, not a setpoint. A gap here can mean the crop is concentrating salts faster than irrigation is clearing them.

!

POWR 4 / Zone 1: soil moist below target

Evidence: POWR 4 / Zone 1: soil moist below target at 0.60 %.Evidence: POWR 4 / Zone 1: soil moist below target at 0.60 %.

Why it matters: VWC and dryback are the plant's steering signal; when the room falls outside target, P0/P1/P2/P3 timing can push the crop vegetative or generative without anyone changing the recipe.Why it matters: VWC and dryback are the plant's steering signal; when the room falls outside target, P0/P1/P2/P3 timing can push the crop vegetative or generative without anyone changing the recipe.

!

POWR 4 / Zone 1: pore ec below target

Evidence: POWR 4 / Zone 1: pore ec below target at 0.00 mS/cm.Evidence: POWR 4 / Zone 1: pore ec below target at 0.00 mS/cm.

Why it matters: Substrate EC is an output, not a setpoint. A gap here can mean the crop is concentrating salts faster than irrigation is clearing them.Why it matters: Substrate EC is an output, not a setpoint. A gap here can mean the crop is concentrating salts faster than irrigation is clearing them.

^

POWR 1 / Zone 1 - Bottom: soil moist below target

Evidence: POWR 1 / Zone 1 - Bottom: soil moist below target at 29.70 %.Evidence: POWR 1 / Zone 1 - Bottom: soil moist below target at 29.70 %.

Why it matters: VWC and dryback are the plant's steering signal; when the room falls outside target, P0/P1/P2/P3 timing can push the crop vegetative or generative without anyone changing the recipe.Why it matters: VWC and dryback are the plant's steering signal; when the room falls outside target, P0/P1/P2/P3 timing can push the crop vegetative or generative without anyone changing the recipe.

^

POWR 1 / Zone 1 - Bottom: soil temp above target

Evidence: POWR 1 / Zone 1 - Bottom: soil temp above target at 82.20 F.Evidence: POWR 1 / Zone 1 - Bottom: soil temp above target at 82.20 F.

Why it matters: Climate changes the crop's ability to transpire; if VPD, DIF, or CO2 are off, irrigation data needs to be read through that lens.Why it matters: Climate changes the crop's ability to transpire; if VPD, DIF, or CO2 are off, irrigation data needs to be read through that lens.

i

Crop readCrop read

A widening drip-to-drain or root-zone EC gap usually means the crop is concentrating salts faster than the current irrigation pattern is clearing them.A widening drip-to-drain or root-zone EC gap usually means the crop is concentrating salts faster than the current irrigation pattern is clearing them.

Why it matters: this keeps the conversation tied to crop response instead of treating the dashboard as a threshold table.Why it matters: this keeps the conversation tied to crop response instead of treating the dashboard as a threshold table.

i

Crop readCrop read

Climate can quietly undo steering intent; a low-VPD or low-DIF room can feel safe while still limiting the transpirational pull needed to match the root-zone program.Climate can quietly undo steering intent; a low-VPD or low-DIF room can feel safe while still limiting the transpirational pull needed to match the root-zone program.

Why it matters: this keeps the conversation tied to crop response instead of treating the dashboard as a threshold table.Why it matters: this keeps the conversation tied to crop response instead of treating the dashboard as a threshold table.

Per-Room Deep Dive - Select & CompareDetalle por sala - seleccionar y comparar

Select rooms for simultaneous comparisonSelect rooms for simultaneous comparison

0 rooms selected0 rooms selected
RoomRoom OccupancyOccupancy Phase / HGPhase / HG VWCVWC ECEC VPDVPD TempTemp CritCrit WarnWarn ScoreScore TargetsTargets ConfigConfig

Comparison uses the current public aggregate metrics plus OpenCLI harvest-group, target-range, and room-config coverage. The next data-depth layer is sequential /dataReadings and irrigation events for actual relative dryback, ET rate, and P0/P1/P2/P3 calculations.Comparison uses the current public aggregate metrics plus OpenCLI harvest-group, target-range, and room-config coverage. The next data-depth layer is sequential /dataReadings and irrigation events for actual relative dryback, ET rate, and P0/P1/P2/P3 calculations.

Facility Overview ChartsGraficas generales de la instalacion

EC stack proxyEC stack proxy

chartEC

VWC / dryback proxyVWC / dryback proxy

chartDryback

VPD envelopeVPD envelope

chartVPD

Air temperatureAir temperature

chartTemp

Phase Biophysics & Irrigation InputsBiofisica por fase e insumos de riego

P0/P1/P2/P3 vocabulary is included now; actual shot-cycle metrics require SPA harvest events.P0/P1/P2/P3 vocabulary is included now; actual shot-cycle metrics require SPA harvest events.

POWR 1

13617
OccupancyOccupancylikely planted despite stale metadata
Phase assumptionPhase assumptionEarly Flower/Generative (flower)
OpenCLI HGOpenCLI HG3 active / 11 historical HGs
Targets / configTargets / config5 / 1
VWCVWC48.0%
Pore ECPore EC4.96
VPDVPD0.86 kPa
Air tempAir temp80.1 degF
0 critical / 27 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.0 critical / 27 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.

POWR 2

13618
OccupancyOccupancylikely planted despite stale metadata
Phase assumptionPhase assumptionflower - phase needs SPA/HG confirmation
OpenCLI HGOpenCLI HG0 active / 10 historical HGs
Targets / configTargets / config4 / 1
VWCVWC52.5%
Pore ECPore EC4.83
VPDVPD1.22 kPa
Air tempAir temp71.5 degF
0 critical / 11 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.0 critical / 11 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.

POWR 3

13619
OccupancyOccupancylikely planted despite stale metadata
Phase assumptionPhase assumptionflower - phase needs SPA/HG confirmation
OpenCLI HGOpenCLI HG0 active / 10 historical HGs
Targets / configTargets / config0 / 1
VWCVWC46.2%
Pore ECPore EC5.85
VPDVPD0.85 kPa
Air tempAir temp75.1 degF
2 critical / 29 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.2 critical / 29 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.

POWR 4

13620
OccupancyOccupancytransitional / verify occupancy
Phase assumptionPhase assumptionflower - phase needs SPA/HG confirmation
OpenCLI HGOpenCLI HG0 active / 18 historical HGs
Targets / configTargets / config5 / 1
VWCVWC1.3%
Pore ECPore EC0.18
VPDVPD1.12 kPa
Air tempAir temp76.8 degF
11 critical / 7 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.11 critical / 7 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.

Veg Room

13621
OccupancyOccupancylikely planted despite stale metadata
Phase assumptionPhase assumptionvegetative
OpenCLI HGOpenCLI HG0 active / 9 historical HGs
Targets / configTargets / config0 / 1
VWCVWC37.6%
Pore ECPore EC4.26
VPDVPD0.70 kPa
Air tempAir temp78.9 degF
1 critical / 13 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.1 critical / 13 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.

Dry 1

13622
OccupancyOccupancytransitional / verify occupancy
Phase assumptionPhase assumptiondry/cure - exclude from flower thresholds
OpenCLI HGOpenCLI HG0 active / 24 historical HGs
Targets / configTargets / config2 / 1
VWCVWCn/a%
Pore ECPore ECn/a
VPDVPD1.06 kPa
Air tempAir temp68.9 degF
0 critical / 0 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.0 critical / 0 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.

Dry 2

13623
OccupancyOccupancylikely inactive or insufficient data
Phase assumptionPhase assumptiondry/cure - exclude from flower thresholds
OpenCLI HGOpenCLI HG0 active / 10 historical HGs
Targets / configTargets / config2 / 1
VWCVWCn/a%
Pore ECPore ECn/a
VPDVPD0.80 kPa
Air tempAir temp62.2 degF
0 critical / 2 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.0 critical / 2 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.

Vault

17390
OccupancyOccupancylikely inactive or insufficient data
Phase assumptionPhase assumptiondry/cure - exclude from flower thresholds
OpenCLI HGOpenCLI HGno harvest-group room match
Targets / configTargets / config0 / 1
VWCVWCn/a%
Pore ECPore ECn/a
VPDVPD0.81 kPa
Air tempAir temp64.5 degF
0 critical / 4 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.0 critical / 4 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.

Cure

18777
OccupancyOccupancytransitional / verify occupancy
Phase assumptionPhase assumptiondry/cure - exclude from flower thresholds
OpenCLI HGOpenCLI HGno harvest-group room match
Targets / configTargets / config0 / 1
VWCVWCn/a%
Pore ECPore ECn/a
VPDVPD0.93 kPa
Air tempAir temp65.6 degF
0 critical / 0 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.0 critical / 0 warning flags. Validate P0/P1/P2/P3 intent against active harvest group metadata.

Irrigation Shot-Cycle AuditAuditoria del ciclo de riego

Flag burden by roomFlag burden by room

chartFlags

Shot-cycle gapShot-cycle gap

P0/P1/P2/P3
  • P0 delay, P1 shot count, P2 maintenance cadence, and P3 runoff posture are not available from the aggregate summary payload.P0 delay, P1 shot count, P2 maintenance cadence, and P3 runoff posture are not available from the aggregate summary payload.
  • OpenCLI is required and connected for this report; the remaining buildout is the readings/events collector that turns SPA access into per-phase shot-cycle charts and EC-stack deltas.OpenCLI is required and connected for this report; the remaining buildout is the readings/events collector that turns SPA access into per-phase shot-cycle charts and EC-stack deltas.
  • For now, room cards use VWC, EC, VPD, and temperature as steering proxies only.For now, room cards use VWC, EC, VPD, and temperature as steering proxies only.

Config & Guardrail AuditAuditoria de configuracion y guardrails

OpenCLI guardrail coverage by roomOpenCLI guardrail coverage by room

5/9 rooms have target-range matches and 9/9 have room config in the SPA harvest.5/9 rooms have target-range matches and 9/9 have room config in the SPA harvest.

targetRanges + room_configtargetRanges + room_config
RoomRoom PhasePhase Active HGActive HG TargetsTargets ConfigConfig Harvest groupHarvest group
POWR 1ID 13617 Early Flower/Generative (flower) 3 5 1 🔋2026-May-Powr1🏡 5/8-7/7
POWR 2ID 13618 flower - phase needs SPA/HG confirmation 0 4 1 no overlapping HG in window
POWR 3ID 13619 flower - phase needs SPA/HG confirmation 0 0 1 no overlapping HG in window
POWR 4ID 13620 flower - phase needs SPA/HG confirmation 0 5 1 no overlapping HG in window
Veg RoomID 13621 vegetative 0 0 1 no overlapping HG in window
Dry 1ID 13622 dry/cure - exclude from flower thresholds 0 2 1 no overlapping HG in window
Dry 2ID 13623 dry/cure - exclude from flower thresholds 0 2 1 no overlapping HG in window
VaultID 17390 dry/cure - exclude from flower thresholds 0 0 1 no overlapping HG in window
CureID 18777 dry/cure - exclude from flower thresholds 0 0 1 no overlapping HG in window

Recommendations - Owner-TaggedRecomendaciones con dueno

1
Review POWR 3 / Zone 9b - Top: soil moist below target (2.30 %). Owner

Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.

2
Review POWR 3 / Zone 9b - Top: pore ec below target (0.00 mS/cm). Owner

Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.

3
Review POWR 4 / Zone 1: soil moist below target (0.60 %). Grower

Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.

4
Review POWR 4 / Zone 1: pore ec below target (0.00 mS/cm). Grower

Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.

5
Check setpoints, sensor placement, and room state for POWR 1 / Zone 1 - Bottom. Grower

Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.

6
Check setpoints, sensor placement, and room state for POWR 1 / Zone 2 - Bottom. Process

Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.

7
Check setpoints, sensor placement, and room state for POWR 1 / Zone 3 - Bottom. Process

Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.

8
Check setpoints, sensor placement, and room state for POWR 1 / Zone 3 - Bottom. Process

Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.Tie the follow-up to the observed room signal, not a generic dashboard threshold. Capture the expected crop response and verify it in the next audit window.

Data Quality & CoverageCalidad y cobertura de datos