Skip to content

P3-H P1.3: fail-closed SCL nofASDU provenance - #148

Merged
masarray merged 1 commit into
mainfrom
hardening/smv-p1-3-nofasdu-provenance
Oct 7, 2026
Merged

masarray merged 1 commit into
mainfrom
hardening/smv-p1-3-nofasdu-provenance

Conversation

@masarray

@masarray masarray commented Oct 7, 2026

Copy link
Copy Markdown
Owner

Closes #147 after exact-head CI acceptance. Continues #139.

Base main@0a08767df0352b0311fdcf5d31a9782ccba1a13b (merged P1.2 #145).
Exact head 76749d5718affb738a45cd6845c120ce9363da0f.

Problem

Previously max(1, ushort_attribute(nofASDU)) silently turned explicit zero, malformed or overflow SCL into valid one-ASDU engineering intent.

Change

  • Omission alone retains compatibility default one ASDU.
  • Explicit invalid values (0, lexical garbage, overflow, empty) retain no_asdu_valid=false and generate diagnostics.
  • Profile compiler rejects malformed explicit packetization.
  • Canonical exporter rejects laundering invalid input into valid SCL.
  • Workspace semantic equivalence includes validity provenance.
  • Regression fixtures cover omission, valid 1/2 and four invalid cases; negative export/compile checks.

No changes to hardware realtime path, packet encoder, IEC 61869-9 scaling/variant authority, or existing valid streams. Review and exact-head CI required before merge.

Default to one ASDU only when absent; retain invalid explicit XML provenance and reject it in compilation, canonical export, and workspace semantic equivalence. Cover omitted, valid, zero, malformed, overflow and empty cases. Tracks #147 and #139.
@masarray
masarray marked this pull request as ready for review October 7, 2026 00:53
@masarray
masarray merged commit bdd895a into main Oct 7, 2026
44 checks passed
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-07T00:54:10.702312Z 76749d5 Draft marked ready
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

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.

P3-H P1.3: fail-closed SCL nofASDU provenance and round-trip

1 participant