command: ["node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/access.test.mjs"]
TMPDIR: /mnt/storage/scratch/tmp/oEntjx
launch nice: 19
✔ list prints the revision and the users (28.770827ms)
✔ grant writes one revision up, a receipt line, and the id in the file (55.216634ms)
✔ a viewer grant writes the viewer level, one revision up (51.928539ms)
✔ a second write appends a second receipt and leaves the first intact (106.168082ms)
✔ a stale revision refuses with revision-conflict and writes nothing (83.546619ms)
✔ a live holder's lock refuses and leaves the file and the lock alone (25.140232ms)
✔ an empty or unreadable lock refuses, since its holder may still be writing (51.326552ms)
✔ a lock left by a dead pid refuses, names the pid, and is not reclaimed (49.214626ms)
✔ a failed rename leaves the old bytes, removes the temp file, and writes no receipt (26.650994ms)
✔ a group-writable access file refuses with exit 3, names the file, and changes nothing (25.781799ms)
✔ an agent or tester caller is refused before the context or the access file is read (1.082491ms)
✔ the lock is mode 0600 while held and removed after a refused write (26.164719ms)
✔ a grant naming an unknown instance is refused before any write (25.633211ms)
✔ a project name resolves to its id at grant time (53.311446ms)
✔ an unknown project name refuses before any write (29.16792ms)
✔ revoke removes the user's grants and leaves a revision behind (110.152159ms)
✔ revoke of a user with no grant refuses and writes nothing (36.003652ms)
✔ an agent caller is refused before the bus is asked (0.934242ms)
✔ --tester is refused on every verb before the bus is asked (1.065923ms)
✔ a bus that refuses the human proof blocks the write (24.690075ms)
✔ the context reads console.sso subjects and the business files, and peers stay empty (7.423072ms)
✔ the real human-cli, run from agent ancestry, refuses and writes nothing (5140.058842ms)
✔ T1 user add writes the user one revision up, prints it and appends a user.add receipt (29.341625ms)
✔ T2 a bad user add refuses before any write (330.958139ms)
✔ T3 user remove of a user with no grant drops them one revision up, with a user.remove receipt (26.194679ms)
✔ T4 user remove refuses with user-has-grants while the user holds a grant, and writes nothing (91.379703ms)
✔ T5 user remove of an id not in the file refuses and writes nothing (24.682401ms)
✔ T6 a stale revision refuses both user verbs with revision-conflict (59.251528ms)
✔ T7 --tester and an agent caller are refused on both user verbs before the bus is asked (1.661224ms)
✔ T8 a user verb of the wrong shape prints the help (0.932462ms)
✔ T9 a bus that refuses the human proof blocks both user verbs (52.942012ms)
✔ R4 grant and revoke call access.reload after the write, and nothing else does (175.92563ms)
✔ R4 a refused access.reload after a good write exits 0, stdout reports the write, stderr names the code and the 30 s timer (76.79556ms)
✔ R4 the help keeps the provider-removal order and says what a refused reload means (2.154388ms)
ℹ tests 34
ℹ suites 0
ℹ pass 34
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 6969.379611
