Skip to content

P4: attempt dynamic reporting before final polling - #214

Merged
masarray merged 15 commits into
mainfrom
fix/p4-dynamic-attempt-before-polling
Aug 18, 2026
Merged

P4: attempt dynamic reporting before final polling#214
masarray merged 15 commits into
mainfrom
fix/p4-dynamic-attempt-before-polling

Conversation

@masarray

Copy link
Copy Markdown
Owner

P4 — Dynamic attempt required before final polling

Pins ARSAS to ARIEC61850 PR #86 (2a932e183931eb65c775fe01cf8a47bf8a9af458) and consumes the engine's P4 planning/runtime attempt evidence.

Per-point planning evidence

  • projects ARIEC MmsHybridDynamicAttemptEvidenceBuilder output into ARSAS
  • Planned means runtime still owes an actual dynamic activation attempt
  • Skipped carries an explicit fallback reason
  • unmapped/transport/discovery-safe polling paths also carry explicit reasons instead of silent fallback

Static failure -> dynamic recovery

An engine-authoritative static RCB is still preferred first. If its fresh RCB revalidation, capability revalidation, subscription readiness, or actual activation fails, ARSAS immediately re-runs the same authoritative signals with static BRCB/URCB disabled. A capability-qualified dynamic BRCB/URCB is then attempted before polling may become final.

Runtime dynamic attempt / cleanup

Direct dynamic plans and static-recovery dynamic plans call ARIEC StartPersistentReportMonitorWithAttemptEvidenceAsync. ARSAS records whether a real dynamic write/configuration attempt occurred, the structured failure reason, and best-effort cleanup result. Failed mutated attempts therefore do not silently leave temporary DataSet/RCB state behind.

Physical validation telemetry

Validation snapshots now retain:

  • per-point planning attempt evidence
  • dynamic attempted count
  • dynamic failed count
  • explicit dynamic skipped point count
  • per-plan dynamic attempt state/failure reason/fallback reason
  • failed-attempt cleanup attempted/succeeded

MMS reads still provide initial snapshot and verification safety; P4 changes when a point may be classified as the steady-state final polling fallback.

@masarray
masarray marked this pull request as ready for review August 18, 2026 03:11
@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 e25ad5b into main Aug 18, 2026
4 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