✔ shared copy: npm ci, pushed reachability, readonly/existing copy, webui delegation (160.481828ms)
✔ wrapper preserves Q81 lease and marker, rejects foreign/symlink; check uses effective roots (184.807719ms)
✔ bus unit copy/pm pins, install refuses all busy states and failed reads, drop-in refusal (188.156047ms)
✖ missing package manifest refuses before npm; npm failure removes the unpublished temp copy (169.731723ms)
✖ real pinned install loads bus and Console; same-copy mosaic talk passes proof, other trees refuse (146.334072ms)
✔ bus status reads effective copy/pm/drop-ins without writes; check refuses an overridden ExecStart (246.571049ms)
✔ drop-ins in either override field and malformed metadata refuse; uninstall also checks --no-reload (138.30377ms)
✔ install never shows a template name on systemd 261; template drop-ins still refuse (145.182749ms)
✔ unlisted instance drop-in is found in another unit lookup directory; path discovery errors refuse (132.611283ms)
ℹ tests 9
ℹ suites 0
ℹ pass 7
ℹ fail 2
ℹ cancelled 0
ℹ skipped 0
ℹ todo 0
ℹ duration_ms 1565.979384

✖ failing tests:

test at packages/cli/tests/stack-copy.test.mjs:74:1
✖ missing package manifest refuses before npm; npm failure removes the unpublished temp copy (169.731723ms)
  AssertionError [ERR_ASSERTION]: Expected "actual" to be strictly unequal to: 0
      at TestContext.<anonymous> (file:///mnt/storage/src/mosaic-stack-rocko-85/packages/cli/tests/stack-copy.test.mjs:81:77)
      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) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: 0,
    expected: 0,
    operator: 'notStrictEqual',
    diff: 'simple'
  }

test at packages/cli/tests/stack-copy.test.mjs:92:1
✖ real pinned install loads bus and Console; same-copy mosaic talk passes proof, other trees refuse (146.334072ms)
  Error: /mnt/storage/scratch/tmp/stack-copy-pYepNl/copies/9bf7421a1d1d9c5cc9277ddc0ccc20008e092056/node_modules/.package-lock.json does not pin @earendil-works/pi-coding-agent 0.85.1 with the pinned integrity
      at checkEnginePin (file:///mnt/storage/scratch/tmp/stack-copy-pYepNl/copies/9bf7421a1d1d9c5cc9277ddc0ccc20008e092056/packages/conversation/src/pi-pin.mjs:57:13)
      at TestContext.<anonymous> (file:///mnt/storage/src/mosaic-stack-rocko-85/packages/cli/tests/stack-copy.test.mjs:96:96)
      at async Test.run (node:internal/test_runner/test:1409:7)
      at async Test.processPendingSubtests (node:internal/test_runner/test:974:7) {
    code: 'engine-pin-mismatch',
    reconcile: false
  }
