Skip to content

P10.9H — IEC 61850-aware BCUGE diagnostics: distinguish same-interface aliases and late BRCB recurrence #535

Closed

Description

@masarray

Confirmed field problems and safe code-only remedy

Operator BCUGE Discovery on 2026-10-12 07:27 WIB, merge-test app fcdae6ae3b9650ad0e3042f8820050e93b8e73df and engine d700b0df741b466afb8abe6cee1d70b1619d7b4d: 67/67 initial display, six/six static RCBs with actual report traffic, zero cyclic MMS process polling, 80 InformationReports, 603 process updates, 27 observed BRCB SqNum discontinuities and two BufOvfl. CSWI GW's last anomaly occurs 48.6s after RCB activation (SqNum 4→1 without GI reason), falsifying a startup-only explanation. EVE GW has six discontinuities in early burst. Four URCBs have zero findings, but no guarantee of lossless SOE.

A separate actionable source bug in Services/DiagnosticReportBuilder.cs counted five IPv4 aliases on one KM_Test virtual NIC as five competing adapters, then told the user to disable NICs or adjust interface metrics. The IP target itself is assigned to that PC. This warning is provably wrong and distracts from BRCB diagnosis.

Focused change: ARSAS draft PR #534

Starting from exact verified P10.9G ARSAS staging 80d1a894b1c909b61ccbe36440528c5ef32ee388 with engine pin frozen d700b0df741b466afb8abe6cee1d70b1619d7b4d. Exact candidate commit 9a52679f867b7f6e0fd846e2a0e386e20b333dfe, two files only.

  1. Classify matching NICs using NetworkInterface.Id, NOT IP alias count or friendly name. Different GUIDs with same friendly label are distinct; multiple aliases with same GUID are one adapter. A destination address installed locally is a same-PC endpoint (likely local simulator), not remote physical IED. No-match IPv4 prefix does not rule out gateway reachability. Keep adapter matrix, actual UDP-selected route source and probe; operating system route is authoritative. No change to network traffic.
  2. Context-aware BRCB summary based on existing decoder metadata: count discontinuities with confirmed GI reason versus those lacking confirmed GI reason, advertised BufOvfl, and the elapsed milliseconds since RCB start-return until last anomaly. Explicitly surface >5s late recurrence as not startup-only, never conclude that GI caused benign resets, that EntryID is numeric, that wire order equals callback receive order, or that buffered SOE was/was not lost. Unknown/reversed timestamps stay UNKNOWN. Output at most one line per anomalous BRCB.
  3. Seven deterministic C# xUnit tests cover five aliases/one NIC, locally assigned target, duplicate names with distinct GUIDs, gateway route possibility, exact 48.575s BCUGE shape and user diagnostic output, early only observation, missing/reversed time. No new CI workflow, timer, buffer, polling, socket calls, RCB/GI writes, MMS decoder or control changes.

Release gate: exact candidate all canonical Windows/Native/SCL R7/IO/SV/Field Capture/Installer/mainline-provenance CI must pass before guarded non-force staging FF+immutable checkpoint. PR #512 remains draft, main and physically qualified R7/R10 lineage untouched. This change does NOT resolve external BCUGE BRCB source anomaly and does NOT pretend to; retain #520 open pending an independent server/wire causal test. Do not ask for another identical diagnostic pair to validate pure string/metadata interpretation.

Activity

  1. masarray commented on Oct 12, 2026

    @masarray
    OwnerAuthor

    P10.9H verified: context-aware route and BRCB diagnosis is staged

    • PR #534 MERGED at 14399369abae30d55ec04a9dec051b5679a59e38; guarded non-force FF from P10.9G 80d1a894b1c909b61ccbe36440528c5ef32ee388; immutable checkpoint checkpoint/p10-9h-iec-context-aware-14399369. ARSAS main and parent PR GOOSE UX: tidy event header alignment without altering capture #512 remain unchanged/draft.
    • Exact candidate GitHub CI: 10/10 SUCCESS (10 workflows triggered by the two-file diagnostic-only change), canonical Windows Build #38188916405 SUCCESS, 1,609/1,609 ARSAS unit tests + 19/19 engine smoke, native bridge/test evidence, SV, discovery/provenance/production checks, Field Capture. Real portable EXE artifact #11720835922 verified at exact head. Staging post-FF auto CI (16 workflows) still in progress, verify before closure.
    • Confirmed application bug fixed: five BCUGE-relevant IPv4 aliases belonged to one KM_Test interface, but prior ARSAS reported "Multiple adapters" and recommended disabling NICs; target IP itself is assigned to the same PC. New classification counts distinct Windows interface GUIDs, recognizes local/same-host MMS endpoint, and avoids claiming no direct subnet means no gateway route.
    • IEC 61850 BRCB context-aware diagnosis: GI-tagged vs no confirmed GI reason, BufOvfl and exact elapsed ms from RCB activation to latest anomaly, with late >5-second recurrence marked NOT startup-only. The last real BCUGE CSWI anomaly was ~48.574s after activation, so previous startup-only theory was incorrect.
    • Two files only; seven new xUnit tests. Engine locked unchanged d700b0df741b466afb8abe6cee1d70b1619d7b4d; static report-only, RCB/GI, no cyclic polling remain unchanged. Neither TCP packet ordering, lossless SOE nor BCUGE's 27 SqNum discontinuities/BufOvfl=2 are claimed cured; BRCB #520 remains open. Handoff #525 updated.
  2. masarray commented on Oct 27, 2026

    @masarray
    OwnerAuthor

    D29 fast reconciliation — close scoped historical item

    P10.9H same-interface IPv4 alias diagnostics source fix already merged to staging via #534 with 10/10 candidate workflows success. Five IPv4 aliases on one NIC must not be mistaken for five adapters. Close this scoped fix, but do not assert BCUGE BufOvfl or external SqNum anomaly resolved (#544 holds remaining uncertainty).

    Maintainer directive: use the latest successful evidence and accepted working baseline; no repeat hardware/PCAP captures, no code/engine/main/stable changes from this administrative closure. Previous CI/field provenance preserved exactly; no false claims of universal device validation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions