Current status (2026-09-24): post-release SCL semantic work, not a blocker for the already-published v1.6.40. The maintainer accepted Smart Discovery physically before publishing v1.6.40, app 1b26dc1235b3bac0300bf84c1b5e8fc590934bc5, pinned engine 648124097621046f5f127ceb1cf853fea54db730. Installed field evidence is merged. Original body below records the historical P0.7/experimental candidate, not the current published release gate.
Addressed: tracked production Smart Discovery build route (#347), export-only known-object compatibility patch (#345), and recorded stable-release acceptance (#371). Remaining: prove broader generated/reopened SCL semantic correctness and exact live type-evidence gate (#374), preserving 58/58 report-backed, zero cyclic polling and no Save-SCL disruption. Do not merge previously rejected engine candidates to resolve this issue.
Scope
Finish generated/reloaded SCL semantic parity with the actual IED model and the trusted interoperability reference SCL without changing the accepted P0.7 acquisition/runtime baseline.
Locked consumer baseline:
- ARSAS accepted head:
0d0b9204d6637e3d62e2eee94000386ae43cd0e9
- P0.7 lock/source-clean branch head:
6d6c5f6f022b66d93141ace361ed88d4a47ecbb9
- physical engine baseline:
648124097621046f5f127ceb1cf853fea54db730
- machine-readable authority:
evidence/p0.7-release-candidate-lock.json
- human-readable authority:
docs/P0-7_RELEASE_CANDIDATE_LOCK.md
Non-regression acceptance
Every SCL/engine semantic candidate must preserve:
- Static DataSet live rows: 58 / 58
- Analog: 22 / 22
- Digital: 36 / 36
- report-backed rows: 58
- actual InformationReport traffic
- cyclic MMS process polling: 0
- all 12 structured Analog phase/subphase rows
- Discovery/Open-SCL metadata badge and state-presentation parity
- Save SCL while monitoring without monitor stop/reconnect/re-arm
- reopened saved SCL returns to the same 58-row report-backed workflow
- FAT Preview/PDF semantic display while persisted raw evidence remains unchanged
The Smart Discovery request shape, configured Static RCB authority, dynamic-DataSet quarantine and report-only runtime path are frozen unless new physical evidence explicitly supersedes this authority.
Known semantic example
CBClsCounter is the concrete release blocker observed on the relay. The physical P0.7 baseline can export/reload it as SPS/Boolean even though exact live TypeSpecification evidence identifies integer stVal.
Target:
- CDC:
INS
- type family: integer
- generated SCL:
DOType cdc="INS"
stVal bType="INT32"
- reopened model:
INS / INT32
- operator badge after reload:
[I], not Boolean [B]
Isolated engine candidate:
Current integration candidate
The legacy R7/convergence gates intentionally remain fail-closed to the old physically proven engine pin. They must not be weakened merely to make the semantic stacked PR green. The dedicated semantic workflow is the CI authority for this isolated candidate until physical retest.
Physical acceptance for this candidate
- Discovery still produces exactly 58 / 58 live rows.
- Analog remains 22 / 22 and Digital remains 36 / 36.
- All 58 remain report-backed with actual InformationReport traffic.
- Cyclic MMS process polling remains 0.
- Save SCL while live remains non-disruptive.
- Generated SCL reopens into the same 58-row report-backed workflow.
- Discovery/Open-SCL DP/B presentation parity remains unchanged.
CBClsCounter in newly generated SCL and reopened model is INS/INT32/[I], not SPS/Boolean/[B].
- Any other exact live status TypeSpecification must preserve its proven semantic family through export/reopen; no name/value guessing is permitted.
Release condition
Do not declare the application release-ready until the SCL semantic integration candidate passes physical relay retest. Any candidate that corrects SCL metadata but regresses reporting, polling, 58-row coverage, Save-SCL behavior, SCL reuse, or operator presentation is rejected.
Scope
Finish generated/reloaded SCL semantic parity with the actual IED model and the trusted interoperability reference SCL without changing the accepted P0.7 acquisition/runtime baseline.
Locked consumer baseline:
0d0b9204d6637e3d62e2eee94000386ae43cd0e96d6c5f6f022b66d93141ace361ed88d4a47ecbb9648124097621046f5f127ceb1cf853fea54db730evidence/p0.7-release-candidate-lock.jsondocs/P0-7_RELEASE_CANDIDATE_LOCK.mdNon-regression acceptance
Every SCL/engine semantic candidate must preserve:
The Smart Discovery request shape, configured Static RCB authority, dynamic-DataSet quarantine and report-only runtime path are frozen unless new physical evidence explicitly supersedes this authority.
Known semantic example
CBClsCounteris the concrete release blocker observed on the relay. The physical P0.7 baseline can export/reload it as SPS/Boolean even though exact live TypeSpecification evidence identifies integerstVal.Target:
INSDOType cdc="INS"stVal bType="INT32"INS / INT32[I], not Boolean[B]Isolated engine candidate:
090d81944791be5b690d24342f9262495eda1a09Current integration candidate
feature/scl-semantic-parity-p032dc8542914d069e8fa49fe6ea6574fdaf950564090d81944791be5b690d24342f9262495eda1a091059954285747a99a3b9ed8f5e5e6befc1ac8844babbb7e1190f9fb8fdaa369c4870e757a7303c724c02176fec8707d269b466e281d8be5e0673e6e4b91745566616d4738e8The legacy R7/convergence gates intentionally remain fail-closed to the old physically proven engine pin. They must not be weakened merely to make the semantic stacked PR green. The dedicated semantic workflow is the CI authority for this isolated candidate until physical retest.
Physical acceptance for this candidate
CBClsCounterin newly generated SCL and reopened model is INS/INT32/[I], not SPS/Boolean/[B].Release condition
Do not declare the application release-ready until the SCL semantic integration candidate passes physical relay retest. Any candidate that corrects SCL metadata but regresses reporting, polling, 58-row coverage, Save-SCL behavior, SCL reuse, or operator presentation is rejected.