✔ isRunId accepts the run id shape and nothing else (0.838575ms) ✔ a missing data root or runs directory lists nothing (1.273817ms) ✔ runs as a regular file lists nothing, as before (0.494454ms) ✔ listRunIds keeps r- names only, sorted oldest first (1.03203ms) ✔ listRunRecords returns each result, or null for an incomplete or unreadable one (1.205057ms) ✔ readRunRecord returns documents and artifacts in directory order (0.826406ms) ✔ readRunRecord is null for a missing run, a dangling link or a file (0.565715ms) ✔ readRunRecord and readRunDocument refuse an invalid run id before touching the disk (0.552956ms) ✔ readRunDocument reads only the three run documents (0.451964ms) ✔ a link inside the data root is followed (0.804825ms) ✔ a data root that is itself a link is trusted as configured (0.487197ms) ✔ a run directory linked out of the data root is never read (0.631316ms) ✔ a document linked out of the data root reads as null (0.701567ms) ✔ a runs directory linked out of the data root refuses (0.457529ms) ✔ a relative link that climbs out of the data root refuses (0.391742ms) ✔ a sibling whose name starts with the data root's name is outside it (0.426052ms) ✔ a link loop refuses instead of reading as missing (0.50534ms) ✔ an unreadable runs directory refuses instead of listing nothing (0.366686ms) ✔ an unreadable run directory refuses instead of reading as missing (0.397511ms) ✔ a link to the data root's parent is outside it (3.469399ms) ✔ listRunIds sorts whatever order the directory returns (0.673035ms) ✔ listRunRecords lists an r- name that isn't a valid run id, as before (0.423007ms) ✔ the readers write nothing (1.623409ms) ✔ no pointer is null (1.437087ms) ✔ the pointer release.sh writes reads back (0.924664ms) ✔ a pointer that isn't the version 1 shape refuses with exit 2 (1.401015ms) ✔ a pointer that is a directory refuses with exit 4 (0.455789ms) ✔ a state file linked out of the data root refuses (0.766331ms) ✔ a state directory linked out of the data root refuses (0.476452ms) ✔ a state directory linked out to nothing reads as no release and an empty log (0.40213ms) ✔ a missing log is empty (0.294836ms) ✔ the log reads oldest first and counts malformed lines (0.793118ms) ✔ last must be a positive integer (0.383364ms) ✔ the state readers write nothing (0.663564ms) ✔ list prints each run in the established format (61.729812ms) ✔ list prints a damaged result.json as unknown and keeps listing the runs after it (63.649975ms) ✔ list prints each result field that isn't a string as unknown or - (64.200122ms) ✔ show prints the run in the established format (65.568798ms) ✔ show of a missing run and an invalid id exit 4 as before (95.797828ms) ✔ list and show refuse a runs directory linked out of the data root (126.646445ms) ✔ show refuses a run linked out of the data root; list reports it unknown (117.361372ms) ✔ list shows an r- name that isn't a valid run id, as before (64.26359ms) ✔ show refuses an invalid id before reading the config (35.468016ms) ℹ tests 43 ℹ suites 0 ℹ pass 43 ℹ fail 0 ℹ cancelled 0 ℹ skipped 0 ℹ todo 0 ℹ duration_ms 744.764165