64 lines
4.7 KiB
Plaintext
64 lines
4.7 KiB
Plaintext
✔ row253 factory socket uses actual config and target-uid query without widening hardening (145.450807ms)
|
||
✔ row253 installer refuses unsafe location and query facts before unit writes (819.380714ms)
|
||
✔ row253 query timeout kills its process group and leaves no running child (5018.363626ms)
|
||
✔ row253 protected homes refuse before any filesystem access (14.424895ms)
|
||
✔ row253 query reaps its group even when a child closes stdout before the query returns (111.74091ms)
|
||
✔ row253 config parser is strict and output capture is bounded (16.596636ms)
|
||
✔ a clean library render writes both units 0644 with the fixed lines, and enables both then starts the bus then the Console (104.769986ms)
|
||
✔ PATH starts with the --node directory, for a node outside the default list and for /usr/bin/node (104.638101ms)
|
||
✔ a failed bus start refuses with the Console not started (129.922739ms)
|
||
✔ the script never links a unit file (0.334047ms)
|
||
✔ factory renders --pm once and one MOSAIC_CLAUDE_BIN line, and without them both tokens render empty (288.329982ms)
|
||
✔ a re-install over running units says they are still on the old copy and must restart together, never that it started them (484.024882ms)
|
||
✔ a re-install to another copy re-renders both units, and an edited installed unit refuses (1069.731966ms)
|
||
✔ a template with a namespace, user or system call restriction refuses (273.736385ms)
|
||
✔ the bus template's EnvironmentFile line must be there and point at the session env, and the Console template must have none (226.707075ms)
|
||
✔ a template holding an unknown token, PermissionsStartOnly or a privileged Exec prefix refuses (166.978341ms)
|
||
✔ a symlink at either unit path refuses (179.013605ms)
|
||
✔ a --node that is relative, not root-owned or under <home> refuses (20.685359ms)
|
||
✔ a re-install with a different --node or different serve flags refuses (515.577009ms)
|
||
✔ an installed pair whose units name different copies refuses (290.162793ms)
|
||
✔ a copy id that is short, uppercase, holds / or .., or names no directory refuses (35.795128ms)
|
||
✖ library refuses a privileged-floor miss, a bad proof pair and every flag outside its set (295.169858ms)
|
||
✔ library refuses a proof file not owned by <user>'s uid (18.009672ms)
|
||
✔ factory refuses duplicate socket, a missing --port or --business, and each proxy flag (228.440728ms)
|
||
✔ row253 factory refuses retired TCP and a value after the socket marker (28.788793ms)
|
||
✔ factory refuses a --claude that is relative, not root-owned or under <home>, and a re-install with another --pm or --claude (1087.25876ms)
|
||
✔ the precheck passes on a good host and prints free memory, without the key (124.607105ms)
|
||
✔ the precheck refuses each failed host check (1066.073149ms)
|
||
✔ the precheck refuses a user missing from passwd, a business file that does not load, and a symlinked run root (587.108114ms)
|
||
✔ a bwrap that fails refuses and prints the sysctl and where bwrap is (123.872451ms)
|
||
✔ an unprivileged port floor at or below the Console's port refuses, and so does a missing Console unit (606.804292ms)
|
||
✔ bus.tester: library refuses it on, factory needs it on, and factory refuses a library business (547.428698ms)
|
||
✔ the claude check runs only for a claude-code instance, and refuses a claude that appends or answers wrong (1099.09849ms)
|
||
✔ the claude check runs the bus unit's MOSAIC_CLAUDE_BIN over claude on PATH (387.023764ms)
|
||
✔ the session env file refuses when missing, open to others, a symlink, empty, or emptied by a later line (796.938259ms)
|
||
✔ inside a session's sandbox a bind below 1024 fails with EACCES, and a bind on a free high port succeeds (97.958541ms)
|
||
ℹ tests 36
|
||
ℹ suites 0
|
||
ℹ pass 35
|
||
ℹ fail 1
|
||
ℹ cancelled 0
|
||
ℹ skipped 0
|
||
ℹ todo 0
|
||
ℹ duration_ms 17231.019695
|
||
|
||
✖ failing tests:
|
||
|
||
test at packages/cli/tests/case2-unit.test.mjs:427:1
|
||
✖ library refuses a privileged-floor miss, a bad proof pair and every flag outside its set (295.169858ms)
|
||
Error: EEXIST: file already exists, mkdir '/mnt/storage/scratch/tmp/glFUYC2/case2-unit-LimIRr/home/mosaic/.mosaic-dev'
|
||
at mkdirSync (node:fs:1734:26)
|
||
at TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/gander-row196/packages/cli/tests/case2-unit.test.mjs:465:3)
|
||
at Test.runInAsyncScope (node:async_hooks:226:14)
|
||
at Test.run (node:internal/test_runner/test:1402:25)
|
||
at Test.processPendingSubtests (node:internal/test_runner/test:974:18)
|
||
at Test.postRun (node:internal/test_runner/test:1542:19)
|
||
at Test.run (node:internal/test_runner/test:1467:12)
|
||
at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
|
||
errno: -17,
|
||
code: 'EEXIST',
|
||
syscall: 'mkdir',
|
||
path: '/mnt/storage/scratch/tmp/glFUYC2/case2-unit-LimIRr/home/mosaic/.mosaic-dev'
|
||
}
|