SOLUS
iEnergia Group · Platform State · 22 May 2026
89 MW
Fleet
16
Plants
11
Instruments

Deploy 20-May unverified — DEPLOY-NOW not renamed to done/. Confirm at iops.ienergia.cl/api/v1/rendiciones/funds

Platform Status
iOps
Operations · Beam · Trail · Cache · Halo
Trail
Field ops · gastos
Live
Beam
Task matrix · scheduling
Schema only
Cache
Spare parts
Building
Halo
HSE · EPP register
W4
iData
Analytics · Pulse · Lens · Prism
Pulse
Nightly SCADA ingest
Blocked
Lens
Weekly AI analysis
7-day wait
Prism
Client portal
W3
iAM
Finance · Mirror · Rendiciones · Trace
Mirror
Bank reconciliation
Live
Rendiciones
Float reimbursements
Verify deploy
Trace
Invoice generation
W2–W4
Beacon · Path
AI advisor
W5–W6
Data Flow
SOURCES PIPELINE STORE OUTPUTS TEAM GPM API 10 plants · OAuth2 VCOM API blocked · no creds Pulse daily.py · IEC 61724 ⚠ staged, not deployed idata_daily KPIs · energy · PR per plant · daily rows Prism portal client reports (W3) iData dashboard mock only Daniel asset mgr · approvals Hergo · Obton client tenants Trail · Field gastos · events Beam task matrix · Job types ⚠ schema only calendar_events central spine updateFromSource dead Cache spare parts · 6 tables no controller yet Jean · Adán ops room BdC Bank CSV cartola daily Mirror 5-tier cascade · 75% match iam_bank matched + rendiciones Trace invoices W2–W4 Grece finance admin iDATA iOPS iAM
What to Build Next
1
Cache module — controller + UI + seed import
Schema deployed (migration 9). CacheController.php not written. cache.html not built. Excel seed import (Inventario xlsx) missing. Beam reservation hook not patched into CalendarController.
iOps · Cache ~6h controller + UI + seed + Beam patch
2
Verify + complete May 20 deploy
9 migrations + 6 controllers + 5 HTML pages queued before laptop went for service. DEPLOY-NOW not renamed to done/. Hit the smoke-test URLs to confirm Rendiciones, Beam schema, aboutsolus are live.
iops.ienergia.cl/api/v1/rendiciones/funds iops.ienergia.cl/api/v1/tasks/types
3
Unblock Pulse — VCOM creds + datasource map
Python pipeline is hardened and staged. Two external blockers remain: VCOM API credentials (David → email Meteocontrol/Obton), and a GPM datasource map per plant (Daniel). 62% of fleet is on VCOM.
iData · Pulse David: email VCOM Daniel: datasource map
4
Fix dead updateFromSource + two Imunify360 landmines
CalendarController.php:452 updateFromSource() is never called — all mirrors stay stale. DisconnectionsController.php:371 uses str_contains() (silent death). EventsController.php:228 bare catch(Throwable) without $e.
CalendarController.php:452 str_contains → strpos !== false catch(Throwable $e) ~1h
Critical Bugs
Severity Issue Location Fix
Critical updateFromSource() never called — calendar mirrors permanently stale CalendarController.php:452 Wire to every PUT handler that modifies a spawning source
Critical str_contains() — Imunify360 silent death DisconnectionsController.php:371 Replace with strpos(...) !== false
Critical power_limitations vs limitaciones mismatch — silent zero returns OymReviewController.php:309
iData compute/daily.py
Standardize to power_limitations everywhere
High Bare catch(Throwable) without $e — parse error EventsController.php:228 catch (\Throwable $e)
High Response::ok without return — endpoint continues executing SensorsController.php:90–96 Add return before every Response call
6-Week Sprint
W1 · Now
Verify May-20 deploy
Cache controller MVP
Fix str_contains
Pulse creds unblock
W2
Cache seed · xlsx
Lens v1 · GPM
Trace v1 build
W3
Trail v0.6 Android
Cache consume
Prism portal
W4
Halo v1 · EPP
Cache reorder queue
Lens v1 · VCOM
W5
Hallazgos module
Findings → Beam
Beacon scope-check
W6
Active Scheduler
Beacon live
Prism release
Quote-to-Cash