Skip to content

P10.9B: qualify full BRCB receive chronology and non-GI post-idle recurrence - #528

Merged
masarray merged 2 commits into
fix/512-goose-event-header-alignmentfrom
feat/p10-9b-brcb-receive-gap-evidence
Oct 11, 2026
Merged

masarray merged 2 commits into
fix/512-goose-event-header-alignmentfrom
feat/p10-9b-brcb-receive-gap-evidence

Conversation

@masarray

Copy link
Copy Markdown
Owner

Evidence: operator BCUGE 2026-10-11 18:22 / 18:24 WIB

Two private full ARSAS Diagnostic Reports from merge-test executable 1.6.40+7bc0241f6361474a4e63f748be18097f52b84a2b (GitHub-verified merge SHA with parent P10.9A a27d108b...). Locked engine 00ad2819b99ffe6b3f885e59aa24a6afb2b4d8e1. Open SCL/Discovery have matching static semantic fingerprint 439d4dc0507019533b154ed68f7f4007f39f6be92b5cd3f413ff3b84f619727e, 8 DataSets / 124 members, 67/67 visible points, 6/6 static RCBs actually routed, 0 cyclic MMS polling. Different BRCB slots remain: Open SCL CSWI/EVE GW vs Discovery CSWI/EVE SOGI; no valid paired reliability A/B.

Open SCL: 49 frames / 16 findings / 13 SqNum discontinuities / 3 BufOvfl; CSWI 39/39 bounded chronological receive frames with SqNum 12→1, GIreason=NO at 11:22:13.8183266Z, ~20.042s after activation return and 19.734s after preceding observed frame; only one later clean report. Discovery: 50 frames / 14 findings / 11 discontinuities / 3 BufOvfl; CSWI 40/40 bounded chronology with SqNum 8→1, GIreason=NO at 11:24:01.3554255Z, ~19.905s after activation return and 19.615s after preceding frame; only one later clean report. EVEGGIO only two initial GI+BufOvfl frames and no follow-up in both sessions. This is stronger evidence against a startup-only observational pattern, NOT proof of packet ordering, server/client cause, event loss or physical R10. Raw private diagnostics were not uploaded to repository.

P10.9B isolated offline enhancement

Extends existing P10.9A opt-in --independent-triage mode only, with BRCB bounded decoder receive-order completeness gate:

  • Only when declared first+recent chronology covers 1..N frames without omitted middle, and every decoder timestamp is valid/monotonic, calculate maximum observed receive gap.
  • Surface max gap preceding a non-GI, non-BufOvfl, backward/repeat SqNum frame with an actual diagnostic finding, including adjacent frame IDs, SqNum values, timestamps, from-RCB-start timing. Described as received-frame observation, never a proven reset/replay or SOE loss.
  • Missing, truncated, duplicate/misordered, inconsistent, untimed, offset-naive or nonmonotonic history → UNVERIFIABLE with explicit reason and null gap/event; never substitute zero or extrapolate wire order.
  • Default P10.8E strict same-slot compare() contract unchanged; earlier P10.9A independent per-session records maintained. No new CI workflow, no device interaction, no engine/runtime/RCB write/decoder/GI/control/polling changes.
  • Original 19 Python tests plus 6 new deterministic positive/negative tests = 25 tests, canonical Windows workflow runs them. No raw operator logs committed.

Run python scripts/compare-p10-brcb-sessions.py OpenSCL-Diagnostic.txt Discovery-Diagnostic.txt --independent-triage --output ReceiveEvidence.json.

Preserve immutable P10.6, P10.8E, P10.9A checkpoints. Branch based exactly on a27d108b765cb725f042c85b584b254969a56519, engine lock 00ad2819... unchanged; #512 stays draft, no main merge or public release. Promote only after all exact head CI succeeds. #520 remains open for real wire capture and same-slot field validation.

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