Compare commits
292
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e25ef0373c | ||
|
|
45dca69f6e | ||
|
|
293b42fee9 | ||
|
|
369607e92d | ||
|
|
59f013247c | ||
|
|
e8bb13df84 | ||
|
|
dba2ebdb85 | ||
|
|
45ea3fa0d2 | ||
|
|
f69c962009 | ||
|
|
5b6c878143 | ||
|
|
8c2c5303cf | ||
|
|
23e3d09fa9 | ||
|
|
795a645e65 | ||
|
|
076ca8d6e4 | ||
|
|
68be863248 | ||
|
|
264fad2e26 | ||
|
|
24672fd9d6 | ||
|
|
30e6bb6803 | ||
|
|
7defb58e97 | ||
|
|
9c8877bdf3 | ||
|
|
2d0318a44a | ||
|
|
bd3fa2a484 | ||
|
|
ab575ee553 | ||
|
|
1676ad0de8 | ||
|
|
4874d1e83a | ||
|
|
e909ef51a2 | ||
|
|
4607e15b83 | ||
|
|
8b42010551 | ||
|
|
4863e2caf4 | ||
|
|
7b25a60633 | ||
|
|
e86df37d76 | ||
|
|
fe4ee8c7b5 | ||
|
|
0621c439e0 | ||
|
|
d243f6b25f | ||
|
|
869670d1b1 | ||
|
|
dbbda25373 | ||
|
|
a9da046f83 | ||
|
|
4a71b56abc | ||
|
|
5208894196 | ||
|
|
8dc132bec8 | ||
|
|
08b8831bce | ||
|
|
d339892301 | ||
|
|
0ea3db297b | ||
|
|
f859d06d20 | ||
|
|
70651f45d8 | ||
|
|
490f45f024 | ||
|
|
1e629c892d | ||
|
|
84de3fbca3 | ||
|
|
1e4c1e6e94 | ||
|
|
5b846b048a | ||
|
|
59f0e44f47 | ||
|
|
bb031ec840 | ||
|
|
07315e6514 | ||
|
|
fb04cbc431 | ||
|
|
9d929911c8 | ||
|
|
bcf3c1dacf | ||
|
|
d52d9f1f2f | ||
|
|
830f3d8bff | ||
|
|
e48d602165 | ||
|
|
cabcb81d49 | ||
|
|
353d65f577 | ||
|
|
2c289f6f0d | ||
|
|
a863015a51 | ||
|
|
e551cd8466 | ||
|
|
c13c337e16 | ||
|
|
435a7458d3 | ||
|
|
b99ca86b9c | ||
|
|
0e057e05eb | ||
|
|
c16e943b90 | ||
|
|
ac1644e1ce | ||
|
|
90633c8648 | ||
|
|
5fdfd7275c | ||
|
|
a236dbc30a | ||
|
|
312260db7b | ||
|
|
d7b4967ed0 | ||
|
|
90a3c03cfb | ||
|
|
282f5b4e45 | ||
|
|
781fd509c4 | ||
|
|
52a73e83bd | ||
|
|
049214486b | ||
|
|
2efd127ce6 | ||
|
|
fdbe95d88d | ||
|
|
cb96220b53 | ||
|
|
6408dcec4f | ||
|
|
0c8f12ea20 | ||
|
|
24f8f5d739 | ||
|
|
31da9dcb85 | ||
|
|
ff54a15563 | ||
|
|
249d42dfc5 | ||
|
|
07802dc57a | ||
|
|
3ed9fd754a | ||
|
|
c9fcf9b5af | ||
|
|
2b6111a176 | ||
|
|
4a827edb0c | ||
|
|
908f92b039 | ||
|
|
62470a3ec3 | ||
|
|
fee08d7ab9 | ||
|
|
1ac655005e | ||
|
|
8a35ffadb4 | ||
|
|
ffb2fedfbc | ||
|
|
11d1e2e0ce | ||
|
|
ed81f6eba0 | ||
|
|
e14164ab49 | ||
|
|
10113b04f5 | ||
|
|
c1f910b4cc | ||
|
|
15e688cc01 | ||
|
|
80793d824e | ||
|
|
ad6ca79304 | ||
|
|
d3059c2c3d | ||
|
|
6f07930679 | ||
|
|
b01e1c9ee1 | ||
|
|
8716e72f26 | ||
|
|
9beeeb9955 | ||
|
|
9e43fefe60 | ||
|
|
d0460ed475 | ||
|
|
26f93fa746 | ||
|
|
c9e67e7d2d | ||
|
|
52d2a16109 | ||
|
|
afef0ea887 | ||
|
|
09d0d6fafa | ||
|
|
ffbc0d7a6d | ||
|
|
756284e8e9 | ||
|
|
0e30a85fac | ||
|
|
6aab979e6c | ||
|
|
e5ffa76932 | ||
|
|
bf4ba4280e | ||
|
|
495c128658 | ||
|
|
4b612781b4 | ||
|
|
be43572166 | ||
|
|
39bde4fd43 | ||
|
|
fdedc56e2a | ||
|
|
e3ef1eaf6f | ||
|
|
c902a767dc | ||
|
|
86d5ac69bf | ||
|
|
4a9c536e86 | ||
|
|
83f1f854de | ||
|
|
e51d116402 | ||
|
|
78bbe12233 | ||
|
|
92c0ca3db2 | ||
|
|
d0ede15b95 | ||
|
|
29bb1ccd46 | ||
|
|
4e22bd49f9 | ||
|
|
464010fbe4 | ||
|
|
e57bfde734 | ||
|
|
319d9f87ea | ||
|
|
b23783f395 | ||
|
|
e18ad27115 | ||
|
|
12f8c3089c | ||
|
|
253346e3c3 | ||
|
|
7328da8ca4 | ||
|
|
84002f960a | ||
|
|
f89aaf57fe | ||
|
|
d3a49f301a | ||
|
|
562b05b43c | ||
|
|
8c28ee7315 | ||
|
|
bce4917154 | ||
|
|
01b57f48bb | ||
|
|
54ec0005e0 | ||
|
|
61e262b7c0 | ||
|
|
540b6f16ba | ||
|
|
e6a675ee83 | ||
|
|
e77635cebb | ||
|
|
3fc8ccef1a | ||
|
|
27d3266fff | ||
|
|
6bd67225b5 | ||
|
|
14715d644a | ||
|
|
f9a9c9b5a0 | ||
|
|
34388223d8 | ||
|
|
3adb391b57 | ||
|
|
4da907cd5e | ||
|
|
aa8fc490f5 | ||
|
|
a9884dc75c | ||
|
|
25c2c1a560 | ||
|
|
4f827a5e81 | ||
|
|
7dc8ff1bfa | ||
|
|
61df3061ed | ||
|
|
b212182ed1 | ||
|
|
dac64ff311 | ||
|
|
b329ad69f5 | ||
|
|
8d4d4ec598 | ||
|
|
5ddc36ca97 | ||
|
|
f510d73676 | ||
|
|
767bb62c7d | ||
|
|
6345aae3d8 | ||
|
|
ee5f7b9ef8 | ||
|
|
0b923a2759 | ||
|
|
b0a6838ca6 | ||
|
|
0626464874 | ||
|
|
66299eeef7 | ||
|
|
569bb6b177 | ||
|
|
fb404c909d | ||
|
|
4c0a2c4fd4 | ||
|
|
2f06aad3f0 | ||
|
|
6863d4c852 | ||
|
|
9ef5798acb | ||
|
|
4897520c31 | ||
|
|
4ca2703079 | ||
|
|
25c09f19fe | ||
|
|
a6da8718c4 | ||
|
|
ee26cfbada | ||
|
|
a4da4e6df4 | ||
|
|
7309260aeb | ||
|
|
7c543fd4a1 | ||
|
|
284d55cf2c | ||
|
|
93a491d732 | ||
|
|
c7b754d7b1 | ||
|
|
a94c95522f | ||
|
|
c4f77373f9 | ||
|
|
c7e77202d6 | ||
|
|
a0094633f6 | ||
|
|
721268b084 | ||
|
|
f0e3dcdf41 | ||
|
|
01983cd3f1 | ||
|
|
626c19e78c | ||
|
|
f32b867f34 | ||
|
|
826e8fd7ff | ||
|
|
e06130fc01 | ||
|
|
466562ba03 | ||
|
|
931fab079a | ||
|
|
135bb8fae2 | ||
|
|
cf228eabc9 | ||
|
|
41f8bd1972 | ||
|
|
47906e4fde | ||
|
|
c2b845c76d | ||
|
|
74635fc608 | ||
|
|
257003ba1a | ||
|
|
537ce2dd4a | ||
|
|
3b90428021 | ||
|
|
859ae37083 | ||
|
|
88179d6de4 | ||
|
|
ccfa17eefc | ||
|
|
b5d9efa1ba | ||
|
|
69979bb8a8 | ||
|
|
155f643224 | ||
|
|
b96b4e303d | ||
|
|
f2735bb6a1 | ||
|
|
0cbe2e9b35 | ||
|
|
9538e0fc86 | ||
|
|
1a228f395f | ||
|
|
8295622600 | ||
|
|
ac0e4dc9bc | ||
|
|
c49fdb2692 | ||
|
|
cfb86f1bd7 | ||
|
|
178eefd5c4 | ||
|
|
8a29f94771 | ||
|
|
d78a9cc83c | ||
|
|
17f4157920 | ||
|
|
647424442f | ||
|
|
71fed6281c | ||
|
|
86a665bdf0 | ||
|
|
efcc9ea8dd | ||
|
|
f39508c24f | ||
|
|
d20ef317fc | ||
|
|
6e50bd6304 | ||
|
|
6c80b12904 | ||
|
|
42fd3edd45 | ||
|
|
dc5836c7df | ||
|
|
2133c5a0c6 | ||
|
|
194dec83d6 | ||
|
|
84b32e3903 | ||
|
|
9d241fdcc2 | ||
|
|
76a6524cfe | ||
|
|
693f7e745e | ||
|
|
94c33a43c0 | ||
|
|
a870fd85bb | ||
|
|
5b1f1dc885 | ||
|
|
8c638b6f66 | ||
|
|
a700992cd4 | ||
|
|
d30f35e292 | ||
|
|
e5b7d1d083 | ||
|
|
836b2f25ca | ||
|
|
73516da853 | ||
|
|
95e3f71661 | ||
|
|
cde0cd0832 | ||
|
|
100f018af3 | ||
|
|
4a8215e3a1 | ||
|
|
669e680368 | ||
|
|
c06ccc9ba4 | ||
|
|
136e5c1ca3 | ||
|
|
cf17ab387b | ||
|
|
09948da187 | ||
|
|
35615b01b7 | ||
|
|
3f1f4e44fa | ||
|
|
65b8c8a9bd | ||
|
|
271cef205c | ||
|
|
3e5db651b7 | ||
|
|
e1c9c09935 | ||
|
|
aaaf45576a | ||
|
|
cf6abca9c0 | ||
|
|
3410df7c3b | ||
|
|
1e3db53436 | ||
|
|
4dd85c6716 |
No files matched your search
@@ -5322,3 +5322,92 @@ Gander: after Duckworth-0100 design approval with C1-C5, prepared the two host-s
|
||||
2026-10-22 14:45 UTC | Gander row253 focused27 on finalaca16404c base | Fresh0604d91fc / manifest573c51cf:27 whole files604/0/0, no timeout/retry, case134/0 in99.281s, case243/0 in66.418s, stack-release includingT46221/0 in583.453s. N9 sandbox bind ran and passed, no focused skips. Seven source blobs unchanged; sweep0 run-created leftovers, pre-existing infrastructure receipts retained. Whole gate and M1-M40 await separate Sage CLEAR after Duckworth rebase check. No live action.
|
||||
|
||||
2026-10-22 14:46 UTC | Gander correction to the row253 focused27 entry immediately above | stack-release whole was218/0/0, not221/0. The27-file sum604/0/0 and duration583.453s are unchanged; raw files/results.json and SUMMARY.json give the exact per-file totals.
|
||||
|
||||
2026-10-21T16:04:23Z | Q195/Q196 writing editor design, #1752 / Vikunja #448 | Before: row 154 edits Markdown in a separate Docs view, with no selected-word thesaurus or document pins. After: design draft on gyro/editor-design compares three editor approaches, records WordNet source/license/size, folds the pane/pin model and specifies guarded context/proposal APIs, DesignCraft handoff and seven proposed briefs. Q196 changes the basis to a Word-like interface. Verification so far: editor/provenance checks 10 pass, 1 explicit rebuild skip (pinned esbuild absent); brief fields, unique headings and 11-line checklist checked. Product, queue and live state unchanged. WordCraft scratch evaluation is being incorporated before publication. Review and Jason choices remain open.
|
||||
|
||||
2026-10-21T16:22:36Z | Q195/Q196 design verification, #1752 / Vikunja #448 | Folded Fenton 7caf8008b and Louie 880ef19e0. Recommend bounded O3: Word-like DOM editor plus isolated headless DOCX export, with explicit feature cut and semantic loss checks. WordCraft web 44,179,239 bytes, identical twice; measured comment/footnote conversion limits recorded. Seven briefs and 12-line checklist validated. Fresh editor/provenance: 10 pass, 0 fail, 1 explicit rebuild skip (esbuild 0.28.2 absent). CI queue guard identity gyro/purpose push returned documented degraded-pass (exit 0), CANNOT_ASSERT credential-unresolvable, scratch audit gyro-q195-ci-queue-audit.jsonl; no fallback or CI-green claim. Documentation-only candidate for Mos/Fenton review, no source, queue or live changes.
|
||||
|
||||
2026-10-22T16:06:34Z | Q195/Q196 design review fixes, #1752 / Vikunja #448, mos-1300 / fenton-0004 | Before: draft 105811400 had owner-only thread wording, stale source positions, two mismatched seat/model assignments, an assumed library save boundary and 12 owner questions. After: grant-aware pin validation and stale/revoked access redaction; references refreshed against aca16404c, including public/bus.js and README offsets; Sage assigns model-only seats; unimplemented library.file.save/C2-11b brief blocks book editing; tabs explicitly cover 62-76rem; J7 stricter context choice recorded; pronouns removed; six owner questions. Static docs/source-anchor checks only, no builds, product suites, MVP gate slot or live action. Fenton re-check pending; O3 and both companion folds retained.
|
||||
|
||||
2026-10-22T16:09:56Z | Della mos-1303 / Vikunja 460 Q217/Q222 revision | Before: Q1/Q2 open and Q3-Q7 phrased as Jason questions. After: Jason-created InMotion/woltje.com ingress recorded; per-source mailboxScope defaults none with human-only CLI then Console writer and named default/change/agent-refusal tests. Q3-Q7 settings/defaults/owners documented; no new external decision required for default development, conditional provider/spend/exposure list retained. PRD/grant/data.delete/live gates preserved. Docs only, no product suite or live operation. Earlier uncommitted append-only PRD review session receipts are preserved in this docs commit. Ludwig reviews before Sage landing.
|
||||
|
||||
2026-10-22T16:12:26Z | Della ludwig-0035 / mos-1303 / Vikunja 460 focused corrections | Verified REQ-WAIT-2/3 at db1e7732a: Jason approval is required to route mail.access out of hard waits. Restored explicit Jason-approved PRD gate; no Q211 waiver inferred. Named tunable parser/attachment settings, defaults and schema/test review ownership of resource bounds; E04 checks changed values and bound refusals. Clarified Q8 extraction stays Jason choice. Docs-only checks, no product/live action; focused review before Sage handoff.
|
||||
|
||||
2026-10-22 13:06 UTC | Megavolt | Row 281 (#1786) build. Before: a fire or delete left host_grants/gitea_grants rows, the host line and the Gitea token live. After: step G in broker.mjs revokes them in a detached job per agent (the host line first, then Gitea local-first with an admin preflight); a refusal is grant.revoke.refused plus a human message; open grant decisions are in the set; a raise for a fired agent refuses instance-fired. Tests T1-T14 (bus fire-revokes-grants, lifecycle-revoke, grant-executor, gitea-grant; cli lifecycle). Gate on 7979fb41e: base 121/121 + 24/24, 29 anchors, M1 exit check rc1/17, M1-M22 22/22 killed, dewey-0840 files 76+14+23, bus 819, business 231, cli 837, ten shells rc 0 under the mos-1275 limits; skips: test-task row 244 live-provider pair, test-queue canonical-root check. Corrections: the first base run on c174f37ac went red on five first-run test defects (b3, test only); the first mutant run on 06ee5ed6b hung on M1 because T6c's held loop never ended (b4a fixed the teardown, and the runner now has timeout -k 10 180 and an exit check without --test-force-exit).
|
||||
|
||||
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.
|
||||
|
||||
2026-10-22T16:52:55Z | Rocko | Row219 prepared under sage2793/2807; explicit creative thread/default-session selection, narrow metadata route/picker U1–U5,22 static mutant sites; unrun while253 holds.
|
||||
|
||||
2026-10-22T17:42:16Z | Sage | Row 253 (#1758, Gander, Duckworth) LANDED 48e450ce8. Before: refactor at aca16404c; case-sudo calls had no supervised session check and the M21 survivor hid behind a fast-exit fixture (mos-1297). After: a fast-forward of 22 commits; manifest 591020a1 rechecked with 0 mismatches; run 5 whole gate green with M1-M40 killed, the M38 PID equals SID assertion added under mos-1298; Duckworth APPROVE rev 3252, note rev 3253, done rev 3254; #1758 comment 30701 and closed; P19 416 comment 719. N1 (fast child reported as exit 85) is DEFERRED as Vikunja 532.
|
||||
|
||||
2026-10-22T18:11:57Z | Sage | Row 275 (#1780, Morgana, Duckworth) LANDED 3410df7c3. Before: refactor at 48e450ce8; viewers had no verb list of their own and board reads were not refused to users. After: a fast-forward of 3 commits; manifest 39847b15 (4 paths) blobs match; gate 17:52:12Z-18:05:00Z green (whole files 7/22/6, bus 834, cli 861, harness 151, business 231, seat 167, 10 scripts with 3 named skips), M6 and M10 killed; Duckworth APPROVE rev 3260 (comment 30717); note and done by sage-2897; #1780 comment 30728 and closed. N1 (board refusal test as a loop over BOARD_VERBS) is non-blocking.
|
||||
|
||||
2026-10-22 18:11:58 UTC | Gander row276 #1781 prepared, gate pending | Before: row253 left5legacy Case1 AS_USER calls unsupervised across sudo pty sessions. After: candidate uses its unchanged supervisor with per-call inner/outer budgets, separate streams, strict display-only failure trailer, fake-only paired process-model cases and15unique mutants. Duckworth0182 B1 corrected the plan before product code;0183 cleared build. Parse-only Bash checks pass; no Node, behavioral test, host, unit or config action. Runtime gate and publication await Sage.
|
||||
|
||||
2026-10-22T22:51:32Z | Megavolt | Row 207 (193c, #1705): rebased onto 01983cd3f as 712f79c0a; gate green under sage-3041 (access.test 31/31, M1-M8 killed on named tests, cli 894/894, ten scripts under mos-1275 limits). Correction: the first run's kill check grepped TAP "not ok" against node's spec output and was stopped and rerun. Runs note in 9bb406c6c.
|
||||
|
||||
2026-10-22T22:51:32Z | Sage | Row 207 (#1705, Megavolt, Duckworth) LANDED c4f77373f. Before: refactor at f0e3dcdf4; mosaic access had no user verbs. After: fast-forward of 4 commits, a cherry-pick of the gated 01983cd3f..9bb406c6c (range-diff 4/4 equal, patch-ids equal, the 4 manifest blobs equal; the base moved only by the #1797 brief, which no test reads; no open branch touches the manifest). Duckworth APPROVE c30849 rev 3356; done rev after the note. N1 (any-business refusal untested) DEFERRED. No live change. Correction: my first 207 review request ran under timeout 120, which killed it while it wrote the outcome; the comment (c30841) had posted, so I removed the dead lock and resolved it at rev 3350.
|
||||
|
||||
2026-10-22T23:03:39Z | Gyro Q195 O2 rewrite, #1752 / Vikunja #448, mos-1356 | Before: landed O3 design 95e3f7166/blob 4cb59999. After: Q231/Q233 full WordCraft O2 design on gyro/editor-o2 from refactor c4f77373f; canonical git DOCX, original Markdown/wiki preservation, human cadence default 0 with instant accepted-save commits, full rich-feature first slice. Ten briefs include independent source/dependency security clearance before any build queue entry, exact editor-only CSP approval gate, restricted source/build/bridge, separate reviewed DOCX citation gate and flags-only agent access. Existing Case 2 semantics unchanged; any integration requirement change goes through Mos to Jason. Static checks: ten briefs/seven fields, independent reviewers, unique anchors, current source/base/blob pins, docs scope and append-only logs pass. No builds, browser/worker runs, code, queue or live changes. Fenton review pending; CSP and implementation gates remain closed.
|
||||
|
||||
2026-10-22T23:03:53Z | Gyro Q195 O2 push guard | CI queue guard identity gyro / purpose push returned exit 0, documented degraded-pass: CANNOT_ASSERT credential-unresolvable. Audit: /mnt/storage/scratch/gyro-q195-ci-queue-audit.jsonl. No credential fallback or CI-green claim.
|
||||
|
||||
2026-10-22T23:09:38Z | Gyro Q195 O2 fenton-0006 fixes | Before: e012bab0b left stale-source ambiguity, incomplete migration/shipping ownership, undefined typing transactions and an unmeasured CSP gate. After: D12 explicitly routes superseded-source/C2 reply notices to Mos/Jason and refuses adoption before W4b/notice path; Q2 remains open. F2-F6 add schema-edge placeholders and restore-accounting files, shipped runtime data/writing closure with no sandbox store mount, per-chapter DOCX and 2s-pause/15s-span save groups, volume/latency/growth gates, split-run clickable wikilinks and historical Obsidian graph warning, and S0 isolated existing-artifact CSP measurement before exact-header approval. Static ten-brief/ownership/settings/checklist checks pass. No build/browser run, product/queue/live change. Independent re-check pending.
|
||||
|
||||
2026-10-22T23:09:50Z | Gyro fenton-0006 push guard | identity gyro, purpose push, exit 0 documented degraded-pass CANNOT_ASSERT credential-unresolvable; audit gyro-q195-ci-queue-audit.jsonl. No fallback credentials or CI-green claim.
|
||||
|
||||
2026-10-22T23:10:14Z | Gyro mos-1358 ruling recorded | Q36 / Vikunja 562 keeps C2 superseded notices OPEN with Jason. Markdown adoption refusal until W4b PASS is now a separate settled Mos build-order ruling, not a Jason question. D12 and Q2 distinguish them; no notice build authorized.
|
||||
|
||||
2026-10-22T23:13:27Z | Gyro Q195 O2 fenton-0007 F7/F8 | Named human-only editor.saveGroupPauseMs=2000 and editor.saveGroupMaxMs=15000 with integer/range/cross-field validation and W3a UI/CLI refusal tests. W3b owns production adoption refusal until W4b; isolated fixture conversion remains testable without request-flag bypass. W4b owns adoption module/API tests and reviewed lifting only with committed-reader/citation readiness and, if Q36 approves, the separate notice row PASS. Q36 unresolved stays closed. Static ten-brief, setting-key/bounds, refusal/lift ownership and two-question checks pass. Docs only; no build, browser/worker run, product/queue/live change. Fenton checks F7/F8 on next push.
|
||||
|
||||
2026-10-22T23:13:48Z | Gyro mos-1359 / r3 push guard | D13 records save-group timing as Mos's accepted reading of Q226 F41, not Jason's ruling; both defaults remain human-only settings. Push guard identity gyro/purpose push: exit 0 documented degraded-pass, CANNOT_ASSERT credential-unresolvable; audit gyro-q195-ci-queue-audit.jsonl, no credential fallback or CI-green claim.
|
||||
|
||||
2026-10-22T23:23:42Z | Rocko, W4 #1799 | Before, D24-D26 had no separate exact DOCX citation/access contract. After, 15e91538f proposed a versioned schema, parser/story/view/refusal rules, live authorization/sharing and generic/git/session bypass closure, compatibility gates and 22 acceptance rows. Two JSON examples parse, diff check clean; no code or implementation acceptance. Megavolt review pending.
|
||||
|
||||
2026-10-22T23:55:11Z | Sage, W4 #1799 docs landing | Megavolt reviewed four rounds (CHANGES 15e91538f, 019a0ea5b, 54246cb32; APPROVE 994c3f7fb, #1799 c30868/c30870/c30876/c30884). Landed here as cherry-picks: docs/plans/2026-10-22_q195-docx-citations.md blob 2af460ab7 and docs/reviews/2026-10-22_q195-docx-citations.md blob bedde1716, both new files. 32 acceptance rows go to W4b; R4-N1 (re-migration after a pre-W4b restore keeps the rotated fence and needs owner confirmation) goes into W4b's brief and A32. W4 is design-approved only: its gate still needs Sage's W4b implementation brief, which waits for S0 (#1798) PASS. Q36 open, adoption closed. Docs only, no test reads these files.
|
||||
|
||||
2026-10-23T00:52:58Z | Gyro Q235-Q237 policy rewrite started, Vikunja 571, mos-1366/1367 | Before: approved O2 e36bce352 keeps Markdown originals at their paths and Q36 notices open; landed W4 2af460ab7 has the same boundary. Imported that byte-identical W4 baseline as 1ac76a417, from refactor 062646487, to make the policy-only revision diff explicit. Prepared P1-P6/B1-B4: human one-way per-story import, human-set source-repo archive, DOCX current reader, scoped format map/archived non-canon reads, W7 conversion publication after W4b/approved PRD/10-27 and Jason first-real-book go. Q234 exact CSP, mos-1363 and S0 M1-M14 retained. W4 locator/extractor, shares and restore-fence blocks compare byte-identical to the approved baseline. Scope/source review ongoing; Mos impact map must be folded before Fenton handoff. No build/browser/worker run, code, queue, private-book or live action.
|
||||
|
||||
2026-10-23T01:37:07Z | Gyro Vikunja571 final impact-map / mos-1372/1375 fold | Prepared parent/W4 rewrite against brain-redux d183246 impact map at stack 062646487. P1-P6/B1-B4 and engineering Q1-Q16 are mapped to eleven briefs. D9 replaces the earlier private O2-only context/per-document/share model: normal Case 2 access in any authorized thread/room, supporting writes intact, changed policy awaits PRD 1.17 approval. New DOCX story creation has the same opening gate as human per-story import. Host-only push to human-set off-host remote replaces the no-remote ban; remoteURL defaults unset and same-host bare is disallowed. W7 gates on Hermes #423 step5, W4b, PRD approval, post-10-27 and first-real-book go; owns conversion events COUNTED/--events/pre-conversion restore reconciliation, manifest order/next_chapter, creative role cite wording, archive/old-path edits and format/link/citation routing. Store+off-host acknowledgment precedes archive commit/push, then catalogue publication; post-push failures remain resumable pending with pinned source. Current checks pass: complete brief fields, policy/map coverage, exact Q234 CSP, locator/projection mechanics byte-equivalent except explicit authority wording, A01-A35 IDs, immutable map pin, four-doc scope and append-only logs. W4 authority/remote/recovery sections reopened for Fenton; older APPROVE not reused. No product/build/browser/worker/private-book/queue/live action. Earlier entry describing preserved shares/fence applies only to the pre-D9 intermediate draft; D9 now withdraws those unimplemented structures.
|
||||
|
||||
2026-10-23T01:37:55Z | Gyro 571 push guard | identity gyro/purpose push: exit 0 documented degraded-pass CANNOT_ASSERT credential-unresolvable, scratch audit gyro-q195-ci-queue-audit.jsonl; no credential fallback or CI-green claim.
|
||||
|
||||
2026-10-23T01:41:59Z | Gyro sage-3121 A1-A3 PRD alignment | Before: 8d209016b adds a current Connections graph, excludes new Markdown stories in converted books and defaults archiveFolder. After: parent/W4 align with PRD1.17 d6 sha256 886b93c571f87bfbb2f27ee3113b6800a32d8f89196d95ace33566031bee380a: clickable editor links only; graph/tests later pending J-b; new different-path Markdown in a converted book remains canon until import, only recreated converted old paths are unmapped; archive folder is human-set in library mapping with no default, missing folder refuses conversion. Static A1-A3/11-brief checks pass; W4 locator/extractor/access/remote/recovery blocks unchanged. Local commit only, push held for Sage's named gap while Gizmoduck holds 270+271 run5. No product/build/browser/worker/queue/live action. Fenton gets local SHA through shared object store.
|
||||
|
||||
2026-10-23T01:49:08Z | Gyro fenton-0012 B1/B2 and N1-N6, mos-1379 | B1: off-host remote must deny the real shared jason.woltje seat-helper credential as well as seat identities until #431; private visibility/dummy-token denial is insufficient; W3b/A16/A26 require that future fixture proof. B2 follows mos-1379: human-only editor.agentReadComments and editor.agentReadTrackedDeletions both default false, comment/original/markup reads/resolves/index/context refuse when off; final access remains D9 and no role allowlist/per-document grant. N1 staging-ref allowlist and retained private refused/published audit refs; N2 URLs literal with fidelity-report loss and confirmation; N3 future paths marked new or predecessor row; N4 rename/sharing wording fixed; N5 historical thread text not refreshed; N6 protected VM1012 backup cited in P5. Static checks pass, locator JSON/package/projection mechanics retained. Local commit only; HTTPS push still held for Sage's named gap. No credentials tested/read/printed, no product/build/browser/worker/queue/live action. Fenton gets exact local SHA/blobs.
|
||||
|
||||
2026-10-23T01:53:25Z | Gyro fenton-0013 N7 mixed-format chapter order | Fenton approved local 0f4fa4f93. D10 now explicitly orders every chapter ID regardless of Markdown/DOCX format, inserts new canon Markdown by row216 or human committed order, and preserves ID/position at import. W7 tests cover mixed traversal/insertion/import stability. Static diff/append-only checks and docs hook pass. Local commit only, narrow re-check requested, HTTPS push still held for Sage gap. No runtime, queue or live change.
|
||||
|
||||
2026-10-23T02:21:06Z | Sage, rows 270+271 landing, 571 landing, MVP rows | Before: 270 (#1775) and 271 (#1776) were approved on gizmoduck/row270-271-r4 49cee846e and 2b964a082 after combined gate C2 run 5 GREEN on 53406f3e4 (bus 873, seat 202, cli 905, ten scripts, 38/38 mutants). After: 33 commits cherry-picked onto 767bb62c7 as 7328da8ca, range-diff all "=", 40 paths identical to the candidate; 270 manifest f4174458 matches, 271 manifest 3ab1f5c8 matches on 29 paths, the other 4 moved under 270 and match its manifest. Done revs 3396/3398, #1775 c30962 and #1776 c30964 closed, P19 463 c861. 571 (Gyro, Fenton APPROVE) picked as ee5f7b9ef, 6345aae3d, 767bb62c7 (blobs 9382f85b, 7ec0897b), 1ac76a417 left out; N7 911dad2aa (Fenton-0014) picked after. Rows 293-299 added (574, FED R6, R4, R7, GitHub grant, Q228, 573), queue commit 253346e3c. Correction: the push sync step checked out O..S paths over the canonical worktree without testing for uncommitted edits, so any pending SESSIONS or BUILD-LOG line in the canonical checkout at 02:06Z would have been overwritten; the sync now skips edited paths. Schema 3n is not live (LIVE 0cbe2e9b3 at 3m).
|
||||
2026-10-23T03:59:52Z | Sage, row 293 (Vikunja 574) landing and 3m-3n live window | Before: live 0cbe2e9b3 at schema 3m; 574 approved by Filbert (c30982, cdda41f5) on gander/v574-r2 a9cae2bd6 after run 2 GREEN on 6bfab273b (four files 153/0, seat 202/0, cli 905/0, 312 flagged commits with 0 maintenance children). After: Darkwing's window put live on 464010fbe at 3n (activation 20261023T034557Z-464010fbe4c6, 26/97/5/28, Console 7332 200, W9b pm ra38826f3c6e2 left live, STATE darkwing/window-migrate-3n 8708927e5); 574's six commits cherry-picked onto 464010fbe as e51d11640, range-diff all =, patch-ids equal, only docs differ from a9cae2bd6. #1805 closed c31013, P19 386 c887 and 574 c888. Residual: queue store.mjs, discord git.mjs, harness tools.mjs commit without the maintenance flags; no whole-root test covers them yet.
|
||||
2026-10-23T05:47:17Z | Sage, row 292 (#1797) landing, idle-stop race row 302, rows 300/301, row 294 rounds 2-3 | Before: refactor 4a9c536e8; 292's gate on 0d0021454 hit one red at compactions-launch.test.mjs:229, ['session-invalid',22,null] where ['stopped',0,null] was expected, product and test unchanged. Gizmoduck read it as a race: threadIdle releases the claim, then the launcher sends SIGTERM, and a runner call in between gets not-holder and exits 22. Mos (mos-1411) rejected loosening :229, let 292 count one whole unedited green cli rerun, and allowed one rerun for that exact signature on other gates until the race row lands (hits logged on Vikunja 588). The 10-run diagnostic passed 10/10, but one runner log (r846b8d083502) showed not-holder then exit 22. After: the cli rerun was 910/910. 292 LANDED 6aab979e6 05:18Z (7 cherry-picks, range-diff all =, patch-ids equal), done rev 3447, #1797 closed c31038, Vikunja 588 c891. Briefs 86d5ac69b (R6-N1 #1807, R6-N4 #1808, rows 300/301) and e3ef1eaf6/fdedc56e2 (race, #1809, row 302). Row 302 design d1/d2 approved by Dewey with D1 (role.claim refuses a released run), c31044. Mos ruled landRelease folded in, code launcher-released, and four old-test lines moved to exact values (mos-1414/1415/1416): threads.test:394, runner.test:771-772, land.test:464. Row 294 round 2 stopped at webui G5 granted-user.test:269: max(seq) over an empty events table is NULL. Round 3 is one line, coalesce(max(seq),0) (mos-1417), Duckworth APPROVE c31045 rev 3462, gate pending. Queue commit 756284e8e (revs 3448-3456). Correction: two review-request attempts this window ran without MOSAIC_GITEA_CREDENTIAL_FILE exported and failed (3450 Launchpad, 3451/3452 Sage); the posted request was 3453/3454.
|
||||
2026-10-23T07:11:43Z | Sage, row 294 (#1800) rounds 3-4 and landing, row 219 edits 2-3, R9 transient and row 303 | Before: refactor 09d0d6faf; 294 run 3 on cb1648f3 stopped with 20 cli reds from two causes. A: the stack-release rehearsal fixture copies lacked cli access.mjs and transport.mjs, which 294's config.mjs now imports. B: the B1-B3 boot tests read warnings that now carry the fixture tracker line. Mos ruled A as two copy-list entries and B as a full pin, no filter: a TRACKER const and deepEqual (mos-1419). After: round 4 8616b9a4f, manifest a1ff5d67, Duckworth APPROVE c31053 rev 3469 with C1/C2. Run 4 from npm ci green: webui 365, cli 909, bus 873, 10 scripts, M1-M11 killed. Merged tree d3059c2c3 (11 cherry-picks, range-diff all =, patch-id 8371405a equal): stack-release-external 25/25, stack-upgrade 21/21. stack-release 223/224 on the first run, R9 at :2178: TypeError on join(r.dir) with r.dir null, so rehearse stopped before its directory and the output was lost. R9 passed 6/6 run alone on d3059c2c3, 09d0d6faf and 24b745447. Mos (mos-1422) allowed one unedited whole rerun: 224/224. 294 LANDED d3059c2c3 07:04Z, done rev 3471, #1800 closed c31068, P19 269 c895. Row 303 (#1810, Vikunja 589, brief ad6ca7930) adds an r.dir guard in R9 only. Queue commit 80793d824 (revs 3464-3473). Row 219: Rocko's second edit 7cbd839d0 (mos-1418, Dewey dewey-0883) restarted and went red at thread-launch C2-09a :489 on a legacy history path. The third edit 5f2ef92e5 (mos-1420, Dewey dewey-0885) reads the native session path. 219 now rebases onto 80793d824, because 294 overlaps its webui files. Correction: the first merged-tree check counted on the 292 drift and found an unrelated transient, and my P19 placeholder sed also rewrote the script's own guard line; the guard refused to post, and I restored the line before posting.
|
||||
|
||||
Row 299 (573, #1806, Gander, Filbert): before, the P10 band test timed a fault run minus a separate baseline run, and a loaded whole-suite run went red. Mos approved direct timing from host /proc/uptime stamps with ambient load only (mos-1409). After: rebased onto 80793d824 as ffa93b054 (range-diff 3/3 =, manifest 277ace0b unchanged). Gate 07:26Z-07:50Z: case1 whole 3x 53/0/0, cli whole 917/0/0 (59 files, load 1.54-7.17), P10 inner 2.27 s, outer 4.01 s, M1-M6 killed. M4's planned guard return then exact outer-reason failure counts as its kill (sage-3271, mos-1426). Filbert APPROVE c31084 rev 3485, N1 M1 margin 0.02 s. 299 LANDED ffb2fedfb 08:03Z, done rev 3487, #1806 closed c31087; queue commit 8a35ffadb (revs 3474-3487). Row 303: Duckworth APPROVE c31079 rev 3480 with C1, the whole-file gate. Rows 219 (bfa421b6c) and 295 r2 (b16cef1d0) rebases: Dewey static clean. Corrections: Launchpad and Gander have no token, and the CLI refuses another seat's token file, so I posted both requests as sage (c31082, c31083). My sage-3265 wording led Duckworth to poll queue show into Gander's slot (07:20Z-07:26Z); I ruled it ambient load (sage-3274).
|
||||
2026-10-23T10:48:40Z | Sage, rows 302, 295 and 219 landings, the Docker pool diagnostic, rows for Vikunja 590 and 591 | Before: refactor 1ac655005. 302 (#1809, Gizmoduck, Dewey) LANDED 3ed9fd754 08:49Z: 7 commits onto 1ac655005, range-diff all =, tree = gated merge 783602e06; queue commit 07802dc57 (revs 3488-3494). Row 219's gate went 11/3 in test-release.sh: release activate's health check failed because Docker could not create sage-diag1437_default, since all predefined address pools were used up. Under mos-1437 I reproduced it on clean 07802dc57 (11/3, the same stderr). I then removed 18 unused gate _default networks, and the rerun went 14/0 with the run-task marker ok. Mos accepted the removal and ruled that a probe that can create something waits for the go and a removal waits for the report (mos-1438). 295 (#1801, Morgana, Dewey) round 2 gate on d68b4300d (manifest e94c9aeb) was green. It LANDED 2efd127ce 10:10Z: 9 commits onto 07802dc57, HEAD~1 tree = gated a86592ffc. Done rev 3502, #1801 c31105, P19 414 c911. 219 (#1720, Rocko, Dewey): the restart on the post-295 merge 054da642f (manifest 4a2271dd, my mos-1439 call) passed node 2523/0/2 and shells 449/0, with 24 mutants killed. It LANDED 5fdfd7275 10:40Z (8 row commits plus packet-only evidence, tree e86a84a85 = gated). Done rev 3509, #1720 c31110, P19 416 c913. Queue commit 90633c864 (revs 3495-3510). Brief docs/plans/2026-10-23_gate-env-rows.md names rows for 590 (claude-session slug) and 591 (compose network cleanup), and DEFERRED.md gets 219 N1 (U6). Row 272 (Huey) conflicts with 5fdfd7275 in code, so it moves back to in-progress for a rebase. Its new fallback is bounded to a session.list access-refused on an omitted-session route (sage-3357). Corrections: my network create probe ran before Mos's go, and the removal ran before the report. My first slot-order line put the diag start at 09:44Z; it was about 09:41Z. My 219 push piped its output through grep, but the after-fetch confirmed origin. Queue commit 90633c864 also carries Huey's rev 3510 (272 back to in-progress), and its message names only 3495-3509.
|
||||
|
||||
|
||||
2026-10-23T11:03:46Z | Gyro Vikunja571 mos-1444 PRD d8 follow-on | Branch gyro/editor-571-d8 from origin/refactor c16e943b9. Both designs now keep library.convert outside ACTIONS/ROUTED and broker processing, retain REQ-WAIT-1/hard-wait test unchanged, constrain unmarked story eligibility to mapped book/playground scope, and add whole-host pre-import restore recovery from remote import manifests plus the Gitea archive commit. Lookups refuse until one current version is proven; VM1012 restore needs Jason present under Q185. W7 no longer owns hard-waits.test.mjs. Canonical queue next gyro returned nothing; direct Mos assignment governs. Static diff, exact replacement and append-only checks pass. No code, tests, build, browser, private-file or live action. Fenton re-check requested after authorized branch push.
|
||||
|
||||
2026-10-22 | Huey | Row 272 / 264e (#1777) preparation on huey/row272, base 2d0d407ba. Before: bus session metadata and launcher isolation exist, CLI/Console expose only the saved thread default. Draft: session CLI, Console chooser with isolated drafts/cursors/receipts, metadata counts and safe-clear operation receipts against Gizmoduck's 0260 contracts; narrow deferred B6 reply fence. Tests authored, not run: Gander row 253 holds Sage's slot; no Node, claim, HTTPS git, push or live changes. This entry records preparation after the first draft, not a green acceptance result.
|
||||
|
||||
2026-10-22 | Huey | Row 272 draft, 264d additive contract gizmoduck-0272 (78e14352f). Added confirmed cancellation through the human channel, cancelled receipt retirement distinction, named refusals and routed-message cancellation output. Before: cancelled was not recognized as terminal; after: draft CLI stops polling and Console shows the before/after retirement outcome. Acceptance remains unverified: no Node/tests/claim/commit/push under Sage's gate. No runtime/lifecycle authority expanded.
|
||||
|
||||
2026-10-23 | Huey | Row 272 / 264e sage-3141 local rebase. Before: uncommitted draft on 2d0d407ba. After: same draft on new huey/row272-b23783f39 at b23783f39, with 270/271 landed (7328da8ca) and schema 3n. Product changes auto-merged; both append-only logs retain the full new base and original Huey additions. Checked landed session.list and clear/cancel/operation envelopes against the wired draft: no incompatible contract change. Historical unavailable-dependency cases stay as stand-ins; actual base supplies counters and lifecycle state. No tests/Node/claim/commit/push while Gander holds row 574 run 2. Existing-test fixture/assertion delta is named in the packet for Mos's ruling via Sage before execution.
|
||||
|
||||
2026-10-23 | Huey | Row 272 sage-3145 preservation correction. refs/stash is shared, so it was unsafe as sole draft storage. Pinned exact stash commit 07dc9d2f7944b4781b5e80dfa18425f4749f7a45 to local huey/row272-stash-keep and left the entry untouched. Sage explicitly directed committing the rebased draft before testing to preserve it: an untested local checkpoint, no acceptance claim. No Node/test/queue/network/live action. Separate claims and test CLEARs remain pending; old-test delta is with Mos via sage-3144.
|
||||
|
||||
2026-10-23 | Huey | Row 272 early static review follow-up, scrooge-272-early-read-huey-1. Before: a bad-session 404 erased sibling draft/recovery caches, malformed clear/cancel write receipts omitted the audit line, and another session's op key produced an ambiguous error. Draft after: purge only on named thread-level refusals, write one redacted malformed-receipt audit line, and identify key reuse without a write. New browser/HTTP/CLI tests authored, unrun under test hold; approved old-test hunks unchanged. Published 850b22680/round-1 manifest unchanged; follow-up is uncommitted, no acceptance claim.
|
||||
|
||||
2026-10-23 | Huey | Row 272 round 2 on row 219 landing 5fdfd7275, after 295. Replayed round 1 and B1/N1/N2; seven conflicts resolved retaining both log histories, both test sets, 219 instance chooser and 295 owner-settings-only transport. Static comparison confirms old tests differ only by mos-1388 approved hunks. Sage3357/Mos1442 authorize bounded granted-user legacy fallback: only session.list access-refused and omitted-session route; no new session grants or owner routing. RED first under3358 on new file only: 1 expected legacy assertion failure, 3 guards pass, 3.504s, TMPDIR mktemp/no underscore, no compose network; slot returned as huey0035. Then implemented fallback and added timeout/bus/malformed guards plus isolated-copy mutant runner, all unrun afterward. Candidate commit/push precedes Sage's full gate by3354; no green claim.
|
||||
|
||||
2026-10-23 | Huey | Row 272 round 3 per mos-1455 / sage-3435. Gate run 1 on b44332a93 RED: bus 891/0, business 231/0, CLI 940/1, plugins 110/1, webui 372/20; no mutants. Fixed only new CLI fixture role authority and three null-old render guards. Catching browser tests unchanged. manifest.r3 freezes the same 17 paths. Authorized pre-gate follow-up commit/push; no local tests, Node or queue writes; separate compactions dependency and Sage gate remain pending.
|
||||
|
||||
2026-10-23 | Sage (1ef1e4f8) | Row 272 landing (#1777, 264e) | Gate r4 on bea0c8e1c over 1e629c892: bus 891/0, cli 941/0, webui 392/0, business 231/0; plugins 110/1, the single red being row 65 harness.test.mjs:192 naming compactions.mjs, which row 307 owned and fixed. M1-M6 and F1-F4 killed, restore clean. Landed d33989230, queue commit 8dc132bec.
|
||||
|
||||
2026-10-23 | Sage (1ef1e4f8) | Row 307 landing (#1814, Vikunja 598) | Six first-parent commits replayed onto 8dc132bec with matching patch-ids, 16 paths equal to 6fdfe3790, manifest digest 17c9f8d9 rebuilt from git. Gate green 14:37:21Z: bus 891/0, cli 941/0, plugins 119/0, webui 392/0, business 231/0, every other package 0 failed 0 skipped, every scripts/test-*.sh passed (skips: test-queue canonical root, test-task live provider x2). M1-M4 killed, restore clean. Landed d243f6b25, DEFERRED 307 N1 0621c439e, queue commit fe4ee8c7b. Correction: my first note said Vikunja 598 done when I had only commented (951); Mos closed it (952).
|
||||
|
||||
2026-10-23T17:29:46Z | Gyro Vikunja571 sage-3542 Connections amendment | Branch gyro/editor-connections-design cut exactly from landed PRD1.17 30e6bb680; read REQ-LIB-5 in that PRD. Replaced stale J-b waits in parent and W4. Proposed W8 owns current authorized Markdown/DOCX links/backlinks list, labels, versioned refresh, leakage refusals and fixture tests. Build order under mos-1470/comment961 is W7 closed routing candidate, W8 landing, then W7 human first-real-import opening. No REQ-LIB-8 condition or acceptance change. Q234/mos-1363/S0 M1-M14 and post-10-27/MVP priority fixed. Static diff, twelve brief sections and append-only checks pass. No repo Node, tests, build, browser, queue mutation or live action. Fenton reviews after authorized docs branch push; Sage lands on approval.
|
||||
|
||||
2026-10-23T17:32:37Z | Gyro sage-3544 fenton-0016 N1/N2 delta | Before: W7 Gate/final real-conversion list omit the W8 build-order cross-reference and W8 human-view filtering cites agent settings. After: both locations explicitly put W8 landing before human opening as mos-1470 build order, not acceptance; comment/tracked-deletion links are not current story links and never appear in the human Connections view regardless of agent settings. New commit atop approved 5af060fb5, no amend. Static diff and append-only checks pass. Docs only, no repo Node/tests/live action. Fenton checks only this delta.
|
||||
@@ -27,6 +27,11 @@ not fleet seats. Keep changes in `/mnt/storage/src/mosaic-stack`; do not modify
|
||||
| Gizmoduck | Federation design (#414) and builder of FED R1 | T3 session (Claude, Opus 5.5, thread 9312a896) | none, T3 only |
|
||||
| Webby | Reviewer: Case 2 designs, rows 192 and 194 | T3 session (Claude, Opus 5.5, thread 03086006), started by Mos (mos-0981) | none, T3 only |
|
||||
| Duckworth | Reviewer: federation designs, row 193 | T3 session (Claude, Opus 5.5, thread ffceafec), started by Mos (mos-0977) | none, T3 only |
|
||||
| Della | Builder, email plan (Vikunja 460) and row 224 (C2-05b) | T3 session (Codex, gpt-6.1-sol, thread 66735a7f), started by Mos | none, T3 only |
|
||||
| Scrooge | Builder of row 252 and reviewer of row 272 | T3 session (Claude, Opus 5.5, thread 629b6cd3), started by Mos | none, T3 only |
|
||||
| Huey | Builder, row 272 (T1 sessions) | T3 session (Codex, gpt-6.1-sol, thread cabd45ca), started by Mos | none, T3 only |
|
||||
| Louie | Builder and research, editor evaluation and row 174 | T3 session (Codex, gpt-6-luna, thread bfd13d49), started by Mos | none, T3 only |
|
||||
| Ludwig | Builder and reviewer, post-v1 email PRD and row 258 (E01) | T3 session (Claude, Opus 5.5, thread 8615b2a6), started by Mos | none, T3 only |
|
||||
| Sage | Project lead: coordination, review, integration; earlier DYOR strategy records retained | T3 session (Claude Code); Pi launcher `zai/glm-5.3:high` retained | `agents/sage/launch.sh` |
|
||||
|
||||
Each script supports `--check` and `--fresh`. Normal launches resume the agent's
|
||||
@@ -42,6 +47,14 @@ its launch configuration remains fixed, including on resume. Use Filbert's
|
||||
wrapper to select that configuration; a direct shared-helper invocation uses
|
||||
its own supplied flags or the system defaults.
|
||||
|
||||
Any run that includes the webui suite, whether a seat's slot run or a landing
|
||||
gate, sets `MOSAIC_REQUIRE_EDITOR_BUILD=1`, so a missing editor toolchain fails
|
||||
the run instead of skipping the rebuild test. A worktree that links the
|
||||
canonical `node_modules` also runs `npm ci --ignore-scripts --no-audit --no-fund`
|
||||
in its own `packages/webui` first. The root install carries esbuild 0.28.1
|
||||
through pi-coding-agent, and the rebuild needs the 0.28.2 that
|
||||
`packages/webui/package-lock.json` pins (Vikunja 597, mos-1453).
|
||||
|
||||
All agents follow repository governance and current user direction. Team
|
||||
leadership does not add deployment or push authority. Coordinate overlapping
|
||||
work with Sage and preserve other sessions' changes.
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
# Della
|
||||
|
||||
Builder seat, Codex gpt-6.1-sol, started by Mos for the email plan (Vikunja 460). Owns row 224 (C2-05b) under Q220.
|
||||
|
||||
No launcher in this directory. The seat runs as a T3 thread (thread 66735a7f) and works in its own worktree. It has no
|
||||
credentials of its own; it pushes only its own `della/*` branches through the repository credential helper (mos-0981),
|
||||
never `refactor`, `main` or another seat's branch. Registered by Sage on 2026-10-22 so the queue can name the seat as
|
||||
row owner under Q220 (mos-1301).
|
||||
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"base": "01983cd3f",
|
||||
"test": "packages/cli/tests/stack-release.test.mjs",
|
||||
"base_is_byte_exact_prefix": true,
|
||||
"old_assertions_changed": 0,
|
||||
"old_console_refusal_text_unchanged": true
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
# Target config validation for every key implementation plan
|
||||
|
||||
Goal: #1797, mos-1353, brief f0e3dcdf4:docs/plans/2026-10-22_config-checks-any-key-brief.md. Base01983cd3f, branchgander/config-checks-any-key. Reviewer Duckworth. Queue number pending Sage; packet moves to queue-N when assigned. No Node, test or push before Sage gap/CLEAR. Rows270/271/203 land first; rebase under a new branch name before the gate.
|
||||
|
||||
Architecture: config_checks classifies missing/parseable/unreadable config independently of console presence. With a loader, every existing parseable config goes through the target's own validate. Missing config passes. Malformed JSON refuses. With no loader, allow only the oldest four top-level keys: configVersion, environment, dataRoot, execution. Evidence: c3d29e796:scripts/mosaic-config.mjs:114, the first loader commit, rejectUnknownKeys; row200 fixture's LOADER_OLD has the same list. A missing loader plus a later key refuses and names that key, without inventing validation support. The legacy public refusal code config-console-key and existing console-specific message stay byte-identical; new non-console refusals name the loader's first diagnostic and preserve restore-config-backup instruction. The target loader's resolved stdout is discarded. Its first stderr diagnostic is reported and may echo an invalid value.
|
||||
|
||||
Files: scripts/stack-release.sh config_checks/comment only; packages/cli/tests/stack-release.test.mjs appended regression coverage only; docs/TOOLS.md broadens the current console-only release-check description. Existing row200 tests and assertions stay unchanged. No fixture-module edit, flags, pointers, migration, schema, data, live unit or host change.
|
||||
|
||||
Tests to write before implementation, unrun until CLEAR:
|
||||
- A target loader rejecting a non-console key refuses activate and rollback before any unit stop/start, pointer/unit/store mutation; one refused log entry; --plan preserves state and lists refusal. Reuse refused() and planOnly(). Use execution, already known to the current loader, to prove console-free dispatch before row270 integration; add compactionReadBytes/compactionStreams cases on final post270 base if needed.
|
||||
- An accepting target loader is actually called with validate and the selected MOSAIC_CONFIG, succeeds activate/rollback without console, and resolved stdout is not leaked.
|
||||
- Missing-loader target permits oldest-key config but rejects a later key with backup instruction. A stand-in rejecting the existing execution key exercises the generic target-validation branch; missing-loader later-key test may use console until final post270 base supplies non-console new keys.
|
||||
- Missing file passes the isolated real config_checks function; malformed JSON refuses there, since load_config otherwise exits before this function. Tests extract only that function and provide copies/path/check_refuse stand-ins, never live state.
|
||||
- Existing console-key row200 tests and malformed-load test run whole unchanged.
|
||||
|
||||
Mutants, each unique target, syntax preflight and byte-identical restore:
|
||||
M1 restores the console-only skip, killed by the named non-console activate/rollback refusal test.
|
||||
M2 ignores failed target validation, killed by the same refusal assertions.
|
||||
M3 allows a missing-loader target with a later key, killed by the explicit missing-loader regression.
|
||||
M4 treats malformed JSON as absence, killed by isolated parse guard test.
|
||||
M5 skips the loader for an oldest-key config, killed by accepting-loader invocation witness.
|
||||
|
||||
Gate after static review and required rebases: intended RED/GREEN; touched stack-release.test.mjs whole, CLI suite whole and every scripts/test-*.sh whole; M1-M5 with fresh passing controls, no timeout counted as kill, restored bytes/status before next. TMPDIR mktemp-d /mnt/storage/scratch/tmp/gXXX; pipefail/tee and busy check before each start. Node timeout-k10 uses at least3x measured duration plus margin; stack-release prior full receipt around584s implies at least1871s, to be recorded from actual receipts before CLEAR. Shell3x table retained with receipts. No test ran and no behavior passes claimed.
|
||||
|
||||
Review focus: parser races after load_config; target stderr naming only the refused key, stdout never persisted; current versus target loader selection; unknown key with no console; missing loader compatibility set from immutable history; upcoming row270 loader-list fixture drift. Final integration audits every test dependency and hash pin against the named base. Session registration remains Sage's.
|
||||
|
||||
|
||||
Implementation ready, unrun. Four appended tests cover full activate/rollback refusal and plan; actual accepting validate witness/configpath and stdout nonleak; oldest-only missing loader with both compaction keys; missing/invalid JSON isolated realfunction. Stand-in loaders are ESM, matching .mjs. Every old test byte is preserved as a prefix. Existing console refusal text including missing-loader diagnostic is unchanged. Missing-loader compatibility is top-level key compatibility only; current load_config still validates the whole config before normal release operations. Three-path manifest, no fixture-module changes. Static target uniqueness M1-M5 passes. No Node parse, Bash execution or behavior run. Exact full compaction activate/rollback cases must be added against post270 loader, before final gate.
|
||||
|
||||
|
||||
Execution state:
|
||||
- [x] Read brief, config_checks and row200 assertions.
|
||||
- [x] Pin oldest key set from immutable loader history.
|
||||
- [x] Write regression tests, implement bounded scope, prepare unique mutants.
|
||||
- [ ] Duckworth static review.
|
||||
- [ ] Move packet to queue-N on assignment, rebase after270/271/203 and add full compaction-key cases.
|
||||
- [ ] On CLEAR run intendedRED/GREEN, touched whole file, CLI whole, M1-M5, ten shells; commit/push records only when authorized.
|
||||
|
||||
|
||||
## Duckworth0229 static approval, gate conditions
|
||||
|
||||
Source0585b3213, packet e7371025f, manifestd6226d28 approved by static read, note a5a717391:agents/duckworth/work/row1797/ROUND1-0585b3213.md. No runtime proof yet.
|
||||
|
||||
C1: after270/271/203 land, rebase under a new branch name and open a new static round. Add exact compactionReadBytes and compactionStreams full activate/rollback refusals. The existing LOADER_OLD uses the current loader plus concat after270, so it is not a pre270 witness; the new test requires its own pre270 stand-in. Reviewer checks the integrated manifest/test before CLEAR. N3 joins that delta: compactionStreams fixture value1024, matching the real type, instead of ['messages'].
|
||||
|
||||
C2: every existing B/C1/C release now validates its copied real loader, including external/upgrade suites. Any old CLI red is a change-related suspect and goes to Mos/Sage under mos-1272; no automatic placement as an unrelated fixture.
|
||||
|
||||
N1 console plus another refused key retains the old console text by design. N2 missing-loader wording is retained pending final integration review. N4 corrected above: only resolved stdout is suppressed; first stderr may echo a value, so no blanket secrecy claim. No runtime/Node/queue/push authorization is inferred from static approval.
|
||||
@@ -0,0 +1,3 @@
|
||||
eea06caad07c746d194f793603052b210e437b7184009f8b1617c88db49a5517 docs/TOOLS.md
|
||||
a35c49c5703e02f35073450e4a98e1b90cffcda581490f97a70cbdc6d2afee59 packages/cli/tests/stack-release.test.mjs
|
||||
f8fe1348796d40a096362fb0c6d5072c15ca68ff8fe10384a3eaa708eb92c150 scripts/stack-release.sh
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"reviewer": "duckworth",
|
||||
"verdict": "static approve, conditions C1-C2",
|
||||
"message": "duckworth-0229",
|
||||
"source": "0585b3213",
|
||||
"manifest": "d6226d28",
|
||||
"note": "a5a717391:agents/duckworth/work/row1797/ROUND1-0585b3213.md",
|
||||
"next": "wait for row number and post270/271/203 base, new integration static round before gate"
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"docs/TOOLS.md": "eea06caad07c746d194f793603052b210e437b7184009f8b1617c88db49a5517",
|
||||
"packages/cli/tests/stack-release.test.mjs": "a35c49c5703e02f35073450e4a98e1b90cffcda581490f97a70cbdc6d2afee59",
|
||||
"scripts/stack-release.sh": "f8fe1348796d40a096362fb0c6d5072c15ca68ff8fe10384a3eaa708eb92c150"
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"issue": 1797,
|
||||
"row": "pending Sage assignment",
|
||||
"branch": "gander/config-checks-any-key",
|
||||
"base": "01983cd3f",
|
||||
"source": "0585b321309e4d8a199afb1a1024cf6091f56770",
|
||||
"manifest": "d6226d281c778677a45e90993bbd9c985de89ba0f870d4a3ca12b6923a497e4a",
|
||||
"runtime": "NOT RUN; no Node, tests or push authorized",
|
||||
"after": [
|
||||
270,
|
||||
271,
|
||||
203
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
[
|
||||
{
|
||||
"id": "M1",
|
||||
"occurrences": 1,
|
||||
"before": "f8fe1348796d40a096362fb0c6d5072c15ca68ff8fe10384a3eaa708eb92c150",
|
||||
"after": "804a86442527f2728f633f485eaeca02552df66a34350eac5101127046415188"
|
||||
},
|
||||
{
|
||||
"id": "M2",
|
||||
"occurrences": 1,
|
||||
"before": "f8fe1348796d40a096362fb0c6d5072c15ca68ff8fe10384a3eaa708eb92c150",
|
||||
"after": "1c2acb6397e29ab898d8a89bc5bc691a294be749ca7d7f7897c83ec1b3e9f9ef"
|
||||
},
|
||||
{
|
||||
"id": "M3",
|
||||
"occurrences": 1,
|
||||
"before": "f8fe1348796d40a096362fb0c6d5072c15ca68ff8fe10384a3eaa708eb92c150",
|
||||
"after": "954c9a9735904e1c566d844001b2e85c13cd16eb16e7b4b91b752974bb6dc754"
|
||||
},
|
||||
{
|
||||
"id": "M4",
|
||||
"occurrences": 1,
|
||||
"before": "f8fe1348796d40a096362fb0c6d5072c15ca68ff8fe10384a3eaa708eb92c150",
|
||||
"after": "953d91bf28073b11e4bc5a6da516a0db1b8dfff892083cd3e6fcebe9c47b6bbf"
|
||||
},
|
||||
{
|
||||
"id": "M5",
|
||||
"occurrences": 1,
|
||||
"before": "f8fe1348796d40a096362fb0c6d5072c15ca68ff8fe10384a3eaa708eb92c150",
|
||||
"after": "310c32b16f0fc554d5a7ffeeb0742ea7dd9fc84e1ddafabb25d7ca3f449865ef"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,37 @@
|
||||
[
|
||||
{
|
||||
"id": "M1",
|
||||
"file": "scripts/stack-release.sh",
|
||||
"old": " [ \"$key\" != 1 ] || return 0\n if [ \"$key\" != 0 ]; then",
|
||||
"new": " [ \"$key\" != 1 ] || return 0\n [ \"$extra\" = '\"console\"' ] || return 0\n if [ \"$key\" != 0 ]; then",
|
||||
"killer": "config-any-key: a non-console target refusal"
|
||||
},
|
||||
{
|
||||
"id": "M2",
|
||||
"file": "scripts/stack-release.sh",
|
||||
"old": "elif out=\"$(MOSAIC_CONFIG=\"$cfg\" node \"$loader\" validate 2>&1 >/dev/null)\"; then return 0",
|
||||
"new": "elif out=\"$(MOSAIC_CONFIG=\"$cfg\" node \"$loader\" validate 2>&1 >/dev/null)\" || true; then return 0",
|
||||
"killer": "config-any-key: a non-console target refusal"
|
||||
},
|
||||
{
|
||||
"id": "M3",
|
||||
"file": "scripts/stack-release.sh",
|
||||
"old": " [ -n \"$extra\" ] || return 0",
|
||||
"new": " return 0 # drop missing-loader later-key refusal",
|
||||
"killer": "config-any-key: missing-loader copies"
|
||||
},
|
||||
{
|
||||
"id": "M4",
|
||||
"file": "scripts/stack-release.sh",
|
||||
"old": " if [ \"$key\" != 0 ]; then\n check_refuse config-console-key",
|
||||
"new": " if [ \"$key\" = 99 ]; then\n check_refuse config-console-key",
|
||||
"killer": "config-any-key: missing config passes but malformed JSON refuses"
|
||||
},
|
||||
{
|
||||
"id": "M5",
|
||||
"file": "scripts/stack-release.sh",
|
||||
"old": " if [ ! -f \"$loader\" ]; then",
|
||||
"new": " [ -n \"$extra\" ] || return 0\n if [ ! -f \"$loader\" ]; then",
|
||||
"killer": "config-any-key: accepting loaders run validate"
|
||||
}
|
||||
]
|
||||
@@ -311,13 +311,3 @@ Ran on pushed e1bc766d8, manifest a2ac5734, no carry. Both intendedREDs observed
|
||||
### mos-1298: pin the direct query session
|
||||
|
||||
M38 drops setsid but a blocking signals query can still fail closed with inner-timeout; the old kill rule was wrong. The named killer stays row253 C4 signals query. Every sleep/signals/member case in both exec/hop modes now reads the first query-pids line and asserts exact equality of its numeric PID and kernel SID. M38 must fail this new assertion, never a timeout or a cleanup-only assertion. Every old line of the C4 query test is preserved byte for byte. Product scripts remain byte-identical. No test or Node preflight run; fresh whole gate from start follows new candidate review and Sage CLEAR, with nothing carried. Base assertion failure, another survivor or any mismatch goes to Mos before a further change.
|
||||
|
||||
|
||||
### Run5 busy guard refusal, sage-2786
|
||||
|
||||
Fresh on48e450ce8/591020a1. Both intendedREDs observed; touched whole43/0/0 and34/0/0; all6base PID/SID equalities passed. Controls13/0, M1-M31 killed; no survivor, timeout or unexpected red. External SSH docker-compose process tripped busy guard before M32 base; no bypass/retry. M32-M40 and full whole stages NOTRUN; M38 assertion kill remains unproven. Wall425.340s,0skips,N9passed. Byte restoration verified; sweep0run-created leftovers. Reported unplaced for classification/resume direct to Duckworth/Mos, cc Sage in gander-0121 and returned slot. run5-gate/ preserves exact raw records.
|
||||
|
||||
|
||||
### Run5 GREEN, sage-2786 plus sage-2811 same-run resume
|
||||
|
||||
Candidate48e450ce8,source14e460061,manifest591020a1,baseaca16404c. CLI whole55files861/0/0;WebUI whole58files345/0/1;bus rebase union20files240/0/0;ten shells425/0 self-assertions. Separate touched whole77/0/0, intendedREDs2/2;20fresh controls passed. M1-M40 killed40 with exact restoration,0timeouts. M38 dies by required new PID/SID equality ERR_ASSERTION at203:10; all6base cases pass. No other round carries; foreign SSH busy refusal classified in sage-2811, freshM32base on resume. Stages wall sums1253.715/267.028/46.282/140.514s;active windows425.340+2106.873s. N9passed verbatim inRESULTS. Named skips: pinned-esbuild rebuild, noncanonical queue verify/render, two live-provider cases; exact lines in run5-gate/RESULTS.md. Manifest and shell hashes verify; sweep0run-created leftovers. Raw commands,logs,full counts and kill table retained. No product/test change during gate.
|
||||
@@ -1,141 +0,0 @@
|
||||
{
|
||||
"cli_whole": [
|
||||
"packages/cli/tests/access.test.mjs",
|
||||
"packages/cli/tests/app.test.mjs",
|
||||
"packages/cli/tests/boot-status.test.mjs",
|
||||
"packages/cli/tests/case1-accept.test.mjs",
|
||||
"packages/cli/tests/case1-hostcheck.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/config.test.mjs",
|
||||
"packages/cli/tests/credentials.test.mjs",
|
||||
"packages/cli/tests/follow.test.mjs",
|
||||
"packages/cli/tests/format.test.mjs",
|
||||
"packages/cli/tests/gate-lane-auth.test.mjs",
|
||||
"packages/cli/tests/gate-lane-fixtures.test.mjs",
|
||||
"packages/cli/tests/gate-lane-image.test.mjs",
|
||||
"packages/cli/tests/gate-lane-state.test.mjs",
|
||||
"packages/cli/tests/gate-lane.test.mjs",
|
||||
"packages/cli/tests/git-socket.test.mjs",
|
||||
"packages/cli/tests/grants.test.mjs",
|
||||
"packages/cli/tests/host.test.mjs",
|
||||
"packages/cli/tests/hosts.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/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/stack-copy.test.mjs",
|
||||
"packages/cli/tests/stack-instances.test.mjs",
|
||||
"packages/cli/tests/stack-release-external.test.mjs",
|
||||
"packages/cli/tests/stack-release.test.mjs",
|
||||
"packages/cli/tests/stack-upgrade.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/trackers-boot.test.mjs",
|
||||
"packages/cli/tests/transport.test.mjs",
|
||||
"packages/cli/tests/usage.test.mjs",
|
||||
"packages/cli/tests/verbs.test.mjs"
|
||||
],
|
||||
"webui_whole": [
|
||||
"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.test.mjs",
|
||||
"packages/webui/tests/conversation.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-provenance.test.mjs",
|
||||
"packages/webui/tests/editor.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-status.test.mjs",
|
||||
"packages/webui/tests/limits-browser.test.mjs",
|
||||
"packages/webui/tests/limits-route.test.mjs",
|
||||
"packages/webui/tests/markdown-preview.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-ui.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/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/service.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/usage-browser.test.mjs",
|
||||
"packages/webui/tests/usage.test.mjs",
|
||||
"packages/webui/tests/views.test.mjs"
|
||||
],
|
||||
"bus_rebase_union": [
|
||||
"packages/bus/tests/account-migration.test.mjs",
|
||||
"packages/bus/tests/chief-of-staff.test.mjs",
|
||||
"packages/bus/tests/comment-migration.test.mjs",
|
||||
"packages/bus/tests/end-launch.test.mjs",
|
||||
"packages/bus/tests/fire-revokes-grants.test.mjs",
|
||||
"packages/bus/tests/gitea-grant.test.mjs",
|
||||
"packages/bus/tests/gitea-migration.test.mjs",
|
||||
"packages/bus/tests/grant-executor.test.mjs",
|
||||
"packages/bus/tests/grant-migration.test.mjs",
|
||||
"packages/bus/tests/lifecycle-revoke.test.mjs",
|
||||
"packages/bus/tests/message-filter.test.mjs",
|
||||
"packages/bus/tests/name-migration.test.mjs",
|
||||
"packages/bus/tests/schema.test.mjs",
|
||||
"packages/bus/tests/sessions.test.mjs",
|
||||
"packages/bus/tests/spec-migration.test.mjs",
|
||||
"packages/bus/tests/tester-writes.test.mjs",
|
||||
"packages/bus/tests/thread-claims.test.mjs",
|
||||
"packages/bus/tests/thread-migration.test.mjs",
|
||||
"packages/bus/tests/threads.test.mjs",
|
||||
"packages/bus/tests/usage-migration.test.mjs"
|
||||
]
|
||||
}
|
||||
@@ -1,395 +0,0 @@
|
||||
{
|
||||
"grant": "sage-2786",
|
||||
"head": "48e450ce8fbb10df0beabc8da67ab90ea14587ea",
|
||||
"product": "14e46006171ef700a72f971fda5cb3a0b8dcc4f2",
|
||||
"manifest": "591020a1096a1606c11f2ee34b37243acddf83d91c69922ccc5cfe22d6180d3a",
|
||||
"packages": {
|
||||
"cli_whole": {
|
||||
"count": 55,
|
||||
"files": [
|
||||
"packages/cli/tests/access.test.mjs",
|
||||
"packages/cli/tests/app.test.mjs",
|
||||
"packages/cli/tests/boot-status.test.mjs",
|
||||
"packages/cli/tests/case1-accept.test.mjs",
|
||||
"packages/cli/tests/case1-hostcheck.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/config.test.mjs",
|
||||
"packages/cli/tests/credentials.test.mjs",
|
||||
"packages/cli/tests/follow.test.mjs",
|
||||
"packages/cli/tests/format.test.mjs",
|
||||
"packages/cli/tests/gate-lane-auth.test.mjs",
|
||||
"packages/cli/tests/gate-lane-fixtures.test.mjs",
|
||||
"packages/cli/tests/gate-lane-image.test.mjs",
|
||||
"packages/cli/tests/gate-lane-state.test.mjs",
|
||||
"packages/cli/tests/gate-lane.test.mjs",
|
||||
"packages/cli/tests/git-socket.test.mjs",
|
||||
"packages/cli/tests/grants.test.mjs",
|
||||
"packages/cli/tests/host.test.mjs",
|
||||
"packages/cli/tests/hosts.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/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/stack-copy.test.mjs",
|
||||
"packages/cli/tests/stack-instances.test.mjs",
|
||||
"packages/cli/tests/stack-release-external.test.mjs",
|
||||
"packages/cli/tests/stack-release.test.mjs",
|
||||
"packages/cli/tests/stack-upgrade.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/trackers-boot.test.mjs",
|
||||
"packages/cli/tests/transport.test.mjs",
|
||||
"packages/cli/tests/usage.test.mjs",
|
||||
"packages/cli/tests/verbs.test.mjs"
|
||||
]
|
||||
},
|
||||
"webui_whole": {
|
||||
"count": 58,
|
||||
"files": [
|
||||
"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.test.mjs",
|
||||
"packages/webui/tests/conversation.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-provenance.test.mjs",
|
||||
"packages/webui/tests/editor.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-status.test.mjs",
|
||||
"packages/webui/tests/limits-browser.test.mjs",
|
||||
"packages/webui/tests/limits-route.test.mjs",
|
||||
"packages/webui/tests/markdown-preview.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-ui.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/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/service.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/usage-browser.test.mjs",
|
||||
"packages/webui/tests/usage.test.mjs",
|
||||
"packages/webui/tests/views.test.mjs"
|
||||
]
|
||||
},
|
||||
"bus_rebase_union": {
|
||||
"count": 20,
|
||||
"files": [
|
||||
"packages/bus/tests/account-migration.test.mjs",
|
||||
"packages/bus/tests/chief-of-staff.test.mjs",
|
||||
"packages/bus/tests/comment-migration.test.mjs",
|
||||
"packages/bus/tests/end-launch.test.mjs",
|
||||
"packages/bus/tests/fire-revokes-grants.test.mjs",
|
||||
"packages/bus/tests/gitea-grant.test.mjs",
|
||||
"packages/bus/tests/gitea-migration.test.mjs",
|
||||
"packages/bus/tests/grant-executor.test.mjs",
|
||||
"packages/bus/tests/grant-migration.test.mjs",
|
||||
"packages/bus/tests/lifecycle-revoke.test.mjs",
|
||||
"packages/bus/tests/message-filter.test.mjs",
|
||||
"packages/bus/tests/name-migration.test.mjs",
|
||||
"packages/bus/tests/schema.test.mjs",
|
||||
"packages/bus/tests/sessions.test.mjs",
|
||||
"packages/bus/tests/spec-migration.test.mjs",
|
||||
"packages/bus/tests/tester-writes.test.mjs",
|
||||
"packages/bus/tests/thread-claims.test.mjs",
|
||||
"packages/bus/tests/thread-migration.test.mjs",
|
||||
"packages/bus/tests/threads.test.mjs",
|
||||
"packages/bus/tests/usage-migration.test.mjs"
|
||||
]
|
||||
}
|
||||
},
|
||||
"node_limits": {
|
||||
"packages/cli/tests/access.test.mjs": 900,
|
||||
"packages/cli/tests/app.test.mjs": 900,
|
||||
"packages/cli/tests/boot-status.test.mjs": 900,
|
||||
"packages/cli/tests/case1-accept.test.mjs": 418,
|
||||
"packages/cli/tests/case1-hostcheck.test.mjs": 900,
|
||||
"packages/cli/tests/case2-persona-import.test.mjs": 900,
|
||||
"packages/cli/tests/case2-unit.test.mjs": 320,
|
||||
"packages/cli/tests/channel-cli.test.mjs": 900,
|
||||
"packages/cli/tests/channel-recovery.test.mjs": 900,
|
||||
"packages/cli/tests/cli.test.mjs": 900,
|
||||
"packages/cli/tests/config.test.mjs": 900,
|
||||
"packages/cli/tests/credentials.test.mjs": 900,
|
||||
"packages/cli/tests/follow.test.mjs": 900,
|
||||
"packages/cli/tests/format.test.mjs": 900,
|
||||
"packages/cli/tests/gate-lane-auth.test.mjs": 900,
|
||||
"packages/cli/tests/gate-lane-fixtures.test.mjs": 900,
|
||||
"packages/cli/tests/gate-lane-image.test.mjs": 900,
|
||||
"packages/cli/tests/gate-lane-state.test.mjs": 900,
|
||||
"packages/cli/tests/gate-lane.test.mjs": 900,
|
||||
"packages/cli/tests/git-socket.test.mjs": 900,
|
||||
"packages/cli/tests/grants.test.mjs": 900,
|
||||
"packages/cli/tests/host.test.mjs": 900,
|
||||
"packages/cli/tests/hosts.test.mjs": 900,
|
||||
"packages/cli/tests/instances.test.mjs": 900,
|
||||
"packages/cli/tests/launch-account.test.mjs": 900,
|
||||
"packages/cli/tests/launch-limit-checks.test.mjs": 900,
|
||||
"packages/cli/tests/launch-limits.test.mjs": 900,
|
||||
"packages/cli/tests/launch-routes.test.mjs": 900,
|
||||
"packages/cli/tests/launcher.test.mjs": 900,
|
||||
"packages/cli/tests/lifecycle.test.mjs": 160,
|
||||
"packages/cli/tests/limits-tokens.test.mjs": 900,
|
||||
"packages/cli/tests/limits.test.mjs": 900,
|
||||
"packages/cli/tests/mark-read.test.mjs": 900,
|
||||
"packages/cli/tests/names.test.mjs": 900,
|
||||
"packages/cli/tests/notifier.test.mjs": 900,
|
||||
"packages/cli/tests/other-tree.test.mjs": 900,
|
||||
"packages/cli/tests/processing-cli.test.mjs": 900,
|
||||
"packages/cli/tests/project-name-repo.test.mjs": 900,
|
||||
"packages/cli/tests/project.test.mjs": 900,
|
||||
"packages/cli/tests/publish-socket.test.mjs": 900,
|
||||
"packages/cli/tests/stack-copy.test.mjs": 900,
|
||||
"packages/cli/tests/stack-instances.test.mjs": 900,
|
||||
"packages/cli/tests/stack-release-external.test.mjs": 900,
|
||||
"packages/cli/tests/stack-release.test.mjs": 1871,
|
||||
"packages/cli/tests/stack-upgrade.test.mjs": 900,
|
||||
"packages/cli/tests/tester-http.test.mjs": 900,
|
||||
"packages/cli/tests/tester-reads.test.mjs": 900,
|
||||
"packages/cli/tests/tester-threads.test.mjs": 900,
|
||||
"packages/cli/tests/tester.test.mjs": 900,
|
||||
"packages/cli/tests/thread-cli.test.mjs": 126,
|
||||
"packages/cli/tests/thread-launch.test.mjs": 170,
|
||||
"packages/cli/tests/trackers-boot.test.mjs": 900,
|
||||
"packages/cli/tests/transport.test.mjs": 900,
|
||||
"packages/cli/tests/usage.test.mjs": 900,
|
||||
"packages/cli/tests/verbs.test.mjs": 900,
|
||||
"packages/webui/tests/agents-browser.test.mjs": 900,
|
||||
"packages/webui/tests/agents.test.mjs": 900,
|
||||
"packages/webui/tests/assistant.test.mjs": 900,
|
||||
"packages/webui/tests/board-held.test.mjs": 900,
|
||||
"packages/webui/tests/browser-edge.test.mjs": 900,
|
||||
"packages/webui/tests/browser.test.mjs": 900,
|
||||
"packages/webui/tests/bus-browser.test.mjs": 900,
|
||||
"packages/webui/tests/bus.test.mjs": 900,
|
||||
"packages/webui/tests/channel-chat.test.mjs": 900,
|
||||
"packages/webui/tests/chat-browser.test.mjs": 900,
|
||||
"packages/webui/tests/chat.test.mjs": 122,
|
||||
"packages/webui/tests/conversation.test.mjs": 900,
|
||||
"packages/webui/tests/discord.test.mjs": 900,
|
||||
"packages/webui/tests/docs-browser.test.mjs": 900,
|
||||
"packages/webui/tests/editor-browser.test.mjs": 900,
|
||||
"packages/webui/tests/editor-provenance.test.mjs": 900,
|
||||
"packages/webui/tests/editor.test.mjs": 900,
|
||||
"packages/webui/tests/history-return-flow.test.mjs": 900,
|
||||
"packages/webui/tests/instances-browser.test.mjs": 900,
|
||||
"packages/webui/tests/instances.test.mjs": 900,
|
||||
"packages/webui/tests/library-cli.test.mjs": 900,
|
||||
"packages/webui/tests/library-status.test.mjs": 900,
|
||||
"packages/webui/tests/limits-browser.test.mjs": 900,
|
||||
"packages/webui/tests/limits-route.test.mjs": 900,
|
||||
"packages/webui/tests/markdown-preview.test.mjs": 900,
|
||||
"packages/webui/tests/messages.test.mjs": 900,
|
||||
"packages/webui/tests/pinned-copy.test.mjs": 900,
|
||||
"packages/webui/tests/preview.test.mjs": 900,
|
||||
"packages/webui/tests/processing-browser.test.mjs": 900,
|
||||
"packages/webui/tests/processing-ui.test.mjs": 900,
|
||||
"packages/webui/tests/processing.test.mjs": 900,
|
||||
"packages/webui/tests/project-file.test.mjs": 900,
|
||||
"packages/webui/tests/project-name-repo.test.mjs": 900,
|
||||
"packages/webui/tests/proof-cli.test.mjs": 900,
|
||||
"packages/webui/tests/proof.test.mjs": 900,
|
||||
"packages/webui/tests/reads.test.mjs": 900,
|
||||
"packages/webui/tests/relaunch.test.mjs": 900,
|
||||
"packages/webui/tests/return-flow.test.mjs": 900,
|
||||
"packages/webui/tests/routes-browser.test.mjs": 900,
|
||||
"packages/webui/tests/routes.test.mjs": 900,
|
||||
"packages/webui/tests/send-browser.test.mjs": 900,
|
||||
"packages/webui/tests/send.test.mjs": 900,
|
||||
"packages/webui/tests/serve.test.mjs": 900,
|
||||
"packages/webui/tests/service.test.mjs": 900,
|
||||
"packages/webui/tests/settings-form.test.mjs": 900,
|
||||
"packages/webui/tests/settings-write.test.mjs": 900,
|
||||
"packages/webui/tests/shell.test.mjs": 900,
|
||||
"packages/webui/tests/sso-browser.test.mjs": 900,
|
||||
"packages/webui/tests/sso.test.mjs": 900,
|
||||
"packages/webui/tests/tester-browser.test.mjs": 900,
|
||||
"packages/webui/tests/tester-cli.test.mjs": 900,
|
||||
"packages/webui/tests/tester-listener.test.mjs": 900,
|
||||
"packages/webui/tests/tester-socket.test.mjs": 900,
|
||||
"packages/webui/tests/thread-claims-browser.test.mjs": 900,
|
||||
"packages/webui/tests/thread-claims.test.mjs": 900,
|
||||
"packages/webui/tests/usage-browser.test.mjs": 900,
|
||||
"packages/webui/tests/usage.test.mjs": 900,
|
||||
"packages/webui/tests/views.test.mjs": 900,
|
||||
"packages/bus/tests/account-migration.test.mjs": 122,
|
||||
"packages/bus/tests/chief-of-staff.test.mjs": 127,
|
||||
"packages/bus/tests/comment-migration.test.mjs": 122,
|
||||
"packages/bus/tests/end-launch.test.mjs": 122,
|
||||
"packages/bus/tests/fire-revokes-grants.test.mjs": 130,
|
||||
"packages/bus/tests/gitea-grant.test.mjs": 146,
|
||||
"packages/bus/tests/gitea-migration.test.mjs": 122,
|
||||
"packages/bus/tests/grant-executor.test.mjs": 185,
|
||||
"packages/bus/tests/grant-migration.test.mjs": 122,
|
||||
"packages/bus/tests/lifecycle-revoke.test.mjs": 122,
|
||||
"packages/bus/tests/message-filter.test.mjs": 122,
|
||||
"packages/bus/tests/name-migration.test.mjs": 121,
|
||||
"packages/bus/tests/schema.test.mjs": 121,
|
||||
"packages/bus/tests/sessions.test.mjs": 122,
|
||||
"packages/bus/tests/spec-migration.test.mjs": 121,
|
||||
"packages/bus/tests/tester-writes.test.mjs": 122,
|
||||
"packages/bus/tests/thread-claims.test.mjs": 121,
|
||||
"packages/bus/tests/thread-migration.test.mjs": 122,
|
||||
"packages/bus/tests/threads.test.mjs": 124,
|
||||
"packages/bus/tests/usage-migration.test.mjs": 121
|
||||
},
|
||||
"shell_limits": {
|
||||
"scripts/test-auth.sh": {
|
||||
"recorded_duration_seconds": 1.9081228229999543,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"limit_seconds": 126,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "dd4720cb0cbecd2fc523a318f2222d21d257c8c5889996a3d69e522ee971a707",
|
||||
"previous_maximum_seconds": 1.9081228229999543,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"row278_run3_seconds": 0.816
|
||||
},
|
||||
"scripts/test-conductor.sh": {
|
||||
"recorded_duration_seconds": 8.057173820000026,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"limit_seconds": 145,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "da84150467494a4c979759f400854411bd93a7efce981139757bf526d688a23b",
|
||||
"previous_maximum_seconds": 8.057173820000026,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"row278_run3_seconds": 6.078
|
||||
},
|
||||
"scripts/test-config.sh": {
|
||||
"recorded_duration_seconds": 3.1678915339999367,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"limit_seconds": 130,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "3301c1fabf616bb961d62f6decd0a46dadb0f399b8ba7f3c2ca60023d2b24c78",
|
||||
"previous_maximum_seconds": 3.1678915339999367,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"row278_run3_seconds": 1.868
|
||||
},
|
||||
"scripts/test-discord.sh": {
|
||||
"recorded_duration_seconds": 8.776727847000002,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 147,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "a5dcf783c51a5d5d184a357f91ebf9fa1c4e054f0cb84a3d1d7668f6156e025e",
|
||||
"previous_maximum_seconds": 8.776727847000002,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 7.431
|
||||
},
|
||||
"scripts/test-extension-package.sh": {
|
||||
"recorded_duration_seconds": 3.01285702399991,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 130,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "5d7b687f16fd1a9414b229501177d530ba3af4eadd3cac319b33f38fdba9bf99",
|
||||
"previous_maximum_seconds": 3.01285702399991,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 1.366
|
||||
},
|
||||
"scripts/test-foundation.sh": {
|
||||
"recorded_duration_seconds": 39.901,
|
||||
"receipt": "385a7194c:agents/gander/work/queue-278/run3/whole/results.json",
|
||||
"limit_seconds": 240,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "2e11038e7f784ec4f539eb768f63bab0fab9c9940334388a1fe2d47ab9e2b008",
|
||||
"previous_maximum_seconds": 39.70872647900006,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 39.901
|
||||
},
|
||||
"scripts/test-land-work.sh": {
|
||||
"recorded_duration_seconds": 12.623263413000037,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 158,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "c9d1d5c9b006d5c12e5f796a9828361059f8e0410846fc55c070c0148b15cef4",
|
||||
"previous_maximum_seconds": 12.623263413000037,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 11.338
|
||||
},
|
||||
"scripts/test-queue.sh": {
|
||||
"recorded_duration_seconds": 23.443742031000088,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 191,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "c270f181d1fa8b6d42ff4131c339beba786a8fd620bb66f8afdcec05e8b10868",
|
||||
"previous_maximum_seconds": 23.443742031000088,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 21.158
|
||||
},
|
||||
"scripts/test-release.sh": {
|
||||
"recorded_duration_seconds": 12.168674453999964,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 157,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "be706dff832257bd4781abeabd19faa4ac16edf9a4af0c96457e33cf3bb6deb3",
|
||||
"previous_maximum_seconds": 12.168674453999964,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 2.67
|
||||
},
|
||||
"scripts/test-task.sh": {
|
||||
"recorded_duration_seconds": 36.783798266,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 231,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "10c4abb70bf9b83e617089b06a5436cc7fa6b866a176458b22128c3a15163f94",
|
||||
"previous_maximum_seconds": 36.783798266,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 13.843
|
||||
}
|
||||
},
|
||||
"carry": "NONE; mos-1297/1298 fresh whole gate",
|
||||
"review": "duckworth-0164 no blockers"
|
||||
}
|
||||
@@ -1,46 +0,0 @@
|
||||
# M1-M40 kill table
|
||||
|
||||
Every base passes; each change restored exact bytes and tracked status before the next. No timeout counts as kill.
|
||||
|
||||
| Check | Named killer | Base seconds | Changed seconds | Outcome |
|
||||
|---|---|---:|---:|---|
|
||||
| M1 | row253 factory refuses retired TCP | 0.265 | 0.215 | killed |
|
||||
| M2 | library refuses a privileged-floor miss | 0.515 | 0.465 | killed |
|
||||
| M3 | factory refuses duplicate socket | 0.465 | 0.616 | killed |
|
||||
| M4 | row253 installer refuses unsafe location and query facts | 4.073 | 5.778 | killed |
|
||||
| M5 | row253 installer refuses unsafe location and query facts | 4.073 | 3.923 | killed |
|
||||
| M6 | row253 installer refuses unsafe location and query facts | 4.073 | 0.565 | killed |
|
||||
| M7 | row253 protected homes | 0.214 | 0.265 | killed |
|
||||
| M8 | row253 installer refuses unsafe location and query facts | 4.073 | 3.172 | killed |
|
||||
| M9 | row253 installer refuses unsafe location and query facts | 4.073 | 2.87 | killed |
|
||||
| M10 | row253 installer refuses unsafe location and query facts | 4.073 | 4.023 | killed |
|
||||
| M11 | row253 installer refuses unsafe location and query facts | 4.073 | 3.973 | killed |
|
||||
| M12 | a bad args file refuses | 0.365 | 0.264 | killed |
|
||||
| M13 | a bad args file refuses | 0.365 | 1.116 | killed |
|
||||
| M14 | a bad args file refuses | 0.365 | 1.217 | killed |
|
||||
| M15 | row253 acceptance rejects bad config | 2.069 | 2.369 | killed |
|
||||
| M16 | row253 P8 refuses | 2.069 | 1.016 | killed |
|
||||
| M17 | row253 P10 refuses unsafe metadata | 13.144 | 1.016 | killed |
|
||||
| M18 | row253 P10 refuses unsafe metadata | 13.144 | 2.47 | killed |
|
||||
| M19 | row253 P10 refuses unsafe metadata | 13.144 | 6.328 | killed |
|
||||
| M20 | row253 P10 refuses unsafe metadata | 13.144 | 4.624 | killed |
|
||||
| M21 | row253 P10 refuses unsafe metadata | 13.144 | 8.683 | killed |
|
||||
| M22 | row253 P10 refuses unsafe metadata | 13.144 | 8.283 | killed |
|
||||
| M23 | row253 P10 refuses unsafe metadata | 13.144 | 11.038 | killed |
|
||||
| M24 | row253 factory socket uses actual config | 0.615 | 0.315 | killed |
|
||||
| M25 | row253 socket observation uses configured root | 1.116 | 1.017 | killed |
|
||||
| M26 | row253 P10 refuses unsafe metadata | 13.144 | 13.244 | killed |
|
||||
| M27 | row253 socket observation uses configured root | 1.116 | 1.117 | killed |
|
||||
| M28 | row253 installer refuses unsafe location and query facts | 4.073 | 3.171 | killed |
|
||||
| M29 | row253 installer refuses unsafe location and query facts | 4.073 | 2.269 | killed |
|
||||
| M30 | row253 installer refuses unsafe location and query facts | 4.073 | 0.866 | killed |
|
||||
| M31 | row253 config parser is strict | 0.214 | 0.265 | killed |
|
||||
| M32 | row253 C4 overflow is output-limit | 0.866 | 0.565 | killed |
|
||||
| M33 | row253 query reaps its group | 0.365 | 0.866 | killed |
|
||||
| M34 | row253 C4 signals query | 11.189 | 7.28 | killed |
|
||||
| M35 | row253 C4 stalled supervisor | 14.395 | 9.735 | killed |
|
||||
| M36 | row253 C4 member query | 11.088 | 7.28 | killed |
|
||||
| M37 | row253 C4 overflow is output-limit | 0.866 | 0.515 | killed |
|
||||
| M38 | row253 C4 signals query | 11.189 | 5.275 | killed |
|
||||
| M39 | row253 C4 inline supervisor is byte-identical | 0.215 | 0.214 | killed |
|
||||
| M40 | row253 C4 cleanup budget starts after inventory pass one | 0.265 | 0.214 | killed |
|
||||
@@ -1,120 +0,0 @@
|
||||
{
|
||||
"head": "48e450ce8fbb10df0beabc8da67ab90ea14587ea",
|
||||
"grant": "sage-2786",
|
||||
"manifest": "591020a1096a1606c11f2ee34b37243acddf83d91c69922ccc5cfe22d6180d3a",
|
||||
"wall_seconds": 425.34,
|
||||
"pause": "busy guard refused external SSH docker-compose process before M32 base; no retry",
|
||||
"reported": "gander-0121 direct to Duckworth and Mos, cc Sage; slot returned",
|
||||
"focused": [
|
||||
{
|
||||
"code": 1,
|
||||
"timeout": false,
|
||||
"seconds": 0.214,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/focused/installer-red.log",
|
||||
"name": "installer-red",
|
||||
"expected_red": true,
|
||||
"counts": {
|
||||
"tests": 1,
|
||||
"pass": 0,
|
||||
"fail": 1,
|
||||
"skipped": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"code": 1,
|
||||
"timeout": false,
|
||||
"seconds": 0.215,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/focused/acceptance-red.log",
|
||||
"name": "acceptance-red",
|
||||
"expected_red": true,
|
||||
"counts": {
|
||||
"tests": 1,
|
||||
"pass": 0,
|
||||
"fail": 1,
|
||||
"skipped": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"code": 0,
|
||||
"timeout": false,
|
||||
"seconds": 70.67,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/focused/focused-1.log",
|
||||
"name": "focused-1",
|
||||
"expected_red": false,
|
||||
"counts": {
|
||||
"tests": 43,
|
||||
"pass": 43,
|
||||
"fail": 0,
|
||||
"skipped": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"code": 0,
|
||||
"timeout": false,
|
||||
"seconds": 126.752,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/focused/focused-2.log",
|
||||
"name": "focused-2",
|
||||
"expected_red": false,
|
||||
"counts": {
|
||||
"tests": 34,
|
||||
"pass": 34,
|
||||
"fail": 0,
|
||||
"skipped": 0
|
||||
}
|
||||
}
|
||||
],
|
||||
"controls_pass": 13,
|
||||
"killed": [
|
||||
"M1",
|
||||
"M2",
|
||||
"M3",
|
||||
"M4",
|
||||
"M5",
|
||||
"M6",
|
||||
"M7",
|
||||
"M8",
|
||||
"M9",
|
||||
"M10",
|
||||
"M11",
|
||||
"M12",
|
||||
"M13",
|
||||
"M14",
|
||||
"M15",
|
||||
"M16",
|
||||
"M17",
|
||||
"M18",
|
||||
"M19",
|
||||
"M20",
|
||||
"M21",
|
||||
"M22",
|
||||
"M23",
|
||||
"M24",
|
||||
"M25",
|
||||
"M26",
|
||||
"M27",
|
||||
"M28",
|
||||
"M29",
|
||||
"M30",
|
||||
"M31"
|
||||
],
|
||||
"survived": [],
|
||||
"not_run": [
|
||||
"M32",
|
||||
"M33",
|
||||
"M34",
|
||||
"M35",
|
||||
"M36",
|
||||
"M37",
|
||||
"M38",
|
||||
"M39",
|
||||
"M40",
|
||||
"CLI whole",
|
||||
"WebUI whole",
|
||||
"bus rebase union",
|
||||
"ten whole shells"
|
||||
],
|
||||
"timeouts": 0,
|
||||
"skips": 0,
|
||||
"sweep_count": 0,
|
||||
"classification": "pending Sage/Mos; no test red or product result at refusal"
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
sage-2824,16:53:55Z: Sage self-reports one canonical scripts/mosaic queue --help at16:53:3xZ, under1s, no tests or queue write, gone. Classified benign by Sage; continue grants2786/2811. No guard refusal from this call observed by this seat.
|
||||
@@ -1,168 +0,0 @@
|
||||
# Row253 whole gate RESULTS
|
||||
|
||||
HEAD 48e450ce8fbb10df0beabc8da67ab90ea14587ea, product 14e46006171ef700a72f971fda5cb3a0b8dcc4f2, manifest 591020a1096a1606c11f2ee34b37243acddf83d91c69922ccc5cfe22d6180d3a.
|
||||
|
||||
48e450ce8..actual record HEAD name-only outside agents/gander/:
|
||||
|
||||
```text
|
||||
```
|
||||
|
||||
All listed whole files ran, with no unlisted-file coverage claim. Intended REDs and focused repeats are separate from package totals. Bus coverage is the20-file rebase union, not a bus-whole claim.
|
||||
|
||||
| Whole file | Pass/fail/skip | Wall seconds | Limit seconds |
|
||||
|---|---:|---:|---:|
|
||||
| packages/cli/tests/access.test.mjs | 22/0/0 | 6.178 | 900 |
|
||||
| packages/cli/tests/app.test.mjs | 30/0/0 | 15.149 | 900 |
|
||||
| packages/cli/tests/boot-status.test.mjs | 3/0/0 | 1.668 | 900 |
|
||||
| packages/cli/tests/case1-accept.test.mjs | 34/0/0 | 123.341 | 418 |
|
||||
| packages/cli/tests/case1-hostcheck.test.mjs | 16/0/0 | 2.721 | 900 |
|
||||
| packages/cli/tests/case2-persona-import.test.mjs | 14/0/0 | 3.221 | 900 |
|
||||
| packages/cli/tests/case2-unit.test.mjs | 43/0/0 | 71.568 | 320 |
|
||||
| packages/cli/tests/channel-cli.test.mjs | 2/0/0 | 0.214 | 900 |
|
||||
| packages/cli/tests/channel-recovery.test.mjs | 1/0/0 | 2.569 | 900 |
|
||||
| packages/cli/tests/cli.test.mjs | 12/0/0 | 0.415 | 900 |
|
||||
| packages/cli/tests/config.test.mjs | 6/0/0 | 0.465 | 900 |
|
||||
| packages/cli/tests/credentials.test.mjs | 5/0/0 | 0.315 | 900 |
|
||||
| packages/cli/tests/follow.test.mjs | 6/0/0 | 0.716 | 900 |
|
||||
| packages/cli/tests/format.test.mjs | 4/0/0 | 0.114 | 900 |
|
||||
| packages/cli/tests/gate-lane-auth.test.mjs | 5/0/0 | 19.407 | 900 |
|
||||
| packages/cli/tests/gate-lane-fixtures.test.mjs | 8/0/0 | 0.465 | 900 |
|
||||
| packages/cli/tests/gate-lane-image.test.mjs | 13/0/0 | 0.415 | 900 |
|
||||
| packages/cli/tests/gate-lane-state.test.mjs | 14/0/0 | 2.17 | 900 |
|
||||
| packages/cli/tests/gate-lane.test.mjs | 13/0/0 | 0.665 | 900 |
|
||||
| packages/cli/tests/git-socket.test.mjs | 24/0/0 | 18.905 | 900 |
|
||||
| packages/cli/tests/grants.test.mjs | 6/0/0 | 0.365 | 900 |
|
||||
| packages/cli/tests/host.test.mjs | 43/0/0 | 13.795 | 900 |
|
||||
| packages/cli/tests/hosts.test.mjs | 8/0/0 | 0.315 | 900 |
|
||||
| packages/cli/tests/instances.test.mjs | 14/0/0 | 3.07 | 900 |
|
||||
| packages/cli/tests/launch-account.test.mjs | 7/0/0 | 0.365 | 900 |
|
||||
| packages/cli/tests/launch-limit-checks.test.mjs | 5/0/0 | 0.315 | 900 |
|
||||
| packages/cli/tests/launch-limits.test.mjs | 1/0/0 | 0.265 | 900 |
|
||||
| packages/cli/tests/launch-routes.test.mjs | 9/0/0 | 0.415 | 900 |
|
||||
| packages/cli/tests/launcher.test.mjs | 34/0/0 | 30.18 | 900 |
|
||||
| packages/cli/tests/lifecycle.test.mjs | 24/0/0 | 15.148 | 160 |
|
||||
| packages/cli/tests/limits-tokens.test.mjs | 5/0/0 | 0.215 | 900 |
|
||||
| packages/cli/tests/limits.test.mjs | 5/0/0 | 0.415 | 900 |
|
||||
| packages/cli/tests/mark-read.test.mjs | 6/0/0 | 0.966 | 900 |
|
||||
| packages/cli/tests/names.test.mjs | 2/0/0 | 0.265 | 900 |
|
||||
| packages/cli/tests/notifier.test.mjs | 27/0/0 | 0.766 | 900 |
|
||||
| packages/cli/tests/other-tree.test.mjs | 4/0/0 | 0.265 | 900 |
|
||||
| packages/cli/tests/processing-cli.test.mjs | 4/0/0 | 0.265 | 900 |
|
||||
| packages/cli/tests/project-name-repo.test.mjs | 2/0/0 | 0.315 | 900 |
|
||||
| packages/cli/tests/project.test.mjs | 4/0/0 | 0.565 | 900 |
|
||||
| packages/cli/tests/publish-socket.test.mjs | 9/0/0 | 7.23 | 900 |
|
||||
| packages/cli/tests/stack-copy.test.mjs | 17/0/0 | 17.403 | 900 |
|
||||
| packages/cli/tests/stack-instances.test.mjs | 24/0/0 | 4.073 | 900 |
|
||||
| packages/cli/tests/stack-release-external.test.mjs | 25/0/0 | 99.183 | 900 |
|
||||
| packages/cli/tests/stack-release.test.mjs | 218/0/0 | 683.647 | 1871 |
|
||||
| packages/cli/tests/stack-upgrade.test.mjs | 21/0/0 | 70.916 | 900 |
|
||||
| packages/cli/tests/tester-http.test.mjs | 2/0/0 | 0.164 | 900 |
|
||||
| packages/cli/tests/tester-reads.test.mjs | 6/0/0 | 2.469 | 900 |
|
||||
| packages/cli/tests/tester-threads.test.mjs | 5/0/0 | 2.971 | 900 |
|
||||
| packages/cli/tests/tester.test.mjs | 11/0/0 | 0.365 | 900 |
|
||||
| packages/cli/tests/thread-cli.test.mjs | 11/0/0 | 1.868 | 126 |
|
||||
| packages/cli/tests/thread-launch.test.mjs | 11/0/0 | 17.303 | 170 |
|
||||
| packages/cli/tests/trackers-boot.test.mjs | 2/0/0 | 0.916 | 900 |
|
||||
| packages/cli/tests/transport.test.mjs | 3/0/0 | 2.369 | 900 |
|
||||
| packages/cli/tests/usage.test.mjs | 2/0/0 | 0.365 | 900 |
|
||||
| packages/cli/tests/verbs.test.mjs | 9/0/0 | 3.522 | 900 |
|
||||
| packages/webui/tests/agents-browser.test.mjs | 2/0/0 | 14.396 | 900 |
|
||||
| packages/webui/tests/agents.test.mjs | 8/0/0 | 0.315 | 900 |
|
||||
| packages/webui/tests/assistant.test.mjs | 6/0/0 | 0.214 | 900 |
|
||||
| packages/webui/tests/board-held.test.mjs | 3/0/0 | 9.54 | 900 |
|
||||
| packages/webui/tests/browser-edge.test.mjs | 1/0/0 | 1.669 | 900 |
|
||||
| packages/webui/tests/browser.test.mjs | 1/0/0 | 1.818 | 900 |
|
||||
| packages/webui/tests/bus-browser.test.mjs | 2/0/0 | 3.572 | 900 |
|
||||
| packages/webui/tests/bus.test.mjs | 10/0/0 | 3.171 | 900 |
|
||||
| packages/webui/tests/channel-chat.test.mjs | 3/0/0 | 0.265 | 900 |
|
||||
| packages/webui/tests/chat-browser.test.mjs | 11/0/0 | 18.958 | 900 |
|
||||
| packages/webui/tests/chat.test.mjs | 23/0/0 | 0.615 | 122 |
|
||||
| packages/webui/tests/conversation.test.mjs | 4/0/0 | 4.626 | 900 |
|
||||
| packages/webui/tests/discord.test.mjs | 1/0/0 | 0.966 | 900 |
|
||||
| packages/webui/tests/docs-browser.test.mjs | 1/0/0 | 1.97 | 900 |
|
||||
| packages/webui/tests/editor-browser.test.mjs | 16/0/0 | 14.747 | 900 |
|
||||
| packages/webui/tests/editor-provenance.test.mjs | 5/0/1 | 0.315 | 900 |
|
||||
| packages/webui/tests/editor.test.mjs | 5/0/0 | 1.969 | 900 |
|
||||
| packages/webui/tests/history-return-flow.test.mjs | 1/0/0 | 52.48 | 900 |
|
||||
| packages/webui/tests/instances-browser.test.mjs | 1/0/0 | 1.518 | 900 |
|
||||
| packages/webui/tests/instances.test.mjs | 5/0/0 | 0.515 | 900 |
|
||||
| packages/webui/tests/library-cli.test.mjs | 1/0/0 | 0.365 | 900 |
|
||||
| packages/webui/tests/library-status.test.mjs | 1/0/0 | 0.114 | 900 |
|
||||
| packages/webui/tests/limits-browser.test.mjs | 2/0/0 | 2.169 | 900 |
|
||||
| packages/webui/tests/limits-route.test.mjs | 4/0/0 | 0.265 | 900 |
|
||||
| packages/webui/tests/markdown-preview.test.mjs | 19/0/0 | 8.734 | 900 |
|
||||
| packages/webui/tests/messages.test.mjs | 3/0/0 | 3.071 | 900 |
|
||||
| packages/webui/tests/pinned-copy.test.mjs | 10/0/0 | 7.48 | 900 |
|
||||
| packages/webui/tests/preview.test.mjs | 11/0/0 | 1.167 | 900 |
|
||||
| packages/webui/tests/processing-browser.test.mjs | 9/0/0 | 7.331 | 900 |
|
||||
| packages/webui/tests/processing-ui.test.mjs | 5/0/0 | 0.164 | 900 |
|
||||
| packages/webui/tests/processing.test.mjs | 6/0/0 | 0.215 | 900 |
|
||||
| packages/webui/tests/project-file.test.mjs | 10/0/0 | 0.265 | 900 |
|
||||
| packages/webui/tests/project-name-repo.test.mjs | 1/0/0 | 0.164 | 900 |
|
||||
| packages/webui/tests/proof-cli.test.mjs | 3/0/0 | 2.219 | 900 |
|
||||
| packages/webui/tests/proof.test.mjs | 4/0/0 | 0.315 | 900 |
|
||||
| packages/webui/tests/reads.test.mjs | 11/0/0 | 1.818 | 900 |
|
||||
| packages/webui/tests/relaunch.test.mjs | 1/0/0 | 1.117 | 900 |
|
||||
| packages/webui/tests/return-flow.test.mjs | 1/0/0 | 21.111 | 900 |
|
||||
| packages/webui/tests/routes-browser.test.mjs | 1/0/0 | 1.568 | 900 |
|
||||
| packages/webui/tests/routes.test.mjs | 5/0/0 | 0.415 | 900 |
|
||||
| packages/webui/tests/send-browser.test.mjs | 2/0/0 | 13.895 | 900 |
|
||||
| packages/webui/tests/send.test.mjs | 13/0/0 | 1.018 | 900 |
|
||||
| packages/webui/tests/serve.test.mjs | 4/0/0 | 0.866 | 900 |
|
||||
| packages/webui/tests/service.test.mjs | 32/0/0 | 13.593 | 900 |
|
||||
| packages/webui/tests/settings-form.test.mjs | 5/0/0 | 5.327 | 900 |
|
||||
| packages/webui/tests/settings-write.test.mjs | 4/0/0 | 0.265 | 900 |
|
||||
| packages/webui/tests/shell.test.mjs | 5/0/0 | 8.735 | 900 |
|
||||
| packages/webui/tests/sso-browser.test.mjs | 2/0/0 | 7.129 | 900 |
|
||||
| packages/webui/tests/sso.test.mjs | 28/0/0 | 3.522 | 900 |
|
||||
| packages/webui/tests/tester-browser.test.mjs | 2/0/0 | 2.119 | 900 |
|
||||
| packages/webui/tests/tester-cli.test.mjs | 2/0/0 | 4.074 | 900 |
|
||||
| packages/webui/tests/tester-listener.test.mjs | 10/0/0 | 0.916 | 900 |
|
||||
| packages/webui/tests/tester-socket.test.mjs | 3/0/0 | 0.215 | 900 |
|
||||
| packages/webui/tests/thread-claims-browser.test.mjs | 6/0/0 | 4.875 | 900 |
|
||||
| packages/webui/tests/thread-claims.test.mjs | 4/0/0 | 0.417 | 900 |
|
||||
| packages/webui/tests/usage-browser.test.mjs | 1/0/0 | 0.966 | 900 |
|
||||
| packages/webui/tests/usage.test.mjs | 2/0/0 | 0.265 | 900 |
|
||||
| packages/webui/tests/views.test.mjs | 3/0/0 | 5.125 | 900 |
|
||||
| packages/bus/tests/account-migration.test.mjs | 3/0/0 | 0.415 | 122 |
|
||||
| packages/bus/tests/chief-of-staff.test.mjs | 42/0/0 | 2.419 | 127 |
|
||||
| packages/bus/tests/comment-migration.test.mjs | 5/0/0 | 0.666 | 122 |
|
||||
| packages/bus/tests/end-launch.test.mjs | 7/0/0 | 0.515 | 122 |
|
||||
| packages/bus/tests/fire-revokes-grants.test.mjs | 22/0/0 | 3.722 | 130 |
|
||||
| packages/bus/tests/gitea-grant.test.mjs | 49/0/0 | 9.534 | 146 |
|
||||
| packages/bus/tests/gitea-migration.test.mjs | 5/0/0 | 0.465 | 122 |
|
||||
| packages/bus/tests/grant-executor.test.mjs | 42/0/0 | 22.312 | 185 |
|
||||
| packages/bus/tests/grant-migration.test.mjs | 6/0/0 | 0.565 | 122 |
|
||||
| packages/bus/tests/lifecycle-revoke.test.mjs | 8/0/0 | 0.766 | 122 |
|
||||
| packages/bus/tests/message-filter.test.mjs | 6/0/0 | 0.565 | 122 |
|
||||
| packages/bus/tests/name-migration.test.mjs | 1/0/0 | 0.265 | 121 |
|
||||
| packages/bus/tests/schema.test.mjs | 1/0/0 | 0.214 | 121 |
|
||||
| packages/bus/tests/sessions.test.mjs | 7/0/0 | 0.665 | 122 |
|
||||
| packages/bus/tests/spec-migration.test.mjs | 1/0/0 | 0.215 | 121 |
|
||||
| packages/bus/tests/tester-writes.test.mjs | 8/0/0 | 0.515 | 122 |
|
||||
| packages/bus/tests/thread-claims.test.mjs | 6/0/0 | 0.315 | 121 |
|
||||
| packages/bus/tests/thread-migration.test.mjs | 3/0/0 | 0.415 | 122 |
|
||||
| packages/bus/tests/threads.test.mjs | 17/0/0 | 1.52 | 124 |
|
||||
| packages/bus/tests/usage-migration.test.mjs | 1/0/0 | 0.214 | 121 |
|
||||
| scripts/test-auth.sh | 15/0/0 | 1.067 | 126 |
|
||||
| scripts/test-conductor.sh | 17/0/0 | 6.529 | 145 |
|
||||
| scripts/test-config.sh | 31/0/0 | 1.968 | 130 |
|
||||
| scripts/test-discord.sh | 81/0/0 | 8.033 | 147 |
|
||||
| scripts/test-extension-package.sh | 18/0/0 | 1.617 | 130 |
|
||||
| scripts/test-foundation.sh | 44/0/0 | 49.367 | 240 |
|
||||
| scripts/test-land-work.sh | 86/0/0 | 16.854 | 158 |
|
||||
| scripts/test-queue.sh | 28/0/0 | 35.155 | 191 |
|
||||
| scripts/test-release.sh | 14/0/0 | 3.271 | 157 |
|
||||
| scripts/test-task.sh | 91/0/0 | 16.653 | 231 |
|
||||
|
||||
N9 verbatim: ok 43 - inside a session's sandbox a bind below 1024 fails with EACCES, and a bind on a free high port succeeds
|
||||
|
||||
Every named skip:
|
||||
|
||||
- packages/webui/tests/editor-provenance.test.mjs: ok 6 - rebuilding from the source gives the same bytes (needs the pinned esbuild; MOSAIC_REQUIRE_EDITOR_BUILD=1 makes its absence a failure) # SKIP esbuild 0.28.1 is installed at /mnt/storage/src/mosaic-stack/node_modules/esbuild; the editor rebuild needs exactly 0.28.2 (npm ci --ignore-scripts in packages/webui) (set MOSAIC_REQUIRE_EDITOR_BUILD=1 to fail instead of skip)
|
||||
- scripts/test-queue.sh: skip queue verify and render --check: this checkout (/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196) is not the queue's canonical root (/mnt/storage/src/mosaic-stack)
|
||||
- scripts/test-task.sh: skip live provider cases (row 244: no provider call in the gate)
|
||||
- scripts/test-task.sh: skip live provider cases (row 244: no provider call in the gate)
|
||||
|
||||
|
||||
Same-run resume under sage-2811 after classified external-process guard refusal. No other round carries. Actual record HEADdd9d519b1 differs from candidate48e450ce8 only under agents/gander/. Stage measured wall sums: CLI1253.715s,WebUI267.028s,bus union46.282s,shells140.514s; control20/0 in64.223s; variants40/40 killed in128.497s. Active window walls425.340s and2106.873s, excluding the classified gap. M21 named P10 assertion kill; M38 ERR_ASSERTION strictEqual at case2-unit.test.mjs:203:10, signals/exec PID1298470 vs SID1298319. Both scripts match candidate; all7manifest checks pass. Sweep0run-created leftovers.
|
||||
@@ -1 +0,0 @@
|
||||
sage-2811 classifies the external busy refusal as unrelated and clears this same run5 from M32 with fresh bases. resume5.py is driver.py with only its execution loop filtered to M32-M40; static uniqueness still checks all40, run()/busy()/restoration unchanged. Candidate48e450ce8; actual record HEADdd9d519b1 differs only in agents/gander/. No other round carries.
|
||||
File diff suppressed because it is too large.
Load diff
@@ -1 +0,0 @@
|
||||
/mnt/storage/scratch/tmp/gTLW
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 overflow is output-limit", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 overflow is output-limit in both sudo modes
|
||||
ok 1 - row253 C4 overflow is output-limit in both sudo modes
|
||||
---
|
||||
duration_ms: 625.994428
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 760.206204
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 overflow is output-limit", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,37 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 overflow is output-limit in both sudo modes
|
||||
not ok 1 - row253 C4 overflow is output-limit in both sudo modes
|
||||
---
|
||||
duration_ms: 323.005464
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:211:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
The input did not match the regular expression /^case2-unit: tester config query output-limit\n$/. Input:
|
||||
|
||||
'case2-unit: tester config query has invalid facts\n'
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
case2-unit: tester config query has invalid facts
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:293:10)
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:215:49)
|
||||
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 490.238569
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 query reaps its group", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 query reaps its group even when a child closes stdout before the query returns
|
||||
ok 1 - row253 query reaps its group even when a child closes stdout before the query returns
|
||||
---
|
||||
duration_ms: 157.91649
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 283.847211
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 query reaps its group", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 signals query", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 signals query has exact inner reason and cleans all members
|
||||
ok 1 - row253 C4 signals query has exact inner reason and cleans all members
|
||||
---
|
||||
duration_ms: 10950.217059
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 11089.397589
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 signals query", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,37 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 signals query has exact inner reason and cleans all members
|
||||
not ok 1 - row253 C4 signals query has exact inner reason and cleans all members
|
||||
---
|
||||
duration_ms: 7064.848782
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:192:49'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
The input did not match the regular expression /^case2-unit: tester config query inner-timeout\n$/. Input:
|
||||
|
||||
'case2-unit: tester config query outer-timeout\n'
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
case2-unit: tester config query outer-timeout
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:293:10)
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:201:3)
|
||||
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 7210.704044
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 stalled supervisor", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 stalled supervisor uses the outer reason and explicit residual cleanup
|
||||
ok 1 - row253 C4 stalled supervisor uses the outer reason and explicit residual cleanup
|
||||
---
|
||||
duration_ms: 14171.49424
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 14286.424938
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 stalled supervisor", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,37 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 stalled supervisor uses the outer reason and explicit residual cleanup
|
||||
not ok 1 - row253 C4 stalled supervisor uses the outer reason and explicit residual cleanup
|
||||
---
|
||||
duration_ms: 9539.03879
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:221:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
The input did not match the regular expression /^case2-unit: tester config query outer-timeout\n$/. Input:
|
||||
|
||||
'case2-unit: tester config query inner-command\n'
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
case2-unit: tester config query inner-command
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:293:10)
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:227:3)
|
||||
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 9657.55839
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 member query", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 member query has exact inner reason and cleans all members
|
||||
ok 1 - row253 C4 member query has exact inner reason and cleans all members
|
||||
---
|
||||
duration_ms: 10905.789988
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 11021.001085
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 member query", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,37 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 member query has exact inner reason and cleans all members
|
||||
not ok 1 - row253 C4 member query has exact inner reason and cleans all members
|
||||
---
|
||||
duration_ms: 7081.317279
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:192:49'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
The input did not match the regular expression /^case2-unit: tester config query inner-timeout\n$/. Input:
|
||||
|
||||
'case2-unit: tester config query outer-timeout\n'
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
case2-unit: tester config query outer-timeout
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:293:10)
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:201:3)
|
||||
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 7220.110326
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 overflow is output-limit", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,37 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 overflow is output-limit in both sudo modes
|
||||
not ok 1 - row253 C4 overflow is output-limit in both sudo modes
|
||||
---
|
||||
duration_ms: 314.41894
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:211:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
The input did not match the regular expression /^case2-unit: tester config query output-limit\n$/. Input:
|
||||
|
||||
'case2-unit: tester config query has invalid facts\n'
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
case2-unit: tester config query has invalid facts
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:293:10)
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:215:49)
|
||||
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 453.186682
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 signals query", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 inline supervisor is byte-identical", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 inline supervisor is byte-identical in both host scripts
|
||||
ok 1 - row253 C4 inline supervisor is byte-identical in both host scripts
|
||||
---
|
||||
duration_ms: 1.534242
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 137.347553
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 inline supervisor is byte-identical", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,202 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 inline supervisor is byte-identical in both host scripts
|
||||
not ok 1 - row253 C4 inline supervisor is byte-identical in both host scripts
|
||||
---
|
||||
duration_ms: 2.718028
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:235:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
Expected values to be strictly equal:
|
||||
+ actual - expected
|
||||
|
||||
"IFS= read -r -d '' TESTER_SUPERVISOR <<'MOSAIC_TESTER_SUPERVISOR' || :\n" +
|
||||
+ '# one-copy drift\n' +
|
||||
'set +m\n' +
|
||||
'seconds="$1" setsid_bin="$2" sleep_bin="$3"; shift 3\n' +
|
||||
'child="" timer="" verified=0\n' +
|
||||
'stat_fields() {\n' +
|
||||
' local pid="$1" raw="" rest\n' +
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected: |-
|
||||
IFS= read -r -d '' TESTER_SUPERVISOR <<'MOSAIC_TESTER_SUPERVISOR' || :
|
||||
set +m
|
||||
seconds="$1" setsid_bin="$2" sleep_bin="$3"; shift 3
|
||||
child="" timer="" verified=0
|
||||
stat_fields() {
|
||||
local pid="$1" raw="" rest
|
||||
# EOF is expected: stat has no NUL. Decide on content, not read's status.
|
||||
IFS= read -r -d '' raw < "/proc/$pid/stat" 2>/dev/null || :
|
||||
[ -n "$raw" ] || { [ -e "/proc/$pid/stat" ] && return 1; return 3; }
|
||||
rest="${raw##*) }"
|
||||
[ "$rest" != "$raw" ] || return 1
|
||||
read -r ST_STATE ST_PARENT ST_GROUP ST_SESSION _ <<< "$rest"
|
||||
[[ "$ST_STATE" =~ ^[A-Za-z]$ && "$ST_SESSION" =~ ^[0-9]+$ && "$ST_GROUP" =~ ^[0-9]+$ ]]
|
||||
}
|
||||
clock_cs() {
|
||||
local boot spare
|
||||
read -r boot spare < /proc/uptime || return 1
|
||||
[[ "$boot" =~ ^([0-9]+)\.([0-9]{2})$ ]] || return 1
|
||||
CLOCK_CS=$((10#${BASH_REMATCH[1]} * 100 + 10#${BASH_REMATCH[2]}))
|
||||
}
|
||||
clean_session() {
|
||||
local entry pid rc live until=""
|
||||
while :; do
|
||||
live=0
|
||||
for entry in /proc/[0-9]*/stat; do
|
||||
pid="${entry%/stat}"; pid="${pid##*/}"
|
||||
rc=0; stat_fields "$pid" || rc=$?
|
||||
[ "$rc" != 3 ] || continue
|
||||
[ "$rc" = 0 ] || return 1
|
||||
[ "$ST_SESSION" = "$child" ] || continue
|
||||
case "$ST_STATE" in Z|X) continue ;; esac
|
||||
live=1
|
||||
if ! kill -KILL "$pid" 2>/dev/null; then
|
||||
rc=0; stat_fields "$pid" || rc=$?
|
||||
[ "$rc" = 3 ] || { [ "$rc" = 0 ] && { [ "$ST_STATE" = Z ] || [ "$ST_STATE" = X ]; }; } || return 1
|
||||
fi
|
||||
done
|
||||
[ "$live" != 0 ] || return 0
|
||||
clock_cs || return 1
|
||||
# Inventory pass 1 is outside the bounded confirmation/retry budget.
|
||||
[ -n "$until" ] || until=$((CLOCK_CS + 25))
|
||||
[ "$CLOCK_CS" -lt "$until" ] || return 1
|
||||
"$sleep_bin" 0.01
|
||||
done
|
||||
}
|
||||
finish() {
|
||||
local rc="$?"
|
||||
trap - EXIT HUP INT TERM
|
||||
if [ "$verified" = 1 ]; then
|
||||
clean_session || rc=86
|
||||
elif [ -n "$child" ]; then
|
||||
kill -KILL "$child" 2>/dev/null || :
|
||||
fi
|
||||
[ -z "$child" ] || wait "$child" 2>/dev/null || :
|
||||
if [ -n "$timer" ]; then kill -KILL "$timer" 2>/dev/null || :; wait "$timer" 2>/dev/null || :; fi
|
||||
exit "$rc"
|
||||
}
|
||||
trap finish EXIT
|
||||
trap 'exit 88' HUP INT TERM
|
||||
"$sleep_bin" "$seconds" & timer=$!
|
||||
"$setsid_bin" "$@" & child=$!
|
||||
# Allow session creation the whole inner budget, rather than a 200 ms margin.
|
||||
while :; do
|
||||
rc=0; stat_fields "$child" || rc=$?
|
||||
[ "$rc" = 0 ] || exit 85
|
||||
if [ "$ST_SESSION" = "$child" ]; then verified=1; break; fi
|
||||
kill -0 "$timer" 2>/dev/null || exit 81
|
||||
"$sleep_bin" 0.002
|
||||
done
|
||||
[ "$verified" = 1 ] || exit 85
|
||||
while kill -0 "$child" 2>/dev/null; do
|
||||
kill -0 "$timer" 2>/dev/null || exit 81
|
||||
"$sleep_bin" 0.01
|
||||
done
|
||||
kill -0 "$timer" 2>/dev/null || exit 81
|
||||
rc=0; wait "$child" || rc=$?
|
||||
[ "$rc" = 0 ] || exit 87
|
||||
exit 0
|
||||
MOSAIC_TESTER_SUPERVISOR
|
||||
|
||||
actual: |-
|
||||
IFS= read -r -d '' TESTER_SUPERVISOR <<'MOSAIC_TESTER_SUPERVISOR' || :
|
||||
# one-copy drift
|
||||
set +m
|
||||
seconds="$1" setsid_bin="$2" sleep_bin="$3"; shift 3
|
||||
child="" timer="" verified=0
|
||||
stat_fields() {
|
||||
local pid="$1" raw="" rest
|
||||
# EOF is expected: stat has no NUL. Decide on content, not read's status.
|
||||
IFS= read -r -d '' raw < "/proc/$pid/stat" 2>/dev/null || :
|
||||
[ -n "$raw" ] || { [ -e "/proc/$pid/stat" ] && return 1; return 3; }
|
||||
rest="${raw##*) }"
|
||||
[ "$rest" != "$raw" ] || return 1
|
||||
read -r ST_STATE ST_PARENT ST_GROUP ST_SESSION _ <<< "$rest"
|
||||
[[ "$ST_STATE" =~ ^[A-Za-z]$ && "$ST_SESSION" =~ ^[0-9]+$ && "$ST_GROUP" =~ ^[0-9]+$ ]]
|
||||
}
|
||||
clock_cs() {
|
||||
local boot spare
|
||||
read -r boot spare < /proc/uptime || return 1
|
||||
[[ "$boot" =~ ^([0-9]+)\.([0-9]{2})$ ]] || return 1
|
||||
CLOCK_CS=$((10#${BASH_REMATCH[1]} * 100 + 10#${BASH_REMATCH[2]}))
|
||||
}
|
||||
clean_session() {
|
||||
local entry pid rc live until=""
|
||||
while :; do
|
||||
live=0
|
||||
for entry in /proc/[0-9]*/stat; do
|
||||
pid="${entry%/stat}"; pid="${pid##*/}"
|
||||
rc=0; stat_fields "$pid" || rc=$?
|
||||
[ "$rc" != 3 ] || continue
|
||||
[ "$rc" = 0 ] || return 1
|
||||
[ "$ST_SESSION" = "$child" ] || continue
|
||||
case "$ST_STATE" in Z|X) continue ;; esac
|
||||
live=1
|
||||
if ! kill -KILL "$pid" 2>/dev/null; then
|
||||
rc=0; stat_fields "$pid" || rc=$?
|
||||
[ "$rc" = 3 ] || { [ "$rc" = 0 ] && { [ "$ST_STATE" = Z ] || [ "$ST_STATE" = X ]; }; } || return 1
|
||||
fi
|
||||
done
|
||||
[ "$live" != 0 ] || return 0
|
||||
clock_cs || return 1
|
||||
# Inventory pass 1 is outside the bounded confirmation/retry budget.
|
||||
[ -n "$until" ] || until=$((CLOCK_CS + 25))
|
||||
[ "$CLOCK_CS" -lt "$until" ] || return 1
|
||||
"$sleep_bin" 0.01
|
||||
done
|
||||
}
|
||||
finish() {
|
||||
local rc="$?"
|
||||
trap - EXIT HUP INT TERM
|
||||
if [ "$verified" = 1 ]; then
|
||||
clean_session || rc=86
|
||||
elif [ -n "$child" ]; then
|
||||
kill -KILL "$child" 2>/dev/null || :
|
||||
fi
|
||||
[ -z "$child" ] || wait "$child" 2>/dev/null || :
|
||||
if [ -n "$timer" ]; then kill -KILL "$timer" 2>/dev/null || :; wait "$timer" 2>/dev/null || :; fi
|
||||
exit "$rc"
|
||||
}
|
||||
trap finish EXIT
|
||||
trap 'exit 88' HUP INT TERM
|
||||
"$sleep_bin" "$seconds" & timer=$!
|
||||
"$setsid_bin" "$@" & child=$!
|
||||
# Allow session creation the whole inner budget, rather than a 200 ms margin.
|
||||
while :; do
|
||||
rc=0; stat_fields "$child" || rc=$?
|
||||
[ "$rc" = 0 ] || exit 85
|
||||
if [ "$ST_SESSION" = "$child" ]; then verified=1; break; fi
|
||||
kill -0 "$timer" 2>/dev/null || exit 81
|
||||
"$sleep_bin" 0.002
|
||||
done
|
||||
[ "$verified" = 1 ] || exit 85
|
||||
while kill -0 "$child" 2>/dev/null; do
|
||||
kill -0 "$timer" 2>/dev/null || exit 81
|
||||
"$sleep_bin" 0.01
|
||||
done
|
||||
kill -0 "$timer" 2>/dev/null || exit 81
|
||||
rc=0; wait "$child" || rc=$?
|
||||
[ "$rc" = 0 ] || exit 87
|
||||
exit 0
|
||||
MOSAIC_TESTER_SUPERVISOR
|
||||
|
||||
operator: 'strictEqual'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:238:34)
|
||||
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 126.372046
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 cleanup budget starts after inventory pass one", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 C4 cleanup budget starts after inventory pass one
|
||||
ok 1 - row253 C4 cleanup budget starts after inventory pass one
|
||||
---
|
||||
duration_ms: 48.881506
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 169.630508
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 C4 cleanup budget starts after inventory pass one", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,412 +0,0 @@
|
||||
{
|
||||
"grant": "sage-2811",
|
||||
"static": [
|
||||
{
|
||||
"id": "M1",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "4de5294507816ddc4114c418a6bb7c197b3fefe92f19b3b18cb95384e23de594"
|
||||
},
|
||||
{
|
||||
"id": "M2",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "caf88ee7ad50b89169a0f57e12b696fe3828238af2ef1008ba6b6016ea7b2528"
|
||||
},
|
||||
{
|
||||
"id": "M3",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "4401886e41fdb4c27610198b66f12d0b3103c5422e0862e9cea30a6f67c93fde"
|
||||
},
|
||||
{
|
||||
"id": "M4",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "ef9a92bb24c72832bdba4d782bf4662394ee05e06a12b750a23d488d9181cd1d"
|
||||
},
|
||||
{
|
||||
"id": "M5",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "4ab80b9db782a97c935f732bec87ac3bb45b58bf9076bc9f9abb4970fef1cada"
|
||||
},
|
||||
{
|
||||
"id": "M6",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "7064e1926c77aedb5453c7771cd42091a5e90fc546821ddbb75d39e6a87c5a31"
|
||||
},
|
||||
{
|
||||
"id": "M7",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "aece2a211aefa1dc4cfb6a3540f922ee5e7f23de26ce974b7655f8fe1722ee16"
|
||||
},
|
||||
{
|
||||
"id": "M8",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "076d4f8f73570a21ad512b12eb5f6f494cb246b2a9d071fea27cc3c126efca2b"
|
||||
},
|
||||
{
|
||||
"id": "M9",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "244cee7128d3b6e380ff24ab9e31f6c456d5153dddf88bb4719028277f523276"
|
||||
},
|
||||
{
|
||||
"id": "M10",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "0e7d369f34cd41708d7b5104113093ebac0296d08902193ced03a1a2bbb83567"
|
||||
},
|
||||
{
|
||||
"id": "M11",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "84181be89249975dd48e1a5daa51eab4bae7b483ea8edf5d6c0cdf373459c046"
|
||||
},
|
||||
{
|
||||
"id": "M12",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "7f8b45e467b197bc00fb740a6507ee85cae332e404e8ffdd8c749b4264239e97"
|
||||
},
|
||||
{
|
||||
"id": "M13",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "85ec11381f4e6662ec1729d84c57022e2f573a2f4c2682250fa005803cdfd63c"
|
||||
},
|
||||
{
|
||||
"id": "M14",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "131f78c490b5ec26142c0703be0b5341551dd9d154c13e519604215fe1240b67"
|
||||
},
|
||||
{
|
||||
"id": "M15",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "077b2eb210c853a03152733f4aa99e450ef0fa17d28f97f8adb78229b02ef147"
|
||||
},
|
||||
{
|
||||
"id": "M16",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "2439d201b902c13fe3903a2d936c8700f0124a430b7d9b2877d485e1f381d3fb"
|
||||
},
|
||||
{
|
||||
"id": "M17",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "1be36e62095e97c64c0bdc5d50b4a3a2e6dd18f1c45cfe1da0fe66cbb8aebd61"
|
||||
},
|
||||
{
|
||||
"id": "M18",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "f5e61c286c51e5a2b26acab22fc5a32c35add0cb8126dc25b5ce747677e34888"
|
||||
},
|
||||
{
|
||||
"id": "M19",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "2f337c03acc60978f1850275a2c8ba6d1b2c74befeb8d73f94d2b477e43b8c56"
|
||||
},
|
||||
{
|
||||
"id": "M20",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "99689c22c6eb73ff9d599ba7305da552357baa99145305ca400f083017bbe3b1"
|
||||
},
|
||||
{
|
||||
"id": "M21",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "bff90f2b1f59086575f98ff96dbd51bacb0265342f595b4bee96cb228d67c030"
|
||||
},
|
||||
{
|
||||
"id": "M22",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "7a8cb7ce47774ab80a55331fc831b7458487be7187b10128746321b375dc83ff"
|
||||
},
|
||||
{
|
||||
"id": "M23",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "e6814801188a6eb98f705d93ac123e988e4daf43afbe96464451f925b1c98d1c"
|
||||
},
|
||||
{
|
||||
"id": "M24",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "ea8d8875f0b4503a6cf4fb96bd88184af65a7f61d1236b9b49baacc748b0c741"
|
||||
},
|
||||
{
|
||||
"id": "M25",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "cfed9261a03eafcdcfb903226b0ddb3fba779d1105e3b4c411b66c10e1672d11"
|
||||
},
|
||||
{
|
||||
"id": "M26",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "1a245b5403b1b9b5f25dfb8cc8ee24acf99121ff063277d52c928ba18543f997"
|
||||
},
|
||||
{
|
||||
"id": "M27",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"after": "efaa027cf7ec3252a675be80219e40fa7b5a3317b28c21fe02363d23ec6e5323"
|
||||
},
|
||||
{
|
||||
"id": "M28",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "bb734cc1a42c0853068f77154dddaaee8eeef5696f67de2e27d1a898409f3b44"
|
||||
},
|
||||
{
|
||||
"id": "M29",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "a6f353aa419862a473eee28e41c5208b464a378ae23e14a73b62ed92bd36cd1f"
|
||||
},
|
||||
{
|
||||
"id": "M30",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "d22cf0f492178b3071604abd550355573c28bf4c26f4a3582f6895710ad3d788"
|
||||
},
|
||||
{
|
||||
"id": "M31",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "3e7450a19cf152653bf6e73be39ef9fb552ec7a656564ca35e44bc12f1586ef5"
|
||||
},
|
||||
{
|
||||
"id": "M32",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "ff11fc1013d70d861643cfd70aa964422cb6a82fb8b4b959bae04703803838b9"
|
||||
},
|
||||
{
|
||||
"id": "M33",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "1c2a58bef2369d8af90b65f9473dd7a112f484db983d8460e2524cb8a673f18b"
|
||||
},
|
||||
{
|
||||
"id": "M34",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "13c1ab861017f3c3c65f50d34a64d7028482e3bc11a8e5908632ec6685416025"
|
||||
},
|
||||
{
|
||||
"id": "M35",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "8f05c1a3a18c5294c63a5853317ce5a5066303145410039629697b5d15d99bfe"
|
||||
},
|
||||
{
|
||||
"id": "M36",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "c1247a7cab2c24e0ab017c49f66797ed16149d3f52cfa41c0968f154261d0d00"
|
||||
},
|
||||
{
|
||||
"id": "M37",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "f210b9c796322333849bc4897b9db3e44bd573fef24c4ba757151981b891f11b"
|
||||
},
|
||||
{
|
||||
"id": "M38",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "736418014b96a09ebe82d996ff6f45b9eb1f3c1e0ada274c505f89fbbd732783"
|
||||
},
|
||||
{
|
||||
"id": "M39",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "1486b8907be4f327bc17b64ddf615cd8b3db1193c185f7934bcba1c7ccc5ec31"
|
||||
},
|
||||
{
|
||||
"id": "M40",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"after": "2f654a76d887ca62525e01c307a2a8f828ee426087dc63a2d4df6a07dc525d53"
|
||||
}
|
||||
],
|
||||
"bases": {
|
||||
"packages/cli/tests/case2-unit.test.mjs|row253 C4 overflow is output-limit": {
|
||||
"code": 0,
|
||||
"timeout": false,
|
||||
"seconds": 0.866,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M32-base.log"
|
||||
},
|
||||
"packages/cli/tests/case2-unit.test.mjs|row253 query reaps its group": {
|
||||
"code": 0,
|
||||
"timeout": false,
|
||||
"seconds": 0.365,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M33-base.log"
|
||||
},
|
||||
"packages/cli/tests/case2-unit.test.mjs|row253 C4 signals query": {
|
||||
"code": 0,
|
||||
"timeout": false,
|
||||
"seconds": 11.189,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M34-base.log"
|
||||
},
|
||||
"packages/cli/tests/case2-unit.test.mjs|row253 C4 stalled supervisor": {
|
||||
"code": 0,
|
||||
"timeout": false,
|
||||
"seconds": 14.395,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M35-base.log"
|
||||
},
|
||||
"packages/cli/tests/case2-unit.test.mjs|row253 C4 member query": {
|
||||
"code": 0,
|
||||
"timeout": false,
|
||||
"seconds": 11.088,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M36-base.log"
|
||||
},
|
||||
"packages/cli/tests/case2-unit.test.mjs|row253 C4 inline supervisor is byte-identical": {
|
||||
"code": 0,
|
||||
"timeout": false,
|
||||
"seconds": 0.215,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M39-base.log"
|
||||
},
|
||||
"packages/cli/tests/case2-unit.test.mjs|row253 C4 cleanup budget starts after inventory pass one": {
|
||||
"code": 0,
|
||||
"timeout": false,
|
||||
"seconds": 0.265,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M40-base.log"
|
||||
}
|
||||
},
|
||||
"changes": [
|
||||
{
|
||||
"code": 1,
|
||||
"timeout": false,
|
||||
"seconds": 0.565,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M32.log",
|
||||
"id": "M32",
|
||||
"base_seconds": 0.866,
|
||||
"outcome": "killed"
|
||||
},
|
||||
{
|
||||
"code": 1,
|
||||
"timeout": false,
|
||||
"seconds": 0.866,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M33.log",
|
||||
"id": "M33",
|
||||
"base_seconds": 0.365,
|
||||
"outcome": "killed"
|
||||
},
|
||||
{
|
||||
"code": 1,
|
||||
"timeout": false,
|
||||
"seconds": 7.28,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M34.log",
|
||||
"id": "M34",
|
||||
"base_seconds": 11.189,
|
||||
"outcome": "killed"
|
||||
},
|
||||
{
|
||||
"code": 1,
|
||||
"timeout": false,
|
||||
"seconds": 9.735,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M35.log",
|
||||
"id": "M35",
|
||||
"base_seconds": 14.395,
|
||||
"outcome": "killed"
|
||||
},
|
||||
{
|
||||
"code": 1,
|
||||
"timeout": false,
|
||||
"seconds": 7.28,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M36.log",
|
||||
"id": "M36",
|
||||
"base_seconds": 11.088,
|
||||
"outcome": "killed"
|
||||
},
|
||||
{
|
||||
"code": 1,
|
||||
"timeout": false,
|
||||
"seconds": 0.515,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M37.log",
|
||||
"id": "M37",
|
||||
"base_seconds": 0.866,
|
||||
"outcome": "killed"
|
||||
},
|
||||
{
|
||||
"code": 1,
|
||||
"timeout": false,
|
||||
"seconds": 5.275,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M38.log",
|
||||
"id": "M38",
|
||||
"base_seconds": 11.189,
|
||||
"outcome": "killed"
|
||||
},
|
||||
{
|
||||
"code": 1,
|
||||
"timeout": false,
|
||||
"seconds": 0.214,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M39.log",
|
||||
"id": "M39",
|
||||
"base_seconds": 0.215,
|
||||
"outcome": "killed"
|
||||
},
|
||||
{
|
||||
"code": 1,
|
||||
"timeout": false,
|
||||
"seconds": 0.214,
|
||||
"log": "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/run5-gate/changes-resume/M40.log",
|
||||
"id": "M40",
|
||||
"base_seconds": 0.265,
|
||||
"outcome": "killed"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 factory refuses retired TCP", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 factory refuses retired TCP and a value after the socket marker
|
||||
ok 1 - row253 factory refuses retired TCP and a value after the socket marker
|
||||
---
|
||||
duration_ms: 38.357381
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 194.512914
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 factory refuses retired TCP", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,37 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 factory refuses retired TCP and a value after the socket marker
|
||||
not ok 1 - row253 factory refuses retired TCP and a value after the socket marker
|
||||
---
|
||||
duration_ms: 22.089268
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:568:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
The input did not match the regular expression /case2-unit.sh retires tester TCP; use --tester-socket/. Input:
|
||||
|
||||
'case2-unit: unknown serve flag: --tester-port\n'
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
case2-unit: unknown serve flag: --tester-port
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:293:10)
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:570:3)
|
||||
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 147.615863
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 installer refuses unsafe location and query facts", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,36 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 installer refuses unsafe location and query facts before unit writes
|
||||
not ok 1 - row253 installer refuses unsafe location and query facts before unit writes
|
||||
---
|
||||
duration_ms: 3780.354212
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:136:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gTLW/case2-unit-Kq7Byl/units/[email protected] and /mnt/storage/scratch/tmp/gTLW/case2-unit-Kq7Byl/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started [email protected], then mosaic-webui.service
|
||||
|
||||
|
||||
0 !== 1
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected: 1
|
||||
actual: 0
|
||||
operator: 'strictEqual'
|
||||
stack: |-
|
||||
refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:292:10)
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:159:39)
|
||||
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 3936.333695
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 installer refuses unsafe location and query facts", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,36 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 installer refuses unsafe location and query facts before unit writes
|
||||
not ok 1 - row253 installer refuses unsafe location and query facts before unit writes
|
||||
---
|
||||
duration_ms: 3754.732926
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:136:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gTLW/case2-unit-HFfMMK/units/[email protected] and /mnt/storage/scratch/tmp/gTLW/case2-unit-HFfMMK/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started [email protected], then mosaic-webui.service
|
||||
|
||||
|
||||
0 !== 1
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected: 1
|
||||
actual: 0
|
||||
operator: 'strictEqual'
|
||||
stack: |-
|
||||
refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:292:10)
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:159:39)
|
||||
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 3900.369822
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "a bad args file refuses", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason
|
||||
ok 1 - row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason
|
||||
---
|
||||
duration_ms: 151.01654
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 290.237122
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "a bad args file refuses", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "a bad args file refuses", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,64 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason
|
||||
not ok 1 - row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason
|
||||
---
|
||||
duration_ms: 880.4584
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:673:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
no tester socket: F1 units-user pass [email protected] and mosaic-webui.service are active as mosaic (uid 997)
|
||||
F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200
|
||||
F3 tester-reply pass chief replied to case1-accept-31b4eb967654
|
||||
F4 precheck pass case2-precheck.sh --profile factory exits 0
|
||||
F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)'
|
||||
F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)'
|
||||
F7 pm-live pass one live launch: pm run r-0002
|
||||
F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file'
|
||||
F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1"
|
||||
F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0
|
||||
F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent
|
||||
P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53.
|
||||
P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent
|
||||
P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines
|
||||
P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve
|
||||
P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis)
|
||||
P6 group-members closed sudo holds only localadmin, and docker and lxd have no members
|
||||
P7 sudoers-d closed no file under /etc/sudoers.d names mosaic
|
||||
P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock
|
||||
P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member
|
||||
P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains
|
||||
P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names [email protected]
|
||||
count pass 11
|
||||
count FAIL 0
|
||||
count closed 7
|
||||
count accepted Q182+Q183 1
|
||||
count accepted Q183 1
|
||||
count accepted mos-1096 1
|
||||
count unnamed 1
|
||||
case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos
|
||||
|
||||
|
||||
0 !== 2
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected: 2
|
||||
actual: 0
|
||||
operator: 'strictEqual'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:692:12)
|
||||
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 1015.475719
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "a bad args file refuses", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,64 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason
|
||||
not ok 1 - row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason
|
||||
---
|
||||
duration_ms: 1010.319462
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:673:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
socket value: F1 units-user pass [email protected] and mosaic-webui.service are active as mosaic (uid 997)
|
||||
F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200
|
||||
F3 tester-reply pass chief replied to case1-accept-308e5e4db110
|
||||
F4 precheck pass case2-precheck.sh --profile factory exits 0
|
||||
F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)'
|
||||
F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)'
|
||||
F7 pm-live pass one live launch: pm run r-0002
|
||||
F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file'
|
||||
F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1"
|
||||
F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0
|
||||
F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent
|
||||
P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53.
|
||||
P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent
|
||||
P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines
|
||||
P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve
|
||||
P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis)
|
||||
P6 group-members closed sudo holds only localadmin, and docker and lxd have no members
|
||||
P7 sudoers-d closed no file under /etc/sudoers.d names mosaic
|
||||
P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock
|
||||
P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member
|
||||
P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains
|
||||
P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names [email protected]
|
||||
count pass 11
|
||||
count FAIL 0
|
||||
count closed 7
|
||||
count accepted Q182+Q183 1
|
||||
count accepted Q183 1
|
||||
count accepted mos-1096 1
|
||||
count unnamed 1
|
||||
case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos
|
||||
|
||||
|
||||
0 !== 2
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected: 2
|
||||
actual: 0
|
||||
operator: 'strictEqual'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:692:12)
|
||||
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 1122.663526
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 acceptance rejects bad config", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 acceptance rejects bad config and unsupported copies before talk
|
||||
ok 1 - row253 acceptance rejects bad config and unsupported copies before talk
|
||||
---
|
||||
duration_ms: 1875.517959
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 1988.985784
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 acceptance rejects bad config", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,64 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 acceptance rejects bad config and unsupported copies before talk
|
||||
not ok 1 - row253 acceptance rejects bad config and unsupported copies before talk
|
||||
---
|
||||
duration_ms: 2162.891467
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:291:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
failed: F1 units-user pass [email protected] and mosaic-webui.service are active as mosaic (uid 997)
|
||||
F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200
|
||||
F3 tester-reply pass chief replied to case1-accept-a861b9eeb0d5
|
||||
F4 precheck pass case2-precheck.sh --profile factory exits 0
|
||||
F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)'
|
||||
F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)'
|
||||
F7 pm-live pass one live launch: pm run r-0002
|
||||
F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file'
|
||||
F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1"
|
||||
F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0
|
||||
F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent
|
||||
P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53.
|
||||
P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent
|
||||
P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines
|
||||
P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve
|
||||
P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis)
|
||||
P6 group-members closed sudo holds only localadmin, and docker and lxd have no members
|
||||
P7 sudoers-d closed no file under /etc/sudoers.d names mosaic
|
||||
P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock
|
||||
P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member
|
||||
P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains
|
||||
P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names [email protected]
|
||||
count pass 11
|
||||
count FAIL 0
|
||||
count closed 7
|
||||
count accepted Q182+Q183 1
|
||||
count accepted Q183 1
|
||||
count accepted mos-1096 1
|
||||
count unnamed 1
|
||||
case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos
|
||||
|
||||
|
||||
0 !== 2
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected: 2
|
||||
actual: 0
|
||||
operator: 'strictEqual'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:302:12)
|
||||
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 2285.724494
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 P8 refuses", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 P8 refuses both retired TCP and board listeners
|
||||
ok 1 - row253 P8 refuses both retired TCP and board listeners
|
||||
---
|
||||
duration_ms: 1857.061499
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 1979.254331
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 P8 refuses", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 P10 refuses unsafe metadata", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
---
|
||||
duration_ms: 12922.519815
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 13043.44002
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 P10 refuses unsafe metadata", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,61 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
not ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
---
|
||||
duration_ms: 851.886835
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:243:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: 'parent-mode'
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
F1 units-user pass [email protected] and mosaic-webui.service are active as mosaic (uid 997)
|
||||
F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200
|
||||
F3 tester-reply pass chief replied to case1-accept-c0576f256e1d
|
||||
F4 precheck pass case2-precheck.sh --profile factory exits 0
|
||||
F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)'
|
||||
F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)'
|
||||
F7 pm-live pass one live launch: pm run r-0002
|
||||
F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file'
|
||||
F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1"
|
||||
F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0
|
||||
F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent
|
||||
P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53.
|
||||
P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent
|
||||
P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines
|
||||
P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve
|
||||
P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis)
|
||||
P6 group-members closed sudo holds only localadmin, and docker and lxd have no members
|
||||
P7 sudoers-d closed no file under /etc/sudoers.d names mosaic
|
||||
P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock
|
||||
P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member
|
||||
P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains
|
||||
P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names [email protected]
|
||||
count pass 11
|
||||
count FAIL 0
|
||||
count closed 7
|
||||
count accepted Q182+Q183 1
|
||||
count accepted Q183 1
|
||||
count accepted mos-1096 1
|
||||
count unnamed 1
|
||||
case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:285:12)
|
||||
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 961.548344
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 P10 refuses unsafe metadata", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,61 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
not ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
---
|
||||
duration_ms: 2249.955562
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:243:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: 'socket-mode'
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
F1 units-user pass [email protected] and mosaic-webui.service are active as mosaic (uid 997)
|
||||
F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200
|
||||
F3 tester-reply pass chief replied to case1-accept-1d6559cbbe4d
|
||||
F4 precheck pass case2-precheck.sh --profile factory exits 0
|
||||
F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)'
|
||||
F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)'
|
||||
F7 pm-live pass one live launch: pm run r-0002
|
||||
F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file'
|
||||
F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1"
|
||||
F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0
|
||||
F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent
|
||||
P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53.
|
||||
P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent
|
||||
P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines
|
||||
P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve
|
||||
P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis)
|
||||
P6 group-members closed sudo holds only localadmin, and docker and lxd have no members
|
||||
P7 sudoers-d closed no file under /etc/sudoers.d names mosaic
|
||||
P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock
|
||||
P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member
|
||||
P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains
|
||||
P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names [email protected]
|
||||
count pass 11
|
||||
count FAIL 0
|
||||
count closed 7
|
||||
count accepted Q182+Q183 1
|
||||
count accepted Q183 1
|
||||
count accepted mos-1096 1
|
||||
count unnamed 1
|
||||
case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:285:12)
|
||||
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 2389.399921
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 P10 refuses unsafe metadata", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,61 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
not ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
---
|
||||
duration_ms: 6119.111773
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:243:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: 'peer-pid'
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
F1 units-user pass [email protected] and mosaic-webui.service are active as mosaic (uid 997)
|
||||
F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200
|
||||
F3 tester-reply pass chief replied to case1-accept-9f0a9525015d
|
||||
F4 precheck pass case2-precheck.sh --profile factory exits 0
|
||||
F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)'
|
||||
F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)'
|
||||
F7 pm-live pass one live launch: pm run r-0002
|
||||
F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file'
|
||||
F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1"
|
||||
F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0
|
||||
F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent
|
||||
P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53.
|
||||
P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent
|
||||
P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines
|
||||
P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve
|
||||
P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis)
|
||||
P6 group-members closed sudo holds only localadmin, and docker and lxd have no members
|
||||
P7 sudoers-d closed no file under /etc/sudoers.d names mosaic
|
||||
P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock
|
||||
P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member
|
||||
P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=555 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains
|
||||
P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names [email protected]
|
||||
count pass 11
|
||||
count FAIL 0
|
||||
count closed 7
|
||||
count accepted Q182+Q183 1
|
||||
count accepted Q183 1
|
||||
count accepted mos-1096 1
|
||||
count unnamed 1
|
||||
case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:285:12)
|
||||
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 6243.376076
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "library refuses a privileged-floor miss", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: library refuses a privileged-floor miss, a bad proof pair and every flag outside its set
|
||||
ok 1 - library refuses a privileged-floor miss, a bad proof pair and every flag outside its set
|
||||
---
|
||||
duration_ms: 322.369564
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 449.842369
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "library refuses a privileged-floor miss", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,36 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: library refuses a privileged-floor miss, a bad proof pair and every flag outside its set
|
||||
not ok 1 - library refuses a privileged-floor miss, a bad proof pair and every flag outside its set
|
||||
---
|
||||
duration_ms: 277.101394
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:501:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: |-
|
||||
expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gTLW/case2-unit-BAjErb/units/[email protected] and /mnt/storage/scratch/tmp/gTLW/case2-unit-BAjErb/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started [email protected], then mosaic-webui.service
|
||||
|
||||
|
||||
0 !== 1
|
||||
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected: 1
|
||||
actual: 0
|
||||
operator: 'strictEqual'
|
||||
stack: |-
|
||||
refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:292:10)
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:526:5)
|
||||
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 394.449643
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 P10 refuses unsafe metadata", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,61 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
not ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
---
|
||||
duration_ms: 4432.823809
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:243:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: 'peer'
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
F1 units-user pass [email protected] and mosaic-webui.service are active as mosaic (uid 997)
|
||||
F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200
|
||||
F3 tester-reply pass chief replied to case1-accept-7ff36518510d
|
||||
F4 precheck pass case2-precheck.sh --profile factory exits 0
|
||||
F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)'
|
||||
F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)'
|
||||
F7 pm-live pass one live launch: pm run r-0002
|
||||
F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file'
|
||||
F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1"
|
||||
F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0
|
||||
F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent
|
||||
P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53.
|
||||
P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent
|
||||
P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines
|
||||
P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve
|
||||
P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis)
|
||||
P6 group-members closed sudo holds only localadmin, and docker and lxd have no members
|
||||
P7 sudoers-d closed no file under /etc/sudoers.d names mosaic
|
||||
P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock
|
||||
P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member
|
||||
P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=998 floor=1024 port=732; hostile same-uid substitution remains
|
||||
P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names [email protected]
|
||||
count pass 11
|
||||
count FAIL 0
|
||||
count closed 7
|
||||
count accepted Q182+Q183 1
|
||||
count accepted Q183 1
|
||||
count accepted mos-1096 1
|
||||
count unnamed 1
|
||||
case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:285:12)
|
||||
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 4552.422554
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 P10 refuses unsafe metadata", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,61 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
not ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
---
|
||||
duration_ms: 8443.132209
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:243:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: 'peer-malformed'
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
F1 units-user pass [email protected] and mosaic-webui.service are active as mosaic (uid 997)
|
||||
F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200
|
||||
F3 tester-reply pass chief replied to case1-accept-74d9c733ba72
|
||||
F4 precheck pass case2-precheck.sh --profile factory exits 0
|
||||
F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)'
|
||||
F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)'
|
||||
F7 pm-live pass one live launch: pm run r-0002
|
||||
F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file'
|
||||
F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1"
|
||||
F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0
|
||||
F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent
|
||||
P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53.
|
||||
P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent
|
||||
P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines
|
||||
P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve
|
||||
P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis)
|
||||
P6 group-members closed sudo holds only localadmin, and docker and lxd have no members
|
||||
P7 sudoers-d closed no file under /etc/sudoers.d names mosaic
|
||||
P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock
|
||||
P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member
|
||||
P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains
|
||||
P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names [email protected]
|
||||
count pass 11
|
||||
count FAIL 0
|
||||
count closed 7
|
||||
count accepted Q182+Q183 1
|
||||
count accepted Q183 1
|
||||
count accepted mos-1096 1
|
||||
count unnamed 1
|
||||
case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:285:12)
|
||||
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 8595.291832
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 P10 refuses unsafe metadata", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,61 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
not ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
---
|
||||
duration_ms: 8038.103105
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:243:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: 'python-not-elf'
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
F1 units-user pass [email protected] and mosaic-webui.service are active as mosaic (uid 997)
|
||||
F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200
|
||||
F3 tester-reply pass chief replied to case1-accept-c7b3bc2eefa7
|
||||
F4 precheck pass case2-precheck.sh --profile factory exits 0
|
||||
F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)'
|
||||
F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)'
|
||||
F7 pm-live pass one live launch: pm run r-0002
|
||||
F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file'
|
||||
F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1"
|
||||
F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0
|
||||
F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent
|
||||
P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53.
|
||||
P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent
|
||||
P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines
|
||||
P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve
|
||||
P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis)
|
||||
P6 group-members closed sudo holds only localadmin, and docker and lxd have no members
|
||||
P7 sudoers-d closed no file under /etc/sudoers.d names mosaic
|
||||
P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock
|
||||
P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member
|
||||
P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains
|
||||
P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names [email protected]
|
||||
count pass 11
|
||||
count FAIL 0
|
||||
count closed 7
|
||||
count accepted Q182+Q183 1
|
||||
count accepted Q183 1
|
||||
count accepted mos-1096 1
|
||||
count unnamed 1
|
||||
case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:285:12)
|
||||
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 8176.67433
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 P10 refuses unsafe metadata", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,61 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
not ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
|
||||
---
|
||||
duration_ms: 10817.188496
|
||||
type: 'test'
|
||||
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:243:1'
|
||||
failureType: 'testCodeFailure'
|
||||
error: 'changed-inode'
|
||||
code: 'ERR_ASSERTION'
|
||||
name: 'AssertionError'
|
||||
expected:
|
||||
actual: |-
|
||||
F1 units-user pass [email protected] and mosaic-webui.service are active as mosaic (uid 997)
|
||||
F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200
|
||||
F3 tester-reply pass chief replied to case1-accept-8c47b1fdc391
|
||||
F4 precheck pass case2-precheck.sh --profile factory exits 0
|
||||
F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)'
|
||||
F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)'
|
||||
F7 pm-live pass one live launch: pm run r-0002
|
||||
F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file'
|
||||
F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1"
|
||||
F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0
|
||||
F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent
|
||||
P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53.
|
||||
P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent
|
||||
P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines
|
||||
P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve
|
||||
P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis)
|
||||
P6 group-members closed sudo holds only localadmin, and docker and lxd have no members
|
||||
P7 sudoers-d closed no file under /etc/sudoers.d names mosaic
|
||||
P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock
|
||||
P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member
|
||||
P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains
|
||||
P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names [email protected]
|
||||
count pass 11
|
||||
count FAIL 0
|
||||
count closed 7
|
||||
count accepted Q182+Q183 1
|
||||
count accepted Q183 1
|
||||
count accepted mos-1096 1
|
||||
count unnamed 1
|
||||
case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos
|
||||
|
||||
operator: 'match'
|
||||
stack: |-
|
||||
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:285:12)
|
||||
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 10937.269709
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 factory socket uses actual config", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 factory socket uses actual config and target-uid query without widening hardening
|
||||
ok 1 - row253 factory socket uses actual config and target-uid query without widening hardening
|
||||
---
|
||||
duration_ms: 391.157771
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 552.748836
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "320", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 factory socket uses actual config", "packages/cli/tests/case2-unit.test.mjs"]
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 socket observation uses configured root", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1,16 +0,0 @@
|
||||
TAP version 13
|
||||
# Subtest: row253 socket observation uses configured root, metadata and the Console peer without sending bytes
|
||||
ok 1 - row253 socket observation uses configured root, metadata and the Console peer without sending bytes
|
||||
---
|
||||
duration_ms: 914.915689
|
||||
type: 'test'
|
||||
...
|
||||
1..1
|
||||
# tests 1
|
||||
# suites 0
|
||||
# pass 1
|
||||
# fail 0
|
||||
# cancelled 0
|
||||
# skipped 0
|
||||
# todo 0
|
||||
# duration_ms 1026.527806
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 socket observation uses configured root", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
@@ -1 +0,0 @@
|
||||
["timeout", "-k", "10", "418", "node", "--test", "--test-reporter=tap", "--test-name-pattern", "row253 P10 refuses unsafe metadata", "packages/cli/tests/case1-accept.test.mjs"]
|
||||
Loaded 100 of 1530 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user