Repository navigation
P10.8: isolate BCUGE BRCB BufOvfl and SqNum/EntryID discontinuities with same-slot wire-order evidence #520
Description
Field evidence — P10.7 GE Edition 1 BCU simulator, two independent ingresses (11 Oct 2026)
Protected success baseline is ARSAS Milestone #518, checkpoint checkpoint/p10-6-field-verified-bcuge-parity-a8835102; P10.7 staged head 415d1db74c0f69637063601da037edf78142cb89 / checkpoint/p10-7-brcb-observability-415d1db7. Operator reported EXE build SHA 4b12e5b05da2531d2f852844a8db4b8006554c65, GitHub's two-parent merge-test commit from P10.7, so evidence genuinely exercises new triage. Engine remains 00ad2819b99ffe6b3f885e59aa24a6afb2b4d8e1, no changes.
Evidence from two user-uploaded ARSAS diagnostic reports
Local reports: Open SCL 2026-10-11 12:58:28 WIB (connection 12:54:39) and IP Discovery 13:02:02 WIB (connection 12:59:08). Same user-authorized local GE Edition1 BCU simulator, BCUGE high-confidence independent IID verification (Discovery), raw BCUGEF650, exact semantic SHA 439d4dc0507019533b154ed68f7f4007f39f6be92b5cd3f413ff3b84f619727e, all 7/7 rows equal, eight DataSets/124 members, 67/67 displayed, six real static RCB targets routed, 0 cyclic MMS process polling. Both report 25 decoded InformationReports / 605 projected process updates. Both have OptionFields decoded 25/25, SqNum 25/25, no untracked metadata streams, unchanged ConfRev, no segmentation.
| Evidence | Open SCL | IP Discovery |
|---|---|---|
| frames with findings | 12 | 6 |
| findings (multiple per frame possible) | 13 | 7 |
| sequence discontinuities | 10 | 4 |
| BRCB BufOvfl=true frames | 3 | 3 |
| CSWI BRCB frames | 19 | 19 |
| CSWI findings / seq discontinuities | 10 / 9 | 4 / 3 |
| CSWI changed / same / unknown opaque EntryID | 9 / 0 / 0 | 2 / 1 / 0 |
| CSWI discontinuities with explicit GI reason | 2 | 2 |
| EVEGGIO BRCB frames | 2 | 2 |
| EVEGGIO findings / seq discontinuities | 3 / 1 | 3 / 1 |
| EVEGGIO changed / same / unknown EntryID | 1 / 0 / 0 | 1 / 0 / 0 |
| EVEGGIO discontinuities with explicit GI / BufOvfl | 1 / 1 | 1 / 1 |
| Four URCB streams | 1 frame each, 0 findings | 1 frame each, 0 findings |
IMPORTANT CONFOUND: Open SCL takes BRB_CSWI_GW010101 / BRB_EVE_GW01; Discovery takes BRB_CSWI_SOGI101 / BRB_EVE_SOGI10101. 10-vs-4 is not A/B evidence of algorithm quality; different physical RCB slots and independent sessions can have different replay/buffer behavior. All BufOvfl observed in two BRCBs; four URCBs each clean but were observed only once.
Decoder provenance: CSWI/EVEGGIO OptionFields 7F80 (SqNum and EntryID advertised), BRCB EntryID decoded in all 21/21 BRCB frames per ingress. URCB mask 7C80, EntryID omitted as expected. RptEna and GI writes accepted on all streams; GI inclusion reason present in some anomalous frames, not all CSWI discontinuities. This makes GI automatically explains harmless reset unsound.
Current logs show anomalies concentrated near the initial RCB activation/initial GI. They do not prove post-initial spontaneous event delivery over a controlled time period. 67 displayed values and 605 process updates are NOT proof of lossless buffered SOE. No source attribution to IED/server vs receive reordering can be made without timestamped on-wire frame-order evidence. Do NOT suppress warnings, reinterpret opaque EntryID as an integer/sequence, or auto-claim no loss.
P10.8 next experiment — engineering acceptance, safe & bounded
- No protocol-side writes as a diagnostic hack. Preserve
RptEna/GI workflow and safe existing RCB ownership/slot availability. Do not write PurgeBuf, force another client's reserved RCB or restart the simulator to cosmetically clear warnings. Only observe existing legal control-plane outcomes. - Use an authorized same-PC GE simulator, two comparable capture runs on the same exact CSWI & EVEGGIO RCB instances if both are genuinely free (no ownership override), first from Open SCL and second from IP Discovery; record actual chosen RCB ref each time.
- If simulator supports safe test events, generate a deterministic set of non-control indication changes after initial GI at a known interval (e.g. at +20s, +40s), then monitor up to 60s. Avoid any real switch/breaker operations. Capture targeted permitted network trace and correlate wire order, SqNum, opaque EntryID hash/presence only, GIBit, BufOvfl, ConfRev, timeOfEntry and receive timestamp per RCB.
- Need to distinguish initial GI/queue replay vs spontaneous updates vs buffer overflow. Optionally test clean association and known buffer state (with simulator-only operator consent), recording whether buffer was empty beforehand. Isolate whether a repeated SqNum corresponds to identical or different on-wire report PDUs.
- Only if raw observations prove a client-side defect, implement a minimal, typed engine-level correction with byte-accurate project-generated regression fixtures and no regressions to P10.6. If source is server simulator behavior, classify as external and keep the diagnostic warning rather than modifying decoder/pipeline.
- Preserve fixed scope: 8/124 DataSets, 67/67 values, 6/6 real RCB streams, zero cyclic polling, BCUGE trusted IEDName, exact 7-row fingerprint; maintain R10 main/public release gates.
Full source diagnostic reports remain user-supplied chat attachments and are not committed to the public repository. No R10 physical acceptance or SOE/event-lossless claim. Engine incomplete GetNameList remains ARIEC #162.
Activity
masarray commentedon Oct 11, 2026
New operator evidence — 2026-10-11 13:28 WIB, P10.7 confirmed
User uploaded Diagnostic Report from running GE/BCUGE simulator on existing P10.7 executable
4b12e5b05da2531d2f852844a8db4b8006554c65, locked engine00ad2819b99ffe6b3f885e59aa24a6afb2b4d8e1. Connected/monitoring192.16.1.33:102, nameBCUGE, high-confidence trusted IID, immutable semantic fingerprint439d4dc0507019533b154ed68f7f4007f39f6be92b5cd3f413ff3b84f619727e, 8 DataSets/124 members, 67/67 values, 6/6 RCBs routed, zero process polling. Smart discovery 2.15 seconds, but 6400/64-page cap still explicitly incomplete.New snapshot at 13:28:21 shows 43 sequenced InformationReports / 623 process updates, up from 25/605 in a previous independent 13:02 run. Latest exact slot GW continuity: 13 findings on 12 frames, 10 SqNum discontinuities, 3 BufOvfl, 25/25 CSWI EntryIDs and 2/2 EVEGGIO EntryIDs decoder-proven, ConfRevChanges=0. Four URCBs have 7/1/1/7 frames respectively with zero findings. Last CSWI anomaly
2026-10-11T06:25:51.4627546Z, about 186 ms after the2026-10-11T06:25:51.2770801Zactivation-return observation; EVEGGIO last anomaly06:25:51.3961772Z. No later anomaly timestamp as of 13:28, but this alone is insufficient to claim uninterrupted healthy event delivery.Major confound removed: earlier Open SCL 12:58 on the same two GW RCB slots
BRB_CSWI_GW010101/BRB_EVE_GW01produced the exact same 13 findings, 10 Sq discontinuities, 3 BufOvfl (19 CSWI, 2 EVEGGIO initial frames). Earlier IP Discovery at 13:02 selected different SOGI slots and had 7 findings/4 discontinuities; this is no proof that Discovery was better. Similarity across both ingresses on the same BRCB slots makes slot-specific startup behavior a stronger hypothesis, not a proven server cause.Next bounded implementation: ARSAS draft P10.8A PR #521 from P10.7 staging adds O(1) per-RCB post-finding actual received frame counter, last-finding/last-observed timestamps and immutable diagnostic view. No decoder/engine/RCB/write/polling changes. Do not infer recovery from elapsed wall clock; if an EVEGGIO stream has only 2 total frames, there are no later clean events to claim. CI pending. Preserve milestone #518 and release gates.
masarray commentedon Oct 11, 2026
P10.8A complete — follow-up evidence added without changing BRCB acquisition (2026-10-11)
Field basis: Latest user-uploaded Discovery Diagnostic Report (13:28 WIB; app merge-test
4b12e5b05da2531d2f852844a8db4b8006554c65, locked ARIEC00ad2819b99ffe6b3f885e59aa24a6afb2b4d8e1) shows BCUGE high-confidence IID verification, same 7/7 semantic fingerprint439d4dc0507019533b154ed68f7f4007f39f6be92b5cd3f413ff3b84f619727e, 8 DataSets/124 members, 67/67 static values, 6/6 static RCB streams, no cyclic MMS polling. 43 InfoReports/623 process updates in that association. Ten SqNum anomalies and three BufOvfl across two GW BRCBs; last known anomaly 186ms after CSWI activation return, no later anomaly timestamp despite later traffic. Comparing different previous session 25/605 is not a same-association incremental delta. Same-slot earlier Open SCL GW capture had exactly 13 findings/10 Seq discontinuities/3 BufOvfl; ingress not independently implicated. Ongoing SOE losslessness remains unverified.Implemented in PR #521: from frozen P10.7
415d1db74c0f69637063601da037edf78142cb89, 3-file consumer-only diff (continuity inspector; diagnostic formatter; six new xUnit tests). Adds capped constant-memory, association-local actual report frame count after last per-RCB finding, plus first/last report receive timestamps and last finding timestamp in immutable snapshot. A later warning resets follow-up count; OptFlds warnings/BufOvfl remain; timestamps without evidence remain null. ReportsRCB follow-up : receivedAfterLastFinding=... firstFrameUtc=... lastFindingUtc=... lastFrameUtc=...only for RCBs with findings. RCBs with no later frames CANNOT appear recovered solely due idle elapsed time. No new network I/O, commands, report activation, dynamic polling, decoder/engine or per-frame unbounded allocations.Promotion: exact PR head
a7f4edbf5cb972eacb9baaf0c25e4475ee5f10c910/10 GitHub CI succeeded including canonical Windows Build #38118437424 and portable EXE artifact #11694588019. Guarded non-force FF to stagingfix/512-goose-event-header-alignmentverified, checkpointcheckpoint/p10-8a-post-anomaly-followup-a7f4edbf. 16 staging post-FF workflows automatically triggered on the identical SHA; do NOT manually retrigger duplicates. ARSAS main and ARIEC main/engine pin untouched.Acceptance: P10.6 field-verified semantic/identity Milestone #518 and prior
checkpoint/p10-6-field-verified-bcuge-parity-a8835102, pluscheckpoint/p10-7-brcb-observability-415d1db7, remain immutable. No physical R10 acceptance or public release. For operator next test: reuse GE simulator, run 60-150 seconds after initial GI, take diagnostics: compare same GW slotCSWIandEVEGGIO. Expect actual additional reports reflected as post-finding frames for active CSWI, while an EVEGGIO BRCB with no further reports honestly shows zero. Historical BufOvfl must remain. Root-cause distinction IED buffering vs client receive-order requires authorized wire trace; no decoder or auto replay mutations permitted without that evidence. Engine NameList partial 6400/64 remains ARIEC #162.masarray commentedon Oct 11, 2026
P10.8B milestone — bounded BRCB decoder-metadata chronology (2026-10-11)
Current staging:
fix/512-goose-event-header-alignmentadvanced via non-force fast-forward from tested P10.8Aa7f4edbf5cb972eacb9baaf0c25e4475ee5f10c9to exact3c58a476e25289a1a59f55992dbf70c81f73fffd, PR #522 GitHub confirms MERGED. Immutable new checkpointcheckpoint/p10-8b-bounded-brcb-chronology-3c58a476. Previously verified P10.6checkpoint/p10-6-field-verified-bcuge-parity-a8835102and P10.7checkpoint/p10-7-brcb-observability-415d1db7stay unchanged; P10.6 milestone #518 protected.Engineering scope: only three consumer files changed:
Services/Iec61850ReportContinuityInspector.cs,Services/DiagnosticReportBuilder.cs,tests/ARSAS.Tests/P108BBoundedReportChronologyTests.cs. For buffered RCB only, record first 32 and most recent 8 received decoder metadata frames per exact stream using lazy-allocated fixed-size ring of readonly record structs, no unbounded collection/per-frame heap trace allocation. Metadata includes receive-order ordinal, explicitly known/unknown receive time, SqNum, GI reason, BufOvfl, opaque EntryID relation only (changed/repeated/unverified/absent; requires independently verified OptionFields for both consecutive frames), and number of WARN findings on each frame. Never store raw EntryIDs, payload values, MMS PDU bytes. Snapshot copies up to 40 structs/RCB and diagnoses omitted middle count, first/tail order. Report makes clear receive-order metadata is not TCP packet order, no SOE losslessness conclusion. Four URCBs have no chronology buffer.Exact candidate CI: 10/10 green, full Windows solution/regression, pinned engine identity/canonical SCL, ArdIrec native CTest, portable single EXE smoke, CI guards; Build ARSAS run #38120012150, portable artifact #11695130540 (not expired when checked). Nine new deterministic tests verify ring 60 frames and omitted interval, boundary lengths, warning retention with repeat SqNum/EntryID, raw OptionFields rejection, no raw cursor leakage, URCB no history, frozen snapshot, unknown timestamps and stream isolation. At stage promotion exact SHA/baseline preflight passed. Auto-triggered 16 post-fast-forward workflows started, not manually dispatched.
Protected physical simulator truth: Operator previously verified BCUGE with original SHA-pinned
BCU_GE.iid, 7/7 identical static semantic rows/fingerprint439d4dc0507019533b154ed68f7f4007f39f6be92b5cd3f413ff3b84f619727e, 8 DS/124 ordered members, 67/67 runtime values, 6/6 routed configured static RCBs, no cyclic MMS polling. Most recent 13:28 user report from P10.7 showed 43 reports and 623 updates, 13 findings/10 Sq discontinuities/3 BufOvfl on the same GW BRCB slots as earlier Open SCL. All anomalies clustered at activation, but no wire capture means client-vs-simulator cause and SOE replay/loss remain UNKNOWN, warnings MUST remain. P10.8 Issue #520 owns the real-wire same-slot investigation; engine partial 6400/64 page NameList remains ARIEC #162.Safety: ARIEC stage and pinned lock remain
00ad2819b99ffe6b3f885e59aa24a6afb2b4d8e1, ARSAS main remains7d8d8026ae96d45f44d47f361d115a437af88fbe, ARIEC main unchanged. No decoder behavior, extra network I/O, RCB ownership or GI rewrites, no R10 physical qualification, main merge or public release. Next operator test: run P10.8B EXE in GE simulator, record complete Diagnostic Report after startup and after a permitted safe indication change; compare per-GW-RCB chronology to Wireshark trace. Do not interpret receive order as wire proof.masarray commentedon Oct 11, 2026
P10.8C — completed isolated milestone (2026-10-11)
Verified latest staging was P10.8B
3c58a476e25289a1a59f55992dbf70c81f73fffd, which had already passed 16/16 post-FF workflows, not the earlier P10.8A head. P10.6 trusted BCUGE IID and static-report parity field milestone #518 remains protected. Engine lock still exact00ad2819b99ffe6b3f885e59aa24a6afb2b4d8e1.Root-cause-quality observability gap: P10.8B retains first 32 + latest 8 BRCB decoder report metadata frames. In a long BRCB stream, genuine BufOvfl/SqNum anomaly at frame #46 of 70 is lost from the detailed head/tail evidence, despite existing aggregate counters. A long-running gateway needs to preserve intermittent anomaly evidence with bounded memory.
Implemented PR #523: new lazy fixed ring of the last 8 anomalous BRCB frames, independent of unchanged existing first32/last8 chronology; copies in receive order into immutable snapshot; bounded
BRCB anomaly historydiagnostic section; no raw EntryID, MMS PDU, process values or unbounded history; zero new allocation for healthy BRCBs or URCBs until actual BRCB anomaly. O(1) append and constant per-BRCB memory. Exactly 3 files change: inspector, diagnostic formatter, five deterministic xUnit cases covering omitted-middle anomaly, ring wrap, immutable snapshot, no allocation for healthy/unbuffered and no secret cursors in diagnostics.Exact PR head
a10eae2c3a5be11ba63e0b94b78d4f24c7fc73f2CI 10/10 SUCCESS, canonical Build ARSAS #38122272726 and Windows Portable EXE #11695822574. Guarded non-force FF from P10.8B staging to that SHA; checkpointcheckpoint/p10-8c-anomaly-chronology-a10eae2c; PR marked merged. New staging 16 automatic workflows triggered on identical SHA: currently 1 green/15 running, zero failures; do not manually duplicate CI.Invariant: ARSAS and ARIEC main unchanged, ARIEC engine lock unchanged. Absolutely no changes to IEC 61850 decoder, RCB setup/selection, static DataSets, control, polling or GOOSE. SOE lossless physical qualification still NOT VERIFIED; BRCB BufOvfl=3 historical user logs remain genuine and must not be hidden. Device/protocol root cause still requires same-slot on-wire capture per Issue #520; Smart MMS 6400/64 partial NameList remains ARIEC #162.
masarray commentedon Oct 11, 2026
P10.8C checkpoint + P10.8D exact BRCB-slot comparator integrated (2026-10-11)
Baseline audit: Existing staged HEAD had already advanced beyond P10.8A to
a10eae2c3a5be11ba63e0b94b78d4f24c7fc73f2with 16/16 exact-head GitHub CI SUCCESS (P10.8B first32/last8 receive chronology and P10.8C last8 anomalies, no raw EntryID). Preserved as checkpointcheckpoint/p10-8c-bounded-anomaly-chronology-a10eae2cbefore changes, not rebuilt on older base.P10.8D: ARSAS PR #524 adds read-only offline comparator
scripts/compare-p10-brcb-sessions.py, nine standalone fixture regressions and one canonical Windows CI invocation. The comparator refuses misleading A/B analysis if IED name, pinned engine SHA, static semantic fingerprint, exact BRCB reference set, or DataSet differs. It compares per-slot observed counts and bounded chronology evidence only, NEVER asserts wire order, SOE lossless or physical R10 qualification; no live protocol writes, decoder, static DataSet, UI runtime, process polling or engine changes.Exact PR head
ce73df3a47e163416c232b083eba1e4915f33e17passed 12/12 GitHub Actions checks SUCCESS including canonical Windows build #38125585489 and portable EXE artifact #11697416229. After explicit exact-SHA, engine lock, main branch and FF ancestry checks, PR #524 merged into staging via non-force guarded fast-forwarda10eae2c...→ce73df3a..., checkpointcheckpoint/p10-8d-brcb-same-slot-comparator-ce73df3a. All original milestone checkpoints still exist. 16 automatic post-promotion CI workflows started; do not manually trigger duplicates.Protected field milestone: #518 P10.6 BCUGE High verified identity, seven-row fingerprint
439d4dc0507019533b154ed68f7f4007f39f6be92b5cd3f413ff3b84f619727e, 8 DataSets/124 members, 67/67 process values, 6/6 RCB report traffic, 0 cyclic polling. Engine lock remains exactly00ad2819b99ffe6b3f885e59aa24a6afb2b4d8e1; ARSAS/ARIEC main and public release untouched. Last GE simulator evidence still has BRCB BufOvfl and SqNum issues; this tool does NOT fix or hide them. IEC wire-order trace and physically controlled event evidence are still required before engine/protocol changes.masarray commentedon Oct 11, 2026
P10.8D exact same-BRCB-slot offline comparator implemented and staged at
ce73df3a47e163416c232b083eba1e4915f33e17(16/16 post-FF CI green). Latest read-only comparator sourcescripts/compare-p10-brcb-sessions.py, 9 negative fixtures, rejects cross-slot comparisons and never claims lossless SOE. Canonical cross-thread state and commands: ARSAS #525. This issue #520 remains OPEN for actual authorized wire-order same-slot GE simulation/relay evidence; raw pcap root cause not yet proven.masarray commentedon Oct 11, 2026
P10.8E read-only offline diagnostics improvement merged into ARSAS staging at
b129e7da32d804effff195497359f5ff0eb56a07(PR #526, canonical Windows CI SUCCESS). Same-slot comparator now preserves decodedBufOvflframe counts per exact RCB and refuses missing/impossible counts, with 13 fixture tests. This is not a cause fix: 13 findings, 10 SqNum discontinuities and 3 BufOvfl in prior GE GW slot evidence remain valid. Root-cause test still requires operator-authorized same-slot MMS wire-order capture on the simulator, no RCB ownership takeover, no breaker/device control, no lossless SOE assertion. Immutable checkpointcheckpoint/p10-8e-brcb-bufovfl-evidence-b129e7da; engine lock unchanged.masarray commentedon Oct 11, 2026
New operator P10.8E merge-test field evidence (2026-10-11 17:29 / 17:32 WIB)
Two fresh independent BCUGE same-PC authorized GE F650 simulator Diagnostic Reports supplied privately. Report app version
1.6.40+f4b07d454215f14dc659e2e9e57e3cfea62b4e98is GitHub verified merge-test commit with parents exact P10.8Dce73df3a...and P10.8Eb129e7da.... Engine remains00ad2819b99ffe6b3f885e59aa24a6afb2b4d8e1and semantic fingerprint439d4dc0507019533b154ed68f7f4007f39f6be92b5cd3f413ff3b84f619727eboth. Each 8 static DS / 124 ordered members, 67/67 displayed, 6/6 routed real static RCB, 0 cyclic MMS polling. Open SCL 49 InformationReports / 629 process updates, Discovery 55 / 635.Confound remains: different exact slots. Open SCL CSWI
BRB_CSWI_GW010101frames=31, anomalousFrames=10, sqDiscontinuities=9, sqWithGIreason=2, BufOvfl=1, postFindingFrames=6, last anomaly 267.880 ms after RCB start-return; Discovery CSWIBRB_CSWI_SOGI101frames=37, anomalousFrames=4, discontinuities=3, sqWithGIreason=2, BufOvfl=1, postFindingFrames=6, last anomaly 240.127 ms after start-return. Open SCL CSWI had 7 discontinuities without explicit GI reason, Discovery 1, but cross-slot difference is not ingress-performance evidence.EVEGGIO Open SCL
BRB_EVE_GW01and DiscoveryBRB_EVE_SOGI10101: independently two received frames only, both GIreason=YES and BufOvfl=YES, SqNum=0 then 0 with changed opaque EntryID; one discontinuity each; 0 subsequent frames; last anomaly 30.870 ms / 30.752 ms after respective RCB start-return. Across both per-session captures BufOvfl=3 (CSWI=1 + EVE=2). Four URCBs no observed findings, but several only one frame. None of this proves replay root cause, wire packet order, SOE continuity or physical R10.P10.9A implementation candidate draft PR #527 from exact P10.8E
b129e7da...: add opt-in independent-session BRCB triage to existing offline comparator, preserving default strict same-slot refusal, exposing the above per-slot GI/BufOvfl/post-finding/timing evidence without paired conclusions; six new fixture regressions, no engine, decoder, polling, RCB/writes or network changes. CI pending; staging remains P10.8E until validated. Original reports not committed. Next causal experiment still needs genuinely free same RCB slots, safe operator simulator indications after GI, authorized MMS packet-order trace, no PurgeBuf, ownership takeover or device control.masarray commentedon Oct 11, 2026
P10.9A integration result: PR #527 now MERGED into staging at exact
a27d108b765cb725f042c85b584b254969a56519, guarded non-force FF; checkpointcheckpoint/p10-9a-independent-brcb-triage-a27d108b. Candidate 8/8 CI SUCCESS including canonical Windows build and 19 Python comparator fixtures. Offline--independent-triageexposes separately the two mismatched GW/SOGI BRCB sessions without changing the strict default same-slot rejection. No runtime/engine/decoder/RCB/GI/polling modifications and NOT a root cause fix. Original operator reports kept private. Next requires identical free RCB slots plus authorized MMS wire capture and safe simulator indications. #525 records exact head and artifact.masarray commentedon Oct 11, 2026
Operator repeat evidence: 2026-10-11 18:22 / 18:24 WIB, prepared for P10.9B
Two private ARSAS BCUGE same-PC simulator reports, Open SCL and IP Discovery, app merge-test SHA
7bc0241f6361474a4e63f748be18097f52b84a2bverified to have exact P10.9Aa27d108b...as a parent; pinned engine00ad2819b99ffe6b3f885e59aa24a6afb2b4d8e1. Both 8 DS/124 members, 67/67 display, 6/6 static RCB routed, zero cyclic MMS polling, exact semantic fingerprint439d4dc0507019533b154ed68f7f4007f39f6be92b5cd3f413ff3b84f619727e.New decisive observational pattern: NON-GI CSWI SqNum recurrence after ~20-second receive gap on both ingresses, not only immediate startup. Open SCL GW CSWI: 39/39 decoder receive chronology, 13 anomalous frames, 12 discontinuities (2 with GI reasons), 1 BufOvfl, last finding at frame#38
11:22:13.8183266Z: previous #37 SqNum=12, then 1 with GIreason=NO / BufOvfl=NO / EntryID changed, after 19,734.103 ms receive gap, 20,041.650 ms after RCB start-return, one clean frame after. Discovery SOGI CSWI: 40/40 chronology, 11 anomalous frames, 10 discontinuities (1 with GI reason), 1 BufOvfl; frame#3911:24:01.3554255Z: previous #38 SqNum=8 then 1, GIreason=NO / BufOvfl=NO / EntryID changed, 19,615.422 ms receive gap, 19,904.610 ms after start-return, one clean frame after.EVEGGIO on both ingresses remains two frames only (SqNum=0,0, both GIreason YES and BufOvfl YES, EntryID changed between frames); zero later clean follow-up. Totals Open 49 reports / 16 findings / 13 discontinuities / 3 BufOvfl; Discovery 50 / 14 / 11 / 3. Different GW versus SOGI BRCB slots still make any paired reliability comparison INVALID. Decoder chronology does NOT demonstrate actual TCP/wire arrival order, root cause, event loss, lossless SOE, or physical R10.
P10.9B draft PR #528 adds an offline-only, completeness-gated decoder receive-gap calculation to P10.9A
--independent-triage. Default strict same-slot comparator and all network/runtime/engine/RCB/GI/control paths untouched. 25 deterministic comparator test fixtures; candidate CI still pending as of this comment. No original private logs committed.Causal follow-up still needs authorized timestamped MMS packet/association trace and specifically same free BRCB slot plus safe simulator state changes, no ownership takeover/PurgeBuf/controls. A ~20s decoder receive gap is a useful hypothesis discriminator, not evidence that a timer, GI, or server caused the recurrence.
masarray commentedon Oct 11, 2026
P10.9B delivery: PR #528 now MERGED via guarded FF on staging at
6bc21ff4787ad10a53a70ec33fe26268620c100d(checkpointcheckpoint/p10-9b-brcb-receive-gap-6bc21ff4). Candidate 8/8 CI SUCCESS including Windows canonical build and 25 deterministic comparator tests; portable artifact. New staging post-FF CI started automatically. This is observational instrumentation only: it distinguishes complete recorded decoder receive gap from missing chronology and exposes ~19.7s/19.6s non-GI CSWI finding recurrences. No decoder/RCB/GI/MMS/wire fix claimed, private logs not committed, no same-slot reliability/packet-order/lossless-SOE proof, no hardware R10. Updated canonical handoff #525; causal trace/blocker remains open.masarray commentedon Oct 11, 2026
Fresh operator same-slot observational evidence (2026-10-11 18:49 / 18:53 WIB)
New private Open SCL/Discovery logs come from app merge-test
405d0d17bec1f07f288374bdd3897a5469b91426(P10.9A + P10.9B parents), pinned engine00ad2819b99ffe6b3f885e59aa24a6afb2b4d8e1, identical static fingerprint439d4dc0507019533b154ed68f7f4007f39f6be92b5cd3f413ff3b84f619727e, BCUGE 192.16.1.33:102.Unlike prior mismatched GW/SOGI tests, BOTH now use identical live BRCB GW slots
BCUGEF650/LLN0.BR.BRB_CSWI_GW010101andBCUGEF650/LLN0.BR.BRB_EVE_GW01. Open SCL 56 frames, 555 process updates, 18 findings, 16 discontinuities, BufOvfl=2; Discovery 60 frames, 563 updates, 20 findings, 18 discontinuities, BufOvfl=2. CSWI frames 43 vs45 (BufOvfl=1 each), EVE frames 5 vs7 (BufOvfl=1 each), EVE has two later clean received frames in each. Both 67/67 visible / 6/6 routed / zero cyclic MMS polling.Do not extrapolate fully timed receive-gap sequences for CSWI here: chronology is bounded,
omittedMiddle=3Open andomittedMiddle=5Discovery, so P10.9B completeness gate correctly rejects full receive-order inferences. Same slot+DataSet identity permits strict observational comparison, not a proof of causality, TCP packet order, SOE losslessness or physical R10. BRCB investigative issue remains OPEN, no decoder/protocol changes. Separate P10.9C GUI UX PR #529 was merged at staging83e3ac4d...(12/12 candidate CI green) to remember the last manually confirmed IP/port without touching reporting. No raw private diagnostics committed.masarray commentedon Oct 11, 2026
P10.9D–E distinction after source audit, 2026-10-11: upstream ARIEC #163 eliminates an independently proven ARIEC simulator report-per-Task.Run send-order race via single FIFO per association, but that simulator sends BufOvfl=false, unlike BCUGE external logs with BufOvfl=true. ARIEC core #164 now quarantines explicitly mismatched RptID/full DatSet payloads before value projection; no evidence the observed BCUGE warnings had that contradiction. Both engine CI green, source guarded. The optional ARSAS engine pin #530 is blocked by historical field qualification (consumer CI red; no merge), safe baseline unchanged; integration issue #531.
This does not close BCUGE continuity #520: last same-slot Open SCL and IP Discovery sessions each show 19 SqNum discontinuities, 2 BufOvfl, 67/67 displayed, 6/6 static RCB routed, zero process polling. Repeating unchanged text diagnostics does not demonstrate cause. Future acceptance requires permissioned timestamped MMS wire/association trace or a separately deterministic simulator reproduction, not speculative decoder reset/suppression.
masarray commentedon Oct 11, 2026
P10.9F source integration completed without claiming external BCUGE cure. ARSAS staging now
e62b42bfbc7d1a9db0ec1ae55bb46789f5fec347(15/15 exact-candidate workflows SUCCESS), engine exact SHAfa93c9fdc7cd98fd3624227ee21c3eefc68bcac7, PR #530 merged, portable EXE. It safely quarantines explicit mismatched full DataSet/RptID before SCADA value projection. ARIEC simulator-only FIFO send-order fix is upstream (not compiled into ARSAS). No proof that the GE/BCUGE 19 SqNum discontinuities or 2 BufOvfl are fixed; #520 stays open pending independent wire-level causality. No duplicate BCUGE text diagnostics requested.masarray commentedon Oct 11, 2026
P10.9G same-device external context (12 Oct 05:23 WIB): Discovery session version
1.6.40+76c1f534..., enginefa93c9fd..., 80 frames, 603 process updates, 67/67 display, 6/6 static RCB routed, zero cyclic polling. CSWI GW 53 frames with 16 SqNum discontinuities/BufOvfl=1 and EVE GW 15 frames with 5 discontinuities/BufOvfl=1, in first ~0.3 seconds; 4 URCB had zero continuity findings. Both buffered streams later receive 4 clean reports. Decoded chronology is NOT wire packet order.Independent code audit identified a real secondary ARIEC InformationReport subscription bug: bounded capacity default 32 previously used
DropOldestsilently. Engine PR #165 now faults only a slow subscriber under overflow rather than silently dropping; its canonical FIFO is unchanged. ARSAS integration PR #533 stage exact80d1a894..., full candidate 14/14 green, portable EXE artifact. ARSAS actual static reporting drains the separate canonical FIFO, not this subscriber; so BCUGE SqNum/BufOvfl anomaly is NOT claimed fixed, and issue remains open pending real causal wire/server evidence. Do not ask for another identical pair of text reports merely to validate this secondary-subscriber fix.masarray commentedon Oct 12, 2026
2026-10-12 07:27 WIB BCUGE Discovery IP P10.9G operator diagnostic (engine exact d700b0df): static reporting 67/67 displayed, 6/6 exact static RCB routed, 80 decoded InformationReports, 603 process updates, zero cyclic polling, OptFlds 80/80. 27 SqNum discontinuities (CSWI GW 21 among 55 frames; EVE GW 6 among 17), two BufOvfl, four URCBs with 0 findings. Do not treat as certified SOE loss. Critical falsifier of earlier startup-only theory: CSWI last anomaly at 2026-10-12T00:26:53.544Z, ~48.574s after its RCB start-return at
00:26:04.969Zand ~48 seconds after initial burst, SqNum 4→1, GIreason=NO. 1 of 21 CSWI discontinuities and 2 of 6 EVE discontinuities have GI reason. Thus GI correlation alone cannot explain remaining 24 of 27 discontinuities. All actual Tcp/wire packet order and source origin remain unverified.Separate source-visible network-diagnostic defect:
192.16.1.33is assigned on local KM_Test adapter (Windows same-host simulator); 5 IPv4 alias addresses match but they are one NIC, not 5 competing adapters. ARSAS draft PR #534 under CI corrects NIC identity classification and adds one bounded IEC context interpretation line per anomalous BRCB. This PR does not claim to repair the source's SqNum or BufOvfl, leaves report continuity warnings untouched and does not modify GI/RCB or MMS pipeline. Source-specific causal resolution still needs independent server/wire evidence; please don't request identical diagnostic reruns merely for context-classification changes.