Files

433 lines
17 KiB
Plaintext

TAP version 13
# Subtest: row253 factory socket uses actual config and target-uid query without widening hardening
ok 1 - row253 factory socket uses actual config and target-uid query without widening hardening
---
duration_ms: 216.869128
type: 'test'
...
# Subtest: row253 installer refuses unsafe location and query facts before unit writes
ok 2 - row253 installer refuses unsafe location and query facts before unit writes
---
duration_ms: 1037.060467
type: 'test'
...
# Subtest: row253 query timeout kills its process group and leaves no running child
ok 3 - row253 query timeout kills its process group and leaves no running child
---
duration_ms: 5027.077544
type: 'test'
...
# Subtest: row253 protected homes refuse before any filesystem access
ok 4 - row253 protected homes refuse before any filesystem access
---
duration_ms: 14.602145
type: 'test'
...
# Subtest: row253 query reaps its group even when a child closes stdout before the query returns
ok 5 - row253 query reaps its group even when a child closes stdout before the query returns
---
duration_ms: 152.685734
type: 'test'
...
# Subtest: row253 config parser is strict and output capture is bounded
ok 6 - row253 config parser is strict and output capture is bounded
---
duration_ms: 26.669467
type: 'test'
...
# Subtest: a clean library render writes both units 0644 with the fixed lines, and enables both then starts the bus then the Console
ok 7 - a clean library render writes both units 0644 with the fixed lines, and enables both then starts the bus then the Console
---
duration_ms: 141.129141
type: 'test'
...
# Subtest: PATH starts with the --node directory, for a node outside the default list and for /usr/bin/node
ok 8 - PATH starts with the --node directory, for a node outside the default list and for /usr/bin/node
---
duration_ms: 145.189241
type: 'test'
...
# Subtest: a failed bus start refuses with the Console not started
ok 9 - a failed bus start refuses with the Console not started
---
duration_ms: 120.050347
type: 'test'
...
# Subtest: the script never links a unit file
ok 10 - the script never links a unit file
---
duration_ms: 0.293936
type: 'test'
...
# Subtest: factory renders --pm once and one MOSAIC_CLAUDE_BIN line, and without them both tokens render empty
ok 11 - factory renders --pm once and one MOSAIC_CLAUDE_BIN line, and without them both tokens render empty
---
duration_ms: 358.790337
type: 'test'
...
# Subtest: a re-install over running units says they are still on the old copy and must restart together, never that it started them
ok 12 - a re-install over running units says they are still on the old copy and must restart together, never that it started them
---
duration_ms: 583.217218
type: 'test'
...
# Subtest: a re-install to another copy re-renders both units, and an edited installed unit refuses
ok 13 - a re-install to another copy re-renders both units, and an edited installed unit refuses
---
duration_ms: 1346.293893
type: 'test'
...
# Subtest: a template with a namespace, user or system call restriction refuses
ok 14 - a template with a namespace, user or system call restriction refuses
---
duration_ms: 335.885968
type: 'test'
...
# Subtest: the bus template's EnvironmentFile line must be there and point at the session env, and the Console template must have none
ok 15 - the bus template's EnvironmentFile line must be there and point at the session env, and the Console template must have none
---
duration_ms: 261.193104
type: 'test'
...
# Subtest: a template holding an unknown token, PermissionsStartOnly or a privileged Exec prefix refuses
ok 16 - a template holding an unknown token, PermissionsStartOnly or a privileged Exec prefix refuses
---
duration_ms: 217.834215
type: 'test'
...
# Subtest: a symlink at either unit path refuses
ok 17 - a symlink at either unit path refuses
---
duration_ms: 292.144849
type: 'test'
...
# Subtest: a --node that is relative, not root-owned or under <home> refuses
ok 18 - a --node that is relative, not root-owned or under <home> refuses
---
duration_ms: 34.702768
type: 'test'
...
# Subtest: a re-install with a different --node or different serve flags refuses
ok 19 - a re-install with a different --node or different serve flags refuses
---
duration_ms: 862.096949
type: 'test'
...
# Subtest: an installed pair whose units name different copies refuses
ok 20 - an installed pair whose units name different copies refuses
---
duration_ms: 343.53779
type: 'test'
...
# Subtest: a copy id that is short, uppercase, holds / or .., or names no directory refuses
ok 21 - a copy id that is short, uppercase, holds / or .., or names no directory refuses
---
duration_ms: 37.449488
type: 'test'
...
# Subtest: library refuses a privileged-floor miss, a bad proof pair and every flag outside its set
ok 22 - library refuses a privileged-floor miss, a bad proof pair and every flag outside its set
---
duration_ms: 510.984644
type: 'test'
...
# Subtest: library refuses a proof file not owned by <user>'s uid
ok 23 - library refuses a proof file not owned by <user>'s uid
---
duration_ms: 30.321206
type: 'test'
...
# Subtest: factory refuses duplicate socket, a missing --port or --business, and each proxy flag
ok 24 - factory refuses duplicate socket, a missing --port or --business, and each proxy flag
---
duration_ms: 306.036125
type: 'test'
...
# Subtest: row253 factory refuses retired TCP and a value after the socket marker
ok 25 - row253 factory refuses retired TCP and a value after the socket marker
---
duration_ms: 45.290287
type: 'test'
...
# Subtest: factory refuses a --claude that is relative, not root-owned or under <home>, and a re-install with another --pm or --claude
ok 26 - factory refuses a --claude that is relative, not root-owned or under <home>, and a re-install with another --pm or --claude
---
duration_ms: 837.29654
type: 'test'
...
# Subtest: the precheck passes on a good host and prints free memory, without the key
ok 27 - the precheck passes on a good host and prints free memory, without the key
---
duration_ms: 127.505732
type: 'test'
...
# Subtest: the precheck refuses each failed host check
ok 28 - the precheck refuses each failed host check
---
duration_ms: 1209.781622
type: 'test'
...
# Subtest: the precheck refuses a user missing from passwd, a business file that does not load, and a symlinked run root
ok 29 - the precheck refuses a user missing from passwd, a business file that does not load, and a symlinked run root
---
duration_ms: 686.996596
type: 'test'
...
# Subtest: a bwrap that fails refuses and prints the sysctl and where bwrap is
ok 30 - a bwrap that fails refuses and prints the sysctl and where bwrap is
---
duration_ms: 147.551012
type: 'test'
...
# Subtest: an unprivileged port floor at or below the Console's port refuses, and so does a missing Console unit
ok 31 - an unprivileged port floor at or below the Console's port refuses, and so does a missing Console unit
---
duration_ms: 729.482735
type: 'test'
...
# Subtest: bus.tester: library refuses it on, factory needs it on, and factory refuses a library business
ok 32 - bus.tester: library refuses it on, factory needs it on, and factory refuses a library business
---
duration_ms: 570.789238
type: 'test'
...
# Subtest: the claude check runs only for a claude-code instance, and refuses a claude that appends or answers wrong
ok 33 - the claude check runs only for a claude-code instance, and refuses a claude that appends or answers wrong
---
duration_ms: 1142.885248
type: 'test'
...
# Subtest: the claude check runs the bus unit's MOSAIC_CLAUDE_BIN over claude on PATH
ok 34 - the claude check runs the bus unit's MOSAIC_CLAUDE_BIN over claude on PATH
---
duration_ms: 383.125949
type: 'test'
...
# Subtest: the session env file refuses when missing, open to others, a symlink, empty, or emptied by a later line
ok 35 - the session env file refuses when missing, open to others, a symlink, empty, or emptied by a later line
---
duration_ms: 799.735416
type: 'test'
...
# Subtest: inside a session's sandbox a bind below 1024 fails with EACCES, and a bind on a free high port succeeds
ok 36 - inside a session's sandbox a bind below 1024 fails with EACCES, and a bind on a free high port succeeds
---
duration_ms: 98.89618
type: 'test'
...
1..36
# tests 36
# suites 0
# pass 36
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 19359.125841
TAP version 13
# Subtest: row253 socket observation uses configured root, metadata and the Console peer without sending bytes
ok 1 - row253 socket observation uses configured root, metadata and the Console peer without sending bytes
---
duration_ms: 457.237158
type: 'test'
...
# Subtest: row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
ok 2 - row253 P10 refuses unsafe metadata, wrong peers and an unsafe Python without claiming closure
---
duration_ms: 8825.596429
type: 'test'
...
# Subtest: row253 acceptance rejects bad config and unsupported copies before talk
ok 3 - row253 acceptance rejects bad config and unsupported copies before talk
---
duration_ms: 405.608885
type: 'test'
...
# Subtest: row253 stalled peer observation ends within its bound without leaving a reader
ok 4 - row253 stalled peer observation ends within its bound without leaving a reader
---
duration_ms: 3417.061486
type: 'test'
...
# Subtest: row253 P8 refuses both retired TCP and board listeners
ok 5 - row253 P8 refuses both retired TCP and board listeners
---
duration_ms: 931.562888
type: 'test'
...
# Subtest: row 195 accept: every check passing exits 0, with each P mark and counts that match the lines
ok 6 - row 195 accept: every check passing exits 0, with each P mark and counts that match the lines
---
duration_ms: 423.786569
type: 'test'
...
# Subtest: row 195 accept: exits 1 with each F check failing alone, and its line names it
ok 7 - row 195 accept: exits 1 with each F check failing alone, and its line names it
---
duration_ms: 4820.838663
type: 'test'
...
# Subtest: row 195 accept: F3 fails on exit 0 with no reply line, and its evidence takes talk's error
ok 8 - row 195 accept: F3 fails on exit 0 with no reply line, and its evidence takes talk's error
---
duration_ms: 854.517542
type: 'test'
...
# Subtest: row 195 accept: F1 fails on a unit that isn't active or isn't User=mosaic
ok 9 - row 195 accept: F1 fails on a unit that isn't active or isn't User=mosaic
---
duration_ms: 880.2515
type: 'test'
...
# Subtest: row 195 accept: F2 fails when healthz doesn't answer and when another pid holds the port
ok 10 - row 195 accept: F2 fails when healthz doesn't answer and when another pid holds the port
---
duration_ms: 923.143848
type: 'test'
...
# Subtest: row 195 accept: F5 fails on unpriv_bwrap (enforce), on complain and on a trailing space
ok 11 - row 195 accept: F5 fails on unpriv_bwrap (enforce), on complain and on a trailing space
---
duration_ms: 1611.055796
type: 'test'
...
# Subtest: row 195 accept: F5 fails with no bwrap of mosaic's, and passes on comm alone
ok 12 - row 195 accept: F5 fails with no bwrap of mosaic's, and passes on comm alone
---
duration_ms: 772.495962
type: 'test'
...
# Subtest: row 195 accept: F6 fails on a stub that prints nothing, on a path outside claude-<pin> and on a .. segment
ok 13 - row 195 accept: F6 fails on a stub that prints nothing, on a path outside claude-<pin> and on a .. segment
---
duration_ms: 1208.609458
type: 'test'
...
# Subtest: row 195 accept: F7 fails on two live PM launches, one for another business, and no launch.by
ok 14 - row 195 accept: F7 fails on two live PM launches, one for another business, and no launch.by
---
duration_ms: 1277.66317
type: 'test'
...
# Subtest: row 195 accept: F8 fails on 0640, on another owner and on a symlink, and never prints the credential
ok 15 - row 195 accept: F8 fails on 0640, on another owner and on a symlink, and never prints the credential
---
duration_ms: 1323.209668
type: 'test'
...
# Subtest: row 195 accept: F9 fails on another owner, a group-writable mode and a number for the flag
ok 16 - row 195 accept: F9 fails on another owner, a group-writable mode and a number for the flag
---
duration_ms: 1223.483541
type: 'test'
...
# Subtest: row 195 accept: F9 won't run --node as root off the pin path or with a writable directory above it
ok 17 - row 195 accept: F9 won't run --node as root off the pin path or with a writable directory above it
---
duration_ms: 1110.862644
type: 'test'
...
# Subtest: row 195 accept: F11 fails on one *.json under discord/ and passes on an empty directory
ok 18 - row 195 accept: F11 fails on one *.json under discord/ and passes on an empty directory
---
duration_ms: 916.072105
type: 'test'
...
# Subtest: row 195 accept: each P check reports unnamed on its fault, and the exit stays 0
ok 19 - row 195 accept: each P check reports unnamed on its fault, and the exit stays 0
---
duration_ms: 4105.537374
type: 'test'
...
# Subtest: row 195 accept: P2 is unnamed with a supplementary group, and P5 names docker
ok 20 - row 195 accept: P2 is unnamed with a supplementary group, and P5 names docker
---
duration_ms: 1015.859889
type: 'test'
...
# Subtest: row 195 accept: P5 is closed with no jarvis account, and P2 with an empty authorized_keys
ok 21 - row 195 accept: P5 is closed with no jarvis account, and P2 with an empty authorized_keys
---
duration_ms: 400.087324
type: 'test'
...
# Subtest: row 195 accept: P9 is unnamed once for each item missing
ok 22 - row 195 accept: P9 is unnamed once for each item missing
---
duration_ms: 2710.187272
type: 'test'
...
# Subtest: row253 accept: P10 fails its observation with another peer; P11 with the unit disabled
ok 23 - row253 accept: P10 fails its observation with another peer; P11 with the unit disabled
---
duration_ms: 800.289163
type: 'test'
...
# Subtest: row 195 accept: every P check unnamed together still exits 0
ok 24 - row 195 accept: every P check unnamed together still exits 0
---
duration_ms: 348.312367
type: 'test'
...
# Subtest: row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason
ok 25 - row 195 accept: a bad args file refuses with exit 2 before any check, each for its own reason
---
duration_ms: 101.428549
type: 'test'
...
# Subtest: row 195 accept: usage errors and a run without --root as a user exit 2
ok 26 - row 195 accept: usage errors and a run without --root as a user exit 2
---
duration_ms: 11.252533
type: 'test'
...
# Subtest: row 195 accept: every in-instance call goes through sudo -u mosaic -H env PATH=<node dir>:...
not ok 27 - row 195 accept: every in-instance call goes through sudo -u mosaic -H env PATH=<node dir>:...
---
duration_ms: 448.51281
type: 'test'
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:625:1'
failureType: 'testCodeFailure'
error: |-
The input did not match the regular expression /^talk chief case1-accept-[0-9a-f]{12}: .* --business mosaic-stack --tester --wait 300$/. Input:
'talk chief case1-accept-7f454c46: this is the Case 1 acceptance; reply with one short line. --business mosaic-stack --tester --wait 300'
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
actual: 'talk chief case1-accept-7f454c46: this is the Case 1 acceptance; reply with one short line. --business mosaic-stack --tester --wait 300'
operator: 'match'
stack: |-
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case1-accept.test.mjs:641:10)
Test.runInAsyncScope (node:async_hooks:226:14)
Test.run (node:internal/test_runner/test:1402:25)
Test.processPendingSubtests (node:internal/test_runner/test:974:18)
Test.postRun (node:internal/test_runner/test:1542:19)
Test.run (node:internal/test_runner/test:1467:12)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: row 195 accept: the host check runs with --check and never --enforce
ok 28 - row 195 accept: the host check runs with --check and never --enforce
---
duration_ms: 421.488991
type: 'test'
...
1..28
# tests 28
# suites 0
# pass 27
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 41874.061683
Traceback (most recent call last):
File "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/window.py", line 78, in <module>
main()
File "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/window.py", line 66, in main
step('focused-'+str(i+1),['node','--test','--test-reporter=tap',test])
File "/home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/agents/gander/work/queue-253/window.py", line 47, in step
raise RuntimeError('unexpected failure: report before continuing')
RuntimeError: unexpected failure: report before continuing