You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 059a569
Browse filesBrowse the repository at this point in the historyBrowse files
fix(s127): complete slice 127 (a test that times out says so)
collect/3 returned the same value whether it found what it was waiting for or
gave up waiting:
after
remaining -> Enum.reverse(acc)
So every assertion downstream reported a missing value rather than a timeout,
and a reader goes looking for a logic defect that is not there.
Opened from main's FIPS leg failing the slice 125 merge push (run 36253217084)
while the pull_request run of the same commit passed. Not R26: no Exqlite error,
no Database busy, no write path. Reproduced locally byte for byte by shortening
one deadline from 15,000 ms to 300 ms.
This trap cost a working day earlier in the same session. Slice 126 was opened
on a test ending collect(id, &match?({:state, :idle}, &1), 15_000), where an
idle broadcast from before the message under test was already in the mailbox;
collect returned at once, every assertion ran mid-turn, and the result was a
confident report of a product defect in the approval handshake that did not
exist.
await_event/3 raises, naming the deadline and every event it did see, because
"waited 15s and saw thinking then idle" and "waited 15s and saw nothing at all"
send a reader to opposite places. 20 asserting call sites migrated; the count
came from the census rather than from reading.
The census makes the old shape unwritable: the result of collect/3 may only be
discarded. It enumerates from git ls-files, skips triple-quoted blocks and
comments (without which it reported its own explanation of itself), asserts it
enumerated more than 40 files so it cannot go blind, and was demonstrated
against a planted violation.
The deadline was sized from a measurement, not a hunch. Five instrumented runs
gave 4,745 to 4,786 ms for the fork wait; the file's other two waits return from
the mailbox in 0 to 3 ms and were left alone rather than raised on a hunch.
15,000 was 3.1x local and the leg still missed it, so 60,000. A generous
deadline costs nothing on the passing path, because await_event/3 returns the
instant the condition matches; the only thing it buys is how long a genuine hang
takes to report.
Named await_event/3 rather than await/3: Trinity.MCP.ServersUnderTest already
exports await/2, and a default argument makes await/3 export an await/2 too, so
every MCP test importing both failed to compile.
Nothing under lib/ changed.
Signed-off-by: Ayla Croft <aylacroft@proton.me>
0 commit comments