Skip to content

M2.17-K: isolated ARIEC PR173 typed C264 report integration trial - #618

Draft
masarray wants to merge 26 commits into
fix/m217j-operator-reliability-rcb-control-grid-20261017from
fix/m217k-consumer-typed-st-report-engine-trial-20261017
Draft

masarray wants to merge 26 commits into
fix/m217j-operator-reliability-rcb-control-grid-20261017from
fix/m217k-consumer-typed-st-report-engine-trial-20261017

Conversation

@masarray

@masarray masarray commented Oct 17, 2026 •

Copy link
Copy Markdown
Owner

Source and provenance

Stacked on ARSAS PR #617, whose exact HEAD 527b834127d216780adbad3f9236fbe07a2e94d0 passed 13/13 CI. Explicitly authorized by operator for test-branch repin only. No merge to main, no changes to ArdIrec pin or commands.

  • Previous ARIEC engine SHA: 036e2c00d83a0815b6160147b14ea05975057965, retained in lock metadata as prior exact typed-control baseline.
  • New trial engine SHA: 51c2eefd61d6bcbe1116fda6b781b74bb9cf06da, source ARIEC PR #173.
  • Engine's own Windows .NET CI passed on this exact SHA: workflow run 38997437784.
  • Consumer lock engines/ARIEC61850.lock.json is the only integration authority; Windows build fetches checkout of the exact SHA and checks it via scripts/validate-ariec61850-lock.ps1. Production's main remains unchanged.

Actual user-visible root cause

Physical C264 monitoring demonstrated REPORT_RAW_STRUCT and REPORT_VALUE_REJECTED for enumerated IEC ST Mod and PhyHealth structured FCD status tuples, where the pinned engine understood Boolean status structures but did not project typed enumerated status stVal. Engine PR #173 uses native typed MMS structure shape, strict ST FC, exact standard DO names, decoded quality/UTC, and optional Boolean stSeld. No string parsing or fabricated values.

Integration regression (actual linked engine)

  • Engine MmsReportValueProjector.Project invoked with typed C264 Mod, Beh, PhyHealth structures. Confirms .stVal scalar value, q and t evidence, and REPORT_RAW_STRUCT absence.
  • Consumer ReportProcessValueSafety preserves enum scalar and rejects raw Structure(4).
  • One IedBrowserLiveValues association-scoped ledger receives only correct ref/FC; stale association cannot resurrect data.
  • Wrong FC and wrong DO name produce no invented stVal.
  • Lock/test verifies exact approved engine SHA, previous pin, no premature physical-promotion flag.

Gate and remaining work

Latest-HEAD ARSAS Windows CI must pass, and portable test executable must package new engine SHA. Simulator C264 must physically demonstrate improved 130/207 and especially Mod.stVal and PhyHealth.stVal, without corrupting q/t, command authority or RCB state. Actual route count (previously 3/29) and 77 pending are not automatically fixed by enum projection. Do not merge until acceptance. No blind Operate.

CI completion and Windows test packages

  • Final trial HEAD: a9f87825713bdc7a16864c1fc21368bd46a5de94, draft/unmerged; exact engine pin 51c2eefd61d6bcbe1116fda6b781b74bb9cf06da (ARIEC Release ARSAS 1.6.29 #173).
  • 15/15 current-HEAD GitHub Actions workflows passed, including canonical SCL regression, ARIEC engine tests, ARSAS application tests, P0 provenance/integrity guards, pinned ArdIrec native bridge, Windows installer creation and installed runtime smoke test.
  • Build ARSAS workflow 39007278976 artifact ARSAS-win-x64-portable-single-exe; archived package-input/test evidence available there.
  • Installer validation workflow 39007279034 artifact ARSAS-1.6.40-win-x64-installer; verified installation/field-runtime smoke test passed.
  • Operator C264 user testing remains required: read-only connect/discover; check same exact CILO1.Mod.stVal, CSWI1.Mod.stVal, LPHD1.PhyHealth.stVal and their q/t, no REPORT_RAW_STRUCT for covered typed tuples; record before/after counts of currently observed 130/207 and 3/29 RCB ingress with exact RCB identities; check report timestamps/validity from wire. The engine fix does not claim to correct all 77 pending or unavailable RCB traffic without physical evidence.
  • Version string remains 1.6.40; use full commit SHA and workflow run to distinguish this test package from the previously installed 1.6.40 baseline. Keep PR draft/unmerged and mainline promotion prohibited until the physical C264 acceptance passes.

GR_X_7SX85 Browser parity follow-up

  • Latest consumer HEAD: aedb9f4a705d649c39d65c8b2c967c37b2201007 (still draft, nonphysical trial); engine immutable pin still 51c2eefd61d6bcbe1116fda6b781b74bb9cf06da.
  • Operator comparison of GR_X_7SX85 against reference IEC 61850 client identified SGCB status requiring explicit Read, measurement DataSet missing companion CF SIUnit/multiplier detail, and most Data Model LN objects appearing Not read despite meaningful IEC inspection workflow.
  • Browser now performs one selection-scoped, bounded read per exact current association and SGCB/Logical Node: max 24 as-yet-unobserved model-verified FC targets, 15-second linked cancellation, same existing isolated read-only association when monitoring, model/association fences, no polling, automatic Read All, controller writes or fabricated values. SGCB NumOfSG/ActSG/LActTm are prioritized ahead of large SG data directories. SCL-only models cannot initiate automatic reads. Manual Read LN/DO and Read All stay available.
  • DataSet measurement member detail additionally exposes only exact model-declared units.SIUnit and units.multiplier under IEC FC=CF for the selected MX reference. Missing values remain unobserved until exact FC evidence arrives; no default/guessed multiplier and no cross-FC process mirroring.
  • Added integration fixture coverage for exact CF companion identity/isolation and targeted Read source contract. 15/15 GitHub Actions passed at this HEAD, including application and pinned-engine tests, ArdIrec and Windows installer silent install/field smoke tests.
  • Build workflow 39020380534: artifact ARSAS-win-x64-portable-single-exe. Installer workflow 39020380525: artifact ARSAS-1.6.40-win-x64-installer. Version string unchanged; use exact HEAD SHA to distinguish from previous 1.6.40 artifacts.
  • Still needs physical acceptance on GR_X_7SX85: verify SGCB NumOfSG/ActSG/LActTm appear after opening without explicit Read, selected Data Model LN has correctly provenance-labelled observed values, and CF SIUnit/multiplier values appear if actually available; check timing/cancel behavior, no duplicate association impact on Report, and no mutation/write. Not all unobserved LN attributes are guaranteed resolved by one 24-target read. Full legacy-GUI parity and all 12 RCB activation are not claimed.

GR_X_7SX85 bounded focused hydration and owning-unit parity (latest)

  • Exact source HEAD: d3a7021376b3c2860922c24f4643135015f78774; engine SHA remains 51c2eefd61d6bcbe1116fda6b781b74bb9cf06da; ArdIrec SHA unchanged; PR remains draft, stacked and nonphysical. 15/15 current-HEAD workflows passed, including actual ARSAS regression, native bridge, portable smoke, silent install and Windows runtime smoke.
  • One exact selected-LN/SGCB/DataSet automatic read is bounded to 24 unobserved live-verified FC attributes and 15s linked cancellation; existing single read transaction, association fences and isolated read-only MMS path used; no global Read All, polling or control writes. Process ST and MX evidence is prioritized before noncritical configuration; SGCB NumOfSG and ActSG prioritized.
  • Selected measurement DataSet may fetch ONLY exact model-verified CF units.SIUnit/units.multiplier companions; child phase and owning IEC DO A.units are supported, but neighboring phase and other LD/LN CF are refused. Rows remain Not read if the actual IED did not supply evidence. No fake unit or multiplier.
  • Regression tests M217LBrowserFocusedHydrationTests and M217GDataSetSclSchemaFallbackTests cover bounded selected-plane read, offline/association invalidation, CF exact identity, and no neighboring-phase contamination. All previous canonical, native and release tests passed.
  • Canonical Windows build run 39028817976, artifact ARSAS-win-x64-portable-single-exe.
  • Installer validation run 39028817991, artifact ARSAS-1.6.40-win-x64-installer (silent install and field smoke pass).
  • Still unqualified physically: operator must repeat selection on actual GR_X_7SX85 and check that read-only SGCB and selected model LN results become populated when IED responds, CF unit/multiplier match physical values and no report coverage/time regression. Unread DO/DA after a bounded attempt remains truthfully Not read/unavailable. No production/mainline promotion before acceptance.

…live discovery before automatic targeted reads

Copy link
Copy Markdown
Owner Author

Progressive M2.17-M continuation in #621: safely reconciled latest #618 HEAD and divergent #620 as merge parents, retained exact engine pin, corrected auto-read admission lifecycle, Data Model DO/DA scoped read, Setting Groups bounded auto hydration and canonical DataSet vs CF unit ownership. Awaiting Windows CI and physical test; #618 should not be overwritten from stale #620 files.

This branch has not been deployed

No deployments
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