flaky test: mosaic "whole mutator-class lease gate > observer revocation and monotonic TTL expiry deny the next mutator" (timing flake) blocks #856/#858 terminal completion #860
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
The test case
whole mutator-class lease gate > observer revocation and monotonic TTL expiry deny the next mutatorin package@mosaicstack/mosaicis a timing/real-time flake. It passes deterministically inpull_requestCI but flaked in thepush(descendant-on-main) pipeline, producing a RED descendant CI that leaves two already-merged issues (#856, #858) terminal-incomplete under the completion contract (a merged PR requires a terminal-green descendant CI).Evidence (classified — NOT a content regression)
push, commitacd7d380= the #858 squash-merge), test step 49706 = failure, exit 1.expected { ok: false } to match object { ok: true, decision: 'allow' }inside the multi-step case (an early setup expectation was denied under a lost timing race).pull_request@1e6937c4, the identical #858 content) = success; #857 push CI #1944 (@3b70c66) = success. Only the concurrent push run flaked.build-gateway/build-appservice/build-webmatrix on the push pipeline (resource contention). The log also carried unrelated external noise (OpenRouter model-discovery HTTP 500 ->modelRegistry.getAvailable is not a function, peer-certificate parse warning).Scope
De-flake ONLY the test's determinism for this monotonic-TTL lease-gate case (e.g. injectable/fake clock, case isolation, eliminate real-time sleeps / wall-clock waits). This is a CI-hygiene / test-determinism fix.
Integrity constraints (binding)
deny-the-next-mutatorsemantics must remain intact. De-flaking is test-determinism ONLY; do NOT loosen, remove, repoint, or skip the assertion to make it stable.Completion linkage
This issue is the completion-blocker for the already-merged #856 and #858 (both on
main; only their terminal-green descendant CI is outstanding). Integrity pattern follows the prior flake-fix precedent #849.