Skip to content

scl: preserve exact live CDC/type semantics through export and reopen - #342

Closed
masarray wants to merge 4 commits into
feature/discovery-static-workflow-parity-p0from
feature/scl-semantic-parity-p0
Closed

masarray wants to merge 4 commits into
feature/discovery-static-workflow-parity-p0from
feature/scl-semantic-parity-p0

Conversation

@masarray

@masarray masarray commented Sep 20, 2026 •

Copy link
Copy Markdown
Owner

Goal

Finish the remaining SCL semantic parity work on top of the locked P0.7 physical baseline without changing acquisition/reporting behavior.

Baseline

Base branch: feature/discovery-static-workflow-parity-p0

Accepted physical baseline remains frozen:

  • 58 / 58 Static DataSet live rows
  • Analog 22 / 22
  • Digital 36 / 36
  • 58 report-backed rows
  • actual InformationReport traffic
  • cyclic MMS process polling = 0
  • Save SCL while monitoring remains non-disruptive
  • saved SCL reopens into the same 58-row report-backed workflow
  • Discovery/Open-SCL operator presentation parity remains intact

Semantic integration candidate

ARIEC61850 PR #139 head:
090d81944791be5b690d24342f9262495eda1a09

Engine CI #691 is green.

The engine candidate:

  • uses exact live stVal TypeSpecification as status CDC authority;
  • maps exact integer status to INS rather than conservative SPS;
  • keeps Boolean status as SPS;
  • adds exporter defense-in-depth so stale conservative live CDC cannot overwrite exact live typed evidence during SCL serialization;
  • verifies generated SCL reopens with the same CDC/type semantics.

Concrete regression

CBClsCounter with exact integer stVal must round-trip as:

  • DOType CDC = INS
  • stVal bType = INT32
  • reopened model CDC = INS
  • operator type token = I, not B

Non-regression boundary

No Smart Discovery request-shape change.
No RCB planning/activation change.
No dynamic DataSet mutation.
No cyclic MMS process polling.
No Save-SCL monitor restart.
No reduction of 58-member runtime coverage.

Physical relay acceptance is still required before release.

Candidate CI

Dedicated SCL Semantic Parity Candidate run #3 passed on ARSAS 32dc8542914d069e8fa49fe6ea6574fdaf950564 + ARIEC61850 090d81944791be5b690d24342f9262495eda1a09.

  • frozen P0.7 baseline validation: success
  • engine build + full engine tests: success
  • ARSAS build + full ARSAS regressions: success
  • portable publish + smoke test: success
  • artifact ID: 10599542857
  • archive SHA256: 47a99a3b9ed8f5e5e6befc1ac8844babbb7e1190f9fb8fdaa369c4870e757a73
  • EXE SHA256: 03c724c02176fec8707d269b466e281d8be5e0673e6e4b91745566616d4738e8

The old R7/convergence checks remain intentionally fail-closed to the frozen physical engine baseline and are not relaxed by this PR. Physical relay retest remains the promotion gate.

Copy link
Copy Markdown
Owner Author

Integration note: baseline guards remain intentionally fail-closed

The red R7/convergence checks on this stacked PR are expected and must not be relaxed: those workflows intentionally accept only the physically proven engine baseline 648124097....

Semantic integration is therefore validated by the dedicated SCL Semantic Parity Candidate workflow added on this branch. That workflow independently proves:

  • the P0.7 physical baseline evidence remains frozen at 58/58, 22/22 Analog, 36/36 Digital, 58 report-backed and cyclic polling=0;
  • only the explicitly recorded ARIEC61850 PR Use ARVREL mini vector fascia on reusable IED cards #139 engine revision is compiled;
  • exact live typed status authority exists in discovery and the SCL export boundary;
  • full engine tests and full ARSAS tests pass against the candidate;
  • the resulting portable EXE passes smoke test before artifact upload.

This keeps the known-good physical baseline immutable while allowing a separately attributable semantic SCL physical retest.

Copy link
Copy Markdown
Owner Author

SCL semantic candidate CI complete — physical retest ready

Candidate source:

  • ARSAS: 32dc8542914d069e8fa49fe6ea6574fdaf950564
  • ARIEC61850: 090d81944791be5b690d24342f9262495eda1a09
  • physical engine baseline remains frozen separately at 648124097621046f5f127ceb1cf853fea54db730

Dedicated SCL Semantic Parity Candidate run #3 is success end-to-end:

  • frozen P0.7 acceptance validation: success
  • exact semantic engine checkout: success
  • engine build + full engine tests: success
  • ARSAS build + full ARSAS regression suite: success
  • portable publish: success
  • portable smoke test: success
  • artifact upload: success

Artifact:

  • ID 10599542857
  • archive SHA256 47a99a3b9ed8f5e5e6befc1ac8844babbb7e1190f9fb8fdaa369c4870e757a73
  • portable EXE SHA256 03c724c02176fec8707d269b466e281d8be5e0673e6e4b91745566616d4738e8

Semantic acceptance already locked by automated export/reopen tests:
CBClsCounter exact integer stVal -> generated DOType CDC INS -> stVal bType=INT32 -> reopened SCL remains INS/INT32 -> ARSAS integer type token I.

Physical retest must still prove the existing accepted runtime does not move:
58/58, Analog 22/22, Digital 36/36, report-backed 58, actual InformationReport, cyclic MMS polling 0, non-disruptive Save SCL, reusable 58-row SCL, and unchanged DP/B presentation parity.

The legacy R7/convergence checks remain intentionally red on this stacked semantic PR because they are fail-closed to the old physical engine pin. They were not weakened.

Copy link
Copy Markdown
Owner Author

Physical test rejected this candidate

AA1E1F06R4 physical run showed this candidate regressed the accepted runtime path: discovery was slow, many digital values were rejected as Boolean rows receiving BIT STRING payloads, and report-backed coverage reached only 23 instead of 58.

This PR is superseded by ARSAS #343 + ARIEC61850 #140. The replacement restores live discovery/runtime/reporting to the exact physical engine baseline and moves the semantic correction to the SCL export boundary only.

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