TAP version 13 # Subtest: row253 factory refuses retired TCP and a value after the socket marker ok 1 - row253 factory refuses retired TCP and a value after the socket marker --- duration_ms: 30.253536 type: 'test' ... 1..1 # tests 1 # suites 0 # pass 1 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 133.900507 TAP version 13 # Subtest: row253 factory refuses retired TCP and a value after the socket marker not ok 1 - row253 factory refuses retired TCP and a value after the socket marker --- duration_ms: 17.565917 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:566:1' failureType: 'testCodeFailure' error: |- The input did not match the regular expression /case2-unit.sh retires tester TCP; use --tester-socket/. Input: 'case2-unit: unknown serve flag: --tester-port\n' code: 'ERR_ASSERTION' name: 'AssertionError' expected: actual: |- case2-unit: unknown serve flag: --tester-port operator: 'match' stack: |- refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:291:10) TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:568:3) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 120.249351 TAP version 13 # Subtest: library refuses a privileged-floor miss, a bad proof pair and every flag outside its set ok 1 - library refuses a privileged-floor miss, a bad proof pair and every flag outside its set --- duration_ms: 285.675606 type: 'test' ... 1..1 # tests 1 # suites 0 # pass 1 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 391.461397 TAP version 13 # Subtest: library refuses a privileged-floor miss, a bad proof pair and every flag outside its set not ok 1 - library refuses a privileged-floor miss, a bad proof pair and every flag outside its set --- duration_ms: 244.198118 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:499:1' failureType: 'testCodeFailure' error: |- expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gDLP/case2-unit-xebbd7/units/mosaic-bus@.service and /mnt/storage/scratch/tmp/gDLP/case2-unit-xebbd7/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started mosaic-bus@acme.service, then mosaic-webui.service 0 !== 1 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 1 actual: 0 operator: 'strictEqual' stack: |- refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:290:10) TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:524:5) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 354.001833 TAP version 13 # Subtest: factory refuses duplicate socket, a missing --port or --business, and each proxy flag ok 1 - factory refuses duplicate socket, a missing --port or --business, and each proxy flag --- duration_ms: 187.910138 type: 'test' ... 1..1 # tests 1 # suites 0 # pass 1 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 296.548618 TAP version 13 # Subtest: factory refuses duplicate socket, a missing --port or --business, and each proxy flag not ok 1 - factory refuses duplicate socket, a missing --port or --business, and each proxy flag --- duration_ms: 268.554762 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:552:1' failureType: 'testCodeFailure' error: |- expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gDLP/case2-unit-7y3ofZ/units/mosaic-bus@.service and /mnt/storage/scratch/tmp/gDLP/case2-unit-7y3ofZ/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started mosaic-bus@acme.service, then mosaic-webui.service 0 !== 1 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 1 actual: 0 operator: 'strictEqual' stack: |- refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:290:10) TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:554:3) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 371.453196 TAP version 13 # Subtest: row253 installer refuses unsafe location and query facts before unit writes ok 1 - row253 installer refuses unsafe location and query facts before unit writes --- duration_ms: 2710.867998 type: 'test' ... 1..1 # tests 1 # suites 0 # pass 1 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 2818.221966 TAP version 13 # Subtest: row253 installer refuses unsafe location and query facts before unit writes not ok 1 - row253 installer refuses unsafe location and query facts before unit writes --- duration_ms: 2728.223749 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:136:1' failureType: 'testCodeFailure' error: |- expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gDLP/case2-unit-Simls1/units/mosaic-bus@.service and /mnt/storage/scratch/tmp/gDLP/case2-unit-Simls1/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started mosaic-bus@acme.service, then mosaic-webui.service 0 !== 1 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 1 actual: 0 operator: 'strictEqual' stack: |- refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:290:10) TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:159:39) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 2832.462302 TAP version 13 # Subtest: row253 installer refuses unsafe location and query facts before unit writes not ok 1 - row253 installer refuses unsafe location and query facts before unit writes --- duration_ms: 2548.27993 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:136:1' failureType: 'testCodeFailure' error: |- expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gDLP/case2-unit-5DNbPN/units/mosaic-bus@.service and /mnt/storage/scratch/tmp/gDLP/case2-unit-5DNbPN/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started mosaic-bus@acme.service, then mosaic-webui.service 0 !== 1 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 1 actual: 0 operator: 'strictEqual' stack: |- refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:290:10) TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:159:39) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 2650.736028 TAP version 13 # Subtest: row253 installer refuses unsafe location and query facts before unit writes not ok 1 - row253 installer refuses unsafe location and query facts before unit writes --- duration_ms: 260.019664 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:136:1' failureType: 'testCodeFailure' error: |- expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gDLP/case2-unit-Gj9JFX/units/mosaic-bus@.service and /mnt/storage/scratch/tmp/gDLP/case2-unit-Gj9JFX/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started mosaic-bus@acme.service, then mosaic-webui.service 0 !== 1 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 1 actual: 0 operator: 'strictEqual' stack: |- refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:290:10) TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:159:39) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 360.790987 TAP version 13 # Subtest: row253 protected homes refuse before any filesystem access ok 1 - row253 protected homes refuse before any filesystem access --- duration_ms: 9.509778 type: 'test' ... 1..1 # tests 1 # suites 0 # pass 1 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 111.736732 TAP version 13 # Subtest: row253 protected homes refuse before any filesystem access not ok 1 - row253 protected homes refuse before any filesystem access --- duration_ms: 3.80425 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:181:1' failureType: 'testCodeFailure' error: |- Expected values to be strictly equal: 99 !== 0 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 0 actual: 99 operator: 'strictEqual' stack: |- TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:185:10) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 109.429195 TAP version 13 # Subtest: row253 installer refuses unsafe location and query facts before unit writes not ok 1 - row253 installer refuses unsafe location and query facts before unit writes --- duration_ms: 1690.966374 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:136:1' failureType: 'testCodeFailure' error: |- expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gDLP/case2-unit-bLgrxw/units/mosaic-bus@.service and /mnt/storage/scratch/tmp/gDLP/case2-unit-bLgrxw/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started mosaic-bus@acme.service, then mosaic-webui.service 0 !== 1 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 1 actual: 0 operator: 'strictEqual' stack: |- refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:290:10) TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:159:39) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 1788.837484 TAP version 13 # Subtest: row253 installer refuses unsafe location and query facts before unit writes not ok 1 - row253 installer refuses unsafe location and query facts before unit writes --- duration_ms: 1845.259589 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:136:1' failureType: 'testCodeFailure' error: |- expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gDLP/case2-unit-AS8SHf/units/mosaic-bus@.service and /mnt/storage/scratch/tmp/gDLP/case2-unit-AS8SHf/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started mosaic-bus@acme.service, then mosaic-webui.service 0 !== 1 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 1 actual: 0 operator: 'strictEqual' stack: |- refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:290:10) TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:159:39) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 1947.359892 TAP version 13 # Subtest: row253 installer refuses unsafe location and query facts before unit writes not ok 1 - row253 installer refuses unsafe location and query facts before unit writes --- duration_ms: 2408.487333 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:136:1' failureType: 'testCodeFailure' error: |- expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gDLP/case2-unit-qScypB/units/mosaic-bus@.service and /mnt/storage/scratch/tmp/gDLP/case2-unit-qScypB/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started mosaic-bus@acme.service, then mosaic-webui.service 0 !== 1 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 1 actual: 0 operator: 'strictEqual' stack: |- refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:290:10) TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:159:39) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 2508.764354 TAP version 13 # Subtest: row253 installer refuses unsafe location and query facts before unit writes not ok 1 - row253 installer refuses unsafe location and query facts before unit writes --- duration_ms: 2171.896188 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:136:1' failureType: 'testCodeFailure' error: |- expected a refusal, got 0: case2-unit: wrote /mnt/storage/scratch/tmp/gDLP/case2-unit-1xjj2c/units/mosaic-bus@.service and /mnt/storage/scratch/tmp/gDLP/case2-unit-1xjj2c/units/mosaic-webui.service from copy aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; enabled and started mosaic-bus@acme.service, then mosaic-webui.service 0 !== 1 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 1 actual: 0 operator: 'strictEqual' stack: |- refuses (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:290:10) TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:159:39) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 2271.380804 TAP version 13 # Subtest: row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason ok 1 - row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason --- duration_ms: 104.879649 type: 'test' ... 1..1 # tests 1 # suites 0 # pass 1 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 197.361316 TAP version 13 # Subtest: row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason not ok 1 - row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason --- duration_ms: 71.650429 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:653:1' failureType: 'testCodeFailure' error: 'retired TCP' code: 'ERR_ASSERTION' name: 'AssertionError' expected: actual: 'case1-accept: refusing: unknown serve flag --tester-port' operator: 'match' stack: |- TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:674:12) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 160.316766 TAP version 13 # Subtest: row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason not ok 1 - row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason --- duration_ms: 681.248397 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:653:1' failureType: 'testCodeFailure' error: |- no tester socket: F1 units-user pass mosaic-bus@mosaic-stack.service and mosaic-webui.service are active as mosaic (uid 997) F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200 F3 tester-reply pass chief replied to case1-accept-8e17023822a9 F4 precheck pass case2-precheck.sh --profile factory exits 0 F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)' F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)' F7 pm-live pass one live launch: pm run r-0002 F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file' F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1" F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0 F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53. P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis) P6 group-members closed sudo holds only localadmin, and docker and lxd have no members P7 sudoers-d closed no file under /etc/sudoers.d names mosaic P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names mosaic-bus@mosaic-stack.service count pass 11 count FAIL 0 count closed 7 count accepted Q182+Q183 1 count accepted Q183 1 count accepted mos-1096 1 count unnamed 1 case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos 0 !== 2 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 2 actual: 0 operator: 'strictEqual' stack: |- TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:672:12) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 774.416206 TAP version 13 # Subtest: row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason not ok 1 - row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason --- duration_ms: 683.545859 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:653:1' failureType: 'testCodeFailure' error: |- socket value: F1 units-user pass mosaic-bus@mosaic-stack.service and mosaic-webui.service are active as mosaic (uid 997) F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200 F3 tester-reply pass chief replied to case1-accept-00d087d02409 F4 precheck pass case2-precheck.sh --profile factory exits 0 F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)' F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)' F7 pm-live pass one live launch: pm run r-0002 F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file' F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1" F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0 F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53. P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis) P6 group-members closed sudo holds only localadmin, and docker and lxd have no members P7 sudoers-d closed no file under /etc/sudoers.d names mosaic P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names mosaic-bus@mosaic-stack.service count pass 11 count FAIL 0 count closed 7 count accepted Q182+Q183 1 count accepted Q183 1 count accepted mos-1096 1 count unnamed 1 case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos 0 !== 2 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 2 actual: 0 operator: 'strictEqual' stack: |- TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:672:12) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 777.272689 TAP version 13 # Subtest: row253 acceptance rejects bad config and unsupported copies before talk ok 1 - row253 acceptance rejects bad config and unsupported copies before talk --- duration_ms: 1220.935806 type: 'test' ... 1..1 # tests 1 # suites 0 # pass 1 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 1313.3615 TAP version 13 # Subtest: row253 acceptance rejects bad config and unsupported copies before talk not ok 1 - row253 acceptance rejects bad config and unsupported copies before talk --- duration_ms: 1617.129291 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:271:1' failureType: 'testCodeFailure' error: |- failed: F1 units-user pass mosaic-bus@mosaic-stack.service and mosaic-webui.service are active as mosaic (uid 997) F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200 F3 tester-reply pass chief replied to case1-accept-f7dc0770c6c2 F4 precheck pass case2-precheck.sh --profile factory exits 0 F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)' F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)' F7 pm-live pass one live launch: pm run r-0002 F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file' F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1" F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0 F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53. P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis) P6 group-members closed sudo holds only localadmin, and docker and lxd have no members P7 sudoers-d closed no file under /etc/sudoers.d names mosaic P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names mosaic-bus@mosaic-stack.service count pass 11 count FAIL 0 count closed 7 count accepted Q182+Q183 1 count accepted Q183 1 count accepted mos-1096 1 count unnamed 1 case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos 0 !== 2 code: 'ERR_ASSERTION' name: 'AssertionError' expected: 2 actual: 0 operator: 'strictEqual' stack: |- TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:282:12) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 1713.11853 TAP version 13 # Subtest: row253 P8 refuses both retired TCP and board listeners ok 1 - row253 P8 refuses both retired TCP and board listeners --- duration_ms: 1251.82621 type: 'test' ... 1..1 # tests 1 # suites 0 # pass 1 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 1350.059067 TAP version 13 # Subtest: row253 P8 refuses both retired TCP and board listeners not ok 1 - row253 P8 refuses both retired TCP and board listeners --- duration_ms: 614.383288 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:302:1' failureType: 'testCodeFailure' error: |- Expected values to be strictly deep-equal: + actual - expected [ + 'closed' - 'unnamed' ] code: 'ERR_ASSERTION' name: 'AssertionError' expected: 0: 'unnamed' actual: 0: 'closed' operator: 'deepStrictEqual' stack: |- TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:305:12) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 710.225761 TAP version 13 # Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure --- duration_ms: 8339.678305 type: 'test' ... 1..1 # tests 1 # suites 0 # pass 1 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 8433.881655 TAP version 13 # Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure not ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure --- duration_ms: 629.569539 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:243:1' failureType: 'testCodeFailure' error: 'parent-mode' code: 'ERR_ASSERTION' name: 'AssertionError' expected: actual: |- F1 units-user pass mosaic-bus@mosaic-stack.service and mosaic-webui.service are active as mosaic (uid 997) F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200 F3 tester-reply pass chief replied to case1-accept-7fb4f5b8e899 F4 precheck pass case2-precheck.sh --profile factory exits 0 F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)' F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)' F7 pm-live pass one live launch: pm run r-0002 F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file' F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1" F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0 F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53. P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis) P6 group-members closed sudo holds only localadmin, and docker and lxd have no members P7 sudoers-d closed no file under /etc/sudoers.d names mosaic P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names mosaic-bus@mosaic-stack.service count pass 11 count FAIL 0 count closed 7 count accepted Q182+Q183 1 count accepted Q183 1 count accepted mos-1096 1 count unnamed 1 case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos operator: 'match' stack: |- TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:266:12) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 724.651278 TAP version 13 # Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure not ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure --- duration_ms: 1459.765682 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:243:1' failureType: 'testCodeFailure' error: 'socket-mode' code: 'ERR_ASSERTION' name: 'AssertionError' expected: actual: |- F1 units-user pass mosaic-bus@mosaic-stack.service and mosaic-webui.service are active as mosaic (uid 997) F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200 F3 tester-reply pass chief replied to case1-accept-aa961e20edd4 F4 precheck pass case2-precheck.sh --profile factory exits 0 F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)' F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)' F7 pm-live pass one live launch: pm run r-0002 F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file' F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1" F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0 F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53. P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis) P6 group-members closed sudo holds only localadmin, and docker and lxd have no members P7 sudoers-d closed no file under /etc/sudoers.d names mosaic P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names mosaic-bus@mosaic-stack.service count pass 11 count FAIL 0 count closed 7 count accepted Q182+Q183 1 count accepted Q183 1 count accepted mos-1096 1 count unnamed 1 case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos operator: 'match' stack: |- TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:266:12) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 1552.194976 TAP version 13 # Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure not ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure --- duration_ms: 3818.358657 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:243:1' failureType: 'testCodeFailure' error: 'peer-pid' code: 'ERR_ASSERTION' name: 'AssertionError' expected: actual: |- F1 units-user pass mosaic-bus@mosaic-stack.service and mosaic-webui.service are active as mosaic (uid 997) F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200 F3 tester-reply pass chief replied to case1-accept-511066540eb3 F4 precheck pass case2-precheck.sh --profile factory exits 0 F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)' F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)' F7 pm-live pass one live launch: pm run r-0002 F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file' F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1" F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0 F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53. P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis) P6 group-members closed sudo holds only localadmin, and docker and lxd have no members P7 sudoers-d closed no file under /etc/sudoers.d names mosaic P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=555 peer_uid=997 floor=1024 port=732; hostile same-uid substitution remains P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names mosaic-bus@mosaic-stack.service count pass 11 count FAIL 0 count closed 7 count accepted Q182+Q183 1 count accepted Q183 1 count accepted mos-1096 1 count unnamed 1 case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos operator: 'match' stack: |- TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:266:12) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 3911.673946 TAP version 13 # Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure not ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure --- duration_ms: 3248.021257 type: 'test' location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:243:1' failureType: 'testCodeFailure' error: 'peer' code: 'ERR_ASSERTION' name: 'AssertionError' expected: actual: |- F1 units-user pass mosaic-bus@mosaic-stack.service and mosaic-webui.service are active as mosaic (uid 997) F2 console-loopback pass healthz answers, and 732 is bound to 127.0.0.1 only, by MainPID 200 F3 tester-reply pass chief replied to case1-accept-b0691bda1f53 F4 precheck pass case2-precheck.sh --profile factory exits 0 F5 bwrap-label pass bwrap 300 reads 'bwrap (enforce)' and its claude descendant 302 reads 'bwrap//&unpriv_bwrap (enforce)' F6 claude-pin pass /opt/mosaic-stack/claude-2.1.0/node_modules/@anthropic-ai/claude-code/bin/claude.exe prints '2.1.0 (Claude Code)' F7 pm-live pass one live launch: pm run r-0002 F8 credential-file pass /srv/mosaic/.config/mosaic-dev/secrets/claude-session.env is 'mosaic 600 regular file' F9 autoupdater-off pass /etc/claude-code/managed-settings.json is root:root 0644 with env.DISABLE_AUTOUPDATER "1" F10 node-pin pass /opt/mosaic-stack/node-v24.1.0/bin/node prints v24.1.0 F11 no-discord pass /srv/mosaic/.mosaic-dev/discord is absent P1 mosaic-sudo closed sudo -l: User mosaic is not allowed to run sudo on dev-53. P2 mosaic-groups-keys closed id -G is '997'; authorized_keys is absent P3 localadmin-sudo accepted Q183 sudo -l -U localadmin lists 1 NOPASSWD lines P4 pve-root-pbs accepted Q182+Q183 root on pve over VM 1008, and PBS backups that hold /srv/mosaic with the credential; this script can't see pve P5 jarvis-reach closed jarvis is in none of sudo, docker and lxd (groups: jarvis) P6 group-members closed sudo holds only localadmin, and docker and lxd have no members P7 sudoers-d closed no file under /etc/sudoers.d names mosaic P8 lan-listeners closed 732 is on 127.0.0.1 only by MainPID 200; no TCP listener on 7331 or 7333; tester uses /srv/mosaic/.mosaic-dev/console/tester.sock P9 bwrap-userns accepted mos-1096 hostcheck items 1-6 ok, jarvis is denied bwrap, and group mosaic has no other member P10 tester-socket-squat unnamed boundary=observed path=/srv/mosaic/.mosaic-dev/console/tester.sock parent=0700 owner=997 socket=0600 peer_pid=200 peer_uid=998 floor=1024 port=732; hostile same-uid substitution remains P11 hostcheck-before-bus closed mosaic-hostcheck.service is enabled, and its Before= names mosaic-bus@mosaic-stack.service count pass 11 count FAIL 0 count closed 7 count accepted Q182+Q183 1 count accepted Q183 1 count accepted mos-1096 1 count unnamed 1 case1-accept: every F check passes; send the whole output to Duckworth, and each unnamed line to Mos operator: 'match' stack: |- TestContext. (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:266:12) Test.runInAsyncScope (node:async_hooks:226:14) Test.run (node:internal/test_runner/test:1402:25) Test.start (node:internal/test_runner/test:1262:17) startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17) ... 1..1 # tests 1 # suites 0 # pass 0 # fail 1 # cancelled 0 # skipped 0 # todo 0 # duration_ms 3342.722367 TAP version 13 # Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure ok 1 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure --- duration_ms: 8393.663645 type: 'test' ... 1..1 # tests 1 # suites 0 # pass 1 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 8488.289429 Traceback (most recent call last): File "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/driver.py", line 114, in main() File "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/driver.py", line 110, in main raise RuntimeError('first unexpected failure: end the sage-2297 window') RuntimeError: first unexpected failure: end the sage-2297 window