Compare commits

..
Author SHA1 Message Date
jason.woltje 67e0844060 Row 286 r4: record transplant onto landed row217, hunk comparisons and refreshed untested manifest 2026-10-24 06:24:28 -05:00
jason.woltje 02f1c2df63 Row 286 r3: fix new credential fixtures and record green CLEAR gate with killed mutants 2026-10-24 06:22:49 -05:00
jason.woltje b7d3949285 Row 286 r3: record successful canonical queue start and pre-CLEAR push receipt 2026-10-24 06:22:49 -05:00
jason.woltje ed94e24de0 Row 286 r3: transplant evidence, conflict resolution and static reader drift; untested pending CLEAR 2026-10-24 06:22:49 -05:00
jason.woltje fd04dba8bd Row 286 C2-03b r2: rebase onto 45dca69f6 (sage-3579). The range-diff is all =. Drift check of the paths the tests read is in BUILD.md. Unrun. 2026-10-24 06:22:44 -05:00
jason.woltje 674f3d6388 Row 286 C2-03b: BUILD.md notes for dewey-0869 and sage-2951 (fired-chief path :4308, marker-gated busy test, T9 scratch roles) 2026-10-24 06:22:44 -05:00
jason.woltje 2e2f71e6fd Row 286 C2-03b: fold dewey-0869 and sage-2951 (marker-gated busy test, T9 scratch roles with a chief gitea credential, fired-chief path cited) 2026-10-24 06:22:44 -05:00
jason.woltje 0d1d997141 Row 286 C2-03b: cite sage-2947 (T7 real verbs, R1 in this row, 285/286 rebase rule) 2026-10-24 06:22:44 -05:00
jason.woltje 6b731a3052 Row 286 C2-03b: fold dewey-0864 (T7/T9 through grants.revoke and instance.fire, race fetch takes the sync guard, two-chief code, id -u shim note) 2026-10-24 06:22:44 -05:00
jason.woltje 4488f8ab08 Row 286: library.status shows the credential (webby-0151 R3); fired chief revokes its row as row 281 does; unrun 2026-10-24 06:22:44 -05:00
jason.woltje a7f274b005 Row 286 C2-03b: library push, per-seat credentials, the chief's fetch credential, askpass fd check (#1791, sage-2922/2925/2928, dewey-0860); unrun 2026-10-24 06:22:44 -05:00
jason.woltje 299d7f50fe Row 286 C2-03b: sage-2928 rulings (sh helper, chief by roles definition, departure noted) 2026-10-24 06:22:44 -05:00
jason.woltje 6c99ccc7bd Row 286 C2-03b: fold dewey-0860 (Q1 sh fd/inode check, Q2 chief by roles definition, N1-N3) 2026-10-24 06:22:44 -05:00
jason.woltje d0d25b04ba Row 286 C2-03b: sage-2925 Q4 ruling (humanCredential takes her login; editor.user is row 283's) 2026-10-24 06:22:44 -05:00
jason.woltje 764debfe17 Row 286 C2-03b: sage-2922 files-owned extension; Q4 back to Sage (user is the bot fetch identity) 2026-10-24 06:22:44 -05:00
jason.woltje e6b7abf9b2 Row 286 C2-03b: build plan and four scope questions (BUILD.md only) 2026-10-24 06:22:44 -05:00
2871 changed files with 687 additions and 289682 deletions

No files matched your search

-309
View File
@@ -5501,318 +5501,9 @@ claim. Receipts and limitations in agents/lena/work/queue-296/BUILD.md and run-r
2026-10-24 | Beakley (88b97f65) | Row 217 round 2, sage-4037 | Rebased published dde5b8496 onto e0c6142f3 on new beakley/row217-r2; both append-log histories retained. Conflicts preserve landed grant dispatch, revocation hook and lookup exports. Added E4 citation-unavailable product path and real supporting-scope/index comparison tests after row283 8d2856ee3. Untested: no Node/npm/tests/mutants/build; ready for Sage CLEAR after Lena296. Full range-diff and honest discarded local rebase correction in agents/beakley/work/queue-217/BUILD.md.
2026-10-24T10:21Z | Beakley (88b97f65) | Row 217 round2 slot verified, sage-4042/4043 | Source 2d274a5b6: touched57/57, whole library142/142 business270/270 bus974/974 cli988/988 harness172/172 seat218/218, all zero fail/skip/cancel. M1-M5 killed, controls/restored controls green, product hashes restored after each; E4 RED stand-in observed. Only first-red was new runtime fixture invalid-authority, corrected and retained in receipts; no old test failed/edited. Local root/webui npm ci, short TMPDIR, timeout-k10; no canonical npm/rm or module link. Full evidence agents/beakley/work/queue-217/run-r2; Sage owns scripts landing gate and formal review.
2026-10-24T11:15:29Z | Sage | Rows 296 (#1802, Lena, Filbert) and 217 (#1718, Beakley, Webby) LANDED d0a6a87cd. Before: refactor at e0c6142f3 (local 98235fdb3). After: 296's 5 commits (range-diff 5 =, blobs equal b43156fd9 on 28 paths) and 217's 9 commits (5 = and 4 !, the ! are BUILD-LOG/SESSIONS append conflicts kept both sides; blobs equal 96659ccf4 on 79 paths) on 98235fdb3, with doc commits b19ffa04f and 98235fdb3. Reviews: Filbert c31547 rev 3896, Webby c31549 rev 3901. Gate: 1st run 10:57:16Z RED on one rule only, the gate's "cli skipped 0": 296's FED R7 test skips in the cli suite by design and runs only through scripts/test-federation-acceptance.sh, which passed 1/1 in the same run. Mos ruled that a RED gate doesn't land (mos-1583). The gate now allows a cli skip only from an explicit list (test file, test name, runner script) whose runner ran in the same gate with rc 0, at least 1 pass, 0 skipped and the named test passed; any unlisted skip stays RED; checked against a wrong-file and a runner-skip control, both RED. Rerun GREEN 11:14:53Z with its own npm ci: 17 package suites 0 failures (cli 989/988 pass, the allowed FED R7 skip; plugins 119; webui 418), every scripts/test-*.sh rc 0, federation-acceptance cleanup line present; skips otherwise are the queue canonical-root check and the row 244 live provider cases. push-check SECRETS_CLEAN, NO_ATTRIBUTION, PUSH_READY. #1802 closed c31557, #1718 closed c31559, Vikunja 533 comment 1054 (design task, left open for Q29). Row 286's approved manifest shares broker.mjs, runtime.mjs and library/src/index.mjs with 217, so 286 needs a rebase round before its gate. Brief template gains the skip-list rule.
2026-10-24T10:02Z | Magica | Row 285 / #1790 r3 before/after (sage-4039, mos-1542) | Before: assigned magica/row285-r3 at b19ffa04f, Scrooge r2 untested at 53db6b7ca. After: seven commits cherry-picked through 644bcaa16; five named overlaps auto-merge preserving newer base changes. Range-diff six '=', one context-only '!'; six patch IDs identical, fixture patch ID differs with upstream import context, exact test added/removed-line comparison identical for all changed tests. business.mjs equals base; Scrooge BUILD equals r2. CREATIVE_KINDS absent in packages/roles/scripts; no 64-hex changed-path pin; 291 conservative reader candidates recorded. No npm or tests before Sage CLEAR; N1 remains follow-up. Own-branch evidence push next, not accepted/green or landed.
2026-10-24T09:58:36Z | Magica | Row 285 timestamp correction | The preceding Magica entry marked 10:02Z used an incorrect timestamp; replay/evidence commit 87b7547f8 occurred before the measured 09:58:22Z push start. Technical evidence is unchanged.
2026-10-24T10:32:02Z | Magica | Row285 / #1790 gate STOP (sage-4048) | Before: pushed66a800e15, no tests. After: own root/webui npm ci, short scratch TMPDIR, whole files serial timeout-k10; bus958/958 green (108 files), business partial80pass/4fail, first red old row323 case1-business-file tests57/86/95/105 because committed Case1 chief lacks required gitea ref. No more tests/mutants or source edits. Static diagnosis also finds old empty-credential assertions81/112/114, requiring a specific owner ruling. Sage notified magica-0002. No in-review move or green claim.
2026-10-24T10:42:28Z | Magica | Row285 / #1790 Amendment1 before/after | Before: unconditional chief gitea broke row323. After: chief-only library conditional plus named required-reference refusal, checkCredentialMap unchanged; new three-case test file; own helper/resolve fixture hunks restored to base, own chief/business/identity hunks reconciled under sage-4060. Case1 doc/test byte-identical. M10 planned against new no-library positive and old Case1 doc test. No tests run under held slot; not green/accepted. Residual base library fixture references need authority alignment before re-CLEAR.
2026-10-24T10:59:43Z | Magica | Row285 / #1790 B1 before/after | Before: Amendment1 candidatebabae6adc with missing refs in base library/creative fixtures. After: 26 data-only credential insertions across13 direct-reader files; original callback lines preserved, one expressly allowed credentials?.vikunja setup guard. Every other byte reconstructs prior candidate exactly; no base assertion edits. Base and candidate put role set is pm,cto,coder,reviewer; chief lacks vikunja. Literal e0c6142f3 word diffs and known preexisting r2 hunks recorded. No tests, green claim or queue move; next whole gate +M10 waits for Sage CLEAR.
2026-10-24T11:24:17Z | Magica | Row285 / #1790 r4 before/after | Before: r3 eee8ad776 on b19ffa04f, gate unverified after amendments. After: new r4 from landed296+217 base d0a6a87cd, twelve commits replayed; only append logs conflicted, complete base prefixes preserved. Product/test patch lines identical across assigned bases; tests byte-equal r3; replyLimits and broker citation work retained. Regenerated range-diff and e0c6142f3 base word/line diffs. No npm/tests or queue moves; own-branch push explicitly authorized by sage-4078.
2026-10-24T12:09:17Z | Magica | Row285 / #1790 r4 C1 diagnostic result | Before: valid landed-base candidate0f6cdc861; first old citation-runtime red. After: mos-1584/sage-4086 full unchanged collection, six suites2950 tests2937pass/12fail/1skip/0cancel; WebUI418 and plugins119 green, all12 script suites exit0, dedicated federation1/1. CLI release300s runner cap interrupted; retained and resolved via unchanged1800s retry224/224 in599.6s. Failures: citation-runtime1, instance-settings2, lifecycle-settings1, launcher1, harnesscreative7. Static root causes/fix classes and r3 parity in agents/magica/work/queue-285/BUILD.md. No source/test edits or fix round/mutants; no final manifest or in-review; owner ruling required.
2026-10-24T13:02:03Z | Magica | Row285 / #1790 r4 VERIFIED | Before: C1 collection12 failures. After: approved three data corrections, actual-bound-ref guard, duplicate-before-eligibility hire, data-derived creative equal-service retention/listing with validator first; no old assertion edits. Own fresh128/2 installs, editor-required shortTMP serialized final gate: bus975/975 business282/282 cli988pass/1expectedskip webui418/418 harness172/172 plugins119/119, all12 scripts exit0.13 mutations14 independent checks killed; each SHA256/Git blob restored; restored controls136/136. Case1 doc/test/helper base-identical; N1 deferred. Own r4 candidate for Poe/Webby review, no landing/live action.
2026-10-24T13:33:42Z | Sage | Row 285 (#1790, C2-08b, Magica on Codex, Poe and Webby) LANDED 1f3d0350f. Before: refactor at 25874bc86. After: r4 candidate 2e4503dc7's 14 commits cherry-picked onto 25874bc86. The one conflict (9f7adb03e, BUILD-LOG.md and SESSIONS.md) is append-only and kept both sides, with 0 lines removed against either parent. Apart from the logs, the tree equals the candidate except on the 7 paths 25874bc86 and 4c6190645 had changed. Reviews: Poe first review c31568 rev 3919, Webby landing review c31569 rev 3920, both static. Sage posted both because neither seat has a token. Gate GREEN 13:28:46Z with its own root and webui npm ci (mos-1575): 17 package suites, 4236 tests, 0 fail, 1 skip, which is the allowed FED R7 entry whose runner passed 1/1 (mos-1583). All 12 scripts/test-*.sh rc 0. The other skips are the queue canonical-root check and the row 244 live provider cases. Brief gate: no CREATIVE_KINDS in packages, roles or scripts; no test or script pins the old or new sha256 or blob of a changed role file (positive control found chief-of-staff.json readers); role JSONs match mos-1309 item 5 design 4, with gitea scopes added (read for the chief, read:user and write:repository for the creative roles). Before the push, the in-review overlap sweep found only row 286 (broker.mjs), which rebases as r5. push-check FF_OK, NO_BINARY, SECRETS_CLEAN, NO_ATTRIBUTION. #1790 closed with c31580, Vikunja 546 c1056 (already done). Queue note rev 3921, done rev 3922. Correction to my own rulings: sage-2921 (285's #giteaRole refuses the chief) and sage-2947 (286's T7/T9 mint the chief's grant through the real raise, no SQL staging) conflict now that 285 has landed (rockerduck-0008). sage-4100 keeps the refusal and has T7/T9 seed a read-only chief grant as labeled fixture data, with an assertion that the real path refuses and with revoke and fire still on the real verbs. The tradeoff is that the chief mint goes untested until C2-21 (row 287), whose brief now replaces the seeds. Dewey confirms in 286's round-2 delta. Brief template gains the mos-1584 businessDoc library chief-ref line. The C2-02 brief gains webby-0282 N1 (tool names match the creative contracts). Follow-up webby-0282 N3: business.mjs uses the literal "chief-of-staff" instead of STAFF_TO. The live stack is not re-pinned.
- 2026-10-24 (rockerduck, row 286 / #1791, r3 before gate): transplanted Ludwig 45dca69f6..573fa0be0 onto b19ffa04f, preserved newer exports in sole index.mjs conflict; plain-text range-diff, patch IDs and reader/pin drift inventory in agents/rockerduck/work/queue-286/BUILD.md. UNTESTED by sage-4040: no setup or tests until CLEAR.
- 2026-10-24 (rockerduck, row 286 / #1791, r3 after sage-4054 CLEAR): own-worktree installs; library 140/140 and bus 963/963; M1 forced-refspec and M2 missing-inode-compare killed at semantic assertions, restored before final suites; all gate-output fixture searches zero. Four first-run reds only in new credential test; setup corrections and intermediate findings recorded in agents/rockerduck/work/queue-286/BUILD.md. No old test edited during gate; shell/CLI suites remain Sage landing gate.
- 2026-10-24 (rockerduck, row286 / #1791, r4 before gate, sage-4079): all 15 r3 commits transplanted to d0a6a87cd on new rockerduck/row286-r4. Three product overlaps auto-merged with row217 preserved; two append-log conflicts retain both histories. Range-diff and adjacent hunk evidence in agents/rockerduck/work/queue-286/BUILD.md. UNTESTED r4: Git-only until own-branch push, library/bus rerun waits for CLEAR after row285.
- 2026-10-24 (rockerduck, row286 / #1791, r5 before gate, sage-4097/4100): transplanted r4 onto 1f3d0350f; kept row285 library.write routing and chief write-grant refusal plus both append-log histories. Chief fixture refs added; T7/T9 mint setup now pins real refusal then seeds read-only fixture as explicitly ruled, keeping real revoke/fire assertions. Scratch role declaration mutation removed; range-diff/drift evidence recorded. No r5 tests yet; CLEAR starts after own-branch push.
- 2026-10-24 (rockerduck, row286 / #1791 r5 gate, sage-4097/4100): own-worktree installs; touched credential6/6 and sync24/24; whole library151/151 and bus981/981, zero fail/skip/cancel. P1 forced refspec, P2 missing inode compare and B285-M1 chief write-grant guard each killed on ERR_ASSERTION with green before/after controls and exact restoration hashes. All gate-output fixture searches zero. No normal red; source unchanged after pre-gate push045eec61a. Plain text evidence in agents/rockerduck/work/queue-286/BUILD.md and gate-r5; round2 candidate push follows.
- 2026-10-24 (rockerduck, row286 / #1791 r6, sage-4112 / #1825): corrected only two fixture constants to unique19-character values after the landing secrets check refused r5. No waiver/guard/assertion/product change. Added-package-lines secrets grep empty; touched6/6+24/24, library151/151, bus981/981 on fresh shortTMP timeout-k10; both exact new values absent from all four outputs. Mutants not rerun as directed. Plain evidence in agents/rockerduck/work/queue-286/BUILD.md and gate-r6; new manifest/push and round3 follow.
2026-10-24T14:37:02Z | Sage | Row 286 (#1791, C2-03b, Rockerduck on Codex, Boyd and Dewey) LANDED 5d7801dc1. Before: refactor at d55944edb. After: r6 candidate 75f6d56b1's 19 commits cherry-picked onto d55944edb. The one conflict (64f1ff950, BUILD-LOG.md and SESSIONS.md) is append-only and kept both sides, with 0 lines removed against either parent. Apart from the logs, the tree equals the candidate except on the 6 paths of my doc commit d55944edb. Reviews: round 2 (r5 ec8cb10c0) Boyd c31584 rev 3928, Dewey c31585 rev 3929; round 3 (r6) Boyd c31587 rev 3942, Dewey c31588 rev 3943. Sage posted the requests (c31583, c31586) because Rockerduck has no token. Gate GREEN on r5's tree e9c73ab96 at 14:14:11Z, then the push stopped at push-check STOP secrets. The guard came in today with #1825. Two added fixture constants (SLOT_TOKEN in library-credential.test.mjs, SEAT_TOKEN in sync.test.mjs) were 31 characters and matched its token-assignment pattern. sage-4112: no waiver (mos-1570) and no guard edit; r6 shortened only those two values to 19 characters, with reviewers confirming the delta. Gate GREEN again on 5d7801dc1 at 14:36:42Z with its own npm ci: 17 package suites, 4251 tests, 0 fail, 1 skip, which is the allowed FED R7 entry whose runner passed 1/1. All 12 scripts/test-*.sh rc 0. Neither old nor new fixture values appear in any of the 29 run outputs. Mutants: Rockerduck killed P1, P2 and B285-M1 (gitea-grant X-G1). For Dewey's N1 I also ran B285-M1 against library-credential.test.mjs; T7 and T9 failed (4/6) and passed after the restore. sage-4100 (chief grant seeded as fixture until C2-21) is recorded in the 285 entry. Overlap sweep found no in-review row on the 9 code paths. push-check FF_OK, NO_BINARY, SECRETS_CLEAN, NO_ATTRIBUTION. #1791 closed with c31591. No P19 task names row 286, so there is no Vikunja task to close. Brief template gains a sage-4112 line: test credentials stay under 24 characters. The live stack is not re-pinned.
2026-10-24T14:55:11Z | Sage | Row 290 (#1795, C2-12b, the setup sheet rewrite, Louie on Codex, Webby) LANDED 3d7dff345. Before: refactor at 18334d713. After: Louie's r2 candidate 22510988d (four doc commits on 963303403) cherry-picked onto 18334d713. The commits match by patch-id and range-diff, and docs/case2/SETUP-SHEET.md is blob 37b451c6, the text Webby approved in rounds 2-3 (42b75e484) and again on the rebase (round 4, webby/reviews 0006f03f4). Sage posted the request (c31595, revs 3952-3953) because Louie has no token; Webby's verdict is c31596, recorded at rev 3954. Gate from the brief, doc only: a grep of packages/*/tests, scripts/test-*.sh and tests/ for SETUP-SHEET finds nothing, and a positive-control grep does find matches. Louie checked that the sheet's two setting names match broker.mjs:5341. No suite ran: no test reads the file (decision 137), so the mos-1455 all-suites gate, which covers code rows, doesn't apply, and Fethry's slot for row 225 stays untouched. push-check FF_OK, SECRETS_CLEAN, NO_ATTRIBUTION. #1795 closed with c31597. No P19 task names row 290. The live stack is not re-pinned.
2026-10-23 | Fethry | Row 225 C2-10b (#1726), handoff recovery. Before: Morgana's untested candidate 9a131e956 replaces renderItems with renderReply and adds Console citation/notice/status rendering and status/revert routes. Continuing that exact history on fethry/row225; preserving A1-A5 and the accepted file deviations. Remaining: confirm limits contract, review/test candidate under Sage CLEAR, obtain Mos OK through Sage for inherited old-test changes, manifest and Dewey review. No Node/tests run in this session and no green claim.
2026-10-23 | Fethry | Row 225 T1 lane A (sage-3641/3647). Before: nested replyLimits fallback/problem omitted, wrong-project revert receipt accepted, invalid library mapping hidden. After RED: these three local behaviors corrected; three assertions in the new handoff test files corrected against existing route/mapping/Boolean behavior, each explained in BUILD.md. Whole-file GREEN: renderer 9/0, routes 13/0, browser 9/0; full library 81/0, channel-proof 2/0. Approved old-test numstats remain 80/66 and 3/1. Full webui/build and full integration gate have not run. Isolated mutants next within the authorized 19:38Z hard stop; no completion claim.
2026-10-23 | Fethry | Row 225 T1 expanded evidence complete (sage-3647). Full library81/0 and channel-proof2/0; final targeted renderer9/0, routes13/0, browser9/0. Isolated kit14/14 assertion kills on507901277, every target restored/hash-checked, candidate hashes unchanged. First attempt stopped at a wait-based failure, recorded as not killed; corrected the new test's repaint wait, baseline9/0, and reran the whole kit. No processes left; lane A returned around19:29Z. Source manifest for Dewey prepared; full webui/build and Sage's integration/scripts gate still pending. Raw logs preserved in scratch, normalized display copies and raw SHA256 provenance in agent evidence.
2026-10-23 | Fethry | Row225 review follow-up (dewey-0937/0939, sage-3669). Before: a notice-shaped checked agent body could misrepresent another agent's real commit/path, and a403 owner-only lacking sent looked uncertain. Regression browser cases and two isolated mutants authored first; corrected own BUILD.md's forgery explanation and stated Sage's accepted pre217 no-check residual. No production change or Node/test run yet. Existing renderer tests, including the unchecked notice case, stay exactly at Mos1510's80/66; channel-proof stays3/1. RED/GREEN and full webui wait for explicit T3 CLEAR after217; no broker marker or row288 change.
2026-10-24 | Fethry | Row225 round2 resumed under sage4119/4120. Before: reviewed source94128f73f had blocking checked-message notice forgery and a misleading owner-only refusal; prepared tests7590cf633 awaited the slot. Rebased onto963303403 on new fethry/row225-r2 preserving sharing/chatGrants, upstream exports and both log histories; approved test deltas remain80/66 and3/1 with the combined bus pin. Queue start rev3946; local root/webui npm ci, no canonical dependency links. New browser RED8/3 then GREEN11/0 after only B1/N1 fixes. Editor build unchanged; whole webui442/0 and library149/0 (no skip/cancel); bus gate in progress. No old-test edit or second RED; full results and isolated-mutant evidence follow.
2026-10-24 | Fethry | Row225 round2 worktree gate and review correction complete on sourcec010dfd85 over963303403. B1/N1 RED8/3→GREEN11/0. Local editor build unchanged; webui442/0, library149/0, bus981/0, whole channel-proof2/0, all zero skips/cancels. Isolated16 unique clean assertion kills (14 originals+B1+N1); one M3 missing-file attempt timed out during a status after-hook, was not counted, was reported to Sage before any change, and passed unchanged retry with the remaining9.17 attempts total, timeout retained. Per-mutant restored hashes and final13 pins verified; scratch Node/Chromium sweep zero, no signals. New fethry/row225-r2 preserves original published branch, approved old tests80/66 and3/1, all landed sharing/exports/log histories. MANIFEST.r2.md and manifest.r2.sha256 to Dewey; source review/lead integration remain separate, no live action.
- 2026-10-24 — steelbeak — #1792 / row 287 C2-21 before: library grants still fork; creative and chief grants refuse. Recovered Megavolt's binding design on 18334d713 and documented current-code delta in agents/steelbeak/work/queue-287/BUILD.md. No tests or implementation yet; Sage holds test clearance, scope delta reported in steelbeak-0001.
- 2026-10-24 — steelbeak — #1792 / row 287 C2-21 after: library grants use admin collaborator PUT, creative write/chief read levels, definition scopes, exact publish-wide reach and kind/level binding; business fence and chief install identity/publish updated; T7/T9 seeds replaced by real minting. Scratch Gitea F-A/F-B pass, F-C owner control negative recorded, F-D normal/force control positive. Verified bus 998, business 283, CLI 989 plus dedicated FED 1 (one expected CLI skip), Docker 2, install 27, all 12 shell gates, M1-M11 killed and restored; token audit hits0 and owned-process/container cleanup clean. Test fixture corrections approved under mos-1590/sage-4139; non-executable land-work launcher rc126 resolved by sage-4141 bash invocation. Evidence and manifest at agents/steelbeak/work/queue-287/; handing off to Boyd, then Dewey, with no live change or landing.
- 2026-10-24 — steelbeak — #1792 / row 287 first-review correction, boyd-0034: frozen candidate c2338ed58 approved, no blocking code findings. Product/test diff-check is clean; the full committed diff has trailing whitespace in preserved raw RED/mutant logs, correcting the earlier unqualified claim. Added verified old-test numstats in BUILD.md as a separate doc-only follow-up under lead137. Queue round1 opened at rev3963; automatic request failed at rev3964 for missing Steelbeak credential, reported to Sage without workaround. No product edits, tests or slot use.
2026-10-24T15:55:22Z | Sage | Row 225 (#1726, C2-10b, Fethry on Codex, Dewey) LANDED 9b6345466. Before: refactor at c63801959. After: Fethry's r2 candidate c1f9dfd3c (11 commits on 963303403) cherry-picked onto c63801959. 8 commits are equal by range-diff; the other 3 differ only in the append-only log hunks, kept both sides with 0 lines removed against either parent. All 13 manifest paths match manifest.r2.sha256 (517af41b). Dewey APPROVE c31599 rev 3960; request c31600 revs 3961-3962, posted by Sage because Fethry has no token. Sage gate GREEN 15:54:58Z with its own npm ci and MOSAIC_REQUIRE_EDITOR_BUILD=1: every package suite except queue 0 fail (webui 442, library 149, bus 981, cli 988 plus the allow-listed FED R7 skip, whose runner passed 1/1), all 12 scripts rc 0. The excluded M3 timeout attempt was not counted; the unchanged retry killed cleanly. Dewey N1-N3 non-blocking: the Discord relay must pass check once it calls renderReply; the M3 hang was in the new status test's after-hook teardown; the pre-217 residual stands under sage-3669. #1726 closed c31604. Not re-pinned.
2026-10-24T16:12:35Z | Sage | Row 287 (#1792, C2-21, Steelbeak on Codex, Boyd and Dewey) LANDED 0e935776e. Before: refactor at 9b6345466. After: Steelbeak's c2338ed58 and doc follow-up a5370b198 cherry-picked onto 9b6345466. One commit equal by range-diff, the other differs only in log hunks, kept both sides. 56 manifest paths match 3683b40a. Boyd APPROVE c31602 rev 3967, Dewey APPROVE c31603 rev 3968; request c31601 revs 3965-3966 posted by Sage. Sage gate GREEN 16:11:38Z: bus 998 (Gitea Docker F-A/F-B and X-G3, minted 4, hits 0), business 283, webui 442, cli 989 plus the allowed FED R7 skip, every other suite 0 fail, all 12 scripts rc 0; fixture credential values in 0 of 29 run files with a positive control. Rulings applied: sage-4125 (library grants mint declared scopes, chief read), mos-1590 (new-test fixture fixes are the lead's call when no production code or old test changes and every fail-closed refusal keeps its own test), sage-4139 (fixture fixes) and sage-4141 (test-land-work.sh is mode 100644, run via bash). Follow-up: F-C negative, a protected Story/** rule refuses the owner too; binds the first row that needs owner pushes to a protected branch. Dewey N1-N3 non-blocking: the block's last line "can write every repository this user can write" contradicts the chief's read grant; a collaborator entry outlives a failed step 5, which still fails closed; #publishFacts would accept a library project, unreachable today. Closes Dewey's 286 r2 N2 (T7/T9 real mint). #1792 closed c31606. Not re-pinned.
2026-10-24 | Fethry | Row266 C2-10c start (#1771), sage4154/4156. Before: Console seam/plugin only expose thread verbs; room.read omits check/last needed by225. New isolated worktree on487500a16, amended pin85e6fe2ecfc5. Plan: three fixed room calls, strict room HTTP, merged room UI and leading-@ completion, shared broker check hydration/last only under amendment1. No old tests or out-of-scope production edits; local installs/no canonical links; RED-first and serialized full webui/plugins/bus/scripts plus mutants under CLEAR. Detailed design/acceptance in agent BUILD.md.
2026-10-24 | Fethry | Row266 implementation verified before candidate commit. Six owned production paths plus four new tests, no old tests edited. RED history and fixture corrections recorded before action. Editor build, webui458/0, plugins120/0, bus1000/0 and all12 scripts exit0. Initial bus999/1 hit old T9 50ms timer race; sage4158 authorized three unchanged credential-file6/0 reruns and whole bus1000/0 rerun, all green. Raw/normalized TAP provenance retained. Candidate/mutants/review next; no landing claim.
2026-10-24 | Fethry | Row266 final verification: candidate3095d6ea5, manifest5f816042 (10 package paths, no old-test edit). All16 isolated mutants killed by assertions with restored hashes and unchanged candidate. Initial M01 uncaught plugin refusal excluded, strengthened only new doesNotReject assertion and full plugins120/0 rerun. Final cwd node/Chromium sweep empty, killpg cleanup recorded. Full webui458/0, plugins120/0, bus1000/0, all12 scripts0; earlier T9 race plus four unchanged green reruns retained. Push/review packet next; Sage gate and two reviews remain.
2026-10-24 | Fethry | Row328 (#1826/Vikunja622, mos-1594, sage4190) prepared UNTESTED on fethry/row328 from2ce476d54. Before: second T9 start keeps50ms periodic timer, causing old bus999/1 race in266. After: only T9 helper accepts interval default50 and second start uses2147483647 TIMEOUT_MAX; assertions/product unchanged, approved test +4/-3. Stress runner prepared for50 M1-50, optional50 M1-1,50 fixed, whole file; per-run TMPDIR/TAP/load, hash restoration and killpg cleanup. No tests before Sage CLEAR; explicit untested push requested.
2026-10-24 | Fethry | Row328 sage4205 stress stopped at required no-reproduction boundary. M1-50 passed50/50; fallbackM1-1 passed50/50, zero library-sync-busy assertions, no skips/cancels. Fixed50 and whole-file NOT RUN. Absolute19 initial priority then host drift recorded. All100 fresh shell gXXX TMPDIRs29bytes; both mutants restore exact test hash and empty diff/stat+porcelain. No test/assertion/product changes. Receipts/nice/load/plain-text BUILD pushed; slot returned fethry0043. Await Sage/Mos ruling; no in-review/acceptance claim.
2026-10-24 | Fethry | Row328 sage4214/Mos1599 option A GREEN on06c57a7db:8x50 M1-50 produced374 passes/26 expected library-sync-busy assertion failures, exact restore/full diff+porcelain clean, same8x50 fixed400/400, whole library-credential6/6, no skips/cancels or unexpected errors/reruns. Node nice16/19 observed after absolute19; loads and801 receipts retained. Old test staysapproved+4/-3, assertions/product unchanged. Own process sweep empty. Evidence push/slot return and owner review move next; Boyd/Dewey then Sage full bus/scripts gate pending.
2026-10-24T19:44:50Z | Sage | Row 257 (#1762, Q198 S1 pressure parser and rules evaluator, Morgana, Filbert) LANDED 73692e1bb, pushed 17:41:58Z 10-24. Before: refactor at 487500a16. After: Morgana's four commits cherry-picked onto 487500a16 with unchanged patches; the 9 packages/supervisor paths match Filbert's round 2 manifest b176a88f. Filbert r1 c30188 (N1/N2 fixed in r2), r2 APPROVE c30190 rev 3037, request c30189 posted by Sage. Slot result on 1261fa2d8: three files whole 15/0, 29/0, 1/0, supervisor 45/0, M1-M8 killed by assertion. Sage gate: first run RED 17:20:42Z, webui 441/1 on the old row278 sign-out test (timeout at load about 8.5, the row touches no webui path); the webui-only rerun 442/0 was not counted; the full rerun was GREEN 17:41:11Z: bus 998/0, business 283/0, webui 442/0, supervisor 45/0, cli 989 plus the allowed FED R7 skip, all 12 scripts rc 0. Correction: the row278 timing red is an old test, so any change to it goes to Mos (mos-1272). Follow-up: Morgana's carry (sage-3003, CLEAR_HELD entry and a clear-path hold test) binds the row that wires a Q198 hold into a launch refusal. Not re-pinned.
2026-10-24T19:44:50Z | Sage | Row 266 (#1771, C2-10c Console room view, Fethry on Codex, Boyd and Dewey) LANDED 3e5041b43, pushed 18:00:49Z 10-24. Before: refactor at 73692e1bb. After: Fethry's four commits cherry-picked, every patch-id equal to the seat branch; tree is manifest 5f816042 with no other change. Boyd APPROVE c31609 rev 3983, Dewey APPROVE c31610 rev 3985 (N1-N3 non-blocking), request c31608 posted by Sage. Sage gate GREEN first run 18:00:08Z: bus 1000/0, business 283/0, webui 458/0, supervisor 45/0, cli 989 plus the allowed FED R7 skip, all 12 scripts rc 0. Dewey's N2, the old T9 library-sync-busy race, went to Mos and became row 328. Not re-pinned.
2026-10-24T19:44:50Z | Sage | Row 224 (#1725, C2-05b, Della on Codex, Dewey) LANDED 5e77cdd09, pushed 19:18Z 10-24. Before: refactor at 7fe32d722. After: Della's 13 commits cherry-picked onto 7fe32d722. Sage gate GREEN 19:16:37Z on 27624aa66 (base 06f507dbc): bus 1011/0, business 283/0, harness 176/0, cli 990/0 plus the allowed FED R7 skip, webui 458/0, all scripts rc 0. Drift between the gated base and 7fe32d722 is only docs/plans/2026-10-24_model-proxy-rows.md, which no test reads (mos-1601 condition); manifest-r9 952482b4 matches the landed tree. Dewey APPROVE c31619 rev 3999. #1725 closed c31623; note rev 4015, done rev 4016. Correction: the first done move passed --evidence and was refused (rc 2, the round closes on its recorded verdicts); rerun without it. Follow-up: Dewey's N3, the old ask helper can't serve a library business, goes to a later row. Not re-pinned.
2026-10-24T19:44:50Z | Sage | Row 328 (#1826, Vikunja 622, old T9 timer race, Fethry on Codex, Boyd and Dewey) LANDED 8bb5b3c73, pushed 19:40Z 10-24. Before: refactor at 5e77cdd09. After: Fethry's 8 commits cherry-picked onto 5e77cdd09 (same patches); T9's second start passes intervalMs 2147483647 (mos-1594), test-only. Under 8x50 concurrent loops M1 (50 ms back) gave 26 expected failures and the fix 400/400. Boyd APPROVE c31621 rev 4002, Dewey APPROVE c31622 rev 4003. Sage gate GREEN 19:38:54Z on 8bb5b3c73 itself, no drift: bus 1011/0, business 283/0, harness 176/0, cli 990/0 plus the allowed FED R7 skip, webui 458/0, every scripts/test-*.sh rc 0 (Dewey N1). Manifest 1e010468. #1826 closed c31625, Vikunja 622 done (comment 1071), note rev 4019, done rev 4020. Not re-pinned.
2026-10-24 — Magica row329 P1 (#1827, Vikunja237): beginning pinned model-proxy fetch/init/client/unit build at 7fe32d722, under mos-1600/1601. Acceptance uses only fresh temp roots and unshare -rn; live instance and host proxy excluded. Evidence agents/magica/work/queue-329/BUILD.md.
2026-10-24 — Magica row329 P1 (#1827): final builder checks green: model-proxy61/61, bus1018/1018, CLI999pass+1listed federation skip, pinned-copy10/10, config55/55 and federation runner1/1. Final unit-config fix verified by two new tests and all direct CLI readers. Original F7 red, Mos1604 diagnostic and Mos1605 unchanged rerun are preserved; cause unknown, landing independent. Q250 drops the panel forward; PIN8.0.42/panel1.26.7 unchanged. Evidence agents/magica/work/queue-329/BUILD.md.
2026-10-24 — Magica row329 round2 (#1827): Boyd B1 tightens management keys to printable non-space ASCII before init creates state; new whole-tree refusal cases first reproduced the defect. Header check retained, no old assertions edited. N1 outer Docker count correction, N3 stale-lock recovery and N4 34-code coverage docs included. Cleared dependency-reader gate running; two stand-in over-selections disclosed and removed from the plan per sage-4277, F7 cause unknown. Evidence agents/magica/work/queue-329/BUILD.md.
2026-10-24 — Magica row329 R2 (#1827): B1 ASCII-only management key fix verified with complete-tree refusals and positive auth control; package66/66,30bus readers261/261,49CLI readers726/726,config55/55, no required skip/failure. N1 corrects R1 bus total to1019; N3 stale-lock guidance and N4 34-code inventory corrected. Two over-selected file runs are recorded separately, with no F7 inference; cause unknown/Vikunja625. Old502 test/helper files byte-identical, slot returned to Sage. Evidence agents/magica/work/queue-329/BUILD.md.
2026-10-24T23:37:46Z | Sage | Row 329 (#1827, P1 pinned model proxy, Magica) LANDED 61ebf2c34, pushed 23:31:27Z 10-24. Before: refactor at 669cdf42c. After: Magica's 4 commits (94cde633e, c65fb34ee, d1f6f2b19, 61ebf2c34) cherry-picked onto 669cdf42c, diff vs the gated tree limited to drift paths, range-diff in scratch. Gate: one unchanged full landing gate in /mnt/storage/scratch/sage-r329l/wt (gate.sh 8b4978887 c8a9bcf94), started 23:08:12Z at load 14.35, GATE GREEN 23:29:14Z at load 8.67, no rerun, no test or timeout edit (mos-1634). Host note: two Codex workers cleaned T3 worktrees from about 23:14Z (mos-1639, Vikunja 632). Approvals: Dewey r2 c31643 rev 4047, Boyd r2 c31642 rev 4048. #1827 comment 31650, closed. Vikunja 237 comment 1109 (stays open for P2-P7); C4 P10 red filed as Vikunja 631. Queue: note rev 4063, done rev 4064, committed b24d917ec. DEFERRED: N2 and R2-N1 bound to row 331, N1 bound to P7. Overlap: row 284 (packages/bus/src/broker.mjs) and row 157 (scripts/mosaic-config.mjs) rebase onto 61ebf2c34 before their gates.
2026-10-25T00:15:48Z | Sage | Row 284 (#1789, C2-05c library.get scope, Della) LANDED ce0b6ed41, pushed 00:09:52Z 10-25. Before: refactor at 9e2689dff (row 329 landing docs). After: fast-forward to Della's 7 rebased commits 78b932feb..ce0b6ed41; 8 paths, manifest-r4 de505cfd matches the landed tree. Gate: one unchanged full landing gate in /mnt/storage/scratch/sage-r284l/wt (the 329 gate.sh with D and the compose project renamed), started 23:51:19Z at load 1.62, GATE GREEN 00:09:04Z at load 5.20, no rerun, no test or timeout edit. Counts: bus 1020/0, business 283/0, cli 999 pass 1 allowed skip (FED R7), harness 177/0, library 156/0, seat 218/0, webui 458/0, every scripts/test-*.sh rc 0; queue 34 and task 87/93 skips are the standing ones. Della's whole-file runs on ce0b6ed41: library-lookups 12/0, library-tools 5/0, query 34/0. Approval: Webby round 2 delta c31654 rev 4070 (round 1 rev 4062). Overlap sweep: rows 13, 157, 309, gyro/row310 and fethry/row332-p1 clean. #1789 comment 31655, closed. No Vikunja task for the row. Queue: note rev 4071, done rev 4072, committed 7c8dc2033. DEFERRED: Webby N1 (whole-tree listing per get) bound to the next library read-path row; N2 needs nothing; N3 is this gate.
2026-10-25T00:18:35Z | Sage | Follow-up tasks for mos-1647 item 3 (Q109): Vikunja 633 (P7 cutover, CLIProxyAPI 8.0.42 startup Grok-npm and antigravity version refreshes, from row 332 isolated runs) and 634 (row 284 Webby N1, library get lists the whole tree). DEFERRED gains the 633 entry and the 634 number for row 284 N1. Filing script and receipt in agents/sage/work/vikunja-setup/.
2026-10-24T22:15:07Z | Herb | row 214 #1715 C2-11a focused evidence | Before: wikilinks are ordinary editor text; raw/sig retention keeps no-edit bytes, but the model has no inert node. After: inert inline wikilink atom preserves spelling through neighbouring edits; invalid attrs share HTML/entity escaping. On herb/row214-r2 base487500a16, grant sage-4286 lane B: baseline10/10 roundTrips equal (outcome A); baseline structural0/1 expected red; four whole editor files40/0, both mutants killed0/1 and restored1/0, whole webui69 files455/0 in174.189s with MOSAIC_REQUIRE_EDITOR_BUILD=1, nice19, no skips/cancellations. A mistaken preliminary7-file subset28/0 is logged and excluded from gate evidence. CSS byte-identical, final process sweep0, scratch TMPDIR removed. Filbert candidate review and every scripts/test-*.sh gate remain pending; no click, target resolution or library save change.
2026-10-25T04:36:47Z | Sage | Row 214 (#1715, C2-11a editor wikilink node, Herb) LANDED 3a8e4abad, pushed 04:27Z 10-25. Before: refactor at 78b69e1e6. After: Herb's six commits cherry-picked onto 78b69e1e6 and fast-forwarded. Gate GREEN 04:10:34Z: 18 package suites rc 0 (webui 471/471, cli 999 plus the allowed FED R7 skip), every scripts/test-*.sh rc 0, queue package via test-queue.sh 156. Design skips: queue 34 (not the canonical root), task 87/93 (row 244). Filbert APPROVE c31679 rev 4093. Range-diff equal except commit 5's BUILD-LOG context; 40/41 paths same blob, BUILD-LOG additions only. #1715 closed c31680. Queue note 4094, done 4095, committed ce8bb4d8b.
2026-10-25T04:36:47Z | Sage | Row 193 (#1691, threads user roles design, Morgana) LANDED 35f34ad27, doc-only: five design commits cherry-picked onto ce8bb4d8b, adding only agents/morgana/work/queue-193/DESIGN.md (verify-commit ok, 1 path). Duckworth APPROVE c31676 rev 4088 (posted and recorded by Sage; Duckworth has no Gitea credential). No test reads queue-193. Build rows from the design: 204/#1702, 205/#1703 (landed), 275/#1780, 206/#1704, 207/#1705, 208/#1706.
2026-10-25T04:58:30Z | Sage | Row 255 (#1760, Vikunja 458, bundled Pocket ID design for Q203, Launchpad) LANDED de3e23dde, doc-only: Launchpad's three design commits e29d8ec90, 9f60021a0 and c8f2bc723 cherry-picked onto 775bbe236 (range-diff equal), adding only agents/launchpad/work/queue-255/DESIGN.md. No test reads queue-255. Webby APPROVE round 1 c31689 rev 4103 (posted by Sage; Webby has no Gitea token). Mos rulings in mos-1666: M1 approved with conditions (rollback removes components before the pointer goes back and the STATE check confirms the key is absent; the loader stays strict inside the key; four test-config.sh cases), R1 chosen, M2 dropped. Sage gate check against Q203, O6, REQ-WEB-2 and REQ-INST-1: consistent. One PRD text gap goes to Mos: REQ-INST-2 says the stack writes the providers entry, and R1 prints it for the user to paste. Webby N1 and N2 bind P4; N3-N8 carry into the P1-P6 build rows, all post-v1.
2026-10-25T07:46Z | Sage 1ef1e4f8 | Row288 quiet-host handoff (#645), late phase registration | Before: unchanged diag2 refused exit9 after07:00:05-07:30:18Z with neither base/head processing file started; no fullGREEN/run4 evidence. Faceless READY07:37:14Z and final A02 drain acknowledged. Bounded host observation07:38:31-07:43:31Z produced11 half-minute load/CPU-pressure/process-name samples at /mnt/storage/scratch/sage-r288l/quiet-20261025T073714Z/samples.jsonl. Magica331 r4 occupied the preceding slot until07:41:00Z; after its end, sampled load1 remained8.03/7.97/10.02/9.40/9.22;07:43:36Z follow-up8.97 and no gate visible. After: no288 test or run4 started, unchanged load1<4 precondition unmet. Explicit RELEASE delivered to faceless master sage-4466 and Mos sage-4467;645 c1172 read back, done=true with original title/description preserved. This closes only the bounded handoff/measured-inability/release task; row288 diagnostic and fullGREEN acceptance remain unmet. No thresholds, test deadlines, scheduling settings or running jobs changed. Earlier interrupted/refusal logs preserved separately.
2026-10-25T07:46Z | Sage 1ef1e4f8 | P2/P4 prerequisite state | Magica331 r4 on0965fe1ea under sage-4459 stopped at full-list file69 project-runtime.test.mjs: exact Broker import closure lacks new common.mjs import. Probe30/30,68 full-list files green; aggregate707/706pass/1fail/0skip/cancel;193 remaining files, config and mutants/controls unrun. Receipts8d88a6029; rawlog ee430ce92543c4027b4aa78f343c703fd00bb55433e6ed40d54b61668a5914d4 read. Static trace confirms real sandbox defect: common.mjs and top-level-read PIN absent from RUNNER_FILES, as is new first-output.mjs. Magica holds read-only; proposed pure validation module/two readonly code binds/exact guard revision sent to Mos for scope ruling sage-4468, Q246 independent review still required. Poe prepared e7438743f regression manifest8/8 verified and git show --check clean; product patch unapplied at review. Next test-first404 block CLEAR sage-4469: intended two-caseRED before narrow exactGET404 normalization, then both new whole files+8focused/acceptance/named mutants/controls, stop on unexpected outcome. Global landing gate remains afterP2. No composite green, landing or push performed by Sage.
2026-10-25T08:03Z | Sage 1ef1e4f8 | Row331 r5 narrow review and full-builder verification phase | Before: r4 deterministic import-closure RED retained; r5 focused sixteen whole files181/181 passed, zero skips/cancel, real sandbox/session controls verified with raw16hashes. Fresh independent Claude Opus5.5/high Q246 round1 APPROVE8d88a6029..4948ece0e; no blocker/high/medium. Purity-regex/no-new-test-pre-fix-RED and confined-startup-only limits retained; verdict agents/sage/work/r331-r5-review/round1.json. Full P2/global/landing not approved. Now: accepted fresh import-derived269 list on unchanged reviewed code4948ece0e, packet2ff10ffac: old262 preserved+validation+six sandbox-dependent collateral files. Graph17sources/zero parsefailures, all11packetartifacthashes verified3993f7d3; listfd724dd9 equals graphbed8a700 tests. Runnerdiff changes only comment/artifact filenames/list/count. CLEARsage-4477 wholeprobe->269wholefiles->same test-config->four original mutants/restored controls, same deadlines/flags/scheduling, stop first unexpected outcome/no retries.646 remainsopen. Result pending, not a composite green or landing claim. Mos informed sage-4478.
2026-10-25T08:23Z | Sage 1ef1e4f8 | Row331 r5 full builder verification result | After CLEAR4477, builderblock finishedrc0 at08:19:20Z on2ff10ffac/code4948ece0e, receipt/docd62c69c86; package source unchanged. Independently verified279step logSHA/bytes and exact269inventory, final11artifact/280rawlog(including driver) manifestf1b6ee9b, receiptf95b14d7. Whole2692427tests/2426pass/0fail/1skip/0cancel; probe30+config55 gives2512tests/2511pass/0fail/1skip. FEDR7 scratch acceptance skip explicitly UNVERIFIED until scripts/test-federation-acceptance.sh at its authorized/global stage. Four mutants killed by named behavior; restoredwholecontrols30/30 each and sourcead5b37f3 restored byte-for-byte. Real sandbox11/session13 passed, no confined skips. Childnice19all279, driver16two recorded host-renice observations; no timeout/retry/control edit. Slot returned; no automatic nextgate. FullP2 Boyd first review/credential landing review/Sage global gate and row288 remain outstanding; narrowr5ClaudeAPPROVE is not fullP2/landing approval.646 staysopen. Supplied verifiedBoydID and full-scope handoff requirements sage-4479, Mos informed sage-4480; builder's already-invoked canonical queue move pending, no duplicate mutation.
2026-10-25T08:25:08+00:00 | Sage 1ef1e4f8 | Correction to08:23Z row331 verification entry | The final manifest/check-and-track helper stopped on KeyError bytes before its Vikunja post, because r5-full-driver.log is hash-only; shell continuation appended the08:23 entry prematurely. Earlier independent279step logSHA/bytes/count checks were already complete. Corrected final checker now verifies all11artifacts+280rawlogs: allSHA match, byte counts match wherever supplied; only driver log lacks bytes metadata. Restored sourcead5b37f3 matches allfour mutant events.646 comment1178 posted and read back OPEN now. No product/test or run result changed. Boyd0047 confirms fullP2read-only review underway on d62c69c86/base78b69e1e6, writerC included. Initial queuein-review move refused missing --candidate rc2 without mutation; one corrected candidate-bearing operation remains pending, no duplicate operation.
2026-10-25T08:33:18+00:00 | Sage 1ef1e4f8 | Row331 first full review CHANGES and request fallback | Boyd0049 fullP2review CHANGES onehighB1: runtime modelRuns empty afterrestart until bind, no-launch neverbinds oldpersistedsessions, sweep treats emptyasnoruns and removesretiringkey beforefuturegrace/confirmedstop. Magica andSage source-onlytrace confirm; writerC no otherblocker. No newtest/fixrun. BoundedB1preparation4483 underoriginalP2acceptance: authoritativeidentitycheckedpersistedrunview before retirement, retainfailclosed onunknown/discovery/stop failure, preserve no-launch/no newstopauthority; staticruntime/restartregressions/proposal first, no productfixuntilintendedRED/futureCLEAR. Requestfallback: ownGETuserjarvisverified, canonicalreviewrequest newop4481 completedrev4121/4122 posted31700, readbackauthor/issue/candidate/markersverified. FullBoydverdict relayed verbatim31701 with explicitBoydindependentreviewer/SageJarvisrelay attribution onBoydexplicitrequest, readbackverified; Boydasked4485 torecordCHANGESasboyd againstd62c69c86. Original4119/4120missingMagicacredentialfailurepreserved, no rowmove repeated/sharedorBoydcredentialused. Queuecurrentround1posted; verdictrecordpending.646global/P2gatesstillopen; no landingor288claim.
2026-10-25T08:50:48+00:00 | Sage 1ef1e4f8 | B1/647 intendedRED verified, bounded runtime/focusedGREEN phase | Before: correctednewtestca0e83337 onunchangedproduct4948ece0e ran EXACTONEwholemodel-restart under4490:12tests/2pass/10fail/0skipcancel, all10expected old-key-remotely-installed assertions, bothboundnonrunnerstop/confirmeddeadcontrolspass. No fixture/control/cleanup/observer/timeouterror. Raw13f41a18/19069bytes/names/counts and5producthashes independentlychecked; receipte99d225a/resultmanifeste69b1ac9 match, evidence-only41e909bcc. Now:4491 authorizes b1-proposal six-step minimalruntime.mjs-only implementation/privatehoststricthelpers andfocused8wholefiles(newrestartfirst). Seedauthoritativecheckedpersistedviewbeforetimer, mergeboot/fresh/bound, unknown/discovery/identity/stopfailure retains; no-launch/no discovery-derivedstopauthority preserved. Samepublicschema/refusal/IPC/mount/config/writer/grace/stop/timer/oldassertion/deadlines; ifruntime-onlyinsufficientstopforruling. Focused stopfirstunexpected/noretries, noautomaticfullgate/landing.647c1180readbackOPEN; freshnewcandidate/fullreview/Q246/global/FEDR7/288acceptance outstanding. Mos4492informed.
2026-10-25T09:01:42+00:00 | Sage 1ef1e4f8 | B1/647 boundaryRED verified, exact two-file/focusedGREEN resume | Boundary4495ONEnewwholefile produced2tests/0pass/2fail/0skipcancel; bothintendedMissingexpectedrejection(prePUT/prelocaldelete), no fixture/cleanup/timeoutfailure. Raw911d2a59/1994bytes/exactnames/counts/5unchangedproducthashes checked; receipt7fa8e123/resultmanifest8c49df81 match; evidenceonlyc90dcc4b1, original12RED41e909bcc retained/notrerun. Conditional4493/Mos1702prerequisite met. RESUME4496minimalruntimecheckedpersistedboot+fresh+trustedboundview plus EXACTprivateModelKeysconfirm-at-two-boundaries delta only; preserve no-launch/no newstopauthority/strictidentity/unknownretain/confirmedexit; no publiccontract/mount/writer/refusal/timer/grace/assertion/deadline change. Focused9newrestart12thenboundary2thenexisting7wholefiles, sameflags/nice/privatecfg, stopfirstunexpected/noretry; no automaticfull/mutants/landing. Newcandidate/freshfullP2/Q246/global/FEDR7/288acceptance remains. Mos4497informed.
2026-10-25T09:11:09+00:00 | Sage 1ef1e4f8 | B1/647 focused result and fullbuilder phase | Code81cbdea37 changes only runtimeprivateinventory and exactapprovedModelKeysconfirmdelta; bothpreviousREDphasespreserved. Focused4496ninewholefiles131/131,0fail/skipcancel, nine rawSHA/bytes and receipt6c2ff448/resultmanifest78c1b8fa8artifacts+10rawlogs(incldriver) verified. Candidatecontent704a2469all111Gitblobs/pathinventory checked; testedsourceunchangedinevidencepacket e5a4ade07. Realconfinedstartup/sessioncontrols pass; sleepfixture doesnotproveauthorizedrealrunnerSIGTERM, limitretained. Freshfull271list=old269+exactrestart/boundary2, graph17sources0parsefailures/all271match4e01c2e8, listd6b403f0, all10fullpacketartifacts007a2adf match. Runnerdiffonlycomment/artifactnames/listcount. CLEAR4498probe->271wholefiles->sameconfig1800->4namedmutants180000+restoredcontrols, sameflags/priority/privatecfg, stopfirstunexpected/noretry/no extrarun. Resultpending; FEDR7unverified/freshfullP2round2/Q246/global/landing/row288 remain.647c1183readbackOPEN; Mos4499informed.
2026-10-25T09:35:26+00:00 | Sage 1ef1e4f8 | B1/647 newfullbuilder result and reviewROUND2 | Builder4498rc0/code81cbdea37/checkoute5a4ade07, evidenceonlyd817e5840/sourceunchanged. Independentlychecked281stepSHA/bytes/exact271list;whole2441tests2440pass0fail1FEDR7skip, probe30/config55->2526subtotal2525pass0fail1skip. All4namedmutants killed andrestored30controls/sourcebf96f941, all281driver/child19atstarts; no retry/timeout. Result20347f8a all11artifacts+282rawlogs(incldriver)verified;FEDR7UNVERIFIED/global/realrunnerSIGTERMlimitsretained. NewfullP2Boydround2request4501 includesoriginalB1/response/currentwholeP2/evidence/limits; notnarrowreview. Sequentialownerqueuetransitions4500pending. Queuecandidate standard33pathSHAmanifestfb0a7b68 pinsallchangedsource/test/script/publicdocs+DEFERRED; onlyappend-onlylogs/agents evidence excludedfromqueuepinbutretainedin111content/fullresultmanifests. Scopechoice+tradeoffstoredround2-source-scope.json: permittracking/evidenceevolution withoutweakeningsourcepin. Formalround2request/verdictrecordsawaitreceipts; freshfullClaude/Dewey/global/FEDR7/288stillrequired.647open/Mos4502informed.
2026-10-25T09:41:59+00:00 | Sage 1ef1e4f8 | Full P2 round 2 source approval and security review | Boyd0053 independently APPROVE whole P2 base78b69e1e6..d817e5840/source81cbdea37, B1 closed, no actionable findings; this is not landing approval or a recorded queue verdict yet. His 111-source-blob/11-committed-artifact checks and coverage limits remain attributed. Fresh full P2 Claude Opus5.5/high Q246 review dispatched as a NEW delegate_task, clientRequestId sage-4503-r331-full-r2-q246; prior narrow r5 approval is not reused. Dispatch metadata saved full-round2-dispatch.json. Review is read-only committed Git, no tests/proxy/live data or external writes. Queue owner moves succeeded4124/4125, round2 opened;4126 request failed due unset Magica credential, preserved in6a645188d. Sage GET user again verified jarvis; one canonical existing-round2 fallback request sage-4504-row331-round2-review is RUNNING(exec3218), not yet claimed posted. No duplicate operation; candidate fb0a7b68 unchanged.647 open; fresh review, recorded approvals, global/FEDR7/landing/row288 acceptance remain.
2026-10-25T10:03:36+00:00 | Sage 1ef1e4f8 | Full P2 round 2 corrected CHANGES / bounded preparation | Canonical fallback4504 completed4127/4128, request31702 read back jarvis/issue1829/round2/frozen33path fb0a7b68. No pending Sage queue operation. Initial independent Boyd APPROVE0053 relayed31703; fresh full Claude Q2464503 REQUEST_CHANGES saved full-round2-verdict.json and relayed31704, full range78..d817/source81. Original B1 closed but M1 terminal evidence lost on later PID reuse and M2 proxy admission suppressing historical recovery end/release are confirmed. Boyd0054 independently adjudicated CHANGES, superseding his assessment31703 without rewriting history; exact attributed correction31705 posted/read back. Boyd4515 instructed formal-pin verification then one CHANGES record as actorboyd; no round2 verdict record claimed yet. Prior narrow r5 approval and all builder receipts remain scoped; 271-file green cannot prove untested M1/M2.
Static source trace confirms known inventory loses terminal observations and exact old Broker launch matching precedes cleanup only after runtime admission; claims persist. Magica4513 authorised TEST-ONLY preparation, no product/Node/test/proxy/mutant/queue/newround launch: M1 sticky per-exact-identity strict confirmed-exit proof, separate outer/runner, stale registry protection, initial corrupt ticks/key still HOLD; no blanket mismatch=>exit or authority expansion. M2 persisted launch/claim restart matrix and negatives, exact Broker-owned cleanup proposal before any contract change; no usable cap/modelRuns/rotation-stop authority from cleanup. Marker direct-confined test may be drafted without mount expansion. L1 isolation and L3b orphan-key rehire confirmed; precise scope/repair proposals with Mos4514. L2 missing-boot hold documented tradeoff and L3a race remains fail closed. First-output clock currently starts at session launch before any model turn; Mos4511 owner-intent ruling pending, no timing/protocol edit. Source81/candidatefb0 frozen, global/FEDR7/row288/Dewey landing remain unfulfilled; no source approval or landing.
2026-10-25T10:06:00+00:00 | Sage 1ef1e4f8 | Mos1703 consolidated P2 intent/scope | Clock intent settled by Mos technical D17 reading, not a new Jason quote: one existing120s first-output budget starts at FIRST actual adapter/model turn; idle before it unarmed, no per-turn reset/extension. Task650 requires exact brief amendment/method/caller/marker delta + idle/silent/output/direct-confined cases before any product/run CLEAR. M1 task648 strict per-identity independently monotonic outer/runner confirmed-exit proof under existing absent/reaped rules only; no first mismatch or prior-live mismatch inference, no stop authority. M2 task649 Broker-owned exact immutable UNENDED cleanup, no capability/modelRuns/rotation-stop binding/new launch; exact unapplied contract/caller/negative controls must return to Mos. L1/L3b task651 static proposal/test-only prep authorised: independent instance work followed by original first error, unchanged1s/refusal; post-registration state/confirmed membership vs removed orphan/fresh issuance rules, no stale-key restoration. L2 documented hold accepted, L3a race explicit fail-closed follow-up.
Sage4517 delivered full bounded ruling to existing Magica thread; M1/M2 packets should return independently of clock/lows. Parent independently GET-read tasks647-651 OPEN/project19/owner Sage title; receipt mos1703-task-readback.json. Updated review ledger and saved exact relay. No source edits, Node/tests/proxy/sandbox/mutants/queue round/global/landing/row288 CLEAR. Boyd's ONE CHANGES record0002 remains pending per0055; no duplicate or inferred success.
2026-10-25T10:06:40+00:00 | Sage 1ef1e4f8 | P2 R2 formal CHANGES receipt | Boyd0056 definitive original command exit0; parent independently read canonical row331 round2 receipt opboyd-331-verdict-0002/rev4129/reviewerboyd/CHANGES/comment31705/frozenfb0a7b68 and exact manifest text/digest. Sole round2 verdict receipt is CHANGES; prior APPROVE31703 was never recorded. No pending Sage/Boyd queue operation; do not repeat. Saved round2-boyd-canonical-verdict-result.json and updated ledger. Mos1703/Magica4517 static-only prep648-651 remains unchanged, no product/test/newround/global/landing/row288 grant.
2026-10-25T10:19:11+00:00 | Sage 1ef1e4f8 | M1/M2 static packet review and M1 intended RED CLEAR | Inspectedbc6942412/test-onlynewmodel-terminal-proof7/model-historical-cleanup17/sharedfixture and exact UNAPPLIEDruntime/Broker+IPC proposals. Bothpreparedmanifests3666f737/b818438d each6artifacthash/bytes+9producthashes independently verified against source81; packages diffONLY3newtest/helperfiles. M1 independentownchildrenexit/reap, originalsweepcompletion observer, exactformerownPID syntheticproc only/restorednamedbuiltins+signalguard; firstcorruptticks/keyhold controls unchanged, no actualPIDreuseclaim. M2 actualStoreclose/reopen/persistedclaim/Launcher recovery, no fixturecleanupimplementation; oldfailures behavioral notundefinedfuturemethod.
CLEARsage4520 EXACTONEwholemodel-terminal-proof file pre-fix onsource81/testpacketbc6942412; expected2RED/5GREEN only, notobserved. Samewholeflags/nice19/measuredprioritiesload/privateconfig/cleanup/no retry/no productfix/M2/extra check/newround. Stop/reportwholefile; slot pending. M2 has NO execution CLEAR yet. SentMos4521 exactM1diffSHAa9189c01 andM2diffSHA92f3b899: new trusted recoverLaunch LAUNCH_OPS/Broker-ownedproof/sharedendSession/caller replaces bind+endRun, no cap/runs/modelRuns; real contract needs ruling beforeimplementation. Mos1703 required exactunapplied proposals now supplied; no global/landing/288 claim.
2026-10-25T10:21:52+00:00 | Sage 1ef1e4f8 | M1 intended RED verified / M2 intended RED CLEAR | M1sage4520 onbc6942412/source81 whole7exact5pass/2intendedfail, no skip/cancel/timeout/observercleanupfailure. Parent independently verified raw7562b5b6/7232bytes/all7names+assertions/counts; failedlatergenerationretirement andinitialcorruptkeyalreadyexitedretention, all5refusal/livecounterpart controls pass. Ownchildren exits/reaps precede syntheticproc; NOTactualOSreuse. FinalnoSignalscounterassertion inexpectedfirstfail wasnotreached; guard/interceptionrestoration remaincode/cleanup evidence, nooverstatement. Evidence-onlypacketpending; reportreceiptcc1726d6. Parent CURRENTcheckout9producthashes==81 +all6M2artifacthashbytesverified.
Mos1704 ACCEPTSexactM1a9189c01 +M2trustedcontract92f3b899 CONDITIONAL onbothintendedRED andboundedfocusedpacketinspectionbeforeapply. Sage4522 CLEAREDONLYONEwholeM2model-historical-cleanup file onunchanged81/pinnedtests; expected17/9pass/8failnotobserved, samewholeflags/nice/privatecfg/measurements, stopafterfile/no retry/productfix/extra/queue. Requestedstaticfocusedinventory/candidateplan plusNEWtest-only actualtrustedprocessIPC dispatchcoverage; existing17inprocessstandin isnotIPCproof. NoIPCtestexecutionorimplementationyet. Mosconcreteresult4523delivered. Old647REDs/narrowr5review/fullreceipts preservedatactualscope; no clock/lows/global/FEDR7/288/landing CLEAR.
2026-10-25T10:23:52+00:00 | Sage 1ef1e4f8 | Both M1/M2 intended REDs verified; implementation held at focused prerequisite | M2wholeRED4522 source81/testbc6942412 exact17tests9pass8intendedfail0skipcancel, no timeout/fixture/control/cleanupfailure. Independently rawf5f7a22e/15148bytes+all17names/outcomes/8namedassertions match preparedmap; CURRENT9productpaths byteidentical81. EarlierM1exact7/5pass/2intendedfail rawverified with signalcounter-notreached and synthetic-onlyreuse limits retained. Parent independentchecks saved separately; builderreceipt M2reported5aff9915, committedreceipt-manifestverificationpending.
Bothrawprerequisitesnowverified, notimplementationCLEAR: inspectstaticfocusedwholefileinventory/controls/newcandidateprovenance andactualtrustedprocessIPCcoveragepacket first (existing17inprocessonly). Magica0066preparingstaticpacket, no productfix. Mos4524 concrete result / Magica4525 verified nextprerequisite delivered. Tasks648/649 comments posted/readbackOPEN [{"task": 648, "commentId": 1190, "readBack": true, "done": false, "bodySHA256": "173c05ddd38776b94c2d29b3e3d6a21877f47de071059593e27fb0661fe78c8a"}, {"task": 649, "commentId": 1191, "readBack": true, "done": false, "bodySHA256": "2944d5578dafc77d47e6ab9e2b3d851a3216ac271f3cc64811f2bf34b3b7f33e"}]. Exact2diffconditionalMos1704 scope stays; clock/lows separate, no additionalexecution/newround/global/FEDR7/288/landing authority.
2026-10-25T10:32:33+00:00 | Sage 1ef1e4f8 | ActualIPC/focused prerequisite inspected | Magica0067 separateM1/M2 evidencec3eb95242 andstaticIPCpacket05d6a3336. Parent verifiedbothREDresultmanifests a5d5c48c/14059b83: each9committedartifacts+2raw/driver hashes, byteswherepresent/beforeafterequal. No earlierreceiptverificationpending. ActualIPCpreparedmanifestc5373f1d all11artifacts+9unchangedproducthashes/currentfilesverified. New9cases realstartHostfork->processboot->runtime/Broker, requiredreaderboot, ownedhost-firstcleanup, persistedSQLiteclaim/endhistory, directops+actualLauncher; no mockeddispatch. Existingordinaryfreshadmission/no-launchcontrolspreserved, newrefusalsmustleavechannelusableafterfix. OldunknownIPCpathcancloseownhostasintendedRED, notclaimednewchannelproof.
AcceptedboundedFOCUSED20wholefiles exactb5448102 +staticdependency/forkjustification: threeM1/M2/IPCregressions, originalrestart/boundary/modelkeys/stop/proxy, Broker/routes/import/sessions/threadclaims/end/process, seatrealconfinedsession/sandbox, CLIhost/launcher/sessionlaunch. Currentcandidateprovenanceplanretainold81/fb/R2CHANGES; correctedproductcommitAFTERapplicablefocusedGREEN, contenthashcanfreezeuntestedworktreefirst.
CLEARsage4527 EXACTONEwholemodel-historical-ipc.test pre-fixsource81/05d6a3336test expected9/2pass/7intendedREDnotobserved. Samewholeflags/nice19/measuredpriorities/load/privatecfg, actualforksnooverclaimedmeasurement; stop/reportwholefile/no retry/fix/otherfile/mutant/queue. ImplementationNOresumeuntilintendedIPCREDverified; exactMos1704two-diffscopeonlyafternewCLEAR. Mos4528informed. No clock/lows/global/FEDR7/288/landing grant.
2026-10-25T10:36:24+00:00 | Sage 1ef1e4f8 | All intended REDs verified / EXACT M1+M2 focused resume | ActualIPCRED4527 on05d6a3336/source81 exact9tests/2pass/7intendedfail0skipcancel, nofixture/harness/cleanup/timeoutfailure. Parent raw6ba10393/13478bytes/all9names/outcomes+assertionschecked andCURRENT9producthashes81. Separateevidence07292713b/resultmanifest16f058a1 all9committedartifacts+2raw/driver hashes/byteswhereprovided checked, machine testedCheckout05d6a3336 andbeforeafterequal. Human-summary e05typo remainshistorical, machinepin correct. Limits: onlyfirstdirectopcapturedinvalid-host-request; otherpredicateinnercodesnotcaptured andpostrefusalchannelassertionsnotreached. Nestedforkpriorityinheritednotindividuallymeasured; no pre-rootlockinventoryassertion.
AllMos1704conditionsnowmet: bothoriginalM1/M2intendedREDs+actualIPCREDverified, acceptedfocused20exactlistb5448102/dependency/realforkpacket/newcandidateplan inspectedbeforeapply. RESUME/CLEARsage4529 EXACTcombinedM1a9189c01 +M292f3b899, ONLYfourproductfiles broker/runtime/process/launcher. Freezeappliedsource/testcontent/runner/listbeforeexecution andcompareagainstexactcombineddiffs. Run20serialWHOLEfiles orderfrozen, sameflags/nice19/actualmeasurements/privatecfg; STOPfirstunexpected/no retries/fixtureassertiondeadlineedits/otherrepairs. IPCGREENmustreachpreciserefusal/channelguards/no cap/no proxyPUT/modelStallbinding; M1mustreachnoSignalscounterafterretirement. Confinement unavailable=UNVERIFIEDnotgreen. CommitproductONLYafterapplicablefocusedGREEN, thenmapcontenttocandidate. Readonlypinnedparsergraph/list/fullpacketpreparationafterGREENallowed; full/mutants/acceptance/newround remainSEPARATECLEAR. No clock/lows/global/FEDR7/288/landingauthority. Mos4530concretestate delivered;647-651open.
2026-10-25T10:45:39+00:00 | Sage 1ef1e4f8 | M1/M2 focused GREEN independently verified / final gate sequencing | Magica0071SLOTBACK4529: all20wholefiles254/254pass, zero fail/skip/cancel/timeout. Parent resultmanifest5596c74f all7artifacts+20rawSHA/bytes andcounts verified, frozen29files38c7a9e6/source26e3aef0 unchanged; separately appliedbothacceptedpatches to81 inownedtempscratch andbytecomparedall4products. ProductcommittedAFTERGREEN5868d77f18abeb01d2822cb475df48ce1336ae58, packet860582c27. All180content63642ecf blobs+37fullsourcebehavioura1cec8b5 entries independently checked; frozen29testedfilesmapexactlycodecommit, no oldtests/ModelKeys or packet-tip packages/scripts/DEFERREDdelta. IPC9 now reachesexactrefusal/channel-survival/no-cap/no-proxyPUT/modelStallrefusal/claimrelease/fresh/no-launchassertions; M1reachesnoSignalscounter; actualsandbox11/session13 passnonskip. RealOSreuse/realrunnerrotationSIGTERM/nestedforkprioritymeasurement/independentpre-rootlockinventory NOTclaimed. Manual0070header time correction10:39:41Z retained; rawmeasuredtimestamps unchanged.
Fullpacket98e601a9 all13artifacts/list274/graph17 verified: prior271retained+EXACT3newtests, no othercollaterals/omissions; fullrunnerdiff onlycomment/evidencenames/listcount. UNEXECUTED/no fullCLEAR. Sage4531 toMagica immediateALREADYauthorisedSTATIC650clock/651lowcontracts+testprep; finalwholebuilder+freshfullP2/Q246reviews sequencedafterremainingknownsourcecontractssettle tovalidatefinalsource, no scope/gatewaiver orcompositegreen. Mos4532concreteresult/orderinformed; anyacceptanceorderingconflictreturnedbeforeextraexecution. No650/651productedit/run/newqueue/global/FEDR7/288/landinggrant. Tasks648/649updated/readbackOPEN [{"task": 648, "commentId": 1192, "done": false, "readBack": true}, {"task": 649, "commentId": 1193, "done": false, "readBack": true}];647-651remainopen.
2026-10-25T10:52:07+00:00 | Sage 1ef1e4f8 | Static651 L1/L3b inspection before RED | Magica0073 prepared0ec63de70: independent each6artifacthash/bytes+9unchanged5868producthashes match L1manifest3b73bbcb/L3bbe635be2. NoNode/run/productchange. L1exactdf4ee0f4 per-instance try/catch serialsweep/firstErrororiginal/rethrowafterothers/valuefreeoutcomes meetsdirection, sentMos4535forcontractruling. New4tests expected3RED1GREENnotobserved. L3b46e68bc6 postregisterhold+freshsentinelledmembershipbeforecachedreturn/freshkeyGETPUTGET ifmissing preservesold.retiring, new6unitexpected5RED1GREENnotobserved. Concretebranch discrepancy: explicitrotate appendsoldcurrentevenifconfirmedabsent while reportclaimsnoinventedretiring; recommended appendonlyrotate&&present, exactstate/rule returnedMos4535beforecode.
Sage4534 STATIC corrections only: fixture valueFree losesclosedorremovedmodelkeys, requireimmutablehistoryscanningallfixturessecretvalues withoutprinting; attemptallownedcleanup. Requireexactstate/table/preservationcontrols andseparateactualruntimeorganizationhireorphan+failure/revokingmembershipcontrols, notcontrollercontinuationoverclaim. L1mayreturnindependentlyofL3b/650. NORED/CLEAR/productimplementationgranted; clock650staticcontinues. Task651comment1194posted/readbackOPEN. Finalfull274/reviewsremainunexecuteduntilstablecandidate; no gatewaiver/compositegreen/global/landing/288.
2026-10-25T10:57:41+00:00 | Sage 1ef1e4f8 | Mos1705 exact low-branch ruling and L1r3 intended RED verified | Mos1705relayed4537: L1removeunconditionalcomplete receipts, keeprefused-only/existinglifecycle receipts/1s+firsterror; addnoopreceiptcontrol. L3bpreserveold.retiring ALLbranches, appendcurrentONLYrotate&&confirmedpresent, noabsentcurrententry; initial/postregisterhold/freshserializedGET/sentinel/GETPUTGET/privatepersistbeforepublication unchanged. Fulltable/no-record/revoking+actualruntimehirecontrolsbeforeRED, noimplementationgrant.
Magica0074helperr2history/canary/guardedcleanupinspected; correctedL1r3 745875432exactdiff93e4de1e andmanifestd2a62d03 all6artifact/9CURRENTproductbytes5868verified. CLEAR4538 ONLYonewholemodel-sweep-isolation file unchanged5868/pinnedr3 expected5/2pass/3RED. SLOTBACK0076 actualexactexpected, zero skip/cancel/fixture/cleanup/timeout. Parent resultmanifest89adad47 all8artifacts+raw416ec873/3514bytes/allnames/assertions/counts/beforeafter+CURRENT9productsverified. Exactoriginalfirsterroridentityassertion passedbefore laterfailure visitation; bothnormalretirement/historycanary and3no-op/no-churncontrolsGREEN. Ownedroots0/nolivechildfixtures reported. Evidencecommitpending; no productfix oradditionalrun. Mos4540/Magica4541verifiedstatusdelivered. Task651c1196readbackOPEN.
No L1implementationresume: boundedfocusedplanneeded; L3bcompletebranch/runtimepacket+650clock stillSTATIC on5868. RejectedPUTpayloadcapturehistoryrequestedAFTERL1slotback/newpins (currenthelper503beforebody missesattemptedfreshvalue), oldexecutedr3anchorpreserved. Final274/fullreviewpacketstaysunexecuteduntilstablefinalscope; Mos1705acceptssequencing, no gatewaiver/compositegreen/global/FEDR7/288/landing.
2026-10-25T11:03:27+00:00 | Sage 1ef1e4f8 | Clock650 static protocol inspection / no run | Magica0077 clockpacket994ead40a b26004a3 independently8artifacthash/bytes+5unchanged5868productpins verified. ExactUNAPPLIED0875b66f+D17amendment3ea62438 returnedMos4543 beforeimplementation/RED: adapterchildspawn armingboundary, newexportinexistingmountedfirst-output, ownrunDiratomic0600temp/linknoreplace, bounded64byteNOFOLLOW/NONBLOCKread, absentunarmedvsnewmalformed/future/unreadableimmediatestallpolicy, internallegacydefaultfalse/managedtrue. SharedclockoriginLinuxINFERENCEfromprimaryNodeHrtimeBigInt->uv_hrtime->preciseCLOCK_MONOTONIC pluslocalsandboxuser/pid/ipcnamespacesnot-time; actualbwrapboundsuntested. Upstreamsource/doclinks savedclock650-static-inspection.json; no localNode execution.
Foundstaticnewreaderdefect: .toString(ascii) strips highbitsperofficialNodeBufferdocs, so proposedexactASCIIvalidationnottrue. Mos4545/Magica4546 sentstrictUTF8+ASCIIregexorrawbytecheckrevision/highbitnegatives; original0875byteshistoricalnotacceptedfinal. Magica4544 additionalSTATICnegatives symlink/FIFO/nonblocking/size/mode/shape/zero/future/lateembeddeddeadline andproducer-spawn-callbackfailurecleanuptrace; no broaderhandler/sourceeditwithoutcontractruling. Current3newfiles9casesexpected5RED4GREEN NOTobserved; no clockRED orproductCLEAR. Task650c1197posted/readbackOPEN. L1evidence2a2b0136b committed8artifactsnowverified; originalL1REDrawalreadyverified. L3bfulltable/runtimepacketstatic. Noactivegate/queue, product5868 unchanged; finalfull274/reviewsunexecuted/no gatewaiver/global/FEDR7/288/landing.
2026-10-25T11:07:40+00:00 | Sage 1ef1e4f8 | Mos1706/1707 clock boundaries relayed, exact revised bytes pending | Sage4548 relayed1706: successfuladapter/bin/shspawn acceptedboundary; embeddedonce120deadline/firstoutputcancel/readNOFOLLOWNONBLOCKregular0600currentuid<=64positive-nonfuture acceptedLinuxinferenceonlypendingrealconfinedtest. Invalid/future/unreadable=>singleexistingtrustedstop/valuefreereceiptaccepted; ENOENTunarmed. Internallegacywatcherdefaultfalse acceptedONLYmanagedlaunchertrue/no userconfig. StrictrejectANYbyte>127 beforedecode+exactASCIIshape, highbitprefix/digit/newline+extra/trailingcontrols required; original0875NOTacceptedbytes. Producerfailure mustbecaughtwithinlifecycle, ownedgroupboundedTERM/KILL+reap, controlledcleanup/exit/nolaterturnfirststamp/fixeddiagnostic. TempownershiponsuccessfulexclusiveOPEN, guardwrite/close/unlink/collisionpreexistingneverremoved. Revisedexactdelta beforeclockRED/productCLEAR.
Sage4549 relayed1707: preserveNONPROXYbehavior, no unconditionalnewhardlink/timestampdependency, no session.json/publicconfig/envschema; smallest internaloptin within4files, host-ownedrunDirmarkerproposalallowedbutexactbytespending, addnonproxycontrol. Parent read-onlycallertrace runTurnlanding540/message581/retry630, top-levelawait/eventcallbacknocatch; mainnormalserver/toolcleanup androle.release onlyEXIT.stopped; hostexitendRunreleasesclaim/records/unregisters/lockcleanup. Senttrace/no genericcatchclaim/clearescalationtimerafterchildclose/reap. No parentorchildproduct/testexecutiongrant.
OriginalL1RED4538/evidence2a2b0136bverified; L3bowner-resolvedstate/runtimepacketstatic; currentproduct5868 unchanged/focused254, full274unexecuted/finalfullfreshreviewsafterstablecontracts. No gatewaiver/global/FEDR7/row288/landing authority.
2026-10-25T11:21:49+00:00 | Sage 1ef1e4f8 | L3b exact scope, fixture diagnosis/correction, both intended REDs verified | Inspected311f49d51 L3br3 manifest3305ad47 all10artifacts+9CURRENT5868products; full14controller/3actualruntimehire/sharedhistoryrejectedPUTbefore503/guardedruntimecleanup. Exact43c14 #issue only matches1705resolvedtable. Mos1708 conditionalexactcontractaccepted, EXISTINGmodelOrganization failedhirecleanupaccepted unchanged: existedfalsebeforeorphanregister canrevoke/deleteconfirmedunpublishedorphan onfailure; controllerfileimmutabilityonly, runtimeexactmembership/no stale restoration/nousablecredential, NOTnoHTTP/immutableorphanfile/atomicrollback. No wrapperedit.
InitialCLEAR4551ONEcontroller endedUNEXPECTED14/4pass/10fail:7intendedassertions+SETUPcredential-format2/13/14. Parent verifiedraw8b61b9d8/11487bytes andCredentialsinstant exacttoISOString validation; newfixturetimestampslacked.000Z. Stopped/noauto-retry.4552authorisedONLY3canonicalnewfixtureliterals(controller2/runtime1), noassertion/deadline/helper/productweakening. Unexpectedevidence6f12b6df7/resulta6c1a31b8artifacts+rawverified/preservedseparate. a27f07e20 r4manifest814d2849 all11artifacts+9CURRENTproductsverified, bytecomparison EXACT3timestampchanges vs311only2testfiles; originaltestblobspreserved.
NewCLEAR4555ONEcorrectedcontroller actual14/6pass/8intendedfail1,2,3,4,5,7,8,10;controls6,9,11,12,13,14GREEN, no setup/cleanup/timeouts/skips. Parent verifiedresultf3d609e98artifacts+raw364f864f/8743bytes/allnames/assertions/current9products. SeparateCLEAR4557ONEruntimehirefile actual3/0pass/3intendedfail, parent verified6cf6235e8artifacts+rawe36fb211/2855bytes/names/assertions/products5868. Realinprocessruntime/Broker/SQLite/organization/fakeHTTP NOTprocessIPC. Evidencecommitpending; no productfix oradditionalrun. Mos4553/4556/4558/4560resultsrelayed; Magica4559nextfocused/candidatepacketbeforeapply. L1r3+L3bexactproposalsstillUNAPPLIED.
Source-onlycross-scopehypothesis4554: knownliveoldcurrent ->confirmedremoteabsence->newgenerationdropsoldcurrentmetadata ->M1keyassociationcanholdbeforeterminalproofevenafterOSexit. Mos1709 created652/openproject19ownerSage, explicitlyUNVERIFIEDconservativeavailabilityinteraction NOTconfirmedregression/blocker orpermanentacceptedlimit. STATICregression/proposalonly relayedMagica4557; exact5868+accepted43c14combinedcontext/ensure-rotate/separateouter-runnerOSexitvsterminalproof/laterretirement/staleRegistry-norun-corruptkeynegatives/map/minimalfuturewholefile scope withnextfocused/implementationpacket. NOextraexecution/fix/keyguardweakening/oldkeyretiringre-add/remoterestore/knownerasure/stopauthority. Finalfullreviews MUSTreceivependinginteraction+eventualexplicitdisposition. Currentruntimetestpathnotblockedby652prep.
Tasks651/652updated/readbackOPEN [{"task": 651, "commentId": 1200, "done": false, "readBack": true, "title": "Full P2 low findings: record L1-L3 dispositions and bounded follow-ups (owner Sage)"}, {"task": 652, "commentId": 1201, "done": false, "readBack": true, "title": "Investigate M1/L3b lost key association and later retirement availability (owner Sage)"}]. Currentproduct5868/focused254 unchanged; noactivegate/queue. AwaitexactL1r3+L3bfocusedinventory/candidateplan+652proposal and650revisedprotocol/strictbyte/fatalcleanup/nonproxyoptintests; finalfull274remainsunexecuted, no gatewaiver/compositegreen/global/FEDR7/288/landing.
2026-10-25T11:24:51+00:00 | Sage 1ef1e4f8 | Bounded low-focused packet and652 static proposal inspected beforeapply | Magica0083 packet13d6782dd manifest4ded0ff6 independently33artifacthash/bytes+CURRENT9products5868verified. ALL3 intendedREDresultmanifests recursively8committedartifacts+raw EACH verified, L3b pendingcommitverificationresolved; unexpected4551remainsseparate. Exactfocused23 list7f07e95e=3newL1/controller/runtime first +old20unchangedorder/noomission. Parentindependentownedtempscratch apply EXACT93e4de1e+43c14 to5868 ModelKeys gives815b92c8e0b7b6eca8495ea745c0ec7cfdc91296a44d9b0a62b94ed9b5bc9e1d, no worktreeapplication. Freezeactualcandidate/base/list/runnerbeforetest/commitafterGREEN planinspected; productModelKeysonly/no wrapper/reconcile/runtime/clock change.
Read652STATICproposalb993ae6e andcontext713110d6: no testauthored/executed/fixselected. Old5868ensurefailsknownL3bsetupprecondition/rotateappendstheoldcurrent; combinedacceptedbranchdropsabsentold thenhypothesizedincompleteproofassociationhold afterobservableOSexit. Proposedfuture1runtimefile ensure/rotate×staleRegistry/[]+terminal/no-run/corrupt/ticks/partial/changedidentitycontrols, no guardweakening/erasure/re-add/authority. RemainsUNVERIFIED/notblockerorpermanentacceptedlimit.
Mos4562 EXACTimplementationprogression+652scopeRULINGrequested: recommendonlyaccepted2lowdiffapply+inspected23focusedGREEN thenMEASURED652followupbeforefinalreview, firstauthoriseSTATIConefiletestpreptheninspect/separateboundeddiagnosticCLEARonfrozencombinedcandidate; noadditionalfix/limitbeforeevidence. Magica4563verifiedpacket/stateinformed NOapply/focused/652testauthoringgrantyet; existing650staticworkcontinues. Noactivegate/queue/productchanges;5868current/focused254,full274UNEXECUTED, freshfullreviews/global/FEDR7/288/landingstillunfulfilled.
2026-10-25T11:29:08+00:00 | Sage 1ef1e4f8 | Mos1710 exact low implementation resume, staged before actual run | MosauthorisesONLY93e4de1e+43c14 appliedto5868, soleModelKeys productblob815b92c8; exact23wholelist7f07e95e. D2requiresSAGEinspectactualdriver/list/config/baseHEAD/uncommittedcandidateblobs/soleproductdelta/all23tests/sharedinputs/9baselineproductsBEFORErunning. Relayed4564apply+freezeactualpacketNOWbutNOtestexecutionuntilparentinspectsandissuesactualrunCLEAR. Samewholeflags/nice/privatecfg/stopfirstunexpected/no retry/testhelperassertiondeadlineedit/extras; productcommitafterapplicableGREEN/mapfrozenblobs, receipt-tipsdistinct. No wrapper/reconcile/runtime/clock/guard/timer/refusal/authoritychange.
MosD4choosesMEASURED652followupbeforefinalfull-reviewacceptance. ONLYAFTERfocusedGREEN newcandidate frozen: staticauthorship/preparation1futuremodel-key-loss-interaction runtimefile/neededapprovedtesthelper underb993/context713/ownprocesses/realHTTP/originalsweeps/matrixnegatives andexplicitOSexitvsproof; NOexecution/prodseam/fix/guardweakening/implicitpermanentlimit/blockerclaim. CompletepacketthenSEPARATEdiagnosticCLEAR. FullfinalP2/Q246briefspreserveunresolvedinteraction+eventualdisposition.650staticindependent, finalfull/Q246/global/FEDR7/288/landingremain. Currentlaneidle/noqueueop; pendingactualappliedfreezeinspection.
2026-10-25T11:35:16+00:00 | Sage 1ef1e4f8 | Actual low pre-run packet inspected / RUN CLEAR4565 | Magica0084 soleModelKeys exact815b92c8 appliedUNCOMMITTED; receipt-only46c00e741, basebeforeapply13d6782dd. Parent verifiedmanifestd142c7ba10artifacts+CURRENT36frozeninputs0ebc27f9+41SCOPEDsourcepins643c5f72(all23tests/sharedhelpers/9criticalproducts/driver/list), 9baseline5868products (8unchanged+soleModelKeysdelta). Independentlyagainappliedaccepted93e4de1e+43c14inownedtempscratch andbytecomparedactualModelKeys. No stagedproduct. Actualdriverfe65fe8e/config301d4865/list7f07e95e/baseHEADinspected. Independent6503testdraftsdirtyOUTSIDE23scope; no clockproductchange, 41scopedmanifestnotclaimedallunrelateddrafts. BoundedNodeprocessscan no competingtest/gate.
ActualRUN CLEARsage4565 delivered EXACT23serialWHOLEfiles, receiptactualclear+frozenCandidateSha2560ebc27f9; sameabsolute--test--test-reporter=tap/defaultoutertimeout0/perfiledeadlines/nice19measureddriverchild+load/privateHOMEconfigTMPDIR. STOPfirstunexpected/no retry/frozenhelperassertiondeadlineedit/extra/full/mutant/config/acceptance. ProductcommitONLYafterGREEN/map36/41testedcontent BEFORE652helperauthorship; don'tstageindependentclockdrafts. AfterGREENonlyMos1710STATIC652onefuturetest/helper, no diagnosticexecution/seam/fix. Mos4566concretestateinformed;651c1204readbackOPEN. ResultPENDING/laneRESERVED,no passingclaim. Finalfull/Q246/global/FEDR7/288/landing remain separate.
2026-10-25T11:39:57+00:00 | Sage 1ef1e4f8 | Lowfocused GREEN independently verified /652static preparation resumes | Magica0085SLOTBACKsage4565 exact23whole276/276zero fail/skip/cancel/timeout/cleanup. Parentresultmanifestfe6652a8 all8COMMITTEDartifacts+23rawhash/bytes/perfilecounts/priorities verified; actualreceiptCLEAR4565/frozenCandidate0ebc27f9 matches. All36frozeninputs+41SCOPEDsourcepins643c5f72 mapexactlypostGREENproductcommit6d3edea61f0d46654771a51b505cd21473617679. packages/scripts deltafrom46receiptONLYModelKeys815b92c8 acceptedcombined, no clockdraftsstaged. Perfilecounts5,14,3,7,17,9,12,2,30,7,14,16,4,3,7,6,3,8,13,11,43,34,8. Driver/testchild19all23; nestedforkinherited/notallmeasured. ActualIPC9/sandbox11/session13nonskip;650directmarker/timestampUNEXECUTED. SleepnotrealrotationSIGTERM/PIDreuse/independentpre-removallockinventory limitsretain.
Mos1710D4conditionalnowmet: Sage4568resumedONLYSTATIC652onefuture runtimefile/neededtesthelper preparation onFROZEN6d withproposalb993/context713, ownprocesses/realHTTP/originalsweeps/OSexitvsacquiredproof/matrixnegatives. NOdiagnosticexecution/prodseam/fix/guardweakening/oldcurrentreadd/remoterestore/stopauthority/permanentlimit/blockerclaim. Separateinspectablepacket/map thenfutureCLEAR/disposition; fullP2/Q246briefmustcarryunresolved652. Mos4569concreteresultinformed. Existing650revisedexactprotocol/negative/failure/nonproxy packetreadyindependenthandoffpending, no clockproduct/REDgrant. Slotfree/noqueuepending. Full274historicalunexecuted/finalgraphandgatefreshreviews/global/FEDR7/288/landingremainunfulfilled.
2026-10-25T11:48:57+00:00 | Sage 1ef1e4f8 | Revised650 exactprotocol/tests inspected / no RED | Magica0086 packet9507e2ee4 manifest4284d712 all21artifacthash/bytes+5CURRENTclockproducts identicaltestedlow6d verified. Parenttemporaryapply exactUNAPPLIED755290c5ef575a3e68d714bf42fffbb5ffe21e00fd34766cf0cfbebaad4afc71 to6d yields4proposedclockproducts (noModelKeysdelta): first-output6263d358/runnerd4bfea03/model-stall0bdc91dc/launcherd2527440. D17/brief amendmentabd21fcb. Strictbytes>127BEFOREASCII/canonicalpositivefullcontent/64/NONBLOCK-NOFOLLOW-fstat-uid/FDclose/onceembeddeddeadline inspected. ProducerexclusiveOPENowns immediately; independentwrite/link/close/unlinkfixederror/collisionnoownership. Proxy-onlyhostenablefile/runnerprivatecachedexistsafterJSON/no publicschema; managedwatchtrue/internallegacyfalse. Controlledspawnerrorcatch withinPromise, TERM+tracked5sKILL, waitclose/reap+cleartimers, fixedprivateresult, all3callersafterusageendterminate, exit2/server-socket+role.release/hostend path inspected.
Readall5newtestfiles/fakechildprobe+actualunconfinedpubfailurepreload: narrowownedfspath/fd/groupinterception/restorenamedbuiltins, actualBroker/libraryguard/currentchildprocess, notconfinedfault orTERMresistantproof. Readerinvalidcount/single-stop/FDcleanup/FIFOownedchildbounded; oldexpectedfailuresassertionsnotnewtimerpolicy. Wrongowner/unreadable-valid0600 UNVERIFIEDexplicit. Actualbwrapstdout/nonproxy/timestampbounds UNEXECUTED. RemainingNEWunexecutedsource-grepmanagedcaller test mirrorsimplementation; Sage4570requestedmovetoexplicitcoordinatorinspectionnotes (callerinspected), preserveALL5actualclockbehaviorcases; likelyrefresh36total31RED5GREEN instead37/32/5. No oldtests/assertionschanged/no clockrun; exactprotocol755unchangedbytest-scopecorrection. SentMos4571 exactproduct+doccontractforfinalruling, currenthash755NOTapplied/REDauthorized. Task650c1205readbackOPEN.652staticonefileprepindependent/currentlow6d276verified. Noactivegate/queue/full/global/FEDR7/288/landinggrant.
2026-10-25T11:53:25+00:00 | Sage 1ef1e4f8 | Clockr3 testscope verified /Mos1711 exactcontractacceptedconditional | Magica0087 1ac21d36c r3manifest54a7ecfb all21artifacthash/bytes+5CURRENTclockproducts==testedlow6dverified. Parentbytecomparison950..1ac ONLYnewunexecutedsource-grep testcase removed, ALL5actualbehaviorcases unchanged/otherpackage-scriptfilesunchanged; map36total31expectedRED5GREEN NOTobserved. Independentlowmapping852a8da71 artifactl1-l3b-tested-commit-map.json9a5bf68f checkedall36Gitblobids/hashbytesat6d(41scopedsourcepreviouslyindependentlyverified); maprecordedbefore652authorship.
Mos1711 conditionallyACCEPTSEXACTUNAPPLIED755290c5fourclockproductdelta+abd21fcbtwo plan-docamendments, readsallsource/tests/diffs/appliedonlytempscratch. Boundaryoptin/strictmetadata/ownedcleanup/nonproxy/limitsunchanged. NOclockproductapply/focusedgrant. SequentialONEWHOLEperREDclear allowedONLYafterSageinspectsrevisednotes/test/helper/maps/pins+currentclockproducts/lowmapping. One remainingnotes-onlycorrection: JSdollaranchor withoutmultilinematchesinputend (not optionalfinalnewline); keepfullmatch-lengthguard/trailingnegativeunchanged. Relayed4573 staticnotesrepinbeforefirstRED. ParentcheckedTC39primaryCompileAssertionURLread(noNodeexecution), linkretained. ActualconfinedcasesMUSTnonskip/unavailableSTOPprogression; no aggregate/unconfinedsubstitute, no in-flightedits/retries. Wrongowner/unreadable0600/TERMresistance/unconfinedfaultlimits retained.
Noactivegate/queue;clock755UNAPPLIED;lowtested6d276current. Awaitnotes-correctedclockmanifest thensequentialRED firstfileCLEAR;652staticdiagnosticpacketindependent/noexecutionfix. Finalfull/Q246/global/FEDR7/288/landingunfulfilled.
2026-10-25T11:59:06.171733+00:00 — Sage — row331 clock650: inspected r4 eac71305 pins, corrected notes and unchanged low6d products; issued ONE-file intended RED sage-4574 (5 expected:3pass/2fail); no clock product application. 652 static packet received, no execution.
2026-10-25T12:02:48.839223+00:00 — Sage — row331 clock650 firstthree separate intended REDs verified: clock5/3/2, reader19/1/18, producer7/0/7. Producer failure stops before ownership/fault checks; no proof claim. Nineproducts/frozeninputs match low6d. Issued4580 ONLY actual confined file2cases expected1controlpass/1missingmarkerRED; skip/unavailable stops. Task650c1207 read back. 652static packet sentMos4576 awaiting exact diagnostic ruling, no execution. No clock application/full/global/landing. Next4581.
2026-10-25T12:08:14.044541+00:00 | Sage4584-4585 | ALL5clockREDindependentlyverified36/5pass31intendedfail, allnamedassertions/frozeninputs/nineproducts==low6d,0skip/cancel/timeout/cleanup. Parent aggregate clock650-all-five-red-audit.json, individualauditchecks persisted. Finalraw9837707f/2961/result441954f5. No clockproductapply, actualclockfocused/contentpacketpending.652exactdiagnosticMos1712conditionalactualdriverinspectionpending/noexecution. Next4586.
2026-10-25T12:21:07.402725+00:00 | Sage4592-4594 | #652ONE4590 diagnostic13/9safetyCONTROLpass/4final-livenessFAIL. All4ensure/rotate×stale/[] reached finalretirementassert aftervalidsetup/postphaseoriginalsweeps/realHTTPkeyloss/freshrepair/independentOSreaps. Parent10resultartifacts+rawc147036b39395/0c88bc5a/ninebeforeafter==6d/source42currentverified;0skip/cancel/timeout/cleanup,19/19,ownroots0. SentMos4592 explicitdispositionrequired, recommendboundedSTATICrepairproposal notpermanentlimit; NO652fixselected/sourceedit. Clock755UNAPPLIED/all5REDverified/focusedstaticpacketpending. Actualunused4588/hold4589/sole4590machinecontextpreserved; humancontextsentence typoexplicitinsummary. Next4595.
2026-10-25T12:25:05.918909+00:00 | Sage4595-4596 | Clock650focusedpacket8046314af/4058a60a independentlyverified26artifacts+5REDpins/currentbytes.15wholelist0bd38b5d, reasons/driverread; OWNtempscratch exact755+abd applies current6dbase andmatchesall6virtualSHA/bytes/Gitblobs, realproduct/docsUNAPPLIED. SentMos4595 exactapplication/focusedruling request:ONLY4products+2docs; actualpre-runfreeze+SageCLEARbefore15run, commitonlyGREEN. Broadercollateral FINALgraph;noneof15usesnew652helper; markerproductioncallerSOURCEonly; wrongowner/unreadable/currentLinuxbounds/unconfinednotTERMresistance limitsretained. #652measured13/9controls/4finallivenessfails awaitsMos4592EXPLICITdisposition beforeANYfix/permanentlimit. Allcurrentsource6d/ModelKeys815unchanged; no activegate/queue. Magica4596auditACKdelivered, no additionalrun/editCLEAR. Next4597.
2026-10-25T12:26:15.846556+00:00 | Mos1713 disposition #652 CONFIRMEDAVAILABILITYDEFECT measured6d, remediationREQUIREDbeforefinalP2acceptance; no permanenthold/restartresolution/notauthoritygain. Parent4597relayedSTATICruntime/privateinventoryproposal ONLY: perexactidentity positivekeyassoc+strictbothprocessvalidation beforemonotonicprovenance; afterloss allowonlystrictabsence/reaped/samestartzombie, LIVE/unknown/mismatch/readerrorhold. Preserveinitialguards/boot/stopauthority/L3btable/allpubliccontracts, noabsentkeyreadd/restore/knownerasure. ReturnEXACTunapplieddiff/statetable/existing13mapping/newnegativecontrols/boundedfocusedplan beforeANYnewexecution/sourceedit. Clock8044058separateunderMosinspection. Next4598. Singlequeue-next2503pendingnoduplicate.
2026-10-25T12:29:22.883268+00:00 | Mos1714 /Sage4600 | AuthorizeONLYclock755fourproducts+abd2docs, sixpaths; virtualc0732a15independentlymatchedbyMos+Sage. Relayed4600APPLICATIONONLY toMagica, accepted15wholelist0bd38b5d but NOtestuntilparentactualpre-run sixblob/sharedinput/driver/config/list/9baselineinspection and separateCLEAR. CommitonlyfocusedGREEN/mapbeforelateredits; exclude652drafts from650commit/frozeninputs. ModelKeys815/runtime652unchanged;652STATIC1713only/confirmeddefectmustfixbeforeacceptance. No full/newreviews/queue/global/FEDR7/288/landing. Next4601; singlequeue-next72430pendingnoduplicate.
2026-10-25T12:40:15.546966+00:00 | Sage4603-4604 | FINALclockactualpacket3f52ce9b1/c747a85a ALL10artifacts verified,current6candidateSHA/bytes/Gitblobs approvedvirtual. Finalfrozen7281d6416+1184sharedinputhash/Gitblobs allrechecked,15tests included/652helperexcluded,9baselinemappings/currentonly6pathsdelta. Prior9053objectnotavailable so no independentonly10diffclaim, allFINALpinsverified. Driver46c/configd31areadunchanged. Narrowboundedreal--test/devgate scan EMPTY. ActualrunCLEAR4603issued ONLY15/list0bd38b5d (189reference expectedallGREEN), firstunexpectedskip/cancel/timeout/unavailableSTOP, no edits/retries. Realbwraptimestamp/mode/once/temp/noproxy/outputandownership/FD/exit2/release/signalassertionsmustreach; limitsretained. Sourceuncommitted755+abd;ModelKeys815/runtime652unchanged;652STATIC1713only. CommitonlyapplicableGREEN/mapfrozenbeforelateredit. Mos4604stateackdelivered. Next4605.
2026-10-25T12:47:13.660608+00:00 | Sage4605-4609 | FOCUSED4603STOPafter2files:clock5/5GREEN,reader19/18pass1unexpectedFIFO nice16!=19. 24total23pass1fail0skip/cancel/timeout;driver/testchild19. Rawfirstf51bc7071120,reader8a5d1b9e4393 audited. FIFO childrc0/nonblocktimeoutfalse/stop1BEFOREnicepassed;FD/receiptAFTERniceNOTreached. Source6+frozen1184unchanged/currentverified, ownclock/readerroots0. Remaining13filesNOTRUN/no189GREEN/noproductcommit/retry. ToldMagica4605preserveexactevidence, Mos4606boundary. ParentUNAPPLIEDstaticfixtureproposal4607 SHA58d08778 changesONLYprobe importsetPriority andsetPriority(0,19)beforewatcher; finalgetPrioritymeasurement/strict19assert unchanged. Oldhelperd711c0b8->a937f504917bytesOWNtempscratchchecked. Cause16UNPROVEN/nohostreniceclaim;laterdriftstillfails. AwaitMosexactfixture/rerunrulingandMagicaresultmanifest. Magica4608coordinationdeliveredNOactualedit. #652STATIC1713outsidefrozen scope/confirmeddefectunresolved. Next4610.
2026-10-25T12:51:40.585221+00:00 | Mos1715 /Sage4610-4611 | Exactfixture58d08778 acceptedCONDITIONALold4603fullaudit. Parentnowverified66c734f2 ALL10artifacts+2rawf51bc707/8a5d1b9e, all1184+sixpostSHA/bytes/Gitblobs/nineproductmappings==pre;24/23pass1nestednice16failure,0skip/cancel/timeout,ownroots0/hooks0100. Savedparentmanifest/full-audit. Relayed4610APPLICATIONONLY afterworkerreceiptpreserve: helperd711->a937f504917bytes onlysetPriority(0,19)beforewatcher,FINALmeasurement/strict19assertuntouched. No actualexecution yet; NEWV2actualfreeze/currentbaseHEAD/15list/driverconfig/newhelperpinrequiredthenparentreinspect+separateCLEAR SAME15FROMSTART, no readercomposite/oldRED rerun. Keepoldrecordsimmutable,source6clockbytes+ModelKeys815/runtimec5unchanged,sevenpathsremainuncommitteduntilfull15GREEN/map. #652STATIC1713outsidefrozenonly. Cause16UNPROVEN/laterdriftstillfails/nohostpolicyinvestigation. Mos4611conditionauditACKdelivered. Next4612. Queue-next27074singlependingnoduplicate.
2026-10-25T12:57:37.417489+00:00 | Sage4612-4614 | V2actual6a9c79de3/c15260d0 ALL10artifacts+frozende50de49(1184+six)CURRENT SHA/bytes/Gitblobs verified. Old/newinventoryDIRECTcomparison ONLYhelperd711->a937semanticrow+oldgate->v2metadata row;allsixvirtual/controlrowsunchanged. Driveronlycomment/evidencenames/configlimitsunchanged;old66/10artifacts2rawpreserved,exact7uncommittedsource/doc/helperpaths,ninebaselinemappingsverified. Boundednarrowgate/testscanEMPTY,issuedACTUAL4612 SAME15wholeFROMSTART only(189reference),no composite/readeronly/oldRED/full. Commit/mapONLYfull15GREEN;652STATICoutsidefrozen/no product652change. Mos4613stateACKdelivered. Next4615.
2026-10-25T13:05:38.430394+00:00 | Sage4615-4618 | V2focused4612STOPafter3files31/30pass1exclusivecollisionFAIL,0skip/cancel/timeout/cleanup. Clock5/5;reader19/19nowreachedFIFOrealnice19/FD0/receipt;producer7/6pass1 atpreexistingcollisionexistsfalse. Fixeddiag+unlinkCalls0beforeexistpassed;closeCalls0afternotreached/NOdeletionattribution. Parent141e94b8 ALL10artifacts+3raw/post1184+sixcurrentSHA/bytes/Gitblobsverified,roots0,remaining12filesUNRUN,noproductcommit/retry. Rawproducer9d5b6662/2477. ParentEXACTUNAPPLIEDtest-onlyproposal a5484cf9 toMos4616: first-turn.test.mjs d184->d2aacf294639bytes, savedoriginalopenwx/create+writeNUMERICfd+closefinally collision preseed; addcollisionCreatedflag/assert,ALLexisting7/assertions/countersunchanged,NOproduction/timingdelta. OWNtempscratchapplychecked. StaticNode26.8.1matchinginstalledHEADER fs.js2795-2846/getOptionsutils311-330 supportsreentrantpathnamewrite missingencoding; NOactualruntimecalltrace/Nodeversionexecution claim. URLs inproposalJSON. ToldMagica4617holdnoapply/rerunawaitMosruling,preserveV2receipttip. #652STATIC1713outsidefrozen/unresolvedconfirmeddefect. Next4619. queue-next27074resolvedrow7ledger;current331scopecontinues/no pendingqueue/gate.
2026-10-25T13:08:57.501876+00:00 | Mos1716 /Sage4619 | ExactUNAPPLIEDcollisionfixturea5484cf9ACCEPTED afterV2postpreserve/audit alreadycomplete141e94b8. Relayed4619APPLICATIONONLYtestfirst-turn d184->d2aacf294639bytes, savedoriginalexclusiveopen/numericFDwrite/closefinally+setupflag/assert, ALL7cases/existingassertions/counters/fixeddiagretained. Preserveold4612/4603records,staticNodeinferenceNOTexecutedtrace/version/deletionproof. NeedNEWactualV3fullfreeze DIRECTV2 ONLYnewsemanticrowfirstturntest;FIFOhelpera937+sixvirtualsource/docs+ninebaselinesunchanged,15wholeFROMSTART afterparentreinspect/separateCLEAR. No currenttestclear/gate/productcommit;8candidatepathsUNCOMMITTED. #652STATIC1713outsidefrozen/confirmeddefectstillmustfixbeforefinalP2acceptance. Next4620. Singlequeue-next6948pendingnoduplicate.
2026-10-25T13:13:36.331743+00:00 | Sage4620-4622 | V3actual2b4c099b0/f2400b62 ALL11artifacts+7ce729b2ALL1184shared/sixcandidateSHAbytesGitblobsverified. DIRECTV2ONLYfirstturntestd184->d2aacf29semanticrow+V2gate->V3metadata, FIFOa937/sixvirtualproductdocs/ninebaselinesunchanged;driveronlycomment+3evidencenames/configlimitsidentical. Exact8uncommittedpaths/botholdunexpectedrecordsintact/narrowgate-testscanEMPTY. IssuedACTUAL4620 ONE SAME15FROMSTART only189reference,firstunexpectedSTOP/no edits/retries/composite/oldRED/full. AllcollisionCreated/existence/unlink/close/producerFD/actualbwrapLinuxmarker/controlledexitassertionsmustreach;commit/mapONLYcompleteapplicableGREEN beforelateredits/exclude652drafts. ModelKeys815/runtimec5unchanged/652STATIC1713confirmedblocker. Mos4621stateACKdelivered. Next4623. queue-next6948resolvedrow7ledger;active331scope/no pendingqueue.
2026-10-25T13:21:40.454724+00:00 | Sage4623-4625 CLOCK650SCOPEDGREEN | Actual4620 V3whole15FROMSTART189/189/0fail/skip/cancel/timeout. Parentf92b3f16 ALL10artifacts+15rawSHA/bytes/TAPcountsverified15driver/testchild19/finalcomplete. All1190frozenrows(1184shared+6candidate)CURRENT+GitcommittedSHA256/bytes/blob/tree/multiset mapd86735387f to PRODUCTee375c1fba562a0def63743e6515fd0a33f42387 independentlyverified; commitAFTERrun/exact8acceptedpackage-planpaths/no652draft. Receipttip4d4fad7e3sourceidentical. RealbwrapLinuxmarker timestamp/mode/once/temp/noproxyoutput, collisioncreated/existence/unlink0/close0, FIFOreal19/FD0/receipt, actualUNCONFINEDlanding/message/retryexit2/release/ownTERM/nolaterturnallreachedGREEN. Limitswrongowner/unreadable600/confinedfault/forcedTERMresistance/productioncallerE2E/realrotation/nestedpriorityretained. CleanupHONESTnewclockrootsclear/hooksdone, oldprivatecontrolfixture dirs12launcher+2sessionlaunch+15modelproxyretained/inventoried;NOextra cleanup/processlockcensusclaim. Parentclock650-v3-green-independent-check.json. Mos4623resultdelivered;Magica4624prioritizealready-authorized1713STATIC652packet currentbaseee375/4d4. #652CONFIRMEDblocker stillUNRESOLVED/runtimec5andModelKeys815UNCHANGED;original4590diagnostic6dcontextpreserved. NOnew652product/test/Nodecheck/graph/full/freshreview/queue/global/FEDR7/288/landingCLEAR. Task650remainsOPEN despitefocusedGREEN. Noactivegate/queue. Next4626.
2026-10-25T13:42:54.530646+00:00 | Sage4626-4630 #652STATICreview | Initial039/d1bb10artifacts+9ee375products+25testpins/old23tail/a957old13/47behelperverified;tempscratchfb runtimec34497a154200/blob956ffe7e. FoundnewcounterambiguityBEFOREexecution: refresh->readSessions->seat/session401startTimeOf(runnerPID) incrementsanyprocread. Directed4626ONLYNEW2casesRegistry[]afterinitialview+lose BEFOREfault, preserveALL7assertions/old13/helper/fb. StaticfindingNOTobservedtestresult; oldR1UNEXECUTEDpreserved. R2packet50cb32959/44ac69a5ALL14artifacts+9products+25pins/actualfrozenbc3397edALL1190CURRENTsha/bytes/Gitblobsverified. Newtestc1b24468, DIRECTdiffONLYwriteSessions[]setup;driver/configreadwhole/privatecfg/nice/original1s+5s budgets. ExpectedONEnew7/5controlsPASS2exactstrictrecheckRED NOTobserved. SourcefbUNCHANGEDUNAPPLIED/runtimec5+ModelKeys815+clockee375unchanged. SentMos4628 exactcontract+ONEnew7REDrequest beforeANYexecution/application;focusedfuture25=new7+old13+EXACTold23. Needexplicitnullrecordbranch/coldbootlimitruling: priorvalidatedMapcanstrictdeadcheckifrecordnull,controllerSKIPsno-recordunchanged;initialcoldunassociatedholds/noallgenerationclaim. Validatedacqassociated&&atleastoneLIVE AFTERfullsame-instance success;fullydeadusesM1bits. Magica4629holdactualbytes/noextraactions. No activegate/newqueue;next4631.
2026-10-25T13:53:05.506689+00:00 | Mos1717 /Sage4631-4633 | EXACTfb7203contractACCEPTEDconditional NOapplication. ExplicitnullmodelRecord=associationloss forEXACTpriorvalidatedidentity->sameSTRICTbothterminalproofallowed,NONEWprovenance;controller no-recordSKIPunchanged/null-specificcoverageUNVERIFIED. Coldunassociatedbootfailclosed/warmrepairONLY/noallgenerationclaim. ParentFINALcurrent50cb/44ac14artifacts+9unchangedee375products+25pins/bc3397ed1190SHAbytesGitblobsverified;runtimec5/ModelKeys815/fbUNAPPLIED;narrowtestdevgatescanEMPTY. IssuedACTUAL4631ONLYwholeNEWmodel-key-provenance7 pre-fixRED expected5safetyPASS2namedread/ticksREDatstrict-recheckassertion,NOexpectation-evidenceconfusion. Samewhole/privatecfg/19priority/original1s5s/owncleanup,firstunexpectedSTOP/noretryedits/extraold13. Mos4632stateACKdelivered. ReturnverifiedRED+separatelyinspectableactualSTATICfocused25driver/list/config/content+virtualruntimec344candidate BEFOREimplementation/focusedauthority. Clock189/mapd867stable; nofull/graph/mutants/review/queue/global/FEDR7/288/landing. Next4634. Singlequeue-next3939pendingnoduplicate.
2026-10-25T14:17:38.642944+00:00 | Mos1718 /Sage4636-4638 | Prerequisitec1af7/5safetyPASS2exactRED/10artifactsrawf495/1190postpinsverified.033focusedvirtual9artifacts+9products+25pins/1210rowsverified/currentc5separatevirtualc344. Relayed4636APPLICATIONONLYfb runtime1path;actualc34454200/blob956. NEWactualc6c7a5aa0/38720db6 ALL10artifacts+89e32674ALL1212CURRENTpins verified. DIRECTvirtual1210 ONLYruntimec5->c344+2actualmetadata rows,all25tests/helperold13/ninebaselinesunchanged;scratchbytecompare fb=actual. Soleuncommittedproductruntime,configcontrolsidentical/driveronlymetadatanames,033+c1af/4590/clockmappreserved. BoundednarrowtestdevgatescanEMPTY;issuedACTUAL4637ONEwhole25FROMSTARTnew7->old13->exact23/296REFERENCEonly,firstunexpectedSTOP/no edits/retries. Mos4638stateACKdelivered. Commit/mapONLYcompleteGREEN beforelateredits;AFTERGREEN+map ONLYreadonlyfreshgraph/list/fullpacketprep,no full/mutants/review/queue/global/FEDR7/288/landing. NullcoverageUNVERIFIED/coldunassocfailclosed/warmonly/noallgeneration/realrotation. Laststatus22filesfinished/host23running, noaggregateclaimyet. Queue-next3939resolvedrow7ledger/no pendingqueue. Next4639.
- 2026-10-25T14:54:30.601485+00:00 | Sage row331 final builder BEFORE | Verified c210/b445 current16 artifacts,456 committed candidate paths,51 behavior pins,671 selected/graph files and1212 focused pins; lane clear. Mos1719 authorized one builder, actual sage-4643 running on8e54. Standing FED R7 skip remains unverified; no broader acceptance/landing.
- 2026-10-25T15:06:56.091482+00:00 | Sage row331 final builder AFTER/STOP | Probe+163 whole files:1639 tests,1637 pass,1 fail,1 authorized FED R7 skip; no aggregate acceptance.164 raw logs independently verified, remaining121 files/config/mutants/controls unrun. Source8e54 unchanged,ModelKeys815/runtimec344 restored. Separate one-step driver16/child19 recorded without cause attribution. Exact fixture forwarding proposal3aa973dc remains unapplied pending ruling; no assertion/deadline change.
- 2026-10-25T15:23:00.032777+00:00 | Sage row331 fixture AFTER | Exact dispatch forwarding correction passed whole session-clear5/5 with measured19/19, no skip/cancel/timeout. Result42932d7a/raw0b7d1497 and1216 frozen rows independently verified against2da21e13;map1e11f6d4 committed87ee30b1d before later prep. Original stopped builder637 retained; no composite acceptance. Read-only refreshed full packet and unapplied priority proposal await separate ruling.
- 2026-10-25T15:34:29.723336+00:00 | Sage row331 R2 full BEFORE | Verified actual6dc9cf3a/b1013592 all1622 inputs,13 artifacts,nine products,52 behavior and671 graph inputs againstcode2da; exact3e4/5982 priority-guard driver. Cleared one probe/284/config/four-original-mutant-control block from START underMos1721/sage-4657. Old637 stop and priority16 preserved; only namedFEDR7skip permitted unverified. No source/review/landing changes.
- 2026-10-25T15:50:10.065429+00:00 | Sage row331 R2 full AFTER/STOP | Probe+174 files:1756 tests,1754 pass,1 old thread-revoke failure,1 permitted unverifiedFEDR7skip.175 raw logs audited,all19/19,no cancel/timeout/signal.110 files/config/mutants/controls unrun. All1622 frozen inputs and52 behavior/671 graph code pins unchanged;runtimec344/ModelKeys815. Test host mirror lacksrecoverLaunch before runtime; exact fixture proposal being prepared without execution. No composite acceptance.
- 2026-10-25T16:05:33.469862+00:00 | Sage row331 thread fixture AFTER | Exact runtime dispatch forwarder passed thread-revoke3/3,measured19/19,nonskip/no cancel/timeout. Result86975ce3/rawc9a5d06a and1625 frozen/current/committed rows verified;sole fixture commitfffbe05af,map1d867353 committede906cfc8a before later prep. End/claimrelease/no-newlaunch checks reached. Prior stopped full runs retained; no composite acceptance. Read-only full packet refresh pending separate ruling.
- 2026-10-25T16:24:45.965804+00:00 | Sage row331 R3 full BEFORE | Verified f99b10ec/be9bc6e0 all1628 current inputs,13 artifacts,nine products,53 behavior/671 graph againstcodefffbe;exact2965 driver. OldR2driver and all stopped/scoped evidence preserved. Cleared one probe/284/config/four-original-mutant-control block FROMSTART underMos1723/sage-4671. Only namedFEDR7skip allowed unverified;no source/review/landing authority.
- 2026-10-25T16:54:21.093174+00:00 | Sage row331 R3 full AFTER/scoped VERIFIED | Result63d440bf/evidencee5b4a8d1, all14 committed artifacts+294 raw SHA/bytes/TAP/order checked. Whole2842552tests2551pass0fail1 authorizedFEDR7skip(unverified),separateprobe30/config55/4wholecontrols120 pass.4ORIGINALnamed mutants killed1/1/1/3 assertionfailures,all6ERR_ASSERTION,815 restored each/end. ALL294 real19/19,0cancel/timeout/newskip;all1628frozen/53behavior/671graph/nineproducts unchanged.13 private-control scratch retention inventories preserved,no census. FullP2/reviews/global/FEDscript/row288/landing remain open; next review brief is DRAFT only pending ruling.
- 2026-10-25T17:21:57.367080+00:00 | Sage row331 formal review BEFORE | Correctedbrief17972714 preservesoriginal0418. Existing53-sourcebb/codefff/evidencee5b/result63d frozen. Formalround3request31706 posted ownJarvis and independently read back with correctissue1829/author/markers/entiremanifest. IndependentBoydCodex+ONEfreshClaudeQ246(high) started afterprovenance verification; no tests/sourceedits/queueverdict/landing authority.
- 2026-10-25T17:52:23.336296+00:00 | Sage row331 source review AFTER/CHANGES | Both independent reviews identifymissinglauncherbinding blocker. Boydqualifiedlows/consentpreserved,ownJarvisattributedrelay31707 readbackverified;actualBoydcanonicalCHANGESrecord4135 independentlychecked. Existingbuildergreen remains scoped,fullP2unaccepted. ConditionalMos1725 nowauthorizesSTATIC653-656packetpreparation only,653/654first;no sourceapply/test/full/newreview/landing authority.
- 2026-10-25T18:24:29.738793+00:00 | Sage row331 #653 test-first AFTER / #654 coverage BEFORE | Mos1726 one-file sage-4701 reproduced exactly two managed proxy launch failures after successful preflight; three nonproxy/refusal/no-launch controls passed. Result76feb41a, rawc3bc72a3/4035 and all1633 frozen/current/committed inputs independently checked; no source application, post-target proxy binding/watcher checks unreached. Mos1727 actual packet39be7914/freeze445dc825 independently verified with lane returned/clear; issued sage-4703 for one current pending-organization coverage file expecting four passes, outcome pending. Productfff/old53bb and prior reviews/evidence retained; no acceptance/landing claim.
- 2026-10-25T18:31:16.393237+00:00 | Sage row331 #654 coverage AFTER | One whole current-source file passed4/4, zero skip/cancel/timeout; resultb60936e7/rawb5e83990/1293 and all1633 frozen/current/committed rows independently verified. Mapcc651951 to64e0a982 publishedb442 after GREEN and before later edits; sourcefff/nine products/53 manifest unchanged. Covers exercised pending organization-busy branch only, not generation ownership. Separate #653 import-only/focused15 virtual packet20af76b3 inspected and sent for scoped ruling, no product application/run or final acceptance.
- 2026-10-25T18:34:30.320932+00:00 | Sage row331 #653 repair BEFORE | Mos1728 authorizes exact launcher named fs import binding only and matching focused15 driver preparation. Parent rechecked unchanged old53/nine products atb442 and sent4708 exact application/preparation instruction. New applied freeze and independent current-input/lane inspection are required before a distinct test CLEAR; no test run or fixed-behavior claim yet. #655/#656 remain unresolved, historical review/RED/GREEN/maps preserved.
- 2026-10-25T18:39:00.750135+00:00 | Sage row331 #653 focused BEFORE | Applied launcher equals exact approved import-only373d; current driver equalscfd. Before any execution parent caught an omitted consumed-list path in input inventory; metadata-only superseding packet8e6dd390/freeze97e24ceb preserves prior1636 and adds that existing list row. All1637 current inputs/10 artifacts/15 tests/nine products and historical654 map independently verified, no competing Node test/gate; issued actual focused15 CLEAR sage-4712 underMos1728. Outcome pending, no fixed/acceptance claim or additional source authority.
- 2026-10-25T18:57:50.207677+00:00 | Sage row331 #653 focused AFTER / #655-656 static contracts | Verified complete15-file173/173 nonskip, all15 raw logs and1637 tested/current/committed rows mapped93ae todf75 afterGREEN, map firstpublished9ced before38b static preparation. Actual managed-launch5 reaches pre-spawn enable/trustedbinding/idle and first-turn clock/real stall stop/output controls. Product change only missing import. #655 original serialization-only proposal030 rejected byMos1729 for duplicate credential effects; exact shared-validation revision and isolated tests authorized STATIC only. #656 partial-state/durable-intent disposition remains open; no recovery implementation/test or full-P2 acceptance/landing granted.
- 2026-10-25T19:01:13.027004+00:00 | Sage row331 #656 design BEFORE | Mos1730 selects static narrow matching-temp/durable-revocation-intent proposal and isolated test preparation; broader only-temp/differing-generation states get separate nonlaunchable-intent design only. Relayed4720 strict all-key remote/run/file proof, intent-before-temp-removal/retry and truthful atomicity requirements; no product application or execution. #655 shared-validation revision remains independent static work. Testeddf75 source preserved, full acceptance/closure pending.
- 2026-10-25T19:04:29.712397+00:00 | Sage row331 #656 static boundary | Verified4547-byte atomicity note1f2b7864/sourcepins. Existing descriptor/stat checks plus pathname unlink provide no inode-conditional final syscall against arbitrary external sameUID replacement. Returned concrete concurrency-contract choice toMos4722 before recovery code/test authorship; no workaround/experiment applied. #655 static revision and broader656 design remain independent, testeddf75 source unchanged.
- 2026-10-25T19:08:56.725413+00:00 | Sage row331 #656 qualified static design RESUME | Mos1731 accepts cooperating-writer/private-store concurrency for proposal/test authorship, explicitly excludes arbitrary external sameUID replacement after final verification from guarantee. Relayed4724 strict synchronous revalidation/tmp-first intent ordering and complete cooperating-callsite trace requirement; any current ordering bypass returns before proposal acceptance. No atomic compare-unlink claim, product application or runtime test grant. #655 and broader656 design remain separate, source testeddf75 unchanged.
- 2026-10-25T19:25:50.472210+00:00 | Sage row331 #655 revised static review RETURN | Verified c7/ce7 nine artifacts, current product/source/test pins,1637 prior mapped inputs, and scratch-only three-file ef299 proposal. Before execution identified expected-map first-failure mismatch in cases14-16, cleanup launch-log scan omission, and need to carry original captured revision into locked publication rather than fresh revision substitution. Returned4726/4727 for static corrections/contract ruling; no source applied, Node/test/proxy run or acceptance granted. #656 static work remains separate.
2026-10-25T20:03:48.870029+00:00 — Sage row331/#655 correction: previous static A/C objection missed OptionC injected-writer R0 override; withdrew after full source trace/Mos1733. No publication API expansion. Preserved4733 unexpected whole-file fixture errors and all evidence; exact NEWhelper variable correction106 only, audited superseding01ac/1647 inputs and cleared ONE whole rerun sage-4742 underMos1736. No product application. #656 narrow static model-final-order work separate; #657 broader recovery-intent DESIGNONLY ownerSage perMos1737, no executable/path creation authority. FormalR3CHANGES/tasks647-657 remain open.
2026-10-25T20:27:02.650878+00:00 — Sage row331 #655 bounded verification: independently audited intended pre-fix e219 (exact9targetsRED+9controlsPASS), exactef299 applied underMos1738, focused sage-4750 COMPLETE22files300/300PASS0skip/cancel/timeout, all22real19/19. Exact3products committedafterGREEN27f68; all1652testedrows mapped88a92/firstpublication67394 beforelateredits. Separate unexpected068/priorformalnegative retained, not compositefull. #657 DESIGNONLY proposals3ce07/108780 with manifests c13/a6b returnedMos; prospective before-PUT ownership design, no privatepaths/code/tests/experiments. #656narrowstatic remains independent/open, no full/newreviews/queue/global/FED288/landing/closure.
2026-10-25T22:02:57.713692+00:00 — Sage row331 STATIC656/657/658 and first656 measurement: audited complete narrow14678/fd503 virtuals/all1657 inputs, acceptedtestfirstMos1749; exactactual1665/driverae284 inspected and sole4778runtimewhole cleared. Verifiedca07/raw5bca37584:39=32exacttargetRED+7controlsPASS,0skip/cancel/timeout/signal,real19/19,allpostpinsunchanged/source27f68/oldfixtureUNAPPLIED. Nextcompletionfile REQUESTEDonly4781; no automaticrun/application. #657A/source+newtests ONLY ownedunapplieddiffs/unparsed/unexecuted, selectedSELF/eventgrace and helper-onlyproposal static; #658generationconfig-last design returned, Mos1750selectsexplicitprovision-new coexistence STATICnextscope, oldbootstrap/T-I1unchanged. All acceptance/closure gates remain open.
2026-10-25T22:34:26.180461+00:00 — Sage row331 #656 three separate intended-RED phases verified: ca07 runtime39=32R7G,44c2 completion21=19R2G,cb13 remove21=16R5G; all exact first targets/raw/postpins/currentGit, strictreal19,0skip/cancel/timeout/signal. Scopedcontrols only/posttargets unreached, no compositeGREEN. Independently audited STATICfocused33 packet4799129b/1688 current vs3virtual changes; Mos1757 permits ONLY exactfd503+7a1dapplication/204cdrivercreation and NEWactualfreeze preparation, relay4798; actualrunCLEAR pendingindependentinspection. #657 selectedprivateclockproposal f579 under1756 +fixturecompatibilitystatic scope; allowned657diffs unparsed/unapplied/unexecuted, needintegrationrefresh after656. #658 explicitprovision-new coexistence staticwork remainsopen, oldbootstrap/T-I1unchanged. No full/review/queue/global/FED288/landing/closure.
2026-10-25T23:33:24.741369+00:00 — Sage row331 #656 AFTER / #657/#658 static continuation: independently audited actual1694/driver204c packet then sole sage4799 focused33 FROMSTART. All511PASS/33raw203652B/zero skipcancel timeout signal/33real19pairs; new81formerposttargets reached in frozen source. Exact3paths committed AFTERGREEN38ba5762, all1694+16pins mapped69ce57a5 firstpublication30dcef before later receipt4a02. Mos1759 independently accepted APPLICABLEfocused only;656OPEN. Audited read-only interim ed8b/581378:65behavior/788changedblobs/677graphpins, recorded18roots0parsefailures/294selection recomputed from recordededges; allold284+6new+4businesscollateral, grant-scope/lifecycle-settings UNRUN current. NO fullgate/run/re-pin. #657A refreshed to38ba/031383e6 ownedUNAPPLIEDdiff only, incompleteB/legacyhold/case15 retained. Static positive revocation seed/caller packet4999 returned4807 with actualtrustedgeneration/ownedruntimeoriginalsweep queue/failedGETintent design, not executed; Mos1776 selected only extraFIFOawait1e998e74, inventory superseded preservingoriginal4999. Positivehelper/A-B/case7 exactguards stillunaccepted; #658 explicitprovision-new sourceproposal not yet authored. All647–658OPEN/no newfull/config/mutants/review/queue/global/FED288/landing/closure.
2026-10-25T23:41:11.932432+00:00 — Sage row331 #657 STATIC next packet: sent4808 runtime-clockcontrols manifest38c1a325/4808, NEWisolated helper/testdiff6a09c2b2/14524 and9UNOBSERVEDcases; native/default,6invalidvalues-beforeStore, actualruntimeisolation andsamewarm ORIGINALdue/strictidentity/terminal path. OnlyownedDIFFS/data, no actualsource/testinstallation, parser/Node/FS/proxy/test. All1694 mapped current SHAbytesblobs rechecked unchanged against38ba/map69ce. Seedpacket superseding87633310 marksMos1776 FIFOcallerSELECTED, original4999 preserved. Positivehelper/A-B/case7exactguards remainunaccepted; fullBGC/allcooperatingcallers/warmoldfixture and658sourceproposal remain work, no gate/full/review/queue/global/landing/closure. Nextstableoperation4809.
2026-10-25T23:44:53.880497+00:00 — Sage4809 #657 unaccepted-draft correction: source-read found A031383 second descriptor fstat omittedbigint:true while all other identity fields usedBigInt, so stable validfile wouldrefuse strict equality. No runtime reproduction. PreservedALLoldartifacts and4808manifest references; separate r4 combinedf1b5a13a/35866 newmoduled2d783f4/18928 manifestb2baf075/1573 changesONLYsecondfstatoption. ReturnedMos4809; current38ba/1694inputs untouched/noactualsource/helper/testinstallation/parser/Node/FS/proxy experiment. BGC/warmfixtures/658 remainstaticunfinished; no gate/acceptance/closure. Nextoperation4810.
2026-10-26T04:17:47.724968+00:00 — Sage STATIC continuation AFTER owner heartbeat1822: scope recovered without queue/Node invocation because explicit current no-queue/no-runtime ruling supersedes routine cadence. Preserved38ba code and all1694 mapped rows+16 packet pins, rehashed current SHAbytes/Gitblobs. Sent4810–4819 owned-only contract/clock/canonical/publisher/reader/GC/outcome boundaries; Mos1824/1826/1830/1833/1837/1841/1842/1843/1844 selected bounded STATIC directions only. Reader-r3 0edf corrects unresolved helper references, childc365 beforeStore/reconcile fences, host3ba beforeleftover/Registry/root writes, common240d internalreadonlyguard,7 new controls ad69 unobserved; exactRAM dependency reconstruction, packet396f. GCf196 finalnativeintentcheck only, actualreentrantproof invalidation stillunfinished. Actual captured-R0 failed-unpublished-hire enum selected1842, extra publication-outcome boundary17c sources rename/fsync/log/lockrelease/settingsread;1844 writer-ownedtoken nativephases now proposed d767+12 unobserved tests6df2 and separately inspectable prosehold c0d7; actualB consumer/restartpositiveproof stillunimplemented/unselected. Single trackerposts6571293/1294/1296 and6581292/1295 all definitive exactbody/author13/readbackOPEN; an initial read-only comments response-shape mismatch preceded any write and was corrected via items pagination, no duplicatepost. No source/helper/test install, parser/Node/process/test/FS/proxy experiment, full/config/mutants/newreview/queue/global/FED288/landing/repin/taskclosure. Oldmaps/partials immutable; nextoperation4821 after substantive4820 handoff.
2026-10-26T04:47:04.289784+00:00 — Sage4821–4822 STATIC continuation: Mos1845 inspected utilities only; authoritative phase successor77c866 rejects created AFTERpublish unless actualprivateflow proves invocation never occurred.14 new unobserved writer requirements77a2 preserveold12 and demonstrate ignored/misrouted option ambiguity. Scopedpositivepublication question6dd/5bd selected1846 ONLYforfutureownedUNAPPLIED13-field witness, noactualconstructor/reader/GC installation. Tracked6571297/1298 exactbody/author13/OPEN readbacks. Additional required origin/decision coupling returned4325025a/7920 manifeste97a8c60/3251 BEFOREbytes: immutable PER-OWNER bounded64 registration because actualmodel-keys.test47/49/121/161/167 repeatsModelKeys SAMECredentials; no blanketone-managerrestriction/oldtestedit. Proposedopaque actualrequest→nativegenerationticket BEFOREPUT +monotonicpublicationhold onretainedhostcontext, notJSON/ephemeralhelperproof. Independent658 visiblepartialpointer guardf788/3947 centralizedselectedreadonlyrootclassification BEFORENEWexistingpointervalidate shortcut;2newcontrols8afa/1706 UNOBSERVED, controlledpendingnotactualcrashproof, packet41fe. Freshall1694+16SHAbytesGitblobTREE checkedcode38ba,source/indexcandidateunchanged. No source/helper installation/parser/Node/FS/process/proxy/test/gate/full/review/queue/global/FED288/landing/closure. Nextoperation4823 after4822substantivehandoff; actualBcallbacks/factory/joint656epochs/intentlastGC/warm/658fullinterruption/hosttransport remainauthoringwork.
2026-10-26T07:26:33.036846+00:00 — Sage4823–4824 STATIC continuation BEFORE/AFTER: candidate38ba and1694+16 pins remain exactGit/current, source tracked diff empty; no candidate edits/runs.1847 selected per-owner C-native brand/request-to-ticket-beforePUT/monotonic retained-host latch now has actual owned source bodies, actual adapter/ModelKeys intended-writer phase consumer and13-field positive publication writer/reader. Nine exact joint-r2 diffs text-reconstructed but explicitly INCOMPLETE/not installation-ready: actual B factory/native confirmation/typed656 proof-name-epoch join/full GC remain unwired; old511/REDs unaffected. Independent1848 native identity supplement fb22/e28be adds original pointer/root/pending dev/ino/nlink guards, and six new nativeEIO controls b359/8157 remain unobserved, not crash/concurrency/transport proof; later faults/types/oldcopy matrix open.1849 cold recovered-final-absence model-only proof scope recorded6571302, not native656 finished/absence authority and not implemented yet. Warm intent-only progress f425 plus context one-use/reconcile-null and closed-C guards897f/cf24 authored as corrected unaccepted overrides; no observed fix. Exact next interruption window after metadata cleanup before orgDELETE requires new external negative-handoff DESIGN decision b41e3113 before any path/schema/code. Tracker6571299/1302,6581300/1303 definitive entirebody author13 OPEN. No source/helper/test installation, moduleparse/Node/FS/process/proxy/test experiment, new gate/full/config/mutants/review/queue/global/FED288/landing/repin/closure. All647–658 remain OPEN; scoped source/evidence historical maps preserved.
2026-10-26T09:36:48.905968+00:00 — Sage4825–4826 STATIC continuation BEFORE/AFTER: code38ba and1694+16 exactcurrent/Git rehashed09:31, old511 scoped/history unchanged.1854 negative-only design d073/14916 fields+state/callers returnedb583, no marker implementation. Found current4actual656retry/reboot positives vsoriginal-request-only/freshHOLD conflict and returned3e500 before weakening/assertion changes;1855 selected one DESIGN comparison. NewR2comparison3c837/18999 proposes SMALL metadata-only registration+terminal chain, actual publisher/writer sealing and source-present native authorization; supersededunpublished1a2c had over-assumed originalphysicalsource mustsurviveuntilpub, correctedpreservingprovenance. No largearchive recommended/newpath/schema/outcometag/clear branch chosen. Independent actual native controller confirmation now source-authored from actual remove/confirmGET/401/fullview and moduleprivate registry; bothModelKeys.prepare callers pass token; Credentials CONSUMES snapshot/record/epoch beforeTMP andfirstfinal, readonlyactualfinished check neverabsenceauthority, runtime stop-map invalidation, existinglifecycleCrev guard mapping. Exact3diffsa84a/da9d/0d46 textreconstructed; higherBfactory/classifier/typednames/GC stillUNWIRED; nativeFIFO/bookkeeping mustnotbeclaimedreachedafterearlierprovenancehold.1854/55 tracked6571307/1308 definitiveactualauthor13/readbackOPEN. No source/helper/test installation, parser/Node/FS/process/proxy/test/gate/full/review/queue/global/FED288/landing/repin/closure. Nextstableoperation4827; currentformats/sealing/succession stillawaitseparateselectionbeforebytes; independentB/658remainopen.
2026-10-26T10:09:33.266521+00:00 — Sage4827 STATIC Mos1856 before/after: preserved current38ba/1694+16/511 and ALL original artifacts. One exact nested schema table now proposes final/tmp/intent native fingerprints and complete independently validated origin/publication digests, explicit decimal native stat encoding and organization/controller observation domains. No durable constructor/reader/path authored pending selection. Bound arithmetic largest variants2383/1118 bytes below8192, not protocol object creation. Writer seal and actual one-use raw publisher source proposals68da375f/4d480f5a direct38ba text-reconstructed ONLY, virtual7f96/9acc; sealed token refuses beforelock, same actual wrapper pending request/close ordering, created-after-invoke UNKNOWN, thenable hold, capturedR0/case15/hook semantics retained. These are publication-only utilities: native all-operation ledger/terminal producer/factory/typed656/GC/result-lease consumer NOT complete. Concrete actual valid-to-revoking C.issue unlink(model.tmp) occurs before future original revoking snapshot/intent ID; no future identity/exemption invented. Contract returns chain/postcleanup distinct result-lease/retirement directions,20 UNOBSERVED reached-boundary requirements. Packet5fa13344/9572 sentMos4827; OPEN657 comment1309 single201 exactbody/author13/readback. Source candidate remains unchanged; no installation/parse/Node/FS/process/proxy/test/gate/full/review/queue/global/FED288/landing/closure. Next4828; existing B/658 independent work remains authorized.
2026-10-26T10:32:05.431575+00:00 — Sage4828 Mos1857 STATIC before/after: current38ba/511 and1694+16 rehashed10:30 exactSHAbytesGitblobTREE; no product/helper/test delta. Corrected literal schema4f50793d removes nonexistent valid field and records1857 selection, leaves exact original formats/history preserved. Newowned UNAPPLIED DATA-only source readera3299bba/16029 virtuale2d3/15682 plus10DATAunit dcb466cb/6083 only inside diffs. Canonical exact type/domains/count-before-allocation/bounded nofollow readonly whole-chain/native reread code, no mkdir/write/unlink or ready/terminal constructors; actual factory/workledger/constructor/retirement still UNWRITTEN. Undelivered067/99ff/22dsource drafts preserved; strict hash/UUID string guard correction source-only no measuredfault.20oldcontrols unchanged plus14native/8reader reached requirements UNOBSERVED; absent module import not intendedRED. Separate ordinaryVALID->REVOKING DESIGNcomparison40165044/14819 identifies TMPunlink then finalreplacement before current strict intent; staging-only insufficient. R1 terminal-only proposal3bb corrected BEFOREdelivery because controller-only has no composite root/validterminal. CandidateA asks originalVALID Bintent +small actual transition witness/newnullableCurrentSources member selection, NO newtransition field/path/code authored/selected. Native write/receipt crash and allotherholds honest, no permanentordinaryvalid limitation. Packetb71063fd/11952 sentMos4828; OPEN657comment1310 single201 author13 entirebody/readback. No JSparse/Node/FS/process/proxy/test/runtimeexperiment/application/gate/full/review/queue/global/FED288/landing/closure. Next4829; nativeBfactory/GC/worklifetime/658independent remain.
2026-10-26T10:59:39.269094+00:00 — Sage4829 STATIC1858 literalrefinement BEFORE/AFTER: schema31c29/13030 exact17witness fields, order4f65/30567, consumers3fb9/8102,26unobservednative controls825b/5691; current38ba/1694+16/511 preserved. Proposedintent/attemptv2 requiredsixmember makesoldfive/v1 incompatibilityexplicit, no nullalias/migration; Wv1 progress/historicaloldVALID/nativecurrentREVOKING distinct. Budget131072/128MiB completepathentriesinclalias bytes beforealloc, witness8192, staticarithmetic3601notserializerproof. ReferenceW->I yieldsW-beforeIonlynativefullproof/noconsumer thenIlast/pub-before-origin/joinedrootlast; no missingfinal/cold/native656prooffromfingerprints. No transitioncode authoredunder1858; OPEN6571311 single201/exactbody/author13/readback; sentMos4829packet80b8/10016. Mos1859 nowselectsschemaversion/caps/nativeproducer/order for ownedUNAPPLIED sourceonly. Continuing4830actualsource, no sourceinstall/parse/Node/FS/process/proxy/test/gate/full/review/queue/global/FED288/landing/closure.
2026-10-26T12:21:16.986782+00:00 — Sage4830-4831 STATIC1859 BEFORE/AFTER: exact17W/v2I+attempt/six/sharedcaps/nativeproducer/WbeforeIselected, products38ba/511/1694+16 unchangedSHAbytesGitblobTREE11:25and12:14. Source-only fourutilitypartsfde9/14077: budget9ccb/r4 resourcecounternoauthority, attempt2/W1decoderreaderb044 typedlimitsintent262144/origin131072/pubW8192; ten+eightDATA tests9908/6f4UNOBSERVED. Sharedbudgetpercompleteactualtypedphase note3e25 forbidshelperreset/unknownwork; actualnativeCbinding/allfamilyrouting unimplemented. Continuednative2sourceadd152/10133 C5bae/MKee609: actualprivatequeue scopes/contextbinding3sites denyqueued/oldB borrowingA, sameR0/owner/privatefailed-newhireseal, oneusenativeclockdecisionbodyrevalidatesafterclock. CSourcePrepMaphasNOregistrationproducer/privatecapturehasNOcallsite, no positiveplaceholder/nativeCwriter/W/terminalproof; fullfactory/ledger/GC stillunwritten. CombinedemitterE2BIGprocesscreationfailedbeforeanyfilewrite, splitperfiletextemissioncompleted; sourceiterationspreservedunexecuted. Oneconcretenewcallerboundary10f6/8010: current38ba adapteronlypendingR0; uninstalledoutcomedraftinjectsA intoallinstanceSettingswriters, sealedA couldrefuselegitimateunrelatedhumanwrites; lease-running/firstwriteheuristicunsafeunderreentrancy. Recommendopaque intendedcommitbinding sixTHINTERNALruntime arg/privateopts/nativeWbinding, target/actor/args identity, preserveunrelatedR0+writerhooks;NOadapterdeltauntilscope. Alreadynolistedfiretransactionnull/noWriter remainsseparateunresolvedno-writeauthority. OPEN6571312/1313 single201/exactbody/author13/readback; sentMos4830/4831substantive. No sourcehelperinstall/JSparse/Node/FS/process/proxy/test/full/gate/review/queue/global/FED288/landing/closure. Next4832; actualCfactory/progress/metadata-key401/GC/result/658independentremain.
2026-10-26T13:14:58.870767+00:00 — Sage4832 STATIC1860 before/after (registered after authoring): baseline38ba/511/map69ce unchanged, all1694+16 SHA/bytes/Gitblob/tree remeasured13:10:37Z and source diffempty. Newowned four direct38ba diff proposals77e8 manifest17854,22artifacts+6dependencies/14sourcepins: Wcc9f virtualfd45/29585; MKr28350 virtual1ed2/50383; runtime5752 virtualb500/57247; businessdffc virtual4df2/31648. Sixth INTERNAL opaque binding passes onlymanagedhire/fire/DELETE, actualmethodchecks before native ticket, native consumptiononce/correlationNOTauthority, unrelatedB originalpendingR0/noglobalAoutcome and lockfence. Rejectwrong/replay beforeAoutcome mutation, createdafterinvoke/ignored UNKNOWN, preserve originalerrors during independentclose/release, case15 remainsbeforepublisher. InitialR1 preserved; source-only R2 prevents accessor/proxy SET falling through to unprepared lifecycle path, no product/test/assertion/helper/deadline change.34controls1aff2 UNOBSERVED requirements only. Native Cprep producer/rewrite/W/workledger/factory/metadata401/joint656/progress/GC/result remain incomplete, cannotinstall utilitygraph. ActualdelistedpresentmodelFIREtransactionnull/noWriter separate question13fd/2297 returnedbefore no-write enum/result/clear/restart bytes; no permanentavailabilitywaiver. OPEN6571314 single201/ENTIREbodyexactauthor13/readback. Substantive T3 handoff4832 delivered Mos. No sourceinstall/applicationparse/Node/FS/process/proxy/test/full/gate/review/queue/global/FED288/landing/closure. Next4833 independentnativeB/658 static remains authorized.
2026-10-26T13:23:26.975486+00:00 — Sage4833 STATIC1861 BEFORE: bounded DESIGNONLY for actual already-delisted/model-present FIRE branch; preserve38ba/1694+16/511 and all4832partial source. Trace original read/fireChecks/revoke/read, actual completeRevoke/C onefinalunlink and original runtime nonmodel/residual cleanup. Propose native branch+current local result association, oneuse closed-work consumer, distinguish writer CREATED/UNKNOWN/no terminal/rename fact; return any1854/56/59 clearing extension before bytes. No source/helper install/parse/Node/FS/process/proxy/test/gate/review/queue/landing authority.
2026-10-26T13:38:59.424908+00:00 — Sage4833 STATIC1861 AFTER: finalR2design f49c/18934 +actualidentity/worktable34e5/10353+caller3c98/6268+30unobservedrequirements1227/14749; manifestddd3/14867 pins9owned+8deps/16Gitcurrent38ba sources. Exact actual settings conditional404/revoke405/readreturn406 (R1line403commentnav corrected/preserved). Proposed nativefactory/branch enter-return/resultsidecar onlyactualmethod, actualCtypedlowerfinish/servicebookkeeping/residualprogress+closedbinding/lease/ALLcapablework/latestepoch/every401/freshWHOLEruns/storage/latches before intendedoneuseconsumer. Rawpublisher remainsSYNC; outerexistingasyncdrainoutsidewriterlock; management/local unknownnotterminalizedbyexception. Cresult factory/workledger/nativeW/metadata401/GC stillunwritten; no positiveplaceholder/localcompletionfromcallback/read/transactionnull. Proposed checked-snapshotR0 afteroriginaladaptercheck and finalR0afterread/reload/drain explicitlyNEWnonlockingpredicates, no ABA/globalimmutability; unrelatedB originalR0/noAtoken untouched. NativewriterCREATEDafterinvoke remainsUNKNOWN/no rename/nonattempt/dummywrite; cold1849/native656/result/no-record distinct. ONEscopequestion b09f/4384: separate SAMEHOST exactnoWriteFIRE eligibleexternalretirement replacesonlywriterresultconjunct1854/56/59, allothers/rootLAST retained. No suchrule/enum/clear/restartcode selected, no positiveDELETE/freshmissingfinal/latchreset/permanenthealthyholdwaiver. NativeC/source/W/ledger/B/GC/658independentcontinue. Full1694+16hashbytesblobTREE38ba13:36, prior4832all28artifact+14sourcesunchanged, scoped511/case15/fouroldretryrebootcontrols preserved. OPEN6571315 single201 ENTIREbody/author13/readback and MosT3substantivereturn4833 delivered. No source/helper installation/JSparse/Node/FS/process/proxy/test/full/gate/review/queue/global/FED288/landing/closure. Next4834.
2026-10-26T13:41:46.493164+00:00 — Sage4834 STATIC1862 BEFORE: prepare owned UNAPPLIED actual settings branch/factory/forwarding and adapter/predicate/closedbinding/local-result consumer source bodies; typed C native completion/closed-work/B/GC dependencies remain mandatory, not callback labels. Preserve38ba/1694+16/511/current old source/4832+4833 packets. No installation/parse/Node/process/FS/proxy/test/gate/review/queue/landing.
2026-10-26T14:12:46.483842+00:00 — Sage4834 STATIC1862 AFTER: selectednoWritebranch+samehostconsumer direction source-drafted5direct38ba diffs/virtual pins8485manifest21601,26owned+8deps/16sources. Wb0b6->31b1/31931; MKr2df0b->6d08/58361; runtime4dea->f7f9/57882; business647d->5310/35054; Cr2948b->dc0c/61666. Native actualfactory config/adapter attachbeforeoperations; onlyactualfireconditional nativeentry, originalrevoke/read return +exactnativeprivateforward; fifthINTERNALrevoke scope. Writer unusedbinding/firebranch separatefromcheckedcommit/outcome, originalR0/noAtoken forunrelatedB. Selectednew snapshotR0 afteroriginaladapter guard and finalR0 afterclosedwork/proofawaits areNONLOCKING; finalproxyconflictavoidsfalsekeptreceipt. NativeC capture actualconfirmation/snapshot/context BEFOREactualunlink/confirmed deletion; finished nativeflag ONLYafterownunlink/bookkeeping; private finished/currentcontext verifier; readonly completedroute no secondfinish. C native declaredservice method/residual observations, unknowninflightnotguessedsettled. Outer native source guards close-first/drain/readonlyprepare/ONEconsumption and nativebeforeafterinspector; ignored/substitutedmethodsuccessnotauthority. R1parts preserved. CRITICALhighernativeB/work/chainauthorityWeakMap ZEROregistrations, no publicsetter; native source/workledger/metadata401/WHOLEruns/storage/holds/latestprogress/typedGC/rootLAST factory UNWRITTEN, higherpositiveconstructorunreachable; no utilityinstallation/healthyavailabilityclaim. NativeCstrictlowercannotrebasedthroughtypedGCbyguess; genuineempty/coldassembledcompatibilitystillopen.30oldrequirements+3newguardsd7ccUNOBSERVED. Concrete currentclientpromise lacksnativeownedreq/res terminalticket; question006ac/6236 asksboundednativebeforeeffectworkgate+readonlyinspector internaloptions/no reverseimport/newendpoint/publicfield/stopauthority, UNKNOWNtransportnotremotehalt. No sixthclientdiffauthored. Full1694+16/past4832/4833 artifacts+sourcerehashed14:04 SHAbytesblobTREE38ba, source diffempty/scoped511/map69ce/names/assertions/deadlines/case15preserved. OPEN6571316 single201 ENTIREbody/author13/readback; substantiveMos4834delivered. No source/helperinstall/JSparse/Node/FS/process/proxy/test/full/gate/review/queue/global/FED288/landing/closure. Next4835independentnativeB/658 authorized; clientcouplingneedsselectionbeforebytes.
2026-10-26T14:19:05.310945+00:00 — Sage4835 STATIC1863 BEFORE: selected actual ManagementClient native workgate/readonly observation plus actual ModelKeys-beforeHTTP ledger; preserve ungated semantics/receipts/timing. Pin Node26.8.1 official docs/source and static localheader inference, no node process. Capacity128, no payload per-unusedgate duplication/no releaseforget-livework, preserve expected401disposal versus UNKNOWNerror. No install/parse/Node/FS/process/proxy/test/gate/review/queue/landing.
2026-10-26 Sage mos1864 course correction BEFORE:657/658 parked OPEN backlog at4835 static packet; no design applied. Source fixes641/642/643, assertions retained, independent Codex review, quiet-host full gate4 then authorized green/reviewed landing. Existing unrelated work preserved.
## 2026-10-23 — Row 288 C2-02 build starts (Bubba, #1793)
Before: agents can read the library; supporting-path and push-credential dependencies are separate unlanded heads. After intended: per-seat supporting writes/deletes with exact notices, human revert and one commit per Console save. Work is on bubba/row288, chained on original 283/285/286 commits; 284 tool base still pending. Plan and acceptance evidence: agents/bubba/work/queue-288/BUILD.md. Untested; no Node/test/build/gate run before Sage CLEAR. Landing waits for every dependency's own gate.
2026-10-25 | Bubba | Row288 #1793 gate after landed284 | Candidate2848d832e:289 whole files rc0 (2604 pass,1 covered FED skip),12 scripts rc0,6 mutants killed/restored controls rc0. Own bare-delete and fixture reds fixed with driver restarts; no pre288 red. Per-run hashes/rc in agents/bubba/work/queue-288/gate-r6-results.tsv. Slot returned Sage bubba-0034; manifest review/landing pending.
2026-10-26 Sage BEFORE Mos1864 source timing repair: isolate193774 row288; distinguish interpreter probe timeout, deterministic owned-socket idle-clock test, async copy child completion, retain assertions; one independent Codex review then quiet fullgate4.657/658 are backlog, not landing blockers.
2026-10-26 Sage SOURCE CHECKS Mos1864:641 injected ETIMEDOUT regression RED thenGREEN; keep1000ms fail-closed probe bound, distinct interpreter-probe-timeout.642 real-socket manual idle clock/readiness preserves assertions, ordinary-timeout mutationRED/restored.643 async owned child-close signal/readiness, all156 original assertions retained; combined39/39 zero anomaly; bus package1035/1035 zero skip. Independent Codex thread mcp:9245555c-5430-42f9-8afc-f77a70fc09ee pending; fullgate4/landing pending. No657/658 applied.
2026-10-26 Sage Codex review/fix Mos1864: independent thread mcp:9245555c-5430-42f9-8afc-f77a70fc09ee found one introduced P2 (detached copy descendants escape external timeout TERM). Fixed via fixture-only active-pool signal handling/native child close; actual regression RED→GREEN. Final affected40/40 zero skip/cancel/fail; all original assertions retained, productionserver unchanged. One review, no extra design gate; fullgate4 now pending quiet-host launch.
2026-10-26 Sage Mos1864/1881 model join AFTER verification: reviewed330/331 product362893d043ff96fdd35f18e326cce683db031471/treea7f7fcd7fc2cc4ba06efad78627f5f04929a0740 has321whole-file native PASS plus actual FEDR7 1/1; originalR2 orchestratorrc1 counter defect preserved separately. Whole bus1349/model-proxy100/webui490 PASS on unchanged product. Final PIN8.0.42, config55, all4P4+4P2 exact named mutant kills and whole restored controls PASS. Counter independent Codex review found2P2, reproduced7RED then23/23fixtures GREEN; failclosed unknown/missing summary and either-format failures. Commit/tree recorded before/end same; all1968 current+committed inputs mapped49c162c99 before later artifacts. Source join fix isolates runner-safe vocabulary from host ProxyPage imports; exact graph expectations retained. Original setup/timeouts/cleanup failures preserved; no657/658 installed/backlog remains. Documented Poe acceptance alias is byte-identical tested helper, not separately executed. Authorized landing next; source frozen.
2026-10-26 Sage LANDING Mos1864/1881: origin/refactor52ba14c5f now contains product362893 plus map/evidence49c162c99 and documented acceptance alias. Canonicalrefactor fast-forwarded by CAS with only136 exact accepted paths restored; unrelated8Rocko staged deletions and all untracked preserved, source/index clean for packages/scripts. Product1968hashes still match before/end freeze. Full source641–643/row288 previously63ec/acd; now330/331 landed same authorized window with applicable gates complete. Actual queue331 done refused rc2: round3 no recorded Boyd/Dewey approval;330 remains Poe in-progress with no formal round. No review impersonation/bypass; metadata closure is separate hard-rule wait. Tasks655/656 comments1336/1337 exact wholebody/author13 GET-verified, remainOPEN;657/658backlog unchanged. Ops660 runner update1334 independently GET-verified; no heavy gate active/no VM selected. No further source or gate work needed for this landing.
2026-10-26T17:51:50Z Dewey POST-LANDING REVIEW Mos1909/Mos1915 (retrospective review-phase receipt, not a build): BEFORE code already landed under1864 at52ba14c5f/product362893d04; historical round3 CHANGES and missing approvals preserved. AFTER independent source/original-task/evidence review saved agents/dewey/work/queue-331/postlanding-mos1909/REVIEW.md; sha256 ab7edcb484a32093e9cb541032def275665f1572aa97bb118d2742f1f29fa97c. Scoped APPROVE;646-648/652-655 FIXCONFIRMED,656 PARTIAL against broader original wording with matching-revoking-tmp/single-final-completion repair confirmed. All1968map inputs match current+committed product;339existing raw log hashes verified; relevant owner execution outcomes inspected with FED skip/dedicated native1/1 and original R2rc1 distinctions preserved. New findings none;657/658 remain backlog. FILE ONLY: no actual verdict comment, queue approval, task closure, source/helper/test changes, Node experiments or new gate.
2026-10-26T17:56:44Z Filbert POST-LANDING REVIEW Mos1909/1915 #1828 row330 (retrospective review receipt): BEFORE product362893d04 already landed underMos1864 at52ba14c5f; canonicalround1 request4137/4138 failed pre-send, no comment/approval. AFTER independent static source/brief/evidence review APPROVE for landed originalP4 repairs/current-generation P2join; saved agents/filbert/work/queue-330/postlanding-mos1909/REVIEW.md sha256 0f93bc883f1db2d2e136323040eaff2ad79aa184fa5ab140c94a0ae906f70ffe. All1968committed mapped blobs/bytes/SHA256 match product/candidate/cited0e1dd0a95; current1966match plus2queue-tracking differences; all43 evidence hashes match. OriginalR2rc1 preserved separately from supplied321whole+FEDR7/native1 and completed package/PIN/config/eightmutant+restore phases. NEW-330-01 retiring-key Console metadata gap is task-ready separate follow-up only, no reopening/newgate. No test/helper/source edit or run, live/secret access, formalpost/queue mutation, commit/push/closure;657/658 BACKLOG unchanged.
2026-10-26 | Sage | mos1884/#662 scope after330/331landing | ReadQ222/Q261/Q263 and659/660/662; posted bounded human-only factory settings/triage/defaulttwo-roundmandate/trackedno-exemptionflake scope with10acceptance criteria, task662comment1338 exactwholebody/author13GETverified. No implementation/review/gate launched.660c1335notready(review/merge, noVM); gatefacts1329/1334 retained; target integration/fullrunner confirmation follows readiness, no localfallback. Landedproduct/evidence unchanged;657/658backlog.
2026-10-26 | Sage | Mos1909/1915/1917 real postlanding reviews | Boyd/Dewey/Filbert/Gladstone real authored candidate52ba verdictfiles independently byte/hash-verified, allAPPROVE scoped; Dewey656broaderPARTIAL retained. Formal330R1/331R4 requests failedpre-send/no comments or approvals; no borrowed/copied/mintedkeys. LegacyhelperGETname jason.woltje is NOT ownJarvis, ownslotabsent; rows tracking-open/#436, files cited via normalqueue. NewFilbertNEW-330-01 filedtask665 exactreadback, notlandingreopen/gate. Repair646-648/652-656 remainOPEN untilactualcomments;1917 conditionalbacklog routing retained. #662scope1338posted;660PR405REVISE/notready. Product1968inputs unchanged; no source/helper/test/gate edits/runs; peerjournal prefixes preserved.
-501
View File
@@ -1,501 +0,0 @@
# Row 288 (#1793): C2-02 agent writes, notices, revert and Console saves
Owner: Bubba, Codex gpt-6.1-sol, thread 3d6672b5-5544-4b95-9e09-e79574f1aa14.
Reviewer: Webby. Gate and landing: Sage. Append-only build record.
## 2026-10-23 start and implementation plan
Base 45dca69f6 on bubba/row288. Direct mandate mos-1499 (Q245), confirmed sage-3613.
The canonical `scripts/mosaic queue next bubba` returned `nothing`; Sage owns the owner transition.
The initial worktree invocation refused linked-worktree use; retried in canonical checkout.
Spec: docs/plans/2026-10-20_case2-rows.md, C2-02; agents/gosalyn/work/case2/DESIGN.md ruling after r11.
Handoffs: Honker queue-283 BUILD.md Q4 (missing/non-100644 delete refuses); Morgana
queue-225 BUILD.md A2 at 66f7becf2 (strict revert arguments/result), confirmed by Fethry fethry-0005.
`project` is the business.projects key, never a chat UUID.
Dependencies merged with their commits intact, no amend or force-push:
- 283 origin/honker/row283-build 88ec5e8e4 (new E4 head to follow).
- 285 origin/scrooge/row285-r2 53db6b7ca.
- 286 origin/ludwig/row286-r2 573fa0be0.
- 284: no named remote branch yet. Tool changes come last.
All merge commits are marked Untested. Nothing has run under Node. Sage's latest instruction
sage-3613 reserves **all Node and test runs** for CLEAR; this supersedes the initial targeted-test
permission. Build untested now as instructed, then run RED/GREEN checks/mutants on CLEAR.
Architecture: one host-only plumbing writer under the existing library lock; broker authorizes and
selects credentials, then inserts the fixed notice directly. Human save/revert use editor +
library-human independently of seat lifecycle. No worktree, deferred push, role expansion or UI.
### Tasks and acceptance
- [ ] Plumbing: new library/src/write.mjs, mirror state publication and package exports; new
library/tests/write.test.mjs. One-parent write/delete, byte-exact content, seat identity/trailer,
stale-base, nonregular/missing deletes, retry once on an unrelated remote change, push failure
without local ref movement, human editor and revert reachability/single-path checks.
- [ ] Broker + runtime: library.doc.write/delete, library.file.save, library.revert; strict keys,
creative + library.write + live unheld project grant; direct exact notice; human-only save/revert.
New bus/tests/library-write.test.mjs covers authorization, unchanged refs, A2 contract and socket.
- [ ] Transport: only human library.file.save joins the existing large-save exception. New tests
prove >64 KiB save accepted, agent writes retain 64 KiB bound, malformed/oversize saves refuse.
- [ ] Tools after 284: library_doc_write/delete in harness tools; exact eight/ten-name snapshots
in a new harness test; cli dispatch wiring.
- [ ] Verify on CLEAR: new tests, library/bus/harness suites and all scripts/test-*.sh on Sage's
assigned slot. Mutants remove supporting guard and force push; both must fail. Fixture-token
search over captured output. No gate, landing or queue move claimed before Sage's acceptance.
Pre-flight interfaces: broker consumes library writer {project,path,commit}; revert adds reverted;
writer consumes C2-03b push {pushed} or {raced,tip} and supportingPath(mapping,universe,path,tree).
State publication must add optional lastPush while preserving old state readability. Refusals must
restore fetched remote-tracking refs as well as preserve served. Runtime must bind credential file
references itself; no file, identity, message or credential is supplied by the agent.
Necessary file-scope additions: packages/bus/src/runtime.mjs (actual adapter injection),
packages/library/src/index.mjs (exports), and CLI's existing console adapter if saves require it.
Reported to Sage in bubba-0002. Existing tests will not be edited without Mos's OK via Sage.
Review focus: remote tip races, nonregular entries and folded paths, unsafe human credential before
git, revert after revoked/fired writer, and large-request exception never extending agent writes.
### Existing-test changes
None authored by Bubba yet. Dependency test changes remain their owners' original commits.
## 2026-10-23 first static build (not a gate result)
283 E4 merged intact at 76d651dba. Honker next reports e67c27b32 (test environment only), to merge
before push. Della reports row 284 has not been built/pushed; row224's 23816cf28 is not a 284 head.
No speculative 284 pin. Typed tools and served-blob lookup integration remain pending 284.
Implemented (unrun): bare plumbing writer, one-parent commit and fixed trailer, exact-content blobs,
base comparison, supporting path guard and delete regular-blob check, one remote-race retry,
ref restoration on refusal, immediate served publication/lastPush; human save and reachable one-path
business-trailer revert; broker grants/identity/notice path; runtime adapter wiring; large-save socket
exception. New tests: library/tests/write.test.mjs and bus/tests/library-write.test.mjs. No old test edits.
### Approved scope additions, sage-3628
Every hunk outside the brief's owned list:
- `packages/bus/src/runtime.mjs`: `humanWriteOptions` checks editor before choosing the human slot;
three library adapter entries bind dataRoot, command and the host-only seat store reference. These
are needed to make actual bus calls reach the new writer without accepting agent-supplied files.
- `packages/library/src/index.mjs`: export writeLibraryDoc/saveLibraryFile/revertLibraryCommit so
runtime's existing library module adapter can call them.
- `packages/library/src/sync.mjs`: shared write guard with opaque token compared by identity;
push's race fetch recognizes only that owner and does not clear its guard; ordinary sync and a
forged token still refuse library-sync-busy. Narrow publishLibraryWrite validates ids, reads the
locked state, rebuilds the index via readLibrary, moves served/tracking and writes lastPush. The
raw writeState remains private and is not exported through index.mjs.
Ludwig ludwig-0064 reviewed the intended interface and requested the opaque token (implemented),
narrow publication (implemented), whole library + bus library-credential checks and a token mutant
(planned). His 573fa0be0 remains current and unrun. 288's additions are separate commits, not folded
into 286. Tracking restores only if the whole write refuses, not between the first race and retry.
Known tradeoff, accepted by Sage sage-3628 for MVP: the brief holds the flock through network Git;
readers can hit the existing 5-second library-sync-busy while it runs. Structural supportingPath
preflight is pure and precedes Git; served/fetched listTree checks repeat it with the real tree before
any remote write. A tree-dependent check necessarily reads the tree first (Honker honker-0184 item2).
### Mutants for CLEAR
- Remove the `pathOf` calls for agent operations: the M12 broker/bare-ref tests must fail on a
story/unsupported path while checking remote, tracking and served refs.
- Prefix the push refspec in syncCommand with `+`: write.test moved-target race must fail, because
its command seam preserves production syncCommand's refspec (only remote URL/protocol are fixture).
- Replace `writers.get(mirror) === writeToken` with `true`: write.test forged-token case must fail.
No Node, test, build or mutant has run. `git diff --check` is clean. Counts are not claimed.
### Console dispatch integration
The existing cli delegates its transport wiring to console-bus.mjs, so the save dispatch needs that
file too: one null `librarySave` option and one `--send` assignment to library.file.save. cli.mjs
threads that option into startServer; row C2-11b owns the actual route/page that consumes it. New
webui/tests/library-write-options.test.mjs covers --send and the user transport boundary. 225 owns
libraryRevert dispatch; 288 adds only librarySave to avoid overlapping that ownership. Additional
scope reported to Sage and Fethry. No changes to an existing test.
## 2026-10-23 second static pass and dependency review
First push: c867cada9 on origin/bubba/row288, reported bubba-0005 to Sage/Webby/Mos and
bubba-0006 to Fethry/Ludwig. No PR created and no review/gate requested as complete.
Ludwig ludwig-0065 checked the exact sync diff against 286 without running anything. Token identity,
ordinary-sync exclusion, 286 R1 preservation, guard key and end-of-write tracking restoration fit.
F1: state publication could fail after served moved, leaving old state/new served. Root cause is
publication order without rollback, compared against sync's existing rollback. Added an unrun
filesystem rename-failure regression, then changed the narrow helper: on failure it validates the
state under the same lock, CAS-restoring served if state has not published the new commit. If rename
succeeded but directory fsync failed and the state validates against new served, it keeps that pair.
All failure cases answer outcome-unknown; tracking remains the commit already pushed remotely.
Verification is pending CLEAR, so this is a proposed fix, not a tested resolution.
Added the actual broker-to-bare tests for each M12 path refusal (both agent verbs), unchanged remote
and all mirror refs, exact write/delete notices, and human revert after fixture grant removal/hold.
The bare fixture moved to new library/tests/write-fixture.mjs so broker tests reuse real plumbing.
Added the raw socket proof-nested-save-name case to pin the parsed-verb large-request check.
Missing editor/slot tests now make the mirror metadata invalid first: reaching Git would change the
refusal, so the tests check the pre-Git gate rather than merely count remote commands.
Additional required doc hunk: packages/library/README.md appends the four verb contracts,
lastPush shape, exact notice, lock tradeoff and publication failure behavior. No existing test from
the dependency/base has changed. All new/modified tests in this pass were authored by this row.
`git diff --check` remains clean. No Node/tests/build/mutants run; 284 and CLEAR remain pending.
## 2026-10-23 early review follow-up (Webby E1-E6; Ludwig F2)
Sage sage-3652 approves console-bus.mjs wiring (null option + --send dispatch), confirms editor.user
as the sole human login source and reserves CLEAR for T3/T4 after T2. Ordinary sync()'s separate
post-rename fsync gap stays out of 288 per that ruling; no change to sync()'s existing rollback.
Honker 283 head 46bad7ea3 merged intact: mapping editor.user is optional, and if present uses the
existing plain Gitea-user pattern. The omission at mapping level is valid; human writes refuse it.
- Ludwig F2 / Webby E6: confirmed the previous runtime used the fetch bot's mapping.user wrongly.
Runtime now passes mapping.editor.user to humanCredential, never mapping.user. Missing user gives
library-human-missing before Git. New real-runtime cases pin both save and revert with a separate
fetch-bot login, positive pushes under her-gitea-login, and no command for an absent editor login.
The broker's credential.agent is s.role, not args: added an exact assertion and strict-key refusal
cases for caller-supplied agent and credential.
- E1: replaced the business-id RegExp interpolation with a literal startsWith(business.id + '/')
check and ID_PATTERN on only the instance suffix. New acme.co vs acme-co trailer test.
- E2: new broker→bare case holds the seat in the fetch command. beforePush must refuse
library-write-no-grant with all local refs and the remote unchanged and no notice. New mutant:
remove `options.beforePush?.();` in write.mjs; the E2 test must fail.
- E3: new broker cases for expired rotate_by, fire.stopped without fire.done, missing role.publish
project, grant/identity Gitea-user mismatch, and missing identity name/email, for both agent verbs.
- E4: the exceptional publication failure currently returns outcome-unknown before the broker has
a successful result to put in a notice, so a remote agent commit can exist without a Console
notice. There is no durable notice outbox/retry in this row. The trailer commit remains human
revertible by id after sync; this is an explicit known failure-mode gap for the manifest, not
a claim that every failed publication emits a notice. A new real-push test breaks state decoding
after push admission, pins outcome-unknown, old served and no notice. It also found a local error
propagation gap: errors before publishLibraryWrite's internal try now normalize to outcome-unknown
in the writer once push has succeeded, so the caller is never told an ordinary refused-write code.
- E5: 284 still has no build. Tools/8-or-10 snapshot and served-blob integration remain pending.
librarySave is intentionally only an adapter option until C2-11b supplies its route/page.
All tests above are newly authored by row288 and remain unrun; no changes to baseline/dependency
tests. RED/GREEN and mutants await CLEAR. Proposed fixes are not claimed verified. The new host-only
library write module imports the existing pure ID_PATTERN to match the broker's accepted instance ids.
## 2026-10-23 mos-1520 ruling: post-push notice is required
Correction to the E4 interpretation above: Mos rejected the known-gap treatment. The requirement
stays: a pushed agent commit has the exact notice even if local publication then fails. This is not
an outbox or retry. The writer now calls the broker's trusted synchronous onPushed callback as soon
as push returns pushed:true, before publication. The callback records the exact library-write notice
and action.allowed in the normal Console-store transaction. Publication failure still answers
outcome-unknown. The notice's Revert can refuse library-revert-not-agent until sync makes that commit
reachable from served; README now says that explicitly and removes the rejected gap description.
The row's own real-push corruption test now pins the exact notice body with the pushed id, old
served and outcome-unknown; after restoring readable state it pins Revert's refusal before sync and
success after sync. The successful-write adapter fixture calls onPushed too, matching runtime's
writer contract. No existing baseline/dependency test changed (mos-1520 explicitly authorizes this
row's test correction without mos-1272).
Residual Console-store failure: if notice insertion/routing/its event transaction fails, the broker
calls a separate host log sink with {event:library-notice-store-failed,code:outcome-unknown,business,
instance,op,commit}. It logs no args, path content, credential, raw SQL or exception output. Runtime's
new library.log adapter writes this metadata to stderr. The caller gets outcome-unknown even if
recording action.refused in that same broken store fails. A new real-push test uses temporary SQLite
abort triggers on notice insertion and refusal evidence, checks remote advanced/served unchanged,
no message, the exact external log and outcome-unknown. It does not claim a notice can be stored in
a failed Console store. If the host log sink itself also fails, no durable log can be promised; the
caller still receives outcome-unknown. The runtime log hunk is the required residual-failure wiring.
Mutant added: move `options.onPushed?.({ project: context.project, path: change.path, commit });`
from before `await publishLibraryWrite(...)` to immediately after that await inside the same try.
Successful operations keep their notice, but the outcome-unknown publication path drops it. The
C2-02 E4 real-push corruption test must fail on its exact notice assertion. Run on CLEAR and restore.
No Node/tests/build/mutants run. Static git diff --check clean. Della's first284 head0ed4fbab9 is
explicitly incomplete and not a finished dependency; waiting for her complete-head pin before tools.
Webby webby-0253 (static, cef503cb9) closes E4 per mos-1520; no tests ran. N1: a failed notice insert throws from onPushed before publication, so served stays at the prior commit until sync; the store-failure test pins this safe direction. Only E5 (284 tools/snapshot integration) remains open in this early review.
## 2026-10-23 complete284 merge and final tool integration (unrun)
Della della-0037 supplied complete untested head47db04eba85ac3ceb7e81385603f97bb6f8c1a38,
replacing the incomplete head. Merged intact as c0ca3894c. Its22423816cf28 and2164f3fbc25a
lineage is retained. Three conflicts were in overlapping production wiring only:
- broker.mjs: keep Della's LIBRARY_LOOKUPS object and #requestLibraryLookup byte-for-byte, and
keep288 writer/notice methods; LIBRARY_VERBS contains both sets and request dispatch calls lookup.
- runtime.mjs: keep lookup adapter plus288's metadata log and write adapters.
- library/index.mjs: keep index/query exports,286's push/humanCredential exports and288's writer exports.
No dependency test body was changed in the merge. These are overlapping consumer integrations,
not rewrites of dependency commits. Every prerequisite still needs its own gate (mos-1351).
Added library_doc_write/library_doc_delete after the five lookups, only for a creative definition
with a within-role library.write grant and library enabled. Closed schemas carry exactly
{universe,path,base,content} and {universe,path,base}; base is string-or-null with 40-lowercase-hex
pattern. No project, business, author, credential, commit or message. tools.action is library.write.
New harness/tests/library-write-tools.test.mjs pins per-role eight/ten names, both schema invariants,
no repo/commit/business/accept, exact required/verb/action, nullable base, and missing library/grant
or noncreative exclusion. This satisfies sage-3678 and mos-1523's replacement coverage condition.
Publication's narrow helper now calls indexFor for the new served commit instead of only readLibrary,
so the284 lookup index is rebuilt before publication. New broker integration uses library.get's
served blob as write/delete base, independently checks served:path, reads the new text/blob immediately,
preserves default-canon null, then sees null after delete. No change to284's query behavior.
### Authorized baseline-test migration, own commit (mos-1523 via sage-3677)
File: packages/harness/tests/library-tools.test.mjs. Numstat: +4/-4, exactly.
The noncreative LOOKUPS assertion at :33 is unchanged. Every existing lookup schema assertion stays.
The four old/new lines are:
```diff
- ? ['web_search', 'web_fetch'] : []), ...LOOKUPS];
+ ? ['web_search', 'web_fetch'] : []), ...LOOKUPS, 'library_doc_write', 'library_doc_delete'];
-test('M3: per-role snapshots contain six names, or eight with the C2-08 web grant', t => {
+test('M3: per-role snapshots contain eight names, or ten with the C2-08 web grant', t => {
- for (const [i, tool] of tools.filter(t => t.name.startsWith('library_')).entries()) {
+ for (const [i, tool] of tools.filter(t => LOOKUPS.includes(t.name)).entries()) {
- assert.deepEqual(tools.map(t => t.name), ['send_message', ...LOOKUPS]);
+ assert.deepEqual(tools.map(t => t.name), ['send_message', ...LOOKUPS, 'library_doc_write', 'library_doc_delete']);
```
Additional schema mutant (mos-1523): add `commit: str("caller commit")` to writeBase in tools.mjs,
thereby adding it to either/both write schemas. The new-file schema test must fail both its exact
property set and forbidden-property assertions. Run on CLEAR and restore. No further assertion
change in library-tools.test.mjs is authorized or made.
All code/tests/mutants remain unrun. No Node, build or syntax check before Sage's named CLEAR.
Static diff --check is clean. Scope additions stay listed above, now including indexFor import and
call in the previously approved narrow publication helper. E5 implementation is present; review and
acceptance are pending evidence, not claimed complete.
## 2026-10-23 testing and landing boundary (sage-3682)
Latest complete dependency2845d587a552 (test/docs only over47db04eba) merged intact as f8f79ea2f.
Own tool implementation cd2f50dae and separate mos-1523 migration29455c0c5 are pushed; Webby reads
E5 and Dewey checks the migration. Static manifest-r1 covered21 own paths at f8f79ea2f.
Sage reserves first focused runs/RED-GREEN/mutants for T7, provisionally about22:25Z, unless he
explicitly frees an earlier lane. No Node before his CLEAR. This is a schedule, not CLEAR. Full
library/bus/harness and shell gates still need their own authorized slot; no gate result is claimed.
Before the gate, incorporate landed refactor after283/224/284 land while preserving every
prerequisite. Under the standing add-commits/no-force-push rule, update this published branch by merge
rather than rewriting its pushed history. 288 lands last in the chain; no landing is authorized here.
## 2026-10-23 E5 static closure and N2 wording
Dewey dewey-0948: the mos-1523 migration at29455c0c5 is static CLEAN, exactly+4/-4, with the
noncreative assertion unchanged and new-file schema coverage meeting every condition. Webby
webby-0263: E5 closed on29455c0c5/cd2f50dae (f8f79ea2f;98ca25ab1 only BUILD.md), nothing blocking.
Both ran nothing; Webby did not read the scratch manifest, so no manifest verification is implied.
Webby N2: delete inherited the write base description "or null to create". Delete now overrides only
that description: "The existing file's blob from library_get; a missing file cannot be deleted".
The reviewed nullable-base schema/required keys/verbs remain unchanged. The row's new schema test
pins create wording only on write and existing-file wording without create on delete. No further
assertion change in the baseline library-tools.test.mjs. No Node/tests run; still await Sage CLEAR.
## 2026-10-23 dependency283 follow-up (honker-0195)
Merged origin/honker/row283-build b2a1f4092 intact, fast-forward lineage from46bad7ea3. It changes
supporting.test's helper and Honker's BUILD receipts only; no production source changed. Honker
reports library98/98, business231/231 and14/14 mutants killed on that dependency head. Those are
his dependency receipts, not verification of288's combined branch. No288 Node/tests run; Sage's
CLEAR is still required. The dependency's own gate/landing remains Sage's responsibility.
## 2026-10-23 new candidate after283 landing (sage-3727, honker-0200)
Created bubba/row288-r2 from the preserved published bubba/row2887c53adf10, then rebased with
--rebase-merges --no-update-refs onto93694c5185d0a7f989d2fe78fb620e44599b744e. This supersedes
the earlier merge-only refresh plan for this candidate: Sage explicitly requested a fresh branch,
not a force-push. Both local and remote bubba/row288 remain7c53adf10, unchanged.
Git skipped12 duplicate283 commits already replayed upstream. Range-diff of
45dca69f6..bubba/row288 against93694c518..bubba/row288-r2 (before this receipt) has35 equal
commits,12 dropped,0 modified,0 added. Full output: scratch/bubba-row288/rebase-r2-range-diff.txt
under /mnt/storage. The other prerequisite commits retain their patches; row216/224 identities are
unchanged where Git could retain them. This is not new verification of any prerequisite.
Replayed merges had the same launcher-footer and broker/runtime/index conflicts as before. Reused
the exact previously reviewed combined file bytes, keeping both launcher test bodies and all lookup
and writer paths. Static comparison before this receipt: all21 own manifest paths byte-identical
to7c53adf10; all16 other changed paths exactly match93694c518 upstream. These include newly landed
226 and coordination/docs changes already on that base, not new288 edits. No baseline assertion or
production change was introduced by conflict resolution.
Sage's base93694c518 is an ancestor of the candidate; old283 b2a1f4092 is not. Static diff --check
clean. No Node, test, syntax, build, mutant or gate run. Named CLEAR/T7 still pending;288 lands last.
## 2026-10-24 static preflight before landed284 base (sage-4282)
No Node, npm, test, syntax, mutant, queue command or gate ran. Still on bubba/row288-r2,
b44152ac6 plus this static follow-up; await Sage's landed284 base before a fresh candidate branch.
Do not treat the earlier T7 estimate as CLEAR. Webby remains reviewer.
### Updated C2-02 brief and contract names (webby-0282 N1)
Read C2-02 on origin/refactor 95d4991d20a4ef291c824d37c886eaeaa9be7062; current brief blob 85e6fe2ecfc53ed615b7b61aade88ae0cbb222ef
(the new ruling is identified by Sage as5e8a720b). Statically checked both the candidate and current
refactor versions of all six creative contracts: roles/companion.md, research.md, ideas.md,
proofreader.md, fact-checker.md and continuity.md. Every one names library_doc_write and
library_doc_delete, exactly the two add() names in candidate harness/src/tools.mjs. No role contract
change is needed or made. Exact-name evidence is tool-contract-audit.json in the scratch dir below.
### mos-1584 fixture audit
The new row288 harness tests reach businessDoc through resolvedFor, but their callbacks add only a
creative role; they add no library business project. library:true is the typedTools option, not a
businessDoc project. The broker/runtime/bare-library tests build minimal business objects directly,
not businessDoc. The migrated baseline harness test likewise adds no library business project.
There is therefore no new row288 businessDoc-with-library fixture requiring a chief-reference edit.
The current and future landed-base imported fixtures must be rechecked after the pending rebase;
any validating businessDoc fixture that adds a library project must retain/provide chief gitea.
Shortened only two row288-authored fixture credential values: write-fixture.mjs uses fx288-write,
and the runtime test's two slots use fx288-human. Both are11 characters, below24. This corrects the
25-character runtime value and avoids an edge at the older23-character write value. No assertion
changed, no baseline test edit and no credential file was read. No live credential action occurred.
### mos-1612 whole-file run-list preparation (not run authorization)
Static lexer traversed real import/re-export/require and new-URL module-entry edges, skipping
comments/quoted fixture code; reverse closures carry a chain witness for every selected test.
Used the union of this older candidate and the current refactor source snapshots so newer importers
are visible without prematurely rebasing. It selected270 whole test files. Required whole library,
bus and harness suites add17 distinct files, making a proposed union of287 (not a narrow grep list):
bus115, business2, cli58, harness16, library13, plugins1, processing-control1, seat5, tasks9, webui67.
The brief also names all12 scripts/test-*.sh runners. No file/runner was executed.
packages/cli/tests/case1-accept.test.mjs is explicitly excluded under mos-1592/1612. The11
nonliteral-import files have a manual expression audit; all already occur in the import-selected
whole-file set. Generated programs and runtime plugin discovery are recorded static limitations,
not asserted fully resolved by the lexer. Whole suites and the named script runners retain their
brief-required coverage. Regenerate after landed284 rebase; report exact final sha/list before CLEAR.
Each approved gate later needs own root/webui npm ci, required editor build, short scratch TMPDIR,
whole files and gate skip receipts under the then-current rules. These are plans, not past evidence.
Artifacts: /mnt/storage/scratch/bubba-row288/static-2026-10-24/
- import-run-list.py SHA256 ec18031c87bf6f96b3e794e2e56747bc5e1fe37580de7ce9444c60cd5f18ddc0
- whole-files.txt SHA256 b2d6c11349268c347e51a64fe6bf9e7c4d560238a8fc5b5e10f600f1e6e8a39e
- import-witnesses.json SHA256 01702657d34c4f2c0635f38741d0a5b57cfdda63d5e96897f188d03971afd5d9
- dynamic-import-audit.txt SHA256 42b8721fde783c618e1347f2609ad6e4ae3144f563272f0bbbeb45c34f751018
- brief-required-whole-files.txt SHA256 254828414cd9b1b0a785df5c23b7f2b9ea7564d1f85e648899801e46194d135f
- proposed-whole-files.txt SHA256 bee666dce2c3f2d0bafe7e963fb443ad356b6ae8719ac3cb8ee413a329578035
- brief-script-runners.txt SHA256 02cd25af486c163189977106e055575145bffba688c7836e2a508f5ec91e76d4
- tool-contract-audit.json SHA256 bf07865d796b8b0aed85d84c015430ea03468c5331bcaae9eb80efafe1a182be
- fixture-audit.json SHA256 436a69a6b8548d8426390e867ed4b0f83693a3116d825c26c6f8a3e788f477d6
## 2026-10-25 landed-base transplant (sage-4338), UNTESTED
Named base: 78b69e1e68b2b8a9dc4c02564381a0792c0c7549, including landed284 ce0b6ed41.
New branch bubba/row288-r3-landed; published r2 e7c31a90d is untouched.
The initial --rebase-merges replay tried to reapply already-landed285 and conflicted;
aborted without resolving those conflicts. Transplanted only the twelve Bubba nonmerge
commits, in order, onto the named base using cherry-pick. No dependency commits replayed.
Conflict resolutions (no test conflicts, no assertion changes):
- BUILD-LOG.md and docs/SESSIONS.md: preserve the entire upstream side, append Bubba entries.
- broker.mjs: retain landed LIBRARY_LOOKUPS and lookup dispatch, add writer verbs/methods;
retain the complete landed library.status replyLimits branch after writer/save/revert dispatch.
- server.mjs: retain landed refusal envelope including reason, combine project/library save detection.
- library/index.mjs: retain every landed export, append the writer exports.
- webui cli.mjs and console-bus.mjs: preserve landed libraryRevert and add librarySave alongside it.
- runtime.mjs (notice follow-up): retain landed lookup adapter, add metadata-only log sink.
All other changes merged automatically. No business role/vocabulary file or dependency packet changed.
Baseline test migration remains packages/harness/tests/library-tools.test.mjs +4/-4 (mos-1523).
Only additional own-test edit removes a trailing blank EOF line in write-fixture.mjs.
Line-reference recheck: the sole explicit source-line citation in this append-only packet,
noncreative LOOKUPS :33, is still exactly line33 of library-tools.test.mjs and unchanged.
Historical fired-chief path4308 described an older broker; current fire.stopped/fire.done are
broker.mjs5126/5147 (firing detection863-865). Those historical receipts remain historical.
Old head/brief identifiers and T7 times above are historical, not the present base or CLEAR.
Final import-list audit uses candidate + exact named-base import graphs, eleven changed source
modules as roots, and all touched tests; no text grep selects a test. 272 whole files selected,
plus17 brief-required library/bus/harness files =289 files. Package counts: bus116, business2,
cli59, harness16, library13, plugins1, processing-control1, seat5, tasks9, webui67.
All12 current scripts/test-*.sh runners retained. case1-accept.test.mjs excluded explicitly.
The eleven nonliteral import expression sites were rechecked; whole parent tests already selected.
Generated programs/runtime plugin discovery remain documented static limitations.
Artifacts and chain witnesses: /mnt/storage/scratch/bubba-row288/static-r3/.
No Node, npm, test, syntax check, build, mutant or gate run. Pending Sage CLEAR.
## 2026-10-25 first CLEAR and delete-path RED/GREEN (sage-4396/4398)
Own root npm ci rc0; own webui npm ci rc0; editor build rc0. Fresh TMPDIR from mktemp
under /mnt/storage/scratch/tmp. All Node whole-file runs nice19, timeout600 kill-after10.
Initial own write.test.mjs rc1,10 pass/2 fail: delete and revert-to-absent hit library-git.
Isolated bare Git confirms update-index --force-remove rc128 (requires worktree), while
--index-info rc0. First replacement and two delimiter-investigation reruns still rc1,
10/2: runGit's stdin argument names an input FILE, not input text. No pre-existing test
ran or was edited. Final correction writes a private NUL-delimited removal record in the
already-cleaned staging dir and supplies that file to update-index -z --index-info.
Whole write.test.mjs now rc0,12/12,0 skipped/cancelled. Source-only fix in owned write.mjs.
Logs remain /mnt/storage/scratch/bubba-row288/gate-r3/ (write-fixed through write-fixed4).
Sage4398 authorizes this fix and requires committed new candidate + driver restart from
first whole file. Focused green is not the complete gate; remaining acceptance pending.
## 2026-10-25 new broker-fixture RED/GREEN, driver restart pending
Candidate7932c979a driver first library file rc0,12/12; second own bus library-write rc1,
0/14 (fixture FK and undefined dataRoot). Own fixture lacked gitea_users parent; insert
with valid16-hex nonce, consistent with landed credential tests. First attempted fixture
nonce was invalid and INSERT OR IGNORE hid it; corrected nonce, no product/schema changes.
Every bare.dataRoot reference was undefined: use bare.context.dataRoot. After these fixes,
whole file rc1,13/14, last assertion assumed lines were strings; query returns [line,text].
Corrected this row's new assertion to exact [1,'new served text']; whole file rc0,14/14,
0 skipped/cancelled. Intermediate logs bus-fixture-fixed{,2,3} under gate-r4 retained.
Only owned new bus/tests/library-write.test.mjs changes (+14/-12); no pre288 test changed
or failed. Commit this fixture correction, then restart all289 whole files from the start.
## 2026-10-25 creative typed-tool fixture RED/GREEN
Candidate4fb11e74a restart: library write12/12 rc0; bus write14/14 rc0; own harness
library-write-tools rc1,0/3 before assertions: new creative role fixture omitted the
Gitea credential reference required by landed285. Added the same fixture reference copy
as landed library-tools.test.mjs (no credential file read); no assertion changes. Whole
own harness file now3/3 rc0. Only new owned test+BUILD changed. No pre288 test failed.
Commit and restart driver from first whole file again; gate still not claimed green.
## 2026-10-25 completed candidate gate (sage-4396), SLOT RETURNED
Tested candidate2848d832e (three additive fix commits after requested8a47c462a).
Driver restarted from first whole file after EACH fix. Positive gate-r6: all289 whole
files rc0,2604 pass/0 fail/0 cancelled/1 deliberate FED R7 skip. Full required suites:
library168/168 (13 files), bus1035/1035 (116), harness180/180 (16). Other selected:
business25/25, cli619 pass/1 skip, plugins8/8, processing-control7/7, seat69/69,
tasks95/95, webui398/398. Case1 acceptance excluded. Final import graph regenerated on
2848d832e in static-r6: whole-files.txt byte-identical to static-r3 selection.
All12 scripts rc0: test-auth,conductor,config,discord,extension-package,
federation-acceptance,foundation,land-work,push-check,queue,release,task.
FED R7 dedicated runner covers ordinary-suite skip. Queue wrapper28/0 and node156/156;
canonical-root verify/render check deliberately skipped in this linked worktree.
Root/webui own npm ci and editor build rc0 before runs. All tests nice19, sequential,
whole-file timeout600/kill-after10; scripts timeout1800/kill-after10. Fresh mktemp TMPDIR
/mnt/storage/scratch/tmp/ for each restarted driver; no /tmp test root.
Six mutants killed (each rc1), restored positive whole files each rc0:
- M1 supporting checks removed: broker M12 refusal assertion.
- M2 forced push refspec: unrelated-blob retry/new-parent and guard assertions.
- M3 forged owner token: missing expected rejection in exact-token test.
- M4 beforePush grant recheck removed: held-during-fetch expected rejection.
- M5 notice after publication: E4 exact notice and failed-store assertions.
- M6 caller commit in schema: exact property-set schema assertion.
Source SHA256 restored after every mutant; git status clean afterward.
Captured logs across all four run attempts scanned for both fixture credentials:0 hits.
No pre288 test failed; no pre288 assertion changed beyond approved mos-1523 +4/-4.
Per-run rc and log hashes: gate-r6-results.tsv; counts: gate-r6-summary.json in this
packet. Full logs, mutant diffs, drivers and JSONL receipts under
/mnt/storage/scratch/bubba-row288/gate-r6/. Earlier RED/intermediate logs retained in r3-r5.
Slot-returned report sent to Sage as bubba-0034; no further tests after slot return.
Review notes to carry into request (webby-0296): N1 baseline library-tools.test.mjs73
still says tool names unchanged while the pin gains writer names; retained to honor the
narrow +4/-4 permission. N2 librarySave is dispatch plumbing only; C2-11b owns the route
that consumes it. N3 sync comment omission is cosmetic and unchanged from reviewed r2.
Commit-count correction: r3 initial head8a47c462a had13 commits, twelve transplants plus
receipt (BUILD +36, SESSIONS +2, fixture EOF -1). Current tested head adds three fix commits.
Formal manifest review/gate acceptance and landing remain Sage/Webby stages, not claimed.
@@ -1,308 +0,0 @@
kind name rc restored_rc log_sha256
whole-file packages/library/tests/write.test.mjs 0 e0f6a09b70316beebbf33966b35bfd05b4a12b587744dadc9239bd28de1b976c
whole-file packages/bus/tests/library-write.test.mjs 0 e0e9e609b20ea0564a7611046026cbdfd007832e0eb13507798e958d8d106ef0
whole-file packages/harness/tests/library-write-tools.test.mjs 0 c8a3a493d1d2abce785e94fdda5b1732e8d4a5e6eb19767af1b7e8b5e560cf3b
whole-file packages/webui/tests/library-write-options.test.mjs 0 2491eb6a01a0b4b2127bcb6a87a5dc778d079b7d1ea445509a1dffc49dea9051
whole-file packages/bus/tests/access-revoke.test.mjs 0 a1b317bb687e8c369440f5481b4ef309615afb5a5922fa306980d2024019e544
whole-file packages/bus/tests/account-migration.test.mjs 0 e697b58a1bb9b37c609b441fe786e557c7f0279e7a31eea791483ce4567db318
whole-file packages/bus/tests/address.test.mjs 0 977f755d29a8e75578d0bef48ec40b7045736014b2e53e15a03cdb6dd39696d8
whole-file packages/bus/tests/agents.test.mjs 0 3e8116bad1ab5594e627ba3e9f5403414885959935bcd9e6f75f1af4c625d4b0
whole-file packages/bus/tests/approval-binding.test.mjs 0 d2fbee516b57857f3a6562427d2a08bd7fdb772aacabd33ebd9d2990f01ec7fa
whole-file packages/bus/tests/broker.test.mjs 0 400e7f0616bc7432d8cb2a9efbae3c84d5b44ef59ce7f8fbebd4c802e2a9f44e
whole-file packages/bus/tests/business.test.mjs 0 f42502884a158ed1d190b37b3884e19d44547ececf068f91765b8ad15faffba3
whole-file packages/bus/tests/channel-proof.test.mjs 0 3984a7e2da2a60e60d0309f719a45a3ef04bca767bac34e00a760e19e941d732
whole-file packages/bus/tests/chief-of-staff.test.mjs 0 8dd57acf0101d4c92ada92f4c33f68061d4e2cb430179a8ab99a0b7fc9a19997
whole-file packages/bus/tests/citation-availability.test.mjs 0 d34d84d44b5949024ce6b32708c68e10b00a84600bb03598bf9538b358750455
whole-file packages/bus/tests/citation-guard.test.mjs 0 acab66e65fd41f1fbfd9524f80456553fc033d8bfc18a9bec7a813bd0d4552d8
whole-file packages/bus/tests/citation-runtime.test.mjs 0 ce33310d333c7a0af7451c3a3b610f5178961b80b6b63a839909b67657fd161e
whole-file packages/bus/tests/comment-cursors.test.mjs 0 cd4de90a070faf2bdb776a96a6ba43aa4854f6f5f1b2b7459740bd7bdc0ffb7e
whole-file packages/bus/tests/comment-migration.test.mjs 0 773659855873805b5bd950101d950945213658fde42d8012211e742ba9ddcc09
whole-file packages/bus/tests/console-decide.test.mjs 0 275fc0a24a03f2f27210a65e2bd21ce615ec9b6b400c4e4177ddb97a9e8e85be
whole-file packages/bus/tests/creative.test.mjs 0 eb950d5680ff7e4e09a9c11b1c169d4a740011ea72bb75921d35571ef5373df2
whole-file packages/bus/tests/credential-claim.test.mjs 0 b2d40e4d2a353f4154af4974d5779f7b20c652a8110da3183f95959ae2540941
whole-file packages/bus/tests/credential-status.test.mjs 0 ed367e3d123c9629b7d3d22f6fa60f48c74e71b36982c54ad2b3e8419f515431
whole-file packages/bus/tests/credential-store.test.mjs 0 0fd528ba27757393973cba5b21da573bc681659416962bf7d3a3dff3018414af
whole-file packages/bus/tests/credential-verbs.test.mjs 0 154b123af420abf08c6ab8b7bc6439052e7ab65c772abb0caac5e9b9cd3608e9
whole-file packages/bus/tests/credentials.test.mjs 0 6474b45c076f474a6881d0dddd0cd3b4cd385d52ac4c55ef1a9f8c10e0028277
whole-file packages/bus/tests/csuite-messaging.test.mjs 0 c0229df65240be8ad014d83def48dbd64a952b701f46e40ff01efdebb5644d6a
whole-file packages/bus/tests/daily-quota-runtime.test.mjs 0 62d686aa1852088af569cd3b921194db6873311f2ba04e55b15a93900b1615cd
whole-file packages/bus/tests/decision-close.test.mjs 0 9599744860a4e6e330ce50b8e93c478546edce5545a9171bed068743a266ae5c
whole-file packages/bus/tests/decision-route.test.mjs 0 2b2a9570dab83b1d454f56c1311cb41103a14bcff49e207cbb4ac5d4c73d6f0f
whole-file packages/bus/tests/decisions.test.mjs 0 a753df7d939155adf13c7177926728b2760cf61770117dd1655f29fe2c88a26f
whole-file packages/bus/tests/end-launch.test.mjs 0 ff7a27c35e35be424cbefa799e219ffc073c494214642b4ce56ceed6b359335e
whole-file packages/bus/tests/fire-revokes-grants.test.mjs 0 8e6bee9421480af8a1326d65903f258d5ea0a79df6188bf18301f32a5260547e
whole-file packages/bus/tests/gitea-grant-docker.test.mjs 0 8b639ee86d1a7d2ef267e1d36264f4ce1b5beed2c8ce084c39c0de1d699ca8a0
whole-file packages/bus/tests/gitea-grant.test.mjs 0 8fa39b3e58cfac4ec97f02ff876fde1a40a1894c826306c0b77d45c73586f753
whole-file packages/bus/tests/gitea-migration.test.mjs 0 689fb43a38718f5f5d00ffb3b6d998d5d454854d5e77a936b56d7c4192ee12e9
whole-file packages/bus/tests/grant-enroll.test.mjs 0 a8be59931d37a5c787c2087d29d766d6b701bbe34f8343134148292cd29d345c
whole-file packages/bus/tests/grant-executor.test.mjs 0 0a7f5be29b28140c9f8e7f67c6a897eb455677fba4459952a83982f2b23c87e0
whole-file packages/bus/tests/grant-host.test.mjs 0 54c4ed722116914221e9320fd41723e32aad59284e98d8e177130b0f4c4fe6c4
whole-file packages/bus/tests/grant-migration.test.mjs 0 7cfaa3f24d1dc070d7bdb8de76b08fabcdb6877d3367c59f7601e08f683d658b
whole-file packages/bus/tests/grant-scope-runtime.test.mjs 0 f8bccf5324f1e10282dfb4f4fd0f63c76c8e9481ae6cc0845a1d9028e3d9633e
whole-file packages/bus/tests/grant-scope.test.mjs 0 e30a8ced066ad214a6f70dd4a39c75bacf296032a3201e4605fa3c8df23e0159
whole-file packages/bus/tests/hard-waits.test.mjs 0 78d92a14781286d3ca11989786a8698a2b796ad1db78769fd5b3c7653ad7639e
whole-file packages/bus/tests/host-run.test.mjs 0 51d231611940444d2c2a37fbb7b14267c705c1b5e453b02367d0a6def214dc93
whole-file packages/bus/tests/host-tools.test.mjs 0 3bc5b5413661edd2026bca1721055ec7dce8d115918cc10c8f334e527176d23b
whole-file packages/bus/tests/human.test.mjs 0 5c8f3fd402ae4e130029b3203ed41b3cb45b8781417d31dec1f47ebddd516349
whole-file packages/bus/tests/instances-verb.test.mjs 0 940ca3884930f539272a2c39ca7e1c7fa3e51b3a4ea6fdcfb21719c652152257
whole-file packages/bus/tests/interpreter.test.mjs 0 d0c6190a428005b7750b59e665968657b242b322af05ca7bdd4cd7e815b7f4ab
whole-file packages/bus/tests/land.test.mjs 0 e9ecd1d8011ab6789fc3254bb069e76631b68b20ad65ae844ee12e0dc3b97cb0
whole-file packages/bus/tests/launch-notice.test.mjs 0 750a54d4c40559c7fb5414071bace8056d6bfa71dfdbec4de12c94c90299c3c5
whole-file packages/bus/tests/launcher-released.test.mjs 0 4d59486ca3077a4b2f51141ab79df635feb6b7bca2d6c0cfe5839a6a93715de6
whole-file packages/bus/tests/library-credential.test.mjs 0 db7e2dc4afe23f74c49795e4dcd3d28414435519029a837641cbb35bd3f4fcef
whole-file packages/bus/tests/library-lookups.test.mjs 0 fa18b5d4c829ec35ebbf519c4346a2ac38cff7538d58ea663acbbdd7930a6015
whole-file packages/bus/tests/library-sync.test.mjs 0 ee0ab1ad2549d3e6ae6d8123fa99d697d9be6c629e09131da82f0ab6d58a60e2
whole-file packages/bus/tests/library.test.mjs 0 62b663034a5de8d6d1abfaf3f94327d7aae435e3350874b424eefdb28bca1bd1
whole-file packages/bus/tests/lifecycle-revoke.test.mjs 0 c0810c743b5108773b6cfbc2d108fa09ea274c437433355277ce2b1295fbf692
whole-file packages/bus/tests/lifecycle-verbs.test.mjs 0 926bcfb20ab58a4ecbe85b4f8feb915f72adcdc6d6aee84f814187d0ac998efd
whole-file packages/bus/tests/limit-checks.test.mjs 0 919d745dc570172716b1e06d0ea1e8f16ae7b05dbadba77fe92dbbcc8eb4cba7
whole-file packages/bus/tests/limit-stop.test.mjs 0 2fc1ebee4e4d4862a100ed9ba97ace1e6d3fb3c608abea63b1ff634a04d5649a
whole-file packages/bus/tests/limits-runtime.test.mjs 0 5845176b73f98a499d92096ce0d22a3987ada664a529bdbb26230c2d00b9e65c
whole-file packages/bus/tests/limits.test.mjs 0 333f6757d9d00eda74e7d4641af660c9a0ce3d978e6a8550139d3a461c1d5866
whole-file packages/bus/tests/message-citation.test.mjs 0 38422c1d6faf076c750c3fccb7e927e38fe955cc28778511acccf5704df5b191
whole-file packages/bus/tests/message-filter.test.mjs 0 2ba52728df27756ac19ba65fe0705e7cf7a2a786a3b4df77a4eb4eec8072604c
whole-file packages/bus/tests/messages.test.mjs 0 b87de4ab04682d59a2faa7b3fc64751247454e628e9c1ebd4c07b1df2acbf11c
whole-file packages/bus/tests/messaging.test.mjs 0 831b48a9de594e17e8fc47f16ab8c2d722e8d57068a7d39deeaf4c0fa8d136bb
whole-file packages/bus/tests/model-proxy.test.mjs 0 99c5128733ae5bb16489171513c158ec1e34dfce1d07c60f6bccb0f84ab7afb9
whole-file packages/bus/tests/name-migration.test.mjs 0 bb8f92a17f6a022c7ec63161cccc0bb49a26c2a591fc369375cbebfa93a277a2
whole-file packages/bus/tests/names.test.mjs 0 0fcf60cc8c7dee3e85548c759f03e1792de92b59131bb9fe4282a3b07859366c
whole-file packages/bus/tests/peer-transport.test.mjs 0 3cb547003e50695ec2a25c950819b304f15203302281c00758a12c9b89b60f40
whole-file packages/bus/tests/peercred.test.mjs 0 e75c700a68ba0c1013c8f36178d6554f0321dc331b2198fd5ffc1a684df76c3e
whole-file packages/bus/tests/plugins-verb.test.mjs 0 359fef350befd1d743bcca89a96ebd0757346fd7c0622ba364039ba827620d26
whole-file packages/bus/tests/principal.test.mjs 0 732724e6bb2bb953e7dbbbae5c23cc0a1c33a7b7b202f5cb8b46be9363bcb392
whole-file packages/bus/tests/process.test.mjs 0 9c5883ea2ca858131317fa9be66d2a51a5d86dbe03c515b0544f4db56b2456a1
whole-file packages/bus/tests/processing-runtime.test.mjs 0 bb6b94ac654d069abd6e484031893e649e239d933c135b226d1cb2fbd5a94ca9
whole-file packages/bus/tests/processing-timeout.test.mjs 0 323036aa7f32f7aa324f61595531a29f3d5ef0ae2c24aec029842f2783d6be76
whole-file packages/bus/tests/processing-web.test.mjs 0 dbd1543498fbc8d0625990436ae668b3a382eedeecd098b929c13d2bb61939ff
whole-file packages/bus/tests/processing.test.mjs 0 529ec93e767444970ff03acb1ba719b45033daac239256c9cbd587c39f926a71
whole-file packages/bus/tests/project-await.test.mjs 0 e948d721ef06ce95f909880942f7e7ebd73b2f42563e1faedacc7b403b8ebedf
whole-file packages/bus/tests/project-files.test.mjs 0 3691b04705c17d4ef7218bc15771560aca5586c00ba0fd3fdf2a80f63d8dc659
whole-file packages/bus/tests/project-runtime.test.mjs 0 9d8d6cedeb2044f19e548dda0e32cae1e997b75a6d89072f7367b6e0ce17a44f
whole-file packages/bus/tests/publish.test.mjs 0 87f7a382580432646ca89d1228377719cb177bfdbb4f74ad617f6a70dbfb4b33
whole-file packages/bus/tests/reload.test.mjs 0 25aa45aca6ba24d72e9e5ad66dfc8c049375c8df121dd748dde09af52f16f853
whole-file packages/bus/tests/replies.test.mjs 0 0f05dc2194896540a1488310107e31b7e779cc02c381c201d0c95f69ab39fc51
whole-file packages/bus/tests/requirements.test.mjs 0 29569dc30659dbecf359117cc9a59ff37927c60f5514b8ceb8d3796c2c3e53d1
whole-file packages/bus/tests/review.test.mjs 0 a8daea8602be9429a8044ad636a438c18eee8ec77b6fa272dce606116d01de8c
whole-file packages/bus/tests/revoke-window.test.mjs 0 1435c543c9367204f4ae6d25c2cb97145e762cb18e78ea90a15eb1672a220353
whole-file packages/bus/tests/room-check.test.mjs 0 bbe5ac7abfb7e1b30f6fc8f9a247cd28aca82a8783753434339b790dd9857e1c
whole-file packages/bus/tests/rooms.test.mjs 0 506fad116ab1d9bb2520fe691adc91ca26e64faa96ced35c193cb11da4e07ccb
whole-file packages/bus/tests/routes-verb.test.mjs 0 c09fef3cb022bf7713cde4e1c512feefe67090eff05451fda9f55272140c916e
whole-file packages/bus/tests/schema.test.mjs 0 2a1a668dc408aaebe6f604ec5c3b8858211edc52930e1a552173cecedf806d72
whole-file packages/bus/tests/session-clear.test.mjs 0 1fce03f1d2a41f5ba294e9d406980a1d3251bc9a5dd4a02897413d6be3d9681c
whole-file packages/bus/tests/session-compactions.test.mjs 0 745510273a9eaaf61de4c6453c5dcc70e4a6020c0bcec69673621eefa593dab7
whole-file packages/bus/tests/sessions.test.mjs 0 d6c0337e0981ecb9aae2e912c27145bbd831e196828b2d59029666ceae5f605c
whole-file packages/bus/tests/single-use.test.mjs 0 6f5cf7d47716ce94eccb069f9b7e5625c3587737921231649fc74e8bfd3aad3c
whole-file packages/bus/tests/spec-migration.test.mjs 0 ede4ca62a772261bc868f4dfcb4861c9c3670110ba2afd39cc44183398c2eafd
whole-file packages/bus/tests/spec-review.test.mjs 0 951aa2a54cfe4bf0960dd3d2180874cb8183ff9b0aee7b7251b05df11385e1a5
whole-file packages/bus/tests/spec-socket.test.mjs 0 65735a2557e19b3d63a3ce7198c80fb5059f1974acd0708a89f192857b43b095
whole-file packages/bus/tests/spec.test.mjs 0 488ab443b41b06b6ae4434f5b2ee8904169aa08ab3527f3ae4c3f438e54f9909
whole-file packages/bus/tests/staff-request.test.mjs 0 edeb4ceffae3af33e330e1fac5d74c4fb1861d52ec5ac5005689791ab74da555
whole-file packages/bus/tests/state.test.mjs 0 3b5f916c494563fc7c18f89450e0cecbbdad8e24680b373e897253b9ea6064fe
whole-file packages/bus/tests/store.test.mjs 0 39d0a4033b89eff9b29ea6dcf6e56696a1d20a41e0e14b4bc8efbfae7962ecf4
whole-file packages/bus/tests/task-page.test.mjs 0 6446cfc1a43cb4206b4130f316251d3d9a820f929a6efc59dc74e7cbe1fbd258
whole-file packages/bus/tests/task-read.test.mjs 0 37134ced43ad5ada4291ad5e3474dcf7063892443b06d54a7456cd4cddb9cf2f
whole-file packages/bus/tests/tasks.test.mjs 0 9d91ee510a7447545c2cf93ae6779544a05e01bb70346e595b91a4800fa42d7b
whole-file packages/bus/tests/tester-threads.test.mjs 0 ff843610e02f20c5e1ab19de27b131ae7cbc3fd87b16d85e68336b5e914ffd77
whole-file packages/bus/tests/tester-writes.test.mjs 0 517c41e666d2c59b7ffb6ddb22898ef58b816bb26eaa47e1ce7508087b607df5
whole-file packages/bus/tests/tester.test.mjs 0 19eff6ddb3aca05ad5c006ac15e7860311f56941055850e86b8075cd39eff0d1
whole-file packages/bus/tests/thread-claims.test.mjs 0 ee146e984bb3ae82ad60f90c83035053ff2966ffea91015b6c3c4f93b7e019bd
whole-file packages/bus/tests/thread-migration.test.mjs 0 1dc2ae4e920d40a6fc2b1033f43ac0a2f766bfb86f07a596a983b9c1bccf87d5
whole-file packages/bus/tests/thread-shares.test.mjs 0 3f99a82e9e4a43fa788ebb231c5e712969809fa83b6ca66f04b8cad13f411235
whole-file packages/bus/tests/threads.test.mjs 0 2e5ba2be69a34c71f41a819c7a5e8615fcd085f847f9aa6d16095b9c8d742552
whole-file packages/bus/tests/transport.test.mjs 0 c9d28b9acfc0c2213838df0d960506156ef6fffec24a0cee7336324f105fac0e
whole-file packages/bus/tests/usage-broker.test.mjs 0 26fc080c6ffcb7c64cca39a07f302b59c21d1425ca3c90120eb3d3bb751c49da
whole-file packages/bus/tests/usage-migration.test.mjs 0 cfc65c4233aedb325293170e782ccb83fcfdd85cc4afed1e913e91785fa4b7cf
whole-file packages/bus/tests/usage-runtime.test.mjs 0 faa5fce30cbd7002137acfca3cde68b49b74321fb27b8a190736b35601430866
whole-file packages/bus/tests/usage.test.mjs 0 d36d21e0b3f5c9621b50e8b71ff6d8daa341f5954f3612b7cc93cb6c734215c0
whole-file packages/bus/tests/user-principal.test.mjs 0 1b56d881de2975ec4e3bc27fa15bc495ae0600709457da579337f0c9c98651e5
whole-file packages/bus/tests/viewer.test.mjs 0 942ba4fd96c3bb4c527eb129e69ddb5cb7660915e8458cfee47661d268db0e24
whole-file packages/bus/tests/web.test.mjs 0 048e3ef2840934f95d7e00de6502b19342215cfe5d00d1b8ada7c1bc6e87cfa1
whole-file packages/bus/tests/workflow-roles.test.mjs 0 1bed1351ec3c50ddce65f9b8108f93a5c4061ef5cf36f3d09706d85b13e085ed
whole-file packages/business/tests/case1-business-file.test.mjs 0 4481abbce73eae119fbedc5edf65120fa494931913aac6f0273b04263c251cc9
whole-file packages/business/tests/launch-settings.test.mjs 0 540f5170ddc7e79a8abd9584c4586eade3ecc1f7544489060db99552c75e4685
whole-file packages/cli/tests/access-boot.test.mjs 0 e41e1f1949d3568f8845234d573282c18a185578389d6947140cf540d7f99dc8
whole-file packages/cli/tests/access.test.mjs 0 9e2a813092ad4b60cd89443424eb4142f217265e52ff7b769b7f16d247d5a367
whole-file packages/cli/tests/app.test.mjs 0 5f5244ba0061dc4ffd1565c4abd3168d7cb2e6398625b69c841a54544b9a35a7
whole-file packages/cli/tests/boot-status.test.mjs 0 ca090577e20ea46315cb377668e309571380e2323c867a8b90d0537022e681b7
whole-file packages/cli/tests/case1-hostcheck.test.mjs 0 403e1127da5637904e8fe1c1eed5a7865c5bd5ee1c5d0fe684837a7370c41de4
whole-file packages/cli/tests/case2-install.test.mjs 0 df8edefe13297ced929d09f01eec5c7ecf38c355d9871368cb19f2f392ae057a
whole-file packages/cli/tests/case2-persona-import.test.mjs 0 5dc7a93c03567ec0e85e43bcafe07109881c30b2e83b4c4eab4631a155daece0
whole-file packages/cli/tests/case2-unit.test.mjs 0 39b349dfd3125e74b780ce28e9ec24465a6a8c2bb9e431c819864f4eff1fdb77
whole-file packages/cli/tests/channel-cli.test.mjs 0 9fd9c30aa604f77b7a069912cb987293af36f2f138cce850f8d26946f5ce42cd
whole-file packages/cli/tests/channel-recovery.test.mjs 0 52c6bd980cd54ef22b9e6c78260a1e389e8177526340129ac64fbafa7f2e01ab
whole-file packages/cli/tests/cli.test.mjs 0 59327fd89e3fb8f927210df6a2c62afe4522e59f59129b1967be2a238c498f26
whole-file packages/cli/tests/compactions-launch.test.mjs 0 c9006b3039a6616be1816f5ce85bf68ba4fb54dadf10447e52fc92f7ed57bbe5
whole-file packages/cli/tests/config.test.mjs 0 35e39fb0551e23f5738d0c30d66bd233f2290040885c511e526f0f0468b31cad
whole-file packages/cli/tests/credentials.test.mjs 0 2b55cde2318a034ec4152e712863ac54f07f1b4db752c6282507d7f621bde67d
whole-file packages/cli/tests/federation-acceptance.test.mjs 0 cca971a93a5dfd20e603b45cc2158b58ea0638e8bb7a33e6e0c5e12178ffa3df
whole-file packages/cli/tests/follow.test.mjs 0 26a3ad0dbc124aff48a5f4908e3d8b78cb871e5560c0e389de457f58aea2dfe3
whole-file packages/cli/tests/git-socket.test.mjs 0 10c21c34a79ebd5f89f6ed9182a492e9f42f0512a68f758c0566a763a84abeb9
whole-file packages/cli/tests/grants-scope.test.mjs 0 37967ca8e82a89a0e88ed872fa562b5c094282cc759853b6dc31c292204bef3c
whole-file packages/cli/tests/grants.test.mjs 0 687af745932625ea1d439a8139c760f14b4a327bf9b15c5b5b1cdbc7ea6be09f
whole-file packages/cli/tests/host.test.mjs 0 50010e97e44392f28006bbd4127146b8aa1712ff4a016ca10864923701213dce
whole-file packages/cli/tests/hosts.test.mjs 0 d5d507c3968c45b2aa25067d6bbb1eedd69785c0aa1bb51177c63b6ad64fcb53
whole-file packages/cli/tests/idle-stop-race.test.mjs 0 8e6171855003b0f40921863430dc89cf20f8bbf14a9ce3c115f90486f08232b5
whole-file packages/cli/tests/instances.test.mjs 0 c6b4d59443baa4af029af76a846a8093669a7593490f21408a2c40ad027acccf
whole-file packages/cli/tests/launch-account.test.mjs 0 6cb63446fc8dbb6217e6d925caabb37a28bcf1ea5c27cf8d515d67c7842553b8
whole-file packages/cli/tests/launch-limit-checks.test.mjs 0 fae971d715a90d1dbbeb3c054932a02d253e0a0d036d3b0db4e0c9edcd5ad7ef
whole-file packages/cli/tests/launch-limits.test.mjs 0 d3f4b2c57e776bf6bbcafba6dbd9c4728918b0d81fc606dcd7d2dffefdad4001
whole-file packages/cli/tests/launch-routes.test.mjs 0 e2bec020f96238079908c03537366c64800de0913a83f3a2877606d0266548d6
whole-file packages/cli/tests/launcher.test.mjs 0 beafda99d34a532f3a1d6f96565b7a780e03924939b6c30b01a8169cceaa792a
whole-file packages/cli/tests/lifecycle.test.mjs 0 014a2cea6d3f2a9f21f7fc16dc68b34740b03726612851047b877f8c1194ebe0
whole-file packages/cli/tests/limits-tokens.test.mjs 0 6fdf9e6946dfb579cde42ec500d8cb8473a9d8318f43caecee7561a5e40fdec1
whole-file packages/cli/tests/limits.test.mjs 0 bc2f13959d087ccaf6977c4cf1294e6fcee21f968677ab169580ce79643add18
whole-file packages/cli/tests/mark-read.test.mjs 0 64864c54ab910488d55136b88f351771489cf744ba1c21e5c479121694dd88ab
whole-file packages/cli/tests/model-proxy.test.mjs 0 119a5d02870a4062992efba7f44ee9dfe69ecf8a7076f121aa24a8c7edf24cf0
whole-file packages/cli/tests/names.test.mjs 0 c2160aeb0c68855f59b5d97dc3b6101b7800028df708f5f42430ae5854eb23e2
whole-file packages/cli/tests/notifier.test.mjs 0 18e62f48de18cc4d57916a556adeb3befb13921d5d7b036ef5a7f2bfa460cdc1
whole-file packages/cli/tests/optional-tracker.test.mjs 0 e5adddfee06b2f1cbd2ec50caf84b5acbc58d4ff4ec4c1bc539a4535a3991827
whole-file packages/cli/tests/other-tree.test.mjs 0 2dae57af2b8d508f2792ce37191aebf0cd28ad75f7621d4ab9f8d6daa60b748f
whole-file packages/cli/tests/processing-cli.test.mjs 0 44b2854ba03810cdda3ccf0c6de883f953089d532bfcdc8f4bdd3faffac80fe9
whole-file packages/cli/tests/project-name-repo.test.mjs 0 0468b9ecde6189d1398eef2e7e8043e870aa867a8a9d22b20b2ded26dc1543b5
whole-file packages/cli/tests/project.test.mjs 0 79e648106151ca220d9535b16c416dfdcffffaed41e3c211e4325c151f0775f7
whole-file packages/cli/tests/publish-socket.test.mjs 0 59a02b1fcc284407b06d0d2df8e6e1e5323059daa2e47c690f30a718d1e7c682
whole-file packages/cli/tests/reply-limits.test.mjs 0 554a353d61891c3cbe8da01062025dcb0756ba4f4e7ab3fb8d7b56ceccf64437
whole-file packages/cli/tests/revoke-window.test.mjs 0 743fdb0135e507dea5b968265907e5ac9228284b130feb0057d91e70ad561c02
whole-file packages/cli/tests/session-clear.test.mjs 0 5abbd894dee9cfcb3464a40e5045f9062402d5ffe567972113715cc9e24c6ce3
whole-file packages/cli/tests/session-cli.test.mjs 0 c469aed70c1ae408e176189f23a849f3acf0bfc7dc3ba1132c101a931359a462
whole-file packages/cli/tests/session-launch.test.mjs 0 cde78f9dcee9afa243692fb0493697104425b61589bd7be6c4cbdb0f4bfbd5e5
whole-file packages/cli/tests/stack-copy.test.mjs 0 3b92b3772c060378cd2ec0c1bf7fe6662721721a11d99d83c9debe3e3aa929c2
whole-file packages/cli/tests/stack-instances.test.mjs 0 2839e390f564a6e58cd514ce4061ec0b741ed07b4e2b755a337439737601d97e
whole-file packages/cli/tests/tester-http.test.mjs 0 bd9c598c84dd0be3b9873176c63e418ccc004265153be68e0cbe51c40b1ff91f
whole-file packages/cli/tests/tester-reads.test.mjs 0 50a71ffd9093c4d51d8ad07bc9edbbd76306922f290d28194d656cd78f8528c5
whole-file packages/cli/tests/tester-threads.test.mjs 0 cd3dd0020472c269d61934ddb32d77f6dc297090d63e819288f4038fe9edf096
whole-file packages/cli/tests/tester.test.mjs 0 437498258b4ea5c2f2bfa8fe66114106ac10944911bd40bca944f2078b34e45f
whole-file packages/cli/tests/thread-cli.test.mjs 0 c29897119f279434bec0248c12beb5ce97f6214b8b0bec995061000f047b1600
whole-file packages/cli/tests/thread-launch.test.mjs 0 459ef35e2b4f9cb87151577f252282a716ddbd4985f26e9e26c01b08af13a7f2
whole-file packages/cli/tests/thread-revoke.test.mjs 0 b8a72080a9624ce4bbc1b23b8903be1b74a8a6ced35b0b60f503d92a22d1028c
whole-file packages/cli/tests/trackers-boot.test.mjs 0 f83d72dac4eec7369d62b495745e1fdeeb4ff1ba2e1efb376c9b583da1765a1d
whole-file packages/cli/tests/transport.test.mjs 0 e0ae6c26b5669d4b955deffe941a3c4314be12297e72d6c099de750170688d9c
whole-file packages/cli/tests/usage.test.mjs 0 639ebccda23e0e094d62cb0e7e5c80c403b74b284ac5189fb0d92e63387c92f8
whole-file packages/cli/tests/verbs.test.mjs 0 43eefd242a987efe42d145d7863372a2b0a397031baec12ecd4c9e0644daff12
whole-file packages/harness/tests/bundle.test.mjs 0 75fd5a9a6fa0b46078952ce216348e39ce481f6fc00b89f85da9ff729d5ba100
whole-file packages/harness/tests/citation-runner.test.mjs 0 933021f114882a6c58f4071446a07d49ebc9f99c062ffe1fedc1f13b799db389
whole-file packages/harness/tests/claude-gate.test.mjs 0 f66053597c8209c5175810e33d8b878ad74eb314f4057f5b4b0b1ac625272329
whole-file packages/harness/tests/claude-session.test.mjs 0 9c4d8ffc00efd0da75d143bca1cd33f30f3e762e20086270d941170e80c962ed
whole-file packages/harness/tests/creative.test.mjs 0 3433184ced3427613d645807f0757896baf52d214c3dd6a4a12c3951bbdc50ce
whole-file packages/harness/tests/gate.test.mjs 0 991670779d9cf6f733d0060c6f1a59d122ab8e99f7e0a5f7183c9e974f1b1aaf
whole-file packages/harness/tests/git-tools.test.mjs 0 2837565ec16cd8c4d032311675a1468bc4bc756ee0696d0e57ea35ffd56eea44
whole-file packages/harness/tests/library-tools.test.mjs 0 05a8a5d8e8c4e7b3435d4a9b3f6292816356a99f7156ded2ef7873e1c84f8de7
whole-file packages/harness/tests/mcp-server.test.mjs 0 6ce4c6c39b8a1ed70fbeaca410781a62d69a6412333e03640296048b799a09b9
whole-file packages/harness/tests/pi-session.test.mjs 0 570376f798b43e82bbc1972f1d50d3915e94a8e4ca00e50076ab390df9830d7d
whole-file packages/harness/tests/raise-domain.test.mjs 0 aa6be675614d9324c3ddc01ef40347b235adbccfe6cd73081096ae9e9742d754
whole-file packages/harness/tests/runner.test.mjs 0 d3f8c752897e359e10a8e9d507c10ef3760a5ae37999f6f143cb222c42568437
whole-file packages/harness/tests/skills.test.mjs 0 2f34800387f4d7f8b8d5f6758cd197f77d11034011bf7f4f79f4d74c582e3f0f
whole-file packages/harness/tests/spec-tools.test.mjs 0 29cd1f7094266963a995f636d9575337246a9868d42a48f02231a99251261f47
whole-file packages/harness/tests/tools.test.mjs 0 f27638f1fa38fd2d15a352f6c21f7980688d48d580f5a59dab1520fd7c30b30c
whole-file packages/library/tests/guard.test.mjs 0 6529c2b48c252eeaf9c19487507a03cf46d952e7ffb3a41e640a54590e312df0
whole-file packages/library/tests/index-build.test.mjs 0 4747cb8c842cdc424db727cb3b0e36a6d35f4e9c5c31c1a3bf61314897c2cf6d
whole-file packages/library/tests/links.test.mjs 0 9b89f9275f19035c5f079b6920b248466048626c634153eba2fec165f9f6388f
whole-file packages/library/tests/mapping.test.mjs 0 9110b98f955dd71588357858b913194ccf9e04dca9aa7c4559600cbe9b9e8e71
whole-file packages/library/tests/mirror.test.mjs 0 cc2326da9796dbbbf5b3faa121180a7f00c43816a232a96faece7b58570f1227
whole-file packages/library/tests/query.test.mjs 0 f1209bc132a63cba9a7312cbed7e3098126e05c792356648f1d9ec497a11aa82
whole-file packages/library/tests/reader.test.mjs 0 3e17f34697ae65524cf7908dcc9ca1b24025bbc92989b2ba05f6e75c0f839c3b
whole-file packages/library/tests/render.test.mjs 0 5e68091a309a07e5502b9cc500c7cdfabaa9e246bb77b0c04a0dd86bb9bfcde1
whole-file packages/library/tests/scope.test.mjs 0 f55dec854adcd311d614b66959c5655cb3419d7ae7b06fe1f648b43cdecef32e
whole-file packages/library/tests/supporting.test.mjs 0 2f50bbe9c942360a5becf5bb984ed5aedb12628d4578ea85c6e433ad0ad73130
whole-file packages/library/tests/survey.test.mjs 0 72108eb8a07b990b93ca62c5fa4b55f1f89f3254ca1cf59d3de8ad194dcc3a0d
whole-file packages/library/tests/sync.test.mjs 0 a68c69492149b6e9dc7dbf24fc434ebfd3243b2db2c7654b00107b997e99ead0
whole-file packages/plugins/tests/harness-compactions.test.mjs 0 9eb9f67c06ae17b33198fbcdb443a0c73ca9cc0cd157cae2359a0647d2db3658
whole-file packages/processing-control/tests/task.test.mjs 0 8db6adda6b5d5f7437e9e4cdf961134493409d7227fde02c0b0a76aeb21186f0
whole-file packages/seat/tests/compactions-budget.test.mjs 0 1849994f45bfcccfb4ce18915887c740947a98041aa7bd66590ae7a62fa7078e
whole-file packages/seat/tests/compactions-ledger.test.mjs 0 af689c631c9d62dee11f4400112fd10df82567c1f49d9f0d423b9d19d6f860d7
whole-file packages/seat/tests/compactions.test.mjs 0 cf5e74e1211560ca47a2c13e8002635097f486e2ca06698795bc38263d889f3c
whole-file packages/seat/tests/sandbox.test.mjs 0 c09d89b8e1b22db25578f62cd4a1d3b9f441d652178fb675800efb31de33a577
whole-file packages/seat/tests/session.test.mjs 0 82171646932cddfc68f0e90ca3355f9595d32c5d228c1fdb855c06cb1d9c2feb
whole-file packages/tasks/tests/adapter.test.mjs 0 8843067c21942ae6165a7feaced2382fd9d02d0c62bd30772191393cb5d962b8
whole-file packages/tasks/tests/comment-restart.test.mjs 0 25aa6e953cf19ed3ae368581035b9d883ed924b41d593240e2b4ab5ba39f2982
whole-file packages/tasks/tests/fields.test.mjs 0 e4eafd6b17a46262dddc548263da993bc3a672adca1cadcc698b6d8374f11e2d
whole-file packages/tasks/tests/processing.test.mjs 0 0b89866cc076c43c37534dba926d492d8d334d08a6886325e3d4ac6ddbc88897
whole-file packages/tasks/tests/shapes.test.mjs 0 0b8cc660a07e048d007993d726ae5b8e1f343cb571c18ee0284c3ba0c4b41602
whole-file packages/tasks/tests/startup.test.mjs 0 5b44d779ab4ec86922dd35ce7c78096de02c0a0f2363cc6c2a5ee07816efc2ad
whole-file packages/tasks/tests/sync.test.mjs 0 513ce9f6e64a3fa0179f8cc9b27db671267a43cdc44ab93f38d21982dd2b9631
whole-file packages/tasks/tests/tree.test.mjs 0 d3c8f91f59150259b3226e9306c98efbaf2aa17b5b74cb9b376a103620f8aefe
whole-file packages/tasks/tests/verbs.test.mjs 0 47b075d01ef38a5d0228902a6f9bcfec0b78b1a958cd071e8114139af73bca53
whole-file packages/webui/tests/agents-browser.test.mjs 0 d3ae822399f58d2c4dfd90e054811a60663a66f9d3fbe69a76aa4ce7dc7260d0
whole-file packages/webui/tests/agents.test.mjs 0 be18c8fed41173900617d3b646fac1ce14c07c208e7f24d6567f61f55c5c4dc2
whole-file packages/webui/tests/assistant.test.mjs 0 056e4c2a37b7b395741ed1ba33546031a6e4ca53db843bd877b93bed764e02ad
whole-file packages/webui/tests/board-held.test.mjs 0 01a24d222092ad46c24ea94f684a018b787dfc8d26a0f7d7fda5d9df7192e695
whole-file packages/webui/tests/browser-edge.test.mjs 0 4d10b4fcefbc64cdf12bbfbd9b47f74810b3219f70624c35490cb23d66d3c4a1
whole-file packages/webui/tests/browser.test.mjs 0 d8c31b7cc16d93961d65959fa9653eaba906f81da3a34e19b3da7cc922f840c3
whole-file packages/webui/tests/bus-browser.test.mjs 0 ab1538aaabfdb02c336da61675a0d1d7f367483bc500a380e7f0ece050ab8609
whole-file packages/webui/tests/bus.test.mjs 0 fd7acdf189fef230af80c32c4c972d9bfb1564069d7c4ed649c3a49bb6636e1e
whole-file packages/webui/tests/channel-chat.test.mjs 0 678b8e3c9152662487fee1c52c8abcae95029b0672d5bbe26a824bbdb4a7ee0b
whole-file packages/webui/tests/chat-browser.test.mjs 0 ec29dd03ac7950dfa90e31f72ae74e2112718f1c02ce4dce8055194a328b5f5b
whole-file packages/webui/tests/chat-instances.test.mjs 0 72c88b1eb11397bcff524af72cfe826a276b97b58e33465c6e3334e2746e7783
whole-file packages/webui/tests/chat-replies-browser.test.mjs 0 bea9b1f9333bc913b2f01c29a792ea4b2fdbed3ebc64b42548e06f0bd75c9fc5
whole-file packages/webui/tests/chat-sessions-access.test.mjs 0 f2de41c7d1f6e246a8a13dc33e8662932964facc5b93d8f85ed5fca760c87fd8
whole-file packages/webui/tests/chat.test.mjs 0 4c6564d3565b01d68f7d16937aafddbef2ec3e04744fa9d1544ac0500a386ff7
whole-file packages/webui/tests/conversation.test.mjs 0 1c3f8811256ad82d7771a06878c3e70dc3d6f2beab82366b837780a7873ff6f1
whole-file packages/webui/tests/decide-browser.test.mjs 0 c53e1b962df99686f9739e258b2b86fe6325544ab02509833f9b1176f1303845
whole-file packages/webui/tests/decide-sso.test.mjs 0 f96f8085015a96e11aca2d94bfb9e75318c0c0dfa9659049ec7b7e31ad7bc6de
whole-file packages/webui/tests/decision-http.test.mjs 0 c89b7af200edb82f9986479199f359cf6a06c870f1bcf22b538cdf3b167f1258
whole-file packages/webui/tests/discord.test.mjs 0 1c3e6d64a370adbc6c7cb24391989e9c00d97330d393943402ff5c6a99c5f9fc
whole-file packages/webui/tests/docs-browser.test.mjs 0 f39d989ccdc561175643583b27bc19ee76fa25dec5947baa206b0c38b41c1e2a
whole-file packages/webui/tests/editor-browser.test.mjs 0 c807f81d596b3a2e3d2ea55e560f29e181a0354ce48676c6760844855acb0dd3
whole-file packages/webui/tests/editor.test.mjs 0 6953a85fe791e9087d14c3bf5075de2c4a651e1a502937da3226065c529ffd2b
whole-file packages/webui/tests/granted-user.test.mjs 0 ae3baaa0d2a1ed1ad3e9625a46a8071222dfdef4c2a70ae3ba5bf159b85dec0b
whole-file packages/webui/tests/history-return-flow.test.mjs 0 8f9ceeb41a64ec2849383a78f4997f7383c86a01eb6cf1d16747c2eb6c7448d4
whole-file packages/webui/tests/instances-browser.test.mjs 0 33b9cd4be552f89809e75f72c54f73dbe6459a5c53401a79a4d887e5a658c442
whole-file packages/webui/tests/instances.test.mjs 0 904abfc06358c99b0f646c3e728027cd7bba2b27c98c767c7da95016e531277c
whole-file packages/webui/tests/library-cli.test.mjs 0 dda07bd1b0d65058723c4d5e50f94fefb1ee103c33c8f61c13841cfedfd53f41
whole-file packages/webui/tests/library-routes.test.mjs 0 5cd1f4c6ea99cce38ce59eee085ab31f9aa8bba39cebbaf52b355c4d8fec3098
whole-file packages/webui/tests/library-status.test.mjs 0 0b4fb5a07a3d35fb2237401b460ddd3832a2f6fa357f6fbb06b8463251b77faa
whole-file packages/webui/tests/limits-browser.test.mjs 0 1a55050c92be5b93e447878feafe59e017b205d114413e6de000faf784df1dad
whole-file packages/webui/tests/limits-route.test.mjs 0 b74fe734b0ccbdde716bb52bc15791f80a0b251514a6b01d6ba59164b9639123
whole-file packages/webui/tests/messages.test.mjs 0 19bce52278091c8d37ca48c1f6f72bc400cd9a9b3038ae9f31e35444fdab05b8
whole-file packages/webui/tests/pinned-copy.test.mjs 0 a8c99249fda05c5be773c8d2231e2dd1a3f3b7d10a40a7ec3e6ca6c6cfb4c85a
whole-file packages/webui/tests/preview.test.mjs 0 7f7fbb11dd5915b3351b5086ec9b0f0bed6837a32a2e5902b707fcb54f1bf1c3
whole-file packages/webui/tests/processing-browser.test.mjs 0 ed5970f1e2b1fa393c80db5e5551523e77ad0ee107dfa686a76c5d923b7e2d8f
whole-file packages/webui/tests/processing.test.mjs 0 ac7a3a0ff51bb15c04e228186d771dd75ef515e09156cd080a8bea881e7cdd8d
whole-file packages/webui/tests/project-file.test.mjs 0 8bf04994dec5c6d6670bbae055802759588c27b04010582732cbbf32c2921487
whole-file packages/webui/tests/project-name-repo.test.mjs 0 ca773d7109f132bd099c43003a8269edfa96b2ba3a9e01e3694fa6bd12b9143e
whole-file packages/webui/tests/proof-cli.test.mjs 0 5095f1ec66a3fc153467baef2291073e27aba17fdc2757e0a3cf2a03057a6547
whole-file packages/webui/tests/proof.test.mjs 0 cdb948d261f52232c6e31e25baaf234bd0af3b6d90360a41a6142d2f34a8a797
whole-file packages/webui/tests/reads.test.mjs 0 ef69c9c1dc9a55d526a704297aa4e2802cdca8f0e1fd70ff79efad2114a071a6
whole-file packages/webui/tests/relaunch.test.mjs 0 e9f075560291cb446dabcaeb86c8800b5ea4ca0396c6a999ddbff88b245cefd1
whole-file packages/webui/tests/return-flow.test.mjs 0 bf809ee139c15e9b6b8fe7f6e0f2ce00d0860aa460f145242fc732eafe8da8de
whole-file packages/webui/tests/room-browser.test.mjs 0 23286bf46f341220f9e89cc1d229f46a579edb2eae5d688fc768f99ee343c858
whole-file packages/webui/tests/room-http.test.mjs 0 a921e1991386cb5e184475cf47a012b3020b575968268e9f3c0b396e244a1819
whole-file packages/webui/tests/routes-browser.test.mjs 0 df1283a6e1c5970b404b314b6b76dbf412e5318d76f296ec00164c932166b020
whole-file packages/webui/tests/routes.test.mjs 0 055aa274fa66910a4ff1518fea49fbbbbbc5360dc16e825a460538f312a0781d
whole-file packages/webui/tests/send-browser.test.mjs 0 da1547383522dbfd74a571b5d7625a310ae88f8adddff0c2bd33cb59df3ac137
whole-file packages/webui/tests/send.test.mjs 0 f273e78388935b5fbc18a974f50cb85789436d51c47a4d8dccaf4af4742c2392
whole-file packages/webui/tests/serve.test.mjs 0 1971344643d9cf6b4440d95c9ede42093235883ffab04fc4b614c1b7e7078f22
whole-file packages/webui/tests/settings-form.test.mjs 0 80bd949d1666f2fe1f4caa051e2c34e742bab0e4adbe5584bd534d9bad8bef53
whole-file packages/webui/tests/settings-write.test.mjs 0 7090474fff40910edb93c032feef248adc40ad21666d09c3610cf10279164f99
whole-file packages/webui/tests/shell.test.mjs 0 844287f7797201473f1fb8d97ff2355ff3ff505006723678db78f26d3e5c2a40
whole-file packages/webui/tests/sso-browser.test.mjs 0 1f70c36ce7d054ad435e52d63083c8fe19cd71e70c723518de5e58b69a426a0a
whole-file packages/webui/tests/sso.test.mjs 0 6d7b3061bdc6e22744634ddc5612ff781e5c952a120a346c29eead66a3736438
whole-file packages/webui/tests/tester-browser.test.mjs 0 425c54a84e5bf04ca91d8dc57ee83c14aff14a38159243f10f1c9114dd563967
whole-file packages/webui/tests/tester-cli.test.mjs 0 5eb7296792f16f24d4486f39101007114b3db81c6ab53ab969e925caaffaa7d9
whole-file packages/webui/tests/tester-listener.test.mjs 0 43927869c50a0e223d121e2dea2d10346a053a39fc8157c9fc4813b7c3b17e1f
whole-file packages/webui/tests/tester-socket.test.mjs 0 c05962be7f87084404c53e4f7ed2caffff3d69e98e69a3c9f3c53b150cc804e5
whole-file packages/webui/tests/thread-claims-browser.test.mjs 0 cbb2aeca0de2c64dd4c8d063d3e45140738d8f4064d38effeaec245ed7181b42
whole-file packages/webui/tests/thread-claims.test.mjs 0 164a6c927abd819218be6386e123b234dd9955b122bace699e0a12201797791c
whole-file packages/webui/tests/thread-sharing.test.mjs 0 ad64ab207702483aed6f16d13393e5f3c5a1ab0a0c2dcdf32717e8148a45078c
whole-file packages/webui/tests/usage-browser.test.mjs 0 14be967dcae157cbb0a7b9ea4e0bc67337941d91a11d789baeb3d3c8353ac0e9
whole-file packages/webui/tests/usage.test.mjs 0 4e20eee53c3eb79dc2930ca054977d06da88dba45b706a96ed94abaea6ec3e93
whole-file packages/webui/tests/user-option-swap.test.mjs 0 bd43c257ae31cad2ca6c7a0b3ee49c6e323737d236fb7ff2a2105fd5e59b9767
whole-file packages/webui/tests/views.test.mjs 0 4226ea02d33b9de8f2eaf9f93b0a551cbd9e6100560a8811eed90aa8de76974c
script scripts/test-auth.sh 0 03999aab66446a4192ea9855f5cc1bd406080d0dfa5250b45b30e118556a0d5a
script scripts/test-conductor.sh 0 79b7a689ed96792d42edd1d14796e0293e84e2e339b49476e457ad89e1c4a186
script scripts/test-config.sh 0 2c3c87fb193e82fa17428933eb69cb2b34a589e8338f7a94aaa8256729fdf08f
script scripts/test-discord.sh 0 5c6918b4415e8eabc5df31ac5ad696ec2afdfe3d498d69eae64f228a3807eddb
script scripts/test-extension-package.sh 0 1f672a73e507cc57a204f7d3806ddcb211a0a8fb3ffccefc12bbc41e299f65ac
script scripts/test-federation-acceptance.sh 0 febb0148bc1316bba3189aacf34d7c78f5f5db5d97a35aa4528dfadbec8bfbd0
script scripts/test-foundation.sh 0 3de063333ce60ef1ca1986ecdd8ac30187a2316b7ca8e3ae4b4e6c8bd435caee
script scripts/test-land-work.sh 0 ec90beab6246420982f872a4f45a7173e7a06f4aa263630d6ec4a4865176cde0
script scripts/test-push-check.sh 0 0304c110dc5cf269fd8a4bea9759e5d48895a51c9d411814ce39ca924073da79
script scripts/test-queue.sh 0 f678da9550eb6daa5268465b3a07beefd661e506ed38b8e11bf0a1b4a68cc781
script scripts/test-release.sh 0 ad0f2a6b271275003783d3ffab5520f167ea79e26683710ce92a71600037360c
script scripts/test-task.sh 0 ad511e52af4bc0a843eabbb3efcedd88c89468ccee43be9022e23880d7901f16
mutant M1-supporting 1 0 10581fdab579db4d63322eee3369a1a740266e00a7dcbaa95e7651a7e0447ab8
mutant M2-force-push 1 0 b137e8362ae3e26a090a82e8c41c3e87beeaac43183cdd6db67aba55d5e372c9
mutant M3-forged-token 1 0 bda603c18b7b2bf468a21e139f0cff0c15c22e19c9d41cf8c50f9c3ae0bd128d
mutant M4-grant-before-push 1 0 a642ef8e57a98c1488bb787da241292e6ed5446ca4117940fb0ddb9800c6a105
mutant M5-notice-after-publication 1 0 5645138c2cef5d1999948744783ff3904a78e9cefd7421674386a2d0c5fdc45a
mutant M6-commit-schema 1 0 7201f53cb976b2db1994c4e25f7f6e8b58eea323c060dbddbfa0372464adb686
1 kind name rc restored_rc log_sha256
2 whole-file packages/library/tests/write.test.mjs 0 e0f6a09b70316beebbf33966b35bfd05b4a12b587744dadc9239bd28de1b976c
3 whole-file packages/bus/tests/library-write.test.mjs 0 e0e9e609b20ea0564a7611046026cbdfd007832e0eb13507798e958d8d106ef0
4 whole-file packages/harness/tests/library-write-tools.test.mjs 0 c8a3a493d1d2abce785e94fdda5b1732e8d4a5e6eb19767af1b7e8b5e560cf3b
5 whole-file packages/webui/tests/library-write-options.test.mjs 0 2491eb6a01a0b4b2127bcb6a87a5dc778d079b7d1ea445509a1dffc49dea9051
6 whole-file packages/bus/tests/access-revoke.test.mjs 0 a1b317bb687e8c369440f5481b4ef309615afb5a5922fa306980d2024019e544
7 whole-file packages/bus/tests/account-migration.test.mjs 0 e697b58a1bb9b37c609b441fe786e557c7f0279e7a31eea791483ce4567db318
8 whole-file packages/bus/tests/address.test.mjs 0 977f755d29a8e75578d0bef48ec40b7045736014b2e53e15a03cdb6dd39696d8
9 whole-file packages/bus/tests/agents.test.mjs 0 3e8116bad1ab5594e627ba3e9f5403414885959935bcd9e6f75f1af4c625d4b0
10 whole-file packages/bus/tests/approval-binding.test.mjs 0 d2fbee516b57857f3a6562427d2a08bd7fdb772aacabd33ebd9d2990f01ec7fa
11 whole-file packages/bus/tests/broker.test.mjs 0 400e7f0616bc7432d8cb2a9efbae3c84d5b44ef59ce7f8fbebd4c802e2a9f44e
12 whole-file packages/bus/tests/business.test.mjs 0 f42502884a158ed1d190b37b3884e19d44547ececf068f91765b8ad15faffba3
13 whole-file packages/bus/tests/channel-proof.test.mjs 0 3984a7e2da2a60e60d0309f719a45a3ef04bca767bac34e00a760e19e941d732
14 whole-file packages/bus/tests/chief-of-staff.test.mjs 0 8dd57acf0101d4c92ada92f4c33f68061d4e2cb430179a8ab99a0b7fc9a19997
15 whole-file packages/bus/tests/citation-availability.test.mjs 0 d34d84d44b5949024ce6b32708c68e10b00a84600bb03598bf9538b358750455
16 whole-file packages/bus/tests/citation-guard.test.mjs 0 acab66e65fd41f1fbfd9524f80456553fc033d8bfc18a9bec7a813bd0d4552d8
17 whole-file packages/bus/tests/citation-runtime.test.mjs 0 ce33310d333c7a0af7451c3a3b610f5178961b80b6b63a839909b67657fd161e
18 whole-file packages/bus/tests/comment-cursors.test.mjs 0 cd4de90a070faf2bdb776a96a6ba43aa4854f6f5f1b2b7459740bd7bdc0ffb7e
19 whole-file packages/bus/tests/comment-migration.test.mjs 0 773659855873805b5bd950101d950945213658fde42d8012211e742ba9ddcc09
20 whole-file packages/bus/tests/console-decide.test.mjs 0 275fc0a24a03f2f27210a65e2bd21ce615ec9b6b400c4e4177ddb97a9e8e85be
21 whole-file packages/bus/tests/creative.test.mjs 0 eb950d5680ff7e4e09a9c11b1c169d4a740011ea72bb75921d35571ef5373df2
22 whole-file packages/bus/tests/credential-claim.test.mjs 0 b2d40e4d2a353f4154af4974d5779f7b20c652a8110da3183f95959ae2540941
23 whole-file packages/bus/tests/credential-status.test.mjs 0 ed367e3d123c9629b7d3d22f6fa60f48c74e71b36982c54ad2b3e8419f515431
24 whole-file packages/bus/tests/credential-store.test.mjs 0 0fd528ba27757393973cba5b21da573bc681659416962bf7d3a3dff3018414af
25 whole-file packages/bus/tests/credential-verbs.test.mjs 0 154b123af420abf08c6ab8b7bc6439052e7ab65c772abb0caac5e9b9cd3608e9
26 whole-file packages/bus/tests/credentials.test.mjs 0 6474b45c076f474a6881d0dddd0cd3b4cd385d52ac4c55ef1a9f8c10e0028277
27 whole-file packages/bus/tests/csuite-messaging.test.mjs 0 c0229df65240be8ad014d83def48dbd64a952b701f46e40ff01efdebb5644d6a
28 whole-file packages/bus/tests/daily-quota-runtime.test.mjs 0 62d686aa1852088af569cd3b921194db6873311f2ba04e55b15a93900b1615cd
29 whole-file packages/bus/tests/decision-close.test.mjs 0 9599744860a4e6e330ce50b8e93c478546edce5545a9171bed068743a266ae5c
30 whole-file packages/bus/tests/decision-route.test.mjs 0 2b2a9570dab83b1d454f56c1311cb41103a14bcff49e207cbb4ac5d4c73d6f0f
31 whole-file packages/bus/tests/decisions.test.mjs 0 a753df7d939155adf13c7177926728b2760cf61770117dd1655f29fe2c88a26f
32 whole-file packages/bus/tests/end-launch.test.mjs 0 ff7a27c35e35be424cbefa799e219ffc073c494214642b4ce56ceed6b359335e
33 whole-file packages/bus/tests/fire-revokes-grants.test.mjs 0 8e6bee9421480af8a1326d65903f258d5ea0a79df6188bf18301f32a5260547e
34 whole-file packages/bus/tests/gitea-grant-docker.test.mjs 0 8b639ee86d1a7d2ef267e1d36264f4ce1b5beed2c8ce084c39c0de1d699ca8a0
35 whole-file packages/bus/tests/gitea-grant.test.mjs 0 8fa39b3e58cfac4ec97f02ff876fde1a40a1894c826306c0b77d45c73586f753
36 whole-file packages/bus/tests/gitea-migration.test.mjs 0 689fb43a38718f5f5d00ffb3b6d998d5d454854d5e77a936b56d7c4192ee12e9
37 whole-file packages/bus/tests/grant-enroll.test.mjs 0 a8be59931d37a5c787c2087d29d766d6b701bbe34f8343134148292cd29d345c
38 whole-file packages/bus/tests/grant-executor.test.mjs 0 0a7f5be29b28140c9f8e7f67c6a897eb455677fba4459952a83982f2b23c87e0
39 whole-file packages/bus/tests/grant-host.test.mjs 0 54c4ed722116914221e9320fd41723e32aad59284e98d8e177130b0f4c4fe6c4
40 whole-file packages/bus/tests/grant-migration.test.mjs 0 7cfaa3f24d1dc070d7bdb8de76b08fabcdb6877d3367c59f7601e08f683d658b
41 whole-file packages/bus/tests/grant-scope-runtime.test.mjs 0 f8bccf5324f1e10282dfb4f4fd0f63c76c8e9481ae6cc0845a1d9028e3d9633e
42 whole-file packages/bus/tests/grant-scope.test.mjs 0 e30a8ced066ad214a6f70dd4a39c75bacf296032a3201e4605fa3c8df23e0159
43 whole-file packages/bus/tests/hard-waits.test.mjs 0 78d92a14781286d3ca11989786a8698a2b796ad1db78769fd5b3c7653ad7639e
44 whole-file packages/bus/tests/host-run.test.mjs 0 51d231611940444d2c2a37fbb7b14267c705c1b5e453b02367d0a6def214dc93
45 whole-file packages/bus/tests/host-tools.test.mjs 0 3bc5b5413661edd2026bca1721055ec7dce8d115918cc10c8f334e527176d23b
46 whole-file packages/bus/tests/human.test.mjs 0 5c8f3fd402ae4e130029b3203ed41b3cb45b8781417d31dec1f47ebddd516349
47 whole-file packages/bus/tests/instances-verb.test.mjs 0 940ca3884930f539272a2c39ca7e1c7fa3e51b3a4ea6fdcfb21719c652152257
48 whole-file packages/bus/tests/interpreter.test.mjs 0 d0c6190a428005b7750b59e665968657b242b322af05ca7bdd4cd7e815b7f4ab
49 whole-file packages/bus/tests/land.test.mjs 0 e9ecd1d8011ab6789fc3254bb069e76631b68b20ad65ae844ee12e0dc3b97cb0
50 whole-file packages/bus/tests/launch-notice.test.mjs 0 750a54d4c40559c7fb5414071bace8056d6bfa71dfdbec4de12c94c90299c3c5
51 whole-file packages/bus/tests/launcher-released.test.mjs 0 4d59486ca3077a4b2f51141ab79df635feb6b7bca2d6c0cfe5839a6a93715de6
52 whole-file packages/bus/tests/library-credential.test.mjs 0 db7e2dc4afe23f74c49795e4dcd3d28414435519029a837641cbb35bd3f4fcef
53 whole-file packages/bus/tests/library-lookups.test.mjs 0 fa18b5d4c829ec35ebbf519c4346a2ac38cff7538d58ea663acbbdd7930a6015
54 whole-file packages/bus/tests/library-sync.test.mjs 0 ee0ab1ad2549d3e6ae6d8123fa99d697d9be6c629e09131da82f0ab6d58a60e2
55 whole-file packages/bus/tests/library.test.mjs 0 62b663034a5de8d6d1abfaf3f94327d7aae435e3350874b424eefdb28bca1bd1
56 whole-file packages/bus/tests/lifecycle-revoke.test.mjs 0 c0810c743b5108773b6cfbc2d108fa09ea274c437433355277ce2b1295fbf692
57 whole-file packages/bus/tests/lifecycle-verbs.test.mjs 0 926bcfb20ab58a4ecbe85b4f8feb915f72adcdc6d6aee84f814187d0ac998efd
58 whole-file packages/bus/tests/limit-checks.test.mjs 0 919d745dc570172716b1e06d0ea1e8f16ae7b05dbadba77fe92dbbcc8eb4cba7
59 whole-file packages/bus/tests/limit-stop.test.mjs 0 2fc1ebee4e4d4862a100ed9ba97ace1e6d3fb3c608abea63b1ff634a04d5649a
60 whole-file packages/bus/tests/limits-runtime.test.mjs 0 5845176b73f98a499d92096ce0d22a3987ada664a529bdbb26230c2d00b9e65c
61 whole-file packages/bus/tests/limits.test.mjs 0 333f6757d9d00eda74e7d4641af660c9a0ce3d978e6a8550139d3a461c1d5866
62 whole-file packages/bus/tests/message-citation.test.mjs 0 38422c1d6faf076c750c3fccb7e927e38fe955cc28778511acccf5704df5b191
63 whole-file packages/bus/tests/message-filter.test.mjs 0 2ba52728df27756ac19ba65fe0705e7cf7a2a786a3b4df77a4eb4eec8072604c
64 whole-file packages/bus/tests/messages.test.mjs 0 b87de4ab04682d59a2faa7b3fc64751247454e628e9c1ebd4c07b1df2acbf11c
65 whole-file packages/bus/tests/messaging.test.mjs 0 831b48a9de594e17e8fc47f16ab8c2d722e8d57068a7d39deeaf4c0fa8d136bb
66 whole-file packages/bus/tests/model-proxy.test.mjs 0 99c5128733ae5bb16489171513c158ec1e34dfce1d07c60f6bccb0f84ab7afb9
67 whole-file packages/bus/tests/name-migration.test.mjs 0 bb8f92a17f6a022c7ec63161cccc0bb49a26c2a591fc369375cbebfa93a277a2
68 whole-file packages/bus/tests/names.test.mjs 0 0fcf60cc8c7dee3e85548c759f03e1792de92b59131bb9fe4282a3b07859366c
69 whole-file packages/bus/tests/peer-transport.test.mjs 0 3cb547003e50695ec2a25c950819b304f15203302281c00758a12c9b89b60f40
70 whole-file packages/bus/tests/peercred.test.mjs 0 e75c700a68ba0c1013c8f36178d6554f0321dc331b2198fd5ffc1a684df76c3e
71 whole-file packages/bus/tests/plugins-verb.test.mjs 0 359fef350befd1d743bcca89a96ebd0757346fd7c0622ba364039ba827620d26
72 whole-file packages/bus/tests/principal.test.mjs 0 732724e6bb2bb953e7dbbbae5c23cc0a1c33a7b7b202f5cb8b46be9363bcb392
73 whole-file packages/bus/tests/process.test.mjs 0 9c5883ea2ca858131317fa9be66d2a51a5d86dbe03c515b0544f4db56b2456a1
74 whole-file packages/bus/tests/processing-runtime.test.mjs 0 bb6b94ac654d069abd6e484031893e649e239d933c135b226d1cb2fbd5a94ca9
75 whole-file packages/bus/tests/processing-timeout.test.mjs 0 323036aa7f32f7aa324f61595531a29f3d5ef0ae2c24aec029842f2783d6be76
76 whole-file packages/bus/tests/processing-web.test.mjs 0 dbd1543498fbc8d0625990436ae668b3a382eedeecd098b929c13d2bb61939ff
77 whole-file packages/bus/tests/processing.test.mjs 0 529ec93e767444970ff03acb1ba719b45033daac239256c9cbd587c39f926a71
78 whole-file packages/bus/tests/project-await.test.mjs 0 e948d721ef06ce95f909880942f7e7ebd73b2f42563e1faedacc7b403b8ebedf
79 whole-file packages/bus/tests/project-files.test.mjs 0 3691b04705c17d4ef7218bc15771560aca5586c00ba0fd3fdf2a80f63d8dc659
80 whole-file packages/bus/tests/project-runtime.test.mjs 0 9d8d6cedeb2044f19e548dda0e32cae1e997b75a6d89072f7367b6e0ce17a44f
81 whole-file packages/bus/tests/publish.test.mjs 0 87f7a382580432646ca89d1228377719cb177bfdbb4f74ad617f6a70dbfb4b33
82 whole-file packages/bus/tests/reload.test.mjs 0 25aa45aca6ba24d72e9e5ad66dfc8c049375c8df121dd748dde09af52f16f853
83 whole-file packages/bus/tests/replies.test.mjs 0 0f05dc2194896540a1488310107e31b7e779cc02c381c201d0c95f69ab39fc51
84 whole-file packages/bus/tests/requirements.test.mjs 0 29569dc30659dbecf359117cc9a59ff37927c60f5514b8ceb8d3796c2c3e53d1
85 whole-file packages/bus/tests/review.test.mjs 0 a8daea8602be9429a8044ad636a438c18eee8ec77b6fa272dce606116d01de8c
86 whole-file packages/bus/tests/revoke-window.test.mjs 0 1435c543c9367204f4ae6d25c2cb97145e762cb18e78ea90a15eb1672a220353
87 whole-file packages/bus/tests/room-check.test.mjs 0 bbe5ac7abfb7e1b30f6fc8f9a247cd28aca82a8783753434339b790dd9857e1c
88 whole-file packages/bus/tests/rooms.test.mjs 0 506fad116ab1d9bb2520fe691adc91ca26e64faa96ced35c193cb11da4e07ccb
89 whole-file packages/bus/tests/routes-verb.test.mjs 0 c09fef3cb022bf7713cde4e1c512feefe67090eff05451fda9f55272140c916e
90 whole-file packages/bus/tests/schema.test.mjs 0 2a1a668dc408aaebe6f604ec5c3b8858211edc52930e1a552173cecedf806d72
91 whole-file packages/bus/tests/session-clear.test.mjs 0 1fce03f1d2a41f5ba294e9d406980a1d3251bc9a5dd4a02897413d6be3d9681c
92 whole-file packages/bus/tests/session-compactions.test.mjs 0 745510273a9eaaf61de4c6453c5dcc70e4a6020c0bcec69673621eefa593dab7
93 whole-file packages/bus/tests/sessions.test.mjs 0 d6c0337e0981ecb9aae2e912c27145bbd831e196828b2d59029666ceae5f605c
94 whole-file packages/bus/tests/single-use.test.mjs 0 6f5cf7d47716ce94eccb069f9b7e5625c3587737921231649fc74e8bfd3aad3c
95 whole-file packages/bus/tests/spec-migration.test.mjs 0 ede4ca62a772261bc868f4dfcb4861c9c3670110ba2afd39cc44183398c2eafd
96 whole-file packages/bus/tests/spec-review.test.mjs 0 951aa2a54cfe4bf0960dd3d2180874cb8183ff9b0aee7b7251b05df11385e1a5
97 whole-file packages/bus/tests/spec-socket.test.mjs 0 65735a2557e19b3d63a3ce7198c80fb5059f1974acd0708a89f192857b43b095
98 whole-file packages/bus/tests/spec.test.mjs 0 488ab443b41b06b6ae4434f5b2ee8904169aa08ab3527f3ae4c3f438e54f9909
99 whole-file packages/bus/tests/staff-request.test.mjs 0 edeb4ceffae3af33e330e1fac5d74c4fb1861d52ec5ac5005689791ab74da555
100 whole-file packages/bus/tests/state.test.mjs 0 3b5f916c494563fc7c18f89450e0cecbbdad8e24680b373e897253b9ea6064fe
101 whole-file packages/bus/tests/store.test.mjs 0 39d0a4033b89eff9b29ea6dcf6e56696a1d20a41e0e14b4bc8efbfae7962ecf4
102 whole-file packages/bus/tests/task-page.test.mjs 0 6446cfc1a43cb4206b4130f316251d3d9a820f929a6efc59dc74e7cbe1fbd258
103 whole-file packages/bus/tests/task-read.test.mjs 0 37134ced43ad5ada4291ad5e3474dcf7063892443b06d54a7456cd4cddb9cf2f
104 whole-file packages/bus/tests/tasks.test.mjs 0 9d91ee510a7447545c2cf93ae6779544a05e01bb70346e595b91a4800fa42d7b
105 whole-file packages/bus/tests/tester-threads.test.mjs 0 ff843610e02f20c5e1ab19de27b131ae7cbc3fd87b16d85e68336b5e914ffd77
106 whole-file packages/bus/tests/tester-writes.test.mjs 0 517c41e666d2c59b7ffb6ddb22898ef58b816bb26eaa47e1ce7508087b607df5
107 whole-file packages/bus/tests/tester.test.mjs 0 19eff6ddb3aca05ad5c006ac15e7860311f56941055850e86b8075cd39eff0d1
108 whole-file packages/bus/tests/thread-claims.test.mjs 0 ee146e984bb3ae82ad60f90c83035053ff2966ffea91015b6c3c4f93b7e019bd
109 whole-file packages/bus/tests/thread-migration.test.mjs 0 1dc2ae4e920d40a6fc2b1033f43ac0a2f766bfb86f07a596a983b9c1bccf87d5
110 whole-file packages/bus/tests/thread-shares.test.mjs 0 3f99a82e9e4a43fa788ebb231c5e712969809fa83b6ca66f04b8cad13f411235
111 whole-file packages/bus/tests/threads.test.mjs 0 2e5ba2be69a34c71f41a819c7a5e8615fcd085f847f9aa6d16095b9c8d742552
112 whole-file packages/bus/tests/transport.test.mjs 0 c9d28b9acfc0c2213838df0d960506156ef6fffec24a0cee7336324f105fac0e
113 whole-file packages/bus/tests/usage-broker.test.mjs 0 26fc080c6ffcb7c64cca39a07f302b59c21d1425ca3c90120eb3d3bb751c49da
114 whole-file packages/bus/tests/usage-migration.test.mjs 0 cfc65c4233aedb325293170e782ccb83fcfdd85cc4afed1e913e91785fa4b7cf
115 whole-file packages/bus/tests/usage-runtime.test.mjs 0 faa5fce30cbd7002137acfca3cde68b49b74321fb27b8a190736b35601430866
116 whole-file packages/bus/tests/usage.test.mjs 0 d36d21e0b3f5c9621b50e8b71ff6d8daa341f5954f3612b7cc93cb6c734215c0
117 whole-file packages/bus/tests/user-principal.test.mjs 0 1b56d881de2975ec4e3bc27fa15bc495ae0600709457da579337f0c9c98651e5
118 whole-file packages/bus/tests/viewer.test.mjs 0 942ba4fd96c3bb4c527eb129e69ddb5cb7660915e8458cfee47661d268db0e24
119 whole-file packages/bus/tests/web.test.mjs 0 048e3ef2840934f95d7e00de6502b19342215cfe5d00d1b8ada7c1bc6e87cfa1
120 whole-file packages/bus/tests/workflow-roles.test.mjs 0 1bed1351ec3c50ddce65f9b8108f93a5c4061ef5cf36f3d09706d85b13e085ed
121 whole-file packages/business/tests/case1-business-file.test.mjs 0 4481abbce73eae119fbedc5edf65120fa494931913aac6f0273b04263c251cc9
122 whole-file packages/business/tests/launch-settings.test.mjs 0 540f5170ddc7e79a8abd9584c4586eade3ecc1f7544489060db99552c75e4685
123 whole-file packages/cli/tests/access-boot.test.mjs 0 e41e1f1949d3568f8845234d573282c18a185578389d6947140cf540d7f99dc8
124 whole-file packages/cli/tests/access.test.mjs 0 9e2a813092ad4b60cd89443424eb4142f217265e52ff7b769b7f16d247d5a367
125 whole-file packages/cli/tests/app.test.mjs 0 5f5244ba0061dc4ffd1565c4abd3168d7cb2e6398625b69c841a54544b9a35a7
126 whole-file packages/cli/tests/boot-status.test.mjs 0 ca090577e20ea46315cb377668e309571380e2323c867a8b90d0537022e681b7
127 whole-file packages/cli/tests/case1-hostcheck.test.mjs 0 403e1127da5637904e8fe1c1eed5a7865c5bd5ee1c5d0fe684837a7370c41de4
128 whole-file packages/cli/tests/case2-install.test.mjs 0 df8edefe13297ced929d09f01eec5c7ecf38c355d9871368cb19f2f392ae057a
129 whole-file packages/cli/tests/case2-persona-import.test.mjs 0 5dc7a93c03567ec0e85e43bcafe07109881c30b2e83b4c4eab4631a155daece0
130 whole-file packages/cli/tests/case2-unit.test.mjs 0 39b349dfd3125e74b780ce28e9ec24465a6a8c2bb9e431c819864f4eff1fdb77
131 whole-file packages/cli/tests/channel-cli.test.mjs 0 9fd9c30aa604f77b7a069912cb987293af36f2f138cce850f8d26946f5ce42cd
132 whole-file packages/cli/tests/channel-recovery.test.mjs 0 52c6bd980cd54ef22b9e6c78260a1e389e8177526340129ac64fbafa7f2e01ab
133 whole-file packages/cli/tests/cli.test.mjs 0 59327fd89e3fb8f927210df6a2c62afe4522e59f59129b1967be2a238c498f26
134 whole-file packages/cli/tests/compactions-launch.test.mjs 0 c9006b3039a6616be1816f5ce85bf68ba4fb54dadf10447e52fc92f7ed57bbe5
135 whole-file packages/cli/tests/config.test.mjs 0 35e39fb0551e23f5738d0c30d66bd233f2290040885c511e526f0f0468b31cad
136 whole-file packages/cli/tests/credentials.test.mjs 0 2b55cde2318a034ec4152e712863ac54f07f1b4db752c6282507d7f621bde67d
137 whole-file packages/cli/tests/federation-acceptance.test.mjs 0 cca971a93a5dfd20e603b45cc2158b58ea0638e8bb7a33e6e0c5e12178ffa3df
138 whole-file packages/cli/tests/follow.test.mjs 0 26a3ad0dbc124aff48a5f4908e3d8b78cb871e5560c0e389de457f58aea2dfe3
139 whole-file packages/cli/tests/git-socket.test.mjs 0 10c21c34a79ebd5f89f6ed9182a492e9f42f0512a68f758c0566a763a84abeb9
140 whole-file packages/cli/tests/grants-scope.test.mjs 0 37967ca8e82a89a0e88ed872fa562b5c094282cc759853b6dc31c292204bef3c
141 whole-file packages/cli/tests/grants.test.mjs 0 687af745932625ea1d439a8139c760f14b4a327bf9b15c5b5b1cdbc7ea6be09f
142 whole-file packages/cli/tests/host.test.mjs 0 50010e97e44392f28006bbd4127146b8aa1712ff4a016ca10864923701213dce
143 whole-file packages/cli/tests/hosts.test.mjs 0 d5d507c3968c45b2aa25067d6bbb1eedd69785c0aa1bb51177c63b6ad64fcb53
144 whole-file packages/cli/tests/idle-stop-race.test.mjs 0 8e6171855003b0f40921863430dc89cf20f8bbf14a9ce3c115f90486f08232b5
145 whole-file packages/cli/tests/instances.test.mjs 0 c6b4d59443baa4af029af76a846a8093669a7593490f21408a2c40ad027acccf
146 whole-file packages/cli/tests/launch-account.test.mjs 0 6cb63446fc8dbb6217e6d925caabb37a28bcf1ea5c27cf8d515d67c7842553b8
147 whole-file packages/cli/tests/launch-limit-checks.test.mjs 0 fae971d715a90d1dbbeb3c054932a02d253e0a0d036d3b0db4e0c9edcd5ad7ef
148 whole-file packages/cli/tests/launch-limits.test.mjs 0 d3f4b2c57e776bf6bbcafba6dbd9c4728918b0d81fc606dcd7d2dffefdad4001
149 whole-file packages/cli/tests/launch-routes.test.mjs 0 e2bec020f96238079908c03537366c64800de0913a83f3a2877606d0266548d6
150 whole-file packages/cli/tests/launcher.test.mjs 0 beafda99d34a532f3a1d6f96565b7a780e03924939b6c30b01a8169cceaa792a
151 whole-file packages/cli/tests/lifecycle.test.mjs 0 014a2cea6d3f2a9f21f7fc16dc68b34740b03726612851047b877f8c1194ebe0
152 whole-file packages/cli/tests/limits-tokens.test.mjs 0 6fdf9e6946dfb579cde42ec500d8cb8473a9d8318f43caecee7561a5e40fdec1
153 whole-file packages/cli/tests/limits.test.mjs 0 bc2f13959d087ccaf6977c4cf1294e6fcee21f968677ab169580ce79643add18
154 whole-file packages/cli/tests/mark-read.test.mjs 0 64864c54ab910488d55136b88f351771489cf744ba1c21e5c479121694dd88ab
155 whole-file packages/cli/tests/model-proxy.test.mjs 0 119a5d02870a4062992efba7f44ee9dfe69ecf8a7076f121aa24a8c7edf24cf0
156 whole-file packages/cli/tests/names.test.mjs 0 c2160aeb0c68855f59b5d97dc3b6101b7800028df708f5f42430ae5854eb23e2
157 whole-file packages/cli/tests/notifier.test.mjs 0 18e62f48de18cc4d57916a556adeb3befb13921d5d7b036ef5a7f2bfa460cdc1
158 whole-file packages/cli/tests/optional-tracker.test.mjs 0 e5adddfee06b2f1cbd2ec50caf84b5acbc58d4ff4ec4c1bc539a4535a3991827
159 whole-file packages/cli/tests/other-tree.test.mjs 0 2dae57af2b8d508f2792ce37191aebf0cd28ad75f7621d4ab9f8d6daa60b748f
160 whole-file packages/cli/tests/processing-cli.test.mjs 0 44b2854ba03810cdda3ccf0c6de883f953089d532bfcdc8f4bdd3faffac80fe9
161 whole-file packages/cli/tests/project-name-repo.test.mjs 0 0468b9ecde6189d1398eef2e7e8043e870aa867a8a9d22b20b2ded26dc1543b5
162 whole-file packages/cli/tests/project.test.mjs 0 79e648106151ca220d9535b16c416dfdcffffaed41e3c211e4325c151f0775f7
163 whole-file packages/cli/tests/publish-socket.test.mjs 0 59a02b1fcc284407b06d0d2df8e6e1e5323059daa2e47c690f30a718d1e7c682
164 whole-file packages/cli/tests/reply-limits.test.mjs 0 554a353d61891c3cbe8da01062025dcb0756ba4f4e7ab3fb8d7b56ceccf64437
165 whole-file packages/cli/tests/revoke-window.test.mjs 0 743fdb0135e507dea5b968265907e5ac9228284b130feb0057d91e70ad561c02
166 whole-file packages/cli/tests/session-clear.test.mjs 0 5abbd894dee9cfcb3464a40e5045f9062402d5ffe567972113715cc9e24c6ce3
167 whole-file packages/cli/tests/session-cli.test.mjs 0 c469aed70c1ae408e176189f23a849f3acf0bfc7dc3ba1132c101a931359a462
168 whole-file packages/cli/tests/session-launch.test.mjs 0 cde78f9dcee9afa243692fb0493697104425b61589bd7be6c4cbdb0f4bfbd5e5
169 whole-file packages/cli/tests/stack-copy.test.mjs 0 3b92b3772c060378cd2ec0c1bf7fe6662721721a11d99d83c9debe3e3aa929c2
170 whole-file packages/cli/tests/stack-instances.test.mjs 0 2839e390f564a6e58cd514ce4061ec0b741ed07b4e2b755a337439737601d97e
171 whole-file packages/cli/tests/tester-http.test.mjs 0 bd9c598c84dd0be3b9873176c63e418ccc004265153be68e0cbe51c40b1ff91f
172 whole-file packages/cli/tests/tester-reads.test.mjs 0 50a71ffd9093c4d51d8ad07bc9edbbd76306922f290d28194d656cd78f8528c5
173 whole-file packages/cli/tests/tester-threads.test.mjs 0 cd3dd0020472c269d61934ddb32d77f6dc297090d63e819288f4038fe9edf096
174 whole-file packages/cli/tests/tester.test.mjs 0 437498258b4ea5c2f2bfa8fe66114106ac10944911bd40bca944f2078b34e45f
175 whole-file packages/cli/tests/thread-cli.test.mjs 0 c29897119f279434bec0248c12beb5ce97f6214b8b0bec995061000f047b1600
176 whole-file packages/cli/tests/thread-launch.test.mjs 0 459ef35e2b4f9cb87151577f252282a716ddbd4985f26e9e26c01b08af13a7f2
177 whole-file packages/cli/tests/thread-revoke.test.mjs 0 b8a72080a9624ce4bbc1b23b8903be1b74a8a6ced35b0b60f503d92a22d1028c
178 whole-file packages/cli/tests/trackers-boot.test.mjs 0 f83d72dac4eec7369d62b495745e1fdeeb4ff1ba2e1efb376c9b583da1765a1d
179 whole-file packages/cli/tests/transport.test.mjs 0 e0ae6c26b5669d4b955deffe941a3c4314be12297e72d6c099de750170688d9c
180 whole-file packages/cli/tests/usage.test.mjs 0 639ebccda23e0e094d62cb0e7e5c80c403b74b284ac5189fb0d92e63387c92f8
181 whole-file packages/cli/tests/verbs.test.mjs 0 43eefd242a987efe42d145d7863372a2b0a397031baec12ecd4c9e0644daff12
182 whole-file packages/harness/tests/bundle.test.mjs 0 75fd5a9a6fa0b46078952ce216348e39ce481f6fc00b89f85da9ff729d5ba100
183 whole-file packages/harness/tests/citation-runner.test.mjs 0 933021f114882a6c58f4071446a07d49ebc9f99c062ffe1fedc1f13b799db389
184 whole-file packages/harness/tests/claude-gate.test.mjs 0 f66053597c8209c5175810e33d8b878ad74eb314f4057f5b4b0b1ac625272329
185 whole-file packages/harness/tests/claude-session.test.mjs 0 9c4d8ffc00efd0da75d143bca1cd33f30f3e762e20086270d941170e80c962ed
186 whole-file packages/harness/tests/creative.test.mjs 0 3433184ced3427613d645807f0757896baf52d214c3dd6a4a12c3951bbdc50ce
187 whole-file packages/harness/tests/gate.test.mjs 0 991670779d9cf6f733d0060c6f1a59d122ab8e99f7e0a5f7183c9e974f1b1aaf
188 whole-file packages/harness/tests/git-tools.test.mjs 0 2837565ec16cd8c4d032311675a1468bc4bc756ee0696d0e57ea35ffd56eea44
189 whole-file packages/harness/tests/library-tools.test.mjs 0 05a8a5d8e8c4e7b3435d4a9b3f6292816356a99f7156ded2ef7873e1c84f8de7
190 whole-file packages/harness/tests/mcp-server.test.mjs 0 6ce4c6c39b8a1ed70fbeaca410781a62d69a6412333e03640296048b799a09b9
191 whole-file packages/harness/tests/pi-session.test.mjs 0 570376f798b43e82bbc1972f1d50d3915e94a8e4ca00e50076ab390df9830d7d
192 whole-file packages/harness/tests/raise-domain.test.mjs 0 aa6be675614d9324c3ddc01ef40347b235adbccfe6cd73081096ae9e9742d754
193 whole-file packages/harness/tests/runner.test.mjs 0 d3f8c752897e359e10a8e9d507c10ef3760a5ae37999f6f143cb222c42568437
194 whole-file packages/harness/tests/skills.test.mjs 0 2f34800387f4d7f8b8d5f6758cd197f77d11034011bf7f4f79f4d74c582e3f0f
195 whole-file packages/harness/tests/spec-tools.test.mjs 0 29cd1f7094266963a995f636d9575337246a9868d42a48f02231a99251261f47
196 whole-file packages/harness/tests/tools.test.mjs 0 f27638f1fa38fd2d15a352f6c21f7980688d48d580f5a59dab1520fd7c30b30c
197 whole-file packages/library/tests/guard.test.mjs 0 6529c2b48c252eeaf9c19487507a03cf46d952e7ffb3a41e640a54590e312df0
198 whole-file packages/library/tests/index-build.test.mjs 0 4747cb8c842cdc424db727cb3b0e36a6d35f4e9c5c31c1a3bf61314897c2cf6d
199 whole-file packages/library/tests/links.test.mjs 0 9b89f9275f19035c5f079b6920b248466048626c634153eba2fec165f9f6388f
200 whole-file packages/library/tests/mapping.test.mjs 0 9110b98f955dd71588357858b913194ccf9e04dca9aa7c4559600cbe9b9e8e71
201 whole-file packages/library/tests/mirror.test.mjs 0 cc2326da9796dbbbf5b3faa121180a7f00c43816a232a96faece7b58570f1227
202 whole-file packages/library/tests/query.test.mjs 0 f1209bc132a63cba9a7312cbed7e3098126e05c792356648f1d9ec497a11aa82
203 whole-file packages/library/tests/reader.test.mjs 0 3e17f34697ae65524cf7908dcc9ca1b24025bbc92989b2ba05f6e75c0f839c3b
204 whole-file packages/library/tests/render.test.mjs 0 5e68091a309a07e5502b9cc500c7cdfabaa9e246bb77b0c04a0dd86bb9bfcde1
205 whole-file packages/library/tests/scope.test.mjs 0 f55dec854adcd311d614b66959c5655cb3419d7ae7b06fe1f648b43cdecef32e
206 whole-file packages/library/tests/supporting.test.mjs 0 2f50bbe9c942360a5becf5bb984ed5aedb12628d4578ea85c6e433ad0ad73130
207 whole-file packages/library/tests/survey.test.mjs 0 72108eb8a07b990b93ca62c5fa4b55f1f89f3254ca1cf59d3de8ad194dcc3a0d
208 whole-file packages/library/tests/sync.test.mjs 0 a68c69492149b6e9dc7dbf24fc434ebfd3243b2db2c7654b00107b997e99ead0
209 whole-file packages/plugins/tests/harness-compactions.test.mjs 0 9eb9f67c06ae17b33198fbcdb443a0c73ca9cc0cd157cae2359a0647d2db3658
210 whole-file packages/processing-control/tests/task.test.mjs 0 8db6adda6b5d5f7437e9e4cdf961134493409d7227fde02c0b0a76aeb21186f0
211 whole-file packages/seat/tests/compactions-budget.test.mjs 0 1849994f45bfcccfb4ce18915887c740947a98041aa7bd66590ae7a62fa7078e
212 whole-file packages/seat/tests/compactions-ledger.test.mjs 0 af689c631c9d62dee11f4400112fd10df82567c1f49d9f0d423b9d19d6f860d7
213 whole-file packages/seat/tests/compactions.test.mjs 0 cf5e74e1211560ca47a2c13e8002635097f486e2ca06698795bc38263d889f3c
214 whole-file packages/seat/tests/sandbox.test.mjs 0 c09d89b8e1b22db25578f62cd4a1d3b9f441d652178fb675800efb31de33a577
215 whole-file packages/seat/tests/session.test.mjs 0 82171646932cddfc68f0e90ca3355f9595d32c5d228c1fdb855c06cb1d9c2feb
216 whole-file packages/tasks/tests/adapter.test.mjs 0 8843067c21942ae6165a7feaced2382fd9d02d0c62bd30772191393cb5d962b8
217 whole-file packages/tasks/tests/comment-restart.test.mjs 0 25aa6e953cf19ed3ae368581035b9d883ed924b41d593240e2b4ab5ba39f2982
218 whole-file packages/tasks/tests/fields.test.mjs 0 e4eafd6b17a46262dddc548263da993bc3a672adca1cadcc698b6d8374f11e2d
219 whole-file packages/tasks/tests/processing.test.mjs 0 0b89866cc076c43c37534dba926d492d8d334d08a6886325e3d4ac6ddbc88897
220 whole-file packages/tasks/tests/shapes.test.mjs 0 0b8cc660a07e048d007993d726ae5b8e1f343cb571c18ee0284c3ba0c4b41602
221 whole-file packages/tasks/tests/startup.test.mjs 0 5b44d779ab4ec86922dd35ce7c78096de02c0a0f2363cc6c2a5ee07816efc2ad
222 whole-file packages/tasks/tests/sync.test.mjs 0 513ce9f6e64a3fa0179f8cc9b27db671267a43cdc44ab93f38d21982dd2b9631
223 whole-file packages/tasks/tests/tree.test.mjs 0 d3c8f91f59150259b3226e9306c98efbaf2aa17b5b74cb9b376a103620f8aefe
224 whole-file packages/tasks/tests/verbs.test.mjs 0 47b075d01ef38a5d0228902a6f9bcfec0b78b1a958cd071e8114139af73bca53
225 whole-file packages/webui/tests/agents-browser.test.mjs 0 d3ae822399f58d2c4dfd90e054811a60663a66f9d3fbe69a76aa4ce7dc7260d0
226 whole-file packages/webui/tests/agents.test.mjs 0 be18c8fed41173900617d3b646fac1ce14c07c208e7f24d6567f61f55c5c4dc2
227 whole-file packages/webui/tests/assistant.test.mjs 0 056e4c2a37b7b395741ed1ba33546031a6e4ca53db843bd877b93bed764e02ad
228 whole-file packages/webui/tests/board-held.test.mjs 0 01a24d222092ad46c24ea94f684a018b787dfc8d26a0f7d7fda5d9df7192e695
229 whole-file packages/webui/tests/browser-edge.test.mjs 0 4d10b4fcefbc64cdf12bbfbd9b47f74810b3219f70624c35490cb23d66d3c4a1
230 whole-file packages/webui/tests/browser.test.mjs 0 d8c31b7cc16d93961d65959fa9653eaba906f81da3a34e19b3da7cc922f840c3
231 whole-file packages/webui/tests/bus-browser.test.mjs 0 ab1538aaabfdb02c336da61675a0d1d7f367483bc500a380e7f0ece050ab8609
232 whole-file packages/webui/tests/bus.test.mjs 0 fd7acdf189fef230af80c32c4c972d9bfb1564069d7c4ed649c3a49bb6636e1e
233 whole-file packages/webui/tests/channel-chat.test.mjs 0 678b8e3c9152662487fee1c52c8abcae95029b0672d5bbe26a824bbdb4a7ee0b
234 whole-file packages/webui/tests/chat-browser.test.mjs 0 ec29dd03ac7950dfa90e31f72ae74e2112718f1c02ce4dce8055194a328b5f5b
235 whole-file packages/webui/tests/chat-instances.test.mjs 0 72c88b1eb11397bcff524af72cfe826a276b97b58e33465c6e3334e2746e7783
236 whole-file packages/webui/tests/chat-replies-browser.test.mjs 0 bea9b1f9333bc913b2f01c29a792ea4b2fdbed3ebc64b42548e06f0bd75c9fc5
237 whole-file packages/webui/tests/chat-sessions-access.test.mjs 0 f2de41c7d1f6e246a8a13dc33e8662932964facc5b93d8f85ed5fca760c87fd8
238 whole-file packages/webui/tests/chat.test.mjs 0 4c6564d3565b01d68f7d16937aafddbef2ec3e04744fa9d1544ac0500a386ff7
239 whole-file packages/webui/tests/conversation.test.mjs 0 1c3f8811256ad82d7771a06878c3e70dc3d6f2beab82366b837780a7873ff6f1
240 whole-file packages/webui/tests/decide-browser.test.mjs 0 c53e1b962df99686f9739e258b2b86fe6325544ab02509833f9b1176f1303845
241 whole-file packages/webui/tests/decide-sso.test.mjs 0 f96f8085015a96e11aca2d94bfb9e75318c0c0dfa9659049ec7b7e31ad7bc6de
242 whole-file packages/webui/tests/decision-http.test.mjs 0 c89b7af200edb82f9986479199f359cf6a06c870f1bcf22b538cdf3b167f1258
243 whole-file packages/webui/tests/discord.test.mjs 0 1c3e6d64a370adbc6c7cb24391989e9c00d97330d393943402ff5c6a99c5f9fc
244 whole-file packages/webui/tests/docs-browser.test.mjs 0 f39d989ccdc561175643583b27bc19ee76fa25dec5947baa206b0c38b41c1e2a
245 whole-file packages/webui/tests/editor-browser.test.mjs 0 c807f81d596b3a2e3d2ea55e560f29e181a0354ce48676c6760844855acb0dd3
246 whole-file packages/webui/tests/editor.test.mjs 0 6953a85fe791e9087d14c3bf5075de2c4a651e1a502937da3226065c529ffd2b
247 whole-file packages/webui/tests/granted-user.test.mjs 0 ae3baaa0d2a1ed1ad3e9625a46a8071222dfdef4c2a70ae3ba5bf159b85dec0b
248 whole-file packages/webui/tests/history-return-flow.test.mjs 0 8f9ceeb41a64ec2849383a78f4997f7383c86a01eb6cf1d16747c2eb6c7448d4
249 whole-file packages/webui/tests/instances-browser.test.mjs 0 33b9cd4be552f89809e75f72c54f73dbe6459a5c53401a79a4d887e5a658c442
250 whole-file packages/webui/tests/instances.test.mjs 0 904abfc06358c99b0f646c3e728027cd7bba2b27c98c767c7da95016e531277c
251 whole-file packages/webui/tests/library-cli.test.mjs 0 dda07bd1b0d65058723c4d5e50f94fefb1ee103c33c8f61c13841cfedfd53f41
252 whole-file packages/webui/tests/library-routes.test.mjs 0 5cd1f4c6ea99cce38ce59eee085ab31f9aa8bba39cebbaf52b355c4d8fec3098
253 whole-file packages/webui/tests/library-status.test.mjs 0 0b4fb5a07a3d35fb2237401b460ddd3832a2f6fa357f6fbb06b8463251b77faa
254 whole-file packages/webui/tests/limits-browser.test.mjs 0 1a55050c92be5b93e447878feafe59e017b205d114413e6de000faf784df1dad
255 whole-file packages/webui/tests/limits-route.test.mjs 0 b74fe734b0ccbdde716bb52bc15791f80a0b251514a6b01d6ba59164b9639123
256 whole-file packages/webui/tests/messages.test.mjs 0 19bce52278091c8d37ca48c1f6f72bc400cd9a9b3038ae9f31e35444fdab05b8
257 whole-file packages/webui/tests/pinned-copy.test.mjs 0 a8c99249fda05c5be773c8d2231e2dd1a3f3b7d10a40a7ec3e6ca6c6cfb4c85a
258 whole-file packages/webui/tests/preview.test.mjs 0 7f7fbb11dd5915b3351b5086ec9b0f0bed6837a32a2e5902b707fcb54f1bf1c3
259 whole-file packages/webui/tests/processing-browser.test.mjs 0 ed5970f1e2b1fa393c80db5e5551523e77ad0ee107dfa686a76c5d923b7e2d8f
260 whole-file packages/webui/tests/processing.test.mjs 0 ac7a3a0ff51bb15c04e228186d771dd75ef515e09156cd080a8bea881e7cdd8d
261 whole-file packages/webui/tests/project-file.test.mjs 0 8bf04994dec5c6d6670bbae055802759588c27b04010582732cbbf32c2921487
262 whole-file packages/webui/tests/project-name-repo.test.mjs 0 ca773d7109f132bd099c43003a8269edfa96b2ba3a9e01e3694fa6bd12b9143e
263 whole-file packages/webui/tests/proof-cli.test.mjs 0 5095f1ec66a3fc153467baef2291073e27aba17fdc2757e0a3cf2a03057a6547
264 whole-file packages/webui/tests/proof.test.mjs 0 cdb948d261f52232c6e31e25baaf234bd0af3b6d90360a41a6142d2f34a8a797
265 whole-file packages/webui/tests/reads.test.mjs 0 ef69c9c1dc9a55d526a704297aa4e2802cdca8f0e1fd70ff79efad2114a071a6
266 whole-file packages/webui/tests/relaunch.test.mjs 0 e9f075560291cb446dabcaeb86c8800b5ea4ca0396c6a999ddbff88b245cefd1
267 whole-file packages/webui/tests/return-flow.test.mjs 0 bf809ee139c15e9b6b8fe7f6e0f2ce00d0860aa460f145242fc732eafe8da8de
268 whole-file packages/webui/tests/room-browser.test.mjs 0 23286bf46f341220f9e89cc1d229f46a579edb2eae5d688fc768f99ee343c858
269 whole-file packages/webui/tests/room-http.test.mjs 0 a921e1991386cb5e184475cf47a012b3020b575968268e9f3c0b396e244a1819
270 whole-file packages/webui/tests/routes-browser.test.mjs 0 df1283a6e1c5970b404b314b6b76dbf412e5318d76f296ec00164c932166b020
271 whole-file packages/webui/tests/routes.test.mjs 0 055aa274fa66910a4ff1518fea49fbbbbbc5360dc16e825a460538f312a0781d
272 whole-file packages/webui/tests/send-browser.test.mjs 0 da1547383522dbfd74a571b5d7625a310ae88f8adddff0c2bd33cb59df3ac137
273 whole-file packages/webui/tests/send.test.mjs 0 f273e78388935b5fbc18a974f50cb85789436d51c47a4d8dccaf4af4742c2392
274 whole-file packages/webui/tests/serve.test.mjs 0 1971344643d9cf6b4440d95c9ede42093235883ffab04fc4b614c1b7e7078f22
275 whole-file packages/webui/tests/settings-form.test.mjs 0 80bd949d1666f2fe1f4caa051e2c34e742bab0e4adbe5584bd534d9bad8bef53
276 whole-file packages/webui/tests/settings-write.test.mjs 0 7090474fff40910edb93c032feef248adc40ad21666d09c3610cf10279164f99
277 whole-file packages/webui/tests/shell.test.mjs 0 844287f7797201473f1fb8d97ff2355ff3ff505006723678db78f26d3e5c2a40
278 whole-file packages/webui/tests/sso-browser.test.mjs 0 1f70c36ce7d054ad435e52d63083c8fe19cd71e70c723518de5e58b69a426a0a
279 whole-file packages/webui/tests/sso.test.mjs 0 6d7b3061bdc6e22744634ddc5612ff781e5c952a120a346c29eead66a3736438
280 whole-file packages/webui/tests/tester-browser.test.mjs 0 425c54a84e5bf04ca91d8dc57ee83c14aff14a38159243f10f1c9114dd563967
281 whole-file packages/webui/tests/tester-cli.test.mjs 0 5eb7296792f16f24d4486f39101007114b3db81c6ab53ab969e925caaffaa7d9
282 whole-file packages/webui/tests/tester-listener.test.mjs 0 43927869c50a0e223d121e2dea2d10346a053a39fc8157c9fc4813b7c3b17e1f
283 whole-file packages/webui/tests/tester-socket.test.mjs 0 c05962be7f87084404c53e4f7ed2caffff3d69e98e69a3c9f3c53b150cc804e5
284 whole-file packages/webui/tests/thread-claims-browser.test.mjs 0 cbb2aeca0de2c64dd4c8d063d3e45140738d8f4064d38effeaec245ed7181b42
285 whole-file packages/webui/tests/thread-claims.test.mjs 0 164a6c927abd819218be6386e123b234dd9955b122bace699e0a12201797791c
286 whole-file packages/webui/tests/thread-sharing.test.mjs 0 ad64ab207702483aed6f16d13393e5f3c5a1ab0a0c2dcdf32717e8148a45078c
287 whole-file packages/webui/tests/usage-browser.test.mjs 0 14be967dcae157cbb0a7b9ea4e0bc67337941d91a11d789baeb3d3c8353ac0e9
288 whole-file packages/webui/tests/usage.test.mjs 0 4e20eee53c3eb79dc2930ca054977d06da88dba45b706a96ed94abaea6ec3e93
289 whole-file packages/webui/tests/user-option-swap.test.mjs 0 bd43c257ae31cad2ca6c7a0b3ee49c6e323737d236fb7ff2a2105fd5e59b9767
290 whole-file packages/webui/tests/views.test.mjs 0 4226ea02d33b9de8f2eaf9f93b0a551cbd9e6100560a8811eed90aa8de76974c
291 script scripts/test-auth.sh 0 03999aab66446a4192ea9855f5cc1bd406080d0dfa5250b45b30e118556a0d5a
292 script scripts/test-conductor.sh 0 79b7a689ed96792d42edd1d14796e0293e84e2e339b49476e457ad89e1c4a186
293 script scripts/test-config.sh 0 2c3c87fb193e82fa17428933eb69cb2b34a589e8338f7a94aaa8256729fdf08f
294 script scripts/test-discord.sh 0 5c6918b4415e8eabc5df31ac5ad696ec2afdfe3d498d69eae64f228a3807eddb
295 script scripts/test-extension-package.sh 0 1f672a73e507cc57a204f7d3806ddcb211a0a8fb3ffccefc12bbc41e299f65ac
296 script scripts/test-federation-acceptance.sh 0 febb0148bc1316bba3189aacf34d7c78f5f5db5d97a35aa4528dfadbec8bfbd0
297 script scripts/test-foundation.sh 0 3de063333ce60ef1ca1986ecdd8ac30187a2316b7ca8e3ae4b4e6c8bd435caee
298 script scripts/test-land-work.sh 0 ec90beab6246420982f872a4f45a7173e7a06f4aa263630d6ec4a4865176cde0
299 script scripts/test-push-check.sh 0 0304c110dc5cf269fd8a4bea9759e5d48895a51c9d411814ce39ca924073da79
300 script scripts/test-queue.sh 0 f678da9550eb6daa5268465b3a07beefd661e506ed38b8e11bf0a1b4a68cc781
301 script scripts/test-release.sh 0 ad0f2a6b271275003783d3ffab5520f167ea79e26683710ce92a71600037360c
302 script scripts/test-task.sh 0 ad511e52af4bc0a843eabbb3efcedd88c89468ccee43be9022e23880d7901f16
303 mutant M1-supporting 1 0 10581fdab579db4d63322eee3369a1a740266e00a7dcbaa95e7651a7e0447ab8
304 mutant M2-force-push 1 0 b137e8362ae3e26a090a82e8c41c3e87beeaac43183cdd6db67aba55d5e372c9
305 mutant M3-forged-token 1 0 bda603c18b7b2bf468a21e139f0cff0c15c22e19c9d41cf8c50f9c3ae0bd128d
306 mutant M4-grant-before-push 1 0 a642ef8e57a98c1488bb787da241292e6ed5446ca4117940fb0ddb9800c6a105
307 mutant M5-notice-after-publication 1 0 5645138c2cef5d1999948744783ff3904a78e9cefd7421674386a2d0c5fdc45a
308 mutant M6-commit-schema 1 0 7201f53cb976b2db1994c4e25f7f6e8b58eea323c060dbddbfa0372464adb686
@@ -1,102 +0,0 @@
{
"total": {
"tests": 2605,
"pass": 2604,
"fail": 0,
"cancelled": 0,
"skipped": 1,
"todo": 0
},
"packages": {
"library": {
"files": 13,
"tests": 168,
"pass": 168,
"fail": 0,
"cancelled": 0,
"skipped": 0,
"todo": 0
},
"bus": {
"files": 116,
"tests": 1035,
"pass": 1035,
"fail": 0,
"cancelled": 0,
"skipped": 0,
"todo": 0
},
"harness": {
"files": 16,
"tests": 180,
"pass": 180,
"fail": 0,
"cancelled": 0,
"skipped": 0,
"todo": 0
},
"webui": {
"files": 67,
"tests": 398,
"pass": 398,
"fail": 0,
"cancelled": 0,
"skipped": 0,
"todo": 0
},
"business": {
"files": 2,
"tests": 25,
"pass": 25,
"fail": 0,
"cancelled": 0,
"skipped": 0,
"todo": 0
},
"cli": {
"files": 59,
"tests": 620,
"pass": 619,
"fail": 0,
"cancelled": 0,
"skipped": 1,
"todo": 0
},
"plugins": {
"files": 1,
"tests": 8,
"pass": 8,
"fail": 0,
"cancelled": 0,
"skipped": 0,
"todo": 0
},
"processing-control": {
"files": 1,
"tests": 7,
"pass": 7,
"fail": 0,
"cancelled": 0,
"skipped": 0,
"todo": 0
},
"seat": {
"files": 5,
"tests": 69,
"pass": 69,
"fail": 0,
"cancelled": 0,
"skipped": 0,
"todo": 0
},
"tasks": {
"files": 9,
"tests": 95,
"pass": 95,
"fail": 0,
"cancelled": 0,
"skipped": 0,
"todo": 0
}
}
}
-742
View File
@@ -1,742 +0,0 @@
# Row 224 — C2-05b broker lookups and typed tools (#1725)
Owner: Della; reviewer: Dewey. Assignment sage-2795; scope extension sage-2804.
Base: `4f3fbc25a` (Researcher C2-05a). Branch: `della/row224`.
Brief: C2-05b in `docs/plans/2026-10-20_case2-rows.md` at `aca16404c`
and `51cc0445c`; design section 3, 5.3 M3 and 7.2; C2-05a BUILD rulings.
## Execution boundary and progress
Code/docs and local Git only while row 253 holds the gate. No Node (including
syntax checks), HTTPS Git, queue claim, test or push until Sage's CLEAR.
Tests are written first; their RED/GREEN runs are deferred, not claimed.
Queue next is deferred too: its executable uses Node. Sage assigned this row
explicitly. After 253 and 216 land, rebase under a new branch name.
- Pre-flight: query.mjs consumes `{repo,commit,mapping}`; broker cannot import
Git/filesystem library code because it is in the sandbox import closure.
Runtime injects the host lookup adapter; existing human file/status/sync stay.
- Pre-flight: resolved has no project list and a library is never a checkout.
Bundle needs an explicit library flag from launcher business configuration.
- M3 reading: exact creative base is five lookups plus send_message; retain
explicitly granted broker web_search/web_fetch for research/companion under
landed C2-08 and sage-2804. No generic spec, task, evidence or decision tools. Residual (mos-1308): those
reads lack broker action checks; their typed-tool absence is the only fence
for creative roles. M1/M2 deny bash; broker-side refusal is outside this row.
Mos confirmed this interpretation in mos-1308; design wording fix belongs to Gosalyn. Other definitions retain their current tools.
- Multi-library businesses use an optional project ID; omit it only with one
configured library. Universe is required for all five tools, including get.
- Missing library uses the brief's `library-not-configured`; argument errors
reuse `invalid-request` and C2-05a query codes. No new action or authority.
## Manifest (draft code, unrun)
- bus/src/broker.mjs: five lookup verbs, strict args, holder/business rechecks.
- bus/src/runtime.mjs: host lookup adapter, stale-before-read sync, served pin.
- harness/src/tools.mjs: five schemas; creative exact-set filtering.
- harness/src/bundle.mjs: library flag forwarded to typedTools.
- cli/src/launcher.mjs: one flag derived from trusted business projects.
- bus/tests/library-lookups.test.mjs: real query/broker/socket/runtime cases.
- harness/tests/library-tools.test.mjs: schemas, role snapshots, bundle parity.
- cli/tests/thread-launch.test.mjs: flag reaches a real launched bundle with no library checkout.
- agents/della/work/queue-224/BUILD.md: manifest, rulings and deferred verification ledger.
## Verification ledger
No test or syntax-check run yet. Acceptance requires full bus/cli/harness suites
and every scripts/test-*.sh on Sage's gate; focused files and affected CLI/
seat import-closure tests precede that only in an authorized CLEAR.
## Coordination
Huey272 reports no runtime/bundle/launcher overlap. Rocko219 changes launcher
THREAD_DEFINITIONS checks only, separate from our buildBundle flag argument.
The launcher argument is required: bundle cannot derive library presence from
checkout IDs (a library has no agent clone). No role, authority or config schema
changes; library project entries are already validated and protected by M9.
## Mount and pin impact (inspection only)
No new imports in broker.mjs or tools.mjs; no RUNNER_FILES or sandbox mount
addition. runtime.mjs is host-only and already imports library index.mjs.
Bundle forwards only a boolean, never a root/mapping/slot/credential. The
existing import-closure tests are bus/tests/project-runtime.test.mjs and
seat/tests/sandbox.test.mjs. Grep found no literal sha256 pin for runtime.mjs
or bundle.mjs; bundle tests derive current source digests through SOURCES.
Library sources remain in the existing whole-directory release copy.
## Runs to schedule only after CLEAR
Set TMPDIR=/mnt/storage/scratch/tmp. Focused new bus/harness files first,
then existing library.test.mjs, library-sync.test.mjs, project-runtime.test.mjs,
harness creative/tools/spec-tools/bundle files and affected CLI launch tests.
Follow with the required whole bus/cli/harness suites and Sage's full shell gate.
No timing claim yet: use the repository/Sage per-file limits and record every
command, outcome, elapsed time and timeout before acceptance. No focused skip
or pattern run substitutes for whole-file gate evidence.
## Read-through findings and residuals
- Library get requires universe although the older design table omitted it;
section 3 isolation rule and C2-05a's accepted API are binding.
- Query type enum matches mapping.TYPES (five values); manuscript is a distinct
lookup and not a find type. Unknown host-path/commit/business/accept fields
are refused; explicit project is restricted to this business's library list.
- Async reads recheck the live holder and current project revision. A stale
read attempts sync, then takes the new served snapshot; a returned fetch
failure/divergence keeps serving the old pin. Busy sync uses the current pin.
Unreadable state, no served commit or unsafe configuration refuse. Query
and sync never hold a SQLite transaction over await.
- Processing halt refuses new agent lookup work and rechecks before returning
async results. Existing human library file/status/sync behavior is unchanged.
- Timer sync and reads still use C2-03a's 60-second contract. No timer tuning or
resource-limit schema is introduced by this row. Q222 creative reply settings
are in C2-06; no reply guard or writing capability is implemented here.
- The generic tool socket's existing 60-second client timeout can precede the
server's 120-second Git timeout. This row does not change the generic timeout;
a timed-out lookup is read-only and retryable, never a write/outcome claim.
- All tests are authored but unrun. No RED, GREEN, syntax, runtime performance,
sandbox, broker/harness suite, shell gate, claim or push evidence exists yet.
## Candidate review checklist (read-through only)
- [x] Five verbs mapped to real C2-05a methods, all require universe.
- [x] Default sole library or explicit owned project; no caller repo/commit.
- [x] Human-only file/status/sync gates kept; lookup holder rechecked.
- [x] Async socket dispatch includes lookup verbs through LIBRARY_VERBS.
- [x] Stale/unknown fetch syncs first; results use current immutable served pin.
- [x] Six/eight creative names per mos-1308; other roles retain their tools.
- [x] Launcher -> bundle -> typedTools passes presence without a library clone.
- [x] No imports added to sandbox source closure; no mount change.
- [ ] Execute new tests, RED characterization, full files/suites after CLEAR.
- [ ] Rebase after rows 253/216 land, under a new branch name.
- [ ] Claim/push only in Sage-authorized gap; Dewey review and Sage gate.
Candidate preservation commits are explicitly unrun under sage-2795; they are
not completion, green-suite or landing claims. No dependencies installed.
Correction: the first committed-range diff --check found a blank line at EOF
in the new library-tools test, missed while it was untracked. Removed in a
follow-up local commit; the complete range must be checked again. No tests ran.
## Shared-log receipts for Sage (sage-2815)
The shared logs are unchanged from the base in this row. Sage appends these
receipts in the landing sweep; they are preserved here, not in the manifest.
For `BUILD-LOG.md`:
```text
2026-10-22T16:36:30Z | Della row224 C2-05b #1725 preparation | Before: C2-05a queries exist at 4f3fbc25a but no broker lookup verbs or typed tools. Scope: broker/tools plus Sage-authorized runtime/bundle integration, tests and docs. Existing human-only library reads retained; five agent queries require a live holder and trusted configured source. Code/docs only under row253 gate; no Node/test/push/claim. Runtime ownership coordinated with Rocko219/Huey272.
```
For `docs/SESSIONS.md`:
```text
2026-10-22T16:36:30Z | Della (sage-2795 / sage-2804, Q220) | Row 224 C2-05b #1725, della/row224 base 4f3fbc25a | Read both pinned briefs and C2-05a source; preparing broker/typed tools and authorized host runtime/bundle seams. No queue command, Node, HTTPS Git, claim, test or push during Gander gate. Dewey reviewer; Rocko/Huey runtime coordination sent. Tests and integration verification deferred to CLEAR.
```
Local-only draft pins 19c0a7adf/7cf39c390 are superseded by the
log-free candidate. Saved as local branch della/row224-draft-with-logs before
rebuilding the unpublished candidate commit; no remote history changed.
## Dewey dewey-0852 and Sage sage-2819 — focused corrections
B1: inline freshness uses max(lastFetch, lastError.at), not lastFetch alone.
An error within 60 seconds counts as a recent attempt, so later lookups serve
the old served pin without another fetch. Keep inline sync: the brief requires
it and businesses without timed libraries have no sync timer. The extended
failed-fetch test makes reads at +1, +59,999 and +60,000 ms (one attempt total),
then +60,001 ms (second attempt). All reads must return the old commit.
Required mutant M-B1: remove lastError.at from recentAttempt. The repeated
reads must fail the attempted-count assertion. This mutant has NOT been run.
Residual (Sage will defer): the first inline fetch in each outage window can
still exceed the tool timeout (60 seconds, or the runner broker client’s
30 seconds). Bounding that fetch is out of scope for 224. Subsequent reads
are paced by persisted lastError.at. No claim of first-read outage latency.
N1: whole bus, cli and harness suites are required, plus the shell gate.
If the new thread-launch integration test skips due to sandboxProblem(),
name the skip; a skip is not launcher integration proof.
N2: cli/tests/thread-launch.test.mjs now depends on library/tests/helpers.mjs
mappingEntry() and library/tests/fixtures/mapping.json. Changes to that fixture
must rerun the CLI launch file.
N3: harness/tests/library-tools.test.mjs compares the type enum to mapping.mjs
TYPES, so adding a mapped type cannot silently leave the typed tool behind.
These edits are local code/docs only. No Node, RED/GREEN run, mutant, claim,
HTTPS Git or push. New local pin goes to Dewey/Mos/Sage for focused review.
## sage-4163 — row224-r2 static rebase, 2026-10-24
New isolated worktree: `/mnt/storage/scratch/della-row224-r2`.
Branch `della/row224-r2`, base refactor `487500a16f4ab5902c318509fdec6acc56a543ca`.
Only the two row-owned commits were cherry-picked, in order:
`38e322ea0` -> `327073400`; `23816cf28` -> `e138b2c55`.
No old prerequisite commits were copied into this series. Rows 216 and 217
are now upstream. Row 266 remains a landing dependency: rebase on its landing
when Sage announces it. No broker hunk touches room.read or its hydration.
One content conflict: the footer of cli/tests/thread-launch.test.mjs. Kept
both upstream C2-09a test bodies and every assertion, followed by our unchanged
C2-05b launched-bundle test. No test was removed or weakened. Range-diff shows
only that context relocation and the upstream sandbox workspace expression
beside launcher's added library flag. The B1 commit is patch-identical.
B1 answer: e138b2c55 retains max(lastFetch, lastError.at), the repeated-read
regression and M-B1 specification. Dewey already checked the original fix at
23816cf28 in dewey-0853; it still needs executed mutant and gate evidence.
N2 dependency also includes harness/tests/library-tools.test.mjs importing
library/src/mapping.mjs TYPES; changes there must rerun that harness file.
Static checks: complete-range git diff --check clean; nine manifest paths.
Scanned packages/*/tests for every changed basename alongside literal 64-hex
hashes (three lines on either side): no matching hash pins. Broker and tools
add no imports; no RUNNER_FILES or sandbox mount changes.
No Node, syntax check, test, mutant, install or build was run. The historical
verification ledger above records the original preparation, not current gate
permission. Under sage-4163 the required gate is Dewey's manifest approval,
whole bus and harness suites, plus every scripts/test-*.sh on Sage's gate;
record every skip. Tests and mutants wait for Sage's explicit CLEAR. Static
Git and pushing this new branch are authorized now. Shared logs remain
unchanged; Sage owns their append-only landing receipts.
## sage-4181 — row266 landing rebase, 2026-10-24
Rebased the complete r2 series onto refactor
`3e5041b43b36d7f1c5ba7ce2f14b3634fe0955db` under new branch
`della/row224-r3`; r2 is preserved, no force-push. No conflicting files and
no manual conflict resolutions. Range-diff: all three prior commits equal
(212aef616, 82d6cc62c, c509dcb6e). B1 remains patch-identical.
Complete-range diff --check is clean. No test, syntax or mutant run.
Own touched test files, each to run whole in Sage's slot:
- packages/bus/tests/library-lookups.test.mjs
- packages/cli/tests/thread-launch.test.mjs
- packages/harness/tests/library-tools.test.mjs
Tests changed by the new upstream base, also named for the rebase-rule gate:
- packages/bus/tests/room-check.test.mjs
- packages/plugins/tests/room-channel.test.mjs
- packages/supervisor/tests/pressure.test.mjs
- packages/supervisor/tests/purity.test.mjs
- packages/supervisor/tests/rules.test.mjs
- packages/webui/tests/room-browser.test.mjs
- packages/webui/tests/room-http.test.mjs
None of those seven upstream test files has a row224-owned diff. Full bus and
harness suites plus every scripts/test-*.sh remain the row gate; the listed
CLI and upstream files require whole-file runs under sage-4181 too. Dewey's
delta review follows Sage's run. No CLEAR is inferred from the rebase.
## sage-4192 CLEAR — run receipt and old-test stop, 2026-10-24
Candidate named by CLEAR: a1a7357457a31d219b99effa9b312ec78d06f060.
Fresh mktemp TMPDIR: /mnt/storage/scratch/tmp/della-224-4192.r3L7cj.
Each command used nice -n 19 and timeout -k 10 300 node --test FILE.
Inherited OS niceness was -4, so nice initially yielded 15; corrected the
current runner tree to absolute 19 during the CLI run. Future runs must set
absolute 19 before spawning. No other seat's processes were changed.
First whole bus/tests/library-lookups.test.mjs run: 11 tests, 8 pass, 3 fail,
0 skipped, duration 1.173 s (exit 1). All three are this row's new tests.
Root causes: Broker clones businesses, so mutating the original fixture did
not publish the second project or the delisting; runtime requires the
selected harness to be enabled. Fixed only new fixture setup: reloadBusiness
after each of the two changes and plugins.harness ['pi'] in runtime fixture.
All assertions and production code are unchanged. Whole-file rerun: 11 pass,
0 fail/cancelled/skipped, 1.322 s (exit 0). B1 regression included and passed;
M-B1 has not been executed.
Next whole cli/tests/thread-launch.test.mjs reported OLD-test reds at :167,
:216 and :241. On observing them stopped only this run's process tree; no
rerun or next file was started. Interrupted-file summary: 0 pass, 3 fail,
1 cancelled, 0 skipped, 62.988 s. Returned slot to Sage in della-0041 under
mos-1592. No old test changed. No in-review move: the third own file, all
seven new-base files, both whole suites and mutant evidence remain pending.
No shell/full landing gate was run.
Exact completed run receipts:
```text
{"name": "packages/bus/tests/library-lookups.test.mjs", "command": ["nice", "-n", "19", "timeout", "-k", "10", "300", "node", "--test", "packages/bus/tests/library-lookups.test.mjs"], "exit": 1, "seconds": 1.173, "TMPDIR": "/mnt/storage/scratch/tmp/della-224-4192.r3L7cj"}
{"name": "packages/bus/tests/library-lookups.test.mjs", "command": ["nice", "-n", "19", "timeout", "-k", "10", "300", "node", "--test", "packages/bus/tests/library-lookups.test.mjs"], "exit": 0, "seconds": 1.322, "TMPDIR": "/mnt/storage/scratch/tmp/della-224-4192.r3L7cj"}
```
Old-test failure output (interrupted whole file, not a whole-file pass):
```text
✖ REQ-THREAD-2 REQ-LAUNCH-1 REQ-MSG-1 a thread message starts the thread's session, which stops when idle; its history survives the stop and a restart and no other thread sees it (20120.78425ms)
✖ REQ-THREAD-2 REQ-LAUNCH-1 a running thread counts against its model's limit and an idle-stopped one doesn't (185.485131ms)
✖ REQ-THREAD-2 REQ-LAUNCH-1 a turn longer than the idle time isn't stopped, and the thread idles out after it (30082.743341ms)
Interrupted while running:
⚠ packages/cli/tests/thread-launch.test.mjs (packages/cli/tests/thread-launch.test.mjs:1:1)
✖ packages/cli/tests/thread-launch.test.mjs (62982.9717ms)
ℹ tests 4
ℹ suites 0
ℹ pass 0
ℹ fail 3
ℹ cancelled 1
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 62987.534861
✖ failing tests:
test at packages/cli/tests/thread-launch.test.mjs:167:1
✖ REQ-THREAD-2 REQ-LAUNCH-1 REQ-MSG-1 a thread message starts the thread's session, which stops when idle; its history survives the stop and a restart and no other thread sees it (20120.78425ms)
Error: timed out waiting
at until (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:48:9)
at async ask (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:153:17)
at async TestContext.<anonymous> (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:179:17)
at async Test.run (node:internal/test_runner/test:1409:7)
at async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
test at packages/cli/tests/thread-launch.test.mjs:216:1
✖ REQ-THREAD-2 REQ-LAUNCH-1 a running thread counts against its model's limit and an idle-stopped one doesn't (185.485131ms)
AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:
+ actual - expected
+ 'harness-binary-missing'
- 'capacity-full'
at TestContext.<anonymous> (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:227:10)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
generatedMessage: true,
code: 'ERR_ASSERTION',
actual: 'harness-binary-missing',
expected: 'capacity-full',
operator: 'strictEqual',
diff: 'simple'
}
test at packages/cli/tests/thread-launch.test.mjs:241:1
✖ REQ-THREAD-2 REQ-LAUNCH-1 a turn longer than the idle time isn't stopped, and the thread idles out after it (30082.743341ms)
Error: timed out waiting
at until (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:48:9)
at async TestContext.<anonymous> (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:251:3)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
test at packages/cli/tests/thread-launch.test.mjs:1:1
✖ packages/cli/tests/thread-launch.test.mjs (62982.9717ms)
'Promise resolution is still pending but the event loop has already resolved'
```
Receipt correction: copied test output contained two whitespace-only lines;
complete-range diff-check caught them. Trimmed those log lines in this
follow-up; no test/code or failure text changed, and no test was rerun.
## sage-4195 / mos-1595 — pre-install evidence
No canonical node_modules link made; that suggestion was refused under
mos-1575. Before installing anything in this worktree, ran:
```text
$ ls -l node_modules/@earendil-works/pi-coding-agent/dist/bundle/cli.js
ls: cannot access 'node_modules/@earendil-works/pi-coding-agent/dist/bundle/cli.js': No such file or directory
rc=2
```
The file is missing, so the authorized local npm ci follows. This is an
environment finding; prior existing-test reds do not establish a row-code
regression. No old-test edit or rerun preceded this CLEAR.
## sage-4195 — install and single-run STOP receipt
```text
$ [ -L node_modules ] && rm node_modules; timeout -k 10 900 npm ci --ignore-scripts --no-audit --no-fund
npm warn deprecated [email protected]: Use your platform's native DOMException instead
added 128 packages in 2s
npm_ci_rc=0
$ readlink -f node_modules/.bin/pi
/mnt/storage/scratch/della-row224-r2/node_modules/@earendil-works/pi-coding-agent/dist/bundle/cli.js
```
One authorized whole-file invocation, no retry or test edit. Absolute runner
and timeout niceness 19 before launch; observed Node parent/worker niceness
16 during execution (host ananicy rule), recorded without stopping for nice.
Fresh TMPDIR and command in receipt below. Stopped test process tree upon
observing existing-test reds. Interrupted summary: 0 pass, 2 fail, 1 cancelled,
0 skipped; exit 1, 40.056 s. This is not a whole-file pass. The capacity test
now receives launch-failed, rather than harness-binary-missing. Root cause of
that launch failure is not established. No assertion/production changes.
Slot returned to Sage in della-0044 for escalation to Mos; all other files,
suites and M-B1 remain held pending their own CLEAR.
```text
{
"command": [
"timeout",
"-k",
"10",
"900",
"node",
"--test",
"packages/cli/tests/thread-launch.test.mjs"
],
"TMPDIR": "/mnt/storage/scratch/tmp/della-224-4195._yq176su",
"exit": 1,
"seconds": 40.056,
"start_runner_nice": 19,
"observed_timeout_nice": 19
}
```
Failure output:
```text
✖ REQ-THREAD-2 REQ-LAUNCH-1 REQ-MSG-1 a thread message starts the thread's session, which stops when idle; its history survives the stop and a restart and no other thread sees it (20109.08171ms)
✖ REQ-THREAD-2 REQ-LAUNCH-1 a running thread counts against its model's limit and an idle-stopped one doesn't (330.738356ms)
Interrupted while running:
⚠ packages/cli/tests/thread-launch.test.mjs (packages/cli/tests/thread-launch.test.mjs:1:1)
✖ packages/cli/tests/thread-launch.test.mjs (40023.3188ms)
ℹ tests 3
ℹ suites 0
ℹ pass 0
ℹ fail 2
ℹ cancelled 1
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 40027.912798
✖ failing tests:
test at packages/cli/tests/thread-launch.test.mjs:167:1
✖ REQ-THREAD-2 REQ-LAUNCH-1 REQ-MSG-1 a thread message starts the thread's session, which stops when idle; its history survives the stop and a restart and no other thread sees it (20109.08171ms)
Error: timed out waiting
at until (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:48:9)
at runNextTicks (node:internal/process/task_queues:65:5)
at process.processTimers (node:internal/timers:615:9)
at async ask (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:153:17)
at async TestContext.<anonymous> (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:179:17)
at async Test.run (node:internal/test_runner/test:1409:7)
at async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
test at packages/cli/tests/thread-launch.test.mjs:216:1
✖ REQ-THREAD-2 REQ-LAUNCH-1 a running thread counts against its model's limit and an idle-stopped one doesn't (330.738356ms)
AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:
+ actual - expected
+ 'launch-failed'
- 'capacity-full'
at TestContext.<anonymous> (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:227:10)
at runNextTicks (node:internal/process/task_queues:65:5)
at process.processTimers (node:internal/timers:615:9)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
generatedMessage: true,
code: 'ERR_ASSERTION',
actual: 'launch-failed',
expected: 'capacity-full',
operator: 'strictEqual',
diff: 'simple'
}
test at packages/cli/tests/thread-launch.test.mjs:1:1
✖ packages/cli/tests/thread-launch.test.mjs (40023.3188ms)
'Promise resolution is still pending but the event loop has already resolved'
```
## sage-4204 — chief credential fixture correction (unrun)
Sage's control pair with a 29-byte TMPDIR: base 3e5041b43 passes 14/14;
ed985c044 passes all 14 existing tests but this row's new CLI fixture refuses
chief-library-gitea-required before launch. Added only chief.credentials.gitea
as a copy of the fixture coder's reference in the C2-05b edit callback, matching
cli/tests/launcher.test.mjs:35 and trackers-boot.test.mjs:17. This is a reference
to synthetic fixture credentials; no credential value was read or introduced.
All assertions, old tests and production code unchanged. No run performed.
The earlier 48-byte TMPDIR explains the launch-failed reds through the
107-byte tools.sock limit, as confirmed by Sage's control. Future named CLEAR
uses shell TMPDIR=$(mktemp -d /mnt/storage/scratch/tmp/gXXX), 29 bytes with
alphanumeric suffix, not Python mkdtemp or a canonical node_modules link.
Next authorized run order: whole thread-launch first, other eight files, whole
bus/harness suites, M-B1; all await next CLEAR after Fethry/Gyro slots.
## sage-4208 — first-file red, sequence stopped
Named candidate 6160b4981. Whole thread-launch.test.mjs invoked once.
Shell-created TMPDIR /mnt/storage/scratch/tmp/gCXV, 29 bytes; absolute runner
and timeout niceness 19 at start, Node observed 16 afterwards (host policy).
15 tests: all 14 existing tests pass, the one new C2-05b fails; no skips or
cancellations. Exit 1 in 18.740 s. Stopped sequence and returned slot to Sage
in della-0047 before any edit or rerun. No other file, suite or mutant ran.
The original r3 list has nine files beyond thread-launch (two row-owned plus
seven upstream), rather than eight; none started in this CLEAR.
New-test failure is call(...).find is not a function in existing ask helper
:153, called by new C2-05b :550. Root cause not yet established; no assertion,
fixture or production change made. Await Sage's own-new-test ruling.
Exact run receipt:
```text
{"number": 1, "name": "packages/cli/tests/thread-launch.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/cli/tests/thread-launch.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/gCXV", "start_nice": 19, "observed_timeout_nice": 19, "exit": 1, "seconds": 18.74}
```
Failure output:
```text
ℹ tests 15
ℹ suites 0
ℹ pass 14
ℹ fail 1
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 18707.936662
✖ failing tests:
test at packages/cli/tests/thread-launch.test.mjs:540:1
✖ C2-05b a real launched bundle gets lookups for a library project without a library checkout (139.729167ms)
TypeError: call(...).find is not a function
at file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:153:71
at until (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:44:21)
at ask (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:153:23)
at TestContext.<anonymous> (file:///mnt/storage/scratch/della-row224-r2/packages/cli/tests/thread-launch.test.mjs:550:9)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
```
## sage-4210 — new-test async citation fixture fix
Only C2-05b now inlines send/wait, awaits thread.messages before .find, and
keeps the from_role assistant / to_role human assertions previously provided
by ask. Comment names broker.mjs:4854 async citation hydration. Existing ask,
old tests and production unchanged. This is Sage's own-new-test ruling under
mos-1590; Dewey re-reviews the delta. Whole-file rerun once authorized, then
the nine other files, whole bus/harness, M-B1 and clean-tree check on green.
Each gets a fresh shell gXXX TMPDIR and absolute nice 19; any red stops.
## sage-4210 — resumed sequence, harness new-test red
On 8f1b045f4: whole CLI 15/15 pass, no skips (19.164 s); whole bus lookup
11/11 pass, no skips (1.309 s). Own new harness file 1 pass, 3 fail, no skips
(0.129 s); stopped sequence, returned slot in della-0050 before edits/reruns.
Each invocation used fresh shell gXXX TMPDIR, 29 bytes. Runner was set to
absolute nice 19 before first spawn; host subsequently reniced runner too,
so timeout process observations were 19, -4, -4. Correct future driver to set
absolute 19 in each child before exec, as well as parent. Priority-only change
did not stop these runs. No claim that later timeout processes retained 19.
All three new harness failures are fixture validation: roles.bean.credentials
must reference gitea (got none). Shared role() helper in this row creates bean
without its required credential reference. No fixture/assertion/production edit
or rerun yet; awaiting Sage's ruling. Seven upstream files, whole bus/harness
suites and M-B1 not run. No full landing gate or in-review move.
Exact receipts:
```text
{"number": 1, "name": "packages/cli/tests/thread-launch.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/cli/tests/thread-launch.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/gBj5", "start_nice": 19, "observed_timeout_nice": 19, "exit": 0, "seconds": 19.164}
{"number": 2, "name": "packages/bus/tests/library-lookups.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/bus/tests/library-lookups.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/gD8X", "start_nice": 19, "observed_timeout_nice": -4, "exit": 0, "seconds": 1.309}
{"number": 3, "name": "packages/harness/tests/library-tools.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/harness/tests/library-tools.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/gt7o", "start_nice": 19, "observed_timeout_nice": -4, "exit": 1, "seconds": 0.129}
```
Harness failure output:
```text
✖ M3: per-role snapshots contain six names, or eight with the C2-08 web grant (6.427541ms)
✔ every noncreative role gets lookups when a library is configured, not otherwise (6.837154ms)
✖ lookup schemas require a universe even for get, include paging, and cannot select repo or commit (1.52147ms)
✖ bundle flag reaches both harness tool manifests and creative prompt without generic tools (2.019053ms)
ℹ tests 4
ℹ suites 0
ℹ pass 1
ℹ fail 3
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 99.111266
✖ failing tests:
test at packages/harness/tests/library-tools.test.mjs:19:1
✖ M3: per-role snapshots contain six names, or eight with the C2-08 web grant (6.427541ms)
Error [BusinessError]: /mnt/storage/scratch/tmp/gt7o/mosaic-harness-biz-CZEENl/businesses/acme.json roles.bean.credentials must reference exactly the services its role definition needs (gitea; got none)
at refuse (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/errors.mjs:12:9)
at checkCredentialMap (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/business.mjs:51:5)
at checkRoles (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/business.mjs:162:20)
at validateBusinessDocument (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/business.mjs:251:34)
at resolvedFor (file:///mnt/storage/scratch/della-row224-r2/packages/harness/tests/helpers.mjs:46:20)
at role (file:///mnt/storage/scratch/della-row224-r2/packages/harness/tests/library-tools.test.mjs:13:49)
at TestContext.<anonymous> (file:///mnt/storage/scratch/della-row224-r2/packages/harness/tests/library-tools.test.mjs:21:42)
at Test.runInAsyncScope (node:async_hooks:226:14)
at Test.run (node:internal/test_runner/test:1402:25)
at Test.start (node:internal/test_runner/test:1262:17) {
exitCode: 2
}
test at packages/harness/tests/library-tools.test.mjs:38:1
✖ lookup schemas require a universe even for get, include paging, and cannot select repo or commit (1.52147ms)
Error [BusinessError]: /mnt/storage/scratch/tmp/gt7o/mosaic-harness-biz-iAwXhO/businesses/acme.json roles.bean.credentials must reference exactly the services its role definition needs (gitea; got none)
at refuse (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/errors.mjs:12:9)
at checkCredentialMap (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/business.mjs:51:5)
at checkRoles (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/business.mjs:162:20)
at validateBusinessDocument (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/business.mjs:251:34)
at resolvedFor (file:///mnt/storage/scratch/della-row224-r2/packages/harness/tests/helpers.mjs:46:20)
at role (file:///mnt/storage/scratch/della-row224-r2/packages/harness/tests/library-tools.test.mjs:13:49)
at TestContext.<anonymous> (file:///mnt/storage/scratch/della-row224-r2/packages/harness/tests/library-tools.test.mjs:39:40)
at Test.runInAsyncScope (node:async_hooks:226:14)
at Test.run (node:internal/test_runner/test:1402:25)
at Test.processPendingSubtests (node:internal/test_runner/test:974:18) {
exitCode: 2
}
test at packages/harness/tests/library-tools.test.mjs:57:1
✖ bundle flag reaches both harness tool manifests and creative prompt without generic tools (2.019053ms)
Error [BusinessError]: /mnt/storage/scratch/tmp/gt7o/mosaic-harness-biz-c2N3Bv/businesses/acme.json roles.bean.credentials must reference exactly the services its role definition needs (gitea; got none)
at refuse (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/errors.mjs:12:9)
at checkCredentialMap (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/business.mjs:51:5)
at checkRoles (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/business.mjs:162:20)
at validateBusinessDocument (file:///mnt/storage/scratch/della-row224-r2/packages/business/src/business.mjs:251:34)
at resolvedFor (file:///mnt/storage/scratch/della-row224-r2/packages/harness/tests/helpers.mjs:46:20)
at role (file:///mnt/storage/scratch/della-row224-r2/packages/harness/tests/library-tools.test.mjs:13:49)
at TestContext.<anonymous> (file:///mnt/storage/scratch/della-row224-r2/packages/harness/tests/library-tools.test.mjs:60:65)
at Test.runInAsyncScope (node:async_hooks:226:14)
at Test.run (node:internal/test_runner/test:1402:25)
at Test.processPendingSubtests (node:internal/test_runner/test:974:18) {
exitCode: 2
}
```
## sage-4213 — creative fixture credential reference
Only the new library-tools.test.mjs role() helper now gives bean its required
gitea reference copied from coder, matching creative.test.mjs:27. No assertion,
shared helper, old test or production change. One whole harness-file retry
then seven upstream files, whole bus/harness, M-B1 and clean-tree check are
cleared; no CLI or lookup rerun needed (both passed, unchanged). Each child
sets absolute niceness 19 before exec, with fresh shell gXXX TMPDIR.
## sage-4213 — GREEN verification and M-B1 receipt
Verified candidate e4c0c8931; prior CLI/lookup passes on 8f1b045f4 remain
applicable under sage-4213 (only harness fixture and receipts changed).
Every run below used a fresh shell mktemp -d /mnt/storage/scratch/tmp/gXXX,
29 bytes. Each child set absolute niceness 19 immediately before exec; timeout
process observations were 19 for all ten runs and M-B1. Bus-suite Node later
observed at nice 16, consistent with host ananicy policy; no stop for nice.
No unexpected red, cancellation or skip in this cleared sequence.
Whole-file results:
| File or suite | Pass | Fail | Skip | Seconds |
| --- | ---: | ---: | ---: | ---: |
| packages/harness/tests/library-tools.test.mjs | 4 | 0 | 0 | 0.213 |
| packages/bus/tests/room-check.test.mjs | 2 | 0 | 0 | 0.21 |
| packages/plugins/tests/room-channel.test.mjs | 1 | 0 | 0 | 0.102 |
| packages/supervisor/tests/pressure.test.mjs | 15 | 0 | 0 | 0.101 |
| packages/supervisor/tests/purity.test.mjs | 1 | 0 | 0 | 0.102 |
| packages/supervisor/tests/rules.test.mjs | 29 | 0 | 0 | 0.102 |
| packages/webui/tests/room-browser.test.mjs | 9 | 0 | 0 | 6.801 |
| packages/webui/tests/room-http.test.mjs | 7 | 0 | 0 | 0.183 |
| bus-whole | 1011 | 0 | 0 | 30.46 |
| harness-whole | 176 | 0 | 0 | 13.346 |
Earlier cleared whole CLI 15/15 (19.164 s), bus lookup 11/11 (1.309 s),
zero skips. Whole bus includes lookup again; whole harness includes fixture
file again. No full shell/landing gate run: every scripts/test-*.sh belongs
to Sage's landing gate, not this CLEAR.
M-B1: temporarily replaced only lastError.at freshness term with -Infinity.
Whole lookup file: 10 pass, 1 expected fail, no skips; killed at :178 attempted
assertion (actual 2, expected 1, recent lastError prevents another sync).
Restored exact original runtime bytes in finally. Afterwards git diff --stat
and git status --porcelain both empty against committed e4c0c8931, before
adding this receipt. Compared with named 6160b4981 the only later package
changes are Sage-authorized async CLI fixture and harness credential fixture;
no mutant or production change remains. No extra post-restore rerun.
Exact commands, TMPDIRs, exit codes and elapsed receipts:
```text
{"number": 1, "name": "packages/harness/tests/library-tools.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/harness/tests/library-tools.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/gct3", "start_nice": 19, "observed_timeout_nice": 19, "exit": 0, "seconds": 0.213}
{"number": 2, "name": "packages/bus/tests/room-check.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/bus/tests/room-check.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/g0ki", "start_nice": 19, "observed_timeout_nice": 19, "exit": 0, "seconds": 0.21}
{"number": 3, "name": "packages/plugins/tests/room-channel.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/plugins/tests/room-channel.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/gyTq", "start_nice": 19, "observed_timeout_nice": 19, "exit": 0, "seconds": 0.102}
{"number": 4, "name": "packages/supervisor/tests/pressure.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/supervisor/tests/pressure.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/gK1n", "start_nice": 19, "observed_timeout_nice": 19, "exit": 0, "seconds": 0.101}
{"number": 5, "name": "packages/supervisor/tests/purity.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/supervisor/tests/purity.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/gFne", "start_nice": 19, "observed_timeout_nice": 19, "exit": 0, "seconds": 0.102}
{"number": 6, "name": "packages/supervisor/tests/rules.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/supervisor/tests/rules.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/gs9Y", "start_nice": 19, "observed_timeout_nice": 19, "exit": 0, "seconds": 0.102}
{"number": 7, "name": "packages/webui/tests/room-browser.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/webui/tests/room-browser.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/gP9P", "start_nice": 19, "observed_timeout_nice": 19, "exit": 0, "seconds": 6.801}
{"number": 8, "name": "packages/webui/tests/room-http.test.mjs", "command": ["timeout", "-k", "10", "900", "node", "--test", "packages/webui/tests/room-http.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/gP9G", "start_nice": 19, "observed_timeout_nice": 19, "exit": 0, "seconds": 0.183}
{"number": 9, "name": "bus-whole", "command": ["timeout", "-k", "10", "1800", "node", "--test", "packages/bus/tests/access-revoke.test.mjs", "packages/bus/tests/account-migration.test.mjs", "packages/bus/tests/address.test.mjs", "packages/bus/tests/agents.test.mjs", "packages/bus/tests/approval-binding.test.mjs", "packages/bus/tests/broker.test.mjs", "packages/bus/tests/business.test.mjs", "packages/bus/tests/channel-proof.test.mjs", "packages/bus/tests/chief-of-staff.test.mjs", "packages/bus/tests/citation-availability.test.mjs", "packages/bus/tests/citation-guard.test.mjs", "packages/bus/tests/citation-runtime.test.mjs", "packages/bus/tests/comment-cursors.test.mjs", "packages/bus/tests/comment-migration.test.mjs", "packages/bus/tests/console-decide.test.mjs", "packages/bus/tests/creative.test.mjs", "packages/bus/tests/credential-claim.test.mjs", "packages/bus/tests/credential-status.test.mjs", "packages/bus/tests/credential-store.test.mjs", "packages/bus/tests/credential-verbs.test.mjs", "packages/bus/tests/credentials.test.mjs", "packages/bus/tests/csuite-messaging.test.mjs", "packages/bus/tests/daily-quota-runtime.test.mjs", "packages/bus/tests/decision-close.test.mjs", "packages/bus/tests/decision-route.test.mjs", "packages/bus/tests/decisions.test.mjs", "packages/bus/tests/end-launch.test.mjs", "packages/bus/tests/fire-revokes-grants.test.mjs", "packages/bus/tests/gitea-grant-docker.test.mjs", "packages/bus/tests/gitea-grant.test.mjs", "packages/bus/tests/gitea-migration.test.mjs", "packages/bus/tests/grant-enroll.test.mjs", "packages/bus/tests/grant-executor.test.mjs", "packages/bus/tests/grant-host.test.mjs", "packages/bus/tests/grant-migration.test.mjs", "packages/bus/tests/grant-scope-runtime.test.mjs", "packages/bus/tests/grant-scope.test.mjs", "packages/bus/tests/hard-waits.test.mjs", "packages/bus/tests/host-run.test.mjs", "packages/bus/tests/host-tools.test.mjs", "packages/bus/tests/human.test.mjs", "packages/bus/tests/instances-verb.test.mjs", "packages/bus/tests/interpreter.test.mjs", "packages/bus/tests/land.test.mjs", "packages/bus/tests/launch-notice.test.mjs", "packages/bus/tests/launcher-released.test.mjs", "packages/bus/tests/library-credential.test.mjs", "packages/bus/tests/library-lookups.test.mjs", "packages/bus/tests/library-sync.test.mjs", "packages/bus/tests/library.test.mjs", "packages/bus/tests/lifecycle-revoke.test.mjs", "packages/bus/tests/lifecycle-verbs.test.mjs", "packages/bus/tests/limit-checks.test.mjs", "packages/bus/tests/limit-stop.test.mjs", "packages/bus/tests/limits-runtime.test.mjs", "packages/bus/tests/limits.test.mjs", "packages/bus/tests/message-citation.test.mjs", "packages/bus/tests/message-filter.test.mjs", "packages/bus/tests/messages.test.mjs", "packages/bus/tests/messaging.test.mjs", "packages/bus/tests/name-migration.test.mjs", "packages/bus/tests/names.test.mjs", "packages/bus/tests/peer-transport.test.mjs", "packages/bus/tests/peercred.test.mjs", "packages/bus/tests/plugins-verb.test.mjs", "packages/bus/tests/principal.test.mjs", "packages/bus/tests/process.test.mjs", "packages/bus/tests/processing-runtime.test.mjs", "packages/bus/tests/processing-timeout.test.mjs", "packages/bus/tests/processing-web.test.mjs", "packages/bus/tests/processing.test.mjs", "packages/bus/tests/project-await.test.mjs", "packages/bus/tests/project-files.test.mjs", "packages/bus/tests/project-runtime.test.mjs", "packages/bus/tests/publish.test.mjs", "packages/bus/tests/reload.test.mjs", "packages/bus/tests/replies.test.mjs", "packages/bus/tests/requirements.test.mjs", "packages/bus/tests/review.test.mjs", "packages/bus/tests/revoke-window.test.mjs", "packages/bus/tests/room-check.test.mjs", "packages/bus/tests/rooms.test.mjs", "packages/bus/tests/routes-verb.test.mjs", "packages/bus/tests/schema.test.mjs", "packages/bus/tests/session-clear.test.mjs", "packages/bus/tests/session-compactions.test.mjs", "packages/bus/tests/sessions.test.mjs", "packages/bus/tests/single-use.test.mjs", "packages/bus/tests/spec-migration.test.mjs", "packages/bus/tests/spec-review.test.mjs", "packages/bus/tests/spec-socket.test.mjs", "packages/bus/tests/spec.test.mjs", "packages/bus/tests/staff-request.test.mjs", "packages/bus/tests/state.test.mjs", "packages/bus/tests/store.test.mjs", "packages/bus/tests/task-page.test.mjs", "packages/bus/tests/task-read.test.mjs", "packages/bus/tests/tasks.test.mjs", "packages/bus/tests/tester-threads.test.mjs", "packages/bus/tests/tester-writes.test.mjs", "packages/bus/tests/tester.test.mjs", "packages/bus/tests/thread-claims.test.mjs", "packages/bus/tests/thread-migration.test.mjs", "packages/bus/tests/thread-shares.test.mjs", "packages/bus/tests/threads.test.mjs", "packages/bus/tests/transport.test.mjs", "packages/bus/tests/usage-broker.test.mjs", "packages/bus/tests/usage-migration.test.mjs", "packages/bus/tests/usage-runtime.test.mjs", "packages/bus/tests/usage.test.mjs", "packages/bus/tests/user-principal.test.mjs", "packages/bus/tests/viewer.test.mjs", "paLine truncated
{"number": 10, "name": "harness-whole", "command": ["timeout", "-k", "10", "1800", "node", "--test", "packages/harness/tests/bundle.test.mjs", "packages/harness/tests/citation-runner.test.mjs", "packages/harness/tests/claude-gate.test.mjs", "packages/harness/tests/claude-session.test.mjs", "packages/harness/tests/creative.test.mjs", "packages/harness/tests/gate.test.mjs", "packages/harness/tests/git-tools.test.mjs", "packages/harness/tests/library-tools.test.mjs", "packages/harness/tests/mcp-server.test.mjs", "packages/harness/tests/pi-session.test.mjs", "packages/harness/tests/raise-domain.test.mjs", "packages/harness/tests/runner.test.mjs", "packages/harness/tests/skills.test.mjs", "packages/harness/tests/spec-tools.test.mjs", "packages/harness/tests/tools.test.mjs"], "TMPDIR": "/mnt/storage/scratch/tmp/g8Yn", "start_nice": 19, "observed_timeout_nice": 19, "exit": 0, "seconds": 13.346}
{
"mutant": "M-B1",
"change": "drop lastError.at term from recentAttempt",
"command": [
"timeout",
"-k",
"10",
"900",
"node",
"--test",
"packages/bus/tests/library-lookups.test.mjs"
],
"TMPDIR": "/mnt/storage/scratch/tmp/g8my",
"start_nice": 19,
"observed_timeout_nice": 19,
"exit": 1,
"seconds": 1.359
}
$ git diff --stat
(empty)
$ git status --porcelain
(empty)
HEAD=e4c0c8931 (authorized fixture fix after 6160b4981)
```
M-B1 output:
```text
✔ all five agent verbs read the configured served commit through real queries (130.428728ms)
✔ each verb refuses missing universe and unknown keys before host work (78.900515ms)
✔ no library, missing host adapter and undeclared project refuse library-not-configured (149.899073ms)
✔ reads need the current holder on each call; human/tester/reader are not agents (90.636537ms)
✔ releasing a claim during an async lookup fences the response (60.938885ms)
✔ a business library removed during an async read cannot leak its result (51.783488ms)
✖ freshness boundary, unknown last fetch and failed fetch still use immutable served state (123.453393ms)
✔ an unreadable sync state fails closed; a busy sync keeps serving the existing pin (89.763849ms)
✔ a stale lookup sees the commit published by its sync, not the prior served commit (108.213675ms)
✔ real socket awaits lookup results and rechecks rejected query arguments (152.413684ms)
✔ runtime actually injects the lookup adapter, without exposing human library.file (157.701866ms)
ℹ tests 11
ℹ suites 0
ℹ pass 10
ℹ fail 1
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 1327.433364
✖ failing tests:
test at packages/bus/tests/library-lookups.test.mjs:153:1
✖ freshness boundary, unknown last fetch and failed fetch still use immutable served state (123.453393ms)
AssertionError [ERR_ASSERTION]: recent lastError prevents another sync even though lastFetch is null
2 !== 1
at TestContext.<anonymous> (file:///mnt/storage/scratch/della-row224-r2/packages/bus/tests/library-lookups.test.mjs:178:12)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
generatedMessage: false,
code: 'ERR_ASSERTION',
actual: 2,
expected: 1,
operator: 'strictEqual',
diff: 'simple'
}
```
-934
View File
@@ -1,934 +0,0 @@
# Row284 C2-05c — supporting scope and served-tree blob (#1789)
Owner Della; reviewer Dewey; gate Sage. Build start sage-3658/3660 (10-23).
Branch della/row284. Original prerequisite base Honker28346bad7ea3;
merge fc05bcbc3 carries22423816cf28 and2164f3fbc25a intact. Only conflict was
CLI thread-launch's added footer tests: retained both full test bodies and
assertions. No prerequisite code copied. Every prerequisite needs its own
review/mutants/landing under mos1351; rebase after283 lands.
## Execution status
UNTESTED. No Node, node--check, test or mutant run before Sage CLEAR. First
own commit is the authorized old-test migration; the implementation follows.
Sage authorizes an immediate untested push. No queue write or shared-log edit.
224 stays first;284 is critical to Bubba288. T4 for224 is not a CLEAR yet.
## Binding readings
Brief C2-05c at94c33a43c:1737-1789, Q226, sage2918 and mos1330 item3.
get defaults canon; explicit playground/supporting opt-in; mismatch null.
Sort full outgoing/incoming lists supporting, playground, canon before paging,
keep cross-scope links and universe filter. Manuscript stays canon/playground.
No all/array scope, write tool, guard, mapping or creative-name-count change.
## mos-1330 old-test migration (separate commit)
All paths below are packages/library/tests/query.test.mjs. Baseline file at
fc05bcbc3 matches216's file. Source assertions retained; negative calls receive
explicit scope too, so universe isolation cannot pass on default-scope denial.
Call/assertion 348 -> 348:
```js
// OLD
const rin = await get(s, { universe: 'idea', path: 'Drafts/New World/Characters/Rin.md' });
// NEW
const rin = await get(s, { universe: 'idea', path: 'Drafts/New World/Characters/Rin.md', scope: 'playground' });
```
Call/assertion 350 -> 350:
```js
// OLD
assert.equal(await get(s, { universe: 'harbor', path: 'Drafts/New World/Characters/Rin.md' }), null);
// NEW
assert.equal(await get(s, { universe: 'harbor', path: 'Drafts/New World/Characters/Rin.md', scope: 'playground' }), null);
```
Call/assertion 366 -> 366:
```js
// OLD
assert.equal(await get(src(ref, mapping(WITH_BLEND)), { universe: 'blend', path }), null);
// NEW
assert.equal(await get(src(ref, mapping(WITH_BLEND)), { universe: 'blend', path, scope: 'playground' }), null);
```
Call/assertion 367 -> 367:
```js
// OLD
const own = await get(src(ref), { universe: 'harbor', path });
// NEW
const own = await get(src(ref), { universe: 'harbor', path, scope: 'playground' });
```
Assertion 349 retained, OLD == NEW:
```js
assert.equal(rin.scope, 'playground');
```
Assertion 368 retained, OLD == NEW:
```js
assert.equal(own.scope, 'playground');
```
The null assertions at350 and366 are the complete OLD/NEW expressions above:
expectation remains null. Added one separate no-scope playground-get -> null
behavior test. It is unrun and expected to expose old get behavior until the
new scope implementation lands. This migration is authorized by mos1330 under
mos1272; no check removed or weakened. Dewey checks this list in manifest review.
## 283 surface and blob choice
Inspected actual46bad7ea3: optional editor.user is present. reader's parsed
file records and index entries still discard tree oid. In owned query.mjs use
the existing bounded listTree(repo, servedCommit) to obtain exact path oid,
not HEAD and not a user-supplied revision expression. No reader/index edit.
Tradeoff: one additional bounded tree listing per get; latency unmeasured.
Recheck after rebasing to283's actual landing.
## Intended owned paths
query.mjs; broker.mjs lookup branch; tools.mjs lookup schemas/descriptions;
library query.test.mjs/query-fixture.mjs; bus library-lookups.test.mjs;
harness library-tools.test.mjs; this BUILD.md. Other files are prerequisites.
## Gate
Dewey manifest approval, whole library/bus/harness suites and every
scripts/test-*.sh on Sage gate. Before review grep all package tests for enum
pins and canon/playground pairs. Keep shared logs out; send receipts to Sage.
No test or mutant evidence claimed. Manifest/digest follows complete code.
## Implementation head (UNTESTED, sage-3658)
- query scope accepts supporting for find/search/get. get defaults canon,
mismatch null. Manuscript passes a separate two-value scope allowlist.
- get returns blob from listTree(source.repo,index.commit) after scope/universe
filtering. The same index.commit supplies the text; source HEAD is irrelevant.
- Full outgoing and incoming link lists are stably sorted by supporting,
playground,canon before combining/paging. All visible cross-scope links stay;
universe/hybrid visibility still applies. Scope metadata isn't added to links.
- Broker only adds optional scope to library.get's strict fields. No new verbs.
- Typed scope expands find/search/get only; manuscript retains its own two-value
enum. Names/M3 counts remain the row224 six/eight, no write tools added.
- New tests: book/universe/draft supporting find/search/get; defaults/mismatch;
absent supporting prefix; source HEAD advances but each scope's blob equals
served:path; 300 outgoing plus300 incoming links ordered across bounded pages,
retaining cross-scope links and dropping other-universe links; hybrid source
stays canon-only; no all/array scope; manuscript rejects supporting; broker
scope/blob forwarding; typed enums and unchanged names. All unrun.
## Additional old assertion pin (brief Gate)
harness/tests/library-tools.test.mjs:49 at23816cf28 (line49, unchanged in this head):
OLD find scope enum ['canon','playground']; NEW ['canon','playground','supporting'].
This is the exact scope-enum pin the brief directs updating. Existing six/eight
name snapshots and TYPES equality assertion are unchanged. The new manuscript
pin intentionally remains ['canon','playground']. No other two-scope test pin
was found by rg over packages/*/tests at this build's prerequisite merge.
## Proposed mutation evidence (reviewer confirms final set)
All unrun. Require assertion failures with whole-file runs and pristine restore:
M1 remove supporting from query SCOPES -> supporting lookup cases.
M2 drop get's requested-scope comparison -> default/mismatch null cases.
M3 use source HEAD for blob lookup -> served-tree/advanced-HEAD equality case.
M4 remove link rank sort -> multi-page outgoing/incoming expected order.
M5 restrict links to requested scope -> cross-scope link counts/order case.
M6 drop sees() from visible/link filtering -> second-universe/hybrid cases.
M7 allow supporting in manuscript validator -> manuscript refusal case.
M8 omit get scope from broker fields -> real broker supporting get case.
M9 widen typed manuscript enum -> typed-scope separation case.
## Inspection and pending gate
No production imports change in broker/tools, so no new sandbox closure file
or mount. query.mjs is host library code and adds existing reader.listTree;
no new package/export/copy-path file. rg found the one old find scope pin plus
the intentional new manuscript two-scope pin. Whole library/bus/harness and
shell gates remain required. CLI integration/merge context is prerequisite224/
219, not this row's source delta; any changed gate expectation goes to Sage.
Node checks, tests, mutants and elapsed-time evidence remain absent pending
CLEAR. The first test-migration commit and this implementation are distinct.
Sage sweep receipt: Della row284 builds on28346bad7ea3 plus intact224 merge;
mos1330 old-test migration separate, supporting scope/blob implementation and
fixtures authored, completely UNTESTED. No shared-log/queue write or live action.
## Current assertion anchors after implementation imports
The separate migration commit0ed4fbab9 retains its complete OLD/NEW text
above. Adding only the fs/path imports in the implementation shifts anchors:
query.test.mjs:130: `const blendCh2 = await get(src(ref, mapping(WITH_BLEND)), { universe: 'blend', path: 'Book One/Chapters/Chapter 02.md' });`
query.test.mjs:350: `const rin = await get(s, { universe: 'idea', path: 'Drafts/New World/Characters/Rin.md', scope: 'playground' });`
query.test.mjs:351: `assert.equal(rin.scope, 'playground');`
query.test.mjs:352: `assert.equal(await get(s, { universe: 'harbor', path: 'Drafts/New World/Characters/Rin.md', scope: 'playground' }), null);`
query.test.mjs:368: `assert.equal(await get(src(ref, mapping(WITH_BLEND)), { universe: 'blend', path, scope: 'playground' }), null);`
query.test.mjs:369: `const own = await get(src(ref), { universe: 'harbor', path, scope: 'playground' });`
query.test.mjs:370: `assert.equal(own.scope, 'playground');`
No result/null assertion changed; scope arguments carry the explicit opt-in.
## Dewey dewey-0941 static review — round2
Static scope fc05bcbc3..47db04eba CLEAN; not a final verdict or test evidence.
M1-M9 accepted as the final set. Optional M10 not added to this gate.
N2 taken: keep the existing canon-path supporting-scope mismatch assertion,
and ADD get(Book One/Support/Notes/Helper.md,scope:supporting) -> null under
the default mapping with no supporting prefix. The supporting-positive test
already returns this same path under withSupporting, so the added probe
pins the missing-prefix case directly. No assertion removed or weakened;
mos1330's separate migration commit and its retained assertions unchanged.
N1 proposed DEFERRED/follow-up for Sage: retain each tree oid in reader/index
entries so get can return blob without cat-file/whole ls-tree -r -l per page.
Current get's result is pinned correctly, but per-page cost grows with the
library. No performance measurement yet. This optimization needs reader/index
ownership and separate acceptance/performance evidence; do not silently expand
284's manifest or change its served-snapshot contract for it.
No Node, tests, mutants or syntax checks run in this round; hold still applies.
## sage-4281 — rebase onto landed 224/283, 2026-10-24
New worktree /mnt/storage/scratch/della-row284-r2, branch della/row284-r2,
base refactor 95d4991d20a4ef291c824d37c886eaeaa9be7062. Cherry-picked only
284-owned 0ed4fbab9, 47db04eba, 5d587a552. Range-diff: all three equal, no
conflicts. The separate mos-1330 migration remains its own commit. No 216,
224 or 283 prerequisite commits copied. Old della/row284 remains unchanged.
mos-1584 fixture check: new tests add no businessDoc() with a library. The
harness role() uses landed 224's gitea reference for bean; the library-enabled
CLI chief fixture fix is also upstream. New broker test uses the direct
Broker fixture (no businessDoc/bootConfig), not a new validated organization.
No new made-up credential values are introduced in this row; existing short
fixture references are reused, so no new credential reaches 24 characters.
No credential values were inspected or printed. No fixture edit necessary.
No Node, npm, syntax check, service, test, mutant or install run in this worktree.
No canonical node_modules link. Dependency installation remains a separately
cleared local npm ci if needed; tests wait for Sage CLEAR. For future runs use
shell mktemp -d /mnt/storage/scratch/tmp/XXXXXX and per-child absolute nice 19.
Shared logs unchanged; Sage owns landing receipts.
## Import-derived whole-file run plan (mos-1612)
Walked relative static import/re-export edges and literal dynamic imports
transitively, from each packages/*/tests/**/*.test.mjs to changed query.mjs,
broker.mjs, tools.mjs or query-fixture.mjs. This follows source import edges,
not textual mentions. Example CLI/thread-launch -> Broker; CLI/helpers ->
Broker; webui/serve -> webui/bus -> Broker; harness/bundle -> tools.
Evidence generator and per-test import chains are in
/mnt/storage/scratch/della-row284-r2-evidence/import-run-list.py and .json.
The import-derived set has 260 files; union with the brief's whole library,
bus and harness suites adds files that use subprocesses/source reads instead
of direct imports. Excluded case1-accept.test.mjs by sage-4281. Any dynamic
nonliteral loading or external shell gate is not claimed covered by import
tracing; mandatory package suites and Sage's full script gate remain required.
First focused whole files: library/query.test.mjs; bus/library-lookups.test.mjs;
harness/library-tools.test.mjs. Then the full import-derived/mandatory union
below, each file whole (duplicates need not repeat without a change). This
is a proposed run list for Sage's CLEAR, not authorization to run now.
M1-M9 retain Dewey's agreed specification above; no mutant executed.
Whole-file union:
```text
packages/bus/tests/access-revoke.test.mjs
packages/bus/tests/account-migration.test.mjs
packages/bus/tests/address.test.mjs
packages/bus/tests/agents.test.mjs
packages/bus/tests/approval-binding.test.mjs
packages/bus/tests/broker.test.mjs
packages/bus/tests/business.test.mjs
packages/bus/tests/channel-proof.test.mjs
packages/bus/tests/chief-of-staff.test.mjs
packages/bus/tests/citation-availability.test.mjs
packages/bus/tests/citation-guard.test.mjs
packages/bus/tests/citation-runtime.test.mjs
packages/bus/tests/comment-cursors.test.mjs
packages/bus/tests/comment-migration.test.mjs
packages/bus/tests/console-decide.test.mjs
packages/bus/tests/creative.test.mjs
packages/bus/tests/credential-claim.test.mjs
packages/bus/tests/credential-status.test.mjs
packages/bus/tests/credential-store.test.mjs
packages/bus/tests/credential-verbs.test.mjs
packages/bus/tests/credentials.test.mjs
packages/bus/tests/csuite-messaging.test.mjs
packages/bus/tests/daily-quota-runtime.test.mjs
packages/bus/tests/decision-close.test.mjs
packages/bus/tests/decision-route.test.mjs
packages/bus/tests/decisions.test.mjs
packages/bus/tests/end-launch.test.mjs
packages/bus/tests/fire-revokes-grants.test.mjs
packages/bus/tests/gitea-grant-docker.test.mjs
packages/bus/tests/gitea-grant.test.mjs
packages/bus/tests/gitea-migration.test.mjs
packages/bus/tests/grant-enroll.test.mjs
packages/bus/tests/grant-executor.test.mjs
packages/bus/tests/grant-host.test.mjs
packages/bus/tests/grant-migration.test.mjs
packages/bus/tests/grant-scope-runtime.test.mjs
packages/bus/tests/grant-scope.test.mjs
packages/bus/tests/hard-waits.test.mjs
packages/bus/tests/host-run.test.mjs
packages/bus/tests/host-tools.test.mjs
packages/bus/tests/human.test.mjs
packages/bus/tests/instances-verb.test.mjs
packages/bus/tests/interpreter.test.mjs
packages/bus/tests/land.test.mjs
packages/bus/tests/launch-notice.test.mjs
packages/bus/tests/launcher-released.test.mjs
packages/bus/tests/library-credential.test.mjs
packages/bus/tests/library-lookups.test.mjs
packages/bus/tests/library-sync.test.mjs
packages/bus/tests/library.test.mjs
packages/bus/tests/lifecycle-revoke.test.mjs
packages/bus/tests/lifecycle-verbs.test.mjs
packages/bus/tests/limit-checks.test.mjs
packages/bus/tests/limit-stop.test.mjs
packages/bus/tests/limits-runtime.test.mjs
packages/bus/tests/limits.test.mjs
packages/bus/tests/message-citation.test.mjs
packages/bus/tests/message-filter.test.mjs
packages/bus/tests/messages.test.mjs
packages/bus/tests/messaging.test.mjs
packages/bus/tests/name-migration.test.mjs
packages/bus/tests/names.test.mjs
packages/bus/tests/peer-transport.test.mjs
packages/bus/tests/peercred.test.mjs
packages/bus/tests/plugins-verb.test.mjs
packages/bus/tests/principal.test.mjs
packages/bus/tests/process.test.mjs
packages/bus/tests/processing-runtime.test.mjs
packages/bus/tests/processing-timeout.test.mjs
packages/bus/tests/processing-web.test.mjs
packages/bus/tests/processing.test.mjs
packages/bus/tests/project-await.test.mjs
packages/bus/tests/project-files.test.mjs
packages/bus/tests/project-runtime.test.mjs
packages/bus/tests/publish.test.mjs
packages/bus/tests/reload.test.mjs
packages/bus/tests/replies.test.mjs
packages/bus/tests/requirements.test.mjs
packages/bus/tests/review.test.mjs
packages/bus/tests/revoke-window.test.mjs
packages/bus/tests/room-check.test.mjs
packages/bus/tests/rooms.test.mjs
packages/bus/tests/routes-verb.test.mjs
packages/bus/tests/schema.test.mjs
packages/bus/tests/session-clear.test.mjs
packages/bus/tests/session-compactions.test.mjs
packages/bus/tests/sessions.test.mjs
packages/bus/tests/single-use.test.mjs
packages/bus/tests/spec-migration.test.mjs
packages/bus/tests/spec-review.test.mjs
packages/bus/tests/spec-socket.test.mjs
packages/bus/tests/spec.test.mjs
packages/bus/tests/staff-request.test.mjs
packages/bus/tests/state.test.mjs
packages/bus/tests/store.test.mjs
packages/bus/tests/task-page.test.mjs
packages/bus/tests/task-read.test.mjs
packages/bus/tests/tasks.test.mjs
packages/bus/tests/tester-threads.test.mjs
packages/bus/tests/tester-writes.test.mjs
packages/bus/tests/tester.test.mjs
packages/bus/tests/thread-claims.test.mjs
packages/bus/tests/thread-migration.test.mjs
packages/bus/tests/thread-shares.test.mjs
packages/bus/tests/threads.test.mjs
packages/bus/tests/transport.test.mjs
packages/bus/tests/usage-broker.test.mjs
packages/bus/tests/usage-migration.test.mjs
packages/bus/tests/usage-runtime.test.mjs
packages/bus/tests/usage.test.mjs
packages/bus/tests/user-principal.test.mjs
packages/bus/tests/viewer.test.mjs
packages/bus/tests/web.test.mjs
packages/bus/tests/workflow-roles.test.mjs
packages/business/tests/case1-business-file.test.mjs
packages/business/tests/launch-settings.test.mjs
packages/cli/tests/access-boot.test.mjs
packages/cli/tests/access.test.mjs
packages/cli/tests/app.test.mjs
packages/cli/tests/boot-status.test.mjs
packages/cli/tests/case1-hostcheck.test.mjs
packages/cli/tests/case2-install.test.mjs
packages/cli/tests/case2-persona-import.test.mjs
packages/cli/tests/case2-unit.test.mjs
packages/cli/tests/channel-cli.test.mjs
packages/cli/tests/channel-recovery.test.mjs
packages/cli/tests/cli.test.mjs
packages/cli/tests/compactions-launch.test.mjs
packages/cli/tests/config.test.mjs
packages/cli/tests/credentials.test.mjs
packages/cli/tests/federation-acceptance.test.mjs
packages/cli/tests/follow.test.mjs
packages/cli/tests/git-socket.test.mjs
packages/cli/tests/grants-scope.test.mjs
packages/cli/tests/grants.test.mjs
packages/cli/tests/host.test.mjs
packages/cli/tests/hosts.test.mjs
packages/cli/tests/idle-stop-race.test.mjs
packages/cli/tests/instances.test.mjs
packages/cli/tests/launch-account.test.mjs
packages/cli/tests/launch-limit-checks.test.mjs
packages/cli/tests/launch-limits.test.mjs
packages/cli/tests/launch-routes.test.mjs
packages/cli/tests/launcher.test.mjs
packages/cli/tests/lifecycle.test.mjs
packages/cli/tests/limits-tokens.test.mjs
packages/cli/tests/limits.test.mjs
packages/cli/tests/mark-read.test.mjs
packages/cli/tests/names.test.mjs
packages/cli/tests/notifier.test.mjs
packages/cli/tests/optional-tracker.test.mjs
packages/cli/tests/other-tree.test.mjs
packages/cli/tests/processing-cli.test.mjs
packages/cli/tests/project-name-repo.test.mjs
packages/cli/tests/project.test.mjs
packages/cli/tests/publish-socket.test.mjs
packages/cli/tests/reply-limits.test.mjs
packages/cli/tests/revoke-window.test.mjs
packages/cli/tests/session-clear.test.mjs
packages/cli/tests/session-cli.test.mjs
packages/cli/tests/session-launch.test.mjs
packages/cli/tests/stack-copy.test.mjs
packages/cli/tests/stack-instances.test.mjs
packages/cli/tests/tester-http.test.mjs
packages/cli/tests/tester-reads.test.mjs
packages/cli/tests/tester-threads.test.mjs
packages/cli/tests/tester.test.mjs
packages/cli/tests/thread-cli.test.mjs
packages/cli/tests/thread-launch.test.mjs
packages/cli/tests/thread-revoke.test.mjs
packages/cli/tests/trackers-boot.test.mjs
packages/cli/tests/transport.test.mjs
packages/cli/tests/usage.test.mjs
packages/cli/tests/verbs.test.mjs
packages/harness/tests/bundle.test.mjs
packages/harness/tests/citation-runner.test.mjs
packages/harness/tests/claude-gate.test.mjs
packages/harness/tests/claude-session.test.mjs
packages/harness/tests/creative.test.mjs
packages/harness/tests/gate.test.mjs
packages/harness/tests/git-tools.test.mjs
packages/harness/tests/library-tools.test.mjs
packages/harness/tests/mcp-server.test.mjs
packages/harness/tests/pi-session.test.mjs
packages/harness/tests/raise-domain.test.mjs
packages/harness/tests/runner.test.mjs
packages/harness/tests/skills.test.mjs
packages/harness/tests/spec-tools.test.mjs
packages/harness/tests/tools.test.mjs
packages/library/tests/guard.test.mjs
packages/library/tests/index-build.test.mjs
packages/library/tests/links.test.mjs
packages/library/tests/mapping.test.mjs
packages/library/tests/mirror.test.mjs
packages/library/tests/query.test.mjs
packages/library/tests/reader.test.mjs
packages/library/tests/render.test.mjs
packages/library/tests/scope.test.mjs
packages/library/tests/supporting.test.mjs
packages/library/tests/survey.test.mjs
packages/library/tests/sync.test.mjs
packages/processing-control/tests/task.test.mjs
packages/seat/tests/sandbox.test.mjs
packages/seat/tests/session.test.mjs
packages/tasks/tests/adapter.test.mjs
packages/tasks/tests/comment-restart.test.mjs
packages/tasks/tests/fields.test.mjs
packages/tasks/tests/processing.test.mjs
packages/tasks/tests/shapes.test.mjs
packages/tasks/tests/startup.test.mjs
packages/tasks/tests/sync.test.mjs
packages/tasks/tests/tree.test.mjs
packages/tasks/tests/verbs.test.mjs
packages/webui/tests/agents-browser.test.mjs
packages/webui/tests/agents.test.mjs
packages/webui/tests/assistant.test.mjs
packages/webui/tests/board-held.test.mjs
packages/webui/tests/browser-edge.test.mjs
packages/webui/tests/browser.test.mjs
packages/webui/tests/bus-browser.test.mjs
packages/webui/tests/bus.test.mjs
packages/webui/tests/channel-chat.test.mjs
packages/webui/tests/chat-browser.test.mjs
packages/webui/tests/chat-instances.test.mjs
packages/webui/tests/chat-replies-browser.test.mjs
packages/webui/tests/chat-sessions-access.test.mjs
packages/webui/tests/chat.test.mjs
packages/webui/tests/conversation.test.mjs
packages/webui/tests/decide-browser.test.mjs
packages/webui/tests/decide-sso.test.mjs
packages/webui/tests/decision-http.test.mjs
packages/webui/tests/discord.test.mjs
packages/webui/tests/docs-browser.test.mjs
packages/webui/tests/editor-browser.test.mjs
packages/webui/tests/editor.test.mjs
packages/webui/tests/granted-user.test.mjs
packages/webui/tests/history-return-flow.test.mjs
packages/webui/tests/instances-browser.test.mjs
packages/webui/tests/instances.test.mjs
packages/webui/tests/library-cli.test.mjs
packages/webui/tests/library-routes.test.mjs
packages/webui/tests/library-status.test.mjs
packages/webui/tests/limits-browser.test.mjs
packages/webui/tests/limits-route.test.mjs
packages/webui/tests/messages.test.mjs
packages/webui/tests/pinned-copy.test.mjs
packages/webui/tests/preview.test.mjs
packages/webui/tests/processing-browser.test.mjs
packages/webui/tests/processing.test.mjs
packages/webui/tests/project-file.test.mjs
packages/webui/tests/project-name-repo.test.mjs
packages/webui/tests/proof-cli.test.mjs
packages/webui/tests/proof.test.mjs
packages/webui/tests/reads.test.mjs
packages/webui/tests/relaunch.test.mjs
packages/webui/tests/return-flow.test.mjs
packages/webui/tests/room-browser.test.mjs
packages/webui/tests/room-http.test.mjs
packages/webui/tests/routes-browser.test.mjs
packages/webui/tests/routes.test.mjs
packages/webui/tests/send-browser.test.mjs
packages/webui/tests/send.test.mjs
packages/webui/tests/serve.test.mjs
packages/webui/tests/settings-form.test.mjs
packages/webui/tests/settings-write.test.mjs
packages/webui/tests/shell.test.mjs
packages/webui/tests/sso-browser.test.mjs
packages/webui/tests/sso.test.mjs
packages/webui/tests/tester-browser.test.mjs
packages/webui/tests/tester-cli.test.mjs
packages/webui/tests/tester-listener.test.mjs
packages/webui/tests/tester-socket.test.mjs
packages/webui/tests/thread-claims-browser.test.mjs
packages/webui/tests/thread-claims.test.mjs
packages/webui/tests/thread-sharing.test.mjs
packages/webui/tests/usage-browser.test.mjs
packages/webui/tests/usage.test.mjs
packages/webui/tests/user-option-swap.test.mjs
packages/webui/tests/views.test.mjs
```
Queue next on 2026-10-24 names row284 but reports the whole brief differs
from its queue pin and asks the lead to re-pin. Sage-4281 names 5e8a720b and
says the section is unchanged; awaiting lead resolution of the queue pin
before the start move. No queue policy refusal is bypassed.
## sage-4289 lane B — completed verification, 2026-10-24
Current reviewer is Webby under mos-1614 / sage-4284, replacing Dewey.
Dewey's earlier static readings and agreed M1-M9 remain historical evidence.
Row284 claimed in-progress rev4038, op della-284-start-1 after lead re-pin.
Candidate tested: 2f1a6bd93e5fc602c46ee5f770d19adecde5fc11. No code,
fixture or assertion change during verification. Local npm ci used the exact
lockfile, ignore-scripts/no-audit/no-fund, rc0,128 packages; no canonical
node_modules link. Installer receipt and log are in the evidence directory.
Run list sent in full to Sage before starting (della-0058); source is the
import walk documented above, union mandatory package suites,279 whole files.
Three targeted files first, then M1-M9 with byte-exact restore after each,
then remaining276 whole files. Already-passed unchanged targeted files are
not repeated. Every Node invocation used fresh shell gXXX TMPDIR,29 bytes,
absolute nice19 set in the child before exec, timeout -k10 (900-second cap,
shortened automatically near23:45Z hardstop). All timeout nice observations
were19. Normal run total1067.962s; mutant total19.485s. Completed22:34Z.
| Package | Whole files | Pass | Fail | Skip |
| --- | ---: | ---: | ---: | ---: |
| bus | 114 | 1012 | 0 | 0 |
| business | 2 | 25 | 0 | 0 |
| cli | 58 | 610 | 0 | 1 |
| harness | 15 | 177 | 0 | 0 |
| library | 12 | 156 | 0 | 0 |
| processing-control | 1 | 7 | 0 | 0 |
| seat | 2 | 23 | 0 | 0 |
| tasks | 9 | 95 | 0 | 0 |
| webui | 66 | 396 | 0 | 0 |
Totals:279 whole files,2501 passed,0 failed,1 skipped,0 cancelled.
Sole skip: packages/cli/tests/federation-acceptance.test.mjs,
FED R7 scratch two-instance acceptance, directs running
scripts/test-federation-acceptance.sh. That acceptance was not exercised;
Sage's full shell landing gate is separate. case1-accept.test.mjs excluded
as ordered. No unlisted run or extra mutant. Targeted counts: query34/34,
broker12/12,typed tools5/5,zero skips.
M1-M9 all killed with exit1, no syntax/setup failures. M1 and M8 are expected
behavior errors when a required capability is removed; the others fail
assertions/refusal checks. Killing named tests are recorded below. Each
restored original bytes in finally; git diff --stat and status --porcelain
empty after every mutant and again after all normal runs, before receipts.
No extra post-restore test rerun.
| Mutant | Killing behavior oracle | Restored |
| --- | --- | --- |
| M1 | supporting find/search/get | byte-exact, clean |
| M2 | get without scope returns null | byte-exact, clean |
| M3 | each get blob equals its served tree object | byte-exact, clean |
| M4 | full outgoing and incoming links stay in scope order | byte-exact, clean |
| M5 | full outgoing and incoming links stay in scope order | byte-exact, clean |
| M6 | full outgoing and incoming links stay in scope order | byte-exact, clean |
| M7 | manuscript still refuses supporting | byte-exact, clean |
| M8 | broker forwards supporting scope | byte-exact, clean |
| M9 | scope schemas expand only find/search/get | byte-exact, clean |
Post-run sweep: current OS user's executable names node/nodejs/chromium/
chrome, matching cwd or argv paths under this worktree or any run TMPDIR.
Checked289 unique roots;0 matching live processes. No signals sent, no
other seat's process inspected beyond process identity/path matching.
No full argv, environment or credential values printed. Slot returned to
Sage in della-0059 at22:34Z. No further tests.
Evidence: /mnt/storage/scratch/della-row284-r2-evidence/run-4289 contains
install receipt, exact commands, stdout/stderr per whole-file run, mutant
edits/restores, summaries and hashed logs. The following plain-text ledger
freezes commands and results; raw logs remain available for reviewer checks.
Each normal test path below was run whole; hashes are SHA256 of raw logs.
```text
{"label":"target-query","command":["timeout","-k","10","900","node","--test","packages/library/tests/query.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gUgw","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.889,"mutant":false,"tests":34,"pass":34,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"dc2575e2c597b099c94b7cf254b0cb4d009a0ddb14c0cbd572f93e5ad15f8f72"}
{"label":"target-broker","command":["timeout","-k","10","900","node","--test","packages/bus/tests/library-lookups.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gDd2","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.431,"mutant":false,"tests":12,"pass":12,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"6729e92f2241a2c2d0b725cb9c6ed4fe4d8b50352fd179cf30f905182eac9160"}
{"label":"target-tools","command":["timeout","-k","10","900","node","--test","packages/harness/tests/library-tools.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gmPG","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.169,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"532de351eef39478011d7f84b3b506711c3bafc71676716f623fa29573fc4dec"}
{"label":"M1","command":["timeout","-k","10","900","node","--test","packages/library/tests/query.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gIGt","start_nice":19,"observed_timeout_nice":19,"exit":1,"seconds":2.683,"mutant":true,"tests":34,"pass":30,"fail":4,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"ec36434e918ee16c7639ec0ec4259be66e0381e2684bac7c6ee5755756bded78"}
{"label":"M2","command":["timeout","-k","10","900","node","--test","packages/library/tests/query.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/geid","start_nice":19,"observed_timeout_nice":19,"exit":1,"seconds":2.587,"mutant":true,"tests":34,"pass":31,"fail":3,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"e08eadfd606fc685faed21edb06b1d7d00fd11e7942051fddc0b48b83c6bef90"}
{"label":"M3","command":["timeout","-k","10","900","node","--test","packages/library/tests/query.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gs4j","start_nice":19,"observed_timeout_nice":19,"exit":1,"seconds":2.538,"mutant":true,"tests":34,"pass":33,"fail":1,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"8abb79847deb7a05940c7b48d5407dde6baaf394fef31334f6ac266d65b3c02f"}
{"label":"M4","command":["timeout","-k","10","900","node","--test","packages/library/tests/query.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gvmZ","start_nice":19,"observed_timeout_nice":19,"exit":1,"seconds":2.674,"mutant":true,"tests":34,"pass":33,"fail":1,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"8b8386b876fb85e12335be27216dc5c6a8d5c311c03db0bf49ffbe0639a8693c"}
{"label":"M5","command":["timeout","-k","10","900","node","--test","packages/library/tests/query.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gG6o","start_nice":19,"observed_timeout_nice":19,"exit":1,"seconds":2.633,"mutant":true,"tests":34,"pass":32,"fail":2,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"08ff976a29e42f593dce3262e596e75c43da2ae2e3dfe48945989fe98c3061cf"}
{"label":"M6","command":["timeout","-k","10","900","node","--test","packages/library/tests/query.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gWpu","start_nice":19,"observed_timeout_nice":19,"exit":1,"seconds":2.347,"mutant":true,"tests":34,"pass":23,"fail":11,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"4cd149d0f74e402d2294c2d9ef05aac440ec4c3dc379acad7b9624b7402528bb"}
{"label":"M7","command":["timeout","-k","10","900","node","--test","packages/library/tests/query.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g65B","start_nice":19,"observed_timeout_nice":19,"exit":1,"seconds":2.403,"mutant":true,"tests":34,"pass":33,"fail":1,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"541100f0937dd2e592ed9bee7c48f27ae4e13634d3c0dcf53fc3e8b2f632a000"}
{"label":"M8","command":["timeout","-k","10","900","node","--test","packages/bus/tests/library-lookups.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gtX5","start_nice":19,"observed_timeout_nice":19,"exit":1,"seconds":1.421,"mutant":true,"tests":12,"pass":11,"fail":1,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2adc93e5aaa663621caa9fd762faded3a975f62de918d7c46a1b5b0469001955"}
{"label":"M9","command":["timeout","-k","10","900","node","--test","packages/harness/tests/library-tools.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gMtM","start_nice":19,"observed_timeout_nice":19,"exit":1,"seconds":0.199,"mutant":true,"tests":5,"pass":4,"fail":1,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"da8c8c2094732b36526dc803e567d4bce18ff964bf70ff406e1981bb7dd313de"}
{"label":"import-001","command":["timeout","-k","10","900","node","--test","packages/bus/tests/access-revoke.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gGcs","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.728,"mutant":false,"tests":10,"pass":10,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"ee78177b9385025df0b0ce154e9f92f3d84a01920da94eb2b95df7aee533721a"}
{"label":"import-002","command":["timeout","-k","10","900","node","--test","packages/bus/tests/account-migration.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/giJX","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.456,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"04456ac702b53d59e127eb7ae2d9828b79acbbcc99c8845cc226e88e4569ffb2"}
{"label":"import-003","command":["timeout","-k","10","900","node","--test","packages/bus/tests/address.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gLUL","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.102,"mutant":false,"tests":15,"pass":15,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c4ff31db588ac88b6492416d3850b123492e29dbd7c6b2aa283dd736e6caa8cc"}
{"label":"import-004","command":["timeout","-k","10","900","node","--test","packages/bus/tests/agents.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gDuh","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.493,"mutant":false,"tests":11,"pass":11,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"424001894b865c63405976f7facc9a9c93c2ac018b6c97f17ebf87001d071d52"}
{"label":"import-005","command":["timeout","-k","10","900","node","--test","packages/bus/tests/approval-binding.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gsfL","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.305,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"f8029477d12d0acbd774ec6fa82d9af47ae93c575e0ada16c31130248280431d"}
{"label":"import-006","command":["timeout","-k","10","900","node","--test","packages/bus/tests/broker.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gwdO","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.532,"mutant":false,"tests":16,"pass":16,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b02528f749bc8367149451f2118cf612f7d46ee6269ad05d9a894d6ef893b727"}
{"label":"import-007","command":["timeout","-k","10","900","node","--test","packages/bus/tests/business.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gX5H","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.102,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"3246c77a5431fda5ee0ef798b9850ee8bf05297c7afa272fc88d148582dc14d8"}
{"label":"import-008","command":["timeout","-k","10","900","node","--test","packages/bus/tests/channel-proof.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g0t2","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.644,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d3dc7af8bd80c5cd391a42468cec38fa2cdf4d7bb8d758e84094a255cf2e8626"}
{"label":"import-009","command":["timeout","-k","10","900","node","--test","packages/bus/tests/chief-of-staff.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gAXk","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.744,"mutant":false,"tests":42,"pass":42,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"6e355388daee3b3cfe0251abd3f1f1fc56744e26354b8489d8113e4cb4033847"}
{"label":"import-010","command":["timeout","-k","10","900","node","--test","packages/bus/tests/citation-availability.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gNQV","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":5.391,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"fe32f9423c7317c53d0946d6422fb4ea58bcbb0795730b80cba7b5daae47b8ef"}
{"label":"import-011","command":["timeout","-k","10","900","node","--test","packages/bus/tests/citation-guard.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gilj","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.258,"mutant":false,"tests":13,"pass":13,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1f6c35c535a407a121ec4ee9bb4e9acdc12b5e16e3f8ccf75bcb94a66511b820"}
{"label":"import-012","command":["timeout","-k","10","900","node","--test","packages/bus/tests/citation-runtime.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gjTW","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.331,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"9cb0ab5a64b667f563c827239c242ee77475acb8744e515d8472d839d7190e2e"}
{"label":"import-013","command":["timeout","-k","10","900","node","--test","packages/bus/tests/comment-cursors.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gQvO","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.162,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"898a7bcc0f68f8a54748a9da6c75b702738b07230a48ff4f939206b1c2dccfdf"}
{"label":"import-014","command":["timeout","-k","10","900","node","--test","packages/bus/tests/comment-migration.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g4nL","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.609,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"ade667dca625e36750417b46f3156be89ec5d40fff78511722c3fa671f3bcd25"}
{"label":"import-015","command":["timeout","-k","10","900","node","--test","packages/bus/tests/console-decide.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/girM","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.893,"mutant":false,"tests":12,"pass":12,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"11a0ac7147f0164542442a9fc6e9224e5d36305cd3e999fc03733e289dfc8f4e"}
{"label":"import-016","command":["timeout","-k","10","900","node","--test","packages/bus/tests/creative.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gXAL","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.447,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"13b107465c7ddecb4fba573b58d4ff42f8807221d1956325b2a0e54eec4581d2"}
{"label":"import-017","command":["timeout","-k","10","900","node","--test","packages/bus/tests/credential-claim.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g8Cy","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.157,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"a66956b56367cb240de84571fc79e4297bf4bf49c06ce92ac3dd9c5d155b26a5"}
{"label":"import-018","command":["timeout","-k","10","900","node","--test","packages/bus/tests/credential-status.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gEDT","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.401,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"8812b6b0962c7b15e437a9c9b5741d502ab81001d9e17c9b5b14729db8f6033d"}
{"label":"import-019","command":["timeout","-k","10","900","node","--test","packages/bus/tests/credential-store.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gPQx","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.158,"mutant":false,"tests":12,"pass":12,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2ead3ac9725024e493121f7aaa8e7cf71a35616ffd57c901d3f425ac50b4a8b7"}
{"label":"import-020","command":["timeout","-k","10","900","node","--test","packages/bus/tests/credential-verbs.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g1Wz","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.328,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"bf447a8e6566816992f48a92e6821441ec1acd86960251aeee4b03b6e4b6dee3"}
{"label":"import-021","command":["timeout","-k","10","900","node","--test","packages/bus/tests/credentials.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/grcF","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.105,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"f3f807e470c8ec40f6c1aea188308a1ca183c8f0e98a0eaea996c96577ab471a"}
{"label":"import-022","command":["timeout","-k","10","900","node","--test","packages/bus/tests/csuite-messaging.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gFHk","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.779,"mutant":false,"tests":16,"pass":16,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1034823ca51c040db2f0bb18416c67761580ed55df0e60636883bc217878afd5"}
{"label":"import-023","command":["timeout","-k","10","900","node","--test","packages/bus/tests/daily-quota-runtime.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gl0H","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.401,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"95472c3d6b012d38f3db4c790fdd48b710535beee03274c0ea44a2cbd97ed095"}
{"label":"import-024","command":["timeout","-k","10","900","node","--test","packages/bus/tests/decision-close.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g2Iz","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.34,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"5c855717b19f203797db5b4f2789dd8f8df7d49cbdfee62ae0ffa220e4ed1a4a"}
{"label":"import-025","command":["timeout","-k","10","900","node","--test","packages/bus/tests/decision-route.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gDI5","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.286,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"485577231e6e797c256db8a832d98aca4bf856e47459e0c30a1940598c60b8aa"}
{"label":"import-026","command":["timeout","-k","10","900","node","--test","packages/bus/tests/decisions.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/geqP","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.474,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"aa887a5b2b30390fab4906cbd2f6ffa4ec37cc9e794478b18e7cd47eb354063b"}
{"label":"import-027","command":["timeout","-k","10","900","node","--test","packages/bus/tests/end-launch.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g5u4","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.414,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"e3aced744c09beda07405cba691c54a8c8dca973b7718285f67612cbfdad4ac1"}
{"label":"import-028","command":["timeout","-k","10","900","node","--test","packages/bus/tests/fire-revokes-grants.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gD7b","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":4.034,"mutant":false,"tests":24,"pass":24,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"0e79b5a7c00f0701c84b76f3e9fd73f1bac2c9343594039df1e8a667e42d6ea4"}
{"label":"import-029","command":["timeout","-k","10","900","node","--test","packages/bus/tests/gitea-grant-docker.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gcCX","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":25.371,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"5720e4fc3d58350dc4192c7ceb5dff76aba9bf1aff1ac917e016e7295380b325"}
{"label":"import-030","command":["timeout","-k","10","900","node","--test","packages/bus/tests/gitea-grant.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gIPd","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":12.386,"mutant":false,"tests":66,"pass":66,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"142962fbea6f3602701e4bcc5e0248cb06b98a2fad8bfafb92143a593e535ee6"}
{"label":"import-031","command":["timeout","-k","10","900","node","--test","packages/bus/tests/gitea-migration.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gPFr","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.443,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2a3d38fa696805a193460d33bfec2461778463b7087e368b738700c583ad23c3"}
{"label":"import-032","command":["timeout","-k","10","900","node","--test","packages/bus/tests/grant-enroll.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gAeL","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.838,"mutant":false,"tests":24,"pass":24,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"fc5d1d86af5c0689eb5a92d94ee1dc7a0143299523fc010d4a119c34b30ff768"}
{"label":"import-033","command":["timeout","-k","10","900","node","--test","packages/bus/tests/grant-executor.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gEJ1","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":22.682,"mutant":false,"tests":42,"pass":42,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"97a66205b109952a7704ff9d5d63efbb0277922a0bf1510a677284f9ccbc9831"}
{"label":"import-034","command":["timeout","-k","10","900","node","--test","packages/bus/tests/grant-host.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gYeV","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.433,"mutant":false,"tests":10,"pass":10,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"0ab7ed5613f9c353c5e6f786ceffc6112c4f851debb799cf60ff73ae2f2bf65d"}
{"label":"import-035","command":["timeout","-k","10","900","node","--test","packages/bus/tests/grant-migration.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gcHz","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.495,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"690a9c67e3426b8f6dc94c34f1b34ae5e502c0f8fb9ce67c5beab7cf5122557e"}
{"label":"import-036","command":["timeout","-k","10","900","node","--test","packages/bus/tests/grant-scope-runtime.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gVjH","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.228,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c013731042ef37735fe6648ec299831b127d3ddb351c613d95efd4bc610d6ff2"}
{"label":"import-037","command":["timeout","-k","10","900","node","--test","packages/bus/tests/grant-scope.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gwvw","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.35,"mutant":false,"tests":14,"pass":14,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1b48fba6570d0dcef4666725bde8b8c8f95e75eb8abb517d15b226a6ae5b0ea4"}
{"label":"import-038","command":["timeout","-k","10","900","node","--test","packages/bus/tests/hard-waits.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gM7r","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.464,"mutant":false,"tests":13,"pass":13,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"41d7bdf1b5276a7205b6b3e61ff4ac2f7982d60f5f190c3475e75c1ff4cebefd"}
{"label":"import-039","command":["timeout","-k","10","900","node","--test","packages/bus/tests/host-run.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gfCB","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":15.268,"mutant":false,"tests":26,"pass":26,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"7f5c5ab5e5f654c1826e84369739616606de89763879d96ffaa9cc196db05d72"}
{"label":"import-040","command":["timeout","-k","10","900","node","--test","packages/bus/tests/host-tools.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gbtM","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":4.726,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"dfd0a799f300925eb291c8047adc0f9359bf05927f0b1c129c6b420fcf0bfcc0"}
{"label":"import-041","command":["timeout","-k","10","900","node","--test","packages/bus/tests/human.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gnLK","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.102,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"09791081c562afc5c9fa6da5b6df4e37935797147fc6d4c3f4cd8be2dd3d56ae"}
{"label":"import-042","command":["timeout","-k","10","900","node","--test","packages/bus/tests/instances-verb.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g46h","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.305,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d41d14dd33492e34f21452550fed8d0ca0d3b1847cca0fb86c53ad13f8cb4fb7"}
{"label":"import-043","command":["timeout","-k","10","900","node","--test","packages/bus/tests/interpreter.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gTjS","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.178,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c3be5eace9c994767d451fcd0d99ddfff2a647a8f7e74f21306c95ac503c229c"}
{"label":"import-044","command":["timeout","-k","10","900","node","--test","packages/bus/tests/land.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gOEa","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.156,"mutant":false,"tests":18,"pass":18,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b59e6b60f597b4b1d02d4ced63344dbcb820946148a11a4ddd8e29ac422ef0f8"}
{"label":"import-045","command":["timeout","-k","10","900","node","--test","packages/bus/tests/launch-notice.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gv3V","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.543,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"4979af0184d2b8fe0cfc7048da37828e2f58a8bb433b589399be4d8a7798371d"}
{"label":"import-046","command":["timeout","-k","10","900","node","--test","packages/bus/tests/launcher-released.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gEQl","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.365,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"9e4890aeaa7e21398fb140c469c606cb8a5cec2b564826232ade66f171fed937"}
{"label":"import-047","command":["timeout","-k","10","900","node","--test","packages/bus/tests/library-credential.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gJlk","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":3.11,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"ca7c89d815a3bc281b406089a04dbaf94d04927c0b6b0ae840cae34cd8e858f5"}
{"label":"import-049","command":["timeout","-k","10","900","node","--test","packages/bus/tests/library-sync.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/geyX","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":7.525,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"835bea6e1730fb67ab7d7ef02701ace657b0b3a839d300713ca16d0a32713828"}
{"label":"import-050","command":["timeout","-k","10","900","node","--test","packages/bus/tests/library.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gejb","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.736,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"70633e1f2e5662e511239ada1bb47e1dc197b79e2c9ecf005308b270f713a41c"}
{"label":"import-051","command":["timeout","-k","10","900","node","--test","packages/bus/tests/lifecycle-revoke.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gA7g","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.815,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"190fd253cefb4d669245531043a93225d37ae66ba694635a3e8bffd86c9e4264"}
{"label":"import-052","command":["timeout","-k","10","900","node","--test","packages/bus/tests/lifecycle-verbs.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gYLp","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.62,"mutant":false,"tests":13,"pass":13,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"071bed270aff7f251d954b557e090230ee6e224535938b85b93e8f885d3fb944"}
{"label":"import-053","command":["timeout","-k","10","900","node","--test","packages/bus/tests/limit-checks.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gt3p","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.347,"mutant":false,"tests":16,"pass":16,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"cb634a9e2819a161ec128a250586e4086591696309f00c9e6a62d7c54c6b9382"}
{"label":"import-054","command":["timeout","-k","10","900","node","--test","packages/bus/tests/limit-stop.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g1Vs","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.362,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"93504cdb3c5a9e5295bd72b8224ec69c43bbd344529a97538376c5a09e47328e"}
{"label":"import-055","command":["timeout","-k","10","900","node","--test","packages/bus/tests/limits-runtime.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/giXl","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.454,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"a18ac489d4eaa62e0bdb40444d70722379b0f4dc172f28e71f8600307ce7c3b6"}
{"label":"import-056","command":["timeout","-k","10","900","node","--test","packages/bus/tests/limits.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gZog","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.424,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"072dfdd9f45f609d52910d3619d4253bd05b54ec36e1a8599db17e17b472e99a"}
{"label":"import-057","command":["timeout","-k","10","900","node","--test","packages/bus/tests/message-citation.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gCEq","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.244,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d53489b437b4adc8ac10bc52d0f1e6557b6fd187786008a6ad13a264207be034"}
{"label":"import-058","command":["timeout","-k","10","900","node","--test","packages/bus/tests/message-filter.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gsfe","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.58,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"6038a839d1b12b29d8cdbc0ea341ae22197e19444be5743ca327cb188cd1af59"}
{"label":"import-059","command":["timeout","-k","10","900","node","--test","packages/bus/tests/messages.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gkz2","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.501,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"e507905469453069f469a1366bd4cbd446c6b7e2e8ba5234c3d0bee83d1172ba"}
{"label":"import-060","command":["timeout","-k","10","900","node","--test","packages/bus/tests/messaging.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gPZR","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.502,"mutant":false,"tests":13,"pass":13,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"434390031617151891ecb63a788da353c0d43051a4ea60db2e5727b149c9de4e"}
{"label":"import-061","command":["timeout","-k","10","900","node","--test","packages/bus/tests/name-migration.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gsLH","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.192,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1979f0b1dd32162d42acace08a4b4306249e1096f5bbadb47038681af6b375d5"}
{"label":"import-062","command":["timeout","-k","10","900","node","--test","packages/bus/tests/names.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/grPm","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.313,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1d35ce65a08ec74388a7a65af8bfb7a87d341fab5795360fd553e65aa10d4999"}
{"label":"import-063","command":["timeout","-k","10","900","node","--test","packages/bus/tests/peer-transport.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g2ja","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.194,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"579cce4a4581e991e6cad80666cd40bfb10d1346699f1233a44dab5d17ee1583"}
{"label":"import-064","command":["timeout","-k","10","900","node","--test","packages/bus/tests/peercred.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g35b","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.499,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c6d9c4a534f8aab5c73e6920346674eb243a19439eaaa09436ff4c2bc9b68fd7"}
{"label":"import-065","command":["timeout","-k","10","900","node","--test","packages/bus/tests/plugins-verb.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gGrj","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.331,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"4677c69292a7fe1961239e40ecd5848b1e9355e6d9326f1c935dd077605cc36b"}
{"label":"import-066","command":["timeout","-k","10","900","node","--test","packages/bus/tests/principal.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g5U9","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.102,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"efac2a82f133ae63ba26543832b6704df573f345c7699b48b928d4329467f03e"}
{"label":"import-067","command":["timeout","-k","10","900","node","--test","packages/bus/tests/process.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/go8U","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.448,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"e26c9f5eb045dd7f651f453875fc1daac5dafa5f2060a69c3edcf37c79433e24"}
{"label":"import-068","command":["timeout","-k","10","900","node","--test","packages/bus/tests/processing-runtime.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gmrO","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.392,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"624f60b78329dbf8db5b5ce17e9f218148f7e417a46bcace45666b10193ea4c4"}
{"label":"import-069","command":["timeout","-k","10","900","node","--test","packages/bus/tests/processing-timeout.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gt14","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.263,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"30a4c425941c5732bb0afa09ff8cf2229f11ec6031c7cd3ae26932cf55dc2552"}
{"label":"import-070","command":["timeout","-k","10","900","node","--test","packages/bus/tests/processing-web.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gWj9","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.126,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"dbe9bc036efc99fc38b2dea8824cb7a64fc39e49fcd3a1ef07c60298b0d8e69f"}
{"label":"import-071","command":["timeout","-k","10","900","node","--test","packages/bus/tests/processing.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gP4m","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.381,"mutant":false,"tests":14,"pass":14,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d2204029f1dbc5836a759b43d421f2790ca32b97a1cc1fc6cb3f098fa4d7ab5d"}
{"label":"import-072","command":["timeout","-k","10","900","node","--test","packages/bus/tests/project-await.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/grrE","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.177,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"55cb0e215ff4f1e3265322c3336b3861d37fc3ba3cac53a31aa3dcc9ee0cab46"}
{"label":"import-073","command":["timeout","-k","10","900","node","--test","packages/bus/tests/project-files.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gZZ4","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.894,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b3395652052ccd06de8df2a1ce1aaac185dab50e854fb712a33aef8319d17fdc"}
{"label":"import-074","command":["timeout","-k","10","900","node","--test","packages/bus/tests/project-runtime.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gYyK","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.404,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b139c3c9cea5fc9bd86ac64f33c4af23f568bee13f9271fef40a07d76ed51cf2"}
{"label":"import-075","command":["timeout","-k","10","900","node","--test","packages/bus/tests/publish.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gUl2","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.831,"mutant":false,"tests":13,"pass":13,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"0adf717babd8ac6229a115e1c796071fd68c1524f140d4596c9f1ee8c528b69f"}
{"label":"import-076","command":["timeout","-k","10","900","node","--test","packages/bus/tests/reload.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gZPr","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.003,"mutant":false,"tests":10,"pass":10,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2ce6a9bd3ea3eeccf1689e1b6335b72bba2d440ae27feeec3dc727567fa140ff"}
{"label":"import-077","command":["timeout","-k","10","900","node","--test","packages/bus/tests/replies.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gbjz","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.374,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"6db5c1588c83f2df4be469f06857569df7f4cfc47c18b15a8f9e741d4d739c4f"}
{"label":"import-078","command":["timeout","-k","10","900","node","--test","packages/bus/tests/requirements.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g1jX","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.192,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"32b876110fc8a35246f6ab16343dae9ea6da42ef556a99e1e5356e077474a96f"}
{"label":"import-079","command":["timeout","-k","10","900","node","--test","packages/bus/tests/review.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gVJz","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.427,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"333b7d84cf72b95ba2cdb1d3824bcb8043623c5f0810c68ed22738210977c297"}
{"label":"import-080","command":["timeout","-k","10","900","node","--test","packages/bus/tests/revoke-window.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gRZs","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.305,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"7e759b3330537c0c566b55b2c405adc6f5f48c3b229c4450d938aaec3280fc09"}
{"label":"import-081","command":["timeout","-k","10","900","node","--test","packages/bus/tests/room-check.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gzW9","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.225,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"300f1ea96ccfa38c9405ef163e531cfeec3c7eb8f46986f077669ca95b8f72f3"}
{"label":"import-082","command":["timeout","-k","10","900","node","--test","packages/bus/tests/rooms.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gEx0","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.033,"mutant":false,"tests":18,"pass":18,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"fbcac36a4495da1def5dd650d8aea5758bf25d3e7473148a2b8961bb97b57239"}
{"label":"import-083","command":["timeout","-k","10","900","node","--test","packages/bus/tests/routes-verb.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g0LO","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.292,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"4fef276b76a79518faa03b81d119962ab8880af3010fa33ead93f393dca89f02"}
{"label":"import-084","command":["timeout","-k","10","900","node","--test","packages/bus/tests/schema.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gZFQ","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.169,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"e71271414564fa851dbf25a155b44dcf481770c7f3d4dafe5ce44a09c49526b1"}
{"label":"import-085","command":["timeout","-k","10","900","node","--test","packages/bus/tests/session-clear.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gfrg","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.773,"mutant":false,"tests":19,"pass":19,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c8097880d5e9a396fb907bc1f35f342821971b545fea7f1e4ddcb2b9f2fb322a"}
{"label":"import-086","command":["timeout","-k","10","900","node","--test","packages/bus/tests/session-compactions.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gfRL","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.179,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"0a2f0ef4d7f6588e2aaeb5a5d8e200650ae573c4468640130140eb83430261b3"}
{"label":"import-087","command":["timeout","-k","10","900","node","--test","packages/bus/tests/sessions.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gaNb","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.654,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"11f26dc0d082b49ce7839d22aca75067dcc2f978d6c319da3d2800adcc0a9ffc"}
{"label":"import-088","command":["timeout","-k","10","900","node","--test","packages/bus/tests/single-use.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gSe3","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.416,"mutant":false,"tests":12,"pass":12,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"7a0e2e7a4a6ab79b85462ad1a39955c5402dab8a9236534c857cef88d08ecc87"}
{"label":"import-089","command":["timeout","-k","10","900","node","--test","packages/bus/tests/spec-migration.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gPmw","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.215,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b9831356a0d65a037796a66764dcf7dcc267d8512e70087b364cbe390a8c85dc"}
{"label":"import-090","command":["timeout","-k","10","900","node","--test","packages/bus/tests/spec-review.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gqKv","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.034,"mutant":false,"tests":12,"pass":12,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"8a70a550b2b056c35f2e85bdd4a155bf7d02332d89596aeed40e16bec765221c"}
{"label":"import-091","command":["timeout","-k","10","900","node","--test","packages/bus/tests/spec-socket.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gY6G","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.787,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d58670526310fa5106ab9b3d724d817910283b76cfa8bd79278b0428e42b73c3"}
{"label":"import-092","command":["timeout","-k","10","900","node","--test","packages/bus/tests/spec.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gnTM","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.538,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d04ac45ad25906322cbbd50b703c316c4eeefad1d40f901eeaf2c34224fc5958"}
{"label":"import-093","command":["timeout","-k","10","900","node","--test","packages/bus/tests/staff-request.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g07B","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.544,"mutant":false,"tests":10,"pass":10,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"e0e379d2e0871ecbbae9a5e92ee7217342dc31cf69c80373aeef72f78ea27fd9"}
{"label":"import-094","command":["timeout","-k","10","900","node","--test","packages/bus/tests/state.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gx6m","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.289,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"63ac32064c6220c89204a8c34f13ce45ebb76f65a6e10e4173608740e1b54887"}
{"label":"import-095","command":["timeout","-k","10","900","node","--test","packages/bus/tests/store.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g5mj","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.286,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"329377b361787f86ffb5bda9210559d3d073e8ed9cfacc43e341156de63af707"}
{"label":"import-096","command":["timeout","-k","10","900","node","--test","packages/bus/tests/task-page.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gErK","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.203,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"0e48322586d18073df7d9efbc0700b7f9e2e45a7a61eb32ffa13ab9d9695de54"}
{"label":"import-097","command":["timeout","-k","10","900","node","--test","packages/bus/tests/task-read.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g7B0","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.237,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"3aa73723d9410d5c6851352f6b3d9c0f671f9b008b8a2355021488f2a071c22b"}
{"label":"import-098","command":["timeout","-k","10","900","node","--test","packages/bus/tests/tasks.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gqcQ","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.037,"mutant":false,"tests":9,"pass":9,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"60e43ca791f0ee0e5a91c0a112ad0d971f38d28e18d6feb7a2d33132aec934fe"}
{"label":"import-099","command":["timeout","-k","10","900","node","--test","packages/bus/tests/tester-threads.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gbPX","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.486,"mutant":false,"tests":15,"pass":15,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"101fcf483990278f3a997ed1cff44b6191b1766147083ddf21341a4480eb602b"}
{"label":"import-100","command":["timeout","-k","10","900","node","--test","packages/bus/tests/tester-writes.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gMT4","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.609,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d5618314574cf7e64ac877e29787712f5fd68903228e6e1001c37cdd9b54a9e4"}
{"label":"import-101","command":["timeout","-k","10","900","node","--test","packages/bus/tests/tester.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gl5m","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.337,"mutant":false,"tests":14,"pass":14,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c44885e9d43e6ed5969af2f87ecc17fe00e1f1895435d86f5ddbe399c945642e"}
{"label":"import-102","command":["timeout","-k","10","900","node","--test","packages/bus/tests/thread-claims.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gmfF","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.354,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"bd053d20e52d1859ea6ed13f316e7ed27dac3ba3a8f1be5b3b7adef2fa15e356"}
{"label":"import-103","command":["timeout","-k","10","900","node","--test","packages/bus/tests/thread-migration.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gUt3","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.513,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"ee94081c476ab12b1c1b73eb2efb6138c22deee6dda92aa015fd2b2cc4cc405e"}
{"label":"import-104","command":["timeout","-k","10","900","node","--test","packages/bus/tests/thread-shares.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g6KY","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.966,"mutant":false,"tests":16,"pass":16,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"e2c37691510cc5acfecfcd6d5be612b701fa72a06c544c265b027a381eb577ae"}
{"label":"import-105","command":["timeout","-k","10","900","node","--test","packages/bus/tests/threads.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gqdT","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.848,"mutant":false,"tests":20,"pass":20,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"0e25845dfd5e6c68c206ef19b6ab74b5e00d01cf2ce6cd8843b7f0abe4229d60"}
{"label":"import-106","command":["timeout","-k","10","900","node","--test","packages/bus/tests/transport.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gG0Z","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.355,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"177ad5f143bb47dc7d65ef89785b19170ed7f5a25d1dd78079c73367b7d34bb5"}
{"label":"import-107","command":["timeout","-k","10","900","node","--test","packages/bus/tests/usage-broker.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gYVM","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.179,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"91d3b9ff3e854f2afb6d635a0994a4b2d1af482804067c2e6f78930babf25378"}
{"label":"import-108","command":["timeout","-k","10","900","node","--test","packages/bus/tests/usage-migration.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gJIX","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.232,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"35dae9048409bf16982b1554b0d3bf53de51293c012b428cfa95e3876c353d1b"}
{"label":"import-109","command":["timeout","-k","10","900","node","--test","packages/bus/tests/usage-runtime.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gzcI","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.3,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1b260c414d98caf272852cc1c6a0928a79f84b05baad356f954fabb8befed9f4"}
{"label":"import-110","command":["timeout","-k","10","900","node","--test","packages/bus/tests/usage.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g9hD","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.341,"mutant":false,"tests":15,"pass":15,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"4b7a7719685b54f0bafcd0d6ca0eff8da3c35e8c438b69fb63826120c444646d"}
{"label":"import-111","command":["timeout","-k","10","900","node","--test","packages/bus/tests/user-principal.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gCyo","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.843,"mutant":false,"tests":24,"pass":24,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"7e5d8e391b6d683905f7654276e74e56cd2e0bb3019d8882fb51f5e96e8bb4e2"}
{"label":"import-112","command":["timeout","-k","10","900","node","--test","packages/bus/tests/viewer.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gckq","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.495,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"0088c69c83ad21b0c09c5b74986f7d1b5609f6155d40d6230cb755914506b209"}
{"label":"import-113","command":["timeout","-k","10","900","node","--test","packages/bus/tests/web.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gr8J","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.209,"mutant":false,"tests":19,"pass":19,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"81db5367857555ba39abf0d45a2b4837a60c796109af4039b43f3dceaaf9a3e4"}
{"label":"import-114","command":["timeout","-k","10","900","node","--test","packages/bus/tests/workflow-roles.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gObE","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.265,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"4a3d911233067a9623aacbe0f856296e7c80d616d1099a30a9ce253506791bb2"}
{"label":"import-115","command":["timeout","-k","10","900","node","--test","packages/business/tests/case1-business-file.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gKGR","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.839,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2dd7e08774e88449fc90beffa7a1097772a4b04906e62548cd34b31f1cf541b3"}
{"label":"import-116","command":["timeout","-k","10","900","node","--test","packages/business/tests/launch-settings.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gaiJ","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.451,"mutant":false,"tests":18,"pass":18,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"849eeebfaaf47c96f22db45752fb5f00143663fb4ed0aa2d22d74f8af9ea3905"}
{"label":"import-117","command":["timeout","-k","10","900","node","--test","packages/cli/tests/access-boot.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gU7B","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.64,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1698f3f93b14d11b330e559f19a580edae78b4182042df0e7da1cc9d4cbb53be"}
{"label":"import-118","command":["timeout","-k","10","900","node","--test","packages/cli/tests/access.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gHaW","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":7.364,"mutant":false,"tests":34,"pass":34,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"e42f5491e4db8370ad6f6c2f09a8008c9559ecd572f0985f766f0ca11b1d7b60"}
{"label":"import-119","command":["timeout","-k","10","900","node","--test","packages/cli/tests/app.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gmHw","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":16.086,"mutant":false,"tests":30,"pass":30,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d65043a7cf3a1d67b99bb47de8efa029c44b90b9fcc0cc7cb8d8ed54403bba81"}
{"label":"import-120","command":["timeout","-k","10","900","node","--test","packages/cli/tests/boot-status.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gYv3","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.916,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"f6753a454d658737099bb6da76219aeb3c6e92bce76b78c53f2d9dae29f5d777"}
{"label":"import-121","command":["timeout","-k","10","900","node","--test","packages/cli/tests/case1-hostcheck.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gvaK","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":3.735,"mutant":false,"tests":19,"pass":19,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"aeb1e23bf951d5859d7adb54fe8f3c6464ba4bf368e9316dce8e5142e097565c"}
{"label":"import-122","command":["timeout","-k","10","900","node","--test","packages/cli/tests/case2-install.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gLWb","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":11.37,"mutant":false,"tests":27,"pass":27,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"06166332e80fd57cd9ae5e5ef2f167260adb413cd6c799b9c1834255cbf3ed63"}
{"label":"import-123","command":["timeout","-k","10","900","node","--test","packages/cli/tests/case2-persona-import.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g955","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":3.606,"mutant":false,"tests":14,"pass":14,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"6005b321161cba438dc94ee6f58a05a05919e099da0d5b43b16b0438214b128e"}
{"label":"import-124","command":["timeout","-k","10","900","node","--test","packages/cli/tests/case2-unit.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gPC5","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":104.569,"mutant":false,"tests":47,"pass":47,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b9c64e1eea4e389dfc10b9e1ddf88e47d903c7abb1f175b0f73b0a6adf5e8a3b"}
{"label":"import-125","command":["timeout","-k","10","900","node","--test","packages/cli/tests/channel-cli.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gCxf","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.604,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"69ae3003d282a5f998613498ca1a696b684a9e4c03f5b006409d1fb15402c3c6"}
{"label":"import-126","command":["timeout","-k","10","900","node","--test","packages/cli/tests/channel-recovery.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gy7b","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":7.039,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"0df2d0dce24f2c7e9e70c1db3da115d848ee778a3b77c30f50db5fa5b70b15a8"}
{"label":"import-127","command":["timeout","-k","10","900","node","--test","packages/cli/tests/cli.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g4YA","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.986,"mutant":false,"tests":12,"pass":12,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"9e9f75b810bdce44a7e288a0f03572a824642a0e615c3912113d8882fba57f20"}
{"label":"import-128","command":["timeout","-k","10","900","node","--test","packages/cli/tests/compactions-launch.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gH0o","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":18.141,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"7ab789f5de01f4d9fb2c2933fc906d657bb3c867ebb7e8545b4ae8b2f07e348b"}
{"label":"import-129","command":["timeout","-k","10","900","node","--test","packages/cli/tests/config.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gvdv","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.989,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"46976c51d867431031baeb7dfb03518e111f88327f99f24fafa727c987037710"}
{"label":"import-130","command":["timeout","-k","10","900","node","--test","packages/cli/tests/credentials.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gW4m","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.558,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1633748b05e927193646fd8eaeb9cc64092553734a972a33ac9b26baee4390e1"}
{"label":"import-131","command":["timeout","-k","10","900","node","--test","packages/cli/tests/federation-acceptance.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gEeW","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.281,"mutant":false,"tests":1,"pass":0,"fail":0,"cancelled":0,"skipped":1,"todo":0,"log_sha256":"76dec3f040a21cad59757b69487247ebb3b6a8b27b015f0615585b3be477942a"}
{"label":"import-132","command":["timeout","-k","10","900","node","--test","packages/cli/tests/follow.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gxPz","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.084,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"db3463b8998634a487878c02c81b31eb196077dc45ac102de56f6f06a7bd26ee"}
{"label":"import-133","command":["timeout","-k","10","900","node","--test","packages/cli/tests/git-socket.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gcHM","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":27.936,"mutant":false,"tests":24,"pass":24,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c1a6247751b05dcaad81d9a42e93c923200f2971ef17622924d00a07c8292735"}
{"label":"import-134","command":["timeout","-k","10","900","node","--test","packages/cli/tests/grants-scope.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gRr9","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.298,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2f9222ce2ac41443cb24c69bffea46fd96c53af469670f642dcc2319d162ffc5"}
{"label":"import-135","command":["timeout","-k","10","900","node","--test","packages/cli/tests/grants.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gbr2","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.418,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"018fba785221ec997b369739f1fa39ff927f7144b6276f071338a64ba331e555"}
{"label":"import-136","command":["timeout","-k","10","900","node","--test","packages/cli/tests/host.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gIQc","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":20.522,"mutant":false,"tests":43,"pass":43,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"98d2bb8ac91e143fd16fb02b29d877b2df4397a1d8857687707d0bfebb3459be"}
{"label":"import-137","command":["timeout","-k","10","900","node","--test","packages/cli/tests/hosts.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gB9t","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.5,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"376d8a698c39bc25b9e43ee63f762718ab2d2d2dbfab36da61971e3982f98353"}
{"label":"import-138","command":["timeout","-k","10","900","node","--test","packages/cli/tests/idle-stop-race.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gt4N","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.246,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"4ee49db59177a6cedcc98642ad2b4215e1489c8720e3ab27c88a1d3513b4384f"}
{"label":"import-139","command":["timeout","-k","10","900","node","--test","packages/cli/tests/instances.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/ga2n","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":4.158,"mutant":false,"tests":15,"pass":15,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"125780e39af442913bf056f71a57b663c954d8eb5a96fb245db8063237ccb1e1"}
{"label":"import-140","command":["timeout","-k","10","900","node","--test","packages/cli/tests/launch-account.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gEgp","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.427,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1a2de9540358023f6acb51ab8cdfe0f56e21331cca06ecef672fe7e9b1e0b43a"}
{"label":"import-141","command":["timeout","-k","10","900","node","--test","packages/cli/tests/launch-limit-checks.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gxqf","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.398,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"027fb83eb3ef68f01fde4e1a272faf569516372f194e3e8404973756f9ffb974"}
{"label":"import-142","command":["timeout","-k","10","900","node","--test","packages/cli/tests/launch-limits.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g5N5","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.255,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"a3c26a3f092d8e7dd96fe1addfcd77b89d726d027e9f988340a1442823644c3c"}
{"label":"import-143","command":["timeout","-k","10","900","node","--test","packages/cli/tests/launch-routes.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gMhQ","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.514,"mutant":false,"tests":9,"pass":9,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"ba0335e2efd7de694b51ca89b427ffb06b652f6d9757df1997f9c1c7703ac74a"}
{"label":"import-144","command":["timeout","-k","10","900","node","--test","packages/cli/tests/launcher.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gqhv","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":45.769,"mutant":false,"tests":34,"pass":34,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"5e5374884901f29432961198070f3ede2f87fcc41a818423c3cb90c919dfd7d0"}
{"label":"import-145","command":["timeout","-k","10","900","node","--test","packages/cli/tests/lifecycle.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g76b","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":16.885,"mutant":false,"tests":24,"pass":24,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"37c3dcc1555bc527fe0f853c1a08bae993bd541143c3b6f7edc360c0c3c26d8d"}
{"label":"import-146","command":["timeout","-k","10","900","node","--test","packages/cli/tests/limits-tokens.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g7dV","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.224,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"6dae4cd3607f44b07df6a5e6764276a2ef152b892f050340d6defd14a83b731e"}
{"label":"import-147","command":["timeout","-k","10","900","node","--test","packages/cli/tests/limits.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gLVw","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.442,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"efe051216bb6347423f556f8951c6b6c4adf9c266d8fde6fedfbebb3e678c17f"}
{"label":"import-148","command":["timeout","-k","10","900","node","--test","packages/cli/tests/mark-read.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gVQ4","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.266,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b90e024010c9a6fbded17306d01b78b2f5748167f9dd4fee20bc5775ef72de81"}
{"label":"import-149","command":["timeout","-k","10","900","node","--test","packages/cli/tests/names.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gJL7","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.297,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b8d4005cb4e0f1acbe89bc6427b952459b2b876f54c1ed031a558789b535e87e"}
{"label":"import-150","command":["timeout","-k","10","900","node","--test","packages/cli/tests/notifier.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gSos","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.033,"mutant":false,"tests":27,"pass":27,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c7156a9c99f99c3b51da2c73b728349f348dac6a0b0530bda96212a848014f7c"}
{"label":"import-151","command":["timeout","-k","10","900","node","--test","packages/cli/tests/optional-tracker.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/ggn7","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.413,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d09457d3034c683bc98639f04d83d5348815571d46d5c30cbe055aed5ceef3a7"}
{"label":"import-152","command":["timeout","-k","10","900","node","--test","packages/cli/tests/other-tree.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gclm","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.3,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"aa7be88cd823a44c8743159006f1d9b61072ebaa04935339d4a875d0997f903e"}
{"label":"import-153","command":["timeout","-k","10","900","node","--test","packages/cli/tests/processing-cli.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gvyI","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.367,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"55d67187192edfd5c929713af6a8f40025259429f36a444eb886fd26013a3135"}
{"label":"import-154","command":["timeout","-k","10","900","node","--test","packages/cli/tests/project-name-repo.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g3qR","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.431,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"9e8364d68d732dbcb9e518ff8dc1cb957d0d254c0a3821711df20e34f6427f07"}
{"label":"import-155","command":["timeout","-k","10","900","node","--test","packages/cli/tests/project.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gJK9","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.908,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"7014e206c70053c2eaeb89fa59b38781802e65d2982fee3855772dd9721285a6"}
{"label":"import-156","command":["timeout","-k","10","900","node","--test","packages/cli/tests/publish-socket.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gQ5m","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":11.807,"mutant":false,"tests":9,"pass":9,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"e20a380f9e0e0070d2598bd3ae85679f70f59c92e6f8cf1c7c840a0975c253b7"}
{"label":"import-157","command":["timeout","-k","10","900","node","--test","packages/cli/tests/reply-limits.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gR4L","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.167,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"9339298bbd5ebfb0e033d2b992c69f62c168e124e741bfc0de500c35b8ffc092"}
{"label":"import-158","command":["timeout","-k","10","900","node","--test","packages/cli/tests/revoke-window.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gHpa","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.868,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"774c1211e7dadeab526d34d50b143c1141ee9f85e3799b644734eeb78c8e9b6f"}
{"label":"import-159","command":["timeout","-k","10","900","node","--test","packages/cli/tests/session-clear.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gd9q","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":13.609,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"a47caf45da848c1bf1a8456eb89c213df981229dc0765362573ec82e6701b11c"}
{"label":"import-160","command":["timeout","-k","10","900","node","--test","packages/cli/tests/session-cli.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gXLB","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.323,"mutant":false,"tests":14,"pass":14,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"3d260701a0c4afd1d21effb5ca1db6cdb47803281bde2536853926f56a236955"}
{"label":"import-161","command":["timeout","-k","10","900","node","--test","packages/cli/tests/session-launch.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gPoX","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":12.34,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"9d077d5e2956b1f40de6abba79ebed6504cc61a3821754526a032231e8697271"}
{"label":"import-162","command":["timeout","-k","10","900","node","--test","packages/cli/tests/stack-copy.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gb3j","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":32.255,"mutant":false,"tests":18,"pass":18,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"a31fda44310b53fcbfbfb5ca037db8bf9209a0235ed951a911358c61c5f4d13b"}
{"label":"import-163","command":["timeout","-k","10","900","node","--test","packages/cli/tests/stack-instances.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gVU0","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":5.223,"mutant":false,"tests":24,"pass":24,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"baf388164839b10a5ea8c3e019d6b5095d7951657ee638784701848b69a160cd"}
{"label":"import-164","command":["timeout","-k","10","900","node","--test","packages/cli/tests/tester-http.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/geku","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.28,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d06f4abf2476d898d85533318fee23bdfe3fdc6012c40e809ae4f21e1d6e74bb"}
{"label":"import-165","command":["timeout","-k","10","900","node","--test","packages/cli/tests/tester-reads.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g7PM","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":5.141,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2f293f7b23b679733870b5d5d2f666570b56fa1335d5b94590046447433225c8"}
{"label":"import-166","command":["timeout","-k","10","900","node","--test","packages/cli/tests/tester-threads.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gAdD","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":12.373,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"6505ae90432cfcf6c2b74ed4c22ebe6ee1b26055b41f3fdada4e40c54e1124f9"}
{"label":"import-167","command":["timeout","-k","10","900","node","--test","packages/cli/tests/tester.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gx0E","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.628,"mutant":false,"tests":11,"pass":11,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"abadf2326205ea5ba1e617fd174018995de824d1552f308815e2bc9c3f71e4bc"}
{"label":"import-168","command":["timeout","-k","10","900","node","--test","packages/cli/tests/thread-cli.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gbFa","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":5.076,"mutant":false,"tests":11,"pass":11,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"fc7f5fadded9b52bcebcf80af32a54bfcb85c2a58608e261d839e8c91d473ce4"}
{"label":"import-169","command":["timeout","-k","10","900","node","--test","packages/cli/tests/thread-launch.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gQNn","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":36.824,"mutant":false,"tests":15,"pass":15,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"f4052bf907e300dae2a7d44f3e8b370849e879abf1de9f84e0c74138f41f2640"}
{"label":"import-170","command":["timeout","-k","10","900","node","--test","packages/cli/tests/thread-revoke.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gNtT","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.273,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2f66b678922916e9856a6ade3a4524c420d981f39548a6687df77cb95c660d40"}
{"label":"import-171","command":["timeout","-k","10","900","node","--test","packages/cli/tests/trackers-boot.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/giDk","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.097,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"dbb78cab0545fe2d18089c4510092562aa5bc16cdc3f1f95784719d8e2dda241"}
{"label":"import-172","command":["timeout","-k","10","900","node","--test","packages/cli/tests/transport.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g6h3","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.447,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"7b7a41c111670e869d5156d3714a33c7a4e7a675893cff4767c505b658ac0dc8"}
{"label":"import-173","command":["timeout","-k","10","900","node","--test","packages/cli/tests/usage.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gERb","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.44,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d39ae2e64f3e78a0d4bd7fc8d4c6f8f087ac80f0ba47d5dbd199d627d826e86f"}
{"label":"import-174","command":["timeout","-k","10","900","node","--test","packages/cli/tests/verbs.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gaL4","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":3.562,"mutant":false,"tests":9,"pass":9,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"6eafbcea30d6c03a2f8dd925ca6b801fb7f2a8475f3b70715ad8a5060f47f0f0"}
{"label":"import-175","command":["timeout","-k","10","900","node","--test","packages/harness/tests/bundle.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g8v2","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.276,"mutant":false,"tests":22,"pass":22,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"232cba86e5cf956c07e7ac3bce916899fd288db2ef252bf33041c54fa29f6e1b"}
{"label":"import-176","command":["timeout","-k","10","900","node","--test","packages/harness/tests/citation-runner.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g6h4","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":6.327,"mutant":false,"tests":21,"pass":21,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"ef0a3e5f582524e0f03a3a39b518356af2d180cefcaa64439c828dbfc9ab0555"}
{"label":"import-177","command":["timeout","-k","10","900","node","--test","packages/harness/tests/claude-gate.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gmnt","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.62,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2b7867d549382bd5943f9f828f7132743abd724b9d6a26f7e7647e5deac1086c"}
{"label":"import-178","command":["timeout","-k","10","900","node","--test","packages/harness/tests/claude-session.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gWex","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":8.983,"mutant":false,"tests":10,"pass":10,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"e97d2c71fb63346d736d85b37e1bae38708041a7e09b15cc5d64f44d5f87e592"}
{"label":"import-179","command":["timeout","-k","10","900","node","--test","packages/harness/tests/creative.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g7fD","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.349,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"0a08749c464113ccbc5207cc63ad3cb33ccd7d7af3ebdcb614106f14a38fa8af"}
{"label":"import-180","command":["timeout","-k","10","900","node","--test","packages/harness/tests/gate.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gLqE","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.177,"mutant":false,"tests":12,"pass":12,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"8d3cf0837ecb7d8c5be2a02c67fbe1fb1fbf0a7d75b8e79029a6a3530870353f"}
{"label":"import-181","command":["timeout","-k","10","900","node","--test","packages/harness/tests/git-tools.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gcPM","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.824,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"170299b738f35a5cbce8336dbf37ddd340045c9f12b0d86716dc9764ce692656"}
{"label":"import-183","command":["timeout","-k","10","900","node","--test","packages/harness/tests/mcp-server.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gruQ","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.352,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"fcbb8ff07441b7458fad73e8f0d2e8c81a37a184244403c46f0db51bcb579d6c"}
{"label":"import-184","command":["timeout","-k","10","900","node","--test","packages/harness/tests/pi-session.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gQR8","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":7.664,"mutant":false,"tests":10,"pass":10,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"21ef864f6c0608e398001beed596c711eaa16df9830be6e9948d23adaf7ae19b"}
{"label":"import-185","command":["timeout","-k","10","900","node","--test","packages/harness/tests/raise-domain.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gkno","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.289,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"258b03d95708255aaf9c53af130e80349d3fb7a15c412f5e99a552d38d273cf4"}
{"label":"import-186","command":["timeout","-k","10","900","node","--test","packages/harness/tests/runner.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gHpN","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":14.264,"mutant":false,"tests":40,"pass":40,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"6b2ed91f2cc0af529b15da7dd1ca38fc4f9024b8838f1ae948bb9fb61f52b1d4"}
{"label":"import-187","command":["timeout","-k","10","900","node","--test","packages/harness/tests/skills.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/ge6l","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.322,"mutant":false,"tests":10,"pass":10,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"a5eb44bb14feab35f8afff44467dd1ab4b6ccd95f0c20e99bd8165e02ab11e94"}
{"label":"import-188","command":["timeout","-k","10","900","node","--test","packages/harness/tests/spec-tools.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gqeF","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.392,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"25bef2391ffce43b2ad8c6159fb801bf371064b48998f5212b45043b78a65ab4"}
{"label":"import-189","command":["timeout","-k","10","900","node","--test","packages/harness/tests/tools.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gh6I","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.254,"mutant":false,"tests":23,"pass":23,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"032cd4df77581f65cc3d1e3487b542cc2568e40461f34cf345c9e3ccf224d2c0"}
{"label":"import-190","command":["timeout","-k","10","900","node","--test","packages/library/tests/guard.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gX5T","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.7,"mutant":false,"tests":11,"pass":11,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c5c5e1daabdcbc4830da5472dc584f3095874effa6ed00a5d752ef5a792f433a"}
{"label":"import-191","command":["timeout","-k","10","900","node","--test","packages/library/tests/index-build.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gDCo","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":4.794,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"6122712a2a10cd4fc7ad0f29e7581dc27e6d1e5daddb92dc3b9831ccd26c06b5"}
{"label":"import-192","command":["timeout","-k","10","900","node","--test","packages/library/tests/links.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gNyj","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.128,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"933818b92437600be0591b784675887f9240915167a6218d9bd5546737c0de1d"}
{"label":"import-193","command":["timeout","-k","10","900","node","--test","packages/library/tests/mapping.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gBnG","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.16,"mutant":false,"tests":16,"pass":16,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b97b350865814827ad8998f9a24ea1f65749b882dd10531eb79052268769f9d0"}
{"label":"import-194","command":["timeout","-k","10","900","node","--test","packages/library/tests/mirror.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gfP9","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":6.763,"mutant":false,"tests":16,"pass":16,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"ba91652dd7daa182d771e5f8d093769fa009494d0f4080fd697a423b8c8aff4c"}
{"label":"import-196","command":["timeout","-k","10","900","node","--test","packages/library/tests/reader.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gvmz","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.028,"mutant":false,"tests":14,"pass":14,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"5b335d4472ccc9aead596840a67909ccf96270c7ccf88e4ad2141eb5953de74c"}
{"label":"import-197","command":["timeout","-k","10","900","node","--test","packages/library/tests/render.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gfUA","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.211,"mutant":false,"tests":9,"pass":9,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"f95a831fa8ef95d90f50861d7ebf05fdedc4d3d68d1ea3dec1e17e9392befab9"}
{"label":"import-198","command":["timeout","-k","10","900","node","--test","packages/library/tests/scope.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gxAY","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.368,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"3935e31b852d0be272395f8d2af9816e8b8ee3bf75a088be39559e413d58fd1e"}
{"label":"import-199","command":["timeout","-k","10","900","node","--test","packages/library/tests/supporting.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gT0U","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.25,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"cfd46a3aaa0167b3adda75bb69095f6328de4cfd43bdb26ae4952e6867c6bf81"}
{"label":"import-200","command":["timeout","-k","10","900","node","--test","packages/library/tests/survey.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gQVP","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.764,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"a20f9ea4cd570def995d73d389f0610621f0198499e60c8f27ada2e952b22bb8"}
{"label":"import-201","command":["timeout","-k","10","900","node","--test","packages/library/tests/sync.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gGSr","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":6.838,"mutant":false,"tests":24,"pass":24,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"683e7b2ec581c2d72a6a3edc68913a7092a49c3ac5c15fe9dfa3062fc3d59fe9"}
{"label":"import-202","command":["timeout","-k","10","900","node","--test","packages/processing-control/tests/task.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gAOM","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.776,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"a9c5e79fa8bddcd222359c6b5fb5634ad170ad56babfe3971f22d8f1fbcaceb9"}
{"label":"import-203","command":["timeout","-k","10","900","node","--test","packages/seat/tests/sandbox.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gcfc","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":7.076,"mutant":false,"tests":10,"pass":10,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"9d9e237b00482d14c1173fcdf2ba0770d87c2e77e0a2d7f8b3631531d1fa5da2"}
{"label":"import-204","command":["timeout","-k","10","900","node","--test","packages/seat/tests/session.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gpBq","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.478,"mutant":false,"tests":13,"pass":13,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2ffb0ee5961f4611d6afde99fd99270dee783b7abde51c9038ee2087dc426c22"}
{"label":"import-205","command":["timeout","-k","10","900","node","--test","packages/tasks/tests/adapter.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/guN4","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.512,"mutant":false,"tests":8,"pass":8,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b0441401e2ab0e9593e6d55cca661366e7ee8b51850ac934bfca23de45d2a35a"}
{"label":"import-206","command":["timeout","-k","10","900","node","--test","packages/tasks/tests/comment-restart.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gyAw","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.45,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"599ad621c9d89dc1f200ad0e87eb1573e5ae7bfcc6ff9cddb9048855a9f8613f"}
{"label":"import-207","command":["timeout","-k","10","900","node","--test","packages/tasks/tests/fields.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gOij","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.617,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2d83b920f5f716537a69555f6bead6b99be1b3c64751305ec8de1a71cadeb56f"}
{"label":"import-208","command":["timeout","-k","10","900","node","--test","packages/tasks/tests/processing.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g72u","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.32,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"5d740844a654055345b9e7c69ed4d2a247cd932ad2a5a6fcf329c7801cbd0ad7"}
{"label":"import-209","command":["timeout","-k","10","900","node","--test","packages/tasks/tests/shapes.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gJAm","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.518,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"3811bcc866161d152d9460cb8bfef2faa9cd3e533de96f1b3f014403dd7fb51e"}
{"label":"import-210","command":["timeout","-k","10","900","node","--test","packages/tasks/tests/startup.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gGTN","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.541,"mutant":false,"tests":9,"pass":9,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b2c08b276e60a676346a7a7a96423939fc50fece24e84f7d31a141414ae9c65e"}
{"label":"import-211","command":["timeout","-k","10","900","node","--test","packages/tasks/tests/sync.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gccq","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.994,"mutant":false,"tests":11,"pass":11,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"7521b57b037d5dfd35e4e7f8b3e0f772e6f09e9a7f218eaa55a95b40798fb3cb"}
{"label":"import-212","command":["timeout","-k","10","900","node","--test","packages/tasks/tests/tree.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gKai","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.129,"mutant":false,"tests":19,"pass":19,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"035eba7993242c2797c236e2c7f5d41f9248d872984cbfd785bb596bd323721f"}
{"label":"import-213","command":["timeout","-k","10","900","node","--test","packages/tasks/tests/verbs.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gcgn","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.767,"mutant":false,"tests":31,"pass":31,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"27cd7e0bb4607ec39ededdc89e4afcb363698eee6dd31ddd5d5a6b2cbabd847b"}
{"label":"import-214","command":["timeout","-k","10","900","node","--test","packages/webui/tests/agents-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gtNR","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":17.433,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"e2c213130dbf80c125011ba8d45c016bfb347ebe1d21f1c64d1756e0db82d6f9"}
{"label":"import-215","command":["timeout","-k","10","900","node","--test","packages/webui/tests/agents.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gQRO","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.233,"mutant":false,"tests":9,"pass":9,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c94baa2f42b463dee93e00cf1f3b1e60b287f109debf3a5a5133a8363b992d3a"}
{"label":"import-216","command":["timeout","-k","10","900","node","--test","packages/webui/tests/assistant.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gCyc","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.233,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1a32bdca8137c6aff24e9eee5c19dcadfef1e3a5f0aab5a45c600cf39c29e56e"}
{"label":"import-217","command":["timeout","-k","10","900","node","--test","packages/webui/tests/board-held.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gPDU","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":10.78,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"fb532481a6401e7097d1b7fd8c858885988e37529779c7e989885dd0de21f7e9"}
{"label":"import-218","command":["timeout","-k","10","900","node","--test","packages/webui/tests/browser-edge.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gw0B","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.748,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"f23507b59a89ff056564e71cda5e73b275ebc4de3130956b9cf69615af5aebe0"}
{"label":"import-219","command":["timeout","-k","10","900","node","--test","packages/webui/tests/browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gZfS","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.398,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"08f605ea6cfe1ec7b0f9d1a951a359e2e0106892dc56567152ed569548bff757"}
{"label":"import-220","command":["timeout","-k","10","900","node","--test","packages/webui/tests/bus-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gjO2","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":3.795,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c03e5eaab52ea76d3b5ac1ccfbae6c25a2fab9f592aa45cd29bc6e22f3f45c3f"}
{"label":"import-221","command":["timeout","-k","10","900","node","--test","packages/webui/tests/bus.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g766","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":4.937,"mutant":false,"tests":10,"pass":10,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"703208aaab3751971784b6266b335c54f41048735650e92f40b6e8bd37ea9a6a"}
{"label":"import-222","command":["timeout","-k","10","900","node","--test","packages/webui/tests/channel-chat.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gyou","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.526,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"9dd425b57cb427c25265f7e1b4266cc9d9d09892d2de5ddf4c916635b66515c1"}
{"label":"import-223","command":["timeout","-k","10","900","node","--test","packages/webui/tests/chat-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g5ri","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":40.593,"mutant":false,"tests":19,"pass":19,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"4a751781c8e1b9c4e1bbe9e1767d5d897c3cbb09ac4db39ea25d13c276e947cd"}
{"label":"import-224","command":["timeout","-k","10","900","node","--test","packages/webui/tests/chat-instances.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gypj","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.248,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c43f61b93bbf092d23c0bfe9c6e85b76e4ded17b18d973c4a37832764df71f72"}
{"label":"import-225","command":["timeout","-k","10","900","node","--test","packages/webui/tests/chat-replies-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gDNY","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":8.751,"mutant":false,"tests":11,"pass":11,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"f919fe31839c0bc40d4860c4f4412480a1016267c00b292fead32b36098031d5"}
{"label":"import-226","command":["timeout","-k","10","900","node","--test","packages/webui/tests/chat-sessions-access.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g9LK","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":4.741,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"a4c4116cfd2a752d7efd2897430a9b2b052b6acf868c1ca8ce26b81ba9585812"}
{"label":"import-227","command":["timeout","-k","10","900","node","--test","packages/webui/tests/chat.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/go2w","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.849,"mutant":false,"tests":30,"pass":30,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"77d6c675d0a4534e84f4b2ce4eddf2135908dc5014469e74b87b6fdd3f63c130"}
{"label":"import-228","command":["timeout","-k","10","900","node","--test","packages/webui/tests/conversation.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/ga85","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":4.852,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"35d962e50a5a143e4dd8b816414c3044096d8907e807f50ca72eef81df9531ee"}
{"label":"import-229","command":["timeout","-k","10","900","node","--test","packages/webui/tests/decide-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gd1n","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":12.017,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"559586deeaa79f7f28185318bf29e7ea28b4536c60bddbfdcdd337850104820a"}
{"label":"import-230","command":["timeout","-k","10","900","node","--test","packages/webui/tests/decide-sso.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gTYk","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.998,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"f277b7937f563610c111f75d55917ba1a6474b0cbf7edcc417f66ca1db9e77a8"}
{"label":"import-231","command":["timeout","-k","10","900","node","--test","packages/webui/tests/decision-http.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gesP","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.149,"mutant":false,"tests":9,"pass":9,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1ae4314867f3da3d96bb8bd99bb9e4bb120610e4b4f76f266a4394d2c4cdac3d"}
{"label":"import-232","command":["timeout","-k","10","900","node","--test","packages/webui/tests/discord.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gROh","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.126,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d1da3a8a99ae68e4e2c704b993c9f4fac1502f60dc21502abadad75584e212f1"}
{"label":"import-233","command":["timeout","-k","10","900","node","--test","packages/webui/tests/docs-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gZtM","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.892,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b126c48278cbe8276b5a1459b14cf00d1047ec686a80a82dfe509169e4d8aa7c"}
{"label":"import-234","command":["timeout","-k","10","900","node","--test","packages/webui/tests/editor-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gJnO","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":23.444,"mutant":false,"tests":16,"pass":16,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1053f032713f4a82d05003347cb02c6db54f6c554d3d549608615e3dcc835c83"}
{"label":"import-235","command":["timeout","-k","10","900","node","--test","packages/webui/tests/editor.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gLje","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":6.017,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"a1b78738684b0e0049cc5731f55b67cc21d83c0bd117a20ee094efcefbc926b9"}
{"label":"import-236","command":["timeout","-k","10","900","node","--test","packages/webui/tests/granted-user.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gH8T","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":6.001,"mutant":false,"tests":19,"pass":19,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"7e778058c0b4dfc5a44b1c95d146e3628f1401f18e5ca68d0eb5a2af2357fe16"}
{"label":"import-237","command":["timeout","-k","10","900","node","--test","packages/webui/tests/history-return-flow.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gOZs","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":56.725,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1e74c166baa23c019edac72a0ce2735e7804112369ef6f6d12b4b30e0ed1a7a1"}
{"label":"import-238","command":["timeout","-k","10","900","node","--test","packages/webui/tests/instances-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/goix","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":3.608,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"20da30c92fc5b9149e84cd2547aceac366f5509e8efbeb346b700d6f8cacc18b"}
{"label":"import-239","command":["timeout","-k","10","900","node","--test","packages/webui/tests/instances.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gr2y","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.265,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"0b0782580df886f98f4428ad6f94d33fa2d37d89c58d12c152964b26786d48fe"}
{"label":"import-240","command":["timeout","-k","10","900","node","--test","packages/webui/tests/library-cli.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gGV8","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.868,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1e3617d918b4d7474e1acf9b5ad32732305aa86f8ad3044d488aac21f551cb4e"}
{"label":"import-241","command":["timeout","-k","10","900","node","--test","packages/webui/tests/library-routes.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gWxL","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.532,"mutant":false,"tests":13,"pass":13,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d9729aef19f819e8190e6fdc9dbb1d7c4061f2311598f3785678cc81fbaea30e"}
{"label":"import-242","command":["timeout","-k","10","900","node","--test","packages/webui/tests/library-status.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gurC","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.265,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"99e68ba123769f5df8b60d9d12546d113f9f1f18f27b26a82738f4ac670fc18f"}
{"label":"import-243","command":["timeout","-k","10","900","node","--test","packages/webui/tests/limits-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gq0e","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":4.598,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"4d3b961b33557106779e969bdfb9aa959e01462a521d5368d9e7e560a4bab19b"}
{"label":"import-244","command":["timeout","-k","10","900","node","--test","packages/webui/tests/limits-route.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gK8P","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.561,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2283f78868a29c6ebf37b0aaabc2fdfd84d0a381b3fd046d27902adf2710bfae"}
{"label":"import-245","command":["timeout","-k","10","900","node","--test","packages/webui/tests/messages.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gaaW","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":6.474,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"c2e137bf0cc8d12832a07cdb1f70f95dd3cc8ce34a500e6b0479f9d94bf4b300"}
{"label":"import-246","command":["timeout","-k","10","900","node","--test","packages/webui/tests/pinned-copy.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gG1M","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":7.925,"mutant":false,"tests":10,"pass":10,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"ebeca41fa26f042b9e877ddc3315254a60f98b947fb3eb9ccf098c4d455117b4"}
{"label":"import-247","command":["timeout","-k","10","900","node","--test","packages/webui/tests/preview.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gHU1","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.186,"mutant":false,"tests":11,"pass":11,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"4f0064f793bb36dbdf294fe77d67530afc0aea22f01b847aa1d00c3844469119"}
{"label":"import-248","command":["timeout","-k","10","900","node","--test","packages/webui/tests/processing-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gkgO","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":8.863,"mutant":false,"tests":9,"pass":9,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"816a885bb9c45578982d7e43326cb77215e8cb29f557aa06e0efc39a26297e05"}
{"label":"import-249","command":["timeout","-k","10","900","node","--test","packages/webui/tests/processing.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gMEO","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.36,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"d0d8b5325152e1919b5838bfd1b83c4551b52d69c60f07d0921eb95af6391222"}
{"label":"import-250","command":["timeout","-k","10","900","node","--test","packages/webui/tests/project-file.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g0K1","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.316,"mutant":false,"tests":10,"pass":10,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"52754ce30568e4d818370c3558342ab23d1292a67f692c1ded6a4d4b4121a029"}
{"label":"import-251","command":["timeout","-k","10","900","node","--test","packages/webui/tests/project-name-repo.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gRNU","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.132,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"324df0e70027674e99303723c75b02402d6ae43aefc73192e6c723644952fe98"}
{"label":"import-252","command":["timeout","-k","10","900","node","--test","packages/webui/tests/proof-cli.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gUya","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.557,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"9d0379c0dac670ea3b54331afee0d9da9c4c76a9c62315bd7cdf33458708b9b1"}
{"label":"import-253","command":["timeout","-k","10","900","node","--test","packages/webui/tests/proof.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gw3P","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.23,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"4b564ec494d8631518bd5e0a9dafce3492cc3655e90a82f12bc994fb0f48f017"}
{"label":"import-254","command":["timeout","-k","10","900","node","--test","packages/webui/tests/reads.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gDRG","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.251,"mutant":false,"tests":11,"pass":11,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"acd0a107da0270ad86ea4e75d1af8089f2541e1aa1c1613c10c35f47fcc38dea"}
{"label":"import-255","command":["timeout","-k","10","900","node","--test","packages/webui/tests/relaunch.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gDNA","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.062,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b717bc82d68a804092878b6f68c73d970519d5dde6d9170a5cc3f417cd108c66"}
{"label":"import-256","command":["timeout","-k","10","900","node","--test","packages/webui/tests/return-flow.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/go3N","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":21.066,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"61fa95c4b8c802668f2b144954e8785c1a5d6e5f8d511646c61ae51abfcf899c"}
{"label":"import-257","command":["timeout","-k","10","900","node","--test","packages/webui/tests/room-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/geyH","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":8.015,"mutant":false,"tests":9,"pass":9,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"65cd71916ae9b8b6a8d47a0175d5cca96ed6c3d93d65ea334338cc651c3529e7"}
{"label":"import-258","command":["timeout","-k","10","900","node","--test","packages/webui/tests/room-http.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gfgT","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.284,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"32d8f63c7cbf6a67265e3ebb08eeda185061a94d2674c9e79da3e5ec9348ffaa"}
{"label":"import-259","command":["timeout","-k","10","900","node","--test","packages/webui/tests/routes-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gqwx","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.226,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"915d721ef9ebb84e963f021957955ce02a7603a048fde2ba61bd7f87e70137ae"}
{"label":"import-260","command":["timeout","-k","10","900","node","--test","packages/webui/tests/routes.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gULI","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.499,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"f5cb0cbb1428122e4a826ebf11a304123af5e33696dc7c3c6e9a40105a7f59b5"}
{"label":"import-261","command":["timeout","-k","10","900","node","--test","packages/webui/tests/send-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gV7T","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":14.209,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b76ab6c25710827dc2e6c7231b3aa82259cce1a88174a33f83a45c251ff4e8cf"}
{"label":"import-262","command":["timeout","-k","10","900","node","--test","packages/webui/tests/send.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gbPv","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.077,"mutant":false,"tests":13,"pass":13,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"51a759891344d96c63d9d554c0b0a0cb541acca3d3d139170805723a90f83201"}
{"label":"import-263","command":["timeout","-k","10","900","node","--test","packages/webui/tests/serve.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g9AU","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.835,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"38c0c60b3b161bcd2cc3642f551fafd755e7ff57aa3a1f9cfc4329f0333ade9d"}
{"label":"import-264","command":["timeout","-k","10","900","node","--test","packages/webui/tests/settings-form.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gp5I","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":5.17,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"305e2081fd87ffad6bae81ef0ea0a7732f9208a0fcd6ea73c8604de13af86210"}
{"label":"import-265","command":["timeout","-k","10","900","node","--test","packages/webui/tests/settings-write.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gQmT","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.2,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"604a5dfa84401b569a004ca35182684d0aefda4da8a34c833953c15d8047c238"}
{"label":"import-266","command":["timeout","-k","10","900","node","--test","packages/webui/tests/shell.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/goIy","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":8.597,"mutant":false,"tests":5,"pass":5,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"aa8226cc8ad92136f875f3a976de37dfc1b0ab30a3c24f2861c34fcd6355d002"}
{"label":"import-267","command":["timeout","-k","10","900","node","--test","packages/webui/tests/sso-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gxVE","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":8.875,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"37b3e8ed9a38b6a66600fee9386b5a414d6179a8630349c6f695075c1fb29806"}
{"label":"import-268","command":["timeout","-k","10","900","node","--test","packages/webui/tests/sso.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gsiS","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":8.274,"mutant":false,"tests":28,"pass":28,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2f286ac4644f8789c2ede5261362f4c57bcf02b84671e9b6c2f5c2994368bfbe"}
{"label":"import-269","command":["timeout","-k","10","900","node","--test","packages/webui/tests/tester-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g7am","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":4.164,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"92727a4aee749943dc100d1b843f848ef75bbeeda29d693217882c71368c4d42"}
{"label":"import-270","command":["timeout","-k","10","900","node","--test","packages/webui/tests/tester-cli.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gz1T","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":11.668,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"1c952ee8767467b1d1d4306e566b9b0f863d68215d30ae8ed3ab46d75ef46e8a"}
{"label":"import-271","command":["timeout","-k","10","900","node","--test","packages/webui/tests/tester-listener.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g99a","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":2.294,"mutant":false,"tests":11,"pass":11,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"b07648c44f522c5fa789c03634f248f63e8d312e9b93b7edd90d7951145d5419"}
{"label":"import-272","command":["timeout","-k","10","900","node","--test","packages/webui/tests/tester-socket.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gbnC","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.19,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"61704160b72bcd47d1e4166371e3ff65b148b7ef02b785f9427ef133d5ecdfb6"}
{"label":"import-273","command":["timeout","-k","10","900","node","--test","packages/webui/tests/thread-claims-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gGv0","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":5.008,"mutant":false,"tests":6,"pass":6,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"9d3d03d3fc2a108a5e1da2c8e153db2a21bc1e08b207698e9c8eb242dff9905a"}
{"label":"import-274","command":["timeout","-k","10","900","node","--test","packages/webui/tests/thread-claims.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g09J","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.423,"mutant":false,"tests":4,"pass":4,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"2b031497a6d9d4b18d215d28bc04de28fe26a800c5a7d54af8052aab35eee3be"}
{"label":"import-275","command":["timeout","-k","10","900","node","--test","packages/webui/tests/thread-sharing.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gmhU","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":3.736,"mutant":false,"tests":7,"pass":7,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"9f7b307edc31c95fac9ce71f39ea02466a40a6d80c70d9db91f433a07e19adb7"}
{"label":"import-276","command":["timeout","-k","10","900","node","--test","packages/webui/tests/usage-browser.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/g1rW","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":1.032,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"819697b7c5cb3918c007b9fe57dd3f101c79afb9b5656905e5e1e1b0bc82de9f"}
{"label":"import-277","command":["timeout","-k","10","900","node","--test","packages/webui/tests/usage.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gHnS","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.238,"mutant":false,"tests":2,"pass":2,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"555da950dacca5dc85db7172b50aaef5e50e726c6e30bb66c770c0c38d58ab76"}
{"label":"import-278","command":["timeout","-k","10","900","node","--test","packages/webui/tests/user-option-swap.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gx24","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":0.38,"mutant":false,"tests":1,"pass":1,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"20bcc3985f5808a2d7f8daa02c5438fbac81c5163c117fde07bea3f46e8fa5b3"}
{"label":"import-279","command":["timeout","-k","10","900","node","--test","packages/webui/tests/views.test.mjs"],"TMPDIR":"/mnt/storage/scratch/tmp/gHJv","start_nice":19,"observed_timeout_nice":19,"exit":0,"seconds":5.483,"mutant":false,"tests":3,"pass":3,"fail":0,"cancelled":0,"skipped":0,"todo":0,"log_sha256":"dd69767c233e8eaeeb85ddaaf274380bbb6df73ec6cc7aaaadc6336053e4ddd8"}
```
Exact mutant edits (temporary only, all restored):
```text
{"mutant":"M1","edits":[["const SCOPES = Object.freeze(['canon', 'playground', 'supporting']);","const SCOPES = Object.freeze(['canon', 'playground']);"]],"path":"packages/library/src/query.mjs","oracle":"supporting find/search/get","killed":true,"restored_clean":true}
{"mutant":"M2","edits":[["file.scope !== requestedScope || ",""]],"path":"packages/library/src/query.mjs","oracle":"get without scope returns null","killed":true,"restored_clean":true}
{"mutant":"M3","edits":[["import { listTree } from './reader.mjs';","import { listTree, headCommit } from './reader.mjs';"],["listTree(source.repo, index.commit)","listTree(source.repo, await headCommit(source.repo))"]],"path":"packages/library/src/query.mjs","oracle":"each get blob equals its served tree object","killed":true,"restored_clean":true}
{"mutant":"M4","edits":[["}).sort((a, b) => SCOPE_RANK[index.files.get(a.path).scope] - SCOPE_RANK[index.files.get(b.path).scope]);","});"]],"path":"packages/library/src/query.mjs","oracle":"full outgoing and incoming links stay in scope order","killed":true,"restored_clean":true}
{"mutant":"M5","edits":[["return other !== undefined && sees(index.mapping, universe, other);","return other !== undefined && other.scope === requestedScope && sees(index.mapping, universe, other);"]],"path":"packages/library/src/query.mjs","oracle":"full outgoing and incoming links stay in scope order","killed":true,"restored_clean":true}
{"mutant":"M6","edits":[["file.scope === scope && sees(index.mapping, universe, file)","file.scope === scope"],["other !== undefined && sees(index.mapping, universe, other)","other !== undefined"]],"path":"packages/library/src/query.mjs","oracle":"full outgoing and incoming links stay in scope order","killed":true,"restored_clean":true}
{"mutant":"M7","edits":[["scopeArg(scope, MANUSCRIPT_SCOPES)","scopeArg(scope, SCOPES)"]],"path":"packages/library/src/query.mjs","oracle":"manuscript still refuses supporting","killed":true,"restored_clean":true}
{"mutant":"M8","edits":[["'library.get': { method: 'get', fields: ['universe', 'path', 'scope', 'from', 'links_from']","'library.get': { method: 'get', fields: ['universe', 'path', 'from', 'links_from']"]],"path":"packages/bus/src/broker.mjs","oracle":"broker forwards supporting scope","killed":true,"restored_clean":true}
{"mutant":"M9","edits":[["const manuscriptScope = str(\"canon by default; playground is opt-in\", { enum: [\"canon\", \"playground\"] });","const manuscriptScope = str(\"canon by default; playground is opt-in\", { enum: [\"canon\", \"playground\", \"supporting\"] });"]],"path":"packages/harness/src/tools.mjs","oracle":"scope schemas expand only find/search/get","killed":true,"restored_clean":true}
```
Sweep summary:
```text
{
"root_count": 289,
"matches": []
}
```
## sage-4310 — row329 landed-base rebase, 2026-10-24
Branch della/row284-r4 rebased the six commits in 95d4991d2..315e9c84f
onto origin/refactor 9e2689dffb24c9881724b67db982bc87d527157f. Old branch
della/row284-r2 and its crash handoff remain unchanged. No conflict hunks
occurred: Git replayed all six commits automatically; range-diff marks all
six patches equal. Thus no manual conflict resolution was required.
Inspected broker.mjs against the new base: the sole row284 delta adds scope
to library.get fields. Row329 proxy verbs and all other base broker code
are retained unchanged. No optimization or review-note behavior change added.
The new eight-path seal is stored outside Git in
/mnt/storage/scratch/della-row284-r2-evidence/manifest-r4.txt with sibling
manifest-r4.blobs.txt and range-diff-r4.txt. Base, final candidate tip and
manifest digest are in seal-r4.txt beside them (avoids a self-referential
BUILD hash). Prior test/mutant results above apply to the prior base only;
no test, mutant, Node, syntax check, dependency install or queue command
was run for this rebase. Explicit sage-4310 authorizes this untested push.
Worker runs and Sage landing gate wait for CLEAR after Webby delta review.
-473
View File
@@ -1,473 +0,0 @@
# Row 225 (C2-10b) Console chat: replies, citations, write notices, status line
Owner: Morgana, from sage-3582 (18:53Z 10-23). Base: origin/refactor 45dca69f6. Branch: morgana/row225.
Brief: docs/plans/2026-10-20_case2-rows.md, C2-10b. Design: agents/gosalyn/work/case2/DESIGN.md 7.4,
5.2 (the reply schema and the check result) and the write notice and `library.revert` (about line 286).
## Ruling on the dependency gap (sage-3591)
225 builds against the design contracts. `renderReply` stays pure, and the caller supplies the answers
it can't know. The revert route proxies to the bus verb and shows the refusal code until the verb
exists. Landing order: 225 lands after 217 (C2-06), not after 288 (C2-02). Sage adds `after 217` to
row 225. Before 288 lands, the Revert button gets the bus's refusal and shows its code, as the brief
allows.
## A1. The check result I assume (to 217, Launchpad)
The broker stores one check result with each agent-to-human message the guard passes. The Console reads
it on the message row that `/api/chat/threads/<id>/messages` returns, under the key `check`:
```json
{
"check": {
"citations": [
{ "scope": "canon", "agent": null },
{ "scope": "supporting", "agent": "acme/scribe" },
{ "scope": "web", "agent": null }
]
}
}
```
- `check` is `null` or absent on a message the guard didn't check: a human's message, a free-text reply,
a notice, or a message from before 217.
- `check.citations` has one entry per entry of the body's `citations`, in the same order.
- `scope` is one of `canon`, `playground`, `supporting` and `web`. A url cite is `web`.
- `agent` is the `Mosaic-Agent` trailer value, `<business>/<instance>`, from
`git log -1 --format=%(trailers:key=Mosaic-Agent,valueonly) <commit> -- <path>`, or `null` when the
file's last commit at `commit` carries none. A url cite has `agent: null`. The Console shows the
agent-written label when `agent` is a nonempty string, and names the agent.
The Console trusts nothing in the body for scope or label. A cite with no matching check entry renders
with no badge and no label. It doesn't fall back to a scope it worked out itself.
If 217 uses other names, I change mine to theirs before either of us pushes (sage-3591 item 1).
## A2. The revert verb I assume (to 288, Honker)
- Verb: `library.revert`. A human verb (design M4): from an agent session it refuses `human-required`,
like `library.status` (`broker.mjs:5133`).
- Args: `{ "project": <business project name>, "commit": <40 lowercase hex> }`. The design writes
`library.revert {commit}`. `project` is added to match the other library verbs, and like theirs it is the
key of `business.projects` (`mirror.mjs:31`), which is the chat project's `repo` link, not its UUID. Both are required, and no other key
is allowed (`invalid-request`), as the other library verbs check with `keys(args, ...)`.
- Result: `{ "project", "path", "reverted": <the commit given>, "commit": <the new commit> }`.
- Refusal codes the Console shows by name:
- `library-revert-not-agent`: `commit` has no `Mosaic-Agent` trailer for this business, or isn't
reachable from the served commit.
- `stale-base`: a later commit changed that path.
- `human-required`, `invalid-request`, `project-not-configured`.
- Before 288 lands, the bus refuses the verb (expected `unknown-verb`, `broker.mjs:6578`), and the Console
shows that code.
- HTTP status in the Console (`packages/webui/src/bus.mjs` `busStatus`): `stale-base` and
`library-revert-not-agent` map to 409. Every other code keeps the existing mapping.
## A3. The status line
`GET /api/library/status?project=<id>` proxies `library.status {project}` through the existing
`libraryStatus` option. `cli.mjs:110` already passes that option, but `startServer` doesn't read it.
The status line shows:
- the served commit (7 characters) and its age;
- `library-diverged` when the sync state names it;
- the fetch error code;
- the reply limits in force, and the keys that fell back;
- the count of R-problems, linking to the list.
It reads the fields `readSyncState` returns at the base (`packages/library/src/mirror.mjs:232`). It shows
any field 217 adds (the limits) only when present.
## A4. "Changed since" (ruled sage-3596)
Sage ruled that 217 supplies `last`. On a `thread.messages` row that carries `check`, each path cite's
entry gets `last`, the file's last commit at the served tip, read when the message is read. When `last`
is absent the Console marks nothing changed, and a test pins that.
One more field is needed, raised in morgana-0200. The cited `commit` is a library commit, not the
file's own last commit, so a cite made at a commit that didn't touch the file would differ from `last`
while the file is unchanged. I asked 217 to also store `file`, the file's last commit at the cited
commit. That's `%H` from the same `git log -1 <commit> -- <path>` call that reads the trailer, so it
costs no extra git call. The Console marks a cite changed when both `file` and `last` are 40-hex and
differ. The cited commit is reachable from the served one (5.2), so `file` is an ancestor of `last`,
and differing means newer. A missing or malformed `file` or `last` marks nothing.
The entry the Console reads, in full: `{ scope, agent, file?, last? }`.
## A5. `no-cited-answer` retires
`renderItems` and its `NOTICES` (`no-cited-answer`, `no-answer`, `turn-failed`) go. 217 sends the
runner's fixed texts as plain bodies (design 5.2, "Runner texts"), and renderReply shows those as free
text. Design 7.4 names no other notice than `library-write`, so nothing is lost (sage-3596 item 3).
## Files
Both deviations below were accepted in sage-3596 and are named in the manifest for Dewey. The brief owns these:
- `packages/library/src/render.mjs`: `renderReply` replaces `renderItems`.
- `packages/library/src/index.mjs`: the export.
- `packages/library/README.md`: the section.
- `packages/library/tests/render.test.mjs`.
It also owns `bus.js`, its stylesheet, `serve.mjs` (only the two routes) and new webui tests. Two
deviations, both recorded here:
- The chat view's message list is `packages/webui/src/public/chat.js:85` (`window.MosaicChat`), not
`bus.js`. The reply, notice and Revert rendering goes in `chat.js` and `chat.css`. The status line
goes in the chat thread view, so it is also in `chat.js`.
- `packages/webui/src/console-bus.mjs` and `cli.mjs` each get one `libraryRevert` line, beside the
existing `libraryStatus` wiring.
## Overlap with row 220 (C2-10a, Researcher, 3ef6da90d)
220 changes one line each in the webui tests discord.test.mjs, fixture.mjs, history-fixture.mjs,
relaunch.test.mjs and return-flow.test.mjs. Its other paths are in control-board, conversation, discord
and business. 225 doesn't touch those five files or those packages. Its webui tests are new files.
## Handoff to Fethry (mos-1501, Q245)
The row moved to Fethry (Codex, fethry/row225). Everything below is **untested**: no suite or single file
has run on it, since a run needs Sage's CLEAR. Each changed file passes `node --check`.
Done in the handoff commit:
- `render.mjs` `renderReply(body, {check, changed, name})`; index export; README section;
`render.test.mjs` rewritten. `renderItems` is gone from every package.
- `serve.mjs`: `/render.mjs` static entry (owner and user file maps), `GET /api/library/status`
(one `project` query, answer must name that project), `POST /api/library/revert` (save's boundary,
strict `{project, commit}`, refusal shows the code, lost or unusable answer is `outcome-unknown`,
never retried). Both are nulled for a granted user, and `userRoute` keeps them owner-only. The tester
listener refuses `libraryRevert`.
- `bus.mjs`: `library-revert-not-agent: 409`. That re-pins `packages/webui/src/bus.mjs` in
`packages/bus/tests/channel-proof.test.mjs`, with a comment line, as row 254 did. It's a third deviation,
in another package's test.
- `console-bus.mjs` and `cli.mjs`: `libraryRevert`, beside `libraryStatus`.
- `chat.js`: dynamic `import('/render.mjs')` (CSP is `script-src 'self'`); body text until it loads.
Cites with a scope badge, the agent-written label, "changed since" from `file`/`last`, links only for
https with `rel="noopener noreferrer"`. A notice gets a Revert button behind `confirm()`. The library
status line goes under the thread heading.
- `chat.css`: cite, badge, notice and status styles.
- New tests: `packages/webui/tests/library-routes.test.mjs` and
`packages/webui/tests/chat-replies-browser.test.mjs`. 220's five files are untouched.
Decisions made in the build:
- The library name is the chat project's `repo`. A project with no repo reads no status and its
Revert does nothing.
- These codes hide the status line: `project-not-declared`, `library-mapping-invalid`,
`project-not-configured`, `not-configured` and `owner-only`.
- Otherwise every code-repo thread, and every granted user, would show "unavailable".
- Cost: a broken library mapping also hides the line. `library.status` from the CLI still shows it.
- "Age" is the time since `lastFetch` ("fetched 5 min ago"), not the served commit's age, which the
status doesn't carry.
- The limits fields are assumed to be `replyLimits {requireCitation, citationsPerReply}` and
`replyLimitsFallback [keys]`, and are shown only when present. **Not agreed with 217.** Confirm with
Beakley and rename.
- Correction (dewey-0937 B1, sage-3669): shape alone cannot authenticate a notice. An agent in a
library business could name another agent's real reachable commit while claiming a fake path,
misleading the human into reverting a different file. The renderer must require no stored check
result before treating a notice-shaped body as a broker notice. A checked body stays plain text.
Pre-217 messages have no check, so a notice-shaped legacy body still renders as a notice; Sage
accepts that residual in this test system with no real agent history and owns the later positive
broker-marker follow-up after10-27. No marker or row288 dependency is added by225.
Left:
1. Get CLEAR and run the webui and library suites, `channel-proof.test.mjs`, and the two new files whole.
The browser test's selectors and waits have never run.
2. Agree the limits field names with 217 (Beakley).
3. Granted-user R6 G5 (`granted-user.test.mjs:252`) lists owner verbs by hand. Add `library.revert`
once 288 lands.
4. BUILD.md: the mutant list and the mos-1275 timeout plan.
5. The manifest names the three deviations: chat.js and chat.css in place of bus.js, the console-bus and
cli lines, and the channel-proof re-pin.
## Fethry continuation (2026-10-23, Q245)
Owner: Fethry, thread 14f80e3c-ace7-4793-a577-e1275ca09b0b. Branch fethry/row225.
This file carries Morgana's complete BUILD.md above unchanged, recovered from 9a131e956
(base 45dca69f6). Morgana stopped editing 225 at that handoff. Issue #1726; Dewey reviews.
Sage owns queue moves, test slots, gate and landing. No Node/tests until Sage CLEAR
(sage-3611); commits/pushes before the gate are explicitly Untested. No credential files read.
### Confirmed interfaces and rulings
- Beakley beakley-0004 confirms ordered check.citations {scope, agent, file, last}; a missing
or malformed file/last means no changed marker. Fetched age accurately describes lastFetch.
- Beakley's concrete library.status shape is replyLimits:
{requireCitation, citationsPerReply, fallback: [keys], problem: 'reply-limits-unreadable' | null}.
The inherited top-level replyLimitsFallback assumption is superseded. Show nested fallback and
problem, with a browser regression test for each. No broker or policy change in this row.
- Bubba bubba-0002 confirms A2 and the exact broker notice shape. fethry-0005 forwards the
project-key correction: project is chat project.repo, not the chat UUID.
- Keep the inherited ordinary-code-repo/granted-user status hiding behavior for now, but a
library-mapping-invalid error should stay visible: hiding an invalid mapping hides diagnosis.
Confirm this local UI choice through regression coverage and tell Sage/Dewey.
### Continuation plan and acceptance evidence
Spec: docs/plans/2026-10-20_case2-rows.md C2-10b; design 5.2 and 7.4;
standing rulings sage-3591, sage-3596 and sage-3611. Implement inline in this existing isolated
T3 worktree; use the existing candidate and tests, never restart the implementation.
1. Static audit the handoff against the contracts and inherited tests. Add failing coverage for
nested limits fallback/problem, wrong-project revert receipts, missing file/last and invalid
mapping visibility. Existing tests require Mos approval through Sage before further edits.
2. On Sage CLEAR, run the new files whole and library renderer tests with per-test deadlines;
record RED before changing uncovered behavior. Fix only demonstrated local defects. Run
targeted GREEN, then the full relevant suites only within the authorized slot.
3. Record exact commands, timings and output paths. Prepare mutant kill list below; run only on
CLEAR, using isolated copies so the candidate is never temporarily changed for mutation.
4. Freeze a manifest containing all source/test/doc changes and all three handoff deviations.
Push only fethry/*, as additional commits. Send exact head/results to Dewey and Sage; cc Mos
on pushes/blockers. Sage performs queue moves, gate and landing. No merge/release/live changes.
### Existing test changes requiring Mos OK through Sage (mos-1272)
Diff against 45dca69f6, inherited from Morgana 9a131e956:
| File | Added | Removed | Reason |
| --- | ---: | ---: | --- |
| packages/library/tests/render.test.mjs | 80 | 66 | Brief requires retiring renderItems and replacing its tests with renderReply coverage |
| packages/bus/tests/channel-proof.test.mjs | 3 | 1 | bus.mjs gains library-revert-not-agent:409; refresh that source hash and document why |
No further edits to these files pending approval. No edits to row220's five tests.
The new webui test files are additions against the row base.
### Timeout plan (mos-1275)
Every Node test run uses --test-concurrency=1 and --test-timeout=30000, under an outer timeout.
New library/route files: outer 120s each; new browser file: outer 240s. Full library and channel-proof:
outer 180s; full webui: outer 900s, MOSAIC_REQUIRE_EDITOR_BUILD=1. Full webui requires its own
packages/webui npm ci per agents/README.md and Sage CLEAR. Output redirects to an evidence log;
inspect tail, failure names and summary, never claim green from an exit alone. A timeout is a
failed run: stop, report the exact command/phase/last output, and diagnose before retrying.
Sage's gate owns every scripts/test-*.sh; no implicit slot or test authority from this plan.
### Mutant plan (pending CLEAR)
- M1: drop a path badge or the supporting label; cite browser assertions must fail.
- M2: allow http/javascript links; renderer and browser safe-link assertions must fail.
- M3: compare cited library commit to last instead of file to last, or treat a missing file/last as
changed; changed-since assertions must fail, including same-file/different-library-commit.
- M4: ignore nested fallback/problem; status browser tests must fail.
- M5: remove a revert fence (send, identity, exact Origin or Fetch Metadata), strict key/commit
validation or wrong-project receipt validation; route tests must fail with zero unexpected calls.
- M6: retry a refused/unknown revert; single-call route/browser assertions must fail.
- M7: remove granted-user library-route fence; owner-only route coverage must fail.
Progress: handoff and interfaces recovered; candidate untested. No completion claim.
Static evidence correction: the first pushed patch artifact used ordinary context lines, whose
single-space blank context lines make git diff --check report whitespace in the artifact. Regenerated
inherited-old-tests.patch with --unified=0; it is the same exact two-file change, applicable with
git apply --unidiff-zero. No source or existing test changed for this correction.
Mutation kit authored at mutants.py (11 concrete mutations across M1-M7), Python AST parse only.
It archives the committed packages plus their tracked fixture dependencies into disposable snapshots,
links the existing dependency install read-only in practice (tests do not install), enforces exactly
one mutation anchor and requires an assertion failure for a kill. It records source hashes before
and after. It has not run; anchors for the planned fixes intentionally require those fixes first.
No Node/tests/build/browser work has run in Fethry's session pending Sage CLEAR.
### Old-test approval and preservation condition (mos-1510, sage-3623)
Mos approves render.test.mjs +80/-66 and channel-proof.test.mjs +3/-1 exactly. No additional edits
are permitted to either file without a new Mos OK through Sage. The condition on the renderer:
- The old malformed-body fixed-line behavior no longer applies. Design 5.2 now says any body
outside the cited-object schema is free text whose text is the whole body. Rejecting it into a
fixed line would hide human/free-text/older messages and the four fixed runner texts. The new
render.test.mjs tests “free text renders as itself with no citations” and “a body without the
reply or notice shape is free text: the whole body, no citations” explicitly cover this new rule.
- The old no-options path-badge behavior still applies. The new render.test.mjs test “without a
check result a path cite has no badge, no label and is never changed” covers it, and the browser
test checks an unchecked path cite has no badge/label. No path inference fallback was added.
Dewey checks both against the frozen old-test delta. The two numstats remain 80/66 and 3/1.
### Test slot and shared protocol (sage-3623, beakley-0006)
Targeted lane A slot is planned around 19:47Z, after Gosalyn's 226 run and Sage's queue gap.
Wait for explicit CLEAR; the scheduled time alone grants nothing. Hard stop 20:00Z for Sage's
226 gate. Boyd's lane B bus/cli/business work is disjoint and does not count as a busy lane A.
The three requested files are the library renderer test and the two new webui files, whole/serial.
Beakley confirms reply-protocol.mjs exports only GUARD_CODES (the seven guard refusal codes) and
FIXED_TEXTS {empty, failed, uncited, tooLong}. It has no scope/notice constants or validator.
renderReply defines none of those codes or runner texts: it already renders the fixed bodies as free
text. It therefore needs no protocol import and no extra browser module route (beakley-0006).
Do not add unused imports or redefine those shared codes/texts later.
2026-10-23T19:21:07Z dependency update (bubba-0006): Bubba's first static row288 push is
origin/bubba/row288 c867cada9, explicitly Untested with no Node run. A2 library.revert uses the
business.projects key; broker notice retains the exact agreed body. Bubba adds librarySave only
in console-bus.mjs/cli.mjs and leaves libraryRevert wiring owned by 225. Preserve both callback
changes when Sage integrates. No dependency merge or test run performed here; 225 still lands
after 217 and may show unknown-verb until 288 lands.
## T1 targeted RED to GREEN (sage-3641, 2026-10-23T19:23Z)
All three files ran whole and serial, with TMPDIR=/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2,
--test-concurrency=1 --test-timeout=30000 and outer timeout -k 10 (120s renderer, 120s routes,
240s browser). Initial renderer 9/0 (0.105s), routes 9/3 (0.226s), browser 5/3 (5.630s).
Final renderer 9/0 (0.105s), routes 12/0 (0.212s), browser 8/0 (5.284s). Logs in evidence/.
Production fixes after RED:
- Reject a library.revert receipt with the wrong project as outcome-unknown; no retry.
- Read replyLimits.fallback and display replyLimits.problem per beakley-0004/0006.
- Show library-mapping-invalid in the status line; its hidden-status branch is covered by the
browser refusal matrix once the nested-limits assertion passes. This diagnosis was made statically;
the first RED exits that matrix at the preceding fallback assertion, so visibility itself has only
a GREEN run, unlike the fallback/problem and wrong-project fixes.
Three assertion corrections in NEW handoff files (not pre-existing tests, per sage-3647):
1. library-routes.test.mjs: POST /api/library/status in preview mode expects 403, because the existing
global preview write fence runs before the GET-only route and returns read-only. The route remains
GET-only and no callback fires on that POST. Do not weaken or bypass the fence to get 405.
2. library-routes.test.mjs: project-not-declared expects 400, which busStatus already maps at the
row base. The inherited 502 expectation contradicted that existing map. No production map change.
3. chat-replies-browser.test.mjs: coerce the whole “img element OR window.injected” expression to a
Boolean. With no injected node/code the old expression returns undefined, not false. Assertions
still require neither DOM injection nor executed handler. All preceding cite/link assertions pass.
Frozen pre-existing test deltas still render.test.mjs 80/66 and channel-proof.test.mjs 3/1.
No Node/Chromium process with this slot TMPDIR remained after targeted tests (checked /proc).
Expanded CLEAR sage-3647: full library, then channel-proof whole, then isolated mutants that fit;
still hard stop 19:38Z. No full webui suite, npm ci or editor build authorized in this window.
Expanded-slot evidence: full library 81/0 (9.179s), channel-proof 2/0 (0.573s), whole/serial,
--test-timeout=30000, outer timeout -k 10 180, same TMPDIR. Logs copied to evidence/.
To exercise invalid-mapping visibility independently, added its own browser case and temporarily
restored only the hidden-mapping branch. Whole browser RED: 7/2 (8.810s); the direct assertion sees
null instead of the diagnostic, and the refusal-matrix wait also fails. Finally restored the exact
corrected source before the next run. This supersedes the earlier visibility “GREEN only” note.
Final targeted coverage before mutation: browser 9/0 (6014.970ms runner duration), routes 13/0.
Added an independent send-off test with a configured libraryRevert callback: absence of --send
still refuses with zero callback calls. This makes the send fence independently mutation-testable.
The kit now has 14 concrete mutations, including agent-label, unreadable-limits problem and send.
Each isolated target is restored to its candidate SHA256, and worktree hashes are checked before
continuing to the next mutant (sage-3647). Runner uses TAP so assertion failures can be distinguished
from timeouts/import/process failures. Full webui/build and the integration gate remain pending.
Dependency update beakley-0008: row217 first push origin/beakley/row217 c25f5b8da is UNTESTED,
continued from Launchpad e25ef0373. No dependency merge here; its protocol/module mount belongs to
217 and renderReply needs none of those codes/texts. Integration acceptance remains Sage's gate.
First isolated-mutant attempt stopped honestly at M3-wrong-commit: M1 badge, M1 agent label and M2
https-only link mutants were killed by assertions; M3 failed via the browser's expected-state wait,
so the strict runner did NOT count it as a kill. Every target restored/hash-checked and candidate
hashes unchanged. Logs retained in evidence/mutants-attempt1/. Corrected the new browser test to wait
for a completed repaint (independent of desired output), then assert changed-marker count. Whole
browser baseline remains 9/0. No production change. Re-run the whole isolated kit against this test.
## T1 complete: isolated mutants and source-review handoff
sage-3647 final kit on source candidate 507901277: 14/14 assertion kills, no timeout/import/process
failure counted. Each mutant matched one anchor, restored the target SHA256 and checked the three
candidate source hashes before the next. evidence/mutants-final/summary.json records every result;
final worktreeUnchanged=true. Logs name the failing tests, including M3's direct assertion after the
refresh wait correction. /proc inspection found no remaining Node/Chromium process with the slot
TMPDIR. Returned lane A to Sage as fethry-0016 at about19:29Z, before the19:38Z hard stop.
Checked-in TAP display copies remove trailing whitespace so the diff is clean. Their raw SHA256
values are recorded in evidence/raw-log-provenance.json; original byte-for-byte logs remain under
/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2. This changes evidence presentation only, never tests.
MANIFEST.md and manifest.r1.sha256 freeze the13 changed package files for Dewey. All three handoff
deviations and Mos1510's two preservation conditions are explicit. Old-test numstats remain80/66 and3/1.
No full webui/npm ci/build was run; Sage explicitly reserved it for a later window. Full package/script
and dependency integration gate remains required before landing. No queue move, merge or live action.
## Dewey static CHANGES B1, N1 (dewey-0937; ruling sage-3669)
Static verification confirms renderReply currently takes exact notice shape as sufficient provenance.
The previous handoff explanation above is corrected: a reachable agent commit can be reverted while
its body claims another path. Sage directs a row225 fix, not a broker marker in288.
Regression tests authored first in the NEW chat-replies-browser.test.mjs:
- A checked agent notice-shaped body names the genuine notice's commit with an invented delete path.
It must render the whole body as plain text and have no notice styling or Revert, while the real
unchecked broker notice remains actionable.
- A403 owner-only receipt with no sent field must say Not reverted (owner-only), exactly one POST.
Planned B1 production change after RED: pure renderReply recognizes a notice only when options.check
is null/absent; chat already supplies the stored check. This protects the shared renderer rather than
only one DOM caller. Planned mutant: remove that check condition; browser B1 must assert-fail.
N1 is small: treat a4xx refusal with a code as definite without requiring a sent field, preserving
401 sign-out and503/network outcome-unknown behavior. Add its missing-condition mutant too.
No pre-existing test edit is needed; keep approved80/66 and3/1. No production fixes or Node runs yet.
Test window: after217 in T3, roughly20:25-20:55Z (sage-3663/3669). Wait for explicit CLEAR; then
worktree-local packages/webui npm ci, editor build, whole webui suite with
MOSAIC_REQUIRE_EDITOR_BUILD=1, and Chromium cleanup sweep. Stay out of library/bus/cli runs during
Researcher's216 lane. Ask Sage to include the browser RED/GREEN and two new mutants before that
whole-suite run. T1 slot was already returned; no further tests under its old CLEAR.
## Round2 recovery and review fixes (2026-10-24, sage-4119/4120)
CLEAR resumed this row after217/285/286 landed; new base963303403. Created fethry/row225-r2 from
7590cf633; original fethry/row225 and all published history retained. Rebased all nine commits.
Conflicts resolved in chat.js/serve.mjs by preserving sharing, threadWrites, chatGrants and225's
render/status/revert callbacks. Both append-only logs retain963303403 byte-for-byte as their prefix.
The channel-proof conflict retains239's comments/transport changes and re-pins the merged bus.mjs
hash4ebf6c2b5d71c23d85cbde83f69aa671058dc2195c9ae4bdda624f6940729d1b; delta still3/1.
render.test.mjs remains80/66 relative the new base. No published commit amended or force-pushed.
The first local conflict-resolution attempt hit a script assertion; aborted that unfinished rebase
and restarted before any publication, then checked all conflict markers were gone.
Canonical start op fethry-225-start by fethry completed rev3946 (briefed→in-progress), no timeout.
Removed our canonical node_modules symlink only; root and packages/webui now each have local
npm ci --ignore-scripts --no-audit --no-fund installs (mos1575). TMPDIR from mktemp is
/mnt/storage/scratch/tmp/rbCdM2. MOSAIC_REQUIRE_EDITOR_BUILD=1 throughout gate.
Whole NEW browser file first RED8/3,6755.602ms: B1 forged notice fails its own whole-body assertion
and the existing one-Revert count (2vs1); N1 sees outcome-unknown instead of definite refusal.
Placed all three as expected first-run failures (fethry0021); no old test red. Then changed
renderReply to recognize a notice only when options.check is null/absent, and chat's4xx coded
refusal path to be definite even without sent.401 still signs out;503/network remains unknown.
Whole-file GREEN11/0,7244.663ms. Approved existing renderer test is unchanged, including unchecked
notice text. The pre217 no-check residual remains accepted under sage3669, with positive-marker
follow-up owned by Sage after10-27. No288 dependency/marker introduced.
Next: whole webui/library/bus and channel-proof, then all14 original mutants and new B1/N1 mutants;
all serialized under timeout -k10 with per-test30s deadlines. Any old-test red or second red must
reach Sage before changing it, per sage4119. Full gate results and replacement manifest to follow.
Round2 worktree gate GREEN (sage4119): editor-build0/0.288s, webui442/0/274.272s,
library149/0/14.981s, bus981/0/125.727s, whole channel-proof2/0/0.503s. No skip/cancel in any suite.
Each command runs serially with TMPDIR=/mnt/storage/scratch/tmp/rbCdM2,
MOSAIC_REQUIRE_EDITOR_BUILD=1, --test-concurrency=1 --test-timeout=30000, outer timeout -k10
(editor120s, webui900s, library300s, bus1200s, channel120s). Exact commands/timings recorded in
evidence/r2/gate-summary.json. Root/webui installs and editor source/assets are worktree-local;
generated editor.js/editor.css/BUILD.json stayed identical to the base. Raw scratch logs retained;
display copies trim trailing whitespace, with raw SHA256 provenance in evidence/r2/raw-provenance.json.
No old-test red and no unexpected second red; no additional existing-test edits. All requested source
suites passed before committing this B1/N1 source candidate. Isolated16-mutant run follows (14 originals
plus B1 and N1); no final mutation claim yet.
## Round2 final mutation evidence and slot return
Sourcec010dfd85; all16 unique mutants now have clean assertion kills (14 originals plus B1 and N1).
Initial run produced6 clean kills, then M3-missing-file exited124 at the240s outer deadline. Its
new-file status-case after-hook failed at30643ms; the intended missing-file assertion1!=0 did fail,
but the process never exited normally. NOT counted as a kill. Reported to Sage as fethry0022 before
any change, verified13 candidate hashes/restoration and no scratch-owned leftover processes.
Retried only that mutant unchanged, plus the remaining9; all10 clean assertion kills. No source,
test or helper edit, no weakened deadline/kill criterion.17 attempts total;1 timeout retained and
excluded,16 clean unique kills. Final selected logs have zero cancellations/skips and no hook/timeout
failures. Both attempt sets and combined result are in evidence/r2/.
Final sweep at2026-10-24T15:02:21Z found no scratch-owned Node/Chromium descendants, no signals needed.
Both dependency roots are real local directories, not symlinks. All13 package pins reverified.
manifest.r2.sha256 file digest:517af41b26cd44abe4a103a048cac8ec3a4fd2a9dc0f2f3f74b5699af7289d64.
MANIFEST.r2.md describes the B1/N1/rebase delta, preserves the accepted pre217 residual, and names
this timeout/retry honestly. Original packet, old source branch and evidence retained.
Requested worktree gate: webui442/0, library149/0, bus981/0, channel-proof2/0, editor-build exit0;
new review browser RED8/3→GREEN11/0; isolated16/16 clean unique kills. Existing-test deltas unchanged
at80/66 and3/1 relative963303403. No old-test failure. No queue move after the owner start, no merge,
release, deployment or real library write/revert. Ready to return the slot and send Dewey the new
branch pin/manifest delta; his formal record and Sage's integration/landing remain separate gates.
-67
View File
@@ -1,67 +0,0 @@
# Row 225 review packet — C2-10b (#1726)
Owner Fethry (14f80e3c), reviewer Dewey (84fb346c). Base 45dca69f6.
Source candidate 507901277 continues Morgana 66f7becf2 and 9a131e956; no rewritten history.
Status: targeted tests and full library green; full webui/build and Sage's full gate still pending.
This packet requests source/manifest review, not landing or a full-green claim.
## Behavior and contracts
The Console shows reply text and citations with path/line/quote, scope and agent-written labels,
marks a changed file only with valid differing check.file/check.last, links only https URLs, shows
write/delete notices and explicit Revert results, and displays library status, fetch age, divergence,
fetch errors, nested replyLimits metadata and R-problems. Invalid library mappings remain visible.
Revert validates {project,commit}, preserves refusal codes and reports uncertain/wrong-project
receipts as outcome-unknown without retry. The project is chat project.repo (business.projects key).
A1-A5 are in BUILD.md. Dependency contracts: row217 ordered check.citations and nested replyLimits;
row288 A2 revert result/notice. No dependency merge in this candidate. Landing order is 217 then225;
unknown-verb is expected until288 lands. Beakley's GUARD_CODES/FIXED_TEXTS need no renderer import:
renderReply defines neither and renders those fixed bodies as free text.
## Frozen implementation and tests
manifest.r1.sha256 freezes the 13 changed package paths, including the two approved existing-test
changes. Check from repository root with `sha256sum -c agents/fethry/work/queue-225/manifest.r1.sha256`.
All other changed files are BUILD/session records, handoff/approval evidence and this review packet.
No role, policy, schema, secret, live instance, deployment or queue change is included.
Three departures from the brief, carried from Morgana's handoff:
1. Chat rendering/status live in public/chat.js and chat.css, where the message list is, instead of
bus.js and its stylesheet (sage-3596). serve.mjs serves the same pure render.mjs module to owner
and granted-user pages; no duplicated browser renderer and no generated asset.
2. console-bus.mjs and cli.mjs wire libraryRevert beside libraryStatus (sage-3596). --send still
independently gates Revert. Preserve row288's separate librarySave wiring at integration.
3. webui/src/bus.mjs maps library-revert-not-agent to409; bus/tests/channel-proof.test.mjs re-pins
only that source's hash and documents why. Mos read and approved this exact +3/-1 (mos-1510).
Existing-test authority: Mos1510 via Sage3623 approves render.test.mjs +80/-66 and channel-proof +3/-1.
Both exact numstats are unchanged. The malformed-body fixed-line rule is superseded by design5.2's
whole-body free text, covered by two replacement renderer tests. The old no-options path-badge rule
is retained and covered by the replacement test plus unchecked-cite browser coverage. BUILD.md
explains these two preservation conditions and the three new-file assertion corrections in detail.
## Verification and remaining gate
Evidence logs are under evidence/; commands, deadlines, failures and corrections are in BUILD.md.
Targeted whole-file tests: renderer9/0, routes13/0, browser9/0. Full library81/0, channel-proof2/0.
No skips/cancellations. Invalid-mapping visibility also has an independent RED then GREEN.
All 14 isolated mutants were killed by assertions on source candidate507901277; each mutation
matched one anchor, restored its source hash, and verified unchanged candidate hashes before the next
mutation. Summary: evidence/mutants-final/summary.json. The first attempt stopped at an expected-state
wait (not counted as a kill), then the new browser test was improved and the whole kit rerun.
Raw logs remain under the scratch root; checked-in display copies trim trailing whitespace and record
raw digests in evidence/raw-log-provenance.json.
Before landing, Sage still runs full webui with MOSAIC_REQUIRE_EDITOR_BUILD=1 after the worktree-local
webui npm ci, every applicable package/script suite and integration against217. No full webui/build
in T1 (sage-3647). Dewey approval and Sage's gate/landing remain required; queue moves belong to Sage.
Static audit: the channel-proof source pin matches webui bus.mjs; no hash pin of bus.js, serve.mjs
or library render.mjs was found. packages' only remaining renderItems match is an explanatory comment
in the frozen replacement test; no runtime export, import or call remains. No no-cited-answer match.
Review focus: stored check metadata versus untrusted body, missing/malformed file/last, https-only
links and inert hostile text, Revert authority/receipt uncertainty, async route/sign-out isolation,
and status diagnostics without owner transport leakage to a granted user.
@@ -1,64 +0,0 @@
# Row225 round2 — C2-10b (#1726), Dewey B1/N1 delta
Owner Fethry14f80e3c; reviewer Dewey84fb346c. New base963303403.
Branch fethry/row225-r2; source candidatec010dfd85. Original fethry/row225 is untouched.
This replaces the pending round1 source packet at94128f73f; old packet/evidence remain historical.
## Delta for Dewey (dewey0937/0939, sage3669/4119)
- B1: renderReply recognizes the exact notice shape only when options.check is null or absent.
An ordinary checked agent body shaped as a notice is whole-body free text, with no notice styling
or Revert. New browser coverage for a forged delete path naming another agent's genuine commit
went RED, then GREEN; genuine unchecked broker notice remains actionable. The existing renderer
test “a write notice renders its fixed line” is unchanged. README documents the condition.
- N1: a coded4xx is shown as Not reverted even if sent is absent.403 owner-only is definite;
401 still signs out,503/network remain outcome-unknown and no request is retried. Separate browser
case went RED then GREEN. No route, policy, broker marker or row288 dependency was added.
- Accepted residual (sage3669): pre217 history carries no check, so a notice-shaped old body still
renders as a notice. Sage accepts this test-system residual with no real agent history and owns a
positive broker-marker follow-up after10-27. This condition is not a positive provenance marker.
- Rebase: retained landed thread sharing/threadWrites/chatGrants, new library supporting/query/guard/
push exports, row239 transport behavior and both append-only log histories. The handoff commit's
three source conflicts combine those changes with225; other package commits replay unchanged.
- channel-proof re-pin now matches merged webui bus.mjs4ebf6c2b5d71c23d85cbde83f69aa671058dc2195c9ae4bdda624f6940729d1b.
Relative the new base its delta is still exactly3/1; renderer test remains exactly80/66 (mos1510).
No additional existing test changes. Approved preservation conditions are in BUILD.md.
## Frozen package manifest
manifest.r2.sha256 freezes exactly the13 changed package paths relative963303403; verify from repo
root with `sha256sum -c agents/fethry/work/queue-225/manifest.r2.sha256`. The manifest's SHA256 is sent
with the final pushed pin. Source remains the tested c010dfd85; later commits are evidence/records only.
The three accepted brief departures remain: chat.js/chat.css instead of bus.js/styles, libraryRevert
wiring in console-bus.mjs/cli.mjs, and the bus.mjs409 map plus channel-proof pin. Serving the pure
/render.mjs module to both page types remains the same. No dependency protocol constants are
redefined: renderReply has no guard codes/fixed texts to import from217's reply-protocol.mjs.
No generated editor file, role, policy, schema, queue-data file or live-state file is in the delta.
## Verification
Root and packages/webui each used worktree-local npm ci --ignore-scripts --no-audit --no-fund.
No canonical dependency link. MOSAIC_REQUIRE_EDITOR_BUILD=1; TMPDIR=/mnt/storage/scratch/tmp/rbCdM2.
Every command is serial under timeout -k10, Node suites use --test-timeout=30000.
- New browser whole-file RED8/3 (B1 own assertion, one-Revert count and N1), then GREEN11/0.
- Editor build: exit0; generated editor.js/editor.css/BUILD.json match the base.
- Whole webui442/0, library149/0, bus981/0, channel-proof2/0; zero skipped/cancelled.
- All16 unique isolated mutants have clean assertion kills on c010dfd85:14 original plus B1/N1.
Six initial clean kills, then M3-missing-file timed out (exit124, not counted) with an unrelated
status-case after-hook failure. The intended M3 assertion also failed, but the process stayed alive.
Reported to Sage as fethry0022 before any change; retried that exact mutant unchanged and ran the
remaining nine. All ten completed with clean kills. No source, test or helper edit for the retry.
Both attempt sets are retained;17 attempts total,16 unique clean kills,1 timeout attempt excluded.
Combined receipt: evidence/r2/mutants-combined.json. All candidate hashes unchanged/restored.
- Final scratch-owned Node/Chromium sweep found zero processes; no signals needed. Dependency roots
are real local directories. Receipt: evidence/r2/cleanup.json.
Exact commands/timings and raw log digests: evidence/r2/gate-summary.json and raw-provenance.json.
Raw logs remain in the unique scratch root; checked-in display copies trim trailing whitespace only.
No old-test failure occurred. The only unexpected later result was the recorded mutation cleanup
timeout above; it was reported before an unchanged retry. No test/helper was patched around it.
Dewey's B1 review and formal record remain pending; Sage owns integration/landing and any broader
scripts gate. No force push, merge, deployment, real library write/revert or release action occurred.
@@ -1,64 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 704.129155
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 690.249337
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 595.036289
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 627.082447
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 787.799722
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 587.311743
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 618.209773
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 633.838649
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 619.313248
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 9
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6014.970062
@@ -1,64 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 636.096036
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 741.239029
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 568.879998
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 641.929005
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 870.041985
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 648.87451
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 566.725897
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 611.150846
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 618.488891
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 9
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6014.364529
@@ -1,16 +0,0 @@
✔ chat replies: free text, cites with badges, the agent label, changed since and safe links (583.234335ms)
✔ chat replies: a write notice reads as its line with a Revert; a refused revert shows its code (634.71741ms)
✔ chat replies: a read-only Console shows the notice with Revert disabled (574.836149ms)
✔ chat status line: served commit and age, divergence, fetch error and the problems one click away (607.74749ms)
✔ chat status line: limits when the status carries them, no problems, and refusals (861.034669ms)
✔ chat status line: a project with no repository link reads no library status (611.433469ms)
✔ chat status line: unreadable reply limits show their problem and both fallback keys (606.380675ms)
✔ chat replies: unchanged file at a different library commit and incomplete checks stay unmarked (650.947719ms)
ℹ tests 8
ℹ suites 0
ℹ pass 8
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 5251.735356
@@ -1,78 +0,0 @@
✖ chat replies: free text, cites with badges, the agent label, changed since and safe links (980.914799ms)
✔ chat replies: a write notice reads as its line with a Revert; a refused revert shows its code (753.988771ms)
✔ chat replies: a read-only Console shows the notice with Revert disabled (672.814814ms)
✔ chat status line: served commit and age, divergence, fetch error and the problems one click away (622.859977ms)
✖ chat status line: limits when the status carries them, no problems, and refusals (583.956229ms)
✔ chat status line: a project with no repository link reads no library status (635.758222ms)
✖ chat status line: unreadable reply limits show their problem and both fallback keys (581.636121ms)
✔ chat replies: unchanged file at a different library commit and incomplete checks stay unmarked (653.788881ms)
ℹ tests 8
ℹ suites 0
ℹ pass 5
ℹ fail 3
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 5597.371605
✖ failing tests:
test at packages/webui/tests/chat-replies-browser.test.mjs:81:1
✖ chat replies: free text, cites with badges, the agent label, changed since and safe links (980.914799ms)
AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:
+ actual - expected
+ undefined
- false
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/chat-replies-browser.test.mjs:102:10)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async Test.run (node:internal/test_runner/test:1409:7)
at async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3) {
generatedMessage: true,
code: 'ERR_ASSERTION',
actual: undefined,
expected: false,
operator: 'strictEqual',
diff: 'simple'
}
test at packages/webui/tests/chat-replies-browser.test.mjs:152:1
✖ chat status line: limits when the status carries them, no problems, and refusals (583.956229ms)
AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:
+ actual - expected
+ 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · no problems'
- 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · limits fell back: citationsPerReply · no problems'
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/chat-replies-browser.test.mjs:156:10)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
generatedMessage: true,
code: 'ERR_ASSERTION',
actual: 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · no problems',
expected: 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · limits fell back: citationsPerReply · no problems',
operator: 'strictEqual',
diff: 'simple'
}
test at packages/webui/tests/chat-replies-browser.test.mjs:173:1
✖ chat status line: unreadable reply limits show their problem and both fallback keys (581.636121ms)
AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:
+ actual - expected
+ 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · no problems'
- 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · reply-limits-unreadable · no problems'
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/chat-replies-browser.test.mjs:179:10)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
generatedMessage: true,
code: 'ERR_ASSERTION',
actual: 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · no problems',
expected: 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · reply-limits-unreadable · no problems',
operator: 'strictEqual',
diff: 'simple'
}
@@ -1,22 +0,0 @@
TAP version 13
# Subtest: channel conversion preserves the four proof/transport byte baselines and modules cannot import a proof caller
ok 1 - channel conversion preserves the four proof/transport byte baselines and modules cannot import a proof caller
---
duration_ms: 4.280459
type: 'test'
...
# Subtest: channel recovery still requires the same shim path and rejects an absent or forged proof
ok 2 - channel recovery still requires the same shim path and rejects an absent or forged proof
---
duration_ms: 413.032186
type: 'test'
...
1..2
# tests 2
# suites 0
# pass 2
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 539.602759
@@ -1,496 +0,0 @@
TAP version 13
# Subtest: resolver step 1: a path from the repo root, with or without .md
ok 1 - resolver step 1: a path from the repo root, with or without .md
---
duration_ms: 1.051208
type: 'test'
...
# Subtest: resolver step 2: the same path with vaultPrefix/ stripped
ok 2 - resolver step 2: the same path with vaultPrefix/ stripped
---
duration_ms: 0.164795
type: 'test'
...
# Subtest: resolver step 3: a path relative to the linking file, never above the repo root
ok 3 - resolver step 3: a path relative to the linking file, never above the repo root
---
duration_ms: 0.192765
type: 'test'
...
# Subtest: resolver step 4: a base name that matches exactly one indexed file
ok 4 - resolver step 4: a base name that matches exactly one indexed file
---
duration_ms: 0.201611
type: 'test'
...
# Subtest: a link into another of her repos resolves to nothing
ok 5 - a link into another of her repos resolves to nothing
---
duration_ms: 0.130282
type: 'test'
...
# Subtest: wikilink forms, embeds, and links skipped inside code
ok 6 - wikilink forms, embeds, and links skipped inside code
---
duration_ms: 1.445011
type: 'test'
...
# Subtest: only a body embed whose target has an extension other than .md, in any case, is an attachment
ok 7 - only a body embed whose target has an extension other than .md, in any case, is an attachment
---
duration_ms: 0.25003
type: 'test'
...
# Subtest: the fixture mapping checks and comes back frozen
ok 8 - the fixture mapping checks and comes back frozen
---
duration_ms: 1.772928
type: 'test'
...
# Subtest: C2-01c: a prefix inside or holding another entry's book refuses library-playground-other-universe
ok 9 - C2-01c: a prefix inside or holding another entry's book refuses library-playground-other-universe
---
duration_ms: 0.735312
type: 'test'
...
# Subtest: C2-01c: a prefix equal to a book folder, or holding its own, refuses library-mapping-invalid
ok 10 - C2-01c: a prefix equal to a book folder, or holding its own, refuses library-mapping-invalid
---
duration_ms: 0.532498
type: 'test'
...
# Subtest: C2-01c: universe-level prefixes lie outside every book, in a plain universe and in a hybrid with no books
ok 11 - C2-01c: universe-level prefixes lie outside every book, in a plain universe and in a hybrid with no books
---
duration_ms: 0.668173
type: 'test'
...
# Subtest: C2-01c: a draft takes kind, name and playground only, and comes back frozen with books []
ok 12 - C2-01c: a draft takes kind, name and playground only, and comes back frozen with books []
---
duration_ms: 1.032507
type: 'test'
...
# Subtest: no playground prefix holds another, and no book folder holds another
ok 13 - no playground prefix holds another, and no book folder holds another
---
duration_ms: 0.507943
type: 'test'
...
# Subtest: shape refusals: kind, remote, branch, unknown keys, types, manuscript, folder names
ok 14 - shape refusals: kind, remote, branch, unknown keys, types, manuscript, folder names
---
duration_ms: 0.740368
type: 'test'
...
# Subtest: C2-03a sage-2021: user is optional, kept when given, and must be a plain account name
ok 15 - C2-03a sage-2021: user is optional, kept when given, and must be a plain account name
---
duration_ms: 0.659277
type: 'test'
...
# Subtest: a hybrid universe is a shape the query code can take (1.4), with sources that must exist
ok 16 - a hybrid universe is a shape the query code can take (1.4), with sources that must exist
---
duration_ms: 0.695117
type: 'test'
...
# Subtest: a caller-supplied fail receives the code, as business file loading will pass it (C2-04)
ok 17 - a caller-supplied fail receives the code, as business file loading will pass it (C2-04)
---
duration_ms: 0.392362
type: 'test'
...
# Subtest: scope comes from the path alone (design 1.2)
ok 18 - scope comes from the path alone (design 1.2)
---
duration_ms: 0.466406
type: 'test'
...
# Subtest: C2-04 mirror: exact default path, bare without checkout or remote, and idempotent initialization
ok 19 - C2-04 mirror: exact default path, bare without checkout or remote, and idempotent initialization
---
duration_ms: 46.645994
type: 'test'
...
# Subtest: C2-04 mirror: simultaneous creators publish one intact mirror and leave no staging paths
ok 20 - C2-04 mirror: simultaneous creators publish one intact mirror and leave no staging paths
---
duration_ms: 32.763959
type: 'test'
...
# Subtest: C2-04 mirror: skipped publication accepts both coreutils statuses without removing the winner
ok 21 - C2-04 mirror: skipped publication accepts both coreutils statuses without removing the winner
---
duration_ms: 109.751094
type: 'test'
...
# Subtest: C2-04 mirror: preserve occupied directories and reject symlink ancestors and code overlaps
ok 22 - C2-04 mirror: preserve occupied directories and reject symlink ancestors and code overlaps
---
duration_ms: 20.129293
type: 'test'
...
# Subtest: C2-04 mirror: existing metadata accepts only bare Git plus state and the precreated lock
ok 23 - C2-04 mirror: existing metadata accepts only bare Git plus state and the precreated lock
---
duration_ms: 24.021555
type: 'test'
...
# Subtest: C2-04 state: missing state is empty only while the served ref is absent
ok 24 - C2-04 state: missing state is empty only while the served ref is absent
---
duration_ms: 37.436349
type: 'test'
...
# Subtest: C2-04 state: valid problems and sync metadata return no content and change no state bytes
ok 25 - C2-04 state: valid problems and sync metadata return no content and change no state bytes
---
duration_ms: 37.681315
type: 'test'
...
# Subtest: C2-04 state: strict keys, types, times, branch, commit and fixed R messages fail closed
ok 26 - C2-04 state: strict keys, types, times, branch, commit and fixed R messages fail closed
---
duration_ms: 105.483341
type: 'test'
...
# Subtest: C2-04 state: symlink, hardlink, non-private state and missing lock refuse without replacement
ok 27 - C2-04 state: symlink, hardlink, non-private state and missing lock refuse without replacement
---
duration_ms: 29.562786
type: 'test'
...
# Subtest: C2-04 file: served commit, not HEAD or a caller commit, owns the exact returned text
ok 28 - C2-04 file: served commit, not HEAD or a caller commit, owns the exact returned text
---
duration_ms: 74.057232
type: 'test'
...
# Subtest: C2-04 file: R1, R2 and R7 exclusions and never-synced mirrors cannot return file bodies
ok 29 - C2-04 file: R1, R2 and R7 exclusions and never-synced mirrors cannot return file bodies
---
duration_ms: 80.573844
type: 'test'
...
# Subtest: C2-04 lock: a first-sync and fast-forward reader wait for a consistent pair across processes
ok 30 - C2-04 lock: a first-sync and fast-forward reader wait for a consistent pair across processes
---
duration_ms: 253.247948
type: 'test'
...
# Subtest: C2-04 lock: same-process waits, timeout code, callback expiry and throw release
ok 31 - C2-04 lock: same-process waits, timeout code, callback expiry and throw release
---
duration_ms: 5031.462795
type: 'test'
...
# Subtest: C2-04 lock: owner death releases the kernel lock without replacing its file
ok 32 - C2-04 lock: owner death releases the kernel lock without replacing its file
---
duration_ms: 61.533295
type: 'test'
...
# Subtest: C2-04 lock: a missing flock binary becomes a handled refusal
ok 33 - C2-04 lock: a missing flock binary becomes a handled refusal
---
duration_ms: 57.176644
type: 'test'
...
# Subtest: C2-04 lock: an unawaited scoped read drains before the lock is released
ok 34 - C2-04 lock: an unawaited scoped read drains before the lock is released
---
duration_ms: 22.766874
type: 'test'
...
# Subtest: the fixture reads clean: every resolver step, appears_in and relationships wikilinks indexed
ok 35 - the fixture reads clean: every resolver step, appears_in and relationships wikilinks indexed
---
duration_ms: 33.888061
type: 'test'
...
# Subtest: R1: executables, symlinks, gitlinks, blobs over 1 MiB and non-UTF-8 text are not indexed
ok 36 - R1: executables, symlinks, gitlinks, blobs over 1 MiB and non-UTF-8 text are not indexed
---
duration_ms: 68.951498
type: 'test'
...
# Subtest: R2: unmapped paths are reported and not indexed
ok 37 - R2: unmapped paths are reported and not indexed
---
duration_ms: 25.70771
type: 'test'
...
# Subtest: R3: front matter not fully parsed stays raw, with the line where parsing stopped
ok 38 - R3: front matter not fully parsed stays raw, with the line where parsing stopped
---
duration_ms: 26.059427
type: 'test'
...
# Subtest: front matter forms the reader accepts and refuses
ok 39 - front matter forms the reader accepts and refuses
---
duration_ms: 0.448293
type: 'test'
...
# Subtest: R4: a link to no file, to more than one, or into another repo is reported and not followed
ok 40 - R4: a link to no file, to more than one, or into another repo is reported and not followed
---
duration_ms: 26.225692
type: 'test'
...
# Subtest: a block list link carries its item line, a scalar or flow link its key line, and problems follow
ok 41 - a block list link carries its item line, a scalar or flow link its key line, and problems follow
---
duration_ms: 22.565103
type: 'test'
...
# Subtest: an unresolved attachment embed gives no problem; a link or front matter value to one is R4; a note embed resolves
ok 42 - an unresolved attachment embed gives no problem; a link or front matter value to one is R4; a note embed resolves
---
duration_ms: 20.903777
type: 'test'
...
# Subtest: an indexed Dr.Quinn.md resolves as a body link, a block list link and an embed
ok 43 - an indexed Dr.Quinn.md resolves as a body link, a block list link and an embed
---
duration_ms: 25.42747
type: 'test'
...
# Subtest: R5: a canon file that refers into the playground is reported, and the link still goes by path
ok 44 - R5: a canon file that refers into the playground is reported, and the link still goes by path
---
duration_ms: 27.37119
type: 'test'
...
# Subtest: R6: a canon file that refers into another universe is reported; a hybrid may refer into its sources
ok 45 - R6: a canon file that refers into another universe is reported; a hybrid may refer into its sources
---
duration_ms: 30.585458
type: 'test'
...
# Subtest: R7: two paths that differ only in case are both left out
ok 46 - R7: two paths that differ only in case are both left out
---
duration_ms: 40.709509
type: 'test'
...
# Subtest: the reader reads the commit, never the working tree, and refuses a bad commit id
ok 47 - the reader reads the commit, never the working tree, and refuses a bad commit id
---
duration_ms: 33.579454
type: 'test'
...
# Subtest: a bare mirror reads the same as the clone
ok 48 - a bare mirror reads the same as the clone
---
duration_ms: 38.368686
type: 'test'
...
# Subtest: free text renders as itself with no citations
ok 49 - free text renders as itself with no citations
---
duration_ms: 1.571777
type: 'test'
...
# Subtest: a cited reply renders its text, then each cite with the badge from the check result
ok 50 - a cited reply renders its text, then each cite with the badge from the check result
---
duration_ms: 0.537429
type: 'test'
...
# Subtest: a parsed body renders as its string does
ok 51 - a parsed body renders as its string does
---
duration_ms: 0.304068
type: 'test'
...
# Subtest: without a check result a path cite has no badge, no label and is never changed
ok 52 - without a check result a path cite has no badge, no label and is never changed
---
duration_ms: 0.184363
type: 'test'
...
# Subtest: the label and the badge come from the check result only, never from a bad entry
ok 53 - the label and the badge come from the check result only, never from a bad entry
---
duration_ms: 0.180581
type: 'test'
...
# Subtest: a web cite is a link only for https
ok 54 - a web cite is a link only for https
---
duration_ms: 0.293669
type: 'test'
...
# Subtest: a write notice renders its fixed line
ok 55 - a write notice renders its fixed line
---
duration_ms: 0.277197
type: 'test'
...
# Subtest: a body without the reply or notice shape is free text: the whole body, no citations
ok 56 - a body without the reply or notice shape is free text: the whole body, no citations
---
duration_ms: 0.345807
type: 'test'
...
# Subtest: an empty citations list is a reply with no cites
ok 57 - an empty citations list is a reply with no cites
---
duration_ms: 0.187354
type: 'test'
...
# Subtest: C2-01c: each level gives its universe, and its book or null
ok 58 - C2-01c: each level gives its universe, and its book or null
---
duration_ms: 3.363132
type: 'test'
...
# Subtest: C2-01c: prefixes come first: in a book that holds a prefix, a file outside it is canon and one under it playground
ok 59 - C2-01c: prefixes come first: in a book that holds a prefix, a file outside it is canon and one under it playground
---
duration_ms: 0.480483
type: 'test'
...
# Subtest: C2-01c: a canon file linking into a draft gives R6, and into its own universe-level prefix gives R5
ok 60 - C2-01c: a canon file linking into a draft gives R6, and into its own universe-level prefix gives R5
---
duration_ms: 44.606565
type: 'test'
...
# Subtest: the survey prints folder names, counts, key sets and link-form counts, and never text
ok 61 - the survey prints folder names, counts, key sets and link-form counts, and never text
---
duration_ms: 37.28555
type: 'test'
...
# Subtest: folder names print DEL, C1 and bidi controls, U+061C among them, as escapes
ok 62 - folder names print DEL, C1 and bidi controls, U+061C among them, as escapes
---
duration_ms: 26.222951
type: 'test'
...
# Subtest: an embed of an attachment counts as an embed and as an attachment; a plain link to one does not
ok 63 - an embed of an attachment counts as an embed and as an attachment; a plain link to one does not
---
duration_ms: 26.23793
type: 'test'
...
# Subtest: with --mapping the survey adds scope, resolver step and problem counts
ok 64 - with --mapping the survey adds scope, resolver step and problem counts
---
duration_ms: 41.437066
type: 'test'
...
# Subtest: survey exit codes: usage 4, bad mapping 3, unreadable repo 2
ok 65 - survey exit codes: usage 4, bad mapping 3, unreadable repo 2
---
duration_ms: 17.463059
type: 'test'
...
# Subtest: scripts/mosaic library survey reaches the survey
ok 66 - scripts/mosaic library survey reaches the survey
---
duration_ms: 77.634947
type: 'test'
...
# Subtest: C2-03a argv: the fixed sequence, one https allow, no other protocol key
ok 67 - C2-03a argv: the fixed sequence, one https allow, no other protocol key
---
duration_ms: 1.605597
type: 'test'
...
# Subtest: C2-03a argv: only an https URL with a plain host, no userinfo, and a plain user
ok 68 - C2-03a argv: only an https URL with a plain host, no userinfo, and a plain user
---
duration_ms: 0.713147
type: 'test'
...
# Subtest: C2-03a helper: answers only the exact prompts for the configured host and user (dewey-0765)
ok 69 - C2-03a helper: answers only the exact prompts for the configured host and user (dewey-0765)
---
duration_ms: 31.590474
type: 'test'
...
# Subtest: C2-03a first sync: served is the fetched tip, HEAD is served, the survey reads it, and the token stays in the slot
ok 70 - C2-03a first sync: served is the fetched tip, HEAD is served, the survey reads it, and the token stays in the slot
---
duration_ms: 135.075159
type: 'test'
...
# Subtest: C2-03a fast-forward: served moves, problems are rebuilt, and a repeat changes only lastFetch
ok 71 - C2-03a fast-forward: served moves, problems are rebuilt, and a repeat changes only lastFetch
---
duration_ms: 225.707972
type: 'test'
...
# Subtest: C2-03a Filbert N2: a read that took served before a sync still finds its objects after served moves
ok 72 - C2-03a Filbert N2: a read that took served before a sync still finds its objects after served moves
---
duration_ms: 205.10431
type: 'test'
...
# Subtest: C2-03a overlap: a reader during a sync sees the old pair or the new one, never a mix
ok 73 - C2-03a overlap: a reader during a sync sees the old pair or the new one, never a mix
---
duration_ms: 175.907929
type: 'test'
...
# Subtest: C2-03a diverged: a non-fast-forward keeps serving and holds until a human accepts the tip
ok 74 - C2-03a diverged: a non-fast-forward keeps serving and holds until a human accepts the tip
---
duration_ms: 431.553812
type: 'test'
...
# Subtest: C2-03a accept starts the record over, so a changed branch gets a fresh state
ok 75 - C2-03a accept starts the record over, so a changed branch gets a fresh state
---
duration_ms: 195.011432
type: 'test'
...
# Subtest: C2-03a fetch failure: a wrong token keeps serving and records the error, lastFetch unchanged
ok 76 - C2-03a fetch failure: a wrong token keeps serving and records the error, lastFetch unchanged
---
duration_ms: 192.898644
type: 'test'
...
# Subtest: C2-03a a failed first fetch records the error with nothing served
ok 77 - C2-03a a failed first fetch records the error with nothing served
---
duration_ms: 61.594695
type: 'test'
...
# Subtest: C2-03a a 302 to another host fails the fetch and the other host sees nothing
ok 78 - C2-03a a 302 to another host fails the fetch and the other host sees nothing
---
duration_ms: 64.82991
type: 'test'
...
# Subtest: C2-03a the slot: missing or unsafe refuses before git, and sync never opens it
ok 79 - C2-03a the slot: missing or unsafe refuses before git, and sync never opens it
---
duration_ms: 59.167725
type: 'test'
...
# Subtest: C2-03a sage-2021: an entry with no user refuses library-remote-invalid and runs no git
ok 80 - C2-03a sage-2021: an entry with no user refuses library-remote-invalid and runs no git
---
duration_ms: 35.37205
type: 'test'
...
# Subtest: C2-03a one sync per mirror: an overlapping call refuses library-sync-busy
ok 81 - C2-03a one sync per mirror: an overlapping call refuses library-sync-busy
---
duration_ms: 118.260687
type: 'test'
...
1..81
# tests 81
# suites 0
# pass 81
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 9149.325891
@@ -1,48 +0,0 @@
✔ chat replies: free text, cites with badges, the agent label, changed since and safe links (633.807074ms)
✔ chat replies: a write notice reads as its line with a Revert; a refused revert shows its code (621.95095ms)
✔ chat replies: a read-only Console shows the notice with Revert disabled (577.638161ms)
✔ chat status line: served commit and age, divergence, fetch error and the problems one click away (555.847899ms)
✖ chat status line: limits when the status carries them, no problems, and refusals (3725.696272ms)
✔ chat status line: a project with no repository link reads no library status (657.572856ms)
✔ chat status line: unreadable reply limits show their problem and both fallback keys (663.163445ms)
✔ chat replies: unchanged file at a different library commit and incomplete checks stay unmarked (616.184063ms)
✖ chat status line: an invalid library mapping remains visible for diagnosis (597.976623ms)
ℹ tests 9
ℹ suites 0
ℹ pass 7
ℹ fail 2
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 8782.679569
✖ failing tests:
test at packages/webui/tests/chat-replies-browser.test.mjs:152:1
✖ chat status line: limits when the status carries them, no problems, and refusals (3725.696272ms)
Error: Uncaught (in promise) Error: window.__statusReads.length && document.querySelector(".chat-conversation") && document.querySelector(".chat-library")?.textContent==="Library status unavailable (library-mapping-invalid).": undefined
at Object.evaluate (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/browser.mjs:49:35)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/chat-replies-browser.test.mjs:162:5)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
test at packages/webui/tests/chat-replies-browser.test.mjs:200:1
✖ chat status line: an invalid library mapping remains visible for diagnosis (597.976623ms)
AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:
+ actual - expected
+ null
- 'Library status unavailable (library-mapping-invalid).'
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/chat-replies-browser.test.mjs:203:10)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
generatedMessage: true,
code: 'ERR_ASSERTION',
actual: null,
expected: 'Library status unavailable (library-mapping-invalid).',
operator: 'strictEqual',
diff: 'simple'
}
@@ -1,4 +0,0 @@
{"mutant": "M1-badges", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants/M1-badges.tap"}
{"mutant": "M1-agent-label", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants/M1-agent-label.tap"}
{"mutant": "M2-http-links", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants/M2-http-links.tap"}
{"mutant": "M3-wrong-commit", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": false, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants/M3-wrong-commit.tap"}
@@ -1,192 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
not ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 627.180675
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-9ui_vkk0/M1-agent-label/packages/webui/tests/chat-replies-browser.test.mjs:81:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
... Skipped lines
[
{
agent: null,
badge: 'canon',
changed: false,
...
{
+ agent: null,
- agent: 'agent-written: acme/scribe',
badge: 'supporting',
changed: false,
href: null,
quote: 'green eyes',
ref: 'Notes/Eyes.md:9-10 @aaaaaaa',
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
actual:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: ~
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-9ui_vkk0/M1-agent-label/packages/webui/tests/chat-replies-browser.test.mjs:90:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 778.572201
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 641.728604
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 629.327348
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 837.886073
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 613.037186
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 651.026507
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 735.546636
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 712.174542
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6353.090574
@@ -1,206 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
not ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 638.589537
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-9ui_vkk0/M1-badges/packages/webui/tests/chat-replies-browser.test.mjs:81:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
... Skipped lines
[
{
agent: null,
+ badge: null,
- badge: 'canon',
changed: false,
href: null,
quote: 'her grey eyes',
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa',
rel: null
...
agent: null,
+ badge: null,
- badge: 'playground',
changed: true,
href: null,
quote: 'a storm',
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa',
rel: null
...
agent: 'agent-written: acme/scribe',
+ badge: null,
- badge: 'supporting',
changed: false,
href: null,
quote: 'green eyes',
ref: 'Notes/Eyes.md:9-10 @aaaaaaa',
rel: null
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
actual:
0:
badge: ~
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: ~
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: ~
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-9ui_vkk0/M1-badges/packages/webui/tests/chat-replies-browser.test.mjs:90:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 770.070531
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 519.328288
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 647.667301
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 999.237447
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 676.088845
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 634.472637
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 655.963182
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 578.819646
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6239.022812
@@ -1,204 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
not ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 655.901619
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-9ui_vkk0/M2-http-links/packages/webui/tests/chat-replies-browser.test.mjs:81:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
... Skipped lines
[
{
agent: null,
badge: 'canon',
changed: false,
...
changed: false,
+ href: 'http://example.invalid/plain',
- href: null,
quote: 'plain http',
ref: 'http://example.invalid/plain',
+ rel: 'noopener noreferrer'
- rel: null
},
{
agent: null,
badge: 'web',
changed: false,
+ href: 'javascript:window.injected=2',
- href: null,
quote: 'script',
ref: 'javascript:window.injected=2',
+ rel: 'noopener noreferrer'
- rel: null
}
]
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
actual:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: 'http://example.invalid/plain'
rel: 'noopener noreferrer'
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: 'javascript:window.injected=2'
rel: 'noopener noreferrer'
quote: 'script'
agent: ~
changed: false
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-9ui_vkk0/M2-http-links/packages/webui/tests/chat-replies-browser.test.mjs:90:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 741.122544
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 616.728572
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 625.818493
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 867.033773
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 655.587703
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 615.997516
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 648.263681
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 624.323397
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6168.633364
@@ -1,74 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 640.32042
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 694.233373
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 611.500508
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 606.581119
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 896.462474
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 666.798177
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 629.105559
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
not ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 3654.057789
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-9ui_vkk0/M3-wrong-commit/packages/webui/tests/chat-replies-browser.test.mjs:184:1'
failureType: 'testCodeFailure'
error: 'Uncaught (in promise) Error: document.querySelectorAll(".chat-changed").length===0: undefined'
code: 'ERR_TEST_FAILURE'
stack: |-
Object.evaluate (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-9ui_vkk0/M3-wrong-commit/packages/webui/tests/browser.mjs:49:35)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-9ui_vkk0/M3-wrong-commit/packages/webui/tests/chat-replies-browser.test.mjs:195:3)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 656.44095
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 9179.328916
@@ -1,47 +0,0 @@
{
"head": "77172ce3b46eb289409068518b7022fc7be47ebe",
"clear": "sage-3647",
"worktreeUnchanged": true,
"results": [
{
"mutant": "M1-badges",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants/M1-badges.tap"
},
{
"mutant": "M1-agent-label",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants/M1-agent-label.tap"
},
{
"mutant": "M2-http-links",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants/M2-http-links.tap"
},
{
"mutant": "M3-wrong-commit",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": false,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants/M3-wrong-commit.tap"
}
]
}
@@ -1,14 +0,0 @@
{"mutant": "M1-badges", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M1-badges.tap"}
{"mutant": "M1-agent-label", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M1-agent-label.tap"}
{"mutant": "M2-http-links", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M2-http-links.tap"}
{"mutant": "M3-wrong-commit", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M3-wrong-commit.tap"}
{"mutant": "M3-missing-file", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M3-missing-file.tap"}
{"mutant": "M4-fallback", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M4-fallback.tap"}
{"mutant": "M4-problem", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M4-problem.tap"}
{"mutant": "M5-send", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M5-send.tap"}
{"mutant": "M5-project-receipt", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M5-project-receipt.tap"}
{"mutant": "M5-commit-input", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M5-commit-input.tap"}
{"mutant": "M5-origin", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M5-origin.tap"}
{"mutant": "M5-fetch-metadata", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M5-fetch-metadata.tap"}
{"mutant": "M6-duplicate-call", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M6-duplicate-call.tap"}
{"mutant": "M7-user-fence", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M7-user-fence.tap"}
@@ -1,192 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
not ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 646.851404
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M1-agent-label/packages/webui/tests/chat-replies-browser.test.mjs:81:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
... Skipped lines
[
{
agent: null,
badge: 'canon',
changed: false,
...
{
+ agent: null,
- agent: 'agent-written: acme/scribe',
badge: 'supporting',
changed: false,
href: null,
quote: 'green eyes',
ref: 'Notes/Eyes.md:9-10 @aaaaaaa',
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
actual:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: ~
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M1-agent-label/packages/webui/tests/chat-replies-browser.test.mjs:90:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 667.90945
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 588.346681
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 485.882289
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 709.847041
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 544.885551
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 514.410016
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 542.746154
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 582.608663
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 5409.980177
@@ -1,206 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
not ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 621.562133
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M1-badges/packages/webui/tests/chat-replies-browser.test.mjs:81:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
... Skipped lines
[
{
agent: null,
+ badge: null,
- badge: 'canon',
changed: false,
href: null,
quote: 'her grey eyes',
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa',
rel: null
...
agent: null,
+ badge: null,
- badge: 'playground',
changed: true,
href: null,
quote: 'a storm',
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa',
rel: null
...
agent: 'agent-written: acme/scribe',
+ badge: null,
- badge: 'supporting',
changed: false,
href: null,
quote: 'green eyes',
ref: 'Notes/Eyes.md:9-10 @aaaaaaa',
rel: null
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
actual:
0:
badge: ~
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: ~
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: ~
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M1-badges/packages/webui/tests/chat-replies-browser.test.mjs:90:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 731.101767
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 633.163696
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 637.761161
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 847.929653
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 635.512979
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 645.427688
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 672.272209
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 629.043251
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6169.954716
@@ -1,204 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
not ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 582.248796
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M2-http-links/packages/webui/tests/chat-replies-browser.test.mjs:81:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
... Skipped lines
[
{
agent: null,
badge: 'canon',
changed: false,
...
changed: false,
+ href: 'http://example.invalid/plain',
- href: null,
quote: 'plain http',
ref: 'http://example.invalid/plain',
+ rel: 'noopener noreferrer'
- rel: null
},
{
agent: null,
badge: 'web',
changed: false,
+ href: 'javascript:window.injected=2',
- href: null,
quote: 'script',
ref: 'javascript:window.injected=2',
+ rel: 'noopener noreferrer'
- rel: null
}
]
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
actual:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: 'http://example.invalid/plain'
rel: 'noopener noreferrer'
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: 'javascript:window.injected=2'
rel: 'noopener noreferrer'
quote: 'script'
agent: ~
changed: false
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M2-http-links/packages/webui/tests/chat-replies-browser.test.mjs:90:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 640.769563
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 572.506418
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 519.031091
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 743.513043
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 676.282756
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 595.166769
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 626.475981
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 596.828198
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 5658.889854
@@ -1,81 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 639.027823
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 693.772757
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 683.094789
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 637.029355
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 772.100011
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 599.342035
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 574.320042
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
not ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 621.466015
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M3-missing-file/packages/webui/tests/chat-replies-browser.test.mjs:184:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
1 !== 0
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 0
actual: 1
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M3-missing-file/packages/webui/tests/chat-replies-browser.test.mjs:196:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 590.165121
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 5921.651346
@@ -1,81 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 704.141588
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 816.229452
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 697.826745
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 638.579753
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 850.914117
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 634.004327
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 585.469632
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
not ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 673.386968
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M3-wrong-commit/packages/webui/tests/chat-replies-browser.test.mjs:184:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
1 !== 0
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 0
actual: 1
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M3-wrong-commit/packages/webui/tests/chat-replies-browser.test.mjs:196:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 579.53998
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6292.579267
@@ -1,102 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 683.334532
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 686.685624
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 612.757087
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 584.651483
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
not ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 637.405759
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M4-fallback/packages/webui/tests/chat-replies-browser.test.mjs:152:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
+ actual - expected
+ 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · no problems'
- 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · limits fell back: citationsPerReply · no problems'
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · limits fell back: citationsPerReply · no problems'
actual: 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · no problems'
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M4-fallback/packages/webui/tests/chat-replies-browser.test.mjs:156:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 626.790802
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
not ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 643.680732
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M4-fallback/packages/webui/tests/chat-replies-browser.test.mjs:173:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
+ actual - expected
+ 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · reply-limits-unreadable · no problems'
- 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · reply-limits-unreadable · no problems'
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · reply-limits-unreadable · no problems'
actual: 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · reply-limits-unreadable · no problems'
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M4-fallback/packages/webui/tests/chat-replies-browser.test.mjs:179:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 645.032205
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 616.242947
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 7
# fail 2
# cancelled 0
# skipped 0
# todo 0
# duration_ms 5845.226677
@@ -1,83 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 663.005514
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 662.360161
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 620.68694
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 744.825035
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 826.418848
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 549.365993
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
not ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 589.776762
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M4-problem/packages/webui/tests/chat-replies-browser.test.mjs:173:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
+ actual - expected
+ 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · no problems'
- 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · reply-limits-unreadable · no problems'
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · reply-limits-unreadable · no problems'
actual: 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · no problems'
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M4-problem/packages/webui/tests/chat-replies-browser.test.mjs:179:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 590.919434
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 545.326381
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 5914.325706
@@ -1,105 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 16.128237
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 5.987607
type: 'test'
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
not ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 4.805637
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M5-commit-input/packages/webui/tests/library-routes.test.mjs:64:1'
failureType: 'testCodeFailure'
error: |-
{"project":"books","commit":"abc"}
200 !== 400
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 400
actual: 200
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M5-commit-input/packages/webui/tests/library-routes.test.mjs:69:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.383811
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 4.000988
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.487122
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 4.9292
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.266317
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.443059
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.048018
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 0.864934
type: 'test'
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.064626
type: 'test'
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 0.803048
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 12
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 153.3549
@@ -1,105 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 20.271342
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
not ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 5.700968
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M5-fetch-metadata/packages/webui/tests/library-routes.test.mjs:48:1'
failureType: 'testCodeFailure'
error: |-
sec-fetch-site
200 !== 403
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 403
actual: 200
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M5-fetch-metadata/packages/webui/tests/library-routes.test.mjs:57:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 6.427935
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 7.39929
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 5.425467
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.634037
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 5.727409
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.317954
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.583799
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.207375
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 0.956772
type: 'test'
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.147745
type: 'test'
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 0.819337
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 12
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 166.134058
@@ -1,105 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 16.249491
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
not ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 5.463985
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M5-origin/packages/webui/tests/library-routes.test.mjs:48:1'
failureType: 'testCodeFailure'
error: |-
origin
200 !== 403
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 403
actual: 200
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M5-origin/packages/webui/tests/library-routes.test.mjs:57:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 6.035196
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 5.621744
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 4.928333
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.455282
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 4.838747
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.235209
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.436399
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.100574
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 0.943474
type: 'test'
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.176957
type: 'test'
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 0.861834
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 12
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 150.969641
@@ -1,105 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 18.918199
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 7.26916
type: 'test'
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 5.352342
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.134713
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 4.288914
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.745385
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 5.739155
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.264793
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.471965
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.045204
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
not ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 1.531252
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M5-project-receipt/packages/webui/tests/library-routes.test.mjs:145:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
200 !== 503
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 503
actual: 200
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M5-project-receipt/packages/webui/tests/library-routes.test.mjs:148:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.60161
type: 'test'
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 0.816068
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 12
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 171.289003
@@ -1,106 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 18.930067
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 7.470645
type: 'test'
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 6.646929
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.637697
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 4.174441
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.513131
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 5.145692
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.182362
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.471806
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.064814
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 0.910004
type: 'test'
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.16191
type: 'test'
...
# 2026-10-23T19:28:51.488Z library-revert user="jason" project="books" commit="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" commit=bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
# Subtest: a configured revert callback remains unreachable when send is off
not ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 1.624909
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M5-send/packages/webui/tests/library-routes.test.mjs:175:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
200 !== 403
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 403
actual: 200
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M5-send/packages/webui/tests/library-routes.test.mjs:181:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
1..13
# tests 13
# suites 0
# pass 12
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 165.919088
@@ -1,177 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
not ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 17.922489
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:40:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
[
{
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
project: 'books'
},
+ {
+ commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
+ project: 'books'
+ }
]
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
actual:
0:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
1:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:43:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 7.053366
type: 'test'
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 5.869486
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.852952
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
not ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 2.870452
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:88:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
2 !== 1
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 1
actual: 2
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:96:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.904694
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 5.7962
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.518332
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.563294
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.17446
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
not ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 1.258633
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:145:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
[
{
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
project: 'books'
},
+ {
+ commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
+ project: 'books'
+ }
]
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
actual:
0:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
1:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:151:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.362877
type: 'test'
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 0.848309
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 10
# fail 3
# cancelled 0
# skipped 0
# todo 0
# duration_ms 169.162917
@@ -1,126 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 18.215173
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 6.416847
type: 'test'
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 5.529629
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.92431
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 4.588509
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.817257
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 6.020444
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.377224
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
not ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 1.015984
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M7-user-fence/packages/webui/tests/library-routes.test.mjs:132:1'
failureType: 'testCodeFailure'
error: |-
/api/library/status
true !== false
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: false
actual: true
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M7-user-fence/packages/webui/tests/library-routes.test.mjs:133:106)
Test.runInAsyncScope (node:async_hooks:226:14)
Test.run (node:internal/test_runner/test:1402:25)
Test.processPendingSubtests (node:internal/test_runner/test:974:18)
Test.postRun (node:internal/test_runner/test:1542:19)
Test.run (node:internal/test_runner/test:1467:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.695555
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 1.378325
type: 'test'
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
not ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.178045
type: 'test'
location: '/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M7-user-fence/packages/webui/tests/library-routes.test.mjs:155:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
503 !== 403
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 403
actual: 503
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mosaic-row225-mutants-e6t705gk/M7-user-fence/packages/webui/tests/library-routes.test.mjs:167:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 1.057394
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 11
# fail 2
# cancelled 0
# skipped 0
# todo 0
# duration_ms 176.864112
@@ -1,147 +0,0 @@
{
"head": "50790127716002f97154800ecbfb968690a9d644",
"clear": "sage-3647",
"worktreeUnchanged": true,
"results": [
{
"mutant": "M1-badges",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M1-badges.tap"
},
{
"mutant": "M1-agent-label",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M1-agent-label.tap"
},
{
"mutant": "M2-http-links",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M2-http-links.tap"
},
{
"mutant": "M3-wrong-commit",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M3-wrong-commit.tap"
},
{
"mutant": "M3-missing-file",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M3-missing-file.tap"
},
{
"mutant": "M4-fallback",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M4-fallback.tap"
},
{
"mutant": "M4-problem",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M4-problem.tap"
},
{
"mutant": "M5-send",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M5-send.tap"
},
{
"mutant": "M5-project-receipt",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M5-project-receipt.tap"
},
{
"mutant": "M5-commit-input",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M5-commit-input.tap"
},
{
"mutant": "M5-origin",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M5-origin.tap"
},
{
"mutant": "M5-fetch-metadata",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M5-fetch-metadata.tap"
},
{
"mutant": "M6-duplicate-call",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M6-duplicate-call.tap"
},
{
"mutant": "M7-user-fence",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2/mutants-final/M7-user-fence.tap"
}
]
}
File diff suppressed because it is too large. Load diff
@@ -1,22 +0,0 @@
TAP version 13
# Subtest: channel conversion preserves the four proof/transport byte baselines and modules cannot import a proof caller
ok 1 - channel conversion preserves the four proof/transport byte baselines and modules cannot import a proof caller
---
duration_ms: 0.97881
type: 'test'
...
# Subtest: channel recovery still requires the same shim path and rejects an absent or forged proof
ok 2 - channel recovery still requires the same shim path and rejects an absent or forged proof
---
duration_ms: 376.310279
type: 'test'
...
1..2
# tests 2
# suites 0
# pass 2
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 473.296901
@@ -1,8 +0,0 @@
{
"at": "2026-10-24T15:02:21.827084+00:00",
"scratch": "/mnt/storage/scratch/tmp/rbCdM2",
"scratchOwnedNodeChromium": [],
"signalsNeeded": false,
"rootDependencySymlink": false,
"webuiDependencySymlink": false
}
@@ -1,16 +0,0 @@
npm notice run @mosaic/[email protected] build:editor
npm notice run node editor/build.mjs
▲ [WARNING] Ignoring this import because "third_party/editor/prosemirror-transform/src/mark.ts" was marked as having no side effects [ignored-bare-import]
third_party/editor/prosemirror-transform/src/index.ts:10:7:
10 │ import "./mark"
╵ ~~~~~~~~
"sideEffects" is false in the enclosing "package.json" file:
third_party/editor/prosemirror-transform/package.json:13:2:
13 │ "sideEffects": false,
╵ ~~~~~~~~~~~~~
editor.js 9c881b13740fae2408717ad75fa1d85bfcfe3fa8b3af0f1b3f2e706c90e80fee (133 inputs)
editor.css 8654ac57d1e7a561110138ecd7f701c34a074017ff8c4cd2768d8083908ee61f
@@ -1,69 +0,0 @@
[
{
"step": "editor-build",
"exit": 0,
"seconds": 0.288,
"command": [
"npm",
"run",
"build:editor"
],
"cwd": "packages/webui"
},
{
"step": "webui-full",
"exit": 0,
"seconds": 274.272,
"command": [
"node",
"--test",
"--test-reporter=tap",
"--test-concurrency=1",
"--test-timeout=30000",
"packages/webui/tests/"
],
"cwd": "."
},
{
"step": "library-full",
"exit": 0,
"seconds": 14.981,
"command": [
"node",
"--test",
"--test-reporter=tap",
"--test-concurrency=1",
"--test-timeout=30000",
"packages/library/tests/"
],
"cwd": "."
},
{
"step": "bus-full",
"exit": 0,
"seconds": 125.727,
"command": [
"node",
"--test",
"--test-reporter=tap",
"--test-concurrency=1",
"--test-timeout=30000",
"packages/bus/tests/"
],
"cwd": "."
},
{
"step": "channel-proof",
"exit": 0,
"seconds": 0.503,
"command": [
"node",
"--test",
"--test-reporter=tap",
"--test-concurrency=1",
"--test-timeout=30000",
"packages/bus/tests/channel-proof.test.mjs"
],
"cwd": "."
}
]
@@ -1,905 +0,0 @@
TAP version 13
# Subtest: C2-06 reply schema: free bodies, exact objects and safe refusal reasons
ok 1 - C2-06 reply schema: free bodies, exact objects and safe refusal reasons
---
duration_ms: 17.189459
type: 'test'
...
# Subtest: C2-06 citation setting and all four exact fixed texts
ok 2 - C2-06 citation setting and all four exact fixed texts
---
duration_ms: 12.53954
type: 'test'
...
# Subtest: C2-06 default citation cap passes 20 and refuses 21, even with optional citations
ok 3 - C2-06 default citation cap passes 20 and refuses 21, even with optional citations
---
duration_ms: 93.810117
type: 'test'
...
# Subtest: C2-06 real Git citation scope, reachability, lines and normalized quotes
ok 4 - C2-06 real Git citation scope, reachability, lines and normalized quotes
---
duration_ms: 50.779918
type: 'test'
...
# Subtest: C2-06 playground cites pass but cannot state canon
ok 5 - C2-06 playground cites pass but cannot state canon
---
duration_ms: 29.160097
type: 'test'
...
# Subtest: C2-06 independent universes refuse; a hybrid and only its sources pass
ok 6 - C2-06 independent universes refuse; a hybrid and only its sources pass
---
duration_ms: 50.655113
type: 'test'
...
# Subtest: C2-06 web cites require allowed definition, this session fetch and kept quote
ok 7 - C2-06 web cites require allowed definition, this session fetch and kept quote
---
duration_ms: 13.192112
type: 'test'
...
# Subtest: C2-06 file origin is the path commit and trailer, while last follows served changes
ok 8 - C2-06 file origin is the path commit and trailer, while last follows served changes
---
duration_ms: 40.750304
type: 'test'
...
# Subtest: C2-06 origin uses literal paths even when a filename contains a glob
ok 9 - C2-06 origin uses literal paths even when a filename contains a glob
---
duration_ms: 25.953804
type: 'test'
...
# Subtest: C2-06 cited-commit guard reads exactly the C2-05a indexed file set with supporting scope
ok 10 - C2-06 cited-commit guard reads exactly the C2-05a indexed file set with supporting scope
---
duration_ms: 55.312833
type: 'test'
...
# Subtest: C2-06 reply limits fall back independently without coercion or inherited keys
ok 11 - C2-06 reply limits fall back independently without coercion or inherited keys
---
duration_ms: 0.577179
type: 'test'
...
# Subtest: the same commit, repo path and mapping return the same index, and only mapped files are in it
ok 12 - the same commit, repo path and mapping return the same index, and only mapped files are in it
---
duration_ms: 27.069716
type: 'test'
...
# Subtest: a different repo path, mapping or commit gets its own index
ok 13 - a different repo path, mapping or commit gets its own index
---
duration_ms: 44.766781
type: 'test'
...
# Subtest: the cache holds at most eight indexes and evicts the least recently used
ok 14 - the cache holds at most eight indexes and evicts the least recently used
---
duration_ms: 65.786114
type: 'test'
...
# Subtest: a failed read is not kept in the cache
ok 15 - a failed read is not kept in the cache
---
duration_ms: 13.289447
type: 'test'
...
# Subtest: a missing or unchecked mapping is refused before any read
ok 16 - a missing or unchecked mapping is refused before any read
---
duration_ms: 11.613882
type: 'test'
...
# Subtest: a 3,000-file rebuild completes and its time is reported
ok 17 - a 3,000-file rebuild completes and its time is reported
---
duration_ms: 2747.108654
type: 'test'
...
# 3,000-file index rebuild: 2583 ms
# Subtest: resolver step 1: a path from the repo root, with or without .md
ok 18 - resolver step 1: a path from the repo root, with or without .md
---
duration_ms: 1.045058
type: 'test'
...
# Subtest: resolver step 2: the same path with vaultPrefix/ stripped
ok 19 - resolver step 2: the same path with vaultPrefix/ stripped
---
duration_ms: 0.17514
type: 'test'
...
# Subtest: resolver step 3: a path relative to the linking file, never above the repo root
ok 20 - resolver step 3: a path relative to the linking file, never above the repo root
---
duration_ms: 0.184944
type: 'test'
...
# Subtest: resolver step 4: a base name that matches exactly one indexed file
ok 21 - resolver step 4: a base name that matches exactly one indexed file
---
duration_ms: 0.191037
type: 'test'
...
# Subtest: a link into another of her repos resolves to nothing
ok 22 - a link into another of her repos resolves to nothing
---
duration_ms: 0.135053
type: 'test'
...
# Subtest: wikilink forms, embeds, and links skipped inside code
ok 23 - wikilink forms, embeds, and links skipped inside code
---
duration_ms: 0.747412
type: 'test'
...
# Subtest: only a body embed whose target has an extension other than .md, in any case, is an attachment
ok 24 - only a body embed whose target has an extension other than .md, in any case, is an attachment
---
duration_ms: 0.275738
type: 'test'
...
# Subtest: the fixture mapping checks and comes back frozen
ok 25 - the fixture mapping checks and comes back frozen
---
duration_ms: 1.690568
type: 'test'
...
# Subtest: C2-01c: a prefix inside or holding another entry's book refuses library-playground-other-universe
ok 26 - C2-01c: a prefix inside or holding another entry's book refuses library-playground-other-universe
---
duration_ms: 0.709762
type: 'test'
...
# Subtest: C2-01c: a prefix equal to a book folder, or holding its own, refuses library-mapping-invalid
ok 27 - C2-01c: a prefix equal to a book folder, or holding its own, refuses library-mapping-invalid
---
duration_ms: 0.417767
type: 'test'
...
# Subtest: C2-01c: universe-level prefixes lie outside every book, in a plain universe and in a hybrid with no books
ok 28 - C2-01c: universe-level prefixes lie outside every book, in a plain universe and in a hybrid with no books
---
duration_ms: 0.658449
type: 'test'
...
# Subtest: C2-01c: a draft takes kind, name and playground only, and comes back frozen with books []
ok 29 - C2-01c: a draft takes kind, name and playground only, and comes back frozen with books []
---
duration_ms: 1.070571
type: 'test'
...
# Subtest: C2-01d: supporting prefixes at book level, universe level, in a hybrid and in a draft, [] when absent
ok 30 - C2-01d: supporting prefixes at book level, universe level, in a hybrid and in a draft, [] when absent
---
duration_ms: 0.331996
type: 'test'
...
# Subtest: C2-01d: each supporting prefix rule refuses with its code
ok 31 - C2-01d: each supporting prefix rule refuses with its code
---
duration_ms: 1.524906
type: 'test'
...
# Subtest: C2-01d: between the lists, a supporting prefix may equal its own playground, and a playground may hold its own supporting
ok 32 - C2-01d: between the lists, a supporting prefix may equal its own playground, and a playground may hold its own supporting
---
duration_ms: 0.595392
type: 'test'
...
# Subtest: C2-01d: editor is optional, kept when given, and refuses anything but a plain name and email
ok 33 - C2-01d: editor is optional, kept when given, and refuses anything but a plain name and email
---
duration_ms: 2.763196
type: 'test'
...
# Subtest: C2-01d: an accepted editor round-trips through a real git commit unchanged
ok 34 - C2-01d: an accepted editor round-trips through a real git commit unchanged
---
duration_ms: 10.253061
type: 'test'
...
# Subtest: no playground prefix holds another, and no book folder holds another
ok 35 - no playground prefix holds another, and no book folder holds another
---
duration_ms: 0.575878
type: 'test'
...
# Subtest: shape refusals: kind, remote, branch, unknown keys, types, manuscript, folder names
ok 36 - shape refusals: kind, remote, branch, unknown keys, types, manuscript, folder names
---
duration_ms: 0.715513
type: 'test'
...
# Subtest: C2-03a sage-2021: user is optional, kept when given, and must be a plain account name
ok 37 - C2-03a sage-2021: user is optional, kept when given, and must be a plain account name
---
duration_ms: 0.499903
type: 'test'
...
# Subtest: a hybrid universe is a shape the query code can take (1.4), with sources that must exist
ok 38 - a hybrid universe is a shape the query code can take (1.4), with sources that must exist
---
duration_ms: 0.887001
type: 'test'
...
# Subtest: a caller-supplied fail receives the code, as business file loading will pass it (C2-04)
ok 39 - a caller-supplied fail receives the code, as business file loading will pass it (C2-04)
---
duration_ms: 0.215772
type: 'test'
...
# Subtest: scope comes from the path alone (design 1.2)
ok 40 - scope comes from the path alone (design 1.2)
---
duration_ms: 0.380641
type: 'test'
...
# Subtest: C2-04 mirror: exact default path, bare without checkout or remote, and idempotent initialization
ok 41 - C2-04 mirror: exact default path, bare without checkout or remote, and idempotent initialization
---
duration_ms: 36.752555
type: 'test'
...
# Subtest: C2-04 mirror: simultaneous creators publish one intact mirror and leave no staging paths
ok 42 - C2-04 mirror: simultaneous creators publish one intact mirror and leave no staging paths
---
duration_ms: 28.683571
type: 'test'
...
# Subtest: C2-04 mirror: skipped publication accepts both coreutils statuses without removing the winner
ok 43 - C2-04 mirror: skipped publication accepts both coreutils statuses without removing the winner
---
duration_ms: 106.133994
type: 'test'
...
# Subtest: C2-04 mirror: preserve occupied directories and reject symlink ancestors and code overlaps
ok 44 - C2-04 mirror: preserve occupied directories and reject symlink ancestors and code overlaps
---
duration_ms: 12.154398
type: 'test'
...
# Subtest: C2-04 mirror: existing metadata accepts only bare Git plus state and the precreated lock
ok 45 - C2-04 mirror: existing metadata accepts only bare Git plus state and the precreated lock
---
duration_ms: 21.554021
type: 'test'
...
# Subtest: C2-04 state: missing state is empty only while the served ref is absent
ok 46 - C2-04 state: missing state is empty only while the served ref is absent
---
duration_ms: 36.680415
type: 'test'
...
# Subtest: C2-04 state: valid problems and sync metadata return no content and change no state bytes
ok 47 - C2-04 state: valid problems and sync metadata return no content and change no state bytes
---
duration_ms: 37.530513
type: 'test'
...
# Subtest: C2-04 state: strict keys, types, times, branch, commit and fixed R messages fail closed
ok 48 - C2-04 state: strict keys, types, times, branch, commit and fixed R messages fail closed
---
duration_ms: 102.20466
type: 'test'
...
# Subtest: C2-04 state: symlink, hardlink, non-private state and missing lock refuse without replacement
ok 49 - C2-04 state: symlink, hardlink, non-private state and missing lock refuse without replacement
---
duration_ms: 29.713255
type: 'test'
...
# Subtest: C2-04 file: served commit, not HEAD or a caller commit, owns the exact returned text
ok 50 - C2-04 file: served commit, not HEAD or a caller commit, owns the exact returned text
---
duration_ms: 75.482761
type: 'test'
...
# Subtest: C2-04 file: R1, R2 and R7 exclusions and never-synced mirrors cannot return file bodies
ok 51 - C2-04 file: R1, R2 and R7 exclusions and never-synced mirrors cannot return file bodies
---
duration_ms: 81.31492
type: 'test'
...
# Subtest: C2-04 lock: a first-sync and fast-forward reader wait for a consistent pair across processes
ok 52 - C2-04 lock: a first-sync and fast-forward reader wait for a consistent pair across processes
---
duration_ms: 247.180363
type: 'test'
...
# Subtest: C2-04 lock: same-process waits, timeout code, callback expiry and throw release
ok 53 - C2-04 lock: same-process waits, timeout code, callback expiry and throw release
---
duration_ms: 5031.333528
type: 'test'
...
# Subtest: C2-04 lock: owner death releases the kernel lock without replacing its file
ok 54 - C2-04 lock: owner death releases the kernel lock without replacing its file
---
duration_ms: 60.37894
type: 'test'
...
# Subtest: C2-04 lock: a missing flock binary becomes a handled refusal
ok 55 - C2-04 lock: a missing flock binary becomes a handled refusal
---
duration_ms: 52.707661
type: 'test'
...
# Subtest: C2-04 lock: an unawaited scoped read drains before the lock is released
ok 56 - C2-04 lock: an unawaited scoped read drains before the lock is released
---
duration_ms: 20.968604
type: 'test'
...
# Subtest: the query reply cap equals the harness reply cap
ok 57 - the query reply cap equals the harness reply cap
---
duration_ms: 0.764136
type: 'test'
...
# Subtest: find is bound to its universe and refuses a call without one
ok 58 - find is bound to its universe and refuses a call without one
---
duration_ms: 32.208658
type: 'test'
...
# Subtest: every result carries its scope, and playground appears only when asked for
ok 59 - every result carries its scope, and playground appears only when asked for
---
duration_ms: 22.460169
type: 'test'
...
# Subtest: unmapped files never appear in any reply
ok 60 - unmapped files never appear in any reply
---
duration_ms: 21.117277
type: 'test'
...
# Subtest: a hybrid sees its sources canon, minus exclusions, and no playground
ok 61 - a hybrid sees its sources canon, minus exclusions, and no playground
---
duration_ms: 21.479685
type: 'test'
...
# Subtest: a hybrid gets a source file it can see, and not an excluded or foreign one
ok 62 - a hybrid gets a source file it can see, and not an excluded or foreign one
---
duration_ms: 30.779213
type: 'test'
...
# Subtest: get lists visible links both ways and drops a target another universe cannot see
ok 63 - get lists visible links both ways and drops a target another universe cannot see
---
duration_ms: 30.529291
type: 'test'
...
# Subtest: a long list pages by position, never cuts an item, and returns 50 per page
ok 64 - a long list pages by position, never cuts an item, and returns 50 per page
---
duration_ms: 124.407539
type: 'test'
...
# Subtest: a page stays under the reply cap when items are large
ok 65 - a page stays under the reply cap when items are large
---
duration_ms: 57.810337
type: 'test'
...
# Subtest: a search line too long to fit alone comes back marked, with no excerpt, and the other hits still return
ok 66 - a search line too long to fit alone comes back marked, with no excerpt, and the other hits still return
---
duration_ms: 23.581956
type: 'test'
...
# Subtest: a find item that cannot fit alone is refused, not cut
ok 67 - a find item that cannot fit alone is refused, not cut
---
duration_ms: 22.252458
type: 'test'
...
# Subtest: get pages its lines, and the next line picks up where the page stopped
ok 68 - get pages its lines, and the next line picks up where the page stopped
---
duration_ms: 23.912496
type: 'test'
...
# Subtest: get refuses a file whose front matter alone is over the cap, and a line alone is over the cap
ok 69 - get refuses a file whose front matter alone is over the cap, and a line alone is over the cap
---
duration_ms: 24.150899
type: 'test'
...
# Subtest: get pages the links of a hub note, every page carries the front matter, and the pages add up
ok 70 - get pages the links of a hub note, every page carries the front matter, and the pages add up
---
duration_ms: 813.956135
type: 'test'
...
# Subtest: get rejects a bad links_from
ok 71 - get rejects a bad links_from
---
duration_ms: 31.267213
type: 'test'
...
# Subtest: search returns scoped line hits, case-insensitively, and refuses empty text
ok 72 - search returns scoped line hits, case-insensitively, and refuses empty text
---
duration_ms: 27.15274
type: 'test'
...
# Subtest: a manuscript call returns one chapter, at most 400 lines, and names its next line
ok 73 - a manuscript call returns one chapter, at most 400 lines, and names its next line
---
duration_ms: 44.387645
type: 'test'
...
# Subtest: a manuscript call without a chapter returns the first chapter in path order and names the next
ok 74 - a manuscript call without a chapter returns the first chapter in path order and names the next
---
duration_ms: 26.076613
type: 'test'
...
# Subtest: a chapter name that matches two visible files is refused
ok 75 - a chapter name that matches two visible files is refused
---
duration_ms: 27.921747
type: 'test'
...
# Subtest: a hybrid reads a source chapter through its declared sources only
ok 76 - a hybrid reads a source chapter through its declared sources only
---
duration_ms: 33.188323
type: 'test'
...
# Subtest: universe info reports a hybrid sources, constraints and notes, and refuses an unknown universe
ok 77 - universe info reports a hybrid sources, constraints and notes, and refuses an unknown universe
---
duration_ms: 11.456952
type: 'test'
...
# Subtest: an exclusion hides what it names from a hybrid and from nothing else
ok 78 - an exclusion hides what it names from a hybrid and from nothing else
---
duration_ms: 33.694035
type: 'test'
...
# Subtest: PRD 1.14: a lookup that names a book leaves book-null files out
ok 79 - PRD 1.14: a lookup that names a book leaves book-null files out
---
duration_ms: 27.623969
type: 'test'
...
# Subtest: PRD 1.14: library_manuscript never reads a book-null file
ok 80 - PRD 1.14: library_manuscript never reads a book-null file
---
duration_ms: 27.898096
type: 'test'
...
# Subtest: PRD 1.14: a draft universe has no canon, so its lookups return files only with scope playground
ok 81 - PRD 1.14: a draft universe has no canon, so its lookups return files only with scope playground
---
duration_ms: 28.714694
type: 'test'
...
# Subtest: PRD 1.14: library_universe on a draft returns its kind, name and prefixes
ok 82 - PRD 1.14: library_universe on a draft returns its kind, name and prefixes
---
duration_ms: 12.925425
type: 'test'
...
# Subtest: a hybrid gets a source playground file as null, while the source gets it with scope playground
ok 83 - a hybrid gets a source playground file as null, while the source gets it with scope playground
---
duration_ms: 36.485028
type: 'test'
...
# Subtest: the fixture reads clean: every resolver step, appears_in and relationships wikilinks indexed
ok 84 - the fixture reads clean: every resolver step, appears_in and relationships wikilinks indexed
---
duration_ms: 32.126786
type: 'test'
...
# Subtest: R1: executables, symlinks, gitlinks, blobs over 1 MiB and non-UTF-8 text are not indexed
ok 85 - R1: executables, symlinks, gitlinks, blobs over 1 MiB and non-UTF-8 text are not indexed
---
duration_ms: 63.320394
type: 'test'
...
# Subtest: R2: unmapped paths are reported and not indexed
ok 86 - R2: unmapped paths are reported and not indexed
---
duration_ms: 22.853724
type: 'test'
...
# Subtest: R3: front matter not fully parsed stays raw, with the line where parsing stopped
ok 87 - R3: front matter not fully parsed stays raw, with the line where parsing stopped
---
duration_ms: 26.562606
type: 'test'
...
# Subtest: front matter forms the reader accepts and refuses
ok 88 - front matter forms the reader accepts and refuses
---
duration_ms: 0.477813
type: 'test'
...
# Subtest: R4: a link to no file, to more than one, or into another repo is reported and not followed
ok 89 - R4: a link to no file, to more than one, or into another repo is reported and not followed
---
duration_ms: 26.972666
type: 'test'
...
# Subtest: a block list link carries its item line, a scalar or flow link its key line, and problems follow
ok 90 - a block list link carries its item line, a scalar or flow link its key line, and problems follow
---
duration_ms: 21.295185
type: 'test'
...
# Subtest: an unresolved attachment embed gives no problem; a link or front matter value to one is R4; a note embed resolves
ok 91 - an unresolved attachment embed gives no problem; a link or front matter value to one is R4; a note embed resolves
---
duration_ms: 21.454013
type: 'test'
...
# Subtest: an indexed Dr.Quinn.md resolves as a body link, a block list link and an embed
ok 92 - an indexed Dr.Quinn.md resolves as a body link, a block list link and an embed
---
duration_ms: 22.801844
type: 'test'
...
# Subtest: R5: a canon file that refers into the playground is reported, and the link still goes by path
ok 93 - R5: a canon file that refers into the playground is reported, and the link still goes by path
---
duration_ms: 22.401093
type: 'test'
...
# Subtest: R6: a canon file that refers into another universe is reported; a hybrid may refer into its sources
ok 94 - R6: a canon file that refers into another universe is reported; a hybrid may refer into its sources
---
duration_ms: 24.828236
type: 'test'
...
# Subtest: R7: two paths that differ only in case are both left out
ok 95 - R7: two paths that differ only in case are both left out
---
duration_ms: 30.835692
type: 'test'
...
# Subtest: the reader reads the commit, never the working tree, and refuses a bad commit id
ok 96 - the reader reads the commit, never the working tree, and refuses a bad commit id
---
duration_ms: 27.202779
type: 'test'
...
# Subtest: a bare mirror reads the same as the clone
ok 97 - a bare mirror reads the same as the clone
---
duration_ms: 37.932953
type: 'test'
...
# Subtest: free text renders as itself with no citations
ok 98 - free text renders as itself with no citations
---
duration_ms: 1.253839
type: 'test'
...
# Subtest: a cited reply renders its text, then each cite with the badge from the check result
ok 99 - a cited reply renders its text, then each cite with the badge from the check result
---
duration_ms: 0.490254
type: 'test'
...
# Subtest: a parsed body renders as its string does
ok 100 - a parsed body renders as its string does
---
duration_ms: 0.28413
type: 'test'
...
# Subtest: without a check result a path cite has no badge, no label and is never changed
ok 101 - without a check result a path cite has no badge, no label and is never changed
---
duration_ms: 0.208475
type: 'test'
...
# Subtest: the label and the badge come from the check result only, never from a bad entry
ok 102 - the label and the badge come from the check result only, never from a bad entry
---
duration_ms: 0.189041
type: 'test'
...
# Subtest: a web cite is a link only for https
ok 103 - a web cite is a link only for https
---
duration_ms: 0.237273
type: 'test'
...
# Subtest: a write notice renders its fixed line
ok 104 - a write notice renders its fixed line
---
duration_ms: 0.197996
type: 'test'
...
# Subtest: a body without the reply or notice shape is free text: the whole body, no citations
ok 105 - a body without the reply or notice shape is free text: the whole body, no citations
---
duration_ms: 0.282125
type: 'test'
...
# Subtest: an empty citations list is a reply with no cites
ok 106 - an empty citations list is a reply with no cites
---
duration_ms: 0.159547
type: 'test'
...
# Subtest: C2-01c: each level gives its universe, and its book or null
ok 107 - C2-01c: each level gives its universe, and its book or null
---
duration_ms: 2.300917
type: 'test'
...
# Subtest: C2-01c: prefixes come first: in a book that holds a prefix, a file outside it is canon and one under it playground
ok 108 - C2-01c: prefixes come first: in a book that holds a prefix, a file outside it is canon and one under it playground
---
duration_ms: 0.360816
type: 'test'
...
# Subtest: C2-01c: a canon file linking into a draft gives R6, and into its own universe-level prefix gives R5
ok 109 - C2-01c: a canon file linking into a draft gives R6, and into its own universe-level prefix gives R5
---
duration_ms: 35.645755
type: 'test'
...
# Subtest: C2-01d: each supporting level gives its universe, and its book or null
ok 110 - C2-01d: each supporting level gives its universe, and its book or null
---
duration_ms: 0.595486
type: 'test'
...
# Subtest: C2-01d: supporting comes before playground; a folder in both lists is supporting, one in the playground only stays playground
ok 111 - C2-01d: supporting comes before playground; a folder in both lists is supporting, one in the playground only stays playground
---
duration_ms: 0.44191
type: 'test'
...
# Subtest: C2-01d: only .md files are supporting; a .canvas or .base under a supporting prefix is unmapped
ok 112 - C2-01d: only .md files are supporting; a .canvas or .base under a supporting prefix is unmapped
---
duration_ms: 0.369161
type: 'test'
...
# Subtest: C2-01d: a path passes at book level, universe level, in a draft and in a folder in both lists
ok 113 - C2-01d: a path passes at book level, universe level, in a draft and in a folder in both lists
---
duration_ms: 1.328362
type: 'test'
...
# Subtest: C2-01d: a path of exactly 1024 bytes passes, and 1025 bytes made of multi-byte characters refuses
ok 114 - C2-01d: a path of exactly 1024 bytes passes, and 1025 bytes made of multi-byte characters refuses
---
duration_ms: 0.594019
type: 'test'
...
# Subtest: C2-01d: a path outside the universe's supporting folders refuses
ok 115 - C2-01d: a path outside the universe's supporting folders refuses
---
duration_ms: 0.437884
type: 'test'
...
# Subtest: C2-01d: malformed paths refuse by class, in order
ok 116 - C2-01d: malformed paths refuse by class, in order
---
duration_ms: 0.420203
type: 'test'
...
# Subtest: C2-01d: a symlink or gitlink on the way, or at the path itself, refuses
ok 117 - C2-01d: a symlink or gitlink on the way, or at the path itself, refuses
---
duration_ms: 0.202607
type: 'test'
...
# Subtest: C2-01d: a name that differs from a tree name only in case or Unicode form refuses, at the file or any folder
ok 118 - C2-01d: a name that differs from a tree name only in case or Unicode form refuses, at the file or any folder
---
duration_ms: 0.558793
type: 'test'
...
# Subtest: the survey prints folder names, counts, key sets and link-form counts, and never text
ok 119 - the survey prints folder names, counts, key sets and link-form counts, and never text
---
duration_ms: 33.052885
type: 'test'
...
# Subtest: folder names print DEL, C1 and bidi controls, U+061C among them, as escapes
ok 120 - folder names print DEL, C1 and bidi controls, U+061C among them, as escapes
---
duration_ms: 22.169779
type: 'test'
...
# Subtest: an embed of an attachment counts as an embed and as an attachment; a plain link to one does not
ok 121 - an embed of an attachment counts as an embed and as an attachment; a plain link to one does not
---
duration_ms: 17.59261
type: 'test'
...
# Subtest: with --mapping the survey adds scope, resolver step and problem counts
ok 122 - with --mapping the survey adds scope, resolver step and problem counts
---
duration_ms: 34.016719
type: 'test'
...
# Subtest: C2-01d: with --mapping the survey counts supporting files
ok 123 - C2-01d: with --mapping the survey counts supporting files
---
duration_ms: 31.833311
type: 'test'
...
# Subtest: survey exit codes: usage 4, bad mapping 3, unreadable repo 2
ok 124 - survey exit codes: usage 4, bad mapping 3, unreadable repo 2
---
duration_ms: 13.805614
type: 'test'
...
# Subtest: scripts/mosaic library survey reaches the survey
ok 125 - scripts/mosaic library survey reaches the survey
---
duration_ms: 71.695919
type: 'test'
...
# Subtest: C2-03a argv: the fixed sequence, one https allow, no other protocol key
ok 126 - C2-03a argv: the fixed sequence, one https allow, no other protocol key
---
duration_ms: 1.585018
type: 'test'
...
# Subtest: C2-03a argv: only an https URL with a plain host, no userinfo, and a plain user
ok 127 - C2-03a argv: only an https URL with a plain host, no userinfo, and a plain user
---
duration_ms: 0.654433
type: 'test'
...
# Subtest: C2-03a helper: answers only the exact prompts for the configured host and user (dewey-0765)
ok 128 - C2-03a helper: answers only the exact prompts for the configured host and user (dewey-0765)
---
duration_ms: 32.692311
type: 'test'
...
# Subtest: C2-03a first sync: served is the fetched tip, HEAD is served, the survey reads it, and the token stays in the slot
ok 129 - C2-03a first sync: served is the fetched tip, HEAD is served, the survey reads it, and the token stays in the slot
---
duration_ms: 144.525261
type: 'test'
...
# Subtest: C2-03a fast-forward: served moves, problems are rebuilt, and a repeat changes only lastFetch
ok 130 - C2-03a fast-forward: served moves, problems are rebuilt, and a repeat changes only lastFetch
---
duration_ms: 208.035662
type: 'test'
...
# Subtest: C2-03a Filbert N2: a read that took served before a sync still finds its objects after served moves
ok 131 - C2-03a Filbert N2: a read that took served before a sync still finds its objects after served moves
---
duration_ms: 188.320449
type: 'test'
...
# Subtest: C2-03a overlap: a reader during a sync sees the old pair or the new one, never a mix
ok 132 - C2-03a overlap: a reader during a sync sees the old pair or the new one, never a mix
---
duration_ms: 152.46365
type: 'test'
...
# Subtest: C2-03a diverged: a non-fast-forward keeps serving and holds until a human accepts the tip
ok 133 - C2-03a diverged: a non-fast-forward keeps serving and holds until a human accepts the tip
---
duration_ms: 346.553644
type: 'test'
...
# Subtest: C2-03a accept starts the record over, so a changed branch gets a fresh state
ok 134 - C2-03a accept starts the record over, so a changed branch gets a fresh state
---
duration_ms: 157.372553
type: 'test'
...
# Subtest: C2-03a fetch failure: a wrong token keeps serving and records the error, lastFetch unchanged
ok 135 - C2-03a fetch failure: a wrong token keeps serving and records the error, lastFetch unchanged
---
duration_ms: 190.982068
type: 'test'
...
# Subtest: C2-03a a failed first fetch records the error with nothing served
ok 136 - C2-03a a failed first fetch records the error with nothing served
---
duration_ms: 57.408738
type: 'test'
...
# Subtest: C2-03a a 302 to another host fails the fetch and the other host sees nothing
ok 137 - C2-03a a 302 to another host fails the fetch and the other host sees nothing
---
duration_ms: 57.729072
type: 'test'
...
# Subtest: C2-03a the slot: missing or unsafe refuses before git, and sync never opens it
ok 138 - C2-03a the slot: missing or unsafe refuses before git, and sync never opens it
---
duration_ms: 54.266964
type: 'test'
...
# Subtest: C2-03a sage-2021: an entry with no user refuses library-remote-invalid and runs no git
ok 139 - C2-03a sage-2021: an entry with no user refuses library-remote-invalid and runs no git
---
duration_ms: 29.954005
type: 'test'
...
# Subtest: C2-03a one sync per mirror: an overlapping call refuses library-sync-busy
ok 140 - C2-03a one sync per mirror: an overlapping call refuses library-sync-busy
---
duration_ms: 128.369485
type: 'test'
...
# Subtest: C2-03b argv: a push sends one full commit to the branch, fast-forward only, with the fetch prefix
ok 141 - C2-03b argv: a push sends one full commit to the branch, fast-forward only, with the fetch prefix
---
duration_ms: 0.531101
type: 'test'
...
# Subtest: C2-03b T1 push: a fast-forward lands with the seat's own user and file, and moves no local ref
ok 142 - C2-03b T1 push: a fast-forward lands with the seat's own user and file, and moves no local ref
---
duration_ms: 112.627778
type: 'test'
...
# Subtest: C2-03b T2 and T3: a moved tip reports the race after one fetch, and a second race refuses stale-base
ok 143 - C2-03b T2 and T3: a moved tip reports the race after one fetch, and a second race refuses stale-base
---
duration_ms: 179.764475
type: 'test'
...
# Subtest: C2-03b race fetch: while a sync of the mirror runs, the race refuses library-sync-busy
ok 144 - C2-03b race fetch: while a sync of the mirror runs, the race refuses library-sync-busy
---
duration_ms: 224.956189
type: 'test'
...
# Subtest: C2-03b T4: a dead remote, a hook refusal and a wrong token each refuse library-push-failed
ok 145 - C2-03b T4: a dead remote, a hook refusal and a wrong token each refuse library-push-failed
---
duration_ms: 162.398803
type: 'test'
...
# Subtest: C2-03b push: a refused, missing or unsafe credential runs no git
ok 146 - C2-03b push: a refused, missing or unsafe credential runs no git
---
duration_ms: 91.370083
type: 'test'
...
# Subtest: C2-03b T10 humanCredential: her login and a 0600 slot library-human, or library-human-missing
ok 147 - C2-03b T10 humanCredential: her login and a 0600 slot library-human, or library-human-missing
---
duration_ms: 0.971487
type: 'test'
...
# Subtest: C2-03b fetch credential: the state names the kind and user, a refusal runs no git, and a pre-286 state still reads
ok 148 - C2-03b fetch credential: the state names the kind and user, a refusal runs no git, and a pre-286 state still reads
---
duration_ms: 156.457827
type: 'test'
...
# Subtest: C2-03b T5 helper: the named seat's user and file, never a link, 0644, another uid, or a swapped file
ok 149 - C2-03b T5 helper: the named seat's user and file, never a link, 0644, another uid, or a swapped file
---
duration_ms: 30.094801
type: 'test'
...
1..149
# tests 149
# suites 0
# pass 149
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 14939.169237
@@ -1,182 +0,0 @@
{
"source": "c010dfd856e901f9fef26c34449901b6b5d3cc36",
"clear": "sage-4119",
"uniqueMutants": 16,
"cleanAssertionKills": 16,
"attempts": 17,
"timeoutAttempts": [
{
"mutant": "M3-missing-file",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 124,
"killed": false,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M3-missing-file.tap"
}
],
"unchangedRetry": "M3-missing-file",
"results": [
{
"mutant": "B1-forged-notice",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/B1-forged-notice.tap"
},
{
"mutant": "N1-definite-refusal",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/N1-definite-refusal.tap"
},
{
"mutant": "M1-badges",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M1-badges.tap"
},
{
"mutant": "M1-agent-label",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M1-agent-label.tap"
},
{
"mutant": "M2-http-links",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M2-http-links.tap"
},
{
"mutant": "M3-wrong-commit",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M3-wrong-commit.tap"
},
{
"mutant": "M3-missing-file",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M3-missing-file.tap"
},
{
"mutant": "M4-fallback",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M4-fallback.tap"
},
{
"mutant": "M4-problem",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M4-problem.tap"
},
{
"mutant": "M5-send",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-send.tap"
},
{
"mutant": "M5-project-receipt",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-project-receipt.tap"
},
{
"mutant": "M5-commit-input",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-commit-input.tap"
},
{
"mutant": "M5-origin",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-origin.tap"
},
{
"mutant": "M5-fetch-metadata",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-fetch-metadata.tap"
},
{
"mutant": "M6-duplicate-call",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M6-duplicate-call.tap"
},
{
"mutant": "M7-user-fence",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M7-user-fence.tap"
}
]
}
@@ -1,93 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 470.412331
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 550.51872
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 451.18881
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 446.434285
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 696.017669
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 515.453329
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 460.122939
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
not ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 497.760992
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M3-missing-file/packages/webui/tests/chat-replies-browser.test.mjs:185:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
1 !== 0
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 0
actual: 1
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M3-missing-file/packages/webui/tests/chat-replies-browser.test.mjs:197:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 457.914136
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 538.649147
type: 'test'
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 466.517968
type: 'test'
...
1..11
# tests 11
# suites 0
# pass 10
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 5659.33282
@@ -1,114 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 500.950616
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 550.660245
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 439.867813
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 547.524931
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
not ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 513.132708
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M4-fallback/packages/webui/tests/chat-replies-browser.test.mjs:153:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
+ actual - expected
+ 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · no problems'
- 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · limits fell back: citationsPerReply · no problems'
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · limits fell back: citationsPerReply · no problems'
actual: 'Library at ccccccc · fetched 5 min ago · citations required, up to 4 per reply · no problems'
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M4-fallback/packages/webui/tests/chat-replies-browser.test.mjs:157:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 556.420869
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
not ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 484.307032
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M4-fallback/packages/webui/tests/chat-replies-browser.test.mjs:174:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
+ actual - expected
+ 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · reply-limits-unreadable · no problems'
- 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · reply-limits-unreadable · no problems'
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · reply-limits-unreadable · no problems'
actual: 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · reply-limits-unreadable · no problems'
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M4-fallback/packages/webui/tests/chat-replies-browser.test.mjs:180:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 555.045885
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 533.809937
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 574.763022
type: 'test'
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 490.762497
type: 'test'
...
1..11
# tests 11
# suites 0
# pass 9
# fail 2
# cancelled 0
# skipped 0
# todo 0
# duration_ms 5854.19283
@@ -1,95 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 485.046449
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 655.676431
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 510.339561
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 567.942203
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 704.366439
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 469.717825
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
not ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 497.165447
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M4-problem/packages/webui/tests/chat-replies-browser.test.mjs:174:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
+ actual - expected
+ 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · no problems'
- 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · reply-limits-unreadable · no problems'
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · reply-limits-unreadable · no problems'
actual: 'Library at ccccccc · fetched 5 min ago · citations optional, up to 8 per reply · limits fell back: requireCitation, citationsPerReply · no problems'
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M4-problem/packages/webui/tests/chat-replies-browser.test.mjs:180:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 513.866228
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 569.647355
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 551.194753
type: 'test'
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 574.069655
type: 'test'
...
1..11
# tests 11
# suites 0
# pass 10
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6206.901243
@@ -1,105 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 17.56187
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 6.573454
type: 'test'
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
not ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 5.102558
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M5-commit-input/packages/webui/tests/library-routes.test.mjs:64:1'
failureType: 'testCodeFailure'
error: |-
{"project":"books","commit":"abc"}
200 !== 400
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 400
actual: 200
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M5-commit-input/packages/webui/tests/library-routes.test.mjs:69:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.799299
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 4.120395
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.602233
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 5.100082
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.257159
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.469608
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.102224
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 0.904624
type: 'test'
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.144651
type: 'test'
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 0.859099
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 12
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 160.00624
@@ -1,105 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 17.39585
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
not ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 5.265876
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M5-fetch-metadata/packages/webui/tests/library-routes.test.mjs:48:1'
failureType: 'testCodeFailure'
error: |-
sec-fetch-site
200 !== 403
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 403
actual: 200
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M5-fetch-metadata/packages/webui/tests/library-routes.test.mjs:57:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 6.437656
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.440243
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 4.17516
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.649503
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 7.072294
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.692884
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.597525
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.276025
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 1.100885
type: 'test'
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.386573
type: 'test'
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 0.982966
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 12
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 164.308483
@@ -1,105 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 16.327596
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
not ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 5.549357
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M5-origin/packages/webui/tests/library-routes.test.mjs:48:1'
failureType: 'testCodeFailure'
error: |-
origin
200 !== 403
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 403
actual: 200
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M5-origin/packages/webui/tests/library-routes.test.mjs:57:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 5.885835
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 5.968744
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 4.127358
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.477278
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 4.992417
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.319805
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.463829
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 0.97695
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 0.84946
type: 'test'
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.075946
type: 'test'
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 0.790109
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 12
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 153.089261
@@ -1,105 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 16.594256
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 6.357671
type: 'test'
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 5.436157
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.396789
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 4.542251
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.555592
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 5.664535
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.246607
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.473064
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.033065
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
not ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 1.50603
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M5-project-receipt/packages/webui/tests/library-routes.test.mjs:145:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
200 !== 503
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 503
actual: 200
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M5-project-receipt/packages/webui/tests/library-routes.test.mjs:148:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.515154
type: 'test'
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 0.808881
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 12
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 159.002473
@@ -1,106 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 17.33747
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 6.461375
type: 'test'
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 5.304369
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.105248
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 4.101878
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.480254
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 5.228483
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.215538
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.425662
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.109755
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 0.944956
type: 'test'
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.128453
type: 'test'
...
# 2026-10-24T15:01:18.477Z library-revert user="jason" project="books" commit="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" commit=bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
# Subtest: a configured revert callback remains unreachable when send is off
not ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 1.518536
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M5-send/packages/webui/tests/library-routes.test.mjs:175:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
200 !== 403
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 403
actual: 200
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M5-send/packages/webui/tests/library-routes.test.mjs:181:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
1..13
# tests 13
# suites 0
# pass 12
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 156.535885
@@ -1,177 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
not ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 17.505752
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:40:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
[
{
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
project: 'books'
},
+ {
+ commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
+ project: 'books'
+ }
]
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
actual:
0:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
1:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:43:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 6.797321
type: 'test'
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 5.344889
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.013322
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
not ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 2.535793
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:88:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
2 !== 1
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 1
actual: 2
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:96:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.723459
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 5.149924
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.316788
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.449534
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.00664
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
not ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 1.09366
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:145:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
[
{
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
project: 'books'
},
+ {
+ commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
+ project: 'books'
+ }
]
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
actual:
0:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
1:
project: 'books'
commit: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M6-duplicate-call/packages/webui/tests/library-routes.test.mjs:151:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.301123
type: 'test'
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 0.794848
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 10
# fail 3
# cancelled 0
# skipped 0
# todo 0
# duration_ms 151.811146
@@ -1,126 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 16.2397
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 6.215727
type: 'test'
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 5.186689
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.315391
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 4.12887
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.445585
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 5.067822
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 1.189039
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
not ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.811819
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M7-user-fence/packages/webui/tests/library-routes.test.mjs:132:1'
failureType: 'testCodeFailure'
error: |-
/api/library/status
true !== false
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: false
actual: true
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M7-user-fence/packages/webui/tests/library-routes.test.mjs:133:106)
Test.runInAsyncScope (node:async_hooks:226:14)
Test.run (node:internal/test_runner/test:1402:25)
Test.processPendingSubtests (node:internal/test_runner/test:974:18)
Test.postRun (node:internal/test_runner/test:1542:19)
Test.run (node:internal/test_runner/test:1467:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.518953
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 0.929821
type: 'test'
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
not ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.005143
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M7-user-fence/packages/webui/tests/library-routes.test.mjs:155:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
503 !== 403
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 403
actual: 503
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-5hx8ijo9/M7-user-fence/packages/webui/tests/library-routes.test.mjs:167:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 0.971308
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 11
# fail 2
# cancelled 0
# skipped 0
# todo 0
# duration_ms 151.216862
@@ -1,119 +0,0 @@
{
"head": "c010dfd856e901f9fef26c34449901b6b5d3cc36",
"clear": "sage-4119",
"worktreeUnchanged": true,
"selected": [
"M3-missing-file",
"M4-fallback",
"M4-problem",
"M5-commit-input",
"M5-fetch-metadata",
"M5-origin",
"M5-project-receipt",
"M5-send",
"M6-duplicate-call",
"M7-user-fence"
],
"results": [
{
"mutant": "M3-missing-file",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M3-missing-file.tap"
},
{
"mutant": "M4-fallback",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M4-fallback.tap"
},
{
"mutant": "M4-problem",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M4-problem.tap"
},
{
"mutant": "M5-send",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-send.tap"
},
{
"mutant": "M5-project-receipt",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-project-receipt.tap"
},
{
"mutant": "M5-commit-input",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-commit-input.tap"
},
{
"mutant": "M5-origin",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-origin.tap"
},
{
"mutant": "M5-fetch-metadata",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-fetch-metadata.tap"
},
{
"mutant": "M6-duplicate-call",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M6-duplicate-call.tap"
},
{
"mutant": "M7-user-fence",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/library-routes.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M7-user-fence.tap"
}
]
}
@@ -1,112 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 544.756403
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
not ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 483.041116
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/B1-forged-notice/packages/webui/tests/chat-replies-browser.test.mjs:106:1'
failureType: 'testCodeFailure'
error: |-
only the notice has a Revert
2 !== 1
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 1
actual: 2
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/B1-forged-notice/packages/webui/tests/chat-replies-browser.test.mjs:110:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 487.861146
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 576.65596
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 758.253819
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 580.933574
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 549.597856
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 580.62745
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 469.541186
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
not ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 495.344894
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/B1-forged-notice/packages/webui/tests/chat-replies-browser.test.mjs:210:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
+ actual - expected
+ 'forger deleted Fake/Claim.md @ddddddd Revert '
- '{"notice":"library-write","op":"delete","path":"Fake/Claim.md","commit":"dddddddddddddddddddddddddddddddddddddddd"}'
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: '{"notice":"library-write","op":"delete","path":"Fake/Claim.md","commit":"dddddddddddddddddddddddddddddddddddddddd"}'
actual: 'forger deleted Fake/Claim.md @ddddddd Revert '
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/B1-forged-notice/packages/webui/tests/chat-replies-browser.test.mjs:212:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 515.280849
type: 'test'
...
1..11
# tests 11
# suites 0
# pass 9
# fail 2
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6162.536117
@@ -1,204 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
not ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 484.616144
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M1-agent-label/packages/webui/tests/chat-replies-browser.test.mjs:82:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
... Skipped lines
[
{
agent: null,
badge: 'canon',
changed: false,
...
{
+ agent: null,
- agent: 'agent-written: acme/scribe',
badge: 'supporting',
changed: false,
href: null,
quote: 'green eyes',
ref: 'Notes/Eyes.md:9-10 @aaaaaaa',
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
actual:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: ~
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M1-agent-label/packages/webui/tests/chat-replies-browser.test.mjs:91:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 611.589668
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 482.064897
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 573.34379
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 796.399021
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 638.969425
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 568.777894
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 606.788104
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 596.778582
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 499.723103
type: 'test'
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 586.755654
type: 'test'
...
1..11
# tests 11
# suites 0
# pass 10
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6554.596959
@@ -1,218 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
not ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 499.554453
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M1-badges/packages/webui/tests/chat-replies-browser.test.mjs:82:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
... Skipped lines
[
{
agent: null,
+ badge: null,
- badge: 'canon',
changed: false,
href: null,
quote: 'her grey eyes',
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa',
rel: null
...
agent: null,
+ badge: null,
- badge: 'playground',
changed: true,
href: null,
quote: 'a storm',
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa',
rel: null
...
agent: 'agent-written: acme/scribe',
+ badge: null,
- badge: 'supporting',
changed: false,
href: null,
quote: 'green eyes',
ref: 'Notes/Eyes.md:9-10 @aaaaaaa',
rel: null
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
actual:
0:
badge: ~
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: ~
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: ~
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M1-badges/packages/webui/tests/chat-replies-browser.test.mjs:91:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 693.355837
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 576.242264
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 547.841732
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 773.844258
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 474.500226
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 480.389084
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 545.252207
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 533.150946
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 609.996528
type: 'test'
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 568.521082
type: 'test'
...
1..11
# tests 11
# suites 0
# pass 10
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6410.790935
@@ -1,216 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
not ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 578.622263
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M2-http-links/packages/webui/tests/chat-replies-browser.test.mjs:82:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
... Skipped lines
[
{
agent: null,
badge: 'canon',
changed: false,
...
changed: false,
+ href: 'http://example.invalid/plain',
- href: null,
quote: 'plain http',
ref: 'http://example.invalid/plain',
+ rel: 'noopener noreferrer'
- rel: null
},
{
agent: null,
badge: 'web',
changed: false,
+ href: 'javascript:window.injected=2',
- href: null,
quote: 'script',
ref: 'javascript:window.injected=2',
+ rel: 'noopener noreferrer'
- rel: null
}
]
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: ~
rel: ~
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: ~
rel: ~
quote: 'script'
agent: ~
changed: false
actual:
0:
badge: 'canon'
ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa'
href: ~
rel: ~
quote: 'her grey eyes'
agent: ~
changed: false
1:
badge: 'playground'
ref: 'Book One/Playground/What If.md:5-6 @aaaaaaa'
href: ~
rel: ~
quote: 'a storm'
agent: ~
changed: true
2:
badge: 'supporting'
ref: 'Notes/Eyes.md:9-10 @aaaaaaa'
href: ~
rel: ~
quote: 'green eyes'
agent: 'agent-written: acme/scribe'
changed: false
3:
badge: 'web'
ref: 'https://example.invalid/tides'
href: 'https://example.invalid/tides'
rel: 'noopener noreferrer'
quote: 'spring tides'
agent: ~
changed: false
4:
badge: 'web'
ref: 'http://example.invalid/plain'
href: 'http://example.invalid/plain'
rel: 'noopener noreferrer'
quote: 'plain http'
agent: ~
changed: false
5:
badge: 'web'
ref: 'javascript:window.injected=2'
href: 'javascript:window.injected=2'
rel: 'noopener noreferrer'
quote: 'script'
agent: ~
changed: false
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M2-http-links/packages/webui/tests/chat-replies-browser.test.mjs:91:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 674.037314
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 539.674498
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 549.929961
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 733.508052
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 558.882096
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 482.305039
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 589.360501
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 553.483841
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 511.343958
type: 'test'
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 663.342458
type: 'test'
...
1..11
# tests 11
# suites 0
# pass 10
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6557.795577
@@ -1,89 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 526.348261
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 678.242429
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 544.685022
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 565.614317
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
not ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 30643.498109
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M3-missing-file/packages/webui/tests/chat-replies-browser.test.mjs:153:1'
failureType: 'hookFailed'
error: 'failed running after hook'
code: 'ERR_TEST_FAILURE'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 543.239455
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 462.141017
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
not ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 504.908041
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M3-missing-file/packages/webui/tests/chat-replies-browser.test.mjs:185:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
1 !== 0
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 0
actual: 1
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M3-missing-file/packages/webui/tests/chat-replies-browser.test.mjs:197:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 481.183489
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 498.770059
type: 'test'
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 593.529689
type: 'test'
...
# Interrupted while running: packages/webui/tests/chat-replies-browser.test.mjs at /mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M3-missing-file/packages/webui/tests/chat-replies-browser.test.mjs:1:1
@@ -1,93 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 553.345242
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 671.584475
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 607.441285
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 585.588732
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 723.130889
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 564.849791
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 581.272663
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
not ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 614.17879
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M3-wrong-commit/packages/webui/tests/chat-replies-browser.test.mjs:185:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
1 !== 0
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 0
actual: 1
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/M3-wrong-commit/packages/webui/tests/chat-replies-browser.test.mjs:197:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 583.398144
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 499.868946
type: 'test'
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 591.187308
type: 'test'
...
1..11
# tests 11
# suites 0
# pass 10
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6698.063711
@@ -1,95 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 570.514399
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 573.899667
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 599.462257
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 496.486604
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 723.860259
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 500.307511
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 473.78958
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 497.240455
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 567.260206
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 492.906452
type: 'test'
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
not ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 519.51415
type: 'test'
location: '/mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/N1-definite-refusal/packages/webui/tests/chat-replies-browser.test.mjs:219:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
+ actual - expected
+ 'Outcome unknown. Read the library status before trying again; nothing was retried.'
- 'Not reverted (owner-only).'
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 'Not reverted (owner-only).'
actual: 'Outcome unknown. Read the library status before trying again; nothing was retried.'
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/rbCdM2/mosaic-row225-mutants-1446zboj/N1-definite-refusal/packages/webui/tests/chat-replies-browser.test.mjs:223:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
1..11
# tests 11
# suites 0
# pass 10
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6130.725439
@@ -1,95 +0,0 @@
{
"head": "c010dfd856e901f9fef26c34449901b6b5d3cc36",
"clear": "sage-4119",
"worktreeUnchanged": true,
"selected": [
"B1-forged-notice",
"M1-agent-label",
"M1-badges",
"M2-http-links",
"M3-missing-file",
"M3-wrong-commit",
"M4-fallback",
"M4-problem",
"M5-commit-input",
"M5-fetch-metadata",
"M5-origin",
"M5-project-receipt",
"M5-send",
"M6-duplicate-call",
"M7-user-fence",
"N1-definite-refusal"
],
"results": [
{
"mutant": "B1-forged-notice",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/B1-forged-notice.tap"
},
{
"mutant": "N1-definite-refusal",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/N1-definite-refusal.tap"
},
{
"mutant": "M1-badges",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M1-badges.tap"
},
{
"mutant": "M1-agent-label",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M1-agent-label.tap"
},
{
"mutant": "M2-http-links",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M2-http-links.tap"
},
{
"mutant": "M3-wrong-commit",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 1,
"killed": true,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M3-wrong-commit.tap"
},
{
"mutant": "M3-missing-file",
"anchorHits": 1,
"restored": true,
"worktreeUnchanged": true,
"exit": 124,
"killed": false,
"test": "packages/webui/tests/chat-replies-browser.test.mjs",
"log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M3-missing-file.tap"
}
]
}
@@ -1,10 +0,0 @@
{"mutant": "M3-missing-file", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M3-missing-file.tap"}
{"mutant": "M4-fallback", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M4-fallback.tap"}
{"mutant": "M4-problem", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M4-problem.tap"}
{"mutant": "M5-send", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-send.tap"}
{"mutant": "M5-project-receipt", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-project-receipt.tap"}
{"mutant": "M5-commit-input", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-commit-input.tap"}
{"mutant": "M5-origin", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-origin.tap"}
{"mutant": "M5-fetch-metadata", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-fetch-metadata.tap"}
{"mutant": "M6-duplicate-call", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M6-duplicate-call.tap"}
{"mutant": "M7-user-fence", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/library-routes.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M7-user-fence.tap"}
@@ -1,7 +0,0 @@
{"mutant": "B1-forged-notice", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/B1-forged-notice.tap"}
{"mutant": "N1-definite-refusal", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/N1-definite-refusal.tap"}
{"mutant": "M1-badges", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M1-badges.tap"}
{"mutant": "M1-agent-label", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M1-agent-label.tap"}
{"mutant": "M2-http-links", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M2-http-links.tap"}
{"mutant": "M3-wrong-commit", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 1, "killed": true, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M3-wrong-commit.tap"}
{"mutant": "M3-missing-file", "anchorHits": 1, "restored": true, "worktreeUnchanged": true, "exit": 124, "killed": false, "test": "packages/webui/tests/chat-replies-browser.test.mjs", "log": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M3-missing-file.tap"}
@@ -1,3 +0,0 @@
npm warn deprecated [email protected]: Use your platform's native DOMException instead
added 128 packages in 2s
@@ -1,2 +0,0 @@
added 2 packages in 211ms
@@ -1,188 +0,0 @@
[
{
"file": "npm-root.log",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/npm-root.log",
"rawSha256": "862418d3d4124871ca5fcaf35e16c318a04e2888da83836751ddfea110efeb06",
"displayCopy": "trailing whitespace removed"
},
{
"file": "npm-webui.log",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/npm-webui.log",
"rawSha256": "9325fac313c872e8d9a567e783f9e0fc443cf1b67d01fa757c84e264b3c53253",
"displayCopy": "trailing whitespace removed"
},
{
"file": "review-red.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/review-red.tap",
"rawSha256": "3e5b386f7c8709fe8c7cb47c96595d1519f73a78fcc89bd19a50189aa7d2f372",
"displayCopy": "trailing whitespace removed"
},
{
"file": "review-green.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/review-green.tap",
"rawSha256": "ab71a12a07c73117642ead8bb1322ab22e4ae4094f27cbdcd1d144f90b79c087",
"displayCopy": "trailing whitespace removed"
},
{
"file": "editor-build.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/editor-build.tap",
"rawSha256": "6e4fb4cbdd36ff817c8246e727f382ada773d4667f314e0a5a187369c2c994ba",
"displayCopy": "trailing whitespace removed"
},
{
"file": "webui-full.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/webui-full.tap",
"rawSha256": "351d2b0b29d70156d774e2efb7839eaaed6fc68218e4211333d1d11c3b5f10c7",
"displayCopy": "trailing whitespace removed"
},
{
"file": "library-full.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/library-full.tap",
"rawSha256": "efd5475b1135285bf717b753e3f9f32a862bfc98d6b949830c7f97037136f92e",
"displayCopy": "trailing whitespace removed"
},
{
"file": "bus-full.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/bus-full.tap",
"rawSha256": "db5d52d312533972816c6dd421b883fd5ecc9e4783e9d7ff3565795d5afa52d6",
"displayCopy": "trailing whitespace removed"
},
{
"file": "channel-proof.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/channel-proof.tap",
"rawSha256": "791262a919fbb5ea870d48ef44c8b6cc41b58319ee808cf83a51c872821c082a",
"displayCopy": "trailing whitespace removed"
},
{
"file": "gate-summary.json",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/gate-summary.json",
"rawSha256": "c87ab2352c0a464b14b79cabe2a75c5309dbd0c8f37a77cc5487b4536b541154",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2/B1-forged-notice.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/B1-forged-notice.tap",
"rawSha256": "5b26968bccb36e71a03b27b5108e177ade0fb1a6d8737675738898c37e48b1ad",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2/M1-agent-label.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M1-agent-label.tap",
"rawSha256": "b591ca07b9f19193ff241703d36cb37514496c2256d044cab8e1fb0f6ffbd468",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2/M1-badges.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M1-badges.tap",
"rawSha256": "ef934b609780a19a55fe6d758824c4efdac97eebd016022f7fe6a217fa119f34",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2/M2-http-links.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M2-http-links.tap",
"rawSha256": "0a8e7adeb2d836d3c4d2f1689da90aac5b50be0fdb828ab7957df35172c8a0f5",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2/M3-missing-file.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M3-missing-file.tap",
"rawSha256": "93abedbf5f096587255230f3ae2c867ce812c21480227fac4ebbcbb485485aa2",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2/M3-wrong-commit.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/M3-wrong-commit.tap",
"rawSha256": "caef00e48c17091d27f7d82eb4ff02205220dac8257db5735ca31eb7341ff090",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2/N1-definite-refusal.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/N1-definite-refusal.tap",
"rawSha256": "7033ab1ad4d8d4863cebe2b22b21f1a662a18b6b98cfe78c81791b6c7fcf8107",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2/summary.json",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2/summary.json",
"rawSha256": "85e174a06a0c85b4038c254f80b47d2bddb978351935dd26467d1192366f9570",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2-retry/M3-missing-file.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M3-missing-file.tap",
"rawSha256": "80da526cee76c67bcb20f3c9cb523dd4ac7eb5ef0ae6eb6e5a723a2467808d6d",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2-retry/M4-fallback.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M4-fallback.tap",
"rawSha256": "248454011e559e602ab0cc95bcbe95ef02f73c214bbc4bca613defba5ff7b5b6",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2-retry/M4-problem.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M4-problem.tap",
"rawSha256": "fd8c902209eaf6bd35bf5955092ee9868eacb38d4dc376b999c38fc96acdef4c",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2-retry/M5-commit-input.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-commit-input.tap",
"rawSha256": "e3849805310c068fbb943cbeacb79111ea13aaec502e4a6988fd4e00387c6a98",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2-retry/M5-fetch-metadata.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-fetch-metadata.tap",
"rawSha256": "5f2c96a1b87c5a9c15291af9bd316f4c48a6a3d3e22a4374b4cc71bac447a496",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2-retry/M5-origin.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-origin.tap",
"rawSha256": "49e1c810d04b4fec76a160229ab4dc83cb0375d7f8b0d44ac069e81fb0b93d93",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2-retry/M5-project-receipt.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-project-receipt.tap",
"rawSha256": "712506f1fac052c1d871a8e893227b758cf9f0f5a774679a1015913355a8bf8b",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2-retry/M5-send.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M5-send.tap",
"rawSha256": "44ac7828e5393d9c3851d47de750ed5f0ad2bc086d90e6a6077e9576b86baed2",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2-retry/M6-duplicate-call.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M6-duplicate-call.tap",
"rawSha256": "4ac6b81d08d43e7dfae129ed8a0a6bb1f93f4a43da62d280c1287ad08b799968",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2-retry/M7-user-fence.tap",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/M7-user-fence.tap",
"rawSha256": "bcbc30902e4b83ea945832a02fd44f7c9b8fe43046dc04a5d3337d7ab78128e8",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-r2-retry/summary.json",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-r2-retry/summary.json",
"rawSha256": "791cae959f674c664169d757e3e8a4b6a47cc0f0c8876a5ae9be59c2c31a4d62",
"displayCopy": "trailing whitespace removed"
},
{
"file": "mutants-run.log",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-run.log",
"rawSha256": "5d45d68a1fa06758f5f6040fcabb62ac04f60dd2728010447040388717ee99ea",
"displayCopy": "byte for byte"
},
{
"file": "mutants-retry-run.log",
"rawPath": "/mnt/storage/scratch/tmp/rbCdM2/mutants-retry-run.log",
"rawSha256": "54f3885633b8468832bf92709ad186788be14af5ef63ce8162945ae057fbae7f",
"displayCopy": "byte for byte"
}
]
@@ -1,76 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 531.792852
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 753.297454
type: 'test'
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 664.142742
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 529.724858
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 829.621742
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 524.335317
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 584.886616
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 735.402668
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 661.171998
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 672.740521
type: 'test'
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 623.613852
type: 'test'
...
1..11
# tests 11
# suites 0
# pass 11
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 7244.663147
@@ -1,131 +0,0 @@
TAP version 13
# Subtest: chat replies: free text, cites with badges, the agent label, changed since and safe links
ok 1 - chat replies: free text, cites with badges, the agent label, changed since and safe links
---
duration_ms: 698.471827
type: 'test'
...
# Subtest: chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
not ok 2 - chat replies: a write notice reads as its line with a Revert; a refused revert shows its code
---
duration_ms: 602.729245
type: 'test'
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/chat-replies-browser.test.mjs:106:1'
failureType: 'testCodeFailure'
error: |-
only the notice has a Revert
2 !== 1
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 1
actual: 2
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/chat-replies-browser.test.mjs:110:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat replies: a read-only Console shows the notice with Revert disabled
ok 3 - chat replies: a read-only Console shows the notice with Revert disabled
---
duration_ms: 498.595004
type: 'test'
...
# Subtest: chat status line: served commit and age, divergence, fetch error and the problems one click away
ok 4 - chat status line: served commit and age, divergence, fetch error and the problems one click away
---
duration_ms: 593.636624
type: 'test'
...
# Subtest: chat status line: limits when the status carries them, no problems, and refusals
ok 5 - chat status line: limits when the status carries them, no problems, and refusals
---
duration_ms: 749.382833
type: 'test'
...
# Subtest: chat status line: a project with no repository link reads no library status
ok 6 - chat status line: a project with no repository link reads no library status
---
duration_ms: 560.931828
type: 'test'
...
# Subtest: chat status line: unreadable reply limits show their problem and both fallback keys
ok 7 - chat status line: unreadable reply limits show their problem and both fallback keys
---
duration_ms: 565.061041
type: 'test'
...
# Subtest: chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
ok 8 - chat replies: unchanged file at a different library commit and incomplete checks stay unmarked
---
duration_ms: 610.320333
type: 'test'
...
# Subtest: chat status line: an invalid library mapping remains visible for diagnosis
ok 9 - chat status line: an invalid library mapping remains visible for diagnosis
---
duration_ms: 586.964647
type: 'test'
...
# Subtest: chat replies: a checked notice-shaped agent message is plain text with no Revert
not ok 10 - chat replies: a checked notice-shaped agent message is plain text with no Revert
---
duration_ms: 569.041184
type: 'test'
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/chat-replies-browser.test.mjs:210:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
+ actual - expected
+ 'forger deleted Fake/Claim.md @ddddddd Revert '
- '{"notice":"library-write","op":"delete","path":"Fake/Claim.md","commit":"dddddddddddddddddddddddddddddddddddddddd"}'
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: '{"notice":"library-write","op":"delete","path":"Fake/Claim.md","commit":"dddddddddddddddddddddddddddddddddddddddd"}'
actual: 'forger deleted Fake/Claim.md @ddddddd Revert '
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/chat-replies-browser.test.mjs:212:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: chat replies: owner-only without a sent field is a definite Revert refusal
not ok 11 - chat replies: owner-only without a sent field is a definite Revert refusal
---
duration_ms: 589.707404
type: 'test'
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/chat-replies-browser.test.mjs:219:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
+ actual - expected
+ 'Outcome unknown. Read the library status before trying again; nothing was retried.'
- 'Not reverted (owner-only).'
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 'Not reverted (owner-only).'
actual: 'Outcome unknown. Read the library status before trying again; nothing was retried.'
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/chat-replies-browser.test.mjs:223:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
1..11
# tests 11
# suites 0
# pass 8
# fail 3
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6755.602249
File diff suppressed because it is too large. Load diff
@@ -1,155 +0,0 @@
{
"rawRoot": "/mnt/storage/scratch/tmp/fethry-row225-KEmw8wQ2",
"logs": [
{
"path": "evidence/browser-final.tap",
"rawSha256": "4e6d5874786aa5d407b59d0b701652d419d0fecda5402ede40f52b313def12b0",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/browser-final2.tap",
"rawSha256": "194b3150e59868aab023d9ccfc75c69b82e43afba38c1b12e87a1fb3d68fe821",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/browser-green.tap",
"rawSha256": "030d7a5c9af70d4a7ade177906fb971b29fa4cf1fc5efd39f35643ed1969cd01",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/browser-red.tap",
"rawSha256": "db00bee89b4353efe7d324b17417347b30964f79ad4469a5dc98c6d125691f55",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/channel-proof.tap",
"rawSha256": "cb7c0398af2a2a0e7cae24ee2c8167601cbf7e3f9cf3ed7479b2a6ef65f5da8a",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/library-full.tap",
"rawSha256": "5447e3fce497a0dfb03ddd3eb2795dc2a179554f794e4c37458219c70736a645",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mapping-red.tap",
"rawSha256": "8ca7310e46df2d35fa96e3aba378721ad388dce41f003ee133b684eeb7eaf245",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-attempt1/M1-agent-label.tap",
"rawSha256": "db7ab1c64bc05b719e5164ed4ce1dd8b79ad53309d9b8e3e1ca0cc8867bca70f",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-attempt1/M1-badges.tap",
"rawSha256": "08351b9061351812008ebd7067a9aed24a9e5386d8f6284fb44ae0f59c8f2eca",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-attempt1/M2-http-links.tap",
"rawSha256": "69921707c219d19fb2c33a3995268b6442d783ec702050b32f78d8d2db6fb581",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-attempt1/M3-wrong-commit.tap",
"rawSha256": "fe9fb027efae26799e2dfac539e0986402cefe806ca31479f52420e67a8df423",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M1-agent-label.tap",
"rawSha256": "afbab60cbc12348c4d0c4be1a8c4590dd157c71f9ffc7375bbde82facb9868bb",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M1-badges.tap",
"rawSha256": "3bb9fb9dcf74a398934d6de48c2ca99ab2eab618fb944297b3d7db00eec0e69f",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M2-http-links.tap",
"rawSha256": "8909921fcf602fcafa94edd19c1167a8f91ed970a3e649110e3503836690e567",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M3-missing-file.tap",
"rawSha256": "3fd2749ea5bc4245f7d49f585b82eae60f61ed150ab4dd22e8148a1e9467c8c7",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M3-wrong-commit.tap",
"rawSha256": "85696c155f0a2844ee903c8fb38cab0a0fb6b0610c8b9ee8aa77a08cb6012ca2",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M4-fallback.tap",
"rawSha256": "6f59f2845e0130d4d2fe1cb4aa7a435502f6043e11ed4efd67339c12e986103a",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M4-problem.tap",
"rawSha256": "61ab08b823eb08cbb9c9eeaac82b297ea5d1272bb5dc64e9598734688b55eb80",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M5-commit-input.tap",
"rawSha256": "b703ee5ca47e5c64749aab3edfb5ae2e085367921ffa75337f4f0e5c7b3dc404",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M5-fetch-metadata.tap",
"rawSha256": "6951725340e4d74764552e7e406e0fc4bafeec35172de56d13bca852b92daa1a",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M5-origin.tap",
"rawSha256": "95fcb5a92e82fa7de2972fd8f78c4f0f6d1c5f49885123e01fb1b69c3b62ba21",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M5-project-receipt.tap",
"rawSha256": "a86806a189ef73f61ddd88479336321964eadef0793c7b45da6573ccd3e38801",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M5-send.tap",
"rawSha256": "4cce523356a3e2041197156412eb35088f8b6d38fcceca2d9b76b6098ad17627",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M6-duplicate-call.tap",
"rawSha256": "6dda962389fbc7379ac7e7bc79cc24b68db00d4f9bb649ab73e75eaa87a5da00",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/mutants-final/M7-user-fence.tap",
"rawSha256": "abec36c65c3ece6e7d0c4dfd41eede62c9a585f07b3ed4cb3b8d05f0dbabaed3",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/render-green.tap",
"rawSha256": "98463ac3d1262f84758def8bbdc27c46fa7c674bb8e8c20b9c752083163d0864",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/render-red.tap",
"rawSha256": "03645c7a5ba0c3d285e58e1d6fd05dc58a1174b463a258b01bcf258b2141a85e",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/routes-final.tap",
"rawSha256": "f2b58a97c301dc9e57458d82785bd50debb2254df5d411d8e8c4e6b9c0aa00d2",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/routes-green.tap",
"rawSha256": "c34451a0eef5f82fe6ddcbbf370179d8e8a14e36168175bdeff5b32e2072e9d6",
"normalization": "trailing whitespace removed from display copy"
},
{
"path": "evidence/routes-red.tap",
"rawSha256": "5ca5bafe2465209128508e5459f4826c34d00de86d1e79671196dc4e5c57f874",
"normalization": "trailing whitespace removed from display copy"
}
]
}
@@ -1,17 +0,0 @@
✔ free text renders as itself with no citations (1.332106ms)
✔ a cited reply renders its text, then each cite with the badge from the check result (0.493062ms)
✔ a parsed body renders as its string does (0.2706ms)
✔ without a check result a path cite has no badge, no label and is never changed (0.175324ms)
✔ the label and the badge come from the check result only, never from a bad entry (0.171275ms)
✔ a web cite is a link only for https (0.254363ms)
✔ a write notice renders its fixed line (0.201038ms)
✔ a body without the reply or notice shape is free text: the whole body, no citations (0.315846ms)
✔ an empty citations list is a reply with no cites (0.167552ms)
ℹ tests 9
ℹ suites 0
ℹ pass 9
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 70.188818
@@ -1,17 +0,0 @@
✔ free text renders as itself with no citations (1.211164ms)
✔ a cited reply renders its text, then each cite with the badge from the check result (0.457937ms)
✔ a parsed body renders as its string does (0.255138ms)
✔ without a check result a path cite has no badge, no label and is never changed (0.189285ms)
✔ the label and the badge come from the check result only, never from a bad entry (0.162195ms)
✔ a web cite is a link only for https (0.231665ms)
✔ a write notice renders its fixed line (0.167596ms)
✔ a body without the reply or notice shape is free text: the whole body, no citations (0.283804ms)
✔ an empty citations list is a reply with no cites (0.145774ms)
ℹ tests 9
ℹ suites 0
ℹ pass 9
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 73.226696
@@ -1,88 +0,0 @@
TAP version 13
# Subtest: a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
ok 1 - a signed-in same-origin revert reaches exactly one library.revert and returns the new commit
---
duration_ms: 18.873338
type: 'test'
...
# Subtest: a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
ok 2 - a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata
---
duration_ms: 7.061714
type: 'test'
...
# Subtest: a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
ok 3 - a revert takes a project and a 40-hex commit, nothing else, before the bus is asked
---
duration_ms: 6.45503
type: 'test'
...
# Subtest: a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
ok 4 - a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal
---
duration_ms: 6.964122
type: 'test'
...
# Subtest: a revert whose answer is lost or unusable is reported unknown and is never retried
ok 5 - a revert whose answer is lost or unusable is reported unknown and is never retried
---
duration_ms: 5.745801
type: 'test'
...
# Subtest: the status read takes one project query and answers the bus result for that project
ok 6 - the status read takes one project query and answers the bus result for that project
---
duration_ms: 2.815134
type: 'test'
...
# Subtest: a status answer for another project or of the wrong shape is refused; a refusal keeps its status
ok 7 - a status answer for another project or of the wrong shape is refused; a refusal keeps its status
---
duration_ms: 7.105984
type: 'test'
...
# Subtest: the status read needs no send; a read-only Console still has no revert
ok 8 - the status read needs no send; a read-only Console still has no revert
---
duration_ms: 2.002948
type: 'test'
...
# Subtest: library routes are the owner's: a granted user is refused them, and the tester never reverts
ok 9 - library routes are the owner's: a granted user is refused them, and the tester never reverts
---
duration_ms: 0.708324
type: 'test'
...
# Subtest: the page gets the one library renderer, byte for byte, as a JavaScript module
ok 10 - the page gets the one library renderer, byte for byte, as a JavaScript module
---
duration_ms: 1.553573
type: 'test'
...
# Subtest: a revert receipt for another project is unknown and is never retried
ok 11 - a revert receipt for another project is unknown and is never retried
---
duration_ms: 1.371025
type: 'test'
...
# Subtest: a granted-user HTTP session cannot reach owner library callbacks
ok 12 - a granted-user HTTP session cannot reach owner library callbacks
---
duration_ms: 1.586864
type: 'test'
...
# Subtest: a configured revert callback remains unreachable when send is off
ok 13 - a configured revert callback remains unreachable when send is off
---
duration_ms: 1.226995
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 13
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 177.384993
@@ -1,20 +0,0 @@
✔ a signed-in same-origin revert reaches exactly one library.revert and returns the new commit (19.266366ms)
✔ a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata (7.415028ms)
✔ a revert takes a project and a 40-hex commit, nothing else, before the bus is asked (6.176121ms)
✔ a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal (7.325625ms)
✔ a revert whose answer is lost or unusable is reported unknown and is never retried (5.0635ms)
✔ the status read takes one project query and answers the bus result for that project (3.008847ms)
✔ a status answer for another project or of the wrong shape is refused; a refusal keeps its status (6.314096ms)
✔ the status read needs no send; a read-only Console still has no revert (1.440122ms)
✔ library routes are the owner's: a granted user is refused them, and the tester never reverts (0.563979ms)
✔ the page gets the one library renderer, byte for byte, as a JavaScript module (1.180551ms)
✔ a revert receipt for another project is unknown and is never retried (1.12255ms)
✔ a granted-user HTTP session cannot reach owner library callbacks (1.351581ms)
ℹ tests 12
ℹ suites 0
ℹ pass 12
ℹ fail 0
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 182.202771
@@ -1,76 +0,0 @@
✔ a signed-in same-origin revert reaches exactly one library.revert and returns the new commit (18.853567ms)
✔ a revert needs send, the named Host, the user, the exact Origin and same-origin Fetch Metadata (6.491576ms)
✔ a revert takes a project and a 40-hex commit, nothing else, before the bus is asked (5.647113ms)
✔ a bus refusal is reported as not reverted with its code; before C2-02 that is the verb refusal (6.08423ms)
✔ a revert whose answer is lost or unusable is reported unknown and is never retried (5.445934ms)
✖ the status read takes one project query and answers the bus result for that project (3.470803ms)
✖ a status answer for another project or of the wrong shape is refused; a refusal keeps its status (5.42219ms)
✔ the status read needs no send; a read-only Console still has no revert (1.428304ms)
✔ library routes are the owner's: a granted user is refused them, and the tester never reverts (0.509039ms)
✔ the page gets the one library renderer, byte for byte, as a JavaScript module (1.123365ms)
✖ a revert receipt for another project is unknown and is never retried (1.209291ms)
✔ a granted-user HTTP session cannot reach owner library callbacks (1.398731ms)
ℹ tests 12
ℹ suites 0
ℹ pass 9
ℹ fail 3
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 198.061254
✖ failing tests:
test at packages/webui/tests/library-routes.test.mjs:100:1
✖ the status read takes one project query and answers the bus result for that project (3.470803ms)
AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:
403 !== 405
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/library-routes.test.mjs:107:10)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
generatedMessage: true,
code: 'ERR_ASSERTION',
actual: 403,
expected: 405,
operator: 'strictEqual',
diff: 'simple'
}
test at packages/webui/tests/library-routes.test.mjs:111:1
✖ a status answer for another project or of the wrong shape is refused; a refusal keeps its status (5.42219ms)
AssertionError [ERR_ASSERTION]: project-not-declared
400 !== 502
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/library-routes.test.mjs:119:12)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
generatedMessage: false,
code: 'ERR_ASSERTION',
actual: 400,
expected: 502,
operator: 'strictEqual',
diff: 'simple'
}
test at packages/webui/tests/library-routes.test.mjs:145:1
✖ a revert receipt for another project is unknown and is never retried (1.209291ms)
AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:
200 !== 503
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row225/packages/webui/tests/library-routes.test.mjs:148:10)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async Test.run (node:internal/test_runner/test:1409:7)
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
generatedMessage: true,
code: 'ERR_ASSERTION',
actual: 200,
expected: 503,
operator: 'strictEqual',
diff: 'simple'
}
@@ -1,170 +0,0 @@
diff --git a/packages/bus/tests/channel-proof.test.mjs b/packages/bus/tests/channel-proof.test.mjs
index ba0179832..435d8fa2d 100644
--- a/packages/bus/tests/channel-proof.test.mjs
+++ b/packages/bus/tests/channel-proof.test.mjs
@@ -11,0 +12,2 @@
+// Row 225 (C2-10b) re-pins webui bus.mjs for one STATUS entry, library-revert-not-agent: 409; no proof
+// or transport change.
@@ -32 +34 @@ const baselines = {
- "packages/webui/src/bus.mjs": "604092cb706b152d458f299ff1071f6cd488774629012f96b672f7e9a16c0b2c",
+ "packages/webui/src/bus.mjs": "9f33e9ca4feb7265ae33fd3ddf0ead0b75375d07ecbe9d8e55c618d29edea658",
diff --git a/packages/library/tests/render.test.mjs b/packages/library/tests/render.test.mjs
index b07e26d25..9c861bfe9 100644
--- a/packages/library/tests/render.test.mjs
+++ b/packages/library/tests/render.test.mjs
@@ -3 +3 @@ import assert from 'node:assert/strict';
-import { renderItems, UNREADABLE } from '../src/index.mjs';
+import { renderReply } from '../src/index.mjs';
@@ -4,0 +5 @@ import { renderItems, UNREADABLE } from '../src/index.mjs';
+// Row 225 (C2-10b): renderReply replaces renderItems (design 7.4, the reply schema of 5.2).
@@ -6,6 +7,12 @@ const A = 'a'.repeat(40), B = 'b'.repeat(40);
-const cite = (path, lines, quote, commit = A) => ({ path, commit, lines, quote });
-const options = {
- scopeOf: path => path.includes('/Playground/') ? 'playground' : path.endsWith('.md') ? 'canon' : undefined,
- changed: ({ path, commit }) => path === 'Book One/Characters/Mara Vell.md' && commit === A,
-};
-const render = items => renderItems(JSON.stringify({ items }), options);
+const cite = (path, lines, quote, commit = A, extra = {}) => ({ path, commit, lines, quote, ...extra });
+const web = (url, quote = 'spring tides') => ({ url, quote });
+const reply = (text, citations) => JSON.stringify({ text, citations });
+const CITED = reply("Mara's eyes are grey in chapter 3.", [
+ cite('Book One/Chapters/Chapter 03.md', [41, 41], 'her grey eyes', A, { as: 'canon' }),
+ cite('Book One/Playground/What If.md', [5, 6], 'a storm', B),
+ cite('Notes/Eyes.md', [9, 10], 'green eyes'),
+ web('https://example.invalid/tides'),
+]);
+const CHECK = { citations: [{ scope: 'canon', agent: null }, { scope: 'playground', agent: null },
+ { scope: 'supporting', agent: 'acme/scribe' }, { scope: 'web', agent: null }] };
+const changed = ({ path, commit }) => path === 'Notes/Eyes.md' && commit === A;
@@ -13,21 +20,4 @@ const render = items => renderItems(JSON.stringify({ items }), options);
-// One snapshot per item kind: the plain text both channels show.
-const SNAPSHOTS = {
- fact: [{ kind: 'fact', text: 'Tomas is the ferryman.', cites: [cite('Book One/Characters/Tomas.md', [3, 3], 'the ferryman', B)] }],
- finding: [{ kind: 'finding', text: 'Eye colour differs.', cites: [cite('Book One/Chapters/Chapter 01.md', [41, 41], 'her grey eyes'),
- cite('Book One/Characters/Mara Vell.md', [9, 10], 'green eyes')] }],
- correction: [{ kind: 'correction', text: 'Chapter 1 says grey.', from: 'green eyes', to: 'grey eyes',
- cites: [cite('Book One/Characters/Mara Vell.md', [9, 9], 'green eyes', B)] }],
- question: [{ kind: 'question', text: 'Is the harbor north of the town?', cites: [cite('Book One/Places/Harbor Town.md', [2, 4], 'the harbor', B)] }],
- idea: [{ kind: 'idea', text: 'A storm could close the harbor.', cites: [cite('Book One/Playground/What If.md', [5, 5], 'a storm', B),
- { url: 'https://example.invalid/tides', quote: 'spring tides' }] }],
-};
-const EXPECTED = {
- fact: '1. Fact: Tomas is the ferryman.\n [canon] Book One/Characters/Tomas.md:3 @bbbbbbb "the ferryman"',
- finding: '1. Finding: Eye colour differs.\n [canon] Book One/Chapters/Chapter 01.md:41 @aaaaaaa "her grey eyes"\n'
- + ' [canon] Book One/Characters/Mara Vell.md:9-10 @aaaaaaa "green eyes" (changed since)',
- correction: '1. Correction: Chapter 1 says grey.\n From: "green eyes"\n To: "grey eyes"\n'
- + ' [canon] Book One/Characters/Mara Vell.md:9 @bbbbbbb "green eyes"',
- question: '1. Question: Is the harbor north of the town?\n [canon] Book One/Places/Harbor Town.md:2-4 @bbbbbbb "the harbor"',
- idea: '1. Idea: A storm could close the harbor.\n [playground] Book One/Playground/What If.md:5 @bbbbbbb "a storm"\n'
- + ' [web] https://example.invalid/tides "spring tides"',
-};
+test('free text renders as itself with no citations', () => {
+ for (const body of ['Grey, in chapter 3.', '', '"a JSON string"', '[1, 2]', '42', 'null'])
+ assert.deepEqual(renderReply(body, { check: CHECK }), { kind: 'text', text: body, plain: body });
+});
@@ -35,8 +25,15 @@ const EXPECTED = {
-for (const kind of Object.keys(SNAPSHOTS)) {
- test(`renderItems snapshot: ${kind}`, () => {
- const out = render(SNAPSHOTS[kind]);
- assert.equal(out.kind, 'items');
- assert.equal(out.text, EXPECTED[kind]);
- assert.equal(out.items[0].kind, kind);
- });
-}
+test('a cited reply renders its text, then each cite with the badge from the check result', () => {
+ const out = renderReply(CITED, { check: CHECK, changed });
+ assert.equal(out.kind, 'reply');
+ assert.equal(out.text, "Mara's eyes are grey in chapter 3.");
+ assert.deepEqual(out.citations.map(c => c.badge), ['canon', 'playground', 'supporting', 'web']);
+ assert.equal(out.plain, "Mara's eyes are grey in chapter 3.\n"
+ + ' [canon] Book One/Chapters/Chapter 03.md:41 @aaaaaaa "her grey eyes"\n'
+ + ' [playground] Book One/Playground/What If.md:5-6 @bbbbbbb "a storm"\n'
+ + ' [supporting] Notes/Eyes.md:9-10 @aaaaaaa "green eyes" (agent-written: acme/scribe) (changed since)\n'
+ + ' [web] https://example.invalid/tides "spring tides"');
+ assert.deepEqual(out.citations[0], { badge: 'canon', path: 'Book One/Chapters/Chapter 03.md', commit: A, lines: [41, 41],
+ ref: 'Book One/Chapters/Chapter 03.md:41 @aaaaaaa', quote: 'her grey eyes', canon: true, agent: null, changed: false });
+ assert.deepEqual(out.citations[3], { badge: 'web', url: 'https://example.invalid/tides', link: 'https://example.invalid/tides',
+ ref: 'https://example.invalid/tides', quote: 'spring tides', agent: null, changed: false });
+});
@@ -44,6 +41,2 @@ for (const kind of Object.keys(SNAPSHOTS)) {
-test('renderItems numbers several items and takes a parsed body as well as a string', () => {
- const items = [...SNAPSHOTS.fact, ...SNAPSHOTS.question];
- const out = renderItems({ items }, options);
- assert.equal(out.text, `${EXPECTED.fact}\n${EXPECTED.question.replace(/^1\./, '2.')}`);
- assert.deepEqual(out.items[1].cites[0], { badge: 'canon', path: 'Book One/Places/Harbor Town.md', commit: B, lines: [2, 4],
- ref: 'Book One/Places/Harbor Town.md:2-4 @bbbbbbb', quote: 'the harbor', changed: false });
+test('a parsed body renders as its string does', () => {
+ assert.deepEqual(renderReply(JSON.parse(CITED), { check: CHECK, changed }), renderReply(CITED, { check: CHECK, changed }));
@@ -52,4 +45,4 @@ test('renderItems numbers several items and takes a parsed body as well as a str
-test('without options a path cite has no badge and is never marked changed', () => {
- assert.equal(renderItems({ items: SNAPSHOTS.finding }).text,
- '1. Finding: Eye colour differs.\n Book One/Chapters/Chapter 01.md:41 @aaaaaaa "her grey eyes"\n'
- + ' Book One/Characters/Mara Vell.md:9-10 @aaaaaaa "green eyes"');
+test('without a check result a path cite has no badge, no label and is never changed', () => {
+ const out = renderReply(CITED);
+ assert.deepEqual(out.citations.map(c => [c.badge, c.agent, c.changed]),
+ [[null, null, false], [null, null, false], [null, null, false], ['web', null, false]]);
@@ -58,6 +51,6 @@ test('without options a path cite has no badge and is never marked changed', ()
-const NOTICE_SNAPSHOTS = { 'no-cited-answer': 'No cited answer', 'no-answer': 'No answer', 'turn-failed': 'The turn failed' };
-for (const [notice, text] of Object.entries(NOTICE_SNAPSHOTS)) {
- test(`renderItems snapshot: notice ${notice}`, () => {
- assert.deepEqual(renderItems(JSON.stringify({ items: [], notice }), options), { kind: 'notice', notice, text });
- });
-}
+test('the label and the badge come from the check result only, never from a bad entry', () => {
+ const bad = { citations: [{ scope: 'web', agent: '' }, { scope: 'story', agent: 7 }, null, { scope: 'canon', agent: 'x/y' }] };
+ const out = renderReply(CITED, { check: bad });
+ // A path cite can't be web; a url cite is web by its shape whatever the check says, and never agent-written.
+ assert.deepEqual(out.citations.map(c => [c.badge, c.agent]), [[null, null], [null, null], [null, null], ['web', null]]);
+});
@@ -65,14 +58,8 @@ for (const [notice, text] of Object.entries(NOTICE_SNAPSHOTS)) {
-test('a body without the reply shape shows a fixed line and none of its text', () => {
- const secret = 'free prose the guard would refuse';
- const bodies = [secret, JSON.stringify(secret), '{"items": [], "notice": "other"}', JSON.stringify({ items: [], notice: 'no-answer', extra: secret }),
- JSON.stringify({ items: [] }), JSON.stringify({ items: [{ kind: 'story', text: secret, cites: [] }] }),
- JSON.stringify({ items: [{ kind: 'fact', text: secret }] }), JSON.stringify({ items: SNAPSHOTS.fact, prose: secret }),
- JSON.stringify({ items: [{ kind: 'correction', text: secret, cites: [] }] }),
- JSON.stringify({ items: [{ kind: 'fact', text: secret, cites: [cite('a.md', [2, 1], 'q')] }] }),
- JSON.stringify({ items: [{ kind: 'fact', text: secret, cites: [{ path: 'a.md', commit: 'abc', lines: [1, 1], quote: 'q' }] }] }),
- JSON.stringify({ items: [{ kind: 'fact', text: secret, cites: [{ url: 'https://x.invalid', path: 'a.md', quote: 'q' }] }] }),
- null, 42, '[]'];
- for (const body of bodies) {
- const out = renderItems(body, options);
- assert.deepEqual(out, { kind: 'unreadable', text: UNREADABLE }, String(body));
- assert.ok(!JSON.stringify(out).includes(secret));
+test('a web cite is a link only for https', () => {
+ const urls = { 'https://example.invalid/a': 'https://example.invalid/a', 'http://example.invalid/a': null,
+ 'javascript:alert(1)': null, 'JAVASCRIPT:alert(1)': null, 'data:text/html,x': null, 'not a url': null, '//example.invalid': null };
+ for (const [url, link] of Object.entries(urls)) {
+ const out = renderReply(reply('t', [web(url)]));
+ assert.equal(out.kind, 'reply', url);
+ assert.equal(out.citations[0].link, link, url);
+ assert.equal(out.citations[0].ref, url);
@@ -80,0 +68,27 @@ test('a body without the reply shape shows a fixed line and none of its text', (
+
+test('a write notice renders its fixed line', () => {
+ const body = op => JSON.stringify({ notice: 'library-write', op, path: 'Notes/Eyes.md', commit: B });
+ assert.deepEqual(renderReply(body('write'), { name: 'Scribe' }),
+ { kind: 'notice', op: 'write', path: 'Notes/Eyes.md', commit: B, text: 'Scribe wrote Notes/Eyes.md @bbbbbbb', plain: 'Scribe wrote Notes/Eyes.md @bbbbbbb' });
+ assert.equal(renderReply(body('delete'), { name: 'Scribe' }).text, 'Scribe deleted Notes/Eyes.md @bbbbbbb');
+ assert.equal(renderReply(body('write')).text, 'An agent wrote Notes/Eyes.md @bbbbbbb');
+});
+
+test('a body without the reply or notice shape is free text: the whole body, no citations', () => {
+ const bodies = [
+ JSON.stringify({ text: 't' }), JSON.stringify({ citations: [] }), JSON.stringify({ text: 1, citations: [] }),
+ JSON.stringify({ text: 't', citations: [], extra: 1 }), JSON.stringify({ items: [] }),
+ reply('t', [cite('a.md', [2, 1], 'q')]), reply('t', [cite('a.md', [0, 1], 'q')]), reply('t', [cite('a.md', [1], 'q')]),
+ reply('t', [{ path: 'a.md', commit: 'abc', lines: [1, 1], quote: 'q' }]), reply('t', [cite('a.md', [1, 1], 'q', A, { as: 'playground' })]),
+ reply('t', [cite('a.md', [1, 1], 'q', A, { scope: 'canon' })]), reply('t', [{ url: 'https://x.invalid', path: 'a.md', quote: 'q' }]),
+ reply('t', [{ url: 'https://x.invalid' }]), reply('t', [{ url: 'https://x.invalid', quote: 'q', agent: 'x/y' }]),
+ JSON.stringify({ notice: 'library-write', op: 'move', path: 'a.md', commit: A }),
+ JSON.stringify({ notice: 'library-write', op: 'write', path: 'a.md', commit: 'abc' }),
+ JSON.stringify({ notice: 'library-write', op: 'write', path: 'a.md', commit: A, by: 'x' }),
+ ];
+ for (const body of bodies) assert.deepEqual(renderReply(body, { check: CHECK }), { kind: 'text', text: body, plain: body }, body);
+});
+
+test('an empty citations list is a reply with no cites', () => {
+ assert.deepEqual(renderReply(reply('Grey.', [])), { kind: 'reply', text: 'Grey.', citations: [], plain: 'Grey.' });
+});
@@ -1,13 +0,0 @@
6bdaf870be3d8d03a68eb03f5f6916150bb1b3db134ffbe84018e91d47e6434d packages/bus/tests/channel-proof.test.mjs
0385fc49b445ff730021eb11c20b29027631e0d27350e4591d5a0936ffbdccf6 packages/library/README.md
653ff444ba66cb73e1ca4df1f6037f15a2ec7d3d009cf614a0dc51deabda4b50 packages/library/src/index.mjs
dfcc9f271afc7afdab908395a7f3c402100fa89b4994b20d5bcae3140d5c335e packages/library/src/render.mjs
f3c213f3b0bd080d0bc5837f741a29e324acb91cf0c27144dee08a4113262210 packages/library/tests/render.test.mjs
9f33e9ca4feb7265ae33fd3ddf0ead0b75375d07ecbe9d8e55c618d29edea658 packages/webui/src/bus.mjs
f1a0c9a55b1ae933e205c7e2b9753afe0c2f1fc9b0faa2cf18765396f99ac8dd packages/webui/src/cli.mjs
bf49a22147be0535076640d20149116a744dad9b0b32dd667ee297a061d56134 packages/webui/src/console-bus.mjs
793e7dd9edbe5a55c2deab3c8aef4fbd5b4c838e132e2ac9294043c7176ec6f7 packages/webui/src/public/chat.css
af3a6f382e0d40cf2b28c31db7cb58ba775f1e242651ba42c7426bda99dc0d89 packages/webui/src/public/chat.js
6412fe34bc640433e9cf7610f65d3574a3415c934354d8cb52e056793a81948f packages/webui/src/serve.mjs
f191752f867a112c867ca24268f70aa99ca0903c9208f76bc4bb4c1587cb55df packages/webui/tests/chat-replies-browser.test.mjs
df4ff385ac4ca8244ffa00faf82fcca1f4fcdac8da02a4f4d71233d4df8e1157 packages/webui/tests/library-routes.test.mjs
@@ -1,13 +0,0 @@
0457ba48705ce47c6c5777adbbb818c5012dc82fe4ccdaf0b56ee8ca025bd355 packages/bus/tests/channel-proof.test.mjs
495e737525274c49f31523aea34983345b7f8f09eb4e982603bb51d8ddf7cda5 packages/library/README.md
45dbeed86fb8940050c2dc600bd78042e1f14e8b385f79bf6f2efda07ec35eeb packages/library/src/index.mjs
bfc3de029d3c8f0dcc96c90fde30d6da58bbb5b72d8f13e3f536c0d735c73ca5 packages/library/src/render.mjs
f3c213f3b0bd080d0bc5837f741a29e324acb91cf0c27144dee08a4113262210 packages/library/tests/render.test.mjs
4ebf6c2b5d71c23d85cbde83f69aa671058dc2195c9ae4bdda624f6940729d1b packages/webui/src/bus.mjs
f1a0c9a55b1ae933e205c7e2b9753afe0c2f1fc9b0faa2cf18765396f99ac8dd packages/webui/src/cli.mjs
bf49a22147be0535076640d20149116a744dad9b0b32dd667ee297a061d56134 packages/webui/src/console-bus.mjs
793e7dd9edbe5a55c2deab3c8aef4fbd5b4c838e132e2ac9294043c7176ec6f7 packages/webui/src/public/chat.css
52828c03b618e3754f0e59a395f4bcc16d1c9d8db01d403406a67ca0934f0188 packages/webui/src/public/chat.js
4ee53400b0e433833ce1cb641b93f1aa346af548e8c710b5884ea11c4c173342 packages/webui/src/serve.mjs
3d20b683150fdfa3fe6898372a46d92bbe60f121759edaaca538ee0542a0886b packages/webui/tests/chat-replies-browser.test.mjs
df4ff385ac4ca8244ffa00faf82fcca1f4fcdac8da02a4f4d71233d4df8e1157 packages/webui/tests/library-routes.test.mjs
-106
View File
@@ -1,106 +0,0 @@
#!/usr/bin/env python3
"""Run row225 mutants in disposable snapshots, only on Sage CLEAR.
Commit the tested candidate first. Never change the worktree or shared dependencies.
A timeout, import failure or process failure is not a mutation kill.
"""
import argparse
import hashlib
import json
import os
from pathlib import Path
import shutil
import subprocess
import tarfile
import tempfile
BROWSER = 'packages/webui/tests/chat-replies-browser.test.mjs'
ROUTES = 'packages/webui/tests/library-routes.test.mjs'
CHAT = 'packages/webui/src/public/chat.js'
SERVE = 'packages/webui/src/serve.mjs'
RENDER = 'packages/library/src/render.mjs'
MUTANTS = [
('B1-forged-notice', RENDER, 'options.check == null ? notice(value, options.name) : null', 'notice(value, options.name)', BROWSER),
('N1-definite-refusal', CHAT, 'data?.sent === false || res.status >= 400 && res.status < 500', 'data?.sent === false', BROWSER),
('M1-badges', RENDER, 'badge: scope, path:', 'badge: null, path:', BROWSER),
('M1-agent-label', RENDER, 'canon: c.canon, agent,', 'canon: c.canon, agent: null,', BROWSER),
('M2-http-links', RENDER, "new URL(url).protocol === 'https:' ? url : null", 'url', BROWSER),
('M3-wrong-commit', CHAT, 'e.file !== e.last', 'cite.commit !== e.last', BROWSER),
('M3-missing-file', CHAT, "SHA.test(e?.file ?? '') && SHA.test(e?.last ?? '')", "SHA.test(e?.last ?? '')", BROWSER),
('M4-fallback', CHAT, 'Array.isArray(limits.fallback) ? limits.fallback.filter', 'Array.isArray(v.replyLimitsFallback) ? v.replyLimitsFallback.filter', BROWSER),
('M4-problem', CHAT, "if (CODE.test(limits.problem ?? '')) parts.push(`<code>${txt(limits.problem)}</code>`);", '', BROWSER),
('M5-send', SERVE, 'if (!send || !libraryRevert || !named)', 'if (!libraryRevert || !named)', ROUTES),
('M5-project-receipt', SERVE, 'result.project !== value.project || ', '', ROUTES),
('M5-commit-input', SERVE, '!COMMIT.test(value.commit)', 'false', ROUTES),
('M5-origin', SERVE, "if (one(req, 'origin') !== ownOrigin(preview)) return refuse(403, 'cross-origin request refused', 'a revert needs the Console\\'s own Origin');", '', ROUTES),
('M5-fetch-metadata', SERVE, "if (one(req, 'sec-fetch-site') !== 'same-origin') return refuse(403, 'cross-site request refused', 'a revert needs same-origin Fetch Metadata');", '', ROUTES),
('M6-duplicate-call', SERVE, 'result = await libraryRevert({ project: value.project, commit: value.commit });', 'result = await libraryRevert({ project: value.project, commit: value.commit }); await libraryRevert({ project: value.project, commit: value.commit });', ROUTES),
('M7-user-fence', SERVE, "if (path === '/api/chat' || path.startsWith('/api/chat/')) return true;", "if (path.startsWith('/api/library/')) return true; if (path === '/api/chat' || path.startsWith('/api/chat/')) return true;", ROUTES),
]
def digest(path):
return hashlib.sha256(path.read_bytes()).hexdigest()
def main():
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument('--clear', required=True, help='Sage CLEAR authorizing this run')
parser.add_argument('--output', required=True, type=Path)
parser.add_argument('--only', help='Comma-separated mutant names for a bounded review delta')
args = parser.parse_args()
names = set(args.only.split(',')) if args.only else {m[0] for m in MUTANTS}
if names - {m[0] for m in MUTANTS}:
raise SystemExit('Unknown mutant name')
selected = [m for m in MUTANTS if m[0] in names]
repo = Path(subprocess.check_output(['git', 'rev-parse', '--show-toplevel'], text=True).strip())
if subprocess.check_output(['git', 'status', '--porcelain', '--', 'packages'], text=True).strip():
raise SystemExit('Commit tested packages first: snapshot must match candidate.')
dependency = repo / 'node_modules'
if dependency.is_symlink() or not dependency.is_dir():
raise SystemExit('Install dependencies locally in the worktree; no canonical dependency link.')
head = subprocess.check_output(['git', 'rev-parse', 'HEAD'], text=True).strip()
before = {p: digest(repo / p) for p in [CHAT, SERVE, RENDER]}
args.output.mkdir(parents=True, exist_ok=True)
results = []
with tempfile.TemporaryDirectory(prefix='mosaic-row225-mutants-') as directory:
scratch = Path(directory)
archive = scratch / 'candidate.tar'
with archive.open('wb') as stream:
subprocess.run(['git', 'archive', 'HEAD', 'packages', 'roles', 'contracts', 'tasks', 'missions', 'package.json', 'RELEASE'], stdout=stream, check=True)
for name, target, old, new, test in selected:
tree = scratch / name
tree.mkdir()
with tarfile.open(archive) as bundle:
bundle.extractall(tree, filter='data')
(tree / 'node_modules').symlink_to((repo / 'node_modules').resolve(), target_is_directory=True)
path = tree / target
source = path.read_text()
hits = source.count(old)
if hits != 1:
raise SystemExit(f'{name}: expected one anchor, found {hits}')
path.write_text(source.replace(old, new, 1))
command = ['timeout', '-k', '10', '240' if test == BROWSER else '120', 'node', '--test', '--test-reporter=tap', '--test-concurrency=1', '--test-timeout=30000', test]
run = subprocess.run(command, cwd=tree, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, text=True, env=os.environ)
log = args.output / f'{name}.tap'
log.write_text(run.stdout)
path.write_text(source)
restored = digest(path) == hashlib.sha256(source.encode()).hexdigest()
worktree_clean = before == {p: digest(repo / p) for p in before}
if not restored or not worktree_clean:
raise SystemExit(f'{name}: restore/hash check failed')
killed = run.returncode == 1 and 'ERR_ASSERTION' in run.stdout and 'not ok ' in run.stdout
results.append({'mutant': name, 'anchorHits': hits, 'restored': restored, 'worktreeUnchanged': worktree_clean, 'exit': run.returncode, 'killed': killed, 'test': test, 'log': str(log)})
print(json.dumps(results[-1]), flush=True)
shutil.rmtree(tree)
if not killed:
break
after = {p: digest(repo / p) for p in before}
report = {'head': head, 'clear': args.clear, 'worktreeUnchanged': before == after, 'selected': sorted(names), 'results': results}
(args.output / 'summary.json').write_text(json.dumps(report, indent=2) + '\n')
if before != after or len(results) != len(selected) or not all(r['killed'] for r in results):
raise SystemExit(1)
if __name__ == '__main__':
main()
-144
View File
@@ -1,144 +0,0 @@
# Row266 C2-10c — Console rooms (#1771)
Fethry14f80e3c, branch fethry/row266, NEW worktree /home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row266.
Original base962046aaa; fast-forwarded to doc-only487500a16 per sage4156. Both225 branches untouched.
Pinned amended brief85e6fe2ecfc5, C2-10c; prior3a5ed91a had identical section but stale whole-file pin.
Review order Boyd48a3ae38 then Dewey84fb346c; Sage owns landing. No token/other-seat credential access.
Slot CLEAR sage4154 lasts until returned. Local root/webui npm ci, no dependency links.
TMPDIR=/mnt/storage/scratch/tmp/KV9rHb, MOSAIC_REQUIRE_EDITOR_BUILD=1. Implementation and targeted checks complete; full gate in progress.
## Current code and resolved seam
- chat.mjs is the channel-gated fixed-verb seam. Add roomOpen({project}), roomRead({project,after,limit}),
roomSend({project,body}), exactly one matching room verb each. Never fetch thread.messages to hydrate rooms.
- chat-http.mjs already provides signed-in/send/Origin/Fetch Metadata, bounded JSON, strict keys, safe
error text, audit and outcome-unknown handling. Extend it with POST rooms/PROJECT/open {},
GET rooms/PROJECT/messages ?after&limit, POST same messages {body}. Four room codes map409 and fixed lines.
Open returns {project,threads}; send returns {ids,to}; read returns {rows,after,hasMore,at}.
Room cursor is the LAST id in the final entry.ids, not the first entry.id; the broker groups human sends.
- webui plugin needs exactly room.open/read/send in its allowlist, still rejecting arbitrary verbs.
- /api/chat/instances already returns threaded instance keys and persona.name labels. No serve.mjs edit.
- room.open returns canonical member threads; room.read returns one merged human entry with ids/to.
Read-only GET must never open/create a room or wake an agent. No implicit retry of any write.
- Amendment1 (sage4156): broker.mjs is owned only for shared check-event hydration and routing room.read
through #withLast under the same condition as thread.messages. The missing check would otherwise
hide badges AND reopen225's forged-notice defect. No other broker verb/refusal/field changes.
## Design and implementation plan
1. New plugin, HTTP/seam, bus metadata and browser files first; run whole new files RED, report
first-run results per mos1272/1590, correct only demonstrably wrong NEW fixtures. No old test edits.
2. Add the three plugin/seam calls and strict HTTP room routes/receipt validation. Reuse existing
principal/write fences. Owner room verbs stay human-only; hide controls from granted users/testers,
and never route a call through an owner transport for them.
3. In broker, extract #withCheck(row), call it for thread messages and each final merged room entry;
extend the existing last-routing condition to room.read. Test real checked reply parity, unchecked
absence and unchanged merged human entry across two members. No broker room.open/send changes.
4. Add /chat/rooms/PROJECT route inside chat.js, sharing its current state, generation/abort handling,
capture/paint/scroll preservation and225 message renderer. Project view gets explicit Open room;
direct room GET only reads and offers Open on room-not-open. Names come from instances catalog,
membership from canonical room threads, with server room.read authoritative. Quiet members stay
available for completion. Human entries display once, with all broker addressees; no client regrouping.
5. Completion parses leading @ tokens with the exact broker grammar and its existing case vectors.
Display typed tags in a preview; use that production tag reader for completion and browser parity.
Suggest members by instance/name, insert the stable instance token, preserve unrelated text/caret.
Arrow keys/Enter/Tab/Escape and click work; labels/text remain escaped and bidi/control inert.
Browser sends original typed body, never a client-selected addressee list. Broker409 lines are fixed.
6. Whole webui/plugins/bus (touched) suites, all12 scripts/test-*.sh under timeout -k10, then isolated
mutants. No live-provider calls (MOSAIC_LIVE_PROVIDER unset). New worker/temp process groups get
killpg cleanup and cwd/Chromium sweep; never touch another seat's processes. Record every red.
7. Hash-pin audit by source path AND old64-hex digest for chat.js/chat-http.mjs/channel module before
in-review. Freeze manifest, push fethry/* only, owner queue move in-review, handoff Boyd+Sage with
candidate/digest; Sage posts because this seat has no Gitea token. No force push, merge or deploy.
Acceptance focus: grouped paging cursor, one entry for a broadcast even across two threads, quiet
member completion and parser parity, checked reply badges/notice safety, malformed receipts/unknown
outcomes,4 refusal codes, no read-side mutation, late reads/sign-out and project draft isolation.
Boundary rules: old-test red, any production path beyond the owned set/amendment, or weakened
assertion goes to Sage BEFORE action. New-file first red is reported then fixture corrected.
## Targeted RED/GREEN receipts (2026-10-24)
Start op fethry-266-start succeeded rev3978 after sage4156's re-pin; old-pin refusal wrote nothing.
First whole NEW files RED: plugin0/1,HTTP0/5,bus1/1,browser0/7, all intended missing-feature paths;
reported fethry0028 before production. Component GREEN plugin1/0,HTTP5/0,bus2/0. Browser5/2 exposed a
missing submit branch in our new room event dispatcher; reported fethry0029, fixed only that branch,
then browser7/0. No fixture/assertion changed to fix production behavior.
Boundary coverage added before full gate: malformed numeric member key was accepted by regex
coercion (new HTTP6/1, fethry0030); required string and unique group ids/addressees, now HTTP7/0.
New browser assertions use fresh send ids and read back exactly one broadcast entry. Expanded run8/1
exposed a nested quote in our new runtime CSS selector; reported fethry0031 BEFORE fixing fixture
with JSON.stringify, same exact count=1 assertion retained. Final browser9/0,4864.326ms, with quiet
member Arrow/Tab/Escape, raw body preservation, no duplicate pending send, uncertain draft, parser
vectors, all4 refusal lines, checked reply/cite/notice safety and late-read/sign-out coverage.
No pre-existing test/helper edit and no assertion loosened. Production set is precisely six brief-
owned paths including the narrow broker amendment. All red/green raw logs under unique TMPDIR.
Full gate now runs run-gate.py: local editor build, whole webui/plugins/bus then all12 test scripts,
serial timeout -k10, per-test30s, MOSAIC_REQUIRE_EDITOR_BUILD=1; live-provider env removed. Each step
has its own process group and killpg cleanup, with signals recorded. Any failure stops for report.
## Full gate first pass
Editor build exit0; whole webui458/0 (270.066s), plugins120/0 (.866s), no skips/cancels.
Bus999/1 (132.9s): OLD library-credential.test.mjs T9 at317 expected library-fetch-no-grant,
received library-sync-busy. Reported fethry0032 before changes. No old test/source change.
Read-only diagnosis: fixture starts a50ms periodic sync; waiting for a completed log does not
prevent the next tick from acquiring running(mirror) before the manual sync. Existing sync.mjs140
checks running before credential refusal. Row266 touches neither timer nor sync implementation.
All12 scripts continue independently; rerun/ruling requested from Sage. Raw bus-full.tap and
gate-summary.json remain in the scratch directory, preserving the red evidence.
Sage4158 confirms the pre-existing50ms T9 timer race and authorizes three unchanged whole-file
credential runs followed by one unchanged whole bus run. Any recurring T9 red stops for Sage;
no fixture or production patch is authorized. The12-script runner proceeds serially first.
All12 scripts/test-*.sh exited0 (scripts-summary.json). Queue's156 tests pass; wrapper28/0
and explicitly skips canonical queue verify/render checks in an isolated worktree. Task92/0
uses existing row244 live-provider exclusions, with MOSAIC_LIVE_PROVIDER unset. No script edited.
Three unchanged whole credential-file reruns under sage4158 each pass6/0 without skips/cancels,
1.367s each wall clock. Full unchanged bus rerun is next/running.
Pin audit before in-review: source paths/basenames and old/current64hex values for chat.js,
chat-http.mjs and channel/webui/index.mjs searched across package/script tests. No literal old
or current digest pin. The10 frozen package hashes include all six production paths and four
new test files; no existing test diff. sha256sum -c passes on all10.
Unchanged full bus rerun GREEN1000/0, no skips/cancels,142.919s. T9 passes. This completes
sage4158's four unchanged green reruns (credential6/0 three times, bus1000/0 once) after the
initial999/1. Preserve all five TAPs. Pre-existing T9 timer race is Sage's follow-up, no source
or old test changed for it. Full applicable suites and12 scripts are green; mutants next.
Evidence display copies strip trailing whitespace only; raw-log-provenance.json records original
paths and both digests. All10 package hashes remain unchanged from full-suite verification.
Source candidate b8b26ae4d. First M01 attempt removed plugin room.open and deterministically
refused channel-operation, but the strict assertion-only classifier did not count the uncaught
PluginError. Restored hash and candidate unchanged. Reported fethry0033 BEFORE strengthening
only the NEW room-channel test with doesNotReject; exact receipt/call assertions retained.
Whole plugins rerun120/0, no skips/cancels. Only that new test hash changes in manifest.r1;
all production hashes, HTTP/bus/browser tests and prior suite coverage remain identical.
Excluded M01 TAP/summary preserved under evidence/mutants-r1, not a killed-mutant claim.
## Final candidate and mutant verification
Tested source3095d6ea5 (b8b26ae4d plus assertion-strengthening new-test follow-up). All16
isolated mutants killed by assertions, exit1 with ERR_ASSERTION, zero skips/cancels, one anchor
each, hash restored after each, candidate hashes unchanged. Evidence/mutants-r2/summary.json
records every result. Initial excluded M01 remains separate. No timeout/error counted as a kill.
All gate/mutant commands bounded with timeout -k10; runner-owned groups cleaned using killpg.
Final /proc sweep finds zero node/Chromium processes with this worktree cwd or command path;
process-sweep.json records it. No other seat process touched.
Final manifest.r1 SHA256:5f816042792b24b790d4faa5bfdc35a8138225819f85d9d32ae49ba8a2de033f,
10 package files. Six production paths, four NEW test paths, zero pre-existing test edits.
No production/source change after suite verification; only the new plugin assertion strengthened
and full plugins rerun120/0. Final static diff and manifest checks pass. Slot can return.
Review first Boyd, then Dewey; Sage owns review-request credential and landing.
Canonical owner move fethry-266-inreview succeeded rev3979: row266 in-review round1 #1771,
frozen manifest5f816042. Review request outcome rev3980 failed solely because
MOSAIC_GITEA_CREDENTIAL_FILE is unset; no credential file read or alternate credential used.
Sage must post the arranged review request. Boyd received direct candidate handoff fethry0035.
Initial duplicate handoff to Sage timed out in T3 metadata GET; retry via outcome report0036.
-34
View File
@@ -1,34 +0,0 @@
# Row266 review packet — Console rooms (#1771)
Owner Fethry14f80e3c; first reviewer Boyd48a3ae38, second Dewey84fb346c.
Base487500a16, pinned amended brief85e6fe2ecfc5. Sage owns gate and landing.
The owner Console has an explicit Open room action and a merged project timeline. Human broadcasts
show once with the broker's addressees; agent rows use the shared225 reply renderer including stored
check metadata, badges, changed-file labels and safe notices. Completion suggests quiet and active room
members and follows the broker's leading-tag grammar. The original body goes to room.send.
The seam has exactly three room calls, and no thread.messages fanout. Four room refusals map to409
with fixed lines. Read-only routes never open rooms. Writes retain existing authority/Origin fences,
strict arguments, receipt validation, draft preservation and no automatic retry after uncertainty.
manifest.r1.sha256 freezes exactly10 package paths: six production files and four NEW test files.
No pre-existing test is edited. Check with sha256sum -c from the repository root. The only brief
amendment is sage4156's narrow broker helper/check/last hydration for room.read; room.open/send and
other broker fields/refusals remain unchanged. Other changes are append-only session/build records
and this tracking packet. No queue JSON, role, policy, secret or generated editor asset changes.
Evidence and RED/GREEN history are in BUILD.md. Full suites/scripts are green; all16 isolated mutants are killed by assertions on source3095d6ea5. The initial
full bus999/1 is the pre-existing T9 timer race, reported before action; unchanged reruns authorized
by sage4158 all pass: credential6/0 three times, bus1000/0 once. Webui458/0, plugins120/0,
all12 scripts exit0. Queue wrapper skips canonical-only verify/render, and task retains the
row244 live-provider exclusions. No test-runner skips/cancellations in package suites. Full plugins120/0 rerun after strengthening
the new dispatch assertion. All16 one-anchor mutants restore and preserve candidate hashes; initial
M01 uncaught-refusal attempt is explicitly excluded. Final own-cwd node/Chromium sweep is empty. Review must consider every run, including the red.
Pin audit: pin-audit-before.txt and pin-audit-after.txt search source paths/basenames and64-hex old
and new digests across tests. No literal digest pin needs updating for any of the three named files.
Review focus: grouped paging cursor, no body-based client regrouping, quiet membership/completion,
raw body preservation, checked/unchecked renderer trust, grant/tester refusal, pending/uncertain writes,
late reads/sign-out and strictly scoped broker hydration.
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -1,16 +0,0 @@
npm notice run @mosaic/[email protected] build:editor
npm notice run node editor/build.mjs
▲ [WARNING] Ignoring this import because "third_party/editor/prosemirror-transform/src/mark.ts" was marked as having no side effects [ignored-bare-import]
third_party/editor/prosemirror-transform/src/index.ts:10:7:
10 │ import "./mark"
╵ ~~~~~~~~
"sideEffects" is false in the enclosing "package.json" file:
third_party/editor/prosemirror-transform/package.json:13:2:
13 │ "sideEffects": false,
╵ ~~~~~~~~~~~~~
editor.js 9c881b13740fae2408717ad75fa1d85bfcfe3fa8b3af0f1b3f2e706c90e80fee (133 inputs)
editor.css 8654ac57d1e7a561110138ecd7f701c34a074017ff8c4cd2768d8083908ee61f
@@ -1,63 +0,0 @@
[
{
"step": "editor-build",
"command": [
"npm",
"run",
"build:editor"
],
"cwd": "/home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row266/packages/webui",
"outerSeconds": 120,
"exit": 0,
"seconds": 0.214,
"cleanupSignals": []
},
{
"step": "webui-full",
"command": [
"node",
"--test",
"--test-reporter=tap",
"--test-concurrency=1",
"--test-timeout=30000",
"packages/webui/tests/"
],
"cwd": "/home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row266",
"outerSeconds": 900,
"exit": 0,
"seconds": 270.066,
"cleanupSignals": []
},
{
"step": "plugins-full",
"command": [
"node",
"--test",
"--test-reporter=tap",
"--test-concurrency=1",
"--test-timeout=30000",
"packages/plugins/tests/"
],
"cwd": "/home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row266",
"outerSeconds": 300,
"exit": 0,
"seconds": 0.866,
"cleanupSignals": []
},
{
"step": "bus-full",
"command": [
"node",
"--test",
"--test-reporter=tap",
"--test-concurrency=1",
"--test-timeout=30000",
"packages/bus/tests/"
],
"cwd": "/home/jwoltje/.t3/worktrees/mosaic-stack/fethry-row266",
"outerSeconds": 1200,
"exit": 1,
"seconds": 132.9,
"cleanupSignals": []
}
]
@@ -1,28 +0,0 @@
TAP version 13
# Subtest: C2-10c webui permits exactly the three added room verbs and preserves core refusals
not ok 1 - C2-10c webui permits exactly the three added room verbs and preserves core refusals
---
duration_ms: 0.698734
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-nwewtdks/M01-plugin/packages/plugins/tests/room-channel.test.mjs:5:1'
failureType: 'testCodeFailure'
error: 'unsupported channel operation'
code: 'channel-operation'
name: 'PluginError'
stack: |-
dispatch (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-nwewtdks/M01-plugin/packages/plugins/channel/webui/index.mjs:25:31)
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-nwewtdks/M01-plugin/packages/plugins/tests/room-channel.test.mjs:8:28)
Test.runInAsyncScope (node:async_hooks:226:14)
Test.run (node:internal/test_runner/test:1402:25)
Test.start (node:internal/test_runner/test:1262:17)
startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17)
...
1..1
# tests 1
# suites 0
# pass 0
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 45.47515
@@ -1,35 +0,0 @@
{
"source": "b8b26ae4d2b440cd14959c4e792baa4b068964e4",
"selected": [
"M01-plugin",
"M02-seam-body",
"M03-page-cursor",
"M04-room-status",
"M05-strict-body",
"M06-receipt-type",
"M07-room-check",
"M08-room-last",
"M09-browser-body",
"M10-members",
"M11-checked-render",
"M12-leading-tags",
"M13-readonly",
"M14-uncertainty",
"M15-pending",
"M16-body-dedup"
],
"candidateUnchanged": true,
"results": [
{
"mutant": "M01-plugin",
"test": "packages/plugins/tests/room-channel.test.mjs",
"exit": 1,
"killed": false,
"hits": 1,
"restored": true,
"candidateUnchanged": true,
"seconds": 0.115,
"cleanupSignals": []
}
]
}
@@ -1,40 +0,0 @@
TAP version 13
# Subtest: C2-10c webui permits exactly the three added room verbs and preserves core refusals
not ok 1 - C2-10c webui permits exactly the three added room verbs and preserves core refusals
---
duration_ms: 1.157584
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M01-plugin/packages/plugins/tests/room-channel.test.mjs:5:1'
failureType: 'testCodeFailure'
error: |-
Got unwanted rejection.
Actual message: "unsupported channel operation"
code: 'ERR_ASSERTION'
name: 'AssertionError'
actual:
error: 'unsupported channel operation'
stack: |-
dispatch (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M01-plugin/packages/plugins/channel/webui/index.mjs:25:31)
file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M01-plugin/packages/plugins/tests/room-channel.test.mjs:9:62
waitForActual (node:assert:601:21)
strict.doesNotReject (node:assert:758:39)
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M01-plugin/packages/plugins/tests/room-channel.test.mjs:9:18)
Test.runInAsyncScope (node:async_hooks:226:14)
Test.run (node:internal/test_runner/test:1402:25)
Test.start (node:internal/test_runner/test:1262:17)
startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17)
operator: 'doesNotReject'
stack: |-
async TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M01-plugin/packages/plugins/tests/room-channel.test.mjs:9:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
1..1
# tests 1
# suites 0
# pass 0
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 52.924783
@@ -1,126 +0,0 @@
TAP version 13
# Subtest: C2-10c seam exposes three fixed room calls without thread.messages fanout
not ok 1 - C2-10c seam exposes three fixed room calls without thread.messages fanout
---
duration_ms: 11.868254
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M02-seam-body/packages/webui/tests/room-http.test.mjs:34:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
[
'room.send',
{
+ body: '@bean exact\ntext',
- body: '@bean exact\ntext ',
project: '10000000-0000-4000-8000-000000000001'
}
]
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0: 'room.send'
1:
project: '10000000-0000-4000-8000-000000000001'
body: |-
@bean exact
text
actual:
0: 'room.send'
1:
project: '10000000-0000-4000-8000-000000000001'
body: |-
@bean exact
text
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M02-seam-body/packages/webui/tests/room-http.test.mjs:40:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: C2-10c HTTP preserves original send, member receipt and the last grouped paging id
not ok 2 - C2-10c HTTP preserves original send, member receipt and the last grouped paging id
---
duration_ms: 12.337405
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M02-seam-body/packages/webui/tests/room-http.test.mjs:44:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
[
'room.send',
{
+ body: '@bean\n exact text',
- body: ' \t@bean\n exact text ',
project: '10000000-0000-4000-8000-000000000001'
}
]
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0: 'room.send'
1:
project: '10000000-0000-4000-8000-000000000001'
body: |-
@bean
exact text
actual:
0: 'room.send'
1:
project: '10000000-0000-4000-8000-000000000001'
body: |-
@bean
exact text
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M02-seam-body/packages/webui/tests/room-http.test.mjs:54:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: C2-10c room write fences and strict keys reject before transport
ok 3 - C2-10c room write fences and strict keys reject before transport
---
duration_ms: 10.902017
type: 'test'
...
# Subtest: C2-10c all four room refusals are409 with fixed text, never transport prose
ok 4 - C2-10c all four room refusals are409 with fixed text, never transport prose
---
duration_ms: 3.766834
type: 'test'
...
# Subtest: C2-10c malformed/lost write receipts are unknown and never retried
ok 5 - C2-10c malformed/lost write receipts are unknown and never retried
---
duration_ms: 3.752149
type: 'test'
...
# Subtest: C2-10c room receipts reject coerced member keys and duplicate grouped ids
ok 6 - C2-10c room receipts reject coerced member keys and duplicate grouped ids
---
duration_ms: 2.085047
type: 'test'
...
# Subtest: C2-10c granted-user room calls never borrow the owner transport
ok 7 - C2-10c granted-user room calls never borrow the owner transport
---
duration_ms: 0.823543
type: 'test'
...
1..7
# tests 7
# suites 0
# pass 5
# fail 2
# cancelled 0
# skipped 0
# todo 0
# duration_ms 164.309887
@@ -1,72 +0,0 @@
TAP version 13
# Subtest: C2-10c seam exposes three fixed room calls without thread.messages fanout
ok 1 - C2-10c seam exposes three fixed room calls without thread.messages fanout
---
duration_ms: 11.193494
type: 'test'
...
# Subtest: C2-10c HTTP preserves original send, member receipt and the last grouped paging id
not ok 2 - C2-10c HTTP preserves original send, member receipt and the last grouped paging id
---
duration_ms: 13.394594
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M03-page-cursor/packages/webui/tests/room-http.test.mjs:44:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
+ actual - expected
+ '30000000-0000-4000-8000-000000000001'
- '30000000-0000-4000-8000-000000000002'
^
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: '30000000-0000-4000-8000-000000000002'
actual: '30000000-0000-4000-8000-000000000001'
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M03-page-cursor/packages/webui/tests/room-http.test.mjs:58:42)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: C2-10c room write fences and strict keys reject before transport
ok 3 - C2-10c room write fences and strict keys reject before transport
---
duration_ms: 10.010122
type: 'test'
...
# Subtest: C2-10c all four room refusals are409 with fixed text, never transport prose
ok 4 - C2-10c all four room refusals are409 with fixed text, never transport prose
---
duration_ms: 4.569671
type: 'test'
...
# Subtest: C2-10c malformed/lost write receipts are unknown and never retried
ok 5 - C2-10c malformed/lost write receipts are unknown and never retried
---
duration_ms: 3.093316
type: 'test'
...
# Subtest: C2-10c room receipts reject coerced member keys and duplicate grouped ids
ok 6 - C2-10c room receipts reject coerced member keys and duplicate grouped ids
---
duration_ms: 2.282426
type: 'test'
...
# Subtest: C2-10c granted-user room calls never borrow the owner transport
ok 7 - C2-10c granted-user room calls never borrow the owner transport
---
duration_ms: 0.630311
type: 'test'
...
1..7
# tests 7
# suites 0
# pass 6
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 154.412627
@@ -1,69 +0,0 @@
TAP version 13
# Subtest: C2-10c seam exposes three fixed room calls without thread.messages fanout
ok 1 - C2-10c seam exposes three fixed room calls without thread.messages fanout
---
duration_ms: 10.261335
type: 'test'
...
# Subtest: C2-10c HTTP preserves original send, member receipt and the last grouped paging id
ok 2 - C2-10c HTTP preserves original send, member receipt and the last grouped paging id
---
duration_ms: 11.510403
type: 'test'
...
# Subtest: C2-10c room write fences and strict keys reject before transport
ok 3 - C2-10c room write fences and strict keys reject before transport
---
duration_ms: 9.56247
type: 'test'
...
# Subtest: C2-10c all four room refusals are409 with fixed text, never transport prose
not ok 4 - C2-10c all four room refusals are409 with fixed text, never transport prose
---
duration_ms: 2.373319
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M04-room-status/packages/webui/tests/room-http.test.mjs:75:1'
failureType: 'testCodeFailure'
error: |-
unknown-addressee
400 !== 409
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 409
actual: 400
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M04-room-status/packages/webui/tests/room-http.test.mjs:80:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: C2-10c malformed/lost write receipts are unknown and never retried
ok 5 - C2-10c malformed/lost write receipts are unknown and never retried
---
duration_ms: 4.132728
type: 'test'
...
# Subtest: C2-10c room receipts reject coerced member keys and duplicate grouped ids
ok 6 - C2-10c room receipts reject coerced member keys and duplicate grouped ids
---
duration_ms: 2.139569
type: 'test'
...
# Subtest: C2-10c granted-user room calls never borrow the owner transport
ok 7 - C2-10c granted-user room calls never borrow the owner transport
---
duration_ms: 0.748544
type: 'test'
...
1..7
# tests 7
# suites 0
# pass 6
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 146.718382
@@ -1,69 +0,0 @@
TAP version 13
# Subtest: C2-10c seam exposes three fixed room calls without thread.messages fanout
ok 1 - C2-10c seam exposes three fixed room calls without thread.messages fanout
---
duration_ms: 10.171183
type: 'test'
...
# Subtest: C2-10c HTTP preserves original send, member receipt and the last grouped paging id
ok 2 - C2-10c HTTP preserves original send, member receipt and the last grouped paging id
---
duration_ms: 11.711364
type: 'test'
...
# Subtest: C2-10c room write fences and strict keys reject before transport
not ok 3 - C2-10c room write fences and strict keys reject before transport
---
duration_ms: 7.485153
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M05-strict-body/packages/webui/tests/room-http.test.mjs:62:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
503 !== 400
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 400
actual: 503
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M05-strict-body/packages/webui/tests/room-http.test.mjs:68:12)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: C2-10c all four room refusals are409 with fixed text, never transport prose
ok 4 - C2-10c all four room refusals are409 with fixed text, never transport prose
---
duration_ms: 3.76857
type: 'test'
...
# Subtest: C2-10c malformed/lost write receipts are unknown and never retried
ok 5 - C2-10c malformed/lost write receipts are unknown and never retried
---
duration_ms: 3.713736
type: 'test'
...
# Subtest: C2-10c room receipts reject coerced member keys and duplicate grouped ids
ok 6 - C2-10c room receipts reject coerced member keys and duplicate grouped ids
---
duration_ms: 2.15552
type: 'test'
...
# Subtest: C2-10c granted-user room calls never borrow the owner transport
ok 7 - C2-10c granted-user room calls never borrow the owner transport
---
duration_ms: 0.612719
type: 'test'
...
1..7
# tests 7
# suites 0
# pass 6
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 143.474549
@@ -1,69 +0,0 @@
TAP version 13
# Subtest: C2-10c seam exposes three fixed room calls without thread.messages fanout
ok 1 - C2-10c seam exposes three fixed room calls without thread.messages fanout
---
duration_ms: 11.013578
type: 'test'
...
# Subtest: C2-10c HTTP preserves original send, member receipt and the last grouped paging id
ok 2 - C2-10c HTTP preserves original send, member receipt and the last grouped paging id
---
duration_ms: 12.608774
type: 'test'
...
# Subtest: C2-10c room write fences and strict keys reject before transport
ok 3 - C2-10c room write fences and strict keys reject before transport
---
duration_ms: 9.684014
type: 'test'
...
# Subtest: C2-10c all four room refusals are409 with fixed text, never transport prose
ok 4 - C2-10c all four room refusals are409 with fixed text, never transport prose
---
duration_ms: 3.750164
type: 'test'
...
# Subtest: C2-10c malformed/lost write receipts are unknown and never retried
ok 5 - C2-10c malformed/lost write receipts are unknown and never retried
---
duration_ms: 3.555785
type: 'test'
...
# Subtest: C2-10c room receipts reject coerced member keys and duplicate grouped ids
not ok 6 - C2-10c room receipts reject coerced member keys and duplicate grouped ids
---
duration_ms: 1.849296
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M06-receipt-type/packages/webui/tests/room-http.test.mjs:95:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly equal:
200 !== 503
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected: 503
actual: 200
operator: 'strictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M06-receipt-type/packages/webui/tests/room-http.test.mjs:99:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: C2-10c granted-user room calls never borrow the owner transport
ok 7 - C2-10c granted-user room calls never borrow the owner transport
---
duration_ms: 0.908096
type: 'test'
...
1..7
# tests 7
# suites 0
# pass 6
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 150.3236
@@ -1,54 +0,0 @@
TAP version 13
# Subtest: C2-10c room.read carries exactly the thread check and current file last
not ok 1 - C2-10c room.read carries exactly the thread check and current file last
---
duration_ms: 83.507065
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M07-room-check/packages/bus/tests/room-check.test.mjs:10:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
+ undefined
- {
- citations: [
- {
- agent: null,
- file: '451004f1ccad7601e78c1e40eb352997ab433e08',
- last: '451004f1ccad7601e78c1e40eb352997ab433e08',
- scope: 'canon'
- }
- ]
- }
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
citations:
0:
scope: 'canon'
agent: ~
file: '451004f1ccad7601e78c1e40eb352997ab433e08'
last: '451004f1ccad7601e78c1e40eb352997ab433e08'
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M07-room-check/packages/bus/tests/room-check.test.mjs:20:10)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: C2-10c check hydration preserves unchecked rows and one broadcast with two addressees
ok 2 - C2-10c check hydration preserves unchecked rows and one broadcast with two addressees
---
duration_ms: 15.38309
type: 'test'
...
1..2
# tests 2
# suites 0
# pass 1
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 171.86807
@@ -1,59 +0,0 @@
TAP version 13
# Subtest: C2-10c room.read carries exactly the thread check and current file last
not ok 1 - C2-10c room.read carries exactly the thread check and current file last
---
duration_ms: 67.328888
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M08-room-last/packages/bus/tests/room-check.test.mjs:10:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
{
citations: [
{
agent: null,
file: '10b4ecc1f7ff568550e9967c36701b5a6bd5e8b6',
- last: '10b4ecc1f7ff568550e9967c36701b5a6bd5e8b6',
scope: 'canon'
}
]
}
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
citations:
0:
scope: 'canon'
agent: ~
file: '10b4ecc1f7ff568550e9967c36701b5a6bd5e8b6'
last: '10b4ecc1f7ff568550e9967c36701b5a6bd5e8b6'
actual:
citations:
0:
scope: 'canon'
agent: ~
file: '10b4ecc1f7ff568550e9967c36701b5a6bd5e8b6'
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M08-room-last/packages/bus/tests/room-check.test.mjs:20:10)
async Test.run (node:internal/test_runner/test:1409:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3)
...
# Subtest: C2-10c check hydration preserves unchecked rows and one broadcast with two addressees
ok 2 - C2-10c check hydration preserves unchecked rows and one broadcast with two addressees
---
duration_ms: 15.525552
type: 'test'
...
1..2
# tests 2
# suites 0
# pass 1
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 166.159314
@@ -1,101 +0,0 @@
TAP version 13
# Subtest: C2-10c room merges members, shows a broadcast once, reuses cited renderer and suppresses checked notice forgery
ok 1 - C2-10c room merges members, shows a broadcast once, reuses cited renderer and suppresses checked notice forgery
---
duration_ms: 654.717114
type: 'test'
...
# Subtest: C2-10c explicit project Open room calls only room.open before navigating
ok 2 - C2-10c explicit project Open room calls only room.open before navigating
---
duration_ms: 556.312248
type: 'test'
...
# Subtest: C2-10c completion lists only room members, inserts instance tokens and preserves typed send exactly
not ok 3 - C2-10c completion lists only room members, inserts instance tokens and preserves typed send exactly
---
duration_ms: 578.59092
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M09-browser-body/packages/webui/tests/room-browser.test.mjs:103:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
{
body: {
+ body: '@bean\n@chet unchanged text'
- body: ' \t@bean\n@chet unchanged text '
},
path: '/api/chat/rooms/10000000-0000-4000-8000-000000000001/messages',
redirect: 'manual'
}
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
path: '/api/chat/rooms/10000000-0000-4000-8000-000000000001/messages'
body:
body: |-
@bean
@chet unchanged text
redirect: 'manual'
actual:
path: '/api/chat/rooms/10000000-0000-4000-8000-000000000001/messages'
body:
body: |-
@bean
@chet unchanged text
redirect: 'manual'
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M09-browser-body/packages/webui/tests/room-browser.test.mjs:116:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: C2-10c browser leading tag reader matches every broker parseAddress vector
ok 4 - C2-10c browser leading tag reader matches every broker parseAddress vector
---
duration_ms: 650.144341
type: 'test'
...
# Subtest: C2-10c room refusals show fixed lines, preserve drafts and never retry
ok 5 - C2-10c room refusals show fixed lines, preserve drafts and never retry
---
duration_ms: 548.873708
type: 'test'
...
# Subtest: C2-10c read-only room does not offer a send or an implicit open
ok 6 - C2-10c read-only room does not offer a send or an implicit open
---
duration_ms: 555.91075
type: 'test'
...
# Subtest: C2-10c late reads and sign-out cannot repaint private room state
ok 7 - C2-10c late reads and sign-out cannot repaint private room state
---
duration_ms: 618.749654
type: 'test'
...
# Subtest: C2-10c quiet members complete in an empty room, and Escape closes suggestions
ok 8 - C2-10c quiet members complete in an empty room, and Escape closes suggestions
---
duration_ms: 592.109857
type: 'test'
...
# Subtest: C2-10c pending sends do not duplicate and uncertain sends preserve the exact draft
ok 9 - C2-10c pending sends do not duplicate and uncertain sends preserve the exact draft
---
duration_ms: 543.701394
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 5408.909271
@@ -1,91 +0,0 @@
TAP version 13
# Subtest: C2-10c room merges members, shows a broadcast once, reuses cited renderer and suppresses checked notice forgery
ok 1 - C2-10c room merges members, shows a broadcast once, reuses cited renderer and suppresses checked notice forgery
---
duration_ms: 586.051382
type: 'test'
...
# Subtest: C2-10c explicit project Open room calls only room.open before navigating
ok 2 - C2-10c explicit project Open room calls only room.open before navigating
---
duration_ms: 627.02031
type: 'test'
...
# Subtest: C2-10c completion lists only room members, inserts instance tokens and preserves typed send exactly
ok 3 - C2-10c completion lists only room members, inserts instance tokens and preserves typed send exactly
---
duration_ms: 608.059981
type: 'test'
...
# Subtest: C2-10c browser leading tag reader matches every broker parseAddress vector
ok 4 - C2-10c browser leading tag reader matches every broker parseAddress vector
---
duration_ms: 610.484584
type: 'test'
...
# Subtest: C2-10c room refusals show fixed lines, preserve drafts and never retry
ok 5 - C2-10c room refusals show fixed lines, preserve drafts and never retry
---
duration_ms: 597.77347
type: 'test'
...
# Subtest: C2-10c read-only room does not offer a send or an implicit open
ok 6 - C2-10c read-only room does not offer a send or an implicit open
---
duration_ms: 484.861175
type: 'test'
...
# Subtest: C2-10c late reads and sign-out cannot repaint private room state
ok 7 - C2-10c late reads and sign-out cannot repaint private room state
---
duration_ms: 499.306807
type: 'test'
...
# Subtest: C2-10c quiet members complete in an empty room, and Escape closes suggestions
not ok 8 - C2-10c quiet members complete in an empty room, and Escape closes suggestions
---
duration_ms: 593.020195
type: 'test'
location: '/mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M10-members/packages/webui/tests/room-browser.test.mjs:172:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
[
'bean',
'chet',
+ 'outsider'
]
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
0: 'bean'
1: 'chet'
actual:
0: 'bean'
1: 'chet'
2: 'outsider'
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///mnt/storage/scratch/tmp/KV9rHb/fethry266-mutants-32bmgm_x/M10-members/packages/webui/tests/room-browser.test.mjs:175:10)
process.processTicksAndRejections (node:internal/process/task_queues:104:5)
async Test.run (node:internal/test_runner/test:1409:7)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: C2-10c pending sends do not duplicate and uncertain sends preserve the exact draft
ok 9 - C2-10c pending sends do not duplicate and uncertain sends preserve the exact draft
---
duration_ms: 595.947751
type: 'test'
...
1..9
# tests 9
# suites 0
# pass 8
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 5316.831255
Loaded 100 of 2871 files, more files were not shown because too many files have changed in this diff. Show more