Skip to content

[INVALIDATED] fix(discovery): reuse static DataSet workflow after model build - #332

Closed
masarray wants to merge 1 commit into
docs/vendor-neutral-v1.6.38from
fix/unify-discovery-static-dataset
Closed

masarray wants to merge 1 commit into
docs/vendor-neutral-v1.6.38from
fix/unify-discovery-static-dataset

Conversation

@masarray

@masarray masarray commented Sep 19, 2026

Copy link
Copy Markdown
Owner

INVALIDATED — DO NOT MERGE

Physical validation on the exact PR head exposed a runtime regression. This proposal is closed and must not be used as a release or merge authority.

Observed on app commit 358136c40671b5aaa5ca3e1ee8cb599217540b04 with engine 648124097621046f5f127ceb1cf853fea54db730:

  • Live Discovery remained slow;
  • only 46/58 static members became runtime points;
  • multiple Boolean process values arrived as BIT STRING and were rejected;
  • only 11 runtime points had actual report evidence despite two RCBs being armed.

The next repair must be based on the exact previously field-proven build/artifact and its source lineage, verified by binary hash and captured physical evidence—not this branch.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 358136c406

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread MainWindow.xaml.cs
Comment on lines 768 to +776
if ((selectDevice || ReferenceEquals(SelectedDevice, device)) && !_signalSelectionWizardOpen)
await OpenSignalSelectionWizardAsync(device, restoredCount);
// Live discovery and Open SCL are only different model-ingestion
// sources. Once the typed IED model exists, both must enter the same
// operator decision: exact DataSet Signals in deterministic static
// report-only mode, or the broader manual Signal Catalog in Hybrid
// mode. Opening the manual wizard directly here silently skipped the
// Static DataSet authority and left newly discovered IEDs on mixed
// static/dynamic reporting plus MMS polling fallback.
await OpenIedWorkspaceActionsAsync(device);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Serialize the post-discovery chooser

When two per-device discoveries are already running concurrently, the first completion enters this modal chooser without setting _signalSelectionWizardOpen; the second completion can therefore pass the same guard inside the first dialog's nested dispatcher loop and open another ShowDialog. This stacks the second IED's chooser over the first and changes SelectedDevice behind it, whereas the previous signal-selection path set the global guard before showing its window. Track the actions chooser with the same single-workflow guard, and cover concurrent discovery completions in a UI interaction regression test.

AGENTS.md reference: AGENTS.md:L180-L180

Useful? React with 👍 / 👎.

@masarray masarray changed the title fix(discovery): reuse static DataSet workflow after model build [INVALIDATED] fix(discovery): reuse static DataSet workflow after model build Sep 19, 2026
@masarray masarray closed this Sep 19, 2026
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