Repository navigation
fix(soe): suppress Boolean display-only false process transitions - #372
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 404822ab7b
ℹ️ 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".
| normalizedDataType.Equals("SPS", StringComparison.OrdinalIgnoreCase) || | ||
| normalizedDataType.Equals("SPC", StringComparison.OrdinalIgnoreCase) || | ||
| normalizedDataType.Equals("SINGLEPOINTSTATUS", StringComparison.OrdinalIgnoreCase); | ||
| if (isBooleanPoint) |
There was a problem hiding this comment.
Handle formatter Boolean tokens for generic status metadata
When a Boolean .stVal is discovered without exact schema typing, NativeMmsDiscoveryMapper.InferDataType classifies the common ST fallback as Enum; an MMS Boolean poll is then displayed as True, while FormatReportProcessValue formats the same report string as True [1] regardless of the declared type. Because this block only recognizes Boolean-family metadata, the comparator still produces bool:1 versus state:1 and emits a false SOE transition. Normalize these exact formatter-generated Boolean tokens independently of the fallback metadata, or otherwise preserve the raw-value semantic type, while retaining the DPC-specific handling.
AGENTS.md reference: AGENTS.md:L153-L153
Useful? React with 👍 / 👎.
Root cause
Operator report formatting emits
True [1]/False [0], but the runtime semantic-edge comparator previously normalized raw Boolean strings asbool:1/bool:0and the formatted strings asstate:1/state:0. A presentation-only change could be interpreted as a real process transition.Targeted correction
[01]/[10]or other numeric states.Stable release boundary
808acd38c2a89aebc0b302d6b0218e921cabc6b2with unchanged engine pin648124097621046f5f127ceb1cf853fea54db730.Acceptance
CI must pass. A process edge must continue to use actual report values/reasons; display normalization must not rewrite raw evidence.