Skip to content

Park the StateMachines cause-offering expectation to unblock master's CI - #858

Closed
romanett wants to merge 1 commit into
masterfrom
romanett/gds-registrar-statemachine-fixes-55f5ca
Closed

Park the StateMachines cause-offering expectation to unblock master's CI#858
romanett wants to merge 1 commit into
masterfrom
romanett/gds-registrar-statemachine-fixes-55f5ca

Conversation

@romanett

@romanett romanett commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Proposed changes

The Test Samples job is red on every master build: ClientReceivesItsNotifications(StateMachines) fails because the StateMachines client never sees its Start cause become executable once the machine is Idle. It fails identically on the 2.0.0-preview.4 packages CI uses and on the current GitHub Packages master builds (verified on 2.0.280.50326-preview), so it is not package lag but a defect in how the sample and the stack report Executable for causes - one that deserves its own fix.

Until that fix exists, this PR moves the expectation into the known-issue machinery the suite has for exactly this situation: WorkshopClientSubscriptionTests gets the same s_knownIssues list SampleClientTests already has, the StateMachines entry carries the reason, the test reports as ignored instead of failed, and it fails the moment the defect is fixed so the entry cannot rot. docs/TESTING.md records it.

Extracted from #808 (which needs it for the same reason on the GitHub Packages builds) so master's CI goes green without waiting for the feed switch. The other sample fix riding on #808 - qualifying the hand-built GDS registrar's method BrowseNames with the Part 21 Onboarding namespace for the newer OnboardingClient resolution - cannot come along: the generated Opc.Ua.Onboarding constants it needs do not exist in 2.0.0-preview.4, and at preview.4 the ns=0 contract still holds.

Verified locally at 2.0.0-preview.4: the client project builds clean and the subscription fixture reports 6 passed, 1 ignored (StateMachines, with the recorded reason).

Related Issues

Types of changes

  • Bugfix (non-breaking change which fixes an issue)
  • Enhancement (non-breaking change which adds functionality)
  • Test enhancement (non-breaking change to increase test coverage)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected, requires version increase of Nuget packages)
  • Documentation Update (if none of the other choices apply)

Checklist

  • I have read the CONTRIBUTING doc.
  • I have signed the CLA.
  • I ran tests locally with my changes, all passed.
  • I fixed all failing tests in the CI pipelines.
  • I fixed all introduced issues with CodeQL and LGTM.
  • I have added tests that prove my fix is effective or that my feature works and increased code coverage.
  • I have added necessary documentation (if appropriate).
  • Any dependent changes have been merged and published in downstream modules.

Further comments

The underlying defect - Executable not following the declared causes for the current state on the fluent state-machine surface - still needs a root-cause fix, either in the sample's client-side attribute reading or in the stack's cause reporting. The known-issue entry names it and will demand its own removal when that lands.

🤖 Generated with Claude Code

The StateMachines client never sees its Start cause become executable
once the machine is Idle, which fails ClientReceivesItsNotifications on
every current package set - the 2.0.0-preview.4 packages of CI just as
the current GitHub Packages builds - and keeps the Test Samples job red
on every master build. This is a defect in how the sample and the stack
report Executable for causes, not package lag, so the expectation goes
into the known-issue machinery the suite has for exactly this: reported
as ignored with the reason, and failing the moment it starts passing so
the entry cannot rot. The subscription fixture gets the same
known-issue list SampleClientTests already has.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@romanett romanett closed this Sep 4, 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