From 81701724a2d74b26d7556d329e7c0cc807926f45 Mon Sep 17 00:00:00 2001 From: louispaulb Date: Tue, 21 Jul 2026 14:22:08 -0400 Subject: [PATCH] fix(ops): modern fiber status hero when GenieACS has no data (tech-3 ONUs) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fibre ONUs on unpolled OLTs (tech-3 XGS-PON, e.g. olt3/172.17.192.6) have no GenieACS `device`, so the modern topo card AND the "Do Stuff en direct" block — both gated on `device` — rendered nothing, leaving a stuck "Chargement ACS…", a stale "Unauthorized" modem-diag, and static titles. But dostuff gives full live status for these ONUs. - New modern fiber hero (v-if="isFibre && !device"): topology strip (Internet→OLT→ ONT) + online/offline pill + colored Rx/Tx signal + distance/uptime/mgmt(link)/ WAN/VoIP/IPTV/firmware tiles + copy-for-ticket + refresh — driven by the live OLT read (dostuff), auto-loaded on mount (2.5s grace for ACS to fill `device` first, so ACS-covered ONUs keep their native card; no double fetch). - Suppressed the misleading stuck "Chargement diagnostic ACS…" for fibre (hero owns the state) and confirmed the heavy Playwright modem-diag stays v-if="false". Verified: build clean, leak 0; dostuff on the shown ONU (TPLGC4160688 @ 172.17.192.6) returns live state (Hors ligne, uptime 2d12h, mgmt/WAN/VoIP/IPTV) → hero populates. Deployed index.42eea809. Co-Authored-By: Claude Opus 4.8 --- .../detail-sections/EquipmentDetail.vue | 53 ++++++++++++++++++- 1 file changed, 51 insertions(+), 2 deletions(-) diff --git a/apps/ops/src/components/shared/detail-sections/EquipmentDetail.vue b/apps/ops/src/components/shared/detail-sections/EquipmentDetail.vue index 5500b25..479dd03 100644 --- a/apps/ops/src/components/shared/detail-sections/EquipmentDetail.vue +++ b/apps/ops/src/components/shared/detail-sections/EquipmentDetail.vue @@ -65,6 +65,42 @@ + +
+
+
Internet
+ +
OLT
{{ oltLabel }}
+ +
ONT
{{ doc.olt_slot }}/{{ doc.olt_port }}/{{ doc.olt_ontid }}
+
+
+ {{ fibOnline === true ? 'En ligne' : fibOnline === false ? 'Hors ligne' : 'À vérifier' }} + Rx {{ liveF.rxPower }} dBm + Interrogation de l'OLT en direct… (~30 s) + {{ liveF.error }} + via OLT en direct + + Copier un résumé pour le ticket + +
+
+
Signal Rx/Tx
{{ liveF.rxPower }} / {{ liveF.txPower }} dBm
+
Distance
{{ liveF.distance }} m
+
Uptime
{{ liveF.uptime }}
+ +
WAN
{{ liveF.wanIp }}
+
Profil
{{ liveF.profileId }}
+
VoIP
{{ liveF.voip }}
+
IPTV
{{ liveF.iptv }}
+
Firmware
{{ liveF.firmware }}
+
Dern. coupure
{{ liveF.lastDown }}
+
+
{{ liveF.error || 'OLT injoignable' }}
+
Lecture des données OLT en direct…
+
+
@@ -325,8 +361,8 @@
-
- Chargement diagnostic ACS... +
+ Chargement diagnostic ACS...