Skip to content

P10.9A: safe independent BRCB triage for cross-slot operator diagnostics - #527

Merged
masarray merged 1 commit into
fix/512-goose-event-header-alignmentfrom
feat/p10-9a-independent-brcb-evidence-triage
Oct 11, 2026
Merged

masarray merged 1 commit into
fix/512-goose-event-header-alignmentfrom
feat/p10-9a-independent-brcb-evidence-triage

Conversation

@masarray

Copy link
Copy Markdown
Owner

Evidence from 2026-10-11 BCUGE same-PC GE simulator (operator supplied, not committed)

Open SCL and IP Discovery reports were captured from the P10.8E PR merge-test executable f4b07d454215f14dc659e2e9e57e3cfea62b4e98 (parents P10.8D and P10.8E); locked ARIEC 00ad2819b99ffe6b3f885e59aa24a6afb2b4d8e1. Identical static semantic fingerprint 439d4dc0507019533b154ed68f7f4007f39f6be92b5cd3f413ff3b84f619727e; 8 DataSets / 124 exact members / 67/67 displayed points / 6/6 routed RCBs / zero cyclic MMS process polling in both runs. Open SCL: 49 reports, 13 findings / 10 SqNum discontinuities / 3 BufOvfl. Discovery: 55 reports, 7 findings / 4 discontinuities / 3 BufOvfl. RCB slots DIFFER: Open SCL CSWI/EVE GW, Discovery CSWI/EVE SOGI. These cannot be paired as reliability A/B. EVEGGIO has only two GI+overflow frames and 0 post-anomaly follow-up in both sessions.

Change (isolated offline-only milestone)

Preserves the original strict default P10.8E comparator, including rejection of different BRCB slots or DataSets. Adds opt-in --independent-triage using the same existing parser, with separate per-session BRCB records for frames/BufOvfl/findings/SqNum discontinuities/GI-context, later actual reports, bounded retained chronology, and last-anomaly delay from the recorded RCB start-return (receive-time observation only). Marks same_slot_dataset_scope=false and paired_comparison_blocked_reason for cross-slot captures. Null remains unknown if evidence missing. Rejects impossible GI/anomalous-frame counts. All outputs remain NOT_PAIRED_RELIABILITY_COMPARISON; NOT_WIRE_ORDER_PROOF; NOT_SOE_LOSSLESS; NOT_R10_PHYSICAL_ACCEPTANCE.

Usage (Windows, two operator diagnostic files kept private)

python .\scripts\compare-p10-brcb-sessions.py .\OpenSCL-Diagnostic.txt .\Discovery-Diagnostic.txt --independent-triage --output .\P10-BRCB-IndependentTriage.json

Omit --independent-triage for the original strict same-slot comparator (different slots continue to hard fail).

Only 2 existing offline Python scripts changed; original 13 fixtures + 6 new regression fixtures = 19; canonical Windows build already runs them. No new workflow, no engine, runtime/decoder/RCB/MMS/GI/control/GOOSE/polling changes. Baseline P10.8E staging b129e7da32d804effff195497359f5ff0eb56a07, checkpoint unchanged until exact SHA CI passes.

Field causal limitation: no authorized timestamped MMS wire capture supplied; this milestone prepares usable observational evidence, not a fix for the observed historical BRCB overflow or a determination of client/server cause. Follow-up under #520 requires genuinely free identical slots, simulator-only safe non-control changes and permitted packet trace. Preserve P10.6 #518, keep #512 draft, no main/public release.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant