Refuse non-ASCII proxy management keys before initialization
This commit is contained in:
1 parent
d1f6f2b199
commit
61ebf2c34d
195 files changed
+10517
-54
No files matched your search
@@ -5578,3 +5578,7 @@ claim. Receipts and limitations in agents/lena/work/queue-296/BUILD.md and run-r
|
||||
2026-10-24 — Magica row329 P1 (#1827, Vikunja237): beginning pinned model-proxy fetch/init/client/unit build at 7fe32d722, under mos-1600/1601. Acceptance uses only fresh temp roots and unshare -rn; live instance and host proxy excluded. Evidence agents/magica/work/queue-329/BUILD.md.
|
||||
|
||||
2026-10-24 — Magica row329 P1 (#1827): final builder checks green: model-proxy61/61, bus1018/1018, CLI999pass+1listed federation skip, pinned-copy10/10, config55/55 and federation runner1/1. Final unit-config fix verified by two new tests and all direct CLI readers. Original F7 red, Mos1604 diagnostic and Mos1605 unchanged rerun are preserved; cause unknown, landing independent. Q250 drops the panel forward; PIN8.0.42/panel1.26.7 unchanged. Evidence agents/magica/work/queue-329/BUILD.md.
|
||||
|
||||
2026-10-24 — Magica row329 round2 (#1827): Boyd B1 tightens management keys to printable non-space ASCII before init creates state; new whole-tree refusal cases first reproduced the defect. Header check retained, no old assertions edited. N1 outer Docker count correction, N3 stale-lock recovery and N4 34-code coverage docs included. Cleared dependency-reader gate running; two stand-in over-selections disclosed and removed from the plan per sage-4277, F7 cause unknown. Evidence agents/magica/work/queue-329/BUILD.md.
|
||||
|
||||
2026-10-24 — Magica row329 R2 (#1827): B1 ASCII-only management key fix verified with complete-tree refusals and positive auth control; package66/66,30bus readers261/261,49CLI readers726/726,config55/55, no required skip/failure. N1 corrects R1 bus total to1019; N3 stale-lock guidance and N4 34-code inventory corrected. Two over-selected file runs are recorded separately, with no F7 inference; cause unknown/Vikunja625. Old502 test/helper files byte-identical, slot returned to Sage. Evidence agents/magica/work/queue-329/BUILD.md.
|
||||
@@ -243,7 +243,7 @@ Static pre-gate review complete; source/test syntax and git diff--check clean.
|
||||
Key validation includes HTTP Authorization-header validity before initial files
|
||||
are created, so a key the HTTP client cannot send never leaves partial init state.
|
||||
This adds no new refusal code (proxy-key-invalid / proxy-client-invalid).
|
||||
All30 new refusal codes have named coverage in new tests; execution is pending.
|
||||
All34 covered refusal codes (30 proxy-prefixed and4 reused bus codes) have named coverage in new tests; execution was pending at this entry.
|
||||
No old tests changed; no npm/test runs; no commit/push yet. At this point the
|
||||
remaining work is the slot-gated execution and any justified fixes/review handoff.
|
||||
|
||||
@@ -589,3 +589,182 @@ e7fa0ff14ca8087fa1733a69e932169099e3a16e5077557ee836f7aa354bc9fb readers.txt
|
||||
This metadata-only correction needs no suite rerun. Panel acceptance records
|
||||
and every product/test source remain unchanged. The final manifest is regenerated
|
||||
after this correction, and final push checks run against the resulting tip.
|
||||
|
||||
## Round2: B1, N1 and Dewey documentation notes
|
||||
|
||||
Sage-4274/4276 authorizes only printable non-space ASCII with retained header
|
||||
validation, full-tree refusal evidence, ASCII control, corrected counts and safe
|
||||
stale-lock docs. Dewey round1 approval does not remove Boyd B1; round2 is required.
|
||||
No bind experiment (P7), fetch human guard (out of scope), PIN/fetch or D6 change.
|
||||
|
||||
Move first: initial attempt refused Dewey review-record lock. Retried the exact
|
||||
same op without unlock/timeout; magica-329-r2-start-0001 succeeded rev4031,
|
||||
in-review to in-progress. No product/test edit preceded the successful move.
|
||||
|
||||
New file management-key-encoding.test.mjs exercised initializeProxy against
|
||||
installed fixtures with whole config/data inventories (all paths, types, inode/
|
||||
device identity, modes, owner/group, mtime/ctime and file sizes/SHA256; atime
|
||||
excluded because observing files can change it). Each invalid case asserts the
|
||||
named proxy-key-invalid refusal and complete inventory equality. Latin-1, leading,
|
||||
trailing and internal-space cases each have their own test. ASCII control verifies
|
||||
existing files and expected new paths, then authenticates through real loopback
|
||||
HTTP with ManagementClient. Every supplied key is under24characters.
|
||||
|
||||
Before source fix, whole new file:1positive pass,4expected refusal/inventory
|
||||
failures,0skip/cancel (gate-r2/B1-red.txt). Then common.mjs alone changed the
|
||||
acceptance predicate to /^[\x21-\x7e]{1,4096}$/; header validation remains.
|
||||
|
||||
N1: final-counts.py now selects the last/outer summary for every count. Existing
|
||||
Docker log remains unchanged; its outer2/2 replaces nested1/1, correcting the
|
||||
round1 bus sum to1019/1019. No Docker rerun for this documentation correction.
|
||||
N4: coverage is34codes =30proxy-prefixed +4reused bus codes; B1 adds cases under
|
||||
existing proxy-key-invalid, so adds0new code names. refusal-inventory.txt lists
|
||||
all34 explicitly. N3: README gives the human-only stale-lock preconditions and
|
||||
removal command, retaining partial/completed state and failing closed if unsure.
|
||||
|
||||
R2 reader selection (same settings, whole files only) follows actual runtime,
|
||||
CLI/main/config/host and loader imports/reads, including joined/full paths and
|
||||
stack-release helper consumers; literal stand-in WebUI CLI paths do not qualify.
|
||||
Full matching lines are r2-readers.txt. Selected81files:
|
||||
|
||||
```text
|
||||
packages/bus/tests/access-revoke.test.mjs
|
||||
packages/bus/tests/chief-of-staff.test.mjs
|
||||
packages/bus/tests/citation-runtime.test.mjs
|
||||
packages/bus/tests/creative.test.mjs
|
||||
packages/bus/tests/credential-verbs.test.mjs
|
||||
packages/bus/tests/daily-quota-runtime.test.mjs
|
||||
packages/bus/tests/grant-scope-runtime.test.mjs
|
||||
packages/bus/tests/host-run.test.mjs
|
||||
packages/bus/tests/instances-verb.test.mjs
|
||||
packages/bus/tests/library-credential.test.mjs
|
||||
packages/bus/tests/library-lookups.test.mjs
|
||||
packages/bus/tests/library-sync.test.mjs
|
||||
packages/bus/tests/library.test.mjs
|
||||
packages/bus/tests/lifecycle-revoke.test.mjs
|
||||
packages/bus/tests/lifecycle-verbs.test.mjs
|
||||
packages/bus/tests/limit-checks.test.mjs
|
||||
packages/bus/tests/limits-runtime.test.mjs
|
||||
packages/bus/tests/limits.test.mjs
|
||||
packages/bus/tests/model-proxy.test.mjs
|
||||
packages/bus/tests/plugins-verb.test.mjs
|
||||
packages/bus/tests/processing-runtime.test.mjs
|
||||
packages/bus/tests/project-runtime.test.mjs
|
||||
packages/bus/tests/publish.test.mjs
|
||||
packages/bus/tests/reload.test.mjs
|
||||
packages/bus/tests/routes-verb.test.mjs
|
||||
packages/bus/tests/tasks.test.mjs
|
||||
packages/bus/tests/tester-writes.test.mjs
|
||||
packages/bus/tests/tester.test.mjs
|
||||
packages/bus/tests/usage-runtime.test.mjs
|
||||
packages/bus/tests/web.test.mjs
|
||||
packages/cli/tests/access-boot.test.mjs
|
||||
packages/cli/tests/access.test.mjs
|
||||
packages/cli/tests/app.test.mjs
|
||||
packages/cli/tests/boot-status.test.mjs
|
||||
packages/cli/tests/case1-accept.test.mjs
|
||||
packages/cli/tests/case2-unit.test.mjs
|
||||
packages/cli/tests/channel-cli.test.mjs
|
||||
packages/cli/tests/cli.test.mjs
|
||||
packages/cli/tests/compactions-launch.test.mjs
|
||||
packages/cli/tests/config.test.mjs
|
||||
packages/cli/tests/credentials.test.mjs
|
||||
packages/cli/tests/federation-acceptance.test.mjs
|
||||
packages/cli/tests/follow.test.mjs
|
||||
packages/cli/tests/git-socket.test.mjs
|
||||
packages/cli/tests/grants-scope.test.mjs
|
||||
packages/cli/tests/grants.test.mjs
|
||||
packages/cli/tests/host.test.mjs
|
||||
packages/cli/tests/hosts.test.mjs
|
||||
packages/cli/tests/idle-stop-race.test.mjs
|
||||
packages/cli/tests/instances.test.mjs
|
||||
packages/cli/tests/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/model-proxy.test.mjs
|
||||
packages/cli/tests/names.test.mjs
|
||||
packages/cli/tests/optional-tracker.test.mjs
|
||||
packages/cli/tests/other-tree.test.mjs
|
||||
packages/cli/tests/processing-cli.test.mjs
|
||||
packages/cli/tests/project-name-repo.test.mjs
|
||||
packages/cli/tests/project.test.mjs
|
||||
packages/cli/tests/publish-socket.test.mjs
|
||||
packages/cli/tests/revoke-window.test.mjs
|
||||
packages/cli/tests/session-clear.test.mjs
|
||||
packages/cli/tests/session-cli.test.mjs
|
||||
packages/cli/tests/session-launch.test.mjs
|
||||
packages/cli/tests/stack-copy.test.mjs
|
||||
packages/cli/tests/stack-instances.test.mjs
|
||||
packages/cli/tests/stack-release-external.test.mjs
|
||||
packages/cli/tests/stack-release.test.mjs
|
||||
packages/cli/tests/stack-upgrade.test.mjs
|
||||
packages/cli/tests/tester-reads.test.mjs
|
||||
packages/cli/tests/tester-threads.test.mjs
|
||||
packages/cli/tests/tester.test.mjs
|
||||
packages/cli/tests/thread-cli.test.mjs
|
||||
packages/cli/tests/thread-launch.test.mjs
|
||||
packages/cli/tests/thread-revoke.test.mjs
|
||||
packages/cli/tests/trackers-boot.test.mjs
|
||||
packages/cli/tests/usage.test.mjs
|
||||
packages/cli/tests/verbs.test.mjs
|
||||
```
|
||||
|
||||
### Reader-selector correction during R2
|
||||
|
||||
The81-file list itself was explicit, but its exclusion prose was wrong: a full
|
||||
CLI/config-path match also selected case1-accept and case2-unit fixture writes.
|
||||
case1-accept ran once and passed53/53 in247.863s; case2-unit was already running
|
||||
when identified. This is over-selection, not a new F7 diagnostic or a cause
|
||||
finding. No old test/source/assertion changed. The two stand-in false positives
|
||||
are marked in r2-readers.txt; their actual receipts remain in the execution
|
||||
inventory. Sage notified magica-0031. No repeat of either is planned.
|
||||
|
||||
Sage-4277: let the already-running case2-unit finish to avoid orphaning its
|
||||
children, then no more stand-in false positives. It completed {'tests': 47, 'pass': 47, 'fail': 0, 'skipped': 0, 'cancelled': 0} in71.829s, rc0.
|
||||
The remainder of the81-file list is explicitly cleared. The execution snapshot
|
||||
is r2-reader-files.executed.json; the current planned list r2-reader-files.json
|
||||
drops those two and has79files. Neither will be repeated.
|
||||
|
||||
Exact Case1 fact: R2 case1-accept53/53 in247.863s, through over-selection, not
|
||||
as an F7 diagnostic. This pass is not presented as evidence about F7 either
|
||||
way. F7 cause stays unknown (Vikunja625); the one approved unchanged rerun was
|
||||
mos-1605, recorded separately. Sage is informing Mos about the over-selection.
|
||||
|
||||
R2 B1 first-red stdout raw retained at /mnt/storage/scratch/tmp/YtB1cu/B1-red.txt, SHA256 f678679f9df80fbc0704b4401647b9b750388af366b15b4eaf926eca1310c00d. Repository B1-red.txt strips trailing whitespace only; result remains 5 tests,1pass,4fail. Each other R2 receipt records its own raw path/hash and the same review-copy normalization.
|
||||
|
||||
Static R2 preservation check: all502 files under packages/*/tests present at base8bb5b3c73 were compared as raw bytes with git show; zero differences. The R2 test addition is management-key-encoding.test.mjs. Product source diff since5f2ef9647 is only common.mjs validManagementKey predicate; validateHeaderValue remains. PIN and fetch are unchanged.
|
||||
|
||||
## Round2 final verification and slot return
|
||||
|
||||
Gate completed 2026-10-24T21:54:29.245Z, started21:31:10.938Z. All88 actual
|
||||
commands rc0/nice19; each launch used a fresh shell mktemp TMPDIR under
|
||||
/mnt/storage/scratch/tmp, MOSAIC_REQUIRE_EDITOR_BUILD=1 and timeout-k10.
|
||||
There were86 required commands:6 whole model-proxy files,79 whole dependency
|
||||
readers (30bus,49cli) and config. The2 over-selection runs remain separate.
|
||||
|
||||
Required R2 results:
|
||||
- model-proxy:6files,66/66,0fail/skip/cancel.
|
||||
- bus readers:30files,261/261,0fail/skip/cancel.
|
||||
- CLI readers:49files,726/726,0fail/skip/cancel. This includes the official
|
||||
federation acceptance runner1/1 with cleanup, rather than its skipped wrapper.
|
||||
- test-config.sh:55/55.
|
||||
|
||||
No old-test red or rerun occurred. B1 first-red1pass/4fail is preserved separately
|
||||
from these fixed results. The over-selected case1-accept53/53 in247.863s and
|
||||
case2-unit47/47 in71.829s are facts only; the case1 pass is not an F7 diagnostic
|
||||
or evidence about F7 either way. F7 cause unknown, Vikunja625. No repeats.
|
||||
|
||||
FINAL-COUNTS.json now explicitly distinguishes R1 whole-suite results (bus
|
||||
corrected1019/1019; CLI999pass+1listed skip) from R2 targeted coverage. Model-proxy
|
||||
is current66/66, with R1's61/61 preserved separately. R2 runs.jsonl maps every
|
||||
command to its count summary, raw log/hash, review copy/hash, timing and priority.
|
||||
The R1 Docker receipt selects outer2/2, not nested1/1. No new whole bus/CLI run
|
||||
is claimed; those remain Sage's landing gate, which must independently pass.
|
||||
|
||||
Slot returned to Sage in magica-0032. No further tests run. R2 addresses Boyd B1,
|
||||
N1 and Dewey N3/N4 only. The pinned release/panel/fetch remain unchanged. Old
|
||||
assertions and all502 existing base test/helper files remain byte-identical.
|
||||
R2 manifest is regenerated over every changed regular file against8bb5b3c73,
|
||||
except MANIFEST.sha256 itself; review source and plain-text receipts are included.
|
||||
@@ -1,6 +1,6 @@
|
||||
f34e093e8c711c5d568b1d5128d29b9162e5507be1172cc76429ab314cdb3e72 BUILD-LOG.md
|
||||
5490c37b354725821b98aaf110aa162f31512531d62a8c115ccb958add22f1d4 agents/magica/work/queue-329/BUILD.md
|
||||
1d6886ad5a44f7c9bdb8df9c263993f1edafd909aa195da11a7a11e566ae41ba agents/magica/work/queue-329/REVIEW.md
|
||||
0906c6ffb3fb61a4af50babe2a299862e5276ccac839610ea9c432c9cf1f9245 BUILD-LOG.md
|
||||
cce90a2e3458fe17383a19a26b340201196d4dc0d58248032521847af424efe2 agents/magica/work/queue-329/BUILD.md
|
||||
4eacff93480cc340d38bce151f93897567ca8fcd95e660ca81cc5d2d35a5351a agents/magica/work/queue-329/REVIEW.md
|
||||
f5ceab9c8ddbc6474a088426b179074fc8076ef307f148ac17664b4d82774a20 agents/magica/work/queue-329/acceptance-api-only.txt
|
||||
5c3e8d45fe644c442ffbd030c7c8b1d315368f1955fcc2ec2b8b9aba269b1ec3 agents/magica/work/queue-329/acceptance-final.txt
|
||||
3ef44d7e6ab26ce1f7e8a9b31c0fc69f71d0f9331e860908e97ded398bd3216d agents/magica/work/queue-329/acceptance-probe-1.mjs
|
||||
@@ -22,12 +22,192 @@ ca054157c6bb36f40dc6c7a0942d4195fccdfc87b1a77062fb44f6db3fd84c2d agents/magica/
|
||||
66ac3eda1c48dd7eff9d87623cfd89ed91eddf8af2a53ea15c91ba9564036882 agents/magica/work/queue-329/development-gate/npm-webui.txt
|
||||
1cae643fc1de823a04293ec68cfc5286903ab58bf8e16d6a63acbf4f34cac13e agents/magica/work/queue-329/development-gate/runs.jsonl
|
||||
1e84defa58b9e975217a497720b6e5533effbb9cfe49d024c30031f5f8f4a5b6 agents/magica/work/queue-329/download-sha256.txt
|
||||
46314ae67d564d2bb6cf9c7571bdde9481570c5467499e040b951c30d0ce6dc1 agents/magica/work/queue-329/final-counts.py
|
||||
602bd0c5171d35aa0f7462a77459d2d16de72e201119feef5437cb956486d707 agents/magica/work/queue-329/final-counts.py
|
||||
1c5ae4b57246985ba1dea30784481f0407877ae373d8e6e00f7a9317731835ff agents/magica/work/queue-329/final-reader-progress.txt
|
||||
60a80c5f01c17605cf371fc4eacf851471109edf0b65e830e029b661d51fffcb agents/magica/work/queue-329/gate-progress.txt
|
||||
509302f982d6b7446902553d01d5760a4eb865e206d84d86674bc7bc8f851f72 agents/magica/work/queue-329/gate-r2-progress.txt
|
||||
c92037ede5c10bbc966c0751e5a1c4219074d1cbc97b7c92c3e81cd4d95569c6 agents/magica/work/queue-329/gate-r2.py
|
||||
a6b58ccf9435b288676bfc7d3a153be19292708aa474268be8b8f1d08ee2554b agents/magica/work/queue-329/gate-r2/B1-red.txt
|
||||
35b36a325aca1bb4a62010904efb65d624079c0c82167ae0f4624862e5280ff0 agents/magica/work/queue-329/gate-r2/bus-access-revoke.test.load.jsonl
|
||||
1e4692e57d2a0381a9c05ad6a6f136c63d149263d52f4bf0cf194adfb5c3a28f agents/magica/work/queue-329/gate-r2/bus-access-revoke.test.txt
|
||||
eb5b96b3a55fedcb7edfa7c29258e36c684615cf2edcb46c6b69ecb96d1ef6c0 agents/magica/work/queue-329/gate-r2/bus-chief-of-staff.test.load.jsonl
|
||||
ac5e9121ff899160842f8196969356b5af2b1d8305bc14a4a05f0c8e7472a55b agents/magica/work/queue-329/gate-r2/bus-chief-of-staff.test.txt
|
||||
f38389ac61ac74907417f44884d5f21cf4029d5a67726ef523d5cfac09564065 agents/magica/work/queue-329/gate-r2/bus-citation-runtime.test.load.jsonl
|
||||
906f79dcd35767db18fcc9cc58ff354fd04c76fb8f4442a36840dbe6c1ec4687 agents/magica/work/queue-329/gate-r2/bus-citation-runtime.test.txt
|
||||
c4f99a960960200156c3c2010a875aecf3d00021bee45786814496ca60dcd43f agents/magica/work/queue-329/gate-r2/bus-creative.test.load.jsonl
|
||||
a69dc69088b07e7e1763feffce69ef032df334557505f2afcefdfb58c0d1c17d agents/magica/work/queue-329/gate-r2/bus-creative.test.txt
|
||||
b3533e3d1a52a11991d34fb0719a6c11e0847277c58ee862548e4ba1363422c5 agents/magica/work/queue-329/gate-r2/bus-credential-verbs.test.load.jsonl
|
||||
5357a7f0eec86a68c8491d1af16547457d7fe0ebd72fc5c6a509007c7f7d4030 agents/magica/work/queue-329/gate-r2/bus-credential-verbs.test.txt
|
||||
8eb083b718bba95854fd14d1bd1cc9b81874cb35825feda04fee25003ddd64d6 agents/magica/work/queue-329/gate-r2/bus-daily-quota-runtime.test.load.jsonl
|
||||
fe12a7dd9d274386f7416db0858082dd77af1c0df6344d2460fca5a13a94b924 agents/magica/work/queue-329/gate-r2/bus-daily-quota-runtime.test.txt
|
||||
4688d8b719fd2c45f6c40e7e40cab50b3996390a5972e6c0e02b9d4a1b98f913 agents/magica/work/queue-329/gate-r2/bus-grant-scope-runtime.test.load.jsonl
|
||||
d314d364cc6b84672a92151c8c601dad438414a49ec27f15e94594ab730ac3f6 agents/magica/work/queue-329/gate-r2/bus-grant-scope-runtime.test.txt
|
||||
86e9148ce2a2194656d1f3102b6827718b4682ce71fb440af157c4638f54b8e1 agents/magica/work/queue-329/gate-r2/bus-host-run.test.load.jsonl
|
||||
186da42dee80fa074f0ddbb05fe78eb680dbe7177e63111928768b71f6248743 agents/magica/work/queue-329/gate-r2/bus-host-run.test.txt
|
||||
aab757cebf12c84c6146668c28282b3977d0634d189efbf0b9ce409892957c27 agents/magica/work/queue-329/gate-r2/bus-instances-verb.test.load.jsonl
|
||||
a29fe9471a3034501c9765289f77e5a6fc08702c7cc02035d67745b01064e6f7 agents/magica/work/queue-329/gate-r2/bus-instances-verb.test.txt
|
||||
1737c1565c1c99a88f341d8ce494d6596bf9a42e9c6118cf34e39a8c7804cccc agents/magica/work/queue-329/gate-r2/bus-library-credential.test.load.jsonl
|
||||
5a8db75c9e3a8c5fc526a83db2eecb1dce370c09b191d76a4b6e5e5b2bc49269 agents/magica/work/queue-329/gate-r2/bus-library-credential.test.txt
|
||||
4ffb85b49e2128bb296464943234e79187eda6f576ddd68235546983e77abcc6 agents/magica/work/queue-329/gate-r2/bus-library-lookups.test.load.jsonl
|
||||
f983094b8f5934fb1390cb41a7f93fb67e3bf640ccefe7c22901fef471178341 agents/magica/work/queue-329/gate-r2/bus-library-lookups.test.txt
|
||||
fbfb96b24da5c1ef4d0599d57338a7b6448878bc03ebfc0e6b16f4061206fafe agents/magica/work/queue-329/gate-r2/bus-library-sync.test.load.jsonl
|
||||
ce03b3b0bd0a7dab40cbe07b65708e9c8083b2ea2292a585105257d63b346041 agents/magica/work/queue-329/gate-r2/bus-library-sync.test.txt
|
||||
2138ffc3c1a9fd020df95dbaf2abdb3750b8c969d1c496e4de4f7a5cb9f560df agents/magica/work/queue-329/gate-r2/bus-library.test.load.jsonl
|
||||
f7056b0990446ba4ca02439d888840100197cf721af7cb83366e1845ebedb181 agents/magica/work/queue-329/gate-r2/bus-library.test.txt
|
||||
dbbc3244162687c59f8352a43eb6c83721a71e769fcf465baeb2d3d4c1c289a7 agents/magica/work/queue-329/gate-r2/bus-lifecycle-revoke.test.load.jsonl
|
||||
8164855a74fffbe3ae62e45b0d921571b34e29d87109a62fdedcaa5f5cf91a03 agents/magica/work/queue-329/gate-r2/bus-lifecycle-revoke.test.txt
|
||||
2c249feb0a02ff43d6661c17bb77ca2ecf7cac0871b17a88436539d2d1bbc6ec agents/magica/work/queue-329/gate-r2/bus-lifecycle-verbs.test.load.jsonl
|
||||
d2f5a7993c5d8e31bbf8572651f67fded8ed83cbaddfa5ccba7bad2d61994da0 agents/magica/work/queue-329/gate-r2/bus-lifecycle-verbs.test.txt
|
||||
313901ddf0bc1e123d899d6997e667bffe4e83f4e592678f09c387b58a71e42d agents/magica/work/queue-329/gate-r2/bus-limit-checks.test.load.jsonl
|
||||
04d0337574e4af52414e3bfd63b95d15e2cbbc22c49bfaae5eb8baf4df0ce387 agents/magica/work/queue-329/gate-r2/bus-limit-checks.test.txt
|
||||
a9c0c4c67208df91a0b2049bcc0d5ff2a524cc309777f95716aa1905f236dd08 agents/magica/work/queue-329/gate-r2/bus-limits-runtime.test.load.jsonl
|
||||
aae4e8b12a87bd5679afcd9f4319839c6554fac365723ada9808af9aa9e1c859 agents/magica/work/queue-329/gate-r2/bus-limits-runtime.test.txt
|
||||
b99e18744eab4e71563e103ad54aef46d050b310ae62608c1bf4cebb8f99bf8e agents/magica/work/queue-329/gate-r2/bus-limits.test.load.jsonl
|
||||
df23b3a8e13e0f29c5c81cf067e4a859b2c19fc7b7e0a72cab222444d84eb20d agents/magica/work/queue-329/gate-r2/bus-limits.test.txt
|
||||
b5db0838d9caa08d70138ad688ebd8e83787cefc6cc338a40c4b98b5c9b2cdb9 agents/magica/work/queue-329/gate-r2/bus-model-proxy.test.load.jsonl
|
||||
bfb1b52f8dc03290185ea6b9f1c2a5336b0c8b4959a0b1254a8ff6e86c4d0f6e agents/magica/work/queue-329/gate-r2/bus-model-proxy.test.txt
|
||||
dc1087323e28b29c19c31f4c0bc3d12698bdec83a462fb5130e36eade30e8e31 agents/magica/work/queue-329/gate-r2/bus-plugins-verb.test.load.jsonl
|
||||
a06ab305be09ba71ffad2221d8db9979cd7c9db8cfee9e7a75347620a4f68646 agents/magica/work/queue-329/gate-r2/bus-plugins-verb.test.txt
|
||||
364eb5a8a53e90f2d1e727230cf6f7e9953647d5bb1bf6ea5a7c755e78028d48 agents/magica/work/queue-329/gate-r2/bus-processing-runtime.test.load.jsonl
|
||||
05aeb457bd29666c0fd601f14e81a917935483c483ae29952ba07c168f316a3f agents/magica/work/queue-329/gate-r2/bus-processing-runtime.test.txt
|
||||
356f6ce7929fd3c4f3358fe65d32f59ea3dc456c14202887925f6861fdd9306f agents/magica/work/queue-329/gate-r2/bus-project-runtime.test.load.jsonl
|
||||
a78ffe5c3ce1a213eca5eeae5637eabe03ea564df7fa947a72f85a0d94c3ccb0 agents/magica/work/queue-329/gate-r2/bus-project-runtime.test.txt
|
||||
a93f4fbadc1bf52a8227841b52e03f2bc99e305ea6c65d55904015c025b85074 agents/magica/work/queue-329/gate-r2/bus-publish.test.load.jsonl
|
||||
1f2796d06abac7de85d9658f8c2a53b2934aea7ab518bab1f53479048feb2139 agents/magica/work/queue-329/gate-r2/bus-publish.test.txt
|
||||
17501c06a7d337a49c070f15725d8e839e76a1eeca82e9685521a823991ee8ff agents/magica/work/queue-329/gate-r2/bus-reload.test.load.jsonl
|
||||
192282d8e14ec7ba3314ae1de327646cc6f7deb390472d64781529d4f2a87ae5 agents/magica/work/queue-329/gate-r2/bus-reload.test.txt
|
||||
46ae0cde305c62f0e93e2fb45b5044460605b8eaf31a5dacd4445549f31fcb6c agents/magica/work/queue-329/gate-r2/bus-routes-verb.test.load.jsonl
|
||||
9f33241111d569ae58c4e67f3afe685a537a2dcbfedaa40de89bdee3f17b14b4 agents/magica/work/queue-329/gate-r2/bus-routes-verb.test.txt
|
||||
4efd408702af8abcd8f7b8da1f9cabe6325b48f9becc118223edab2e39a7be2b agents/magica/work/queue-329/gate-r2/bus-tasks.test.load.jsonl
|
||||
14d2238fe88a863d5535217b8a832fc7a23d6662a38787385fa5c7792902cece agents/magica/work/queue-329/gate-r2/bus-tasks.test.txt
|
||||
15383d2e003e4b59393dbfd858124d1103da2d996a75da55fbcb0191fcd152b2 agents/magica/work/queue-329/gate-r2/bus-tester-writes.test.load.jsonl
|
||||
9be764569450aede17b0aeb194933978c07f551ff835543b9c5a171599aec855 agents/magica/work/queue-329/gate-r2/bus-tester-writes.test.txt
|
||||
a81215e5126dbba710dbcdada1f85fa36629b6c3ab76130af7bda91f6f19e1f0 agents/magica/work/queue-329/gate-r2/bus-tester.test.load.jsonl
|
||||
1071a9d1720fc8cb3a81bb4e649480b9ffb70f44cc27df7cd1bdfe5b4b73c832 agents/magica/work/queue-329/gate-r2/bus-tester.test.txt
|
||||
573110378591ba4e8007209cf79e93a2d321268e310a4c18101f2827d64cb4e1 agents/magica/work/queue-329/gate-r2/bus-usage-runtime.test.load.jsonl
|
||||
164803cec01d1a4defd02eb7bada2334406e55ddca88a3f959f34b1fe959c61d agents/magica/work/queue-329/gate-r2/bus-usage-runtime.test.txt
|
||||
ffddbc2d27c3122cbf6472c844d6e28b979bf1c535bdeb5c59dab0184b08e48e agents/magica/work/queue-329/gate-r2/bus-web.test.load.jsonl
|
||||
fc077bfb6f2fdf43f2949741daa6d7d998be5540a2c24935cf41dd37a9168701 agents/magica/work/queue-329/gate-r2/bus-web.test.txt
|
||||
05dc486c84fbbf496f2b2f881ceac1b1bd8fcd864ed0890fbb2ac72bf9a0e9cd agents/magica/work/queue-329/gate-r2/cli-access-boot.test.load.jsonl
|
||||
3744b90a84c5fed8391ec462765c84016f800480aba1866394fda7b8e073334f agents/magica/work/queue-329/gate-r2/cli-access-boot.test.txt
|
||||
dba8a371c2eb7c4f17c77cc37f0a9db6903390440905a206dcadea8aac8a0b10 agents/magica/work/queue-329/gate-r2/cli-access.test.load.jsonl
|
||||
26846bafb2cad7e1ef1eb22c4be6b45be15a5ba8dcb9ac74e676526215264f61 agents/magica/work/queue-329/gate-r2/cli-access.test.txt
|
||||
5e3805442854de1ae0943764761f382b9f86662f74c3a64f5c3d96b1c3a54675 agents/magica/work/queue-329/gate-r2/cli-app.test.load.jsonl
|
||||
a5e98008eccbd4c970eb1177cd2a02149a11a983a3b52bcc6e395911cf3ad650 agents/magica/work/queue-329/gate-r2/cli-app.test.txt
|
||||
add6521dc4b2bb56a60145be7bbc5a1a5538203c2d60888f3159a87da90c5893 agents/magica/work/queue-329/gate-r2/cli-boot-status.test.load.jsonl
|
||||
bb44c42c15a70c24211f9145aa199dee9aa35794bfc360f792ed71a142b8fed1 agents/magica/work/queue-329/gate-r2/cli-boot-status.test.txt
|
||||
05fa77b28a9dd2eae141a272e7e1e7d8ea2ea697241e18d95d1b2a3eac8fb5bf agents/magica/work/queue-329/gate-r2/cli-case1-accept.test.load.jsonl
|
||||
fe812a4c0d8506883c16e9458d888f89298b8d7cf8817eb57defd108fb268aef agents/magica/work/queue-329/gate-r2/cli-case1-accept.test.txt
|
||||
d589b74061c3a05a07949506c34db90511aeb950d80b0815baebfaa03e02fe77 agents/magica/work/queue-329/gate-r2/cli-case2-unit.test.load.jsonl
|
||||
d85ab5112c0e6b4395e318abbd81393e3c533af83f5625ea2470ee641a7cbafe agents/magica/work/queue-329/gate-r2/cli-case2-unit.test.txt
|
||||
6c19f7a21950842ad7910dada9c2ca03a68e36dc0ff565040aa147086086cf25 agents/magica/work/queue-329/gate-r2/cli-channel-cli.test.load.jsonl
|
||||
b58d9c1ceadc06bfb5ba894106b9a8fae2b8cf5b5ee793024247e3ca6c12cb57 agents/magica/work/queue-329/gate-r2/cli-channel-cli.test.txt
|
||||
bb82c1a6039f0ffd3fdd9cf4492236c35417abf097b9a1419e5321f6d5b41c34 agents/magica/work/queue-329/gate-r2/cli-cli.test.load.jsonl
|
||||
f31972c375775c7d8395ddbb8ec50c278842c94938ac38b42cc34adddd26343b agents/magica/work/queue-329/gate-r2/cli-cli.test.txt
|
||||
e2754177db78912a17e2a727d500cfc38c70c63cf2f41707eec77f3bf90b76f2 agents/magica/work/queue-329/gate-r2/cli-compactions-launch.test.load.jsonl
|
||||
076452351ffccf6341b3be24798aa3e3d9ff239079dfff86338cc5c5c553a6c5 agents/magica/work/queue-329/gate-r2/cli-compactions-launch.test.txt
|
||||
0a24b3ee89454858beeddf7086e1f477e72f7ebfa8ff0bf0be0b57397e725845 agents/magica/work/queue-329/gate-r2/cli-config.test.load.jsonl
|
||||
fb64c74ee91d26ce5d9e696d38e6aa53190a123e6e700d6235839f211071ff7c agents/magica/work/queue-329/gate-r2/cli-config.test.txt
|
||||
d25177067b8c27acab71d63f0d4b50be880f43fb53be57811c40bb7db71bc25e agents/magica/work/queue-329/gate-r2/cli-credentials.test.load.jsonl
|
||||
de17d72ef2f432a264f915ee6d0eeecebdb47509b701efeb39cb6e3a623c7889 agents/magica/work/queue-329/gate-r2/cli-credentials.test.txt
|
||||
191f3a3f232dee7e05778ac92ec9aa3f72e7ac42e64525e0710096744a0a478c agents/magica/work/queue-329/gate-r2/cli-federation-acceptance-runner.load.jsonl
|
||||
9159c6b69df64f55608fd6a56ef312fb17c15501f6d2b022010ce4a79d3a66df agents/magica/work/queue-329/gate-r2/cli-federation-acceptance-runner.txt
|
||||
18767504e005105414151a46820e99d4ccb03b213ee6dee02811255095d3697d agents/magica/work/queue-329/gate-r2/cli-follow.test.load.jsonl
|
||||
ed9f7a562321d6097724af8b3863ba9afbf740b27ef704212ea560e691d36431 agents/magica/work/queue-329/gate-r2/cli-follow.test.txt
|
||||
f90bffb351668599119ccb76f894b08ec04d8191ab82c58de408f5f98df3dc88 agents/magica/work/queue-329/gate-r2/cli-git-socket.test.load.jsonl
|
||||
473cedadef1e0ad23ad614f2a33b10e159133d3cda7eef53ac6bb69872185b3c agents/magica/work/queue-329/gate-r2/cli-git-socket.test.txt
|
||||
4ad7d14c33d65b046ef521664910968f4f6bdc35c4fc9cfafe74097793be0fdb agents/magica/work/queue-329/gate-r2/cli-grants-scope.test.load.jsonl
|
||||
5e6efa8110a444bac7d74da8328b6d826de680b84f56ebd19a0285cc9adf0a62 agents/magica/work/queue-329/gate-r2/cli-grants-scope.test.txt
|
||||
fa9ff068d1c9efa881d6a924b328b6617d0aed1c1dbe614647d03bf5330d626e agents/magica/work/queue-329/gate-r2/cli-grants.test.load.jsonl
|
||||
a7efd78270e4e7ef26be72180eb458aff9de84c73b5b3ec8d83838f862184c4b agents/magica/work/queue-329/gate-r2/cli-grants.test.txt
|
||||
544ed664fa34aa456faca31ee7fb8b5d4fde1ef886dc6f9cf512a2ad44d682f4 agents/magica/work/queue-329/gate-r2/cli-host.test.load.jsonl
|
||||
4b234f94e96838fde5714477d37e06af648d20c68775b47c7c81443dfc0cb2ca agents/magica/work/queue-329/gate-r2/cli-host.test.txt
|
||||
f7f4deb64134e3bcc125747ef5a501460d70bb43785997e824def3a367f34032 agents/magica/work/queue-329/gate-r2/cli-hosts.test.load.jsonl
|
||||
5483bf8ada33ee623bd1078e1fd9284280a32619c51f36d56b65006bef63f185 agents/magica/work/queue-329/gate-r2/cli-hosts.test.txt
|
||||
68daa97fbcfa1bc4fd45f2cb6c5aa7b62407d378d1173baf344d28e5e5e5ed66 agents/magica/work/queue-329/gate-r2/cli-idle-stop-race.test.load.jsonl
|
||||
8fd38cefed41f05af3c4bab68edfa9bdcb137d05177fdca9f51382ce875c870c agents/magica/work/queue-329/gate-r2/cli-idle-stop-race.test.txt
|
||||
11f319e8112696c881aa38cfe247054acab3a366186ab316ed8c2b3f592b7bf3 agents/magica/work/queue-329/gate-r2/cli-instances.test.load.jsonl
|
||||
ea156f123f60723867b2d7c8c83b4649dfc4e0fee50735384ba034078ee46bfe agents/magica/work/queue-329/gate-r2/cli-instances.test.txt
|
||||
c6c47e682aa476429aef3599f9a429ab895b14b6b75c52673a192bc9a1045ffa agents/magica/work/queue-329/gate-r2/cli-launcher.test.load.jsonl
|
||||
a50e012f0fd76f2df61c30c99e8b9284a426b96ed432b213bbbd8c4f30b6c54e agents/magica/work/queue-329/gate-r2/cli-launcher.test.txt
|
||||
6973b3f1711bdf28114b4556b927c9baa1f873200642f3e4dc251dee5e25ecf6 agents/magica/work/queue-329/gate-r2/cli-lifecycle.test.load.jsonl
|
||||
095e17f532d679fe513c32c2e03518d4cf2437baf5769faf97a28cf95774503a agents/magica/work/queue-329/gate-r2/cli-lifecycle.test.txt
|
||||
7841e1e007d6201621d829be730f9dc1e00288891196eec525ccd37ed4ea623b agents/magica/work/queue-329/gate-r2/cli-limits-tokens.test.load.jsonl
|
||||
9988657dfa758b51bfcf96e950aee97f8bd4ab55586ff987102e4a4d0ed1d70c agents/magica/work/queue-329/gate-r2/cli-limits-tokens.test.txt
|
||||
6edc85bd823e4efd5ab1c1bd39b34a3e37934b148869a0e842f9d1b919fe0841 agents/magica/work/queue-329/gate-r2/cli-limits.test.load.jsonl
|
||||
216591e5eac252a04cfd8d5cb80dd8bfce95e6888be4cecc37ce42848c007e58 agents/magica/work/queue-329/gate-r2/cli-limits.test.txt
|
||||
99cb5f9b6e0e7ff7485ea9fd02c10d687e04ea503db4a5df6ce7cd6b1ea84159 agents/magica/work/queue-329/gate-r2/cli-mark-read.test.load.jsonl
|
||||
752895e1b4be7f8a158ac216e3e2b00789340dcada3c7f16764b8d0c7f82e45b agents/magica/work/queue-329/gate-r2/cli-mark-read.test.txt
|
||||
f61b719571255757e5d0f8c90267688440023acc7fbf073b2f06f1fb31743397 agents/magica/work/queue-329/gate-r2/cli-model-proxy.test.load.jsonl
|
||||
1860f6a85d3d37ff21333d379a31b081e5ef3b8371c33945c4a477c30cb8b90b agents/magica/work/queue-329/gate-r2/cli-model-proxy.test.txt
|
||||
f8e906a4f4c05ed63917a288416a294fc0ecd2e3480cca9c911261413302160a agents/magica/work/queue-329/gate-r2/cli-names.test.load.jsonl
|
||||
3fb040411ad19c4fa194485f8059de0eb39cad55641c9631d18e8bc426b51f0d agents/magica/work/queue-329/gate-r2/cli-names.test.txt
|
||||
910e8df8f5c2f92b641a06938ba666b931461b77a273b46ebda4683de236a04a agents/magica/work/queue-329/gate-r2/cli-optional-tracker.test.load.jsonl
|
||||
266aea732bdc9378ea736d2fb9f9bf323977aeceab84344b425b1413315be4bf agents/magica/work/queue-329/gate-r2/cli-optional-tracker.test.txt
|
||||
b91deee70af79927792012c48f286ce9cd4229826f42cf51b3c318900cc2cbe8 agents/magica/work/queue-329/gate-r2/cli-other-tree.test.load.jsonl
|
||||
ff27aac13153d0e13eed59d219b3b65f5324e96e7cd23b8249caf8900dccf551 agents/magica/work/queue-329/gate-r2/cli-other-tree.test.txt
|
||||
fcb7e4eb970a21f4d06f99e08812fa85b31f8a30d0ad367a3f38acc7770c1891 agents/magica/work/queue-329/gate-r2/cli-processing-cli.test.load.jsonl
|
||||
ba2208b51786a0d4b536f76d840e4d3f86cd26a81c7989fc5ca06e13ac392c16 agents/magica/work/queue-329/gate-r2/cli-processing-cli.test.txt
|
||||
a8a82bd497e3fc97f944794fbe26bfe401b9c0ea6f99f9bc11a5616e068a9326 agents/magica/work/queue-329/gate-r2/cli-project-name-repo.test.load.jsonl
|
||||
2ab5c5589a967a49af9a48b6fe9d8b070c83fb4ddafa701cb314ee8eacf58803 agents/magica/work/queue-329/gate-r2/cli-project-name-repo.test.txt
|
||||
b9c00382e63a2add2176051d01a997e23b02edd8a536cc6c21fa760375cc7cd3 agents/magica/work/queue-329/gate-r2/cli-project.test.load.jsonl
|
||||
eeb05c7bbb900111114536562271a0561961366d800d10dc9a523427c9d948d4 agents/magica/work/queue-329/gate-r2/cli-project.test.txt
|
||||
6eb050a014a3437db3421e09b40315e623572c4914387a38703f54b71daad20a agents/magica/work/queue-329/gate-r2/cli-publish-socket.test.load.jsonl
|
||||
5f37bd01ad735a22847e23288eb74de145fc7d9409212ce7f750a1f5537e589b agents/magica/work/queue-329/gate-r2/cli-publish-socket.test.txt
|
||||
fc050edb9fc8186c39ca20e1bd634d0928f857d32fc77b4d3857195ffed6dc49 agents/magica/work/queue-329/gate-r2/cli-revoke-window.test.load.jsonl
|
||||
11fe687feb95434d03dfb29bbb6b29daa8eded4ed9ef57c1205439952505bab7 agents/magica/work/queue-329/gate-r2/cli-revoke-window.test.txt
|
||||
5b8aa2675836da160c7283fb06e01b4a168954b35da76c9f349a56a2bfe8e638 agents/magica/work/queue-329/gate-r2/cli-session-clear.test.load.jsonl
|
||||
6eb2f7df1081685a59a0ce69efc1b8fe35ac155c6f4222d9b79d4953079f2560 agents/magica/work/queue-329/gate-r2/cli-session-clear.test.txt
|
||||
817912d22084b2381040115d1e1077e5d9a2415bc0d74ead572e083ae2831429 agents/magica/work/queue-329/gate-r2/cli-session-cli.test.load.jsonl
|
||||
a6cf001371e3d37548209e27a96790aeab1658f9834ad3aad0079bb848f798f9 agents/magica/work/queue-329/gate-r2/cli-session-cli.test.txt
|
||||
58a08c9d662e4b7f30c94055b2edf3be9ccbe3a19d8e42367f717862df06b6e6 agents/magica/work/queue-329/gate-r2/cli-session-launch.test.load.jsonl
|
||||
4bce7c2a9c9f3c067de4c9b517f3163f7ad011ab8b8fd270b253f197beddc87e agents/magica/work/queue-329/gate-r2/cli-session-launch.test.txt
|
||||
a39b1720a6455df90ade340af8eed7d9d4d19c994480a6bda36ada86694c8e89 agents/magica/work/queue-329/gate-r2/cli-stack-copy.test.load.jsonl
|
||||
cbca0eec372ce64f9f79b44b223edfa4cb6e36192aa3b2c9f34524a581d792ce agents/magica/work/queue-329/gate-r2/cli-stack-copy.test.txt
|
||||
09207def72c045841e0645988ed4c38087f304bf61aab75c705251cb5622f0c2 agents/magica/work/queue-329/gate-r2/cli-stack-instances.test.load.jsonl
|
||||
29cbaca8d32ed51cc4352005e7c8ed5b2218eaa68c0d5848dd65454394637070 agents/magica/work/queue-329/gate-r2/cli-stack-instances.test.txt
|
||||
0174359bac7048f9dc8be60d928bc24b671777e4866e1d13260dd0ad629bb2fb agents/magica/work/queue-329/gate-r2/cli-stack-release-external.test.load.jsonl
|
||||
978b39a672d14aacc0158096c98da23e8b1384145005181156be191705498790 agents/magica/work/queue-329/gate-r2/cli-stack-release-external.test.txt
|
||||
3ca0db5fd7cc8dac3701114f3b30fae094ac421b6703019b6d182f8e413df5dc agents/magica/work/queue-329/gate-r2/cli-stack-release.test.load.jsonl
|
||||
727fc9c272f2b677f495e644f1f25fd25d2f6771f892f0cdc4eddcc486c8ffed agents/magica/work/queue-329/gate-r2/cli-stack-release.test.txt
|
||||
80df1beaa8981958adb58cd48d1da315c5c82ffed1e4b43e32b4dde2e01449ee agents/magica/work/queue-329/gate-r2/cli-stack-upgrade.test.load.jsonl
|
||||
5bc6c98d28d0efaaf8e22a7424c14490a002d2f4309d3cff5560fb6cc81005a8 agents/magica/work/queue-329/gate-r2/cli-stack-upgrade.test.txt
|
||||
aa95c723c9d12d700d5bde10348a1ece07eec6766ba315d5e18be19f03f9fd76 agents/magica/work/queue-329/gate-r2/cli-tester-reads.test.load.jsonl
|
||||
5f5857a678ee71288a830f46ebdfe2906fdbfaf9ca05c45bc24f8733fc85e72a agents/magica/work/queue-329/gate-r2/cli-tester-reads.test.txt
|
||||
e4ed630a26a59ea587fa8c6e43a81e93fdcc7b943ff2357f92959e5e17bcbc1b agents/magica/work/queue-329/gate-r2/cli-tester-threads.test.load.jsonl
|
||||
2345321de50437a397787c460a5e1b1b8e23333c1079738cb29586d0a073ca17 agents/magica/work/queue-329/gate-r2/cli-tester-threads.test.txt
|
||||
e4e71634c9bdebda698f227fcfcb074f53cfab0f69598b10fd94c9c1b3c1e1da agents/magica/work/queue-329/gate-r2/cli-tester.test.load.jsonl
|
||||
08e86197474154f56a7145f675e8dda2706e7836815e200fd0cb1d878df08c2e agents/magica/work/queue-329/gate-r2/cli-tester.test.txt
|
||||
03b13a1f94a6db21d8193c87b264050cf158ed6d3da73517f92d7916afba534c agents/magica/work/queue-329/gate-r2/cli-thread-cli.test.load.jsonl
|
||||
140c3a7e88ffdf1201cbb19ebb2090c53b1ee85a8c38e36e384bdf799c53ba36 agents/magica/work/queue-329/gate-r2/cli-thread-cli.test.txt
|
||||
fcde48f88c68ce48d9b01237868751efd90fe778a492c13f881aa4d29b342713 agents/magica/work/queue-329/gate-r2/cli-thread-launch.test.load.jsonl
|
||||
87cf64e2c72f38a70e92299bcc53ef89b4d7285233ce6142d7d68804eaf6a4eb agents/magica/work/queue-329/gate-r2/cli-thread-launch.test.txt
|
||||
4c17ae77c0607a685028a80ddbfa69ad73ca01a720b6374838a6329c4ad6da42 agents/magica/work/queue-329/gate-r2/cli-thread-revoke.test.load.jsonl
|
||||
c01ea3664cf8797d3c6c9af41134654b96b01ee79cd2355881866bf88d2fb225 agents/magica/work/queue-329/gate-r2/cli-thread-revoke.test.txt
|
||||
9b0d28f0e66162038cf6c41a963ef718ec7545b3ee6adebf6124eca1e43c0eca agents/magica/work/queue-329/gate-r2/cli-trackers-boot.test.load.jsonl
|
||||
596819d78167fcf2a65dd93a52de1b0cf9340b1eac7035cecfec9f672ae223b5 agents/magica/work/queue-329/gate-r2/cli-trackers-boot.test.txt
|
||||
0c45741de6cfb4ffb781d25f63997576403c8065fa13766bd30c6688c6c3afd6 agents/magica/work/queue-329/gate-r2/cli-usage.test.load.jsonl
|
||||
87d39eb6922fb37a6d220efd2418e3576437da52427cf3d48e59f27cedc7b23b agents/magica/work/queue-329/gate-r2/cli-usage.test.txt
|
||||
9fc7a0ee1813ff9b72feddcf458423eae147eba632e3c2c66a039fa567ccee1a agents/magica/work/queue-329/gate-r2/cli-verbs.test.load.jsonl
|
||||
4a5915b363f0e34ec6ee66f70e7844800ddcc2e6b8a37fc6d3a951ef9185c1ce agents/magica/work/queue-329/gate-r2/cli-verbs.test.txt
|
||||
1263918a851d0ccc317d3c841e6c05480e399ae5fd3171c0ff76a8d9c9a0dc89 agents/magica/work/queue-329/gate-r2/model-proxy-client.test.load.jsonl
|
||||
72526df68832b7029d66bc1d583880044263c223429f4b4e4a56ef00d42a593b agents/magica/work/queue-329/gate-r2/model-proxy-client.test.txt
|
||||
6e1bdccb316e94e2173246e3435177d5e5c6af873cded5ad017c5a5e8a746294 agents/magica/work/queue-329/gate-r2/model-proxy-config-unit.test.load.jsonl
|
||||
7e1b45f0f7f56e881dfd81f2e16e5076684f1e5a94a51972af2f01ff40700a86 agents/magica/work/queue-329/gate-r2/model-proxy-config-unit.test.txt
|
||||
88233d58ea18e4437e10223b7d11b9c59ccd23d79ebda7dbb7afd10264440074 agents/magica/work/queue-329/gate-r2/model-proxy-fetch.test.load.jsonl
|
||||
f9443ad4efc40865e4710339f2802ad59fa9fe247c3f7ce715bd522cb57df0a4 agents/magica/work/queue-329/gate-r2/model-proxy-fetch.test.txt
|
||||
8dc5284896ffd28db9f865ce6c73cf09922084ef107119775079a8752a6dd4ca agents/magica/work/queue-329/gate-r2/model-proxy-management-key-encoding.test.load.jsonl
|
||||
fc0ebedc2bae56913e2055a0772f741f76c7b4659ca4c020f95c5207fadaa245 agents/magica/work/queue-329/gate-r2/model-proxy-management-key-encoding.test.txt
|
||||
6b37bb71f927dd2cbe170ff8ef5ffb945a03f21606456c3c8a5d1dc4e5e162e0 agents/magica/work/queue-329/gate-r2/model-proxy-runner.test.load.jsonl
|
||||
4e4fac75caddcc0ec797e5cbd0c096af2c0b9c6f5cdbb2740e1419e6b900912e agents/magica/work/queue-329/gate-r2/model-proxy-runner.test.txt
|
||||
6376959609eb30566ca2314dd39bb586fb56de5d60165ddab9ad645301fab833 agents/magica/work/queue-329/gate-r2/model-proxy-settings.test.load.jsonl
|
||||
c552a50d05b680f46cccca044134bc9531ab40fb3cb3d7823884f1c10a214b92 agents/magica/work/queue-329/gate-r2/model-proxy-settings.test.txt
|
||||
5f4ac561cc71e5b52f8f6c7bf1479203da8e34def26553bc7084c63ec91a25e9 agents/magica/work/queue-329/gate-r2/runs.jsonl
|
||||
f1dd90e6cbd03106e2350071d1eea8dfe1614909340dd67ef810c5747d1f9d7c agents/magica/work/queue-329/gate-r2/test-config.sh.load.jsonl
|
||||
21d65fae2201534dd0c14771fa2d387d643ca698aa550faaa60fdc2a509e53dc agents/magica/work/queue-329/gate-r2/test-config.sh.txt
|
||||
3cf1a426d12e30b16356b6b754488d3e1f53004eb1757945f93401e3ef42630e agents/magica/work/queue-329/gate.py
|
||||
92496b89026da562390bb124e3911df83084f0ce4e36382d32cc632f6bb6bbe6 agents/magica/work/queue-329/gate/FINAL-COUNTS.json
|
||||
b79b1d1b5253de212b6419a8d80bace53ac2d8899fec9f5917e1dd17f515bd17 agents/magica/work/queue-329/gate/FINAL-COUNTS.txt
|
||||
460197dbf22ffd137dfcce84dc3964ab7e07176cfa48a6deb4d510ec25aacdde agents/magica/work/queue-329/gate/FINAL-COUNTS.json
|
||||
f8b5ad0f2783cd922914efa0b8c4faae058770ac44891498f7a6f45c6b653e07 agents/magica/work/queue-329/gate/FINAL-COUNTS.txt
|
||||
cd66b3817e5dfc02162b2126224581b52c8b6ca1c4377ed2615f013533df1682 agents/magica/work/queue-329/gate/STATUS.txt
|
||||
b8eb4f8a9fc5bef1c7a753f6a3b1cd32889116590939532697d194cc9b6cf2ed agents/magica/work/queue-329/gate/bus-access-revoke.test.txt
|
||||
caa2b941ab50c4c215d47d65fb64ffb8351347ccddbf110a7d6e1d83104fd7ef agents/magica/work/queue-329/gate/bus-account-migration.test.txt
|
||||
@@ -313,12 +493,15 @@ a07aeb995eba36fd6bdeb76abdd101d1126fc7188826e7bdd3fee487efe644f0 agents/magica/
|
||||
20651f5f20563016f657c9d8206054a73dbddc20e0f411f426f3d02b9f157fe4 agents/magica/work/queue-329/gate/unit-custom-config-red.txt
|
||||
84bf8ea621c5d580953a89a22afc7a30d6001e8aaaa01b31d161c33f230e1a4d agents/magica/work/queue-329/gate/webui-pinned-copy.test.load.jsonl
|
||||
24192013fcf0f1a63402ee0c8e5a00da5ef7fd0c5e87370c2e38c9be1dbbb8b7 agents/magica/work/queue-329/gate/webui-pinned-copy.test.txt
|
||||
1422d8f9ba5dc74fc365ef3d85e141b69d8c455e271f5bd9668cf76e8e03a2e8 agents/magica/work/queue-329/r2-reader-files.executed.json
|
||||
f8cba07da013ec124fafb235468e0c94e556194ce8fcf0385cc814bfe9da93b2 agents/magica/work/queue-329/r2-reader-files.json
|
||||
fd4eb03eb9052b78535990e38d206a99e5126719a5623a7be03e02b989963285 agents/magica/work/queue-329/r2-readers.txt
|
||||
885836d6311753b1939920c76915a7df4789d7c07f5235655d508a73cb09b987 agents/magica/work/queue-329/readers.txt
|
||||
b8a80e488e85953ce9ef815cbe4e0bf4009012c8121ba659074fb8873cca856d agents/magica/work/queue-329/refusal-inventory.txt
|
||||
df311757c57f7fc0695bd5555da329fb5862c938733a718eb9b1580f140fbc53 agents/magica/work/queue-329/refusal-inventory.txt
|
||||
12c5a63a1cca1f89168ae93eec981888ed2126a2a7abefe65751df66b67686cf agents/magica/work/queue-329/resume-mos1605-progress.txt
|
||||
5de7f8433dfc2ffc0c4496b4fc1ee957ec24e83baecbb7347633b7f5e8d62e65 agents/magica/work/queue-329/resume-mos1605.py
|
||||
05e38853b4e49870bd6b44c246c8e9fbd41f98c2389e0e3ca7b87cc9c143c686 agents/magica/work/queue-329/scratch-root.txt
|
||||
48791faf9e423860bc5a8cefa224256f836f18f803ce8c872c97d033826bb274 docs/SESSIONS.md
|
||||
b18f24ac5d143df6eaea6838022bb1db6cf860da3999f3529a280b0f1d7ae7ae docs/SESSIONS.md
|
||||
24620d450b9e2defd2ed738596e440364a2a06fd84712ad154d9da970985e61d packages/bus/src/broker.mjs
|
||||
6688c153b13a401d475212fb7dce9727d78431ab6840550482847f47889e84a6 packages/bus/src/runtime.mjs
|
||||
b88932524302e2f7a7bdfbd4daffc1f5b05ae578b51e2dc2f3f74280fc0de398 packages/bus/src/server.mjs
|
||||
@@ -329,10 +512,10 @@ d706a43ed01df1daf15b2ade6132783aff4913f901f80761b319d231e0d279f4 packages/cli/s
|
||||
16c31f119d064a836794d167d57a6a1b765303005d93d1feba3e07e4b9288bd2 packages/cli/systemd/mosaic-proxy.service.in
|
||||
3031a514f5eb1e911ae5220ee8819ba5d409737a8809bb5922650bbe4f95edfc packages/cli/tests/model-proxy.test.mjs
|
||||
889ac9589fadf7654d4dbb914f968cbafe4255ed215bd6a9ff3f331757c9017b packages/model-proxy/PIN
|
||||
24745f244aba0789245af21d275e3cc2fed8c07342369caa68369b73d8d1d3f6 packages/model-proxy/README.md
|
||||
56ff6856ca85eff0705d16240b112b5276ef815b92aa31705abb4b21488d296a packages/model-proxy/README.md
|
||||
8fbfb3d1562e9ea824a1bd399b17cb2048c92b125e7699ccf27abdcc6e31e40b packages/model-proxy/package.json
|
||||
c1e835580f2c33d8ce1e75af4e5c99e0425d1a88b50f25bf514a4f90f7134932 packages/model-proxy/src/client.mjs
|
||||
e214c152ce8fa2df867bdc28194aedb53dbba601c248a606dc5d7bcd0735c189 packages/model-proxy/src/common.mjs
|
||||
7fe0fcc7e88b7af631ff6a7a6f7d6a02d8b390ff32561c53b003c3c97f193ea6 packages/model-proxy/src/common.mjs
|
||||
00378d2ea95ac4945899696462f8ff4c70dc020cc58d93663d731d2f2f333783 packages/model-proxy/src/fetch.mjs
|
||||
919e9b7edac981881d9b39fda3709a11db39b9c3eb138eff1c3ba8d2b55395aa packages/model-proxy/src/run.mjs
|
||||
c9a8783b272c434bb36697d0763e7fd93db8be208d6cf3da97262dd8f5b0ab10 packages/model-proxy/src/runner.mjs
|
||||
@@ -340,6 +523,7 @@ c9a8783b272c434bb36697d0763e7fd93db8be208d6cf3da97262dd8f5b0ab10 packages/model
|
||||
790c6a50ec030a8b27a28fac7fd129bd9eabe79774adf11d6620c00df9b6ae86 packages/model-proxy/tests/client.test.mjs
|
||||
5f9d35c45322b1a843058514e7e2bdb870168195cb7522ad43c13ee4e3899da4 packages/model-proxy/tests/config-unit.test.mjs
|
||||
87065f2ce53f6a793e17c2a7feff1c9e3cf93f5ef61ade4a35ffd2afb2cb17cb packages/model-proxy/tests/fetch.test.mjs
|
||||
95e39a519f7ac8b9592876e6157191169f9b14d002163867a6ff6ab808e42c14 packages/model-proxy/tests/management-key-encoding.test.mjs
|
||||
21c93b87f8145eb584255bc2a126236ee482e4718b6973e6cce2d8e785c77bf4 packages/model-proxy/tests/runner.test.mjs
|
||||
4e496fb3faf639713c2dd2a12f34d6add962a50c520bcd3590f0590d0563b9b7 packages/model-proxy/tests/settings.test.mjs
|
||||
c2c8ab246ecb5e73faa39b98fbbced5740e7c1abf352d8865ff2028ff7c36e3a scripts/bus-service.sh
|
||||
|
||||
@@ -59,7 +59,7 @@ forward or panel JS on the Console origin ships. No external OAuth was completed
|
||||
|
||||
## Gate
|
||||
|
||||
Final source checked with whole model-proxy61/61, bus1018/1018, CLI999pass
|
||||
Round1 source checked with whole model-proxy61/61, bus1019/1019, CLI999pass
|
||||
plus1listed FED R7 skip, webui pinned-copy10/10, config55/55, and the dedicated
|
||||
federation runner1/1 with0skip and cleanup verified. Own offline npm ci ran at
|
||||
root/webui, ignore-scripts. Every test launch used nice19, short shell-created
|
||||
@@ -79,3 +79,35 @@ all passed. No-proxy rendering stays unchanged. The helper runs through readers.
|
||||
|
||||
MANIFEST.sha256 covers every changed file versus8bb5b3c73 except itself. Release
|
||||
binaries and panel stay outside Git; independent asset measurements are Boyd's.
|
||||
|
||||
## Round 2 — Boyd B1 and doc notes
|
||||
|
||||
Boyd CHANGES comment31638/rev4029 found that Latin-1 management keys pass Node's
|
||||
header check but do not authenticate after UTF-8 persistence against pinned8.0.42.
|
||||
The shared validator now requires exactly printable non-space ASCII, 1–4096
|
||||
characters, and retains header validation. No other product source changes in R2.
|
||||
|
||||
management-key-encoding.test.mjs adds separate Latin-1, leading-space,
|
||||
trailing-space and internal-space refusals under proxy-key-invalid. Each compares
|
||||
complete recursive config/data inventories including directories, metadata,
|
||||
contents and lock absence. The positive short ASCII fixture initializes and
|
||||
performs an authenticated local management call. First execution reproduced all
|
||||
four invalid-key failures; the fixed whole package passes66/66.
|
||||
|
||||
N1 maps Docker's outer2/2 (not nested1/1), correcting the R1 bus total to1019.
|
||||
N3 documents human-only stale init-lock recovery and partial-state precautions.
|
||||
N4 records34 covered refusal names, including4 reused bus names; B1 adds cases,
|
||||
not a new code. N1 bind observation is deferred to P7; proxy-fetch guard stays out.
|
||||
|
||||
R2's cleared dependency readers are listed in r2-readers.txt and the79-file plan.
|
||||
The whole package and targeted bus/CLI files run whole, with the official
|
||||
federation acceptance runner replacing its skipped wrapper, plus test-config.sh.
|
||||
FINAL-COUNTS distinguishes R1 whole suites from these R2 reruns.
|
||||
|
||||
Two stand-in fixture files were over-selected before detection: case1-accept
|
||||
passed53/53 in247.863s, and already-running case2-unit completed47/47 in71.829s
|
||||
per sage-4277. They are recorded separately from required reader coverage and
|
||||
will not repeat. The case1 pass is not an F7 diagnostic or evidence about F7
|
||||
either way. F7 cause remains unknown (Vikunja625). Old tests/assertions unchanged.
|
||||
|
||||
R2 final: model-proxy66/66,30bus readers261/261,49CLI readers726/726,config55/55; all required commands0fail/skip/cancel. Slot returned. Full bus/CLI suites remain landing work. FINAL-COUNTS.json and gate-r2/runs.jsonl contain the mapping and raw-hash receipts.
|
||||
@@ -14,13 +14,14 @@ def read(label):
|
||||
text=(OUT/(label+'.txt')).read_text()
|
||||
result={}
|
||||
for key in ['tests','pass','fail','skipped','cancelled']:
|
||||
m=re.search(r'^(?:ℹ |# )'+key+r' (\d+)',text,re.M);assert m,(label,key);result[key]=int(m.group(1))
|
||||
matches=re.findall(r'^(?:ℹ |# )'+key+r' (\d+)',text,re.M);assert matches,(label,key);result[key]=int(matches[-1])
|
||||
assert result['fail']==0 and result['cancelled']==0,(label,result)
|
||||
return {'label':label,'log':str((OUT/(label+'.txt')).relative_to(REPO)),'counts':result,'rc':r['rc'],'nice':r['nice']}
|
||||
groups={}
|
||||
for suite in ['model-proxy','bus','cli']:
|
||||
total={k:0 for k in ['tests','pass','fail','skipped','cancelled']};mapping=[]
|
||||
for file in sorted((REPO/f'packages/{suite}/tests').glob('*.test.mjs')):
|
||||
if suite=='model-proxy' and file.stem=='management-key-encoding.test':continue # introduced in R2, mapped below
|
||||
label=f'{suite}-{file.stem}'
|
||||
if suite=='model-proxy' or suite=='cli' and file.stem in CLI_READERS:label='post-unit-fix-'+label
|
||||
if suite=='cli' and file.stem=='case1-accept.test':label='cli-case1-accept.rerun-mos1605'
|
||||
@@ -34,10 +35,50 @@ assert groups['federation-runner']['counts']['pass']==1 and groups['federation-r
|
||||
assert latest['test-config.sh']['rc']==0 and 'selftest: 55 passed, 0 failed' in (OUT/'test-config.sh.txt').read_text()
|
||||
groups['config-script']={'rc':0,'pass':55,'fail':0,'log':'agents/magica/work/queue-329/gate/test-config.sh.txt'}
|
||||
groups['history']={'initialRed':'gate/cli-case1-accept.test.txt','diagnostic':'mos-1604:20focused+3whole,179pass,no gate credit','unchangedRerun':'mos-1605:53pass','cause':'F7 unknown; Vikunja625','landingGate':'Sage must independently pass'}
|
||||
# R1 whole-suite history stays distinct from the R2 targeted reruns.
|
||||
groups['round1-model-proxy']=groups['model-proxy']
|
||||
r2=[json.loads(line) for line in (BASE/'gate-r2/runs.jsonl').read_text().splitlines()]
|
||||
by_label={row['label']:row for row in r2}
|
||||
assert len(by_label)==len(r2), 'no repeated R2 invocations'
|
||||
def r2row(label):
|
||||
row=by_label[label]
|
||||
assert row['rc']==0 and row['nice']==19,row
|
||||
if label!='test-config.sh':
|
||||
assert row['counts']['fail']==row['counts']['cancelled']==row['counts']['skipped']==0,row
|
||||
return row
|
||||
def aggregate(rows):
|
||||
return {'files':len(rows),**{k:sum(row['counts'][k] for row in rows) for k in ['tests','pass','fail','skipped','cancelled']},'mapping':rows}
|
||||
models=[]
|
||||
for file in sorted((REPO/'packages/model-proxy/tests').glob('*.test.mjs')):
|
||||
row=dict(r2row('model-proxy-'+file.stem));row['file']=str(file.relative_to(REPO));models.append(row)
|
||||
groups['model-proxy']=aggregate(models)
|
||||
readers=[]
|
||||
for name in json.loads((BASE/'r2-reader-files.json').read_text()):
|
||||
file=Path(name)
|
||||
label='cli-federation-acceptance-runner' if file.name=='federation-acceptance.test.mjs' else file.parts[1]+'-'+file.stem
|
||||
row=dict(r2row(label));row['file']=name;readers.append(row)
|
||||
config=r2row('test-config.sh')
|
||||
assert 'selftest: 55 passed, 0 failed' in (REPO/config['log']).read_text()
|
||||
extras=[r2row('cli-case1-accept.test'),r2row('cli-case2-unit.test')]
|
||||
assert len(r2)==len(models)+len(readers)+len(extras)+1
|
||||
round2={'model-proxy':groups['model-proxy'],'readers':aggregate(readers),
|
||||
'bus-readers':aggregate([row for row in readers if row['file'].startswith('packages/bus/')]),
|
||||
'cli-readers':aggregate([row for row in readers if row['file'].startswith('packages/cli/')]),
|
||||
'config-script':{**config,'pass':55,'fail':0},'over-selected-extra-runs':extras,
|
||||
'extra-run-note':'case1-accept 53/53 in 247.863 s through over-selection, not an F7 diagnostic or evidence about F7 either way. F7 cause unknown; Vikunja 625. case2-unit completed per sage-4277. Neither repeated.'}
|
||||
groups['round2']=round2
|
||||
(OUT/'FINAL-COUNTS.json').write_text(json.dumps(groups,indent=2)+'\n')
|
||||
lines=[]
|
||||
for suite in ['model-proxy','bus','cli']:
|
||||
g=groups[suite];lines.append(f"{suite}: {g['files']}files {g['tests']}tests {g['pass']}pass {g['fail']}fail {g['skipped']}skip {g['cancelled']}cancel")
|
||||
lines += ['webui pinned-copy:10/10; config:55/55; federation runner:1/1 no skip.','CLI listed skip: packages/cli/tests/federation-acceptance.test.mjs, FED R7 scratch two-instance acceptance; covered by scripts/test-federation-acceptance.sh.','Initial old red and scratch diagnostic are preserved, not included in final pass totals.','One unchanged original rerun authorized by mos-1605 passed53/53; final unit-reader checks per sage-4251 all pass.','Sage landing gate must independently be green (mos-1583).']
|
||||
g=groups[suite];prefix='R2 current package' if suite=='model-proxy' else 'R1 whole suite (not rerun whole in R2)'
|
||||
lines.append(f"{prefix} {suite}: {g['files']}files {g['tests']}tests {g['pass']}pass {g['fail']}fail {g['skipped']}skip {g['cancelled']}cancel")
|
||||
for suite in ['bus-readers','cli-readers']:
|
||||
g=round2[suite];lines.append(f"R2 {suite}: {g['files']}files {g['tests']}tests {g['pass']}pass {g['fail']}fail {g['skipped']}skip")
|
||||
lines += ['R2 config:55/55; federation official runner included in CLI readers:1/1 no skip.',
|
||||
'R1 webui pinned-copy:10/10; config:55/55; federation runner:1/1 no skip.',
|
||||
'R1 CLI listed skip: packages/cli/tests/federation-acceptance.test.mjs, FED R7; covered by the official acceptance runner.',
|
||||
'R2 over-selection extras: case1-accept53/53 in247.863s; case2-unit47/47 in71.829s. Not required reader coverage.',
|
||||
'The over-selected case1-accept run is not an F7 diagnostic or evidence about F7 either way. F7 cause unknown; Vikunja625.',
|
||||
'Initial old red and scratch diagnostic remain separate; mos-1605 unchanged original rerun53/53. Sage landing gate must independently pass.']
|
||||
(OUT/'FINAL-COUNTS.txt').write_text('\n'.join(lines)+'\n')
|
||||
print('\n'.join(lines))
|
||||
@@ -0,0 +1,89 @@
|
||||
{"label": "model-proxy-client.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:10.938+00:00", "load1": "2.97"}, "end": {"utc": "2026-10-24T21:31:11.088+00:00", "load1": "2.97"}, "seconds": 0.15, "counts": {"tests": 16, "pass": 16, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/model-proxy-client.test.txt", "raw": "/mnt/storage/scratch/tmp/zDL42S/stdout.txt", "raw_sha256": "72526df68832b7029d66bc1d583880044263c223429f4b4e4a56ef00d42a593b", "review_sha256": "72526df68832b7029d66bc1d583880044263c223429f4b4e4a56ef00d42a593b", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "model-proxy-config-unit.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:11.090+00:00", "load1": "2.97"}, "end": {"utc": "2026-10-24T21:31:12.582+00:00", "load1": "2.97"}, "seconds": 1.493, "counts": {"tests": 15, "pass": 15, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/model-proxy-config-unit.test.txt", "raw": "/mnt/storage/scratch/tmp/nJS9pb/stdout.txt", "raw_sha256": "7e1b45f0f7f56e881dfd81f2e16e5076684f1e5a94a51972af2f01ff40700a86", "review_sha256": "7e1b45f0f7f56e881dfd81f2e16e5076684f1e5a94a51972af2f01ff40700a86", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "model-proxy-fetch.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:12.584+00:00", "load1": "2.97"}, "end": {"utc": "2026-10-24T21:31:12.790+00:00", "load1": "2.97"}, "seconds": 0.206, "counts": {"tests": 8, "pass": 8, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/model-proxy-fetch.test.txt", "raw": "/mnt/storage/scratch/tmp/7oJ2lQ/stdout.txt", "raw_sha256": "f9443ad4efc40865e4710339f2802ad59fa9fe247c3f7ce715bd522cb57df0a4", "review_sha256": "f9443ad4efc40865e4710339f2802ad59fa9fe247c3f7ce715bd522cb57df0a4", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "model-proxy-management-key-encoding.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:12.791+00:00", "load1": "2.97"}, "end": {"utc": "2026-10-24T21:31:12.914+00:00", "load1": "2.97"}, "seconds": 0.122, "counts": {"tests": 5, "pass": 5, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/model-proxy-management-key-encoding.test.txt", "raw": "/mnt/storage/scratch/tmp/zS3BC0/stdout.txt", "raw_sha256": "fc0ebedc2bae56913e2055a0772f741f76c7b4659ca4c020f95c5207fadaa245", "review_sha256": "fc0ebedc2bae56913e2055a0772f741f76c7b4659ca4c020f95c5207fadaa245", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "model-proxy-runner.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:12.915+00:00", "load1": "2.97"}, "end": {"utc": "2026-10-24T21:31:13.016+00:00", "load1": "2.97"}, "seconds": 0.1, "counts": {"tests": 3, "pass": 3, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/model-proxy-runner.test.txt", "raw": "/mnt/storage/scratch/tmp/AudX5t/stdout.txt", "raw_sha256": "4e4fac75caddcc0ec797e5cbd0c096af2c0b9c6f5cdbb2740e1419e6b900912e", "review_sha256": "4e4fac75caddcc0ec797e5cbd0c096af2c0b9c6f5cdbb2740e1419e6b900912e", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "model-proxy-settings.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:13.017+00:00", "load1": "2.97"}, "end": {"utc": "2026-10-24T21:31:13.133+00:00", "load1": "2.97"}, "seconds": 0.116, "counts": {"tests": 19, "pass": 19, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/model-proxy-settings.test.txt", "raw": "/mnt/storage/scratch/tmp/5hNMfK/stdout.txt", "raw_sha256": "c552a50d05b680f46cccca044134bc9531ab40fb3cb3d7823884f1c10a214b92", "review_sha256": "c552a50d05b680f46cccca044134bc9531ab40fb3cb3d7823884f1c10a214b92", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-access-revoke.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:13.135+00:00", "load1": "2.97"}, "end": {"utc": "2026-10-24T21:31:13.593+00:00", "load1": "2.97"}, "seconds": 0.458, "counts": {"tests": 10, "pass": 10, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-access-revoke.test.txt", "raw": "/mnt/storage/scratch/tmp/GHeQEZ/stdout.txt", "raw_sha256": "1e4692e57d2a0381a9c05ad6a6f136c63d149263d52f4bf0cf194adfb5c3a28f", "review_sha256": "1e4692e57d2a0381a9c05ad6a6f136c63d149263d52f4bf0cf194adfb5c3a28f", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-chief-of-staff.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:13.594+00:00", "load1": "2.97"}, "end": {"utc": "2026-10-24T21:31:15.864+00:00", "load1": "3.13"}, "seconds": 2.27, "counts": {"tests": 42, "pass": 42, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-chief-of-staff.test.txt", "raw": "/mnt/storage/scratch/tmp/70lNbE/stdout.txt", "raw_sha256": "ac5e9121ff899160842f8196969356b5af2b1d8305bc14a4a05f0c8e7472a55b", "review_sha256": "ac5e9121ff899160842f8196969356b5af2b1d8305bc14a4a05f0c8e7472a55b", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-citation-runtime.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:15.866+00:00", "load1": "3.13"}, "end": {"utc": "2026-10-24T21:31:16.155+00:00", "load1": "3.13"}, "seconds": 0.289, "counts": {"tests": 1, "pass": 1, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-citation-runtime.test.txt", "raw": "/mnt/storage/scratch/tmp/d7EDzc/stdout.txt", "raw_sha256": "906f79dcd35767db18fcc9cc58ff354fd04c76fb8f4442a36840dbe6c1ec4687", "review_sha256": "906f79dcd35767db18fcc9cc58ff354fd04c76fb8f4442a36840dbe6c1ec4687", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-creative.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:16.156+00:00", "load1": "3.13"}, "end": {"utc": "2026-10-24T21:31:16.541+00:00", "load1": "3.13"}, "seconds": 0.384, "counts": {"tests": 4, "pass": 4, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-creative.test.txt", "raw": "/mnt/storage/scratch/tmp/pn1E2D/stdout.txt", "raw_sha256": "a69dc69088b07e7e1763feffce69ef032df334557505f2afcefdfb58c0d1c17d", "review_sha256": "a69dc69088b07e7e1763feffce69ef032df334557505f2afcefdfb58c0d1c17d", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-credential-verbs.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:16.542+00:00", "load1": "3.13"}, "end": {"utc": "2026-10-24T21:31:16.833+00:00", "load1": "3.13"}, "seconds": 0.291, "counts": {"tests": 2, "pass": 2, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-credential-verbs.test.txt", "raw": "/mnt/storage/scratch/tmp/9f3var/stdout.txt", "raw_sha256": "5357a7f0eec86a68c8491d1af16547457d7fe0ebd72fc5c6a509007c7f7d4030", "review_sha256": "5357a7f0eec86a68c8491d1af16547457d7fe0ebd72fc5c6a509007c7f7d4030", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-daily-quota-runtime.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:16.834+00:00", "load1": "3.13"}, "end": {"utc": "2026-10-24T21:31:17.191+00:00", "load1": "3.13"}, "seconds": 0.356, "counts": {"tests": 4, "pass": 4, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-daily-quota-runtime.test.txt", "raw": "/mnt/storage/scratch/tmp/qkIeTC/stdout.txt", "raw_sha256": "fe12a7dd9d274386f7416db0858082dd77af1c0df6344d2460fca5a13a94b924", "review_sha256": "fe12a7dd9d274386f7416db0858082dd77af1c0df6344d2460fca5a13a94b924", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-grant-scope-runtime.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:17.192+00:00", "load1": "3.13"}, "end": {"utc": "2026-10-24T21:31:17.416+00:00", "load1": "3.13"}, "seconds": 0.224, "counts": {"tests": 1, "pass": 1, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-grant-scope-runtime.test.txt", "raw": "/mnt/storage/scratch/tmp/vvhrW2/stdout.txt", "raw_sha256": "d314d364cc6b84672a92151c8c601dad438414a49ec27f15e94594ab730ac3f6", "review_sha256": "d314d364cc6b84672a92151c8c601dad438414a49ec27f15e94594ab730ac3f6", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-host-run.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:17.417+00:00", "load1": "3.13"}, "end": {"utc": "2026-10-24T21:31:32.104+00:00", "load1": "2.80"}, "seconds": 14.686, "counts": {"tests": 26, "pass": 26, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-host-run.test.txt", "raw": "/mnt/storage/scratch/tmp/BU48EX/stdout.txt", "raw_sha256": "186da42dee80fa074f0ddbb05fe78eb680dbe7177e63111928768b71f6248743", "review_sha256": "186da42dee80fa074f0ddbb05fe78eb680dbe7177e63111928768b71f6248743", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-instances-verb.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:32.105+00:00", "load1": "2.80"}, "end": {"utc": "2026-10-24T21:31:32.406+00:00", "load1": "2.80"}, "seconds": 0.301, "counts": {"tests": 3, "pass": 3, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-instances-verb.test.txt", "raw": "/mnt/storage/scratch/tmp/XknzTf/stdout.txt", "raw_sha256": "a29fe9471a3034501c9765289f77e5a6fc08702c7cc02035d67745b01064e6f7", "review_sha256": "a29fe9471a3034501c9765289f77e5a6fc08702c7cc02035d67745b01064e6f7", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-library-credential.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:32.407+00:00", "load1": "2.80"}, "end": {"utc": "2026-10-24T21:31:33.807+00:00", "load1": "2.80"}, "seconds": 1.4, "counts": {"tests": 6, "pass": 6, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-library-credential.test.txt", "raw": "/mnt/storage/scratch/tmp/HpiYQK/stdout.txt", "raw_sha256": "5a8db75c9e3a8c5fc526a83db2eecb1dce370c09b191d76a4b6e5e5b2bc49269", "review_sha256": "5a8db75c9e3a8c5fc526a83db2eecb1dce370c09b191d76a4b6e5e5b2bc49269", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-library-lookups.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:33.808+00:00", "load1": "2.80"}, "end": {"utc": "2026-10-24T21:31:34.972+00:00", "load1": "2.80"}, "seconds": 1.163, "counts": {"tests": 11, "pass": 11, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-library-lookups.test.txt", "raw": "/mnt/storage/scratch/tmp/PQlDGA/stdout.txt", "raw_sha256": "f983094b8f5934fb1390cb41a7f93fb67e3bf640ccefe7c22901fef471178341", "review_sha256": "f983094b8f5934fb1390cb41a7f93fb67e3bf640ccefe7c22901fef471178341", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-library-sync.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:34.973+00:00", "load1": "2.80"}, "end": {"utc": "2026-10-24T21:31:41.870+00:00", "load1": "2.75"}, "seconds": 6.897, "counts": {"tests": 6, "pass": 6, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-library-sync.test.txt", "raw": "/mnt/storage/scratch/tmp/eFLzOZ/stdout.txt", "raw_sha256": "ce03b3b0bd0a7dab40cbe07b65708e9c8083b2ea2292a585105257d63b346041", "review_sha256": "ce03b3b0bd0a7dab40cbe07b65708e9c8083b2ea2292a585105257d63b346041", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-library.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:41.871+00:00", "load1": "2.75"}, "end": {"utc": "2026-10-24T21:31:42.508+00:00", "load1": "2.75"}, "seconds": 0.637, "counts": {"tests": 6, "pass": 6, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-library.test.txt", "raw": "/mnt/storage/scratch/tmp/kPxN9l/stdout.txt", "raw_sha256": "f7056b0990446ba4ca02439d888840100197cf721af7cb83366e1845ebedb181", "review_sha256": "f7056b0990446ba4ca02439d888840100197cf721af7cb83366e1845ebedb181", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-lifecycle-revoke.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:42.510+00:00", "load1": "2.75"}, "end": {"utc": "2026-10-24T21:31:43.201+00:00", "load1": "2.75"}, "seconds": 0.691, "counts": {"tests": 8, "pass": 8, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-lifecycle-revoke.test.txt", "raw": "/mnt/storage/scratch/tmp/hvc49a/stdout.txt", "raw_sha256": "8164855a74fffbe3ae62e45b0d921571b34e29d87109a62fdedcaa5f5cf91a03", "review_sha256": "8164855a74fffbe3ae62e45b0d921571b34e29d87109a62fdedcaa5f5cf91a03", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-lifecycle-verbs.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:43.202+00:00", "load1": "2.75"}, "end": {"utc": "2026-10-24T21:31:43.730+00:00", "load1": "2.75"}, "seconds": 0.527, "counts": {"tests": 13, "pass": 13, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-lifecycle-verbs.test.txt", "raw": "/mnt/storage/scratch/tmp/Ab3xx3/stdout.txt", "raw_sha256": "d2f5a7993c5d8e31bbf8572651f67fded8ed83cbaddfa5ccba7bad2d61994da0", "review_sha256": "d2f5a7993c5d8e31bbf8572651f67fded8ed83cbaddfa5ccba7bad2d61994da0", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-limit-checks.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:43.731+00:00", "load1": "2.75"}, "end": {"utc": "2026-10-24T21:31:44.005+00:00", "load1": "2.75"}, "seconds": 0.273, "counts": {"tests": 16, "pass": 16, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-limit-checks.test.txt", "raw": "/mnt/storage/scratch/tmp/ktbbpy/stdout.txt", "raw_sha256": "04d0337574e4af52414e3bfd63b95d15e2cbbc22c49bfaae5eb8baf4df0ce387", "review_sha256": "04d0337574e4af52414e3bfd63b95d15e2cbbc22c49bfaae5eb8baf4df0ce387", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-limits-runtime.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:44.006+00:00", "load1": "2.75"}, "end": {"utc": "2026-10-24T21:31:44.427+00:00", "load1": "2.75"}, "seconds": 0.421, "counts": {"tests": 5, "pass": 5, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-limits-runtime.test.txt", "raw": "/mnt/storage/scratch/tmp/OgZo41/stdout.txt", "raw_sha256": "aae4e8b12a87bd5679afcd9f4319839c6554fac365723ada9808af9aa9e1c859", "review_sha256": "aae4e8b12a87bd5679afcd9f4319839c6554fac365723ada9808af9aa9e1c859", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-limits.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:44.428+00:00", "load1": "2.75"}, "end": {"utc": "2026-10-24T21:31:44.729+00:00", "load1": "2.75"}, "seconds": 0.301, "counts": {"tests": 3, "pass": 3, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-limits.test.txt", "raw": "/mnt/storage/scratch/tmp/ZE3dMq/stdout.txt", "raw_sha256": "df23b3a8e13e0f29c5c81cf067e4a859b2c19fc7b7e0a72cab222444d84eb20d", "review_sha256": "df23b3a8e13e0f29c5c81cf067e4a859b2c19fc7b7e0a72cab222444d84eb20d", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-model-proxy.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:44.731+00:00", "load1": "2.75"}, "end": {"utc": "2026-10-24T21:31:44.954+00:00", "load1": "2.75"}, "seconds": 0.223, "counts": {"tests": 8, "pass": 8, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-model-proxy.test.txt", "raw": "/mnt/storage/scratch/tmp/760xBV/stdout.txt", "raw_sha256": "bfb1b52f8dc03290185ea6b9f1c2a5336b0c8b4959a0b1254a8ff6e86c4d0f6e", "review_sha256": "bfb1b52f8dc03290185ea6b9f1c2a5336b0c8b4959a0b1254a8ff6e86c4d0f6e", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-plugins-verb.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:44.956+00:00", "load1": "2.75"}, "end": {"utc": "2026-10-24T21:31:45.257+00:00", "load1": "2.75"}, "seconds": 0.301, "counts": {"tests": 3, "pass": 3, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-plugins-verb.test.txt", "raw": "/mnt/storage/scratch/tmp/mpe9C4/stdout.txt", "raw_sha256": "a06ab305be09ba71ffad2221d8db9979cd7c9db8cfee9e7a75347620a4f68646", "review_sha256": "a06ab305be09ba71ffad2221d8db9979cd7c9db8cfee9e7a75347620a4f68646", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-processing-runtime.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:45.258+00:00", "load1": "2.75"}, "end": {"utc": "2026-10-24T21:31:45.642+00:00", "load1": "2.75"}, "seconds": 0.384, "counts": {"tests": 2, "pass": 2, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-processing-runtime.test.txt", "raw": "/mnt/storage/scratch/tmp/t8w0GP/stdout.txt", "raw_sha256": "05aeb457bd29666c0fd601f14e81a917935483c483ae29952ba07c168f316a3f", "review_sha256": "05aeb457bd29666c0fd601f14e81a917935483c483ae29952ba07c168f316a3f", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-project-runtime.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:45.644+00:00", "load1": "2.75"}, "end": {"utc": "2026-10-24T21:31:46.048+00:00", "load1": "3.01"}, "seconds": 0.404, "counts": {"tests": 3, "pass": 3, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-project-runtime.test.txt", "raw": "/mnt/storage/scratch/tmp/9wld3a/stdout.txt", "raw_sha256": "a78ffe5c3ce1a213eca5eeae5637eabe03ea564df7fa947a72f85a0d94c3ccb0", "review_sha256": "a78ffe5c3ce1a213eca5eeae5637eabe03ea564df7fa947a72f85a0d94c3ccb0", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-publish.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:46.049+00:00", "load1": "3.01"}, "end": {"utc": "2026-10-24T21:31:46.833+00:00", "load1": "3.01"}, "seconds": 0.784, "counts": {"tests": 13, "pass": 13, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-publish.test.txt", "raw": "/mnt/storage/scratch/tmp/zvt8PG/stdout.txt", "raw_sha256": "1f2796d06abac7de85d9658f8c2a53b2934aea7ab518bab1f53479048feb2139", "review_sha256": "1f2796d06abac7de85d9658f8c2a53b2934aea7ab518bab1f53479048feb2139", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-reload.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:46.835+00:00", "load1": "3.01"}, "end": {"utc": "2026-10-24T21:31:47.760+00:00", "load1": "3.01"}, "seconds": 0.925, "counts": {"tests": 10, "pass": 10, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-reload.test.txt", "raw": "/mnt/storage/scratch/tmp/aU0j0Y/stdout.txt", "raw_sha256": "192282d8e14ec7ba3314ae1de327646cc6f7deb390472d64781529d4f2a87ae5", "review_sha256": "192282d8e14ec7ba3314ae1de327646cc6f7deb390472d64781529d4f2a87ae5", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-routes-verb.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:47.762+00:00", "load1": "3.01"}, "end": {"utc": "2026-10-24T21:31:48.060+00:00", "load1": "3.01"}, "seconds": 0.299, "counts": {"tests": 4, "pass": 4, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-routes-verb.test.txt", "raw": "/mnt/storage/scratch/tmp/P5dNVU/stdout.txt", "raw_sha256": "9f33241111d569ae58c4e67f3afe685a537a2dcbfedaa40de89bdee3f17b14b4", "review_sha256": "9f33241111d569ae58c4e67f3afe685a537a2dcbfedaa40de89bdee3f17b14b4", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-tasks.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:48.062+00:00", "load1": "3.01"}, "end": {"utc": "2026-10-24T21:31:48.992+00:00", "load1": "3.01"}, "seconds": 0.93, "counts": {"tests": 9, "pass": 9, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-tasks.test.txt", "raw": "/mnt/storage/scratch/tmp/doktEQ/stdout.txt", "raw_sha256": "14d2238fe88a863d5535217b8a832fc7a23d6662a38787385fa5c7792902cece", "review_sha256": "14d2238fe88a863d5535217b8a832fc7a23d6662a38787385fa5c7792902cece", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-tester-writes.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:48.994+00:00", "load1": "3.01"}, "end": {"utc": "2026-10-24T21:31:49.498+00:00", "load1": "3.01"}, "seconds": 0.504, "counts": {"tests": 8, "pass": 8, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-tester-writes.test.txt", "raw": "/mnt/storage/scratch/tmp/1vStHK/stdout.txt", "raw_sha256": "9be764569450aede17b0aeb194933978c07f551ff835543b9c5a171599aec855", "review_sha256": "9be764569450aede17b0aeb194933978c07f551ff835543b9c5a171599aec855", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-tester.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:49.499+00:00", "load1": "3.01"}, "end": {"utc": "2026-10-24T21:31:51.058+00:00", "load1": "2.77"}, "seconds": 1.559, "counts": {"tests": 14, "pass": 14, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-tester.test.txt", "raw": "/mnt/storage/scratch/tmp/lFZZCF/stdout.txt", "raw_sha256": "1071a9d1720fc8cb3a81bb4e649480b9ffb70f44cc27df7cd1bdfe5b4b73c832", "review_sha256": "1071a9d1720fc8cb3a81bb4e649480b9ffb70f44cc27df7cd1bdfe5b4b73c832", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-usage-runtime.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:51.060+00:00", "load1": "2.77"}, "end": {"utc": "2026-10-24T21:31:51.278+00:00", "load1": "2.77"}, "seconds": 0.218, "counts": {"tests": 1, "pass": 1, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-usage-runtime.test.txt", "raw": "/mnt/storage/scratch/tmp/1VEYZH/stdout.txt", "raw_sha256": "164803cec01d1a4defd02eb7bada2334406e55ddca88a3f959f34b1fe959c61d", "review_sha256": "164803cec01d1a4defd02eb7bada2334406e55ddca88a3f959f34b1fe959c61d", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "bus-web.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:51.279+00:00", "load1": "2.77"}, "end": {"utc": "2026-10-24T21:31:52.352+00:00", "load1": "2.77"}, "seconds": 1.073, "counts": {"tests": 19, "pass": 19, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/bus-web.test.txt", "raw": "/mnt/storage/scratch/tmp/BWvWeH/stdout.txt", "raw_sha256": "fc077bfb6f2fdf43f2949741daa6d7d998be5540a2c24935cf41dd37a9168701", "review_sha256": "fc077bfb6f2fdf43f2949741daa6d7d998be5540a2c24935cf41dd37a9168701", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-access-boot.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:52.353+00:00", "load1": "2.77"}, "end": {"utc": "2026-10-24T21:31:52.858+00:00", "load1": "2.77"}, "seconds": 0.505, "counts": {"tests": 4, "pass": 4, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-access-boot.test.txt", "raw": "/mnt/storage/scratch/tmp/N0QlMo/stdout.txt", "raw_sha256": "3744b90a84c5fed8391ec462765c84016f800480aba1866394fda7b8e073334f", "review_sha256": "3744b90a84c5fed8391ec462765c84016f800480aba1866394fda7b8e073334f", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-access.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:52.859+00:00", "load1": "2.77"}, "end": {"utc": "2026-10-24T21:31:59.768+00:00", "load1": "2.71"}, "seconds": 6.908, "counts": {"tests": 34, "pass": 34, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-access.test.txt", "raw": "/mnt/storage/scratch/tmp/s4G6iY/stdout.txt", "raw_sha256": "26846bafb2cad7e1ef1eb22c4be6b45be15a5ba8dcb9ac74e676526215264f61", "review_sha256": "26846bafb2cad7e1ef1eb22c4be6b45be15a5ba8dcb9ac74e676526215264f61", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-app.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:31:59.769+00:00", "load1": "2.71"}, "end": {"utc": "2026-10-24T21:32:12.799+00:00", "load1": "2.80"}, "seconds": 13.03, "counts": {"tests": 30, "pass": 30, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-app.test.txt", "raw": "/mnt/storage/scratch/tmp/U6qOPP/stdout.txt", "raw_sha256": "a5e98008eccbd4c970eb1177cd2a02149a11a983a3b52bcc6e395911cf3ad650", "review_sha256": "a5e98008eccbd4c970eb1177cd2a02149a11a983a3b52bcc6e395911cf3ad650", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-boot-status.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:32:12.800+00:00", "load1": "2.80"}, "end": {"utc": "2026-10-24T21:32:14.148+00:00", "load1": "2.80"}, "seconds": 1.348, "counts": {"tests": 3, "pass": 3, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-boot-status.test.txt", "raw": "/mnt/storage/scratch/tmp/6FraTr/stdout.txt", "raw_sha256": "bb44c42c15a70c24211f9145aa199dee9aa35794bfc360f792ed71a142b8fed1", "review_sha256": "bb44c42c15a70c24211f9145aa199dee9aa35794bfc360f792ed71a142b8fed1", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-case1-accept.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:32:14.150+00:00", "load1": "2.80"}, "end": {"utc": "2026-10-24T21:36:22.013+00:00", "load1": "2.61"}, "seconds": 247.863, "counts": {"tests": 53, "pass": 53, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-case1-accept.test.txt", "raw": "/mnt/storage/scratch/tmp/4hkmqC/stdout.txt", "raw_sha256": "fe812a4c0d8506883c16e9458d888f89298b8d7cf8817eb57defd108fb268aef", "review_sha256": "fe812a4c0d8506883c16e9458d888f89298b8d7cf8817eb57defd108fb268aef", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-case2-unit.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:36:22.014+00:00", "load1": "2.61"}, "end": {"utc": "2026-10-24T21:37:33.843+00:00", "load1": "1.99"}, "seconds": 71.829, "counts": {"tests": 47, "pass": 47, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-case2-unit.test.txt", "raw": "/mnt/storage/scratch/tmp/gR7UqU/stdout.txt", "raw_sha256": "d85ab5112c0e6b4395e318abbd81393e3c533af83f5625ea2470ee641a7cbafe", "review_sha256": "d85ab5112c0e6b4395e318abbd81393e3c533af83f5625ea2470ee641a7cbafe", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-channel-cli.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:37:33.844+00:00", "load1": "1.99"}, "end": {"utc": "2026-10-24T21:37:34.019+00:00", "load1": "1.99"}, "seconds": 0.175, "counts": {"tests": 2, "pass": 2, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-channel-cli.test.txt", "raw": "/mnt/storage/scratch/tmp/CVVva9/stdout.txt", "raw_sha256": "b58d9c1ceadc06bfb5ba894106b9a8fae2b8cf5b5ee793024247e3ca6c12cb57", "review_sha256": "b58d9c1ceadc06bfb5ba894106b9a8fae2b8cf5b5ee793024247e3ca6c12cb57", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-cli.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:37:34.021+00:00", "load1": "1.99"}, "end": {"utc": "2026-10-24T21:37:34.366+00:00", "load1": "1.99"}, "seconds": 0.346, "counts": {"tests": 12, "pass": 12, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-cli.test.txt", "raw": "/mnt/storage/scratch/tmp/w29Ytc/stdout.txt", "raw_sha256": "f31972c375775c7d8395ddbb8ec50c278842c94938ac38b42cc34adddd26343b", "review_sha256": "f31972c375775c7d8395ddbb8ec50c278842c94938ac38b42cc34adddd26343b", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-compactions-launch.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:37:34.367+00:00", "load1": "1.99"}, "end": {"utc": "2026-10-24T21:37:49.048+00:00", "load1": "2.07"}, "seconds": 14.681, "counts": {"tests": 5, "pass": 5, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-compactions-launch.test.txt", "raw": "/mnt/storage/scratch/tmp/a02guB/stdout.txt", "raw_sha256": "076452351ffccf6341b3be24798aa3e3d9ff239079dfff86338cc5c5c553a6c5", "review_sha256": "076452351ffccf6341b3be24798aa3e3d9ff239079dfff86338cc5c5c553a6c5", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-config.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:37:49.050+00:00", "load1": "2.07"}, "end": {"utc": "2026-10-24T21:37:49.463+00:00", "load1": "2.07"}, "seconds": 0.413, "counts": {"tests": 7, "pass": 7, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-config.test.txt", "raw": "/mnt/storage/scratch/tmp/AhpJsG/stdout.txt", "raw_sha256": "fb64c74ee91d26ce5d9e696d38e6aa53190a123e6e700d6235839f211071ff7c", "review_sha256": "fb64c74ee91d26ce5d9e696d38e6aa53190a123e6e700d6235839f211071ff7c", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-credentials.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:37:49.465+00:00", "load1": "2.07"}, "end": {"utc": "2026-10-24T21:37:49.730+00:00", "load1": "2.07"}, "seconds": 0.265, "counts": {"tests": 5, "pass": 5, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-credentials.test.txt", "raw": "/mnt/storage/scratch/tmp/QKugz7/stdout.txt", "raw_sha256": "de17d72ef2f432a264f915ee6d0eeecebdb47509b701efeb39cb6e3a623c7889", "review_sha256": "de17d72ef2f432a264f915ee6d0eeecebdb47509b701efeb39cb6e3a623c7889", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-federation-acceptance-runner", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:37:49.731+00:00", "load1": "2.07"}, "end": {"utc": "2026-10-24T21:37:53.728+00:00", "load1": "1.98"}, "seconds": 3.997, "counts": {"tests": 1, "pass": 1, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-federation-acceptance-runner.txt", "raw": "/mnt/storage/scratch/tmp/AgdZo8/stdout.txt", "raw_sha256": "9159c6b69df64f55608fd6a56ef312fb17c15501f6d2b022010ce4a79d3a66df", "review_sha256": "9159c6b69df64f55608fd6a56ef312fb17c15501f6d2b022010ce4a79d3a66df", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-follow.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:37:53.730+00:00", "load1": "1.98"}, "end": {"utc": "2026-10-24T21:37:54.316+00:00", "load1": "1.98"}, "seconds": 0.586, "counts": {"tests": 6, "pass": 6, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-follow.test.txt", "raw": "/mnt/storage/scratch/tmp/LGEnHH/stdout.txt", "raw_sha256": "ed9f7a562321d6097724af8b3863ba9afbf740b27ef704212ea560e691d36431", "review_sha256": "ed9f7a562321d6097724af8b3863ba9afbf740b27ef704212ea560e691d36431", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-git-socket.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:37:54.317+00:00", "load1": "1.98"}, "end": {"utc": "2026-10-24T21:38:09.557+00:00", "load1": "2.32"}, "seconds": 15.24, "counts": {"tests": 24, "pass": 24, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-git-socket.test.txt", "raw": "/mnt/storage/scratch/tmp/iFrMGb/stdout.txt", "raw_sha256": "473cedadef1e0ad23ad614f2a33b10e159133d3cda7eef53ac6bb69872185b3c", "review_sha256": "473cedadef1e0ad23ad614f2a33b10e159133d3cda7eef53ac6bb69872185b3c", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-grants-scope.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:38:09.558+00:00", "load1": "2.32"}, "end": {"utc": "2026-10-24T21:38:09.726+00:00", "load1": "2.32"}, "seconds": 0.168, "counts": {"tests": 4, "pass": 4, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-grants-scope.test.txt", "raw": "/mnt/storage/scratch/tmp/hH0rQA/stdout.txt", "raw_sha256": "5e6efa8110a444bac7d74da8328b6d826de680b84f56ebd19a0285cc9adf0a62", "review_sha256": "5e6efa8110a444bac7d74da8328b6d826de680b84f56ebd19a0285cc9adf0a62", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-grants.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:38:09.727+00:00", "load1": "2.32"}, "end": {"utc": "2026-10-24T21:38:09.997+00:00", "load1": "2.32"}, "seconds": 0.27, "counts": {"tests": 6, "pass": 6, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-grants.test.txt", "raw": "/mnt/storage/scratch/tmp/kKFjXU/stdout.txt", "raw_sha256": "a7efd78270e4e7ef26be72180eb458aff9de84c73b5b3ec8d83838f862184c4b", "review_sha256": "a7efd78270e4e7ef26be72180eb458aff9de84c73b5b3ec8d83838f862184c4b", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-host.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:38:09.999+00:00", "load1": "2.32"}, "end": {"utc": "2026-10-24T21:38:22.058+00:00", "load1": "1.96"}, "seconds": 12.06, "counts": {"tests": 43, "pass": 43, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-host.test.txt", "raw": "/mnt/storage/scratch/tmp/txcqPa/stdout.txt", "raw_sha256": "4b234f94e96838fde5714477d37e06af648d20c68775b47c7c81443dfc0cb2ca", "review_sha256": "4b234f94e96838fde5714477d37e06af648d20c68775b47c7c81443dfc0cb2ca", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-hosts.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:38:22.060+00:00", "load1": "1.96"}, "end": {"utc": "2026-10-24T21:38:22.317+00:00", "load1": "1.96"}, "seconds": 0.258, "counts": {"tests": 8, "pass": 8, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-hosts.test.txt", "raw": "/mnt/storage/scratch/tmp/sQO7c1/stdout.txt", "raw_sha256": "5483bf8ada33ee623bd1078e1fd9284280a32619c51f36d56b65006bef63f185", "review_sha256": "5483bf8ada33ee623bd1078e1fd9284280a32619c51f36d56b65006bef63f185", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-idle-stop-race.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:38:22.319+00:00", "load1": "1.96"}, "end": {"utc": "2026-10-24T21:38:24.093+00:00", "load1": "1.96"}, "seconds": 1.774, "counts": {"tests": 1, "pass": 1, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-idle-stop-race.test.txt", "raw": "/mnt/storage/scratch/tmp/2TzkDV/stdout.txt", "raw_sha256": "8fd38cefed41f05af3c4bab68edfa9bdcb137d05177fdca9f51382ce875c870c", "review_sha256": "8fd38cefed41f05af3c4bab68edfa9bdcb137d05177fdca9f51382ce875c870c", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-instances.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:38:24.095+00:00", "load1": "1.96"}, "end": {"utc": "2026-10-24T21:38:26.837+00:00", "load1": "1.80"}, "seconds": 2.742, "counts": {"tests": 15, "pass": 15, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-instances.test.txt", "raw": "/mnt/storage/scratch/tmp/bcheNJ/stdout.txt", "raw_sha256": "ea156f123f60723867b2d7c8c83b4649dfc4e0fee50735384ba034078ee46bfe", "review_sha256": "ea156f123f60723867b2d7c8c83b4649dfc4e0fee50735384ba034078ee46bfe", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-launcher.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:38:26.839+00:00", "load1": "1.80"}, "end": {"utc": "2026-10-24T21:38:54.716+00:00", "load1": "1.99"}, "seconds": 27.877, "counts": {"tests": 34, "pass": 34, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-launcher.test.txt", "raw": "/mnt/storage/scratch/tmp/V5Okpd/stdout.txt", "raw_sha256": "a50e012f0fd76f2df61c30c99e8b9284a426b96ed432b213bbbd8c4f30b6c54e", "review_sha256": "a50e012f0fd76f2df61c30c99e8b9284a426b96ed432b213bbbd8c4f30b6c54e", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-lifecycle.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:38:54.717+00:00", "load1": "1.99"}, "end": {"utc": "2026-10-24T21:39:08.536+00:00", "load1": "2.14"}, "seconds": 13.819, "counts": {"tests": 24, "pass": 24, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-lifecycle.test.txt", "raw": "/mnt/storage/scratch/tmp/sAlkoc/stdout.txt", "raw_sha256": "095e17f532d679fe513c32c2e03518d4cf2437baf5769faf97a28cf95774503a", "review_sha256": "095e17f532d679fe513c32c2e03518d4cf2437baf5769faf97a28cf95774503a", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-limits-tokens.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:08.537+00:00", "load1": "2.14"}, "end": {"utc": "2026-10-24T21:39:08.721+00:00", "load1": "2.14"}, "seconds": 0.183, "counts": {"tests": 5, "pass": 5, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-limits-tokens.test.txt", "raw": "/mnt/storage/scratch/tmp/n6VAUo/stdout.txt", "raw_sha256": "9988657dfa758b51bfcf96e950aee97f8bd4ab55586ff987102e4a4d0ed1d70c", "review_sha256": "9988657dfa758b51bfcf96e950aee97f8bd4ab55586ff987102e4a4d0ed1d70c", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-limits.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:08.722+00:00", "load1": "2.14"}, "end": {"utc": "2026-10-24T21:39:09.096+00:00", "load1": "2.14"}, "seconds": 0.374, "counts": {"tests": 5, "pass": 5, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-limits.test.txt", "raw": "/mnt/storage/scratch/tmp/wc6Eoy/stdout.txt", "raw_sha256": "216591e5eac252a04cfd8d5cb80dd8bfce95e6888be4cecc37ce42848c007e58", "review_sha256": "216591e5eac252a04cfd8d5cb80dd8bfce95e6888be4cecc37ce42848c007e58", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-mark-read.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:09.098+00:00", "load1": "2.14"}, "end": {"utc": "2026-10-24T21:39:10.140+00:00", "load1": "2.14"}, "seconds": 1.042, "counts": {"tests": 6, "pass": 6, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-mark-read.test.txt", "raw": "/mnt/storage/scratch/tmp/CcBu1p/stdout.txt", "raw_sha256": "752895e1b4be7f8a158ac216e3e2b00789340dcada3c7f16764b8d0c7f82e45b", "review_sha256": "752895e1b4be7f8a158ac216e3e2b00789340dcada3c7f16764b8d0c7f82e45b", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-model-proxy.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:10.141+00:00", "load1": "2.14"}, "end": {"utc": "2026-10-24T21:39:10.319+00:00", "load1": "2.14"}, "seconds": 0.178, "counts": {"tests": 9, "pass": 9, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-model-proxy.test.txt", "raw": "/mnt/storage/scratch/tmp/e0u3Hh/stdout.txt", "raw_sha256": "1860f6a85d3d37ff21333d379a31b081e5ef3b8371c33945c4a477c30cb8b90b", "review_sha256": "1860f6a85d3d37ff21333d379a31b081e5ef3b8371c33945c4a477c30cb8b90b", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-names.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:10.321+00:00", "load1": "2.14"}, "end": {"utc": "2026-10-24T21:39:10.528+00:00", "load1": "2.14"}, "seconds": 0.208, "counts": {"tests": 2, "pass": 2, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-names.test.txt", "raw": "/mnt/storage/scratch/tmp/amSBet/stdout.txt", "raw_sha256": "3fb040411ad19c4fa194485f8059de0eb39cad55641c9631d18e8bc426b51f0d", "review_sha256": "3fb040411ad19c4fa194485f8059de0eb39cad55641c9631d18e8bc426b51f0d", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-optional-tracker.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:10.530+00:00", "load1": "2.14"}, "end": {"utc": "2026-10-24T21:39:10.786+00:00", "load1": "2.13"}, "seconds": 0.256, "counts": {"tests": 4, "pass": 4, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-optional-tracker.test.txt", "raw": "/mnt/storage/scratch/tmp/9IGea0/stdout.txt", "raw_sha256": "266aea732bdc9378ea736d2fb9f9bf323977aeceab84344b425b1413315be4bf", "review_sha256": "266aea732bdc9378ea736d2fb9f9bf323977aeceab84344b425b1413315be4bf", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-other-tree.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:10.787+00:00", "load1": "2.13"}, "end": {"utc": "2026-10-24T21:39:10.959+00:00", "load1": "2.13"}, "seconds": 0.171, "counts": {"tests": 4, "pass": 4, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-other-tree.test.txt", "raw": "/mnt/storage/scratch/tmp/Oy7nTk/stdout.txt", "raw_sha256": "ff27aac13153d0e13eed59d219b3b65f5324e96e7cd23b8249caf8900dccf551", "review_sha256": "ff27aac13153d0e13eed59d219b3b65f5324e96e7cd23b8249caf8900dccf551", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-processing-cli.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:10.960+00:00", "load1": "2.13"}, "end": {"utc": "2026-10-24T21:39:11.187+00:00", "load1": "2.13"}, "seconds": 0.227, "counts": {"tests": 4, "pass": 4, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-processing-cli.test.txt", "raw": "/mnt/storage/scratch/tmp/2bnmQA/stdout.txt", "raw_sha256": "ba2208b51786a0d4b536f76d840e4d3f86cd26a81c7989fc5ca06e13ac392c16", "review_sha256": "ba2208b51786a0d4b536f76d840e4d3f86cd26a81c7989fc5ca06e13ac392c16", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-project-name-repo.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:11.189+00:00", "load1": "2.13"}, "end": {"utc": "2026-10-24T21:39:11.428+00:00", "load1": "2.13"}, "seconds": 0.239, "counts": {"tests": 2, "pass": 2, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-project-name-repo.test.txt", "raw": "/mnt/storage/scratch/tmp/taUr0g/stdout.txt", "raw_sha256": "2ab5c5589a967a49af9a48b6fe9d8b070c83fb4ddafa701cb314ee8eacf58803", "review_sha256": "2ab5c5589a967a49af9a48b6fe9d8b070c83fb4ddafa701cb314ee8eacf58803", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-project.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:11.429+00:00", "load1": "2.13"}, "end": {"utc": "2026-10-24T21:39:11.904+00:00", "load1": "2.13"}, "seconds": 0.475, "counts": {"tests": 4, "pass": 4, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-project.test.txt", "raw": "/mnt/storage/scratch/tmp/Tn0793/stdout.txt", "raw_sha256": "eeb05c7bbb900111114536562271a0561961366d800d10dc9a523427c9d948d4", "review_sha256": "eeb05c7bbb900111114536562271a0561961366d800d10dc9a523427c9d948d4", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-publish-socket.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:11.906+00:00", "load1": "2.13"}, "end": {"utc": "2026-10-24T21:39:18.473+00:00", "load1": "2.36"}, "seconds": 6.568, "counts": {"tests": 9, "pass": 9, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-publish-socket.test.txt", "raw": "/mnt/storage/scratch/tmp/r2vBrV/stdout.txt", "raw_sha256": "5f37bd01ad735a22847e23288eb74de145fc7d9409212ce7f750a1f5537e589b", "review_sha256": "5f37bd01ad735a22847e23288eb74de145fc7d9409212ce7f750a1f5537e589b", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-revoke-window.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:18.475+00:00", "load1": "2.36"}, "end": {"utc": "2026-10-24T21:39:19.442+00:00", "load1": "2.36"}, "seconds": 0.967, "counts": {"tests": 1, "pass": 1, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-revoke-window.test.txt", "raw": "/mnt/storage/scratch/tmp/VS66YH/stdout.txt", "raw_sha256": "11fe687feb95434d03dfb29bbb6b29daa8eded4ed9ef57c1205439952505bab7", "review_sha256": "11fe687feb95434d03dfb29bbb6b29daa8eded4ed9ef57c1205439952505bab7", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-session-clear.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:19.445+00:00", "load1": "2.36"}, "end": {"utc": "2026-10-24T21:39:31.363+00:00", "load1": "2.97"}, "seconds": 11.919, "counts": {"tests": 5, "pass": 5, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-session-clear.test.txt", "raw": "/mnt/storage/scratch/tmp/QUDudM/stdout.txt", "raw_sha256": "6eb2f7df1081685a59a0ce69efc1b8fe35ac155c6f4222d9b79d4953079f2560", "review_sha256": "6eb2f7df1081685a59a0ce69efc1b8fe35ac155c6f4222d9b79d4953079f2560", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-session-cli.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:31.367+00:00", "load1": "2.97"}, "end": {"utc": "2026-10-24T21:39:31.606+00:00", "load1": "2.97"}, "seconds": 0.239, "counts": {"tests": 14, "pass": 14, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-session-cli.test.txt", "raw": "/mnt/storage/scratch/tmp/lbbeOc/stdout.txt", "raw_sha256": "a6cf001371e3d37548209e27a96790aeab1658f9834ad3aad0079bb848f798f9", "review_sha256": "a6cf001371e3d37548209e27a96790aeab1658f9834ad3aad0079bb848f798f9", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-session-launch.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:31.607+00:00", "load1": "2.97"}, "end": {"utc": "2026-10-24T21:39:42.518+00:00", "load1": "3.19"}, "seconds": 10.911, "counts": {"tests": 8, "pass": 8, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-session-launch.test.txt", "raw": "/mnt/storage/scratch/tmp/aqnzkf/stdout.txt", "raw_sha256": "4bce7c2a9c9f3c067de4c9b517f3163f7ad011ab8b8fd270b253f197beddc87e", "review_sha256": "4bce7c2a9c9f3c067de4c9b517f3163f7ad011ab8b8fd270b253f197beddc87e", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-stack-copy.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:42.520+00:00", "load1": "3.19"}, "end": {"utc": "2026-10-24T21:39:59.726+00:00", "load1": "2.93"}, "seconds": 17.206, "counts": {"tests": 18, "pass": 18, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-stack-copy.test.txt", "raw": "/mnt/storage/scratch/tmp/Lf8Ohc/stdout.txt", "raw_sha256": "cbca0eec372ce64f9f79b44b223edfa4cb6e36192aa3b2c9f34524a581d792ce", "review_sha256": "cbca0eec372ce64f9f79b44b223edfa4cb6e36192aa3b2c9f34524a581d792ce", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-stack-instances.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:39:59.728+00:00", "load1": "2.93"}, "end": {"utc": "2026-10-24T21:40:03.541+00:00", "load1": "3.25"}, "seconds": 3.813, "counts": {"tests": 24, "pass": 24, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-stack-instances.test.txt", "raw": "/mnt/storage/scratch/tmp/UtkF7t/stdout.txt", "raw_sha256": "29cbaca8d32ed51cc4352005e7c8ed5b2218eaa68c0d5848dd65454394637070", "review_sha256": "29cbaca8d32ed51cc4352005e7c8ed5b2218eaa68c0d5848dd65454394637070", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-stack-release-external.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:40:03.542+00:00", "load1": "3.25"}, "end": {"utc": "2026-10-24T21:41:28.659+00:00", "load1": "4.26"}, "seconds": 85.117, "counts": {"tests": 25, "pass": 25, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-stack-release-external.test.txt", "raw": "/mnt/storage/scratch/tmp/jCTyLN/stdout.txt", "raw_sha256": "978b39a672d14aacc0158096c98da23e8b1384145005181156be191705498790", "review_sha256": "978b39a672d14aacc0158096c98da23e8b1384145005181156be191705498790", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-stack-release.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:41:28.660+00:00", "load1": "4.26"}, "end": {"utc": "2026-10-24T21:52:33.444+00:00", "load1": "4.54"}, "seconds": 664.784, "counts": {"tests": 224, "pass": 224, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-stack-release.test.txt", "raw": "/mnt/storage/scratch/tmp/j7fVCe/stdout.txt", "raw_sha256": "727fc9c272f2b677f495e644f1f25fd25d2f6771f892f0cdc4eddcc486c8ffed", "review_sha256": "727fc9c272f2b677f495e644f1f25fd25d2f6771f892f0cdc4eddcc486c8ffed", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-stack-upgrade.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:52:33.450+00:00", "load1": "4.54"}, "end": {"utc": "2026-10-24T21:53:53.223+00:00", "load1": "5.53"}, "seconds": 79.773, "counts": {"tests": 21, "pass": 21, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-stack-upgrade.test.txt", "raw": "/mnt/storage/scratch/tmp/oSQDBM/stdout.txt", "raw_sha256": "5bc6c98d28d0efaaf8e22a7424c14490a002d2f4309d3cff5560fb6cc81005a8", "review_sha256": "5bc6c98d28d0efaaf8e22a7424c14490a002d2f4309d3cff5560fb6cc81005a8", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-tester-reads.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:53:53.225+00:00", "load1": "5.53"}, "end": {"utc": "2026-10-24T21:53:56.317+00:00", "load1": "5.33"}, "seconds": 3.092, "counts": {"tests": 6, "pass": 6, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-tester-reads.test.txt", "raw": "/mnt/storage/scratch/tmp/rTd0c8/stdout.txt", "raw_sha256": "5f5857a678ee71288a830f46ebdfe2906fdbfaf9ca05c45bc24f8733fc85e72a", "review_sha256": "5f5857a678ee71288a830f46ebdfe2906fdbfaf9ca05c45bc24f8733fc85e72a", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-tester-threads.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:53:56.319+00:00", "load1": "5.33"}, "end": {"utc": "2026-10-24T21:53:59.324+00:00", "load1": "5.33"}, "seconds": 3.005, "counts": {"tests": 5, "pass": 5, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-tester-threads.test.txt", "raw": "/mnt/storage/scratch/tmp/f2GP8b/stdout.txt", "raw_sha256": "2345321de50437a397787c460a5e1b1b8e23333c1079738cb29586d0a073ca17", "review_sha256": "2345321de50437a397787c460a5e1b1b8e23333c1079738cb29586d0a073ca17", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-tester.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:53:59.326+00:00", "load1": "5.33"}, "end": {"utc": "2026-10-24T21:53:59.659+00:00", "load1": "5.33"}, "seconds": 0.332, "counts": {"tests": 11, "pass": 11, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-tester.test.txt", "raw": "/mnt/storage/scratch/tmp/DiGfBC/stdout.txt", "raw_sha256": "08e86197474154f56a7145f675e8dda2706e7836815e200fd0cb1d878df08c2e", "review_sha256": "08e86197474154f56a7145f675e8dda2706e7836815e200fd0cb1d878df08c2e", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-thread-cli.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:53:59.660+00:00", "load1": "5.33"}, "end": {"utc": "2026-10-24T21:54:01.569+00:00", "load1": "6.50"}, "seconds": 1.909, "counts": {"tests": 11, "pass": 11, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-thread-cli.test.txt", "raw": "/mnt/storage/scratch/tmp/SCT6IZ/stdout.txt", "raw_sha256": "140c3a7e88ffdf1201cbb19ebb2090c53b1ee85a8c38e36e384bdf799c53ba36", "review_sha256": "140c3a7e88ffdf1201cbb19ebb2090c53b1ee85a8c38e36e384bdf799c53ba36", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-thread-launch.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:54:01.570+00:00", "load1": "6.50"}, "end": {"utc": "2026-10-24T21:54:21.043+00:00", "load1": "5.72"}, "seconds": 19.472, "counts": {"tests": 15, "pass": 15, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-thread-launch.test.txt", "raw": "/mnt/storage/scratch/tmp/TwM9x5/stdout.txt", "raw_sha256": "87cf64e2c72f38a70e92299bcc53ef89b4d7285233ce6142d7d68804eaf6a4eb", "review_sha256": "87cf64e2c72f38a70e92299bcc53ef89b4d7285233ce6142d7d68804eaf6a4eb", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-thread-revoke.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:54:21.044+00:00", "load1": "5.72"}, "end": {"utc": "2026-10-24T21:54:21.928+00:00", "load1": "5.72"}, "seconds": 0.884, "counts": {"tests": 3, "pass": 3, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-thread-revoke.test.txt", "raw": "/mnt/storage/scratch/tmp/8Ic4S9/stdout.txt", "raw_sha256": "c01ea3664cf8797d3c6c9af41134654b96b01ee79cd2355881866bf88d2fb225", "review_sha256": "c01ea3664cf8797d3c6c9af41134654b96b01ee79cd2355881866bf88d2fb225", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-trackers-boot.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:54:21.930+00:00", "load1": "5.72"}, "end": {"utc": "2026-10-24T21:54:22.798+00:00", "load1": "5.72"}, "seconds": 0.868, "counts": {"tests": 2, "pass": 2, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-trackers-boot.test.txt", "raw": "/mnt/storage/scratch/tmp/vZgXMl/stdout.txt", "raw_sha256": "596819d78167fcf2a65dd93a52de1b0cf9340b1eac7035cecfec9f672ae223b5", "review_sha256": "596819d78167fcf2a65dd93a52de1b0cf9340b1eac7035cecfec9f672ae223b5", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-usage.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:54:22.800+00:00", "load1": "5.72"}, "end": {"utc": "2026-10-24T21:54:23.194+00:00", "load1": "5.72"}, "seconds": 0.395, "counts": {"tests": 2, "pass": 2, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-usage.test.txt", "raw": "/mnt/storage/scratch/tmp/oGiavl/stdout.txt", "raw_sha256": "87d39eb6922fb37a6d220efd2418e3576437da52427cf3d48e59f27cedc7b23b", "review_sha256": "87d39eb6922fb37a6d220efd2418e3576437da52427cf3d48e59f27cedc7b23b", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "cli-verbs.test", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:54:23.197+00:00", "load1": "5.72"}, "end": {"utc": "2026-10-24T21:54:26.666+00:00", "load1": "6.39"}, "seconds": 3.47, "counts": {"tests": 9, "pass": 9, "fail": 0, "skipped": 0, "cancelled": 0}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/cli-verbs.test.txt", "raw": "/mnt/storage/scratch/tmp/iUz5gn/stdout.txt", "raw_sha256": "4a5915b363f0e34ec6ee66f70e7844800ddcc2e6b8a37fc6d3a951ef9185c1ce", "review_sha256": "4a5915b363f0e34ec6ee66f70e7844800ddcc2e6b8a37fc6d3a951ef9185c1ce", "normalization": "trailing whitespace only; raw retained"}
|
||||
{"label": "test-config.sh", "rc": 0, "nice": 19, "begin": {"utc": "2026-10-24T21:54:26.668+00:00", "load1": "6.39"}, "end": {"utc": "2026-10-24T21:54:29.245+00:00", "load1": "6.39"}, "seconds": 2.577, "counts": {"tests": null, "pass": null, "fail": null, "skipped": null, "cancelled": null}, "failure_events": [], "log": "agents/magica/work/queue-329/gate-r2/test-config.sh.txt", "raw": "/mnt/storage/scratch/tmp/vCSq24/stdout.txt", "raw_sha256": "21d65fae2201534dd0c14771fa2d387d643ca698aa550faaa60fdc2a509e53dc", "review_sha256": "21d65fae2201534dd0c14771fa2d387d643ca698aa550faaa60fdc2a509e53dc", "normalization": "trailing whitespace only; raw retained"}
|
||||
Round2 gate complete.
|
||||
@@ -0,0 +1,46 @@
|
||||
# Sage4274/4276 cleared whole-file gate. Product source is fixed before invocation.
|
||||
import datetime,hashlib,json,os,pathlib,re,subprocess,threading,time
|
||||
REPO=pathlib.Path(__file__).resolve().parents[4]
|
||||
BASE=REPO/'agents/magica/work/queue-329'
|
||||
OUT=BASE/'gate-r2'
|
||||
def utc():return datetime.datetime.now(datetime.timezone.utc).isoformat(timespec='milliseconds')
|
||||
def load():return pathlib.Path('/proc/loadavg').read_text().split()[0]
|
||||
def nice19():os.setpriority(os.PRIO_PROCESS,0,19)
|
||||
def run(label,cmd,seconds=1800):
|
||||
scratch=subprocess.check_output(['mktemp','-d','/mnt/storage/scratch/tmp/XXXXXX'],text=True).strip()
|
||||
env=dict(os.environ,TMPDIR=scratch,npm_config_offline='true',MOSAIC_REQUIRE_EDITOR_BUILD='1')
|
||||
raw=pathlib.Path(scratch)/'stdout.txt';log=OUT/(label+'.txt');begin={'utc':utc(),'load1':load()};started=time.monotonic();events=[]
|
||||
stop=threading.Event()
|
||||
def sample():
|
||||
with (OUT/(label+'.load.jsonl')).open('w') as f:
|
||||
while not stop.is_set():f.write(json.dumps({'utc':utc(),'load1':load()})+'\n');f.flush();stop.wait(1)
|
||||
thread=threading.Thread(target=sample);thread.start()
|
||||
try:
|
||||
with raw.open('w') as f:
|
||||
f.write('command: '+json.dumps(['timeout','-k','10',str(seconds),*cmd])+'\nTMPDIR: '+scratch+'\nbegin: '+json.dumps(begin)+'\n');f.flush()
|
||||
p=subprocess.Popen(['timeout','-k','10',str(seconds),*cmd],cwd=REPO,env=env,stdout=subprocess.PIPE,stderr=subprocess.STDOUT,text=True,preexec_fn=nice19)
|
||||
priority=os.getpriority(os.PRIO_PROCESS,p.pid);f.write('launch nice: '+str(priority)+'\n');f.flush()
|
||||
for line in p.stdout:
|
||||
f.write(line);f.flush()
|
||||
if re.match(r'^\s*(✖|not ok )',line):events.append({'utc':utc(),'load1':load(),'event':line.rstrip()})
|
||||
rc=p.wait()
|
||||
finally:stop.set();thread.join()
|
||||
text=raw.read_text();log.write_text(''.join(line.rstrip()+'\n' for line in text.splitlines()))
|
||||
counts={}
|
||||
for k in ['tests','pass','fail','skipped','cancelled']:
|
||||
matches=re.findall(r'^(?:ℹ |# )'+k+r' (\d+)',text,re.M);counts[k]=int(matches[-1]) if matches else None
|
||||
receipt={'label':label,'rc':rc,'nice':priority,'begin':begin,'end':{'utc':utc(),'load1':load()},'seconds':round(time.monotonic()-started,3),'counts':counts,'failure_events':events,'log':str(log.relative_to(REPO)),'raw':str(raw),'raw_sha256':hashlib.sha256(raw.read_bytes()).hexdigest(),'review_sha256':hashlib.sha256(log.read_bytes()).hexdigest(),'normalization':'trailing whitespace only; raw retained'}
|
||||
with (OUT/'runs.jsonl').open('a') as f:f.write(json.dumps(receipt)+'\n')
|
||||
print(json.dumps(receipt),flush=True)
|
||||
return rc
|
||||
for file in sorted((REPO/'packages/model-proxy/tests').glob('*.test.mjs')):
|
||||
if run('model-proxy-'+file.stem,['node','--test',str(file)]):raise SystemExit(1)
|
||||
readers=json.loads((BASE/'r2-reader-files.json').read_text())
|
||||
for name in readers:
|
||||
if name.endswith('/federation-acceptance.test.mjs'):
|
||||
if run('cli-federation-acceptance-runner',['bash',str(REPO/'scripts/test-federation-acceptance.sh')],600):raise SystemExit(1)
|
||||
else:
|
||||
f=pathlib.Path(name)
|
||||
if run(f.parts[1]+'-'+f.stem,['node','--test',str(REPO/f)]):raise SystemExit(1)
|
||||
if run('test-config.sh',['bash',str(REPO/'scripts/test-config.sh')],600):raise SystemExit(1)
|
||||
print('Round2 gate complete.',flush=True)
|
||||
@@ -0,0 +1,622 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/model-proxy/tests/management-key-encoding.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/wfREQX
|
||||
nice: 19
|
||||
✖ proxy-key-invalid: Latin-1 leaves complete config/data inventories unchanged (17.65513ms)
|
||||
✖ proxy-key-invalid: leading space leaves complete config/data inventories unchanged (4.343871ms)
|
||||
✖ proxy-key-invalid: trailing space leaves complete config/data inventories unchanged (2.557103ms)
|
||||
✖ proxy-key-invalid: internal space leaves complete config/data inventories unchanged (3.2301ms)
|
||||
✔ printable non-space ASCII control initializes and authenticates with unchanged existing files (10.212034ms)
|
||||
ℹ tests 5
|
||||
ℹ suites 0
|
||||
ℹ pass 1
|
||||
ℹ fail 4
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 106.39976
|
||||
|
||||
✖ failing tests:
|
||||
|
||||
test at packages/model-proxy/tests/management-key-encoding.test.mjs:53:3
|
||||
✖ proxy-key-invalid: Latin-1 leaves complete config/data inventories unchanged (17.65513ms)
|
||||
AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
|
||||
+ actual - expected
|
||||
... Skipped lines
|
||||
|
||||
{
|
||||
+ refusal: null,
|
||||
- refusal: 'proxy-key-invalid',
|
||||
trees: {
|
||||
config: [
|
||||
{
|
||||
+ changed: '1792877317880267062',
|
||||
- changed: '1792877317869266954',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
inode: '35585306',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317880267062',
|
||||
- modified: '1792877317869266954',
|
||||
path: '.',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317869266954',
|
||||
...
|
||||
{
|
||||
+ changed: '1792877317879267052',
|
||||
- changed: '1792877317869266954',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
+ inode: '35585385',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317879267052',
|
||||
+ path: 'proxy.json',
|
||||
+ sha256: 'eae788102d628764ed2632c51a0c7aa190a7170cdfd163fec91a19f3b54d18b2',
|
||||
+ size: '128',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317879267052',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
inode: '35854617',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317879267052',
|
||||
- modified: '1792877317869266954',
|
||||
path: 'secrets',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317869266954',
|
||||
...
|
||||
},
|
||||
+ {
|
||||
+ changed: '1792877317879267052',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '35854619',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317879267052',
|
||||
+ path: 'secrets/proxy-management.key',
|
||||
+ sha256: '361442f92cff70a5a8a7516c5f7fcf00c41f8dd603b1a68e35705762ed0c5204',
|
||||
+ size: '11',
|
||||
+ uid: '1000'
|
||||
+ }
|
||||
],
|
||||
data: [
|
||||
{
|
||||
+ changed: '1792877317878267042',
|
||||
- changed: '1792877317869266954',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
inode: '35985487',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317878267042',
|
||||
- modified: '1792877317869266954',
|
||||
path: '.',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317869266954',
|
||||
...
|
||||
},
|
||||
+ {
|
||||
+ changed: '1792877317879267052',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37276524',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317879267052',
|
||||
+ path: 'proxy',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317878267042',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37406254',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317878267042',
|
||||
+ path: 'proxy/auth',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317879267052',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37276525',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317879267052',
|
||||
+ path: 'proxy/config.yaml',
|
||||
+ sha256: '913357d615bc20d3e116cc86e1bc9121d422193eb59d6b53e3460a905089a0c2',
|
||||
+ size: '714',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317879267052',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37558552',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317879267052',
|
||||
+ path: 'proxy/logs',
|
||||
+ uid: '1000'
|
||||
+ }
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/model-proxy/tests/management-key-encoding.test.mjs:56:12)
|
||||
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
|
||||
at async Test.run (node:internal/test_runner/test:1409:7)
|
||||
at async startSubtestAfterBootstrap (node:internal/test_runner/harness:387:3) {
|
||||
generatedMessage: true,
|
||||
code: 'ERR_ASSERTION',
|
||||
actual: { refusal: null, trees: { config: [Array], data: [Array] } },
|
||||
expected: { refusal: 'proxy-key-invalid', trees: { config: [Array], data: [Array] } },
|
||||
operator: 'deepStrictEqual',
|
||||
diff: 'simple'
|
||||
}
|
||||
|
||||
test at packages/model-proxy/tests/management-key-encoding.test.mjs:53:3
|
||||
✖ proxy-key-invalid: leading space leaves complete config/data inventories unchanged (4.343871ms)
|
||||
AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
|
||||
+ actual - expected
|
||||
... Skipped lines
|
||||
|
||||
{
|
||||
+ refusal: null,
|
||||
- refusal: 'proxy-key-invalid',
|
||||
trees: {
|
||||
config: [
|
||||
{
|
||||
+ changed: '1792877317887267130',
|
||||
- changed: '1792877317885267111',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
inode: '35585306',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317887267130',
|
||||
- modified: '1792877317885267111',
|
||||
path: '.',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317885267111',
|
||||
...
|
||||
{
|
||||
+ changed: '1792877317887267130',
|
||||
- changed: '1792877317885267111',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
+ inode: '35585385',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317887267130',
|
||||
+ path: 'proxy.json',
|
||||
+ sha256: '44fd676f556fbb60af0a2d2c08bbc19d652401d89004a01b8c1fd6ab699d3069',
|
||||
+ size: '128',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317886267120',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
inode: '35854617',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317886267120',
|
||||
- modified: '1792877317885267111',
|
||||
path: 'secrets',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317885267111',
|
||||
...
|
||||
},
|
||||
+ {
|
||||
+ changed: '1792877317886267120',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '35854619',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317886267120',
|
||||
+ path: 'secrets/proxy-management.key',
|
||||
+ sha256: '12f158329015f5fa117a4be5b3380d6e989bd9d1e699af4b1555284e6c53811e',
|
||||
+ size: '12',
|
||||
+ uid: '1000'
|
||||
+ }
|
||||
],
|
||||
data: [
|
||||
{
|
||||
+ changed: '1792877317886267120',
|
||||
- changed: '1792877317885267111',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
inode: '35985487',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317886267120',
|
||||
- modified: '1792877317885267111',
|
||||
path: '.',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317885267111',
|
||||
...
|
||||
},
|
||||
+ {
|
||||
+ changed: '1792877317886267120',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37276524',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317886267120',
|
||||
+ path: 'proxy',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317886267120',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37406254',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317886267120',
|
||||
+ path: 'proxy/auth',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317886267120',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37276525',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317886267120',
|
||||
+ path: 'proxy/config.yaml',
|
||||
+ sha256: '0056450ab396dc65c0b35b3e62c38909d3f5ae88ae3e1557edf0d36aeae57ab4',
|
||||
+ size: '715',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317886267120',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37558552',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317886267120',
|
||||
+ path: 'proxy/logs',
|
||||
+ uid: '1000'
|
||||
+ }
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/model-proxy/tests/management-key-encoding.test.mjs:56:12)
|
||||
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
|
||||
at async Test.run (node:internal/test_runner/test:1409:7)
|
||||
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
|
||||
generatedMessage: true,
|
||||
code: 'ERR_ASSERTION',
|
||||
actual: { refusal: null, trees: { config: [Array], data: [Array] } },
|
||||
expected: { refusal: 'proxy-key-invalid', trees: { config: [Array], data: [Array] } },
|
||||
operator: 'deepStrictEqual',
|
||||
diff: 'simple'
|
||||
}
|
||||
|
||||
test at packages/model-proxy/tests/management-key-encoding.test.mjs:53:3
|
||||
✖ proxy-key-invalid: trailing space leaves complete config/data inventories unchanged (2.557103ms)
|
||||
AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
|
||||
+ actual - expected
|
||||
... Skipped lines
|
||||
|
||||
{
|
||||
+ refusal: null,
|
||||
- refusal: 'proxy-key-invalid',
|
||||
trees: {
|
||||
config: [
|
||||
{
|
||||
+ changed: '1792877317890267159',
|
||||
- changed: '1792877317889388572',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
inode: '35585306',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317890267159',
|
||||
- modified: '1792877317889388572',
|
||||
path: '.',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317889388572',
|
||||
...
|
||||
{
|
||||
+ changed: '1792877317890267159',
|
||||
- changed: '1792877317889388572',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
+ inode: '35585385',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317890267159',
|
||||
+ path: 'proxy.json',
|
||||
+ sha256: '5a88bb4a05eeb2dccabc528085d552425331f947f7a310876018b8f4d98c1f4c',
|
||||
+ size: '128',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317890267159',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
inode: '35854617',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317890267159',
|
||||
- modified: '1792877317889388572',
|
||||
path: 'secrets',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317889388572',
|
||||
...
|
||||
},
|
||||
+ {
|
||||
+ changed: '1792877317890267159',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '35854619',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317890267159',
|
||||
+ path: 'secrets/proxy-management.key',
|
||||
+ sha256: '679ceb45ea1307ef138dec7d9b8f1dbe01928a486cd451cc03f9387118486fb8',
|
||||
+ size: '12',
|
||||
+ uid: '1000'
|
||||
+ }
|
||||
],
|
||||
data: [
|
||||
{
|
||||
+ changed: '1792877317890267159',
|
||||
- changed: '1792877317889388572',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
inode: '35985487',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317890267159',
|
||||
- modified: '1792877317889388572',
|
||||
path: '.',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317889388572',
|
||||
...
|
||||
},
|
||||
+ {
|
||||
+ changed: '1792877317890267159',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37276524',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317890267159',
|
||||
+ path: 'proxy',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317890267159',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37406254',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317890267159',
|
||||
+ path: 'proxy/auth',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317890267159',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37276525',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317890267159',
|
||||
+ path: 'proxy/config.yaml',
|
||||
+ sha256: '74995e5bd516dfa85c4d9d1e94a9bd6f456caf9670cb15afc159e394191caf3e',
|
||||
+ size: '715',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317890267159',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37558552',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317890267159',
|
||||
+ path: 'proxy/logs',
|
||||
+ uid: '1000'
|
||||
+ }
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/model-proxy/tests/management-key-encoding.test.mjs:56:12)
|
||||
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
|
||||
at async Test.run (node:internal/test_runner/test:1409:7)
|
||||
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
|
||||
generatedMessage: true,
|
||||
code: 'ERR_ASSERTION',
|
||||
actual: { refusal: null, trees: { config: [Array], data: [Array] } },
|
||||
expected: { refusal: 'proxy-key-invalid', trees: { config: [Array], data: [Array] } },
|
||||
operator: 'deepStrictEqual',
|
||||
diff: 'simple'
|
||||
}
|
||||
|
||||
test at packages/model-proxy/tests/management-key-encoding.test.mjs:53:3
|
||||
✖ proxy-key-invalid: internal space leaves complete config/data inventories unchanged (3.2301ms)
|
||||
AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
|
||||
+ actual - expected
|
||||
... Skipped lines
|
||||
|
||||
{
|
||||
+ refusal: null,
|
||||
- refusal: 'proxy-key-invalid',
|
||||
trees: {
|
||||
config: [
|
||||
{
|
||||
+ changed: '1792877317893267189',
|
||||
- changed: '1792877317892267179',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
inode: '35585306',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317893267189',
|
||||
- modified: '1792877317892267179',
|
||||
path: '.',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317892267179',
|
||||
...
|
||||
{
|
||||
+ changed: '1792877317893210462',
|
||||
- changed: '1792877317892267179',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
+ inode: '35585385',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317893210462',
|
||||
+ path: 'proxy.json',
|
||||
+ sha256: '835d57f852a1f6534d8e8c3ba4b9e0e9dbc959fd52dd0b3ab37e665ff71a7919',
|
||||
+ size: '128',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317892893590',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
inode: '35854617',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317892893590',
|
||||
- modified: '1792877317892267179',
|
||||
path: 'secrets',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317892267179',
|
||||
...
|
||||
},
|
||||
+ {
|
||||
+ changed: '1792877317892893590',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '35854619',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317892893590',
|
||||
+ path: 'secrets/proxy-management.key',
|
||||
+ sha256: '387f480c5b52b6bfdd2b37db75106545b5d3bbbc68a840949f37d99f5bf75c46',
|
||||
+ size: '11',
|
||||
+ uid: '1000'
|
||||
+ }
|
||||
],
|
||||
data: [
|
||||
{
|
||||
+ changed: '1792877317892893590',
|
||||
- changed: '1792877317892267179',
|
||||
device: '66305',
|
||||
gid: '1000',
|
||||
inode: '35985487',
|
||||
kind: 'directory',
|
||||
mode: '700',
|
||||
+ modified: '1792877317892893590',
|
||||
- modified: '1792877317892267179',
|
||||
path: '.',
|
||||
uid: '1000'
|
||||
},
|
||||
{
|
||||
changed: '1792877317892267179',
|
||||
...
|
||||
},
|
||||
+ {
|
||||
+ changed: '1792877317892893590',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37276524',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317892893590',
|
||||
+ path: 'proxy',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317892893590',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37406254',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317892893590',
|
||||
+ path: 'proxy/auth',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317892893590',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37276525',
|
||||
+ kind: 'file',
|
||||
+ mode: '600',
|
||||
+ modified: '1792877317892893590',
|
||||
+ path: 'proxy/config.yaml',
|
||||
+ sha256: 'cffd56c62767ae2470f81322c1f201e4b77d078801cbebaab264669b643a7920',
|
||||
+ size: '714',
|
||||
+ uid: '1000'
|
||||
+ },
|
||||
+ {
|
||||
+ changed: '1792877317892893590',
|
||||
+ device: '66305',
|
||||
+ gid: '1000',
|
||||
+ inode: '37558552',
|
||||
+ kind: 'directory',
|
||||
+ mode: '700',
|
||||
+ modified: '1792877317892893590',
|
||||
+ path: 'proxy/logs',
|
||||
+ uid: '1000'
|
||||
+ }
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/model-proxy/tests/management-key-encoding.test.mjs:56:12)
|
||||
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
|
||||
at async Test.run (node:internal/test_runner/test:1409:7)
|
||||
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
|
||||
generatedMessage: true,
|
||||
code: 'ERR_ASSERTION',
|
||||
actual: { refusal: null, trees: { config: [Array], data: [Array] } },
|
||||
expected: { refusal: 'proxy-key-invalid', trees: { config: [Array], data: [Array] } },
|
||||
operator: 'deepStrictEqual',
|
||||
diff: 'simple'
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:13.135+00:00", "load1": "2.97"}
|
||||
@@ -0,0 +1,22 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/access-revoke.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/GHeQEZ
|
||||
begin: {"utc": "2026-10-24T21:31:13.135+00:00", "load1": "2.97"}
|
||||
launch nice: 19
|
||||
✔ R4: the timer sweep after a hand edit ends only the lost user's run; its next call refuses thread-revoked (34.547237ms)
|
||||
✔ R4: an expiry with no write and no request ends the run at the next timer sweep (24.609266ms)
|
||||
✔ R4: a downgrade to viewer is a loss (22.279316ms)
|
||||
✔ R4: another user's request after a hand edit ends the lost user's run, and its own run stays (24.741291ms)
|
||||
✔ R4: a request reads the access file only when its stamp changed, once per change (22.355965ms)
|
||||
✔ R4: access.reload ends the lost runs at once for the human; the tester, a reader, an agent and a user are refused (27.346334ms)
|
||||
✔ R4: threadsState marks revoked: true on the lost user's thread only, a pending message included (18.726202ms)
|
||||
✔ R4: threadsState after an expiry with no write and no sweep ends the claim before it marks the row revoked (23.973845ms)
|
||||
✔ R4: a new run of a revoked thread refuses thread-revoked at bind and at claim; a rebind is allowed (20.679959ms)
|
||||
✔ R4 runtime: a hand edit ends the run at the first timer period, intervalMs is checked, and close stops the timer (60.782175ms)
|
||||
ℹ tests 10
|
||||
ℹ suites 0
|
||||
ℹ pass 10
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 428.488475
|
||||
@@ -0,0 +1,3 @@
|
||||
{"utc": "2026-10-24T21:31:13.595+00:00", "load1": "2.97"}
|
||||
{"utc": "2026-10-24T21:31:14.595+00:00", "load1": "2.97"}
|
||||
{"utc": "2026-10-24T21:31:15.595+00:00", "load1": "2.97"}
|
||||
@@ -0,0 +1,63 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/chief-of-staff.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/70lNbE
|
||||
begin: {"utc": "2026-10-24T21:31:13.594+00:00", "load1": "2.97"}
|
||||
launch nice: 19
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ REQ-COS-1, REQ-ROLE-2: the chief of staff ends a run with a reason and no decision, and the reason is logged (32.021419ms)
|
||||
✔ REQ-ROLE-2: a role without role.end still needs a resolved decision to revoke (29.430214ms)
|
||||
✔ REQ-ROLE-2: storage accepts a revoke with a reason or a decision and aborts one with neither (22.167041ms)
|
||||
✔ REQ-ROLE-2: the chief of staff may still cite a decision, and a decision alone is the old path (20.510415ms)
|
||||
✔ REQ-ROLE-2: a role without role.end still ends a run through a resolved decision, which is recorded and has no reason (23.797427ms)
|
||||
✔ REQ-ROLE-2: a reason is required, bounded, and never sent with a decision (24.437699ms)
|
||||
✔ REQ-COS-1: the chief of staff cannot end its own run; its end of the assistant stops the assistant's thread run (25.396808ms)
|
||||
✔ REQ-LIMIT-1, REQ-COS-1: organization.set from the chief of staff reaches the shared writer, named as the actor (21.135644ms)
|
||||
✔ REQ-LIMIT-1, REQ-COS-1: a refused organization.set logs action.refused and no action.allowed, like a refused limits.set (27.488015ms)
|
||||
✔ REQ-LIMIT-1: organization.set is refused for every caller whose role file lacks organization.change (29.388334ms)
|
||||
✔ REQ-LIMIT-1: the chief of staff is logged as allowed, and organization.set takes only the human's keys (31.937354ms)
|
||||
✔ REQ-COS-1: organization.revision answers the revision alone to the chief of staff and spends nothing (25.437066ms)
|
||||
✔ REQ-COS-1, REQ-LIMIT-1: organization.revision is refused for every caller whose role file lacks organization.change (28.407913ms)
|
||||
✔ REQ-ROLE-3, REQ-LIMIT-1: a chief-of-staff change is validated, written and logged like a human's; an invalid one is refused (92.275578ms)
|
||||
✔ REQ-COS-1: the chief of staff reads the revision, changes the file with it, and reads again after a stale one is refused (74.273995ms)
|
||||
✔ Q169: the chief of staff's change of the assistant is validated, written and logged; a stale or protection-stripping one is refused (77.219759ms)
|
||||
✔ row 65, Q169: the chief's change of the assistant's route runs the routing checks, and a valid one saves as the chief (55.095178ms)
|
||||
✔ REQ-ROLE-2, REQ-COS-1: the 3c→3d migration lets the chief of staff end a held role with a reason; neither is still refused (78.434398ms)
|
||||
✔ row 194 T10: the chief's reason end of a kept instance refuses instance-kept, holds the claim and spends nothing (20.449537ms)
|
||||
✔ row 194 T10 (Q2): a role.revoke citing a decision the human resolved still ends a kept run (21.621577ms)
|
||||
✔ row 194 T10 (B7): the chief's organization.set of a kept instance's model refuses before the writer; the human's limits.set does not (21.57776ms)
|
||||
✔ row 194 T13: organization.set and limits.set refuse the launch, retired, keep and noHire keys before the writer (25.01784ms)
|
||||
✔ row 194 T18 (D2.4): from a chief session veto.set and instances.set refuse, and nothing reaches the writer (25.455708ms)
|
||||
✔ row 194 T8: the chief hires with a reason and no decision, the writer gets the reason as context, and the log names it (21.549484ms)
|
||||
✔ row 194 T11: on a bus with two businesses, the chief of one hires and fires only in its own (18.659657ms)
|
||||
✔ row 194 T8: hire and fire need a reason of 1 to 500 characters and refuse a decision key (29.724146ms)
|
||||
✔ row 194 T8 (sage-1471): only the chief hires or fires; every other role refuses role-not-chief, even one granted the actions (28.129345ms)
|
||||
✔ row 194 T8 (sage-1471): a chief whose authority lacks role.hire or role.fire refuses decision-required before the writer (45.085341ms)
|
||||
✔ row 194 T8a: a re-hire of a fired name goes to the writer like a hire, and the writer's refusals pass through by name (24.800287ms)
|
||||
✔ row 194 T8b: a definition is hireable only when every action is on HIRE_ALLOWED, it is version 2, the chief lists it and noHire doesn't (726.025645ms)
|
||||
✔ row 194 T8b: a hire without the role files configured refuses not-configured (21.67094ms)
|
||||
✔ row 194 T9: a fire revokes the claim, cancels open requests, asks the launcher to kill the runs, then delists and logs (26.357778ms)
|
||||
✔ row 194 T9a (bus): a fire end's done writes lifecycle.end.killed and lifecycle.end.alive with run and pid, and an unknown stop's reason; a terminate's done or a bad stop refuses (27.528345ms)
|
||||
✔ row 194 T9: fire refusals come before step A and leave the claim, the requests and the file alone (24.445362ms)
|
||||
✔ row 194 T9c: a writer failure at B leaves the instance firing, and the repeat delists and logs once (27.637943ms)
|
||||
✔ row 194 T9c: a failure at C leaves the fire unlogged and the instance firing, and the repeat logs it (27.876778ms)
|
||||
✔ row 194 W-N1: a fire.done before a later fire.stopped of the same instance leaves it firing; another instance's done does not end it (24.108346ms)
|
||||
✔ row 194 T10: a hire or fire of a kept name refuses instance-kept before the writer (21.547644ms)
|
||||
✔ row 194 T10: a fire the writer's check refuses from the file stops nothing and leaves the instance launchable (22.276176ms)
|
||||
✔ row 194 T18: hire and fire take only their own keys, and a refused call writes nothing (29.326917ms)
|
||||
✔ row 194 T8, T9, T18: through the runtime the chief hires and fires with the real writer, the receipt carries the reason, and a refusal leaves the file alone (81.364182ms)
|
||||
✔ row 194 W-N1: the launcher's take of a launch or regenerate of a firing instance closes it as instance-firing (33.602482ms)
|
||||
ℹ tests 42
|
||||
ℹ suites 0
|
||||
ℹ pass 42
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 2242.04646
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:15.866+00:00", "load1": "3.13"}
|
||||
@@ -0,0 +1,13 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/citation-runtime.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/d7EDzc
|
||||
begin: {"utc": "2026-10-24T21:31:15.866+00:00", "load1": "3.13"}
|
||||
launch nice: 19
|
||||
✔ C2-06 runtime reads changed and unreadable reply limits without restarting (134.953106ms)
|
||||
ℹ tests 1
|
||||
ℹ suites 0
|
||||
ℹ pass 1
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 259.04482
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:16.156+00:00", "load1": "3.13"}
|
||||
@@ -0,0 +1,18 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/creative.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/pn1E2D
|
||||
begin: {"utc": "2026-10-24T21:31:16.156+00:00", "load1": "3.13"}
|
||||
launch nice: 19
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ M6: a creative raise refuses decision-not-allowed, cited or not, and no decision row appears; the assistant still raises (46.048691ms)
|
||||
✔ a creative instance sends only to the user and hears only from the user (45.129155ms)
|
||||
✔ M10 through the broker: the chief and the tester are refused on bean, the human's limits.set of its models key works (80.733759ms)
|
||||
✔ row 256 T6 the human deletes a creative instance through the broker; the chief and the tester are refused at the verb (61.471711ms)
|
||||
ℹ tests 4
|
||||
ℹ suites 0
|
||||
ℹ pass 4
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 352.789199
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:16.542+00:00", "load1": "3.13"}
|
||||
@@ -0,0 +1,14 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/credential-verbs.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/9f3var
|
||||
begin: {"utc": "2026-10-24T21:31:16.542+00:00", "load1": "3.13"}
|
||||
launch nice: 19
|
||||
✔ row 199: the lifecycle verbs refuse every session but the human, and the tester revokes only (45.718129ms)
|
||||
✔ T5: issue, rotate, revoke and delete are live, rewrite the business file and leave one receipt each, with no value anywhere (88.032128ms)
|
||||
ℹ tests 2
|
||||
ℹ suites 0
|
||||
ℹ pass 2
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 260.103045
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:16.834+00:00", "load1": "3.13"}
|
||||
@@ -0,0 +1,20 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/daily-quota-runtime.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/qkIeTC
|
||||
begin: {"utc": "2026-10-24T21:31:16.834+00:00", "load1": "3.13"}
|
||||
launch nice: 19
|
||||
limits: {"event":"limit-reached","business":"demo","check":"daily-quota","export":"mayLaunch","subject":{"instance":"coder","provider":"anthropic","model":"opus","account":"jason-max"},"path":["tokens","daily","jason-max"],"limit":0,"count":0,"unknownTurns":0}
|
||||
usage: {"event":"usage-unknown","business":"demo","run":"run1","instance":"coder","turn":"3ae70253-ee58-4761-9325-6571fc8fdf45","source":"@none","code":"baseline-unknown"}
|
||||
limits: {"event":"limit-reached","business":"demo","check":"daily-quota","export":"mustStop","subject":{"instance":"coder","provider":"anthropic","model":"opus","account":"jason-max"},"path":["tokens","daily","jason-max"],"limit":0,"count":0,"unknownTurns":1}
|
||||
usage: {"event":"usage-unknown","business":"demo","run":"run1","instance":"coder","turn":"23bd6b9e-8fdd-4ca9-8920-100618a0b70c","source":"@none","code":"baseline-unknown"}
|
||||
✔ REQ-LIMIT-2 runtime: limits counts the daily quota, and mayLaunch refuses only the account at it (134.844885ms)
|
||||
✔ REQ-LIMIT-4 runtime: a run bound with the account writes it on its usage records and stops at the quota (51.014958ms)
|
||||
✔ REQ-LIMIT-4 runtime: a run bound without an account records null and the daily quota never stops it (45.081133ms)
|
||||
✔ REQ-LIMIT-4 bindLaunch keeps the account off session.launched, refuses one that is not an identifier, and takes null as none (13.457066ms)
|
||||
ℹ tests 4
|
||||
ℹ suites 0
|
||||
ℹ pass 4
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 326.259933
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:17.192+00:00", "load1": "3.13"}
|
||||
@@ -0,0 +1,14 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/grant-scope-runtime.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/vvhrW2
|
||||
begin: {"utc": "2026-10-24T21:31:17.192+00:00", "load1": "3.13"}
|
||||
launch nice: 19
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ row 298 runtime: human scope approval writes the file and organization history at the supplied revision (71.674696ms)
|
||||
ℹ tests 1
|
||||
ℹ suites 0
|
||||
ℹ pass 1
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 196.005015
|
||||
@@ -0,0 +1,15 @@
|
||||
{"utc": "2026-10-24T21:31:17.418+00:00", "load1": "3.13"}
|
||||
{"utc": "2026-10-24T21:31:18.418+00:00", "load1": "3.13"}
|
||||
{"utc": "2026-10-24T21:31:19.418+00:00", "load1": "3.13"}
|
||||
{"utc": "2026-10-24T21:31:20.419+00:00", "load1": "3.13"}
|
||||
{"utc": "2026-10-24T21:31:21.419+00:00", "load1": "3.04"}
|
||||
{"utc": "2026-10-24T21:31:22.419+00:00", "load1": "3.04"}
|
||||
{"utc": "2026-10-24T21:31:23.419+00:00", "load1": "3.04"}
|
||||
{"utc": "2026-10-24T21:31:24.420+00:00", "load1": "3.04"}
|
||||
{"utc": "2026-10-24T21:31:25.420+00:00", "load1": "3.04"}
|
||||
{"utc": "2026-10-24T21:31:26.420+00:00", "load1": "2.96"}
|
||||
{"utc": "2026-10-24T21:31:27.421+00:00", "load1": "2.96"}
|
||||
{"utc": "2026-10-24T21:31:28.421+00:00", "load1": "2.96"}
|
||||
{"utc": "2026-10-24T21:31:29.421+00:00", "load1": "2.96"}
|
||||
{"utc": "2026-10-24T21:31:30.421+00:00", "load1": "2.96"}
|
||||
{"utc": "2026-10-24T21:31:31.422+00:00", "load1": "2.80"}
|
||||
@@ -0,0 +1,38 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/host-run.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/BU48EX
|
||||
begin: {"utc": "2026-10-24T21:31:17.417+00:00", "load1": "3.13"}
|
||||
launch nice: 19
|
||||
✔ row 280: an occupied TCP port is attempted, refused, and retried with our sshd (89.115057ms)
|
||||
✔ row 280: every injected picker sample is unprivileged and outside the ephemeral range (0.359153ms)
|
||||
✔ the executor tests need sshd, ssh, ssh-agent, ssh-add, ssh-keygen and setpriv: a missing one fails, never skips (0.105538ms)
|
||||
✔ T3: organization.set, limits.set and instances.set refuse hosts, and the writer never runs (24.679622ms)
|
||||
✔ T4: the value check takes one unencrypted ed25519 key and nothing else (201.007963ms)
|
||||
✔ T5 to T8: registry, grant, argv shape and allowlist refusals (516.394575ms)
|
||||
✔ T9: under 1.7 every call needs a decision bound to its host, argv and stdin, spent once (294.797122ms)
|
||||
✔ T10, T11: argv reaches sudo unchanged after sudo -n -- (274.701348ms)
|
||||
✔ T12, T13: exit code passes through, the timeout kills the group, output is capped (1499.581177ms)
|
||||
✔ T14: a host key not in the registry refuses and nothing runs (174.485366ms)
|
||||
✔ G18: hosts.check with a wrong pin refuses host-key-mismatch and runs nothing on the host (317.456396ms)
|
||||
✔ N3: a remote exit 255 that prints the pin refusal text is the command result, and an ssh failure keeps its message (303.375045ms)
|
||||
✔ T15: ssh reads no config file and no user known_hosts (270.405711ms)
|
||||
✔ T16, T17: key material in output or stdin refuses credential-leak, and no event holds it (655.718535ms)
|
||||
✔ T18, T19, T20: one call at a time, no key in any argv or env, and nothing left after (4652.92337ms)
|
||||
✔ T21: revoke kills the call in flight, and the next call refuses (305.97951ms)
|
||||
✔ T22: events carry host, address, user and argv in clear, and sizes and hashes only (261.929802ms)
|
||||
✔ T24: no literal gitea and vikunja kind list outside vocabulary.mjs, and the credential use sites are known (41.423166ms)
|
||||
✔ T25: no role definition lists host.sudo while it is a hard wait (0.5194ms)
|
||||
✔ T27: the bus child dying takes ssh and ssh-agent with it (316.803066ms)
|
||||
✔ T27: ssh-add -t drops the key from an agent the test keeps alive (3556.902707ms)
|
||||
✔ N2: a hung ssh-add is killed at its limit or on abort, and nothing is left running (429.649056ms)
|
||||
✔ T27: the start sweep keeps a live bus dir and kills only a matching live process (26.892106ms)
|
||||
✔ T27: the bus start sweeps <configDir>/secrets/run before it listens, and a stray entry stops the start (52.911346ms)
|
||||
✔ M3: host.run refuses host-not-granted unless the grant record has an approved, spent host grant (149.417261ms)
|
||||
✔ M3: a host_grants record gives Credentials a store reference at start, and a restart reads its key (112.967845ms)
|
||||
ℹ tests 26
|
||||
ℹ suites 0
|
||||
ℹ pass 26
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 14657.505831
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:32.106+00:00", "load1": "2.80"}
|
||||
@@ -0,0 +1,17 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/instances-verb.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/XknzTf
|
||||
begin: {"utc": "2026-10-24T21:31:32.105+00:00", "load1": "2.80"}
|
||||
launch nice: 19
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ row 165: instances and instances.set refuse every non-human session but the tester, the chief of staff included, and pass the verified actor (34.201963ms)
|
||||
✔ row 165 runtime: an add and a change reach the organization file with the human as actor; each refusal keeps the bytes and logs nothing (127.501097ms)
|
||||
✔ row 194 T12: agent and reader sessions refuse veto.set; the tester gets add and change but not delete or veto.set; the human passes the hook for each listed verb (23.409986ms)
|
||||
ℹ tests 3
|
||||
ℹ suites 0
|
||||
ℹ pass 3
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 270.80968
|
||||
@@ -0,0 +1,2 @@
|
||||
{"utc": "2026-10-24T21:31:32.408+00:00", "load1": "2.80"}
|
||||
{"utc": "2026-10-24T21:31:33.408+00:00", "load1": "2.80"}
|
||||
@@ -0,0 +1,18 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/library-credential.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/HpiYQK
|
||||
begin: {"utc": "2026-10-24T21:31:32.407+00:00", "load1": "2.80"}
|
||||
launch nice: 19
|
||||
✔ C2-03b T6: the slot before any chief evidence, then the listed chief's live grant (28.054219ms)
|
||||
✔ C2-03b T7: a chief revoked through grants.revoke or fired through instance.fire refuses, and the fallback stays ended (307.68609ms)
|
||||
✔ C2-03b T7 choice checks: delisted, a fire under way and held each refuse; a rehire lists the chief again (34.476977ms)
|
||||
✔ C2-03b T8: a chief grant on another project ends the fallback, and two listed chiefs refuse library-fetch-no-grant (31.887252ms)
|
||||
✔ C2-03b departure (sage-2928): with no chief entry, any Gitea grant evidence refuses (15.585277ms)
|
||||
✔ C2-03b T9 runtime: the chief's store file and user, then a real revoke that runs no git with the slot at 0000 (820.372398ms)
|
||||
ℹ tests 6
|
||||
ℹ suites 0
|
||||
ℹ pass 6
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 1371.218558
|
||||
@@ -0,0 +1,2 @@
|
||||
{"utc": "2026-10-24T21:31:33.809+00:00", "load1": "2.80"}
|
||||
{"utc": "2026-10-24T21:31:34.809+00:00", "load1": "2.80"}
|
||||
@@ -0,0 +1,23 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/library-lookups.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/PQlDGA
|
||||
begin: {"utc": "2026-10-24T21:31:33.808+00:00", "load1": "2.80"}
|
||||
launch nice: 19
|
||||
✔ all five agent verbs read the configured served commit through real queries (125.157994ms)
|
||||
✔ each verb refuses missing universe and unknown keys before host work (70.852251ms)
|
||||
✔ no library, missing host adapter and undeclared project refuse library-not-configured (141.630635ms)
|
||||
✔ reads need the current holder on each call; human/tester/reader are not agents (79.13119ms)
|
||||
✔ releasing a claim during an async lookup fences the response (41.255849ms)
|
||||
✔ a business library removed during an async read cannot leak its result (41.789212ms)
|
||||
✔ freshness boundary, unknown last fetch and failed fetch still use immutable served state (120.61006ms)
|
||||
✔ an unreadable sync state fails closed; a busy sync keeps serving the existing pin (78.195399ms)
|
||||
✔ a stale lookup sees the commit published by its sync, not the prior served commit (83.110874ms)
|
||||
✔ real socket awaits lookup results and rechecks rejected query arguments (91.960122ms)
|
||||
✔ runtime actually injects the lookup adapter, without exposing human library.file (128.599922ms)
|
||||
ℹ tests 11
|
||||
ℹ suites 0
|
||||
ℹ pass 11
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 1134.147984
|
||||
@@ -0,0 +1,7 @@
|
||||
{"utc": "2026-10-24T21:31:34.973+00:00", "load1": "2.80"}
|
||||
{"utc": "2026-10-24T21:31:35.973+00:00", "load1": "2.82"}
|
||||
{"utc": "2026-10-24T21:31:36.974+00:00", "load1": "2.82"}
|
||||
{"utc": "2026-10-24T21:31:37.974+00:00", "load1": "2.82"}
|
||||
{"utc": "2026-10-24T21:31:38.974+00:00", "load1": "2.82"}
|
||||
{"utc": "2026-10-24T21:31:39.975+00:00", "load1": "2.82"}
|
||||
{"utc": "2026-10-24T21:31:40.975+00:00", "load1": "2.75"}
|
||||
@@ -0,0 +1,18 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/library-sync.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/eFLzOZ
|
||||
begin: {"utc": "2026-10-24T21:31:34.973+00:00", "load1": "2.80"}
|
||||
launch nice: 19
|
||||
✔ C2-03a library.sync: every agent, the tester and a reader are refused before the adapter runs (20.247501ms)
|
||||
✔ C2-03a library.sync: the human fetches, accept passes through, and a held sync is a recorded refusal (17.293576ms)
|
||||
✔ C2-03a library.sync: a LibraryError keeps its code and a host without sync is not configured (24.911909ms)
|
||||
✔ C2-03a runtime: a librarySync from a boot config, with no function, is refused (1.434915ms)
|
||||
✔ C2-03a runtime: the timer syncs each entry with a user at start and on each tick, logs codes only, and stops on close (588.887085ms)
|
||||
✔ row 254 human-cli: library.sync outlasts the 5 s client default, and library.status does not (6085.908124ms)
|
||||
ℹ tests 6
|
||||
ℹ suites 0
|
||||
ℹ pass 6
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 6865.274376
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:41.872+00:00", "load1": "2.75"}
|
||||
@@ -0,0 +1,18 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/library.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/kPxN9l
|
||||
begin: {"utc": "2026-10-24T21:31:41.871+00:00", "load1": "2.75"}
|
||||
launch nice: 19
|
||||
✔ C2-04 M4: both verbs reject every agent before arguments or adapter access (36.647527ms)
|
||||
✔ C2-04 bus: human reads validate keys and return adapter results without path leakage (14.843231ms)
|
||||
✔ C2-04 socket: each async library verb resolves its result rather than serializing {} (86.740094ms)
|
||||
✔ C2-04 runtime: protectedRoots skips library but retains real code-root credential protection (109.591766ms)
|
||||
✔ C2-04 runtime: unsafe existing mirror refuses boot and never publishes a socket (25.806937ms)
|
||||
✔ C2-04 runtime: real library adapters reach the socket and lock waits leave other bus reads responsive (216.451154ms)
|
||||
ℹ tests 6
|
||||
ℹ suites 0
|
||||
ℹ pass 6
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 609.203457
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:42.510+00:00", "load1": "2.75"}
|
||||
@@ -0,0 +1,21 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/lifecycle-revoke.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/hvc49a
|
||||
begin: {"utc": "2026-10-24T21:31:42.510+00:00", "load1": "2.75"}
|
||||
launch nice: 19
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ T20 fire: a revoke that fails stops the fire with the file unchanged; one that succeeds revokes, keeps the directory and names the services outside the store (90.451286ms)
|
||||
✔ T20 fire: an instance already delisted still has its tokens revoked and the file is left alone (53.068194ms)
|
||||
✔ T20 fire: with no entry in the running bus, a token on disk refuses and an empty store goes on (59.543932ms)
|
||||
✔ T20 delete: a revoke that fails keeps the file; one that succeeds clears the store, deletes, and names the tracker bot (67.413534ms)
|
||||
✔ T20 delete: with no entry in the running bus, a token file is cleared and the delete goes on; a file reference refuses (68.957837ms)
|
||||
✔ T21 delete: a write between the raise and the take makes the delete refuse revision-conflict before it revokes anything (70.80302ms)
|
||||
✔ row 281 T1 fire: a host.<id> or granted gitea file in the store refuses step B credential-revoke-failed, file unchanged (67.163664ms)
|
||||
✔ row 281 T1 start: a host grant record whose key file is gone starts and reads not-issued (54.306204ms)
|
||||
ℹ tests 8
|
||||
ℹ suites 0
|
||||
ℹ pass 8
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 659.873199
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:43.202+00:00", "load1": "2.75"}
|
||||
@@ -0,0 +1,25 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/lifecycle-verbs.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/Ab3xx3
|
||||
begin: {"utc": "2026-10-24T21:31:43.202+00:00", "load1": "2.75"}
|
||||
launch nice: 19
|
||||
✔ row 194 T12: agent and reader sessions refuse the lifecycle verbs before any effect; the tester gets launch, end and the request read, never regenerate (41.086566ms)
|
||||
✔ row 194 V2 and V4 at the verb: the request is open, by the human, with a human.input; thread, retired, unknown and revoked refuse with no event (20.977879ms)
|
||||
✔ row 194 D1.1 take: a request is taken once, closes once, and lifecycleRequests lists only what is not closed (15.147322ms)
|
||||
✔ row 194 D1.1 take: a launch.revoke after the request closes it launch-revoked, and a request past 60 s closes request-expired (18.334348ms)
|
||||
✔ row 194 T15 (bus): while halted, launch and regenerate refuse processing-halted at the verb and at the take, hire and fire refuse, terminate goes; an unreadable switch refuses with its code (27.882799ms)
|
||||
✔ row 194 T12a: the tester launches and ends on its own business with actor tester; bus.tester off in the file refuses the call and the take tester-off (22.12436ms)
|
||||
✔ row 194 V3 terminate: claims revoked, open requests cancelled, bound runs named, taken requests listed; nothing at all answers not-held (28.710526ms)
|
||||
✔ row 194 V3 terminate of a thread instance: the human ends every thread, the tester only its own (21.663071ms)
|
||||
✔ row 194 T6 V5 order at the verb: the writer's named refusals, then instance-running, instance-starting, the last-listed refusal and the revision (32.552ms)
|
||||
✔ row 194 V5: an open launch past its 60 s is not starting, as it can only close request-expired (12.399681ms)
|
||||
✔ row 194 V5 after the take: lifecycleDelete re-checks running and starting, then commits through the writer with the human as actor (21.272711ms)
|
||||
✔ row 194 V5 retry: a retired name deletes again only after workspace-rename-failed, and that request commits nothing (19.587509ms)
|
||||
✔ row 194 V5 runtime: a delete request, the take and lifecycleDelete commit the file with retired, log the human and reload so the name no longer binds (134.310711ms)
|
||||
ℹ tests 13
|
||||
ℹ suites 0
|
||||
ℹ pass 13
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 498.238226
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:43.731+00:00", "load1": "2.75"}
|
||||
@@ -0,0 +1,28 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/limit-checks.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/ktbbpy
|
||||
begin: {"utc": "2026-10-24T21:31:43.731+00:00", "load1": "2.75"}
|
||||
launch nice: 19
|
||||
✔ REQ-LIMIT-3 limitLeaves finds every limit object and skips the agent numbers (1.227604ms)
|
||||
✔ REQ-LIMIT-3 limitLeaves takes token limits at schema depth only, whatever their names (0.203119ms)
|
||||
✔ REQ-LIMIT-3 with no check switched on a launch is allowed, a turn never stops, and every limit is not enforced (15.274045ms)
|
||||
✔ REQ-LIMIT-3 a fixture check that refuses refuses the launch and stops the turn, logged with the limit and the count (16.142197ms)
|
||||
✔ REQ-LIMIT-3 a report that omits a limit shows it not enforced; a counted entry and a reason come through (12.350569ms)
|
||||
✔ REQ-LIMIT-4 each check gets the business, a copy of the limits, the subject, the records and the time (14.448872ms)
|
||||
✔ REQ-LIMIT-4 fail closed: a throw refuses, stops and fails the report, naming the check and the code (12.504145ms)
|
||||
✔ REQ-LIMIT-4 fail closed: a malformed answer, a promise, a rejected promise, a non-boolean or a bad hit is malformed-answer (15.749577ms)
|
||||
✔ REQ-LIMIT-4 fail closed: a check switched on but not loaded refuses, stops and fails every limit as not-loaded (11.742781ms)
|
||||
✔ REQ-LIMIT-4 state(), never-loaded case: before any load the report shows not enforced, or not-loaded for a switched-on check (9.845775ms)
|
||||
✔ REQ-LIMIT-4 state(), first-load-refused case: a check refused on its first load is not-loaded in mayLaunch, mustStop and report (10.825798ms)
|
||||
✔ REQ-LIMIT-4 fail closed: an unreadable organization file refuses and stops with check null; the report throws (11.336846ms)
|
||||
✔ REQ-LIMIT-4 fail closed: unreadable records refuse and stop with check null and fail the report (0.471683ms)
|
||||
✔ REQ-LIMIT-3 the shipped token-limit, through the real loader, counts known records only since the limit was set (16.868788ms)
|
||||
✔ REQ-LIMIT-3 a token limit for a provider named limit is counted and refuses, beside an agent limit of the same name (10.047416ms)
|
||||
✔ REQ-LIMIT-3 core reaches limit checks only through the plug-in loader (1.124657ms)
|
||||
ℹ tests 16
|
||||
ℹ suites 0
|
||||
ℹ pass 16
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 245.243109
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:44.006+00:00", "load1": "2.75"}
|
||||
@@ -0,0 +1,23 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/limits-runtime.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/OgZo41
|
||||
begin: {"utc": "2026-10-24T21:31:44.006+00:00", "load1": "2.75"}
|
||||
launch nice: 19
|
||||
limits: {"event":"limit-reached","business":"demo","check":"token-limit","export":"mayLaunch","subject":{"instance":"coder","provider":"zai","model":"glm-5.3-flash","account":null},"path":["tokens","instances","coder"],"limit":0,"count":0,"unknownTurns":0}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
usage: {"event":"usage-unknown","business":"demo","run":"run1","instance":"coder","turn":"818eea2a-0f09-4cb7-b7a2-2d1f8b8c3b25","source":"@none","code":"baseline-unknown"}
|
||||
limits: {"event":"limit-reached","business":"demo","check":"token-limit","export":"mustStop","subject":{"instance":"coder","provider":"zai","model":"glm-5.3-flash","account":null},"path":["tokens","instances","coder"],"limit":0,"count":0,"unknownTurns":1}
|
||||
usage: {"event":"usage-unknown","business":"demo","run":"run1","instance":"coder","turn":"4faae581-280f-452b-9504-d8341a7db84b","source":"@none","code":"baseline-unknown"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ REQ-LIMIT-3 REQ-LIMIT-4 runtime: limits carries the token count, mayLaunch refuses at the limit, a reset moves since (141.15311ms)
|
||||
✔ REQ-LIMIT-3 runtime: with no limit check switched on, the limit shows not enforced and every launch is allowed (37.022098ms)
|
||||
✔ REQ-LIMIT-4 runtime: the broker asks the shipped token-limit after a turn, and the run at its limit stops on its next receive (50.145968ms)
|
||||
✔ REQ-LIMIT-4 runtime: with no usage source a turn is unknown, counts zero and stops nothing under a limit of 1 (48.51093ms)
|
||||
✔ REQ-LIMIT-3 runtime: switching a limit check on with plugins.set loads it without a launch or a turn (66.483892ms)
|
||||
ℹ tests 5
|
||||
ℹ suites 0
|
||||
ℹ pass 5
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 388.497466
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:44.429+00:00", "load1": "2.75"}
|
||||
@@ -0,0 +1,17 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/limits.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/ZE3dMq
|
||||
begin: {"utc": "2026-10-24T21:31:44.428+00:00", "load1": "2.75"}
|
||||
launch nice: 19
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ limits binds actor from human proof and rejects role, reader, a tester set and forged actor (23.316925ms)
|
||||
✔ runtime wires verified human settings to the actual shared file writer and actor receipt (103.246822ms)
|
||||
✔ uncertain organization receipts leave bus startup and reads alone but refuse writes until reconciled (54.340151ms)
|
||||
ℹ tests 3
|
||||
ℹ suites 0
|
||||
ℹ pass 3
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 268.397954
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:44.731+00:00", "load1": "2.75"}
|
||||
@@ -0,0 +1,20 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/model-proxy.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/760xBV
|
||||
begin: {"utc": "2026-10-24T21:31:44.731+00:00", "load1": "2.75"}
|
||||
launch nice: 19
|
||||
✔ proxy.init only accepts path-bound outside-agent human; refuses agent/tester/reader (19.800473ms)
|
||||
✔ proxy.init proxy-key-invalid (11.627925ms)
|
||||
✔ proxy.init proxy-config-invalid (11.729362ms)
|
||||
✔ proxy.init invalid-request (11.484904ms)
|
||||
✔ proxy.init not-configured (11.155878ms)
|
||||
✔ proxy.init callback error redacts key and maps outcome to named refusal (11.150132ms)
|
||||
✔ socket awaits proxy.init and does not return a Promise object or retain human cap (30.330962ms)
|
||||
✔ proxy-init-failed: extra callback fields cannot return a management key (11.376302ms)
|
||||
ℹ tests 8
|
||||
ℹ suites 0
|
||||
ℹ pass 8
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 194.169461
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:44.956+00:00", "load1": "2.75"}
|
||||
@@ -0,0 +1,19 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/plugins-verb.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/mpe9C4
|
||||
begin: {"utc": "2026-10-24T21:31:44.956+00:00", "load1": "2.75"}
|
||||
launch nice: 19
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ plugins and plugins.set refuse every non-human session and a forged actor, and pass only the patch with the verified actor (24.151474ms)
|
||||
✔ runtime: the switch changes the organization file, the receipt carries the actor, and a bad shape, an unknown module and a stale revision are refused with nothing written (112.999458ms)
|
||||
✔ vikunja:19/309 through the broker, a patch switches the kinds it names and keeps the rest; null removes one kind and is trailed (51.178757ms)
|
||||
ℹ tests 3
|
||||
ℹ suites 0
|
||||
ℹ pass 3
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 271.351814
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:45.258+00:00", "load1": "2.75"}
|
||||
@@ -0,0 +1,14 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/processing-runtime.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/t8w0GP
|
||||
begin: {"utc": "2026-10-24T21:31:45.258+00:00", "load1": "2.75"}
|
||||
launch nice: 19
|
||||
✔ real runtime injects the coordinator, stops its workload and mirrors stable stop events across restart (166.197323ms)
|
||||
✔ invalid state still starts the control bus and human halt then resume repairs it (68.762038ms)
|
||||
ℹ tests 2
|
||||
ℹ suites 0
|
||||
ℹ pass 2
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 354.939079
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:45.644+00:00", "load1": "2.75"}
|
||||
@@ -0,0 +1,15 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/project-runtime.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/9wld3a
|
||||
begin: {"utc": "2026-10-24T21:31:45.644+00:00", "load1": "2.75"}
|
||||
launch nice: 19
|
||||
✔ Broker keeps the sandbox client import closure: only the listed imports, no lazy project import (2.320439ms)
|
||||
✔ without a trusted project adapter all three async paths refuse project-not-configured (41.769061ms)
|
||||
✔ real startBroker injects the project adapter for socket reads and bound-author record writes (209.297382ms)
|
||||
ℹ tests 3
|
||||
ℹ suites 0
|
||||
ℹ pass 3
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 374.13406
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:46.050+00:00", "load1": "3.01"}
|
||||
@@ -0,0 +1,25 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/publish.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/zvt8PG
|
||||
begin: {"utc": "2026-10-24T21:31:46.049+00:00", "load1": "3.01"}
|
||||
launch nice: 19
|
||||
✔ a raise with no recorded push refuses no-push; a raise binds the latest push and shows it (39.954889ms)
|
||||
✔ happy path: the fork is the upstream repo under the agent's own user, the destination is host-built (24.465558ms)
|
||||
✔ a hard wait: no decision refuses, and a decision for another task refuses (22.323233ms)
|
||||
✔ r4 B4: approve while the latest push is A, push B, publish refuses decision-mismatch (47.890439ms)
|
||||
✔ grant and fork refusals (45.239458ms)
|
||||
✔ remote-not-fork, compared without case, and remote-host-mismatch, at push (84.933944ms)
|
||||
✔ two agents granted one project each get their own fork (43.980907ms)
|
||||
✔ the request cannot name the fork, the user or the destination (21.038529ms)
|
||||
✔ one decision, one open publish: a second ticket refuses publish-busy, whatever its branch (50.040628ms)
|
||||
✔ publishRefused files the code on the task's trail and drops the ticket (21.106502ms)
|
||||
✔ git.push.remote is in neither ROUTED list and no shipped role grants it (0.703397ms)
|
||||
✔ runtime: withGitea keys from the open ticket only, and the store root is the organization dir (102.132736ms)
|
||||
✔ the bus process answers the publish ops from their own lines, not launch-op-refused (158.414563ms)
|
||||
ℹ tests 13
|
||||
ℹ suites 0
|
||||
ℹ pass 13
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 755.676522
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:46.835+00:00", "load1": "3.01"}
|
||||
@@ -0,0 +1,31 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/reload.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/aU0j0Y
|
||||
begin: {"utc": "2026-10-24T21:31:46.835+00:00", "load1": "3.01"}
|
||||
launch nice: 19
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ T14 a create goes live with no restart: the new instance binds at once and the answer says restart false (82.481371ms)
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ T14 every committed verb reloads once, limits.set, routes.set, plugins.set and veto.set included, and a refused one does not (83.757771ms)
|
||||
✔ T14 a definition change on a running instance refuses instance-running; a vars change still goes live (63.590141ms)
|
||||
✔ T14 a file whose credential references differ from the boot copy is not reloaded and the write answers restart true (46.393843ms)
|
||||
✔ T14 a date-only change to a credential reference still reloads: row 199 issue rewrites the date outside the reload (44.909934ms)
|
||||
✔ T19 a credentialed create answers restart true; issue works only after a restart, and a later vars change goes live (101.304479ms)
|
||||
✔ T14 after a refused reload veto.set, instance.hire and instance.fire answer restart true, and a fire of a name kept since refuses before step A (102.926844ms)
|
||||
✔ T14 a file whose project root differs from the boot copy is not reloaded, because the Credentials store protects the boot roots (44.678556ms)
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ T14 a file whose library mapping differs from the boot copy is not reloaded, because the mirror is ensured at start (195.348573ms)
|
||||
✔ T14 reloadBusiness refuses an unknown business, a changed human and a document the boot check refuses (10.201371ms)
|
||||
ℹ tests 10
|
||||
ℹ suites 0
|
||||
ℹ pass 10
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 894.882982
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:47.762+00:00", "load1": "3.01"}
|
||||
@@ -0,0 +1,17 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/routes-verb.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/P5dNVU
|
||||
begin: {"utc": "2026-10-24T21:31:47.762+00:00", "load1": "3.01"}
|
||||
launch nice: 19
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ row 65: routes and routes.set refuse every non-human session, the chief of staff included, the tester may read and set, and each passes the verified actor (41.28339ms)
|
||||
✔ row 65: a new launch binds only on a switched-on harness with a module name, and a run an earlier broker bound binds again after its harness is switched off (22.333596ms)
|
||||
✔ row 65 runtime: harnessLevels answers each module in the tree, and null for a name with no module (42.976423ms)
|
||||
✔ row 65 runtime: routes and routes.set reach the organization file with the human as actor, a new bind reads plugins.harness, and each refusal keeps the bytes and logs nothing (82.367379ms)
|
||||
ℹ tests 4
|
||||
ℹ suites 0
|
||||
ℹ pass 4
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 269.840758
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:48.062+00:00", "load1": "3.01"}
|
||||
@@ -0,0 +1,21 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/tasks.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/doktEQ
|
||||
begin: {"utc": "2026-10-24T21:31:48.062+00:00", "load1": "3.01"}
|
||||
launch nice: 19
|
||||
✔ recordTask keeps sync reads and a role write apart (37.162839ms)
|
||||
✔ read_at must be one canonical UTC format, so the projection compares strings safely (10.13001ms)
|
||||
✔ a bad entry refuses the whole record (10.028908ms)
|
||||
✔ taskView reads the projection for one business (12.612171ms)
|
||||
✔ requestTask hands only a holder and a task verb to the handler, and records refusals (21.951896ms)
|
||||
✔ the server sends task verbs to the adapter with its own timeout; other verbs stay synchronous (304.584857ms)
|
||||
✔ without an adapter the server refuses every task verb (41.415383ms)
|
||||
✔ the runtime refuses an invalid adapter and closes a valid one (55.013588ms)
|
||||
✔ the process loads the S3 adapter from plain-data trackers (294.887599ms)
|
||||
ℹ tests 9
|
||||
ℹ suites 0
|
||||
ℹ pass 9
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 901.467179
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:48.994+00:00", "load1": "3.01"}
|
||||
@@ -0,0 +1,25 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/tester-writes.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/1vStHK
|
||||
begin: {"utc": "2026-10-24T21:31:48.994+00:00", "load1": "3.01"}
|
||||
launch nice: 19
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
organization: {"event":"reload-needs-restart","business":"demo"}
|
||||
✔ row 175: TESTER_VERBS and the organization branch tester set are pinned (1.017466ms)
|
||||
✔ row 175: each of the six reads as the tester deep-equals the human read (80.79752ms)
|
||||
✔ row 175: W1-W3 as the tester land with receipt actor tester; the human still logs the human (69.467976ms)
|
||||
✔ row 175: W2 as the tester refuses credentials, protected definitions, human, tester and bus.tester, and changes nothing (61.482015ms)
|
||||
✔ row 175: the human-only actions refuse a tester tester-refused, and the file and store stay as they were (59.878967ms)
|
||||
✔ row 175: W4 as the tester writes by tester and keeps every name check (18.111019ms)
|
||||
✔ row 175: W6 as the tester records created_by tester; the human records the human (13.376818ms)
|
||||
✔ row 175: with bus.tester unset or not exactly true no tester binds, so no read or write runs (49.180862ms)
|
||||
ℹ tests 8
|
||||
ℹ suites 0
|
||||
ℹ pass 8
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 473.7727
|
||||
@@ -0,0 +1,2 @@
|
||||
{"utc": "2026-10-24T21:31:49.499+00:00", "load1": "3.01"}
|
||||
{"utc": "2026-10-24T21:31:50.500+00:00", "load1": "3.01"}
|
||||
@@ -0,0 +1,26 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/tester.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/lFZZCF
|
||||
begin: {"utc": "2026-10-24T21:31:49.499+00:00", "load1": "3.01"}
|
||||
launch nice: 19
|
||||
✔ the tester binds only when the business sets bus.tester to exactly true (88.757294ms)
|
||||
✔ a business may not name a role tester, so the tester address is never a role (23.769068ms)
|
||||
✔ every verb outside the tester list refuses tester-refused and is recorded against the tester (41.483976ms)
|
||||
✔ a tester message is from tester, needs no prefix, and writes no human.input or authority (18.827772ms)
|
||||
✔ a tester message to a role no run holds refuses tester-target-not-running and stores nothing (12.713865ms)
|
||||
✔ a tester message is refused while the run is only launched, and routes once it claims (16.183489ms)
|
||||
✔ a human message to a role no run holds still waits and tells launch.by (13.743888ms)
|
||||
✔ a role answers a tester only in reply to a tester message, and the answer never reaches the human (24.830137ms)
|
||||
✔ the tester reads the human views a reader reads (28.289052ms)
|
||||
✔ tester proof binds its own CLI, start time and nonce, refuses a managed run and allows an agent (1.13514ms)
|
||||
✔ neither CLI's nonce proves the other: each proof is bound to its own CLI and nonce variable (0.339972ms)
|
||||
✔ testerNonce reads only the tester's variable and gives null on any read error (0.179056ms)
|
||||
✔ an envelope carries exactly one of cap, human and tester; no tester authenticator refuses (93.221215ms)
|
||||
✔ tester-cli.mjs binds through the runtime when the switch is on, and refuses off or under a run marker (1045.993666ms)
|
||||
ℹ tests 14
|
||||
ℹ suites 0
|
||||
ℹ pass 14
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 1530.19706
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:51.060+00:00", "load1": "2.77"}
|
||||
@@ -0,0 +1,13 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/usage-runtime.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/1VEYZH
|
||||
begin: {"utc": "2026-10-24T21:31:51.060+00:00", "load1": "2.77"}
|
||||
launch nice: 19
|
||||
✔ REQ-PLUG-1 runtime reaches transcript only through loader, over the real bus socket (69.113179ms)
|
||||
ℹ tests 1
|
||||
ℹ suites 0
|
||||
ℹ pass 1
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 188.443021
|
||||
@@ -0,0 +1,2 @@
|
||||
{"utc": "2026-10-24T21:31:51.279+00:00", "load1": "2.77"}
|
||||
{"utc": "2026-10-24T21:31:52.280+00:00", "load1": "2.77"}
|
||||
@@ -0,0 +1,31 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/bus/tests/web.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/BWvWeH
|
||||
begin: {"utc": "2026-10-24T21:31:51.279+00:00", "load1": "2.77"}
|
||||
launch nice: 19
|
||||
✔ web.search: a granted role gets labelled results, and the call is trailed with role, run, verb and query (22.397513ms)
|
||||
✔ web.fetch: a granted role gets the page as labelled text, and the call is trailed with the url (28.030362ms)
|
||||
✔ a role without the grant is refused, the refusal is logged with the verb, and nothing is fetched (19.857784ms)
|
||||
✔ a broker with no web service refuses a granted role (14.84118ms)
|
||||
✔ bad requests are refused: unknown verb, extra or missing argument, not a string, a human or reader session (18.067065ms)
|
||||
✔ a session that is not the role holder is refused (13.023035ms)
|
||||
✔ web.mjs's fences hold on the broker side: refusals are normal results with the fixed reason (39.913102ms)
|
||||
✔ web.search with no search source configured is a refused result, not an error (14.422159ms)
|
||||
✔ a search source that fails with its own refusal, or that throws, is handled (18.276761ms)
|
||||
✔ a slow search source ends in a refusal at the deadline (65.055292ms)
|
||||
✔ a secret in the arguments is refused before anything is trailed or fetched (13.916963ms)
|
||||
✔ over the socket: the server routes web verbs to the service; other roles are refused; no service is web-not-configured (69.694453ms)
|
||||
✔ busBusiness: the web grant comes from "web" in the resolved tool limit (0.282283ms)
|
||||
✔ webServices: the business's search-source plug-in and web.searxng var make web.search work; without either it is refused as not configured (55.50822ms)
|
||||
✔ an ungranted call is refused at once: no admission, no wait, nothing touched (17.707781ms)
|
||||
✔ over the socket an ungranted caller is dropped by the server timeout and a granted one gets the longer wait (339.602135ms)
|
||||
✔ a search that never answers is aborted at the deadline, the module sees the signal, and the call is trailed as refused (timeout) (74.739872ms)
|
||||
✔ a fetch that stalls is cut off at the deadline: the request is destroyed, not left running (97.228728ms)
|
||||
✔ one query limit: over SEARCH_MAX_QUERY_CHARS or empty is refused with the same reason before any backend, and the tool schema carries the same number (19.007701ms)
|
||||
ℹ tests 19
|
||||
ℹ suites 0
|
||||
ℹ pass 19
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 1042.857687
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:31:52.353+00:00", "load1": "2.77"}
|
||||
@@ -0,0 +1,16 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/access-boot.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/N0QlMo
|
||||
begin: {"utc": "2026-10-24T21:31:52.353+00:00", "load1": "2.77"}
|
||||
launch nice: 19
|
||||
✔ R6 a configured peer id validates as a user's home and an unconfigured one refuses (13.025604ms)
|
||||
✔ R6 B1 a boot with access.json binds a granted user, whose home is a configured peer (75.092362ms)
|
||||
✔ R6 B2 a boot without access.json has no access and binds no user (63.980667ms)
|
||||
✔ R6 B3 a boot with a file R1's loader refuses still boots, binds no user and says so once (188.774406ms)
|
||||
ℹ tests 4
|
||||
ℹ suites 0
|
||||
ℹ pass 4
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 473.694186
|
||||
@@ -0,0 +1,7 @@
|
||||
{"utc": "2026-10-24T21:31:52.860+00:00", "load1": "2.77"}
|
||||
{"utc": "2026-10-24T21:31:53.860+00:00", "load1": "2.77"}
|
||||
{"utc": "2026-10-24T21:31:54.860+00:00", "load1": "2.77"}
|
||||
{"utc": "2026-10-24T21:31:55.860+00:00", "load1": "2.71"}
|
||||
{"utc": "2026-10-24T21:31:56.861+00:00", "load1": "2.71"}
|
||||
{"utc": "2026-10-24T21:31:57.861+00:00", "load1": "2.71"}
|
||||
{"utc": "2026-10-24T21:31:58.861+00:00", "load1": "2.71"}
|
||||
@@ -0,0 +1,46 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/access.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/s4G6iY
|
||||
begin: {"utc": "2026-10-24T21:31:52.859+00:00", "load1": "2.77"}
|
||||
launch nice: 19
|
||||
✔ list prints the revision and the users (30.884889ms)
|
||||
✔ grant writes one revision up, a receipt line, and the id in the file (53.432378ms)
|
||||
✔ a viewer grant writes the viewer level, one revision up (49.096379ms)
|
||||
✔ a second write appends a second receipt and leaves the first intact (101.603945ms)
|
||||
✔ a stale revision refuses with revision-conflict and writes nothing (83.940791ms)
|
||||
✔ a live holder's lock refuses and leaves the file and the lock alone (26.646541ms)
|
||||
✔ an empty or unreadable lock refuses, since its holder may still be writing (48.38942ms)
|
||||
✔ a lock left by a dead pid refuses, names the pid, and is not reclaimed (44.806221ms)
|
||||
✔ a failed rename leaves the old bytes, removes the temp file, and writes no receipt (27.622276ms)
|
||||
✔ a group-writable access file refuses with exit 3, names the file, and changes nothing (25.675821ms)
|
||||
✔ an agent or tester caller is refused before the context or the access file is read (1.123585ms)
|
||||
✔ the lock is mode 0600 while held and removed after a refused write (25.901843ms)
|
||||
✔ a grant naming an unknown instance is refused before any write (28.872833ms)
|
||||
✔ a project name resolves to its id at grant time (70.593649ms)
|
||||
✔ an unknown project name refuses before any write (27.132406ms)
|
||||
✔ revoke removes the user's grants and leaves a revision behind (102.987012ms)
|
||||
✔ revoke of a user with no grant refuses and writes nothing (26.453788ms)
|
||||
✔ an agent caller is refused before the bus is asked (0.841163ms)
|
||||
✔ --tester is refused on every verb before the bus is asked (0.974632ms)
|
||||
✔ a bus that refuses the human proof blocks the write (29.972291ms)
|
||||
✔ the context reads console.sso subjects and the business files, and peers stay empty (7.670929ms)
|
||||
✔ the real human-cli, run from agent ancestry, refuses and writes nothing (5144.734757ms)
|
||||
✔ T1 user add writes the user one revision up, prints it and appends a user.add receipt (30.211574ms)
|
||||
✔ T2 a bad user add refuses before any write (330.199967ms)
|
||||
✔ T3 user remove of a user with no grant drops them one revision up, with a user.remove receipt (25.778981ms)
|
||||
✔ T4 user remove refuses with user-has-grants while the user holds a grant, and writes nothing (75.914593ms)
|
||||
✔ T5 user remove of an id not in the file refuses and writes nothing (24.019065ms)
|
||||
✔ T6 a stale revision refuses both user verbs with revision-conflict (50.984347ms)
|
||||
✔ T7 --tester and an agent caller are refused on both user verbs before the bus is asked (1.193819ms)
|
||||
✔ T8 a user verb of the wrong shape prints the help (0.907517ms)
|
||||
✔ T9 a bus that refuses the human proof blocks both user verbs (51.964775ms)
|
||||
✔ R4 grant and revoke call access.reload after the write, and nothing else does (149.163477ms)
|
||||
✔ R4 a refused access.reload after a good write exits 0, stdout reports the write, stderr names the code and the 30 s timer (49.394655ms)
|
||||
✔ R4 the help keeps the provider-removal order and says what a refused reload means (0.831348ms)
|
||||
ℹ tests 34
|
||||
ℹ suites 0
|
||||
ℹ pass 34
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 6879.396434
|
||||
@@ -0,0 +1,14 @@
|
||||
{"utc": "2026-10-24T21:31:59.769+00:00", "load1": "2.71"}
|
||||
{"utc": "2026-10-24T21:32:00.769+00:00", "load1": "2.65"}
|
||||
{"utc": "2026-10-24T21:32:01.770+00:00", "load1": "2.65"}
|
||||
{"utc": "2026-10-24T21:32:02.770+00:00", "load1": "2.65"}
|
||||
{"utc": "2026-10-24T21:32:03.770+00:00", "load1": "2.65"}
|
||||
{"utc": "2026-10-24T21:32:04.771+00:00", "load1": "2.65"}
|
||||
{"utc": "2026-10-24T21:32:05.771+00:00", "load1": "2.52"}
|
||||
{"utc": "2026-10-24T21:32:06.771+00:00", "load1": "2.52"}
|
||||
{"utc": "2026-10-24T21:32:07.772+00:00", "load1": "2.52"}
|
||||
{"utc": "2026-10-24T21:32:08.772+00:00", "load1": "2.52"}
|
||||
{"utc": "2026-10-24T21:32:09.772+00:00", "load1": "2.52"}
|
||||
{"utc": "2026-10-24T21:32:10.772+00:00", "load1": "2.80"}
|
||||
{"utc": "2026-10-24T21:32:11.773+00:00", "load1": "2.80"}
|
||||
{"utc": "2026-10-24T21:32:12.773+00:00", "load1": "2.80"}
|
||||
@@ -0,0 +1,42 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/app.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/U6qOPP
|
||||
begin: {"utc": "2026-10-24T21:31:59.769+00:00", "load1": "2.71"}
|
||||
launch nice: 19
|
||||
✔ every screen and overlay fits 120x36, 80x24 and the narrow layout, row for row (1224.912228ms)
|
||||
✔ width counts terminal cells: wide CJK and emoji 2, U+FE0F after a one-cell base 1, marks 0 (73.876093ms)
|
||||
✔ broker text is shown, never interpreted: no raw control character or bidi override reaches the terminal (167.944667ms)
|
||||
✔ NO_COLOR: no escape codes, except reverse video on the selected row (241.262125ms)
|
||||
✔ 1-9 shows the decide flow's own lines and question; only y resolves (62.873408ms)
|
||||
✔ the app shows the same decide text as mosaic decide (26.093158ms)
|
||||
✔ any key but y or Y at the question answers No; nothing is sent (240.102338ms)
|
||||
✔ below 40x10 the question is hidden, so every key answers it No, y included (Filbert R3) (82.118908ms)
|
||||
✔ under 40 columns a tall terminal shows the too-small screen even where the decide box would fit; y sends nothing (Filbert N10) (300.553917ms)
|
||||
✔ a hidden decide box names the way out, and the status line under it does not promise y (Filbert N12) (39.00805ms)
|
||||
✔ a throw while answering the question goes to crash, sends nothing and leaves no job pending (25.873787ms)
|
||||
✔ type-ahead never answers the question: a paste, keys typed before it is drawn, keys inside askMs (420.085983ms)
|
||||
✔ quitting at the question answers No and sends nothing, armed or not (41.123021ms)
|
||||
✔ a timer tick reads nothing under an overlay, never answers the question, and keeps a resolved status (34.803698ms)
|
||||
✔ a long question is cut inside the question; the action, target, choice and prompt stay (Dewey B1) (51.229868ms)
|
||||
✔ a decide box too big for the terminal says so, and every key answers it No, y included (Dewey B1, round 3) (323.780942ms)
|
||||
✔ at every size the decide box shows each line y depends on, or says it is hidden (8904.284861ms)
|
||||
✔ outcome unknown: the CLI's sentence, no retry, then the trail or a re-read (81.601431ms)
|
||||
✔ refused and failed reads keep the last list, marked stale; a refused decide says refused (43.391107ms)
|
||||
✔ help or a detail box cut to fit keeps its last line, Esc included (Dewey) (23.34607ms)
|
||||
✔ keys: views, moving, trail of a selection, the command line, help and quit (112.096983ms)
|
||||
✔ one option: the status line says Press 1, not 1-1 (30.684776ms)
|
||||
✔ no business: the app says so and :business picks one (16.471692ms)
|
||||
✔ mosaic with no argument: exit 3 in an agent run, exit 4 with the usage off a terminal, the app on one (2.33531ms)
|
||||
✔ scripts/mosaic with no argument reaches the app entry; the seat usage it printed before has not drifted (256.7972ms)
|
||||
✔ strings to keep exactly live once, in the decide flow and the transport; the app does not restate them (0.474305ms)
|
||||
✔ decide with --note still asks; a No sends nothing (16.390037ms)
|
||||
✔ the app's business comes from a live bus host only (1.067195ms)
|
||||
✔ runApp leaves the terminal as it found it on q, end of input, SIGTERM, SIGINT, SIGHUP and an error, the first frame's included (9.300013ms)
|
||||
✔ draw is pure: same state, same frame (0.832206ms)
|
||||
ℹ tests 30
|
||||
ℹ suites 0
|
||||
ℹ pass 30
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 12998.139292
|
||||
@@ -0,0 +1,2 @@
|
||||
{"utc": "2026-10-24T21:32:12.801+00:00", "load1": "2.80"}
|
||||
{"utc": "2026-10-24T21:32:13.801+00:00", "load1": "2.80"}
|
||||
@@ -0,0 +1,15 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/boot-status.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/6FraTr
|
||||
begin: {"utc": "2026-10-24T21:32:12.800+00:00", "load1": "2.80"}
|
||||
launch nice: 19
|
||||
✔ recordBootRefused keeps the last good load across refusals; recordBootOk clears the refusal (3.133345ms)
|
||||
✔ an unknown key and a JSON syntax error each leave the bus down with the reason and path in the status (704.520106ms)
|
||||
✔ a missing file is recorded too, and a valid file clears the status on the next start (494.63809ms)
|
||||
ℹ tests 3
|
||||
ℹ suites 0
|
||||
ℹ pass 3
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 1315.733167
|
||||
@@ -0,0 +1,248 @@
|
||||
{"utc": "2026-10-24T21:32:14.150+00:00", "load1": "2.80"}
|
||||
{"utc": "2026-10-24T21:32:15.150+00:00", "load1": "2.80"}
|
||||
{"utc": "2026-10-24T21:32:16.151+00:00", "load1": "2.89"}
|
||||
{"utc": "2026-10-24T21:32:17.151+00:00", "load1": "2.89"}
|
||||
{"utc": "2026-10-24T21:32:18.151+00:00", "load1": "2.89"}
|
||||
{"utc": "2026-10-24T21:32:19.151+00:00", "load1": "2.89"}
|
||||
{"utc": "2026-10-24T21:32:20.152+00:00", "load1": "2.89"}
|
||||
{"utc": "2026-10-24T21:32:21.152+00:00", "load1": "2.74"}
|
||||
{"utc": "2026-10-24T21:32:22.152+00:00", "load1": "2.74"}
|
||||
{"utc": "2026-10-24T21:32:23.153+00:00", "load1": "2.74"}
|
||||
{"utc": "2026-10-24T21:32:24.153+00:00", "load1": "2.74"}
|
||||
{"utc": "2026-10-24T21:32:25.153+00:00", "load1": "2.74"}
|
||||
{"utc": "2026-10-24T21:32:26.153+00:00", "load1": "3.32"}
|
||||
{"utc": "2026-10-24T21:32:27.154+00:00", "load1": "3.32"}
|
||||
{"utc": "2026-10-24T21:32:28.154+00:00", "load1": "3.32"}
|
||||
{"utc": "2026-10-24T21:32:29.154+00:00", "load1": "3.32"}
|
||||
{"utc": "2026-10-24T21:32:30.154+00:00", "load1": "3.32"}
|
||||
{"utc": "2026-10-24T21:32:31.155+00:00", "load1": "3.54"}
|
||||
{"utc": "2026-10-24T21:32:32.155+00:00", "load1": "3.54"}
|
||||
{"utc": "2026-10-24T21:32:33.156+00:00", "load1": "3.54"}
|
||||
{"utc": "2026-10-24T21:32:34.156+00:00", "load1": "3.54"}
|
||||
{"utc": "2026-10-24T21:32:35.156+00:00", "load1": "3.54"}
|
||||
{"utc": "2026-10-24T21:32:36.156+00:00", "load1": "3.42"}
|
||||
{"utc": "2026-10-24T21:32:37.157+00:00", "load1": "3.42"}
|
||||
{"utc": "2026-10-24T21:32:38.157+00:00", "load1": "3.42"}
|
||||
{"utc": "2026-10-24T21:32:39.157+00:00", "load1": "3.42"}
|
||||
{"utc": "2026-10-24T21:32:40.158+00:00", "load1": "3.42"}
|
||||
{"utc": "2026-10-24T21:32:41.158+00:00", "load1": "3.54"}
|
||||
{"utc": "2026-10-24T21:32:42.158+00:00", "load1": "3.54"}
|
||||
{"utc": "2026-10-24T21:32:43.158+00:00", "load1": "3.54"}
|
||||
{"utc": "2026-10-24T21:32:44.159+00:00", "load1": "3.54"}
|
||||
{"utc": "2026-10-24T21:32:45.159+00:00", "load1": "3.54"}
|
||||
{"utc": "2026-10-24T21:32:46.159+00:00", "load1": "3.58"}
|
||||
{"utc": "2026-10-24T21:32:47.159+00:00", "load1": "3.58"}
|
||||
{"utc": "2026-10-24T21:32:48.160+00:00", "load1": "3.58"}
|
||||
{"utc": "2026-10-24T21:32:49.160+00:00", "load1": "3.58"}
|
||||
{"utc": "2026-10-24T21:32:50.160+00:00", "load1": "3.58"}
|
||||
{"utc": "2026-10-24T21:32:51.161+00:00", "load1": "3.45"}
|
||||
{"utc": "2026-10-24T21:32:52.161+00:00", "load1": "3.45"}
|
||||
{"utc": "2026-10-24T21:32:53.161+00:00", "load1": "3.45"}
|
||||
{"utc": "2026-10-24T21:32:54.161+00:00", "load1": "3.45"}
|
||||
{"utc": "2026-10-24T21:32:55.162+00:00", "load1": "3.45"}
|
||||
{"utc": "2026-10-24T21:32:56.162+00:00", "load1": "3.50"}
|
||||
{"utc": "2026-10-24T21:32:57.162+00:00", "load1": "3.50"}
|
||||
{"utc": "2026-10-24T21:32:58.162+00:00", "load1": "3.50"}
|
||||
{"utc": "2026-10-24T21:32:59.163+00:00", "load1": "3.50"}
|
||||
{"utc": "2026-10-24T21:33:00.163+00:00", "load1": "3.50"}
|
||||
{"utc": "2026-10-24T21:33:01.163+00:00", "load1": "3.30"}
|
||||
{"utc": "2026-10-24T21:33:02.164+00:00", "load1": "3.30"}
|
||||
{"utc": "2026-10-24T21:33:03.164+00:00", "load1": "3.30"}
|
||||
{"utc": "2026-10-24T21:33:04.164+00:00", "load1": "3.30"}
|
||||
{"utc": "2026-10-24T21:33:05.164+00:00", "load1": "3.30"}
|
||||
{"utc": "2026-10-24T21:33:06.165+00:00", "load1": "3.03"}
|
||||
{"utc": "2026-10-24T21:33:07.165+00:00", "load1": "3.03"}
|
||||
{"utc": "2026-10-24T21:33:08.165+00:00", "load1": "3.03"}
|
||||
{"utc": "2026-10-24T21:33:09.166+00:00", "load1": "3.03"}
|
||||
{"utc": "2026-10-24T21:33:10.166+00:00", "load1": "3.03"}
|
||||
{"utc": "2026-10-24T21:33:11.166+00:00", "load1": "2.87"}
|
||||
{"utc": "2026-10-24T21:33:12.167+00:00", "load1": "2.87"}
|
||||
{"utc": "2026-10-24T21:33:13.167+00:00", "load1": "2.87"}
|
||||
{"utc": "2026-10-24T21:33:14.167+00:00", "load1": "2.87"}
|
||||
{"utc": "2026-10-24T21:33:15.167+00:00", "load1": "2.87"}
|
||||
{"utc": "2026-10-24T21:33:16.168+00:00", "load1": "2.72"}
|
||||
{"utc": "2026-10-24T21:33:17.168+00:00", "load1": "2.72"}
|
||||
{"utc": "2026-10-24T21:33:18.168+00:00", "load1": "2.72"}
|
||||
{"utc": "2026-10-24T21:33:19.169+00:00", "load1": "2.72"}
|
||||
{"utc": "2026-10-24T21:33:20.169+00:00", "load1": "2.72"}
|
||||
{"utc": "2026-10-24T21:33:21.169+00:00", "load1": "2.50"}
|
||||
{"utc": "2026-10-24T21:33:22.169+00:00", "load1": "2.50"}
|
||||
{"utc": "2026-10-24T21:33:23.170+00:00", "load1": "2.50"}
|
||||
{"utc": "2026-10-24T21:33:24.170+00:00", "load1": "2.50"}
|
||||
{"utc": "2026-10-24T21:33:25.170+00:00", "load1": "2.50"}
|
||||
{"utc": "2026-10-24T21:33:26.170+00:00", "load1": "2.70"}
|
||||
{"utc": "2026-10-24T21:33:27.171+00:00", "load1": "2.70"}
|
||||
{"utc": "2026-10-24T21:33:28.171+00:00", "load1": "2.70"}
|
||||
{"utc": "2026-10-24T21:33:29.171+00:00", "load1": "2.70"}
|
||||
{"utc": "2026-10-24T21:33:30.172+00:00", "load1": "2.70"}
|
||||
{"utc": "2026-10-24T21:33:31.172+00:00", "load1": "2.48"}
|
||||
{"utc": "2026-10-24T21:33:32.172+00:00", "load1": "2.48"}
|
||||
{"utc": "2026-10-24T21:33:33.172+00:00", "load1": "2.48"}
|
||||
{"utc": "2026-10-24T21:33:34.173+00:00", "load1": "2.48"}
|
||||
{"utc": "2026-10-24T21:33:35.173+00:00", "load1": "2.48"}
|
||||
{"utc": "2026-10-24T21:33:36.173+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:33:37.174+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:33:38.174+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:33:39.174+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:33:40.174+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:33:41.175+00:00", "load1": "2.25"}
|
||||
{"utc": "2026-10-24T21:33:42.175+00:00", "load1": "2.25"}
|
||||
{"utc": "2026-10-24T21:33:43.175+00:00", "load1": "2.25"}
|
||||
{"utc": "2026-10-24T21:33:44.176+00:00", "load1": "2.25"}
|
||||
{"utc": "2026-10-24T21:33:45.176+00:00", "load1": "2.25"}
|
||||
{"utc": "2026-10-24T21:33:46.176+00:00", "load1": "2.47"}
|
||||
{"utc": "2026-10-24T21:33:47.177+00:00", "load1": "2.47"}
|
||||
{"utc": "2026-10-24T21:33:48.177+00:00", "load1": "2.47"}
|
||||
{"utc": "2026-10-24T21:33:49.177+00:00", "load1": "2.47"}
|
||||
{"utc": "2026-10-24T21:33:50.177+00:00", "load1": "2.47"}
|
||||
{"utc": "2026-10-24T21:33:51.178+00:00", "load1": "2.43"}
|
||||
{"utc": "2026-10-24T21:33:52.178+00:00", "load1": "2.43"}
|
||||
{"utc": "2026-10-24T21:33:53.178+00:00", "load1": "2.43"}
|
||||
{"utc": "2026-10-24T21:33:54.178+00:00", "load1": "2.43"}
|
||||
{"utc": "2026-10-24T21:33:55.179+00:00", "load1": "2.43"}
|
||||
{"utc": "2026-10-24T21:33:56.179+00:00", "load1": "2.56"}
|
||||
{"utc": "2026-10-24T21:33:57.179+00:00", "load1": "2.56"}
|
||||
{"utc": "2026-10-24T21:33:58.180+00:00", "load1": "2.56"}
|
||||
{"utc": "2026-10-24T21:33:59.180+00:00", "load1": "2.56"}
|
||||
{"utc": "2026-10-24T21:34:00.180+00:00", "load1": "2.56"}
|
||||
{"utc": "2026-10-24T21:34:01.181+00:00", "load1": "2.59"}
|
||||
{"utc": "2026-10-24T21:34:02.181+00:00", "load1": "2.59"}
|
||||
{"utc": "2026-10-24T21:34:03.181+00:00", "load1": "2.59"}
|
||||
{"utc": "2026-10-24T21:34:04.181+00:00", "load1": "2.59"}
|
||||
{"utc": "2026-10-24T21:34:05.182+00:00", "load1": "2.59"}
|
||||
{"utc": "2026-10-24T21:34:06.182+00:00", "load1": "2.63"}
|
||||
{"utc": "2026-10-24T21:34:07.182+00:00", "load1": "2.63"}
|
||||
{"utc": "2026-10-24T21:34:08.183+00:00", "load1": "2.63"}
|
||||
{"utc": "2026-10-24T21:34:09.183+00:00", "load1": "2.63"}
|
||||
{"utc": "2026-10-24T21:34:10.183+00:00", "load1": "2.63"}
|
||||
{"utc": "2026-10-24T21:34:11.183+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:34:12.184+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:34:13.184+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:34:14.184+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:34:15.185+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:34:16.185+00:00", "load1": "2.69"}
|
||||
{"utc": "2026-10-24T21:34:17.185+00:00", "load1": "2.69"}
|
||||
{"utc": "2026-10-24T21:34:18.185+00:00", "load1": "2.69"}
|
||||
{"utc": "2026-10-24T21:34:19.186+00:00", "load1": "2.69"}
|
||||
{"utc": "2026-10-24T21:34:20.186+00:00", "load1": "2.69"}
|
||||
{"utc": "2026-10-24T21:34:21.186+00:00", "load1": "2.72"}
|
||||
{"utc": "2026-10-24T21:34:22.186+00:00", "load1": "2.72"}
|
||||
{"utc": "2026-10-24T21:34:23.187+00:00", "load1": "2.72"}
|
||||
{"utc": "2026-10-24T21:34:24.187+00:00", "load1": "2.72"}
|
||||
{"utc": "2026-10-24T21:34:25.187+00:00", "load1": "2.72"}
|
||||
{"utc": "2026-10-24T21:34:26.188+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:34:27.188+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:34:28.188+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:34:29.188+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:34:30.189+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:34:31.189+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:34:32.189+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:34:33.189+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:34:34.190+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:34:35.190+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:34:36.190+00:00", "load1": "2.41"}
|
||||
{"utc": "2026-10-24T21:34:37.191+00:00", "load1": "2.41"}
|
||||
{"utc": "2026-10-24T21:34:38.191+00:00", "load1": "2.41"}
|
||||
{"utc": "2026-10-24T21:34:39.191+00:00", "load1": "2.41"}
|
||||
{"utc": "2026-10-24T21:34:40.191+00:00", "load1": "2.41"}
|
||||
{"utc": "2026-10-24T21:34:41.192+00:00", "load1": "2.54"}
|
||||
{"utc": "2026-10-24T21:34:42.192+00:00", "load1": "2.54"}
|
||||
{"utc": "2026-10-24T21:34:43.192+00:00", "load1": "2.54"}
|
||||
{"utc": "2026-10-24T21:34:44.193+00:00", "load1": "2.54"}
|
||||
{"utc": "2026-10-24T21:34:45.193+00:00", "load1": "2.54"}
|
||||
{"utc": "2026-10-24T21:34:46.193+00:00", "load1": "2.42"}
|
||||
{"utc": "2026-10-24T21:34:47.193+00:00", "load1": "2.42"}
|
||||
{"utc": "2026-10-24T21:34:48.194+00:00", "load1": "2.42"}
|
||||
{"utc": "2026-10-24T21:34:49.194+00:00", "load1": "2.42"}
|
||||
{"utc": "2026-10-24T21:34:50.194+00:00", "load1": "2.42"}
|
||||
{"utc": "2026-10-24T21:34:51.195+00:00", "load1": "2.30"}
|
||||
{"utc": "2026-10-24T21:34:52.195+00:00", "load1": "2.30"}
|
||||
{"utc": "2026-10-24T21:34:53.195+00:00", "load1": "2.30"}
|
||||
{"utc": "2026-10-24T21:34:54.195+00:00", "load1": "2.30"}
|
||||
{"utc": "2026-10-24T21:34:55.196+00:00", "load1": "2.30"}
|
||||
{"utc": "2026-10-24T21:34:56.196+00:00", "load1": "2.36"}
|
||||
{"utc": "2026-10-24T21:34:57.196+00:00", "load1": "2.36"}
|
||||
{"utc": "2026-10-24T21:34:58.196+00:00", "load1": "2.36"}
|
||||
{"utc": "2026-10-24T21:34:59.197+00:00", "load1": "2.36"}
|
||||
{"utc": "2026-10-24T21:35:00.197+00:00", "load1": "2.36"}
|
||||
{"utc": "2026-10-24T21:35:01.197+00:00", "load1": "2.33"}
|
||||
{"utc": "2026-10-24T21:35:02.197+00:00", "load1": "2.33"}
|
||||
{"utc": "2026-10-24T21:35:03.198+00:00", "load1": "2.33"}
|
||||
{"utc": "2026-10-24T21:35:04.198+00:00", "load1": "2.33"}
|
||||
{"utc": "2026-10-24T21:35:05.198+00:00", "load1": "2.33"}
|
||||
{"utc": "2026-10-24T21:35:06.199+00:00", "load1": "2.55"}
|
||||
{"utc": "2026-10-24T21:35:07.199+00:00", "load1": "2.55"}
|
||||
{"utc": "2026-10-24T21:35:08.199+00:00", "load1": "2.55"}
|
||||
{"utc": "2026-10-24T21:35:09.200+00:00", "load1": "2.55"}
|
||||
{"utc": "2026-10-24T21:35:10.200+00:00", "load1": "2.55"}
|
||||
{"utc": "2026-10-24T21:35:11.200+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:35:12.200+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:35:13.201+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:35:14.201+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:35:15.201+00:00", "load1": "2.58"}
|
||||
{"utc": "2026-10-24T21:35:16.202+00:00", "load1": "2.62"}
|
||||
{"utc": "2026-10-24T21:35:17.202+00:00", "load1": "2.62"}
|
||||
{"utc": "2026-10-24T21:35:18.202+00:00", "load1": "2.62"}
|
||||
{"utc": "2026-10-24T21:35:19.202+00:00", "load1": "2.62"}
|
||||
{"utc": "2026-10-24T21:35:20.203+00:00", "load1": "2.62"}
|
||||
{"utc": "2026-10-24T21:35:21.203+00:00", "load1": "2.49"}
|
||||
{"utc": "2026-10-24T21:35:22.203+00:00", "load1": "2.49"}
|
||||
{"utc": "2026-10-24T21:35:23.203+00:00", "load1": "2.49"}
|
||||
{"utc": "2026-10-24T21:35:24.204+00:00", "load1": "2.49"}
|
||||
{"utc": "2026-10-24T21:35:25.204+00:00", "load1": "2.49"}
|
||||
{"utc": "2026-10-24T21:35:26.204+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:35:27.205+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:35:28.205+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:35:29.205+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:35:30.205+00:00", "load1": "2.45"}
|
||||
{"utc": "2026-10-24T21:35:31.206+00:00", "load1": "2.33"}
|
||||
{"utc": "2026-10-24T21:35:32.206+00:00", "load1": "2.33"}
|
||||
{"utc": "2026-10-24T21:35:33.206+00:00", "load1": "2.33"}
|
||||
{"utc": "2026-10-24T21:35:34.207+00:00", "load1": "2.33"}
|
||||
{"utc": "2026-10-24T21:35:35.207+00:00", "load1": "2.33"}
|
||||
{"utc": "2026-10-24T21:35:36.207+00:00", "load1": "2.38"}
|
||||
{"utc": "2026-10-24T21:35:37.207+00:00", "load1": "2.38"}
|
||||
{"utc": "2026-10-24T21:35:38.208+00:00", "load1": "2.38"}
|
||||
{"utc": "2026-10-24T21:35:39.208+00:00", "load1": "2.38"}
|
||||
{"utc": "2026-10-24T21:35:40.208+00:00", "load1": "2.38"}
|
||||
{"utc": "2026-10-24T21:35:41.208+00:00", "load1": "2.51"}
|
||||
{"utc": "2026-10-24T21:35:42.209+00:00", "load1": "2.51"}
|
||||
{"utc": "2026-10-24T21:35:43.209+00:00", "load1": "2.51"}
|
||||
{"utc": "2026-10-24T21:35:44.209+00:00", "load1": "2.51"}
|
||||
{"utc": "2026-10-24T21:35:45.210+00:00", "load1": "2.51"}
|
||||
{"utc": "2026-10-24T21:35:46.210+00:00", "load1": "2.55"}
|
||||
{"utc": "2026-10-24T21:35:47.210+00:00", "load1": "2.55"}
|
||||
{"utc": "2026-10-24T21:35:48.210+00:00", "load1": "2.55"}
|
||||
{"utc": "2026-10-24T21:35:49.211+00:00", "load1": "2.55"}
|
||||
{"utc": "2026-10-24T21:35:50.211+00:00", "load1": "2.55"}
|
||||
{"utc": "2026-10-24T21:35:51.211+00:00", "load1": "2.43"}
|
||||
{"utc": "2026-10-24T21:35:52.211+00:00", "load1": "2.43"}
|
||||
{"utc": "2026-10-24T21:35:53.212+00:00", "load1": "2.43"}
|
||||
{"utc": "2026-10-24T21:35:54.212+00:00", "load1": "2.43"}
|
||||
{"utc": "2026-10-24T21:35:55.212+00:00", "load1": "2.43"}
|
||||
{"utc": "2026-10-24T21:35:56.213+00:00", "load1": "2.63"}
|
||||
{"utc": "2026-10-24T21:35:57.213+00:00", "load1": "2.63"}
|
||||
{"utc": "2026-10-24T21:35:58.213+00:00", "load1": "2.63"}
|
||||
{"utc": "2026-10-24T21:35:59.213+00:00", "load1": "2.63"}
|
||||
{"utc": "2026-10-24T21:36:00.214+00:00", "load1": "2.63"}
|
||||
{"utc": "2026-10-24T21:36:01.214+00:00", "load1": "2.74"}
|
||||
{"utc": "2026-10-24T21:36:02.214+00:00", "load1": "2.74"}
|
||||
{"utc": "2026-10-24T21:36:03.214+00:00", "load1": "2.74"}
|
||||
{"utc": "2026-10-24T21:36:04.215+00:00", "load1": "2.74"}
|
||||
{"utc": "2026-10-24T21:36:05.215+00:00", "load1": "2.74"}
|
||||
{"utc": "2026-10-24T21:36:06.215+00:00", "load1": "2.68"}
|
||||
{"utc": "2026-10-24T21:36:07.215+00:00", "load1": "2.68"}
|
||||
{"utc": "2026-10-24T21:36:08.216+00:00", "load1": "2.68"}
|
||||
{"utc": "2026-10-24T21:36:09.216+00:00", "load1": "2.68"}
|
||||
{"utc": "2026-10-24T21:36:10.216+00:00", "load1": "2.68"}
|
||||
{"utc": "2026-10-24T21:36:11.216+00:00", "load1": "2.71"}
|
||||
{"utc": "2026-10-24T21:36:12.217+00:00", "load1": "2.71"}
|
||||
{"utc": "2026-10-24T21:36:13.217+00:00", "load1": "2.71"}
|
||||
{"utc": "2026-10-24T21:36:14.217+00:00", "load1": "2.71"}
|
||||
{"utc": "2026-10-24T21:36:15.217+00:00", "load1": "2.71"}
|
||||
{"utc": "2026-10-24T21:36:16.218+00:00", "load1": "2.57"}
|
||||
{"utc": "2026-10-24T21:36:17.218+00:00", "load1": "2.57"}
|
||||
{"utc": "2026-10-24T21:36:18.218+00:00", "load1": "2.57"}
|
||||
{"utc": "2026-10-24T21:36:19.218+00:00", "load1": "2.57"}
|
||||
{"utc": "2026-10-24T21:36:20.219+00:00", "load1": "2.57"}
|
||||
{"utc": "2026-10-24T21:36:21.219+00:00", "load1": "2.61"}
|
||||
@@ -0,0 +1,69 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/case1-accept.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/4hkmqC
|
||||
begin: {"utc": "2026-10-24T21:32:14.150+00:00", "load1": "2.80"}
|
||||
launch nice: 19
|
||||
✔ row253 socket observation uses configured root, metadata and the Console peer without sending bytes (1960.356704ms)
|
||||
✔ row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure (31523.168546ms)
|
||||
✔ row253 acceptance rejects bad config and unsupported copies before talk (1608.957115ms)
|
||||
✔ row253 stalled peer observation ends within its bound without leaving a reader (4091.038228ms)
|
||||
✔ row253 P8 refuses both retired TCP and board listeners (4091.75545ms)
|
||||
✔ row253 C4 acceptance query inner reason holds under both sudo models (10728.245166ms)
|
||||
✔ row253 C4 acceptance query outer reason discards stdout and names residual cleanup (14184.707703ms)
|
||||
✔ row253 C4 acceptance query overflow is output-limit in both models (493.199949ms)
|
||||
✔ row299 P10 timing copy preserves shipped bytes and isolates observer variables (0.80358ms)
|
||||
✔ row299 P10 observers preserve stdout stderr status and the EXIT trap (3.241033ms)
|
||||
✔ row299 P10 observer records are complete and ordered (0.504478ms)
|
||||
✔ row253 C4 P10 inner reason holds under both sudo models (11959.59679ms)
|
||||
ℹ {"fault":"inner","mode":"exec","baselineSeconds":1.9036348169999984,"faultSeconds":4.010790880999994,"probeSeconds":2.26}
|
||||
ℹ {"fault":"inner","mode":"hop","baselineSeconds":1.9435518369999918,"faultSeconds":4.031400961999999,"probeSeconds":2.27}
|
||||
✔ row253 C4 P10 outer reason holds under both sudo models (15931.349562ms)
|
||||
ℹ {"fault":"outer","mode":"exec","baselineSeconds":1.98829056400001,"faultSeconds":6.028815054999999,"probeSeconds":4}
|
||||
ℹ {"fault":"outer","mode":"hop","baselineSeconds":2.0725973720000037,"faultSeconds":5.780351015000007,"probeSeconds":4}
|
||||
✔ row253 C4 P10 overflow reason holds under both sudo models (3932.276708ms)
|
||||
✔ row 195 accept: every check passing exits 0, with each P mark and counts that match the lines (1928.173192ms)
|
||||
✔ row 195 accept: exits 1 with each F check failing alone, and its line names it (22366.284111ms)
|
||||
✔ row 195 accept: F3 fails on exit 0 with no reply line, and its evidence takes talk's error (4114.398413ms)
|
||||
✔ row 195 accept: F1 fails on a unit that isn't active or isn't User=mosaic (3733.156512ms)
|
||||
✔ row 195 accept: F2 fails when healthz doesn't answer and when another pid holds the port (4162.352286ms)
|
||||
✔ row 195 accept: F5 fails on unpriv_bwrap (enforce), on complain and on a trailing space (9123.643619ms)
|
||||
✔ row 195 accept: F5 fails with no bwrap of mosaic's, and passes on comm alone (4303.746275ms)
|
||||
✔ row 195 accept: F6 fails on a stub that prints nothing, on a path outside claude-<pin> and on a .. segment (5474.241375ms)
|
||||
✔ row 195 accept: F7 fails on two live PM launches, one for another business, and no launch.by (5689.107516ms)
|
||||
✔ row 195 accept: F8 fails on 0640, on another owner and on a symlink, and never prints the credential (5694.505601ms)
|
||||
✔ row 195 accept: F9 fails on another owner, a group-writable mode and a number for the flag (5645.749568ms)
|
||||
✔ row 195 accept: F9 won't run --node as root off the pin path or with a writable directory above it (5429.202162ms)
|
||||
✔ row 195 accept: F11 fails on one *.json under discord/ and passes on an empty directory (3904.643992ms)
|
||||
✔ row 195 accept: each P check reports unnamed on its fault, and the exit stays 0 (17012.065018ms)
|
||||
✔ row 195 accept: P2 is unnamed with a supplementary group, and P5 names docker (3843.096445ms)
|
||||
✔ row 195 accept: P5 is closed with no jarvis account, and P2 with an empty authorized_keys (1889.164737ms)
|
||||
✔ row 195 accept: P9 is unnamed once for each item missing (9852.59853ms)
|
||||
✔ row253 accept: P10 fails its observation with another peer; P11 with the unit disabled (3798.554361ms)
|
||||
✔ row 195 accept: every P check unnamed together still exits 0 (1716.202322ms)
|
||||
✔ row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason (107.810303ms)
|
||||
✔ row 195 accept: usage errors and a run without --root as a user exit 2 (11.260865ms)
|
||||
✔ row 195 accept: every in-instance call goes through sudo -u mosaic -H env PATH=<node dir>:... (1994.240033ms)
|
||||
✔ row 195 accept: the host check runs with --check and never --enforce (1906.316952ms)
|
||||
✔ row276 legacy call inventory pins every production bound and the conversation contract (0.385187ms)
|
||||
✔ row276 talk legacy inner timeout cleans both sudo models (1706.010988ms)
|
||||
✔ row276 precheck legacy inner timeout cleans both sudo models (1707.72986ms)
|
||||
✔ row276 claude-version legacy inner timeout cleans both sudo models (1692.026352ms)
|
||||
✔ row276 pm-list legacy inner timeout cleans both sudo models (1728.892564ms)
|
||||
✔ row276 node-version legacy inner timeout cleans both sudo models (1729.708664ms)
|
||||
✔ row276 legacy streams and display status preserve failures without granting success (2666.06474ms)
|
||||
✔ row276 trailer grammar cannot make supervisor failure pass (2098.166571ms)
|
||||
✔ row276 earlier forged trailer and appended zero remain failures (520.211343ms)
|
||||
✔ row276 precheck outer bound discards success status and fixture cleans residual (2178.89884ms)
|
||||
✔ row276 case1 capture and legacy tools refuse unsafe system tools (76.621263ms)
|
||||
✔ row276 stderr retention is bounded and keeps the final diagnostic (265.053132ms)
|
||||
✔ row276 version and PM checks refuse successful-looking stdout on supervisor failure (16.981773ms)
|
||||
✔ row276 full acceptance keeps all five healthy calls in both sudo models (3844.210125ms)
|
||||
✔ row276 vanished pid stat read returns 3 with empty stderr in both scripts (12.994631ms)
|
||||
✔ row276 legacy stdout snapshot preserves exact bytes on success and command failure (3256.206249ms)
|
||||
ℹ tests 53
|
||||
ℹ suites 0
|
||||
ℹ pass 53
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 247834.235231
|
||||
@@ -0,0 +1,72 @@
|
||||
{"utc": "2026-10-24T21:36:22.014+00:00", "load1": "2.61"}
|
||||
{"utc": "2026-10-24T21:36:23.015+00:00", "load1": "2.61"}
|
||||
{"utc": "2026-10-24T21:36:24.015+00:00", "load1": "2.61"}
|
||||
{"utc": "2026-10-24T21:36:25.015+00:00", "load1": "2.61"}
|
||||
{"utc": "2026-10-24T21:36:26.015+00:00", "load1": "2.56"}
|
||||
{"utc": "2026-10-24T21:36:27.016+00:00", "load1": "2.56"}
|
||||
{"utc": "2026-10-24T21:36:28.016+00:00", "load1": "2.56"}
|
||||
{"utc": "2026-10-24T21:36:29.016+00:00", "load1": "2.56"}
|
||||
{"utc": "2026-10-24T21:36:30.016+00:00", "load1": "2.56"}
|
||||
{"utc": "2026-10-24T21:36:31.017+00:00", "load1": "2.35"}
|
||||
{"utc": "2026-10-24T21:36:32.017+00:00", "load1": "2.35"}
|
||||
{"utc": "2026-10-24T21:36:33.017+00:00", "load1": "2.35"}
|
||||
{"utc": "2026-10-24T21:36:34.018+00:00", "load1": "2.35"}
|
||||
{"utc": "2026-10-24T21:36:35.018+00:00", "load1": "2.35"}
|
||||
{"utc": "2026-10-24T21:36:36.018+00:00", "load1": "2.41"}
|
||||
{"utc": "2026-10-24T21:36:37.018+00:00", "load1": "2.41"}
|
||||
{"utc": "2026-10-24T21:36:38.019+00:00", "load1": "2.41"}
|
||||
{"utc": "2026-10-24T21:36:39.019+00:00", "load1": "2.41"}
|
||||
{"utc": "2026-10-24T21:36:40.019+00:00", "load1": "2.41"}
|
||||
{"utc": "2026-10-24T21:36:41.019+00:00", "load1": "2.21"}
|
||||
{"utc": "2026-10-24T21:36:42.020+00:00", "load1": "2.21"}
|
||||
{"utc": "2026-10-24T21:36:43.020+00:00", "load1": "2.21"}
|
||||
{"utc": "2026-10-24T21:36:44.020+00:00", "load1": "2.21"}
|
||||
{"utc": "2026-10-24T21:36:45.020+00:00", "load1": "2.21"}
|
||||
{"utc": "2026-10-24T21:36:46.021+00:00", "load1": "2.04"}
|
||||
{"utc": "2026-10-24T21:36:47.021+00:00", "load1": "2.04"}
|
||||
{"utc": "2026-10-24T21:36:48.021+00:00", "load1": "2.04"}
|
||||
{"utc": "2026-10-24T21:36:49.022+00:00", "load1": "2.04"}
|
||||
{"utc": "2026-10-24T21:36:50.022+00:00", "load1": "2.04"}
|
||||
{"utc": "2026-10-24T21:36:51.022+00:00", "load1": "1.95"}
|
||||
{"utc": "2026-10-24T21:36:52.022+00:00", "load1": "1.95"}
|
||||
{"utc": "2026-10-24T21:36:53.023+00:00", "load1": "1.95"}
|
||||
{"utc": "2026-10-24T21:36:54.023+00:00", "load1": "1.95"}
|
||||
{"utc": "2026-10-24T21:36:55.023+00:00", "load1": "1.95"}
|
||||
{"utc": "2026-10-24T21:36:56.023+00:00", "load1": "1.80"}
|
||||
{"utc": "2026-10-24T21:36:57.024+00:00", "load1": "1.80"}
|
||||
{"utc": "2026-10-24T21:36:58.024+00:00", "load1": "1.80"}
|
||||
{"utc": "2026-10-24T21:36:59.024+00:00", "load1": "1.80"}
|
||||
{"utc": "2026-10-24T21:37:00.025+00:00", "load1": "1.80"}
|
||||
{"utc": "2026-10-24T21:37:01.025+00:00", "load1": "1.65"}
|
||||
{"utc": "2026-10-24T21:37:02.025+00:00", "load1": "1.65"}
|
||||
{"utc": "2026-10-24T21:37:03.025+00:00", "load1": "1.65"}
|
||||
{"utc": "2026-10-24T21:37:04.026+00:00", "load1": "1.65"}
|
||||
{"utc": "2026-10-24T21:37:05.026+00:00", "load1": "1.65"}
|
||||
{"utc": "2026-10-24T21:37:06.026+00:00", "load1": "1.60"}
|
||||
{"utc": "2026-10-24T21:37:07.026+00:00", "load1": "1.60"}
|
||||
{"utc": "2026-10-24T21:37:08.027+00:00", "load1": "1.60"}
|
||||
{"utc": "2026-10-24T21:37:09.027+00:00", "load1": "1.60"}
|
||||
{"utc": "2026-10-24T21:37:10.027+00:00", "load1": "1.60"}
|
||||
{"utc": "2026-10-24T21:37:11.028+00:00", "load1": "1.55"}
|
||||
{"utc": "2026-10-24T21:37:12.028+00:00", "load1": "1.55"}
|
||||
{"utc": "2026-10-24T21:37:13.028+00:00", "load1": "1.55"}
|
||||
{"utc": "2026-10-24T21:37:14.028+00:00", "load1": "1.55"}
|
||||
{"utc": "2026-10-24T21:37:15.029+00:00", "load1": "1.55"}
|
||||
{"utc": "2026-10-24T21:37:16.029+00:00", "load1": "1.59"}
|
||||
{"utc": "2026-10-24T21:37:17.029+00:00", "load1": "1.59"}
|
||||
{"utc": "2026-10-24T21:37:18.030+00:00", "load1": "1.59"}
|
||||
{"utc": "2026-10-24T21:37:19.030+00:00", "load1": "1.59"}
|
||||
{"utc": "2026-10-24T21:37:20.030+00:00", "load1": "1.59"}
|
||||
{"utc": "2026-10-24T21:37:21.030+00:00", "load1": "1.62"}
|
||||
{"utc": "2026-10-24T21:37:22.031+00:00", "load1": "1.62"}
|
||||
{"utc": "2026-10-24T21:37:23.031+00:00", "load1": "1.62"}
|
||||
{"utc": "2026-10-24T21:37:24.031+00:00", "load1": "1.62"}
|
||||
{"utc": "2026-10-24T21:37:25.031+00:00", "load1": "1.62"}
|
||||
{"utc": "2026-10-24T21:37:26.032+00:00", "load1": "1.81"}
|
||||
{"utc": "2026-10-24T21:37:27.032+00:00", "load1": "1.81"}
|
||||
{"utc": "2026-10-24T21:37:28.032+00:00", "load1": "1.81"}
|
||||
{"utc": "2026-10-24T21:37:29.033+00:00", "load1": "1.81"}
|
||||
{"utc": "2026-10-24T21:37:30.033+00:00", "load1": "1.81"}
|
||||
{"utc": "2026-10-24T21:37:31.033+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:32.033+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:33.034+00:00", "load1": "1.99"}
|
||||
@@ -0,0 +1,59 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/case2-unit.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/gR7UqU
|
||||
begin: {"utc": "2026-10-24T21:36:22.014+00:00", "load1": "2.61"}
|
||||
launch nice: 19
|
||||
✔ row253 factory socket uses actual config and target-uid query without widening hardening (287.769221ms)
|
||||
✔ row253 installer refuses unsafe location and query facts before unit writes (2952.033973ms)
|
||||
✔ row253 query timeout kills its process group and leaves no running child (7049.441396ms)
|
||||
✔ row253 protected homes refuse before any filesystem access (9.243689ms)
|
||||
✔ row253 C4 sleep query has exact inner reason and cleans all members (10619.671823ms)
|
||||
✔ row253 C4 signals query has exact inner reason and cleans all members (10633.185983ms)
|
||||
✔ row253 C4 member query has exact inner reason and cleans all members (10660.129866ms)
|
||||
✔ row253 C4 overflow is output-limit in both sudo modes (415.481406ms)
|
||||
✔ row253 C4 stalled supervisor uses the outer reason and explicit residual cleanup (14139.910506ms)
|
||||
✔ row253 C4 inline supervisor is byte-identical in both host scripts (0.372799ms)
|
||||
✔ row253 C4 cleanup budget starts after inventory pass one (35.879883ms)
|
||||
✔ row253 query reaps its group even when a child closes stdout before the query returns (135.647727ms)
|
||||
✔ row253 config parser is strict (9.070617ms)
|
||||
✔ a clean library render writes both units 0644 with the fixed lines, and enables both then starts the bus then the Console (116.979068ms)
|
||||
✔ PATH starts with the --node directory, for a node outside the default list and for /usr/bin/node (100.651476ms)
|
||||
✔ a failed bus start refuses with the Console not started (98.302898ms)
|
||||
✔ the script never links a unit file (0.209818ms)
|
||||
✔ factory renders --pm once and one MOSAIC_CLAUDE_BIN line, and without them both tokens render empty (571.733629ms)
|
||||
✔ a re-install over running units says they are still on the old copy and must restart together, never that it started them (430.153701ms)
|
||||
✔ a re-install to another copy re-renders both units, and an edited installed unit refuses (1012.601903ms)
|
||||
✔ a template with a namespace, user or system call restriction refuses (267.81373ms)
|
||||
✔ the bus template's EnvironmentFile line must be there and point at the session env, and the Console template must have none (187.479704ms)
|
||||
✔ a template holding an unknown token, PermissionsStartOnly or a privileged Exec prefix refuses (144.593982ms)
|
||||
✔ a symlink at either unit path refuses (171.314939ms)
|
||||
✔ a --node that is relative, not root-owned or under <home> refuses (20.568809ms)
|
||||
✔ a re-install with a different --node or different serve flags refuses (476.505695ms)
|
||||
✔ an installed pair whose units name different copies refuses (251.165921ms)
|
||||
✔ a copy id that is short, uppercase, holds / or .., or names no directory refuses (28.351371ms)
|
||||
✔ library refuses a privileged-floor miss, a bad proof pair and every flag outside its set (279.45758ms)
|
||||
✔ library refuses a proof file not owned by <user>'s uid (16.569874ms)
|
||||
✔ factory refuses duplicate socket, a missing --port or --business, and each proxy flag (190.376182ms)
|
||||
✔ row253 factory refuses retired TCP and a value after the socket marker (29.179493ms)
|
||||
✔ factory refuses a --claude that is relative, not root-owned or under <home>, and a re-install with another --pm or --claude (1216.351215ms)
|
||||
✔ the precheck passes on a good host and prints free memory, without the key (155.224252ms)
|
||||
✔ the precheck refuses each failed host check (1376.005723ms)
|
||||
✔ the precheck refuses a user missing from passwd, a business file that does not load, and a symlinked run root (827.837783ms)
|
||||
✔ a bwrap that fails refuses and prints the sysctl and where bwrap is (173.444688ms)
|
||||
✔ an unprivileged port floor at or below the Console's port refuses, and so does a missing Console unit (796.745889ms)
|
||||
✔ bus.tester: library refuses it on, factory needs it on, and factory refuses a library business (636.054732ms)
|
||||
✔ the claude check runs only for a claude-code instance, and refuses a claude that appends or answers wrong (1232.205906ms)
|
||||
✔ the claude check runs the bus unit's MOSAIC_CLAUDE_BIN over claude on PATH (386.51322ms)
|
||||
✔ the session env file refuses when missing, open to others, a symlink, empty, or emptied by a later line (998.59502ms)
|
||||
✔ inside a session's sandbox a bind below 1024 fails with EACCES, and a bind on a free high port succeeds (96.393482ms)
|
||||
✔ Vikunja 614 factory: scoped @anthropic-ai Claude path renders and passes installed read-back (755.560041ms)
|
||||
✔ Vikunja 614 factory: plain paths still refuse every named unsafe character (92.291991ms)
|
||||
✔ Vikunja 614 precheck: explicit null and named notifier decisions pass (322.558298ms)
|
||||
✔ Vikunja 614 precheck: notifier config refuses missing, public, malformed and extra-key decisions (1265.433106ms)
|
||||
ℹ tests 47
|
||||
ℹ suites 0
|
||||
ℹ pass 47
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 71797.272786
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:37:33.844+00:00", "load1": "1.99"}
|
||||
@@ -0,0 +1,14 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/channel-cli.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/CVVva9
|
||||
begin: {"utc": "2026-10-24T21:37:33.844+00:00", "load1": "1.99"}
|
||||
launch nice: 19
|
||||
✔ CLI off, absent and other-only channel selections refuse every project/thread flow before any effect (11.900237ms)
|
||||
✔ CLI enabled project/thread lists dispatch through selection without changing output (1.430684ms)
|
||||
ℹ tests 2
|
||||
ℹ suites 0
|
||||
ℹ pass 2
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 145.826507
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:37:34.021+00:00", "load1": "1.99"}
|
||||
@@ -0,0 +1,24 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/cli.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/w29Ytc
|
||||
begin: {"utc": "2026-10-24T21:37:34.021+00:00", "load1": "1.99"}
|
||||
launch nice: 19
|
||||
✔ inbox lists only decisions routed to the human, with what approving authorizes and how to decide (26.130084ms)
|
||||
✔ decide resolves by id prefix with --yes, and the trail shows it in broker order with the task to follow (19.097415ms)
|
||||
✔ decide refuses without a terminal or --yes, on an unknown option and on a short reference (15.679428ms)
|
||||
✔ decide prints a declining choice as declining (15.1631ms)
|
||||
✔ an unknown outcome is reported once and never resent (13.13373ms)
|
||||
✔ a decision closed before the answer arrives exits 2 and points at its trail (13.974559ms)
|
||||
✔ a prefix that matches two open decisions exits 2 and resolves neither (14.135485ms)
|
||||
✔ without --business a command uses the live host's business, and a stale host.json is not a host (12.56568ms)
|
||||
✔ every human command refuses inside an agent run before it touches the bus (14.190702ms)
|
||||
✔ usage errors exit 4; no business and no host is a usage error (13.837284ms)
|
||||
✔ agents and tasks print through the broker (13.010733ms)
|
||||
✔ notify.json: missing, loose, malformed and extra keys refuse; a binding or null passes (1.133336ms)
|
||||
ℹ tests 12
|
||||
ℹ suites 0
|
||||
ℹ pass 12
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 316.076071
|
||||
@@ -0,0 +1,15 @@
|
||||
{"utc": "2026-10-24T21:37:34.368+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:35.368+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:36.368+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:37.369+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:38.369+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:39.369+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:40.369+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:41.370+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:42.370+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:43.370+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:44.370+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:45.371+00:00", "load1": "1.99"}
|
||||
{"utc": "2026-10-24T21:37:46.371+00:00", "load1": "2.07"}
|
||||
{"utc": "2026-10-24T21:37:47.371+00:00", "load1": "2.07"}
|
||||
{"utc": "2026-10-24T21:37:48.372+00:00", "load1": "2.07"}
|
||||
@@ -0,0 +1,26 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/compactions-launch.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/a02guB
|
||||
begin: {"utc": "2026-10-24T21:37:34.367+00:00", "load1": "1.99"}
|
||||
launch nice: 19
|
||||
usage: {"event":"usage-unknown","business":"acme","run":"rded1c04f89fc","instance":"assistant","turn":"59869855-1373-4592-a210-291741bf371a","source":"@none","code":"baseline-unknown"}
|
||||
usage: {"event":"usage-unknown","business":"acme","run":"r5059dcc0af5f","instance":"assistant","turn":"9aa1cc47-e4a3-48ee-93d1-902e91267b51","source":"@none","code":"baseline-unknown"}
|
||||
✔ REQ-THREAD-2 T3 a run collects compactions at its start and its end, and the count holds across a resume and a host restart (3008.702661ms)
|
||||
usage: {"event":"usage-unknown","business":"acme","run":"r8e0dce92d2e1","instance":"assistant","turn":"af796965-7867-4860-b070-ce0f1a32a24d","source":"@none","code":"baseline-unknown"}
|
||||
usage: {"event":"usage-unknown","business":"acme","run":"rc3a363415a8c","instance":"assistant","turn":"dc211ce5-e2a9-43f1-8856-8c248b21c248","source":"@none","code":"baseline-unknown"}
|
||||
✔ REQ-THREAD-2 T3 a collection that fails is logged and recorded store-unreadable, and the run ends as one whose collections count (2805.636266ms)
|
||||
usage: {"event":"usage-unknown","business":"acme","run":"r1a7cb574a62a","instance":"assistant","turn":"7d8ef53b-a9e5-41d1-ad97-3d4698517bd8","source":"@none","code":"baseline-unknown"}
|
||||
usage: {"event":"usage-unknown","business":"acme","run":"rc90955795474","instance":"assistant","turn":"e3fe9692-bece-46d2-889b-70c2e4d4f61a","source":"@none","code":"baseline-unknown"}
|
||||
✔ REQ-THREAD-2 T3 the read budget is the system config's compactionReadBytes, and a bad value takes the default (2911.277071ms)
|
||||
usage: {"event":"usage-unknown","business":"acme","run":"r7e6799438566","instance":"assistant","turn":"b70d0e52-ac78-404f-8aa7-72e9bf570785","source":"@none","code":"baseline-unknown"}
|
||||
usage: {"event":"usage-unknown","business":"acme","run":"rd2b1761c0eae","instance":"assistant","turn":"fb0c8e91-63d5-467e-ad72-3b716c7d6f6e","source":"@none","code":"baseline-unknown"}
|
||||
✔ REQ-THREAD-2 T3 the stream cap is the system config's compactionStreams, and a bad value takes the default (2919.605295ms)
|
||||
usage: {"event":"usage-unknown","business":"acme","run":"rb3d76f04dcc0","instance":"assistant","turn":"8be864a2-afa9-4df6-b9df-4c30411a1b3b","source":"@none","code":"baseline-unknown"}
|
||||
✔ REQ-THREAD-2 T3 T4 a clear leaves the retired session's count as it was, its successor counts from 0, and a legacy session reads the thread's ledger (2857.129015ms)
|
||||
ℹ tests 5
|
||||
ℹ suites 0
|
||||
ℹ pass 5
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 14649.004674
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:37:49.050+00:00", "load1": "2.07"}
|
||||
@@ -0,0 +1,19 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/config.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/AhpJsG
|
||||
begin: {"utc": "2026-10-24T21:37:49.050+00:00", "load1": "2.07"}
|
||||
launch nice: 19
|
||||
✔ bootConfig builds the broker's boot message for one business, with no trackers key when no project names one (37.903912ms)
|
||||
✔ trackers come from the tracker.* variables of the one project that names a tracker project (56.939287ms)
|
||||
✔ with two projects, the one that sets tracker.project supplies the tracker and the other is no conflict (31.896299ms)
|
||||
✔ two projects that each name a tracker project refuse, since the boot shape holds one (38.254474ms)
|
||||
✔ a business without tracker.baseUrl gets no trackers entry (30.020788ms)
|
||||
✔ an unknown business and a broken system config refuse with exit 3 (52.889786ms)
|
||||
✔ Row 252 (Webby N1): every console.sso subject reaches the boot as a console owner, and no sso means no consoleOwners key (31.743894ms)
|
||||
ℹ tests 7
|
||||
ℹ suites 0
|
||||
ℹ pass 7
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 384.52979
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:37:49.465+00:00", "load1": "2.07"}
|
||||
@@ -0,0 +1,17 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/credentials.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/QKugz7
|
||||
begin: {"utc": "2026-10-24T21:37:49.465+00:00", "load1": "2.07"}
|
||||
launch nice: 19
|
||||
✔ row 199: issue and rotate send the stdin token once to credentials.issue and print no value (6.272429ms)
|
||||
✔ row 199: rotate goes ahead on each held state, rotation-due included, and refuses not-issued, revoked and an unknown entry (2.347592ms)
|
||||
✔ row 199: status, revoke and delete; the tester runs status and revoke only (2.020675ms)
|
||||
✔ row 210: issue of a host.<id> kind prints public material only (1.162585ms)
|
||||
✔ row 199: scripts/mosaic sends credentials to packages/cli, not the seat CLI (90.322241ms)
|
||||
ℹ tests 5
|
||||
ℹ suites 0
|
||||
ℹ pass 5
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 233.30329
|
||||
@@ -0,0 +1,4 @@
|
||||
{"utc": "2026-10-24T21:37:49.731+00:00", "load1": "2.07"}
|
||||
{"utc": "2026-10-24T21:37:50.732+00:00", "load1": "2.07"}
|
||||
{"utc": "2026-10-24T21:37:51.732+00:00", "load1": "1.98"}
|
||||
{"utc": "2026-10-24T21:37:52.732+00:00", "load1": "1.98"}
|
||||
@@ -0,0 +1,14 @@
|
||||
command: ["timeout", "-k", "10", "600", "bash", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/scripts/test-federation-acceptance.sh"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/AgdZo8
|
||||
begin: {"utc": "2026-10-24T21:37:49.731+00:00", "load1": "2.07"}
|
||||
launch nice: 19
|
||||
✔ FED R7 scratch two-instance acceptance (3619.624966ms)
|
||||
ℹ tests 1
|
||||
ℹ suites 0
|
||||
ℹ pass 1
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 3703.783284
|
||||
R7 cleanup: no child groups, ports or sockets remain; no units created
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:37:53.730+00:00", "load1": "1.98"}
|
||||
@@ -0,0 +1,18 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/follow.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/LGEnHH
|
||||
begin: {"utc": "2026-10-24T21:37:53.730+00:00", "load1": "1.98"}
|
||||
launch nice: 19
|
||||
✔ follow prints an unsolicited message after plain talk returned (34.022105ms)
|
||||
✔ talk --follow continues after reply and prints a later unsolicited message (31.471249ms)
|
||||
✔ inbox lists all unread human messages under decisions, does not deliver or read them (286.892998ms)
|
||||
✔ follow refuses agent context and bad arguments (13.818714ms)
|
||||
✔ follow Ctrl-C wakes the poll sleep and removes its handler; transport errors also clean up (13.053576ms)
|
||||
✔ plain talk leaves the process SIGINT handlers unchanged (15.230394ms)
|
||||
ℹ tests 6
|
||||
ℹ suites 0
|
||||
ℹ pass 6
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 537.013614
|
||||
@@ -0,0 +1,16 @@
|
||||
{"utc": "2026-10-24T21:37:54.317+00:00", "load1": "1.98"}
|
||||
{"utc": "2026-10-24T21:37:55.318+00:00", "load1": "1.98"}
|
||||
{"utc": "2026-10-24T21:37:56.318+00:00", "load1": "1.91"}
|
||||
{"utc": "2026-10-24T21:37:57.318+00:00", "load1": "1.91"}
|
||||
{"utc": "2026-10-24T21:37:58.319+00:00", "load1": "1.91"}
|
||||
{"utc": "2026-10-24T21:37:59.319+00:00", "load1": "1.91"}
|
||||
{"utc": "2026-10-24T21:38:00.319+00:00", "load1": "1.91"}
|
||||
{"utc": "2026-10-24T21:38:01.319+00:00", "load1": "1.91"}
|
||||
{"utc": "2026-10-24T21:38:02.320+00:00", "load1": "1.91"}
|
||||
{"utc": "2026-10-24T21:38:03.320+00:00", "load1": "1.91"}
|
||||
{"utc": "2026-10-24T21:38:04.320+00:00", "load1": "1.91"}
|
||||
{"utc": "2026-10-24T21:38:05.321+00:00", "load1": "1.91"}
|
||||
{"utc": "2026-10-24T21:38:06.321+00:00", "load1": "2.32"}
|
||||
{"utc": "2026-10-24T21:38:07.321+00:00", "load1": "2.32"}
|
||||
{"utc": "2026-10-24T21:38:08.321+00:00", "load1": "2.32"}
|
||||
{"utc": "2026-10-24T21:38:09.322+00:00", "load1": "2.32"}
|
||||
@@ -0,0 +1,36 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/git-socket.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/iFrMGb
|
||||
begin: {"utc": "2026-10-24T21:37:54.317+00:00", "load1": "1.98"}
|
||||
launch nice: 19
|
||||
✔ the review loop: the coder pushes and asks, the reviewer fetches and approves, and the task's trail holds each step (948.726025ms)
|
||||
✔ refusals: no action, non-fast-forward, an unknown commit or request, and a push for another task moves only that task's ref (892.307037ms)
|
||||
✔ the size cap refuses a push before any byte (260.843152ms)
|
||||
✔ a fetch over the cap refuses before any byte reaches the reviewer (838.288816ms)
|
||||
✔ the socket refuses a request with no capability, an unknown one, and a bad request line (343.849524ms)
|
||||
✔ a rigged clone runs nothing: hooks, fsmonitor, a filter, a gitlink and a symlinked .git/config leave no marker (696.858007ms)
|
||||
✔ an identity with no role, or of another business, refuses not-a-role and moves no ref (479.392283ms)
|
||||
✔ a review of a project the business no longer has refuses unknown-project (553.558367ms)
|
||||
✔ past maxActive connections the socket refuses git-busy, and a hung-up connection frees its slot (233.108448ms)
|
||||
✔ close() answers host-closing to a connection still sending its request line (231.82802ms)
|
||||
✔ a bundle that trickles in refuses body-timeout at its deadline and frees its slot (646.038563ms)
|
||||
✔ a reviewer gone before its bundle was sent is filed fetch-aborted, not as the host's fault (774.916799ms)
|
||||
✔ a reviewer that hangs up the moment it has the whole bundle was served, not aborted (1632.517351ms)
|
||||
✔ send: a close after every byte left is served; one that fails a queued write is fetch-aborted (41.781458ms)
|
||||
✔ a bundle with no bytes for bodyIdle refuses body-timeout long before its deadline (550.86348ms)
|
||||
✔ send: a close once the loop is past its last chunk is served, and a failed write there is fetch-aborted (45.414425ms)
|
||||
✔ letGo waits for an answer to leave for at most its cap, then destroys the socket (301.453805ms)
|
||||
✔ a record that fails and can't be undone refuses rollback-failed, which the host logs (620.475051ms)
|
||||
✔ land: the squash runs the gate in its own worktree, then main moves and the broker records it (769.144327ms)
|
||||
✔ land: an arbiter-resolved landing's squash says the arbiter resolved it through the broker (890.64254ms)
|
||||
✔ land: refusals before the gate answer the role at once and leave main and no worktree (829.029513ms)
|
||||
✔ land: a failed gate is refused gate-failed with its step, told to the role, and main stays (834.782654ms)
|
||||
✔ land: a record the broker refuses moves main back, and the landing is refused with the broker's code (826.770095ms)
|
||||
✔ land: a second landing while one runs refuses land-busy, and close() stops the gate and refuses host-closing (857.551689ms)
|
||||
ℹ tests 24
|
||||
ℹ suites 0
|
||||
ℹ pass 24
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 15207.710964
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:38:09.558+00:00", "load1": "2.32"}
|
||||
@@ -0,0 +1,16 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/grants-scope.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/hH0rQA
|
||||
begin: {"utc": "2026-10-24T21:38:09.558+00:00", "load1": "2.32"}
|
||||
launch nice: 19
|
||||
✔ row 298 CLI: scope reads and scope set sends JSON and the observed revision (4.438238ms)
|
||||
✔ row 298 CLI: every access agent marker refuses scope set before transport (2.370474ms)
|
||||
✔ row 298 CLI: --tester cannot read or change the scope (0.550906ms)
|
||||
✔ row 298 CLI: missing revision and empty, invalid or oversized JSON refuse without a call (2.267236ms)
|
||||
ℹ tests 4
|
||||
ℹ suites 0
|
||||
ℹ pass 4
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 139.309495
|
||||
@@ -0,0 +1 @@
|
||||
{"utc": "2026-10-24T21:38:09.728+00:00", "load1": "2.32"}
|
||||
@@ -0,0 +1,18 @@
|
||||
command: ["timeout", "-k", "10", "1800", "node", "--test", "/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row329/packages/cli/tests/grants.test.mjs"]
|
||||
TMPDIR: /mnt/storage/scratch/tmp/kKFjXU
|
||||
begin: {"utc": "2026-10-24T21:38:09.727+00:00", "load1": "2.32"}
|
||||
launch nice: 19
|
||||
✔ row 236: grants status prints one line per entry, and --json the answer (2.915616ms)
|
||||
✔ row 236: run, revoke, sweep and admin rotate and remove send their args (0.642198ms)
|
||||
✔ row 236: admin set sends the stdin token once to grants.admin.set and prints no value (3.572576ms)
|
||||
✔ row 236: a malformed grants command is a usage error and calls nothing (4.43179ms)
|
||||
✔ row 236: a bus refusal exits 2 with its code (0.316869ms)
|
||||
✔ row 236: scripts/mosaic sends grants to packages/cli, not the seat CLI (93.239944ms)
|
||||
ℹ tests 6
|
||||
ℹ suites 0
|
||||
ℹ pass 6
|
||||
ℹ fail 0
|
||||
ℹ cancelled 0
|
||||
ℹ skipped 0
|
||||
ℹ todo 0
|
||||
ℹ duration_ms 239.975657
|
||||
Loaded 100 of 195 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user