Skip to content

P1: enable independent multi-IED FAT connections - #147

Merged
masarray merged 13 commits into
mainfrom
agent/p1-multi-ied-fat-connections
Aug 13, 2026
Merged

P1: enable independent multi-IED FAT connections#147
masarray merged 13 commits into
mainfrom
agent/p1-multi-ied-fat-connections

Conversation

@masarray

Copy link
Copy Markdown
Owner

P1 scope

Enable true independent multi-IED connection/monitoring in the IO FAT workspace while deliberately keeping FAT evidence journaling single-active per IED.

What changes

  • remove the FAT window's global _preparingIed lock; preparation state now belongs to each IoTestIedPlan;
  • add a compact Connect/Prepare/Refresh action for the currently selected IED, while explorer selection stays available during other IED connection workflows;
  • allow IED B to start preparation while IED A is still connecting/monitoring;
  • drive card progress solely from each IED's own IsPreparing state;
  • add BindIed(...) and use target-scoped live binding throughout FAT preparation so one IED cannot clear or rewrite another IED's binding state at await boundaries;
  • allow connection preparation to receive an explicit point scope, so continuation connection can focus on unfinished evidence without mutating another IED's plan;
  • keep IoTestSessionController intentionally single-active and device-filtered so transitions cannot enter the wrong evidence journal.

Safety invariants

  • no process control commands are introduced;
  • each engineering/runtime connection remains per-device;
  • parallelism applies to connection/discovery/report monitoring, not evidence journal ownership;
  • ambiguous signal matching from P0 remains fail-closed;
  • existing continuation evidence protection remains in place.

Regression coverage

Adds IoFatMultiIedConnectionRegressionTests for target-scoped binding isolation, per-IED preparation/action state, source-contract checks for parallel connection UX, and preservation of single-active/device-filtered evidence capture.

Please gate merge on focused IO tests, full ARSAS regression tests, portable publish, and smoke test.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@masarray
masarray merged commit 4519635 into main Aug 13, 2026
3 checks passed
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