Skip to content

Bound idle user cleanup across retired SID churn - #199

Merged
PLN merged 2 commits into
mainfrom
audit/coordinator-writers
Sep 13, 2026
Merged

PLN merged 2 commits into
mainfrom
audit/coordinator-writers

Conversation

@PLN

@PLN PLN commented Sep 13, 2026

Copy link
Copy Markdown
Owner

Repeated user-manager turnover could leave inactive cleanup requests for retired SIDs queued while new owners arrived. Queue admission now prunes obsolete inactive requests before admitting new entries, preserving active request identity and revision. The bound is 132 entries: 128 tracked owners plus at most four active completions.

The deterministic 512-SID churn regression reproduces growth past that bound on the previous source. It exercises logon and notification decisions with held SID gates and separately accepted cleanup completions. Existing cases retain coalescing, failed cleanup, blocked liveness, independent progress and shutdown ownership.

The concurrent-capture fixture now uses short-line record pressure to prove draining and reported loss during a storage stall. CI exposed its previous dependence on decoding 8 MiB inside a two-second window; separate aggregate/native cases retain byte-volume coverage. Twenty repetitions and the serialized journal suite passed with unchanged timeouts.

Validation: twenty focused race repetitions, full uncached race suite, vet and Windows/Linux staticcheck passed. Three integrated user/linger repetitions passed after merging the policy refactor; documentation links and whitespace passed. Final source b8fe16d43ce45331194c3e588beec827d2d04c1c passed CI 34765087985. Eight delayed-adapter/ownership cases passed ten repetitions each under SYSTEM and a headless standard user (1.816/0.753 seconds), without skips and with complete process/profile cleanup.

@PLN
PLN merged commit b99f91d into main Sep 13, 2026
3 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