Skip to content

M2.14 GUI: one IEC DO hierarchy with compact engineering values - #577

Draft
masarray wants to merge 1 commit into
ui/material-icons-consistency-20261015from
feat/m214-browser-engineering-hierarchy-20261015
Draft

masarray wants to merge 1 commit into
ui/material-icons-consistency-20261015from
feat/m214-browser-engineering-hierarchy-20261015

Conversation

@masarray

Copy link
Copy Markdown
Owner

M2.14 Engineering Browser — real object hierarchy, not raw FC dumps

Base: latest complete UI/Icon PR #575 head 7a761feecbda (includes Thread A #573, A/B semantic reconciliation #572, scalar-angle #570, SG live binding #569, and UI #571/#574). PR #576 remains a sibling UI branch; no direct writes to its files.

Field complaint reproduced from MMXU1 / DataSets screenshots

  • IEC A and PhV root rows dump huge concatenated phsA,phsB,phsC,neut,net,res previews, with verbose repeated provenance in the value column; the operator needs compact DO values plus expandable phase/FC detail.
  • The same structured phase appears as separate phsA [MX], phsA [CF], phsA [DC] peers. This is a schema projection failure: Functional Constraints are independent within a named engineering object, not separate top-level physical phases.
  • Discovery/SCL may split a single exact DO reference across FCs. The virtual tree and LN detail pane must agree on one DO identity; do not coalesce different exact reference/name.

Implemented

  • Schema-only IedBrowserEngineeringObjects.GroupExact groups duplicate DO declarations only by exact reference + name and retains each FC-qualified attribute, without mutating the engine canonical model, acquiring MMS or choosing arbitrary conflicting CDC.
  • One phsA / phsB / phsC structured row for cross-FC descendants; lazy expansion exposes independent cVal [MX], units [CF], d [DC]. No second grid or WPF tree, preserves existing ListView virtualization.
  • Full IEC three-phase DO row preview remains bounded to 3 declared principal phases when neutral/net/res branches exist; extra leaf evidence is still visible on expansion and through independent detail path, with pairing/timestamp/association checks untouched. Missing angle never becomes 0°.
  • Four focused tests for LN/tree agreement, DO identity/CDC conflicts, bounded root preview versus expanded neutral, and scalar MV no-angle regression. Existing cross-thread M2.14 regression updated for the intended concise DO preview.

Hard boundaries

No new polling, subscription, control action, reporting/GI, guessed units, RCB writes, model file changes, engine pin changes or public release. Preserve Thread A canonical SSOT and #575 UI icon work. Require exact SHA Windows CI and BCUGE/ZIV actual acceptance.

Copy link
Copy Markdown
Owner Author

Unified checkpoint — Material MainWindow and Browser M2.14 (handoff)

Copy link
Copy Markdown
Owner Author

Thread A continuation ownership / M2.14 integration checkpoint. Original Thread A chat reached its limit; continuation now uses verified latest PR #577 4be7b51b9040 (10/10 green; includes consolidated M2.13K stress, CF/phasor A+B, scalar no-angle, SG and Material icons). New draft PR #579 at 07b7b1820aebce84c63cf0f0f2d66cbd8cadc798 targets a measured live shortfall: exact ATCC1.TapChg [ST] DataSet parent stayed Not read despite observed valWTr=3 and posVal=3. Only projection-layer, model-proven ST field summaries added; no change to canonical SSOT, runtime Report ingest, read plans, pin or stable. Five focused tests; Windows CI currently running.

Conflict guard: #576 (sibling icon unification branch) diverged from #575; avoid assuming it is an ancestor of #577 or blindly cherry-picking icon modifications. Reconcile only proven missing UI behavior by comparison, keeping #577 as immutable base and #579 as descendant. No merge to main until Windows CI + physical BCUGE/ZIV acceptance. Remaining field issues: CF/unit evidence and GUI parity; avoid fake scalar angles or invented observations.

Copy link
Copy Markdown
Owner Author

M2.14 DataSet multi-leaf exact-SHA CI checkpoint PASS. Draft PR #579, head 07b7b1820aebce84c63cf0f0f2d66cbd8cadc798 (direct child of #577 green baseline), now has 10/10 workflows successful and Build ARSAS #38693234531 PASS: ARSAS 1,993/1,993, pinned ARIEC 19/19, native CTest 9/9, packaged managed 6/6, Windows portable sealed artifact ARSAS-win-x64-portable-single-exe ID 11953840136 matches exact HEAD and is not expired.

Verified code behavior: exact TapChg [ST] FCD with model-proven independently observed valWTr/posVal now shows valWTr: 3; posVal: 3 rather than an unbound Not read; partially observed and stale state are identified, received parent FCD beats a summary, wrong-FC/sibling/FCDA values excluded, association fencing retained. Browser projection only; no SSOT, MMS acquisition, engine pin, reporting or public stable modifications. Physical ZIV AVR field test and wider GUI parity still pending.

Thread A continuity: the original chat reached its length limit. New independent work should anchor on #579 for Browser DataSet evidence, not overwrite #577/#575 or blindly merge the divergent #576 icon sibling.

Copy link
Copy Markdown
Owner Author

BCUGE/ZIV physical GUI feedback — new downstream draft PR #580, head 4be1a51d7d25f92a6403f839fc085982d84101ca stacked on CI-green #579, with Windows CI running.

Root causes addressed in this checkpoint: 8-tab nav clipped due runtime width clamp (not XAML alone); operator's IEC wireless and Live monitor SVGs now referenced from native WPF resources; independent angle/magnitude warning moved out of Value cells to provenance while ∠ stays reserved for actually matched samples; normative IEC 61850-7-3 Vector.ang uses ° for model-proven MX cVal/instCVal fields, never scalar MV; live-discovery SG inventory missing but exact-domain SCL SG/SE metadata can be displayed with SCL-only label, without authorizing speculative MMS reads or treating SE as active SG.

All prior canonical live/Report/RCB/GOOSE logic, engine lock and static reports remain unchanged. Exact-SHA CI and physical BCUGE/ZIV still required before promotion. Owner note: do not independently patch the ancestor icon/nav files; follow #580 after CI unless a branch-wide reconciliation is proven necessary.

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