test: synchronize watchdog health and notification cleanup assertions - #212
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Watchdog success tests previously yielded 100,000 times without proving that a probe result had been accepted. Observe public health instead, and join the next probe interval for the notify fixture whose startup already sets ready health. Replace the late-accept cleanup test's 20ms negative window with a deterministic synctest boundary.
The test-hardening inventory now separates policy completion from bounded native transport/event observations. Twenty focused race repetitions passed in 2.607s. The uncached full race command passed with the runner and children restricted to one logical CPU and GOMAXPROCS=1: 176.962s overall, manager 61.583s, journal 49.665s. Vet, Windows/Linux staticcheck and complete diff/privacy/link review passed. Existing timeout and native observation bounds are unchanged.
Exact source
7396beefb88b4400ff10842bdc86f5cfd433cb38passed CI 34772550381. The constrained LTSC matrix passed 105 SYSTEM and 101 headless standard-user cases three times each, without skips, in 53.871s/47.315s. Both runners used one logical CPU, GOMAXPROCS=1 and -test.parallel=1; native binaries were non-race builds. Source/module/four-binary hashes, retained results and complete process/profile/linger cleanup were verified.The user event-log fixtures required temporary Application-only read/write access to both subscribe and publish their probe events. The exact original channel access policy and original account group membership were restored. Two earlier incomplete attempts are retained separately: default headless subscription was denied; temporary reader membership allowed subscription but not event publication. No skipped case was accepted as qualification.
Fault injection confirms that omitted accept joining fails deterministically; suppressed accepted health passes the old scheduler-yield assertion and fails the revised test. A separate 100ms delayed-arm probe passed. This advances #112; R0.4, broader identity/session acceptance and R7 remain open pending their own evidence.