Skip to content

M2.17-K: decode typed ST enum status DataObject reports (C264 Mod / PhyHealth) - #173

Closed
masarray wants to merge 4 commits into
fix/p10-9l-readonly-ctlmodel-probefrom
fix/m217k-typed-st-status-report-projector-20261017
Closed

masarray wants to merge 4 commits into
fix/p10-9l-readonly-ctlmodel-probefrom
fix/m217k-typed-st-status-report-projector-20261017

Conversation

@masarray

Copy link
Copy Markdown
Owner

Root cause (physical C264)

The ARSAS 1.6.40 diagnostic captured REPORT_VALUE_REJECTED for C264CONTROL/CILO1.Mod.stVal with an MMS Structure(4) {[0]=1, [1]=quality BIT STRING, [2]=UTC t, [3]=false}, plus REPORT_RAW_STRUCT for C264SYSTEM/LPHD1.PhyHealth. The pinned engine generic report projector supports Boolean ST status tuples and DPC Pos, but not the standard integer enumerated ST status tuple. The supplied C264 IID declares Mod with ordered stVal (Enum), q, t, stSeld (Boolean) and PhyHealth with stVal (Enum), q, t.

Small typed-only fix

  • ARIEC engine-only, no ARSAS second decoder. Recognize exact FC=ST, status FCD name Mod, Beh, Health, PhyHealth, MMS typed Structure with 3 or 4 entries in verified IEC status order: integer stVal; successfully decoded quality BIT STRING; successfully decoded UTC timestamp; optional Boolean fourth.
  • Publish only the authentic .stVal scalar plus decoded q/t provenance. No string parsing, no inferred fourth field, no conversion of DPC 00 into open/close, no unrelated MX data guessing.
  • Any wrong FC, name, member child count, quality/time type or extra-field type fails closed into the previous raw projection.
  • Engine regression tests cover both C264 Mod and PhyHealth and negative cases.

Baseline

Stacked on PR #169 exact pinned engine commit 036e2c00d83a0815b6160147b14ea05975057965; NO consumer pin changed. PR intentionally stays draft until engine CI and emulator acceptance, then explicit controlled pin-update authorization and Windows package verification. 29 RCB routed traffic, 77 pending, and Setting Groups are independent acceptance checks—not claimed repaired here.

Copy link
Copy Markdown
Owner Author

Consolidation cleanup (2026-10-22): this immutable source HEAD 51c2eefd61d6bcbe1116fda6b781b74bb9cf06da is already a verified ancestor of DRAFT #190 candidate 14b19d30466fd296ad1e6d0bddcdd574992bc464 (0 missing commits), whose Windows merged-tree CI run https://github.com/masarray/ARIEC61850/actions/runs/39778971482 passed 1,262/1,262 tests. Closing this redundant stacked PR without merging it independently. Its branch and all commits remain recoverable, including the ARSAS pinned historical engine source when relevant. #190 has NOT been promoted to main, physical FAT acceptance is NOT claimed, and no consumer engine lock is changed. Reopen if this consolidation is withdrawn.

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