• turbo 2.8.3 • Packages in scope: @bb/host-daemon • Running test in 1 packages • Remote caching disabled, using shared worktree cache //:ensure-native-modules: cache bypass, force executing 2fcbff770d5e9ac7 @bb/plugin-build:generate: cache bypass, force executing 09e2e0084144e680 @get-bb/plugin-sdk:build:types: cache bypass, force executing f4d8ece63242512c @bb/templates:generate:templates: cache bypass, force executing f63ab99974919409 @bb/templates:generate:plugin-scaffold: cache bypass, force executing 4aab2b03a342229b @bb/plugin-build:generate: @bb/plugin-build:generate: > @bb/plugin-build@0.0.1 generate /tmp/bb-report-2362-investigate-THVgrm/packages/plugin-build @bb/plugin-build:generate: > node ./scripts/generate-plugin-theme.mjs && node ./scripts/generate-runtime-export-manifest.mjs @bb/plugin-build:generate: @get-bb/plugin-sdk:build:types: @get-bb/plugin-sdk:build:types: > @get-bb/plugin-sdk@0.4.16 build:types /tmp/bb-report-2362-investigate-THVgrm/packages/plugin-sdk @get-bb/plugin-sdk:build:types: > node scripts/build-bundled-dts.mjs @get-bb/plugin-sdk:build:types: //:ensure-native-modules: //:ensure-native-modules: > bb@ ensure-native-modules /tmp/bb-report-2362-investigate-THVgrm //:ensure-native-modules: > node scripts/ensure-native-modules.mjs //:ensure-native-modules: @bb/templates:generate:templates: @bb/templates:generate:templates: > @bb/templates@0.0.1 generate:templates /tmp/bb-report-2362-investigate-THVgrm/packages/templates @bb/templates:generate:templates: > node ./scripts/generate-templates.mjs @bb/templates:generate:templates: @bb/templates:generate:plugin-scaffold: @bb/templates:generate:plugin-scaffold: > @bb/templates@0.0.1 generate:plugin-scaffold /tmp/bb-report-2362-investigate-THVgrm/packages/templates @bb/templates:generate:plugin-scaffold: > node ./scripts/generate-plugin-scaffold.mjs @bb/templates:generate:plugin-scaffold: @bb/plugin-build:generate: plugin-theme.generated.ts up to date @bb/plugin-build:generate: wrote /tmp/bb-report-2362-investigate-THVgrm/packages/plugin-build/src/generated/runtime-export-manifest.generated.ts (react@19.2.4) @get-bb/plugin-sdk:build:types: Wrote bundled-types/bb-plugin-sdk.d.ts @get-bb/plugin-sdk:build:types: Wrote bundled-types/bb-plugin-sdk-app.d.ts @get-bb/plugin-sdk:build:types: Unchanged bundled-types/bb-plugin-sdk-provider-bridge.d.ts @get-bb/plugin-sdk:build:types: Unchanged bundled-types/bb-plugin-sdk-ai-services.d.ts @get-bb/plugin-sdk:build:types: Wrote bundled-types/bb-plugin-sdk-provider-bridge-testing.d.ts @get-bb/plugin-sdk:build:types: Wrote bundled-types/bb-plugin-sdk-provider-bridge-acp.d.ts @get-bb/plugin-sdk:build:types: Unchanged bundled-types/bb-plugin-sdk-host.d.ts @get-bb/plugin-sdk:build:types: Unchanged bundled-types/bb-plugin-sdk-internal-composer-customization-validation.d.ts @get-bb/plugin-sdk:build:types: Unchanged bundled-types/bb-plugin-sdk-internal-composer-view.d.ts @get-bb/plugin-sdk:build:types: Unchanged bundled-types/bb-plugin-sdk-internal-file-navigation-validation.d.ts @get-bb/plugin-sdk:build:types: Wrote bundled-types/bb-plugin-sdk-internal-host-policy.d.ts @get-bb/plugin-sdk:build:types: Unchanged bundled-types/bb-plugin-sdk-internal-plugin-app-collector.d.ts @get-bb/plugin-sdk:build:types: Unchanged bundled-types/bb-plugin-sdk-testing.d.ts @get-bb/plugin-sdk:build:types: Wrote bundled-types/bb-plugin-sdk-testing-app.d.ts @get-bb/plugin-sdk:build:types: Unchanged bundled-types/bb-plugin-sdk-testing-host.d.ts @get-bb/plugin-sdk:build: cache bypass, force executing 3df5f5aaf5b44e42 @get-bb/plugin-sdk:build: @get-bb/plugin-sdk:build: > @get-bb/plugin-sdk@0.4.16 build /tmp/bb-report-2362-investigate-THVgrm/packages/plugin-sdk @get-bb/plugin-sdk:build: > node scripts/build-runtime.mjs @get-bb/plugin-sdk:build: @get-bb/plugin-sdk:build: Built 17 @get-bb/plugin-sdk runtime entries. @bb/host-daemon:test: cache bypass, force executing c052e6bd513f9c13 @bb/host-daemon:test: @bb/host-daemon:test: > @bb/host-daemon@0.0.1 test /tmp/bb-report-2362-investigate-THVgrm/apps/host-daemon @bb/host-daemon:test: > vitest run --config vitest.config.ts @bb/host-daemon:test: @bb/host-daemon:test: @bb/host-daemon:test: RUN v4.1.1 /tmp/bb-report-2362-investigate-THVgrm/apps/host-daemon @bb/host-daemon:test: @bb/host-daemon:test: ✓ |@bb/host-daemon:isolated| src/error-utils.test.ts (2 tests) 14ms @bb/host-daemon:test: ✓ |@bb/host-daemon:isolated| src/thread-storage-root.test.ts (2 tests) 24ms @bb/host-daemon:test: ✓ |@bb/host-daemon:isolated| src/runtime-shell-env.test.ts (16 tests) 134ms @bb/host-daemon:test: ✓ |@bb/host-daemon:isolated| src/event-loop-stall-monitor.test.ts (2 tests) 47ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/injected-skills.test.ts (17 tests) 315ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/watch-manager.test.ts (17 tests) 118ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/server-connection.test.ts (12 tests) 175ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/command-handlers/list-skills.test.ts (23 tests) 217ms @bb/host-daemon:test: ✓ |@bb/host-daemon:isolated| src/protocol-self-update.test.ts (12 tests) 168ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/server-client.test.ts (16 tests) 239ms @bb/host-daemon:test: ❯ |@bb/host-daemon| src/command-discovery.test.ts (26 tests | 2 failed) 1078ms @bb/host-daemon:test: ✓ parses project skills, namespaced commands, and frontmatter 55ms @bb/host-daemon:test: ✓ tags user-home roots with origin 'user' 21ms @bb/host-daemon:test: ✓ returns empty for missing dirs without throwing 2ms @bb/host-daemon:test: ✓ produces a name-only record for malformed frontmatter 9ms @bb/host-daemon:test: ✓ derives skill name from the directory (ignoring frontmatter name) and coerces a non-string description to null 7ms @bb/host-daemon:test: ✓ skips a skill-shaped directory that holds the root's declared manifest marker 10ms @bb/host-daemon:test: ✓ skips project roots and returns only user-origin records when cwd is null 7ms @bb/host-daemon:test: ✓ enforces the depth cap on deep command trees 20ms @bb/host-daemon:test: ✓ enforces the entry-count cap 320ms @bb/host-daemon:test: ✓ does not follow symlinked command files or directories 6ms @bb/host-daemon:test: ✓ shares the entry-count cap across recursive roots 143ms @bb/host-daemon:test: ✓ rejects a recursive project root linked outside the workspace 40ms @bb/host-daemon:test: ✓ discovers skills through a .cursor/skills root symlink inside the workspace 36ms @bb/host-daemon:test: ✓ does not follow project-origin symlinked skill directories or skill files 32ms @bb/host-daemon:test: ✓ follows user-origin symlinked skill directories and skill files 42ms @bb/host-daemon:test: ✓ degrades to other roots when a root directory is unreadable 32ms @bb/host-daemon:test: ✓ orders declared roots project, user for skills then commands 55ms @bb/host-daemon:test: ✓ returns no roots for an empty root set 7ms @bb/host-daemon:test: ✓ walks a declared project root from the repository root through the cwd 50ms @bb/host-daemon:test: × does not walk above a cwd without a repository marker and lists the cwd once 43ms @bb/host-daemon:test: ✓ maps recursive declared roots to skill-recursive, bounded to the workspace for project roots 38ms @bb/host-daemon:test: ✓ treats a prefixed declared root as a plugin root without an identity seed 8ms @bb/host-daemon:test: × maps each resolved shape to its scan root and discovers through them 38ms @bb/host-daemon:test: ✓ seeds a prefix-less resolved skill file and skill directory by path 7ms @bb/host-daemon:test: ✓ walks ancestors for a resolved project root inside the cwd only 16ms @bb/host-daemon:test: ✓ keeps the first root per path across declared and resolved roots 33ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/connect-tunnel/connect-tunnel.test.ts (8 tests) 256ms @bb/host-daemon:test: ✓ |@bb/host-daemon| test/command/command-router.test.ts (8 tests) 98ms @bb/host-daemon:test: ✓ |@bb/host-daemon| test/command/environment-dispatch.test.ts (17 tests) 167ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/machine-auth-proxy.test.ts (8 tests) 214ms @bb/host-daemon:test: ✓ |@bb/host-daemon| test/command/thread-dispatch.test.ts (33 tests) 257ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/event-sink.test.ts (11 tests) 39ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/provider-installation-gate.test.ts (11 tests) 29ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/command-handlers/file-write.test.ts (16 tests) 105ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/command-dispatch.test.ts (39 tests) 329ms @bb/host-daemon:test: ✓ |@bb/host-daemon| test/command/workspace-dispatch.test.ts (32 tests) 348ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/interactive-request-registry.test.ts (6 tests) 8ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/command-handlers/path-mutations.test.ts (5 tests) 40ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/daemon.test.ts (9 tests) 136ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/command-handlers/install-global-skills.test.ts (4 tests) 113ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/identity.test.ts (6 tests) 109ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/provider-installation.test.ts (2 tests) 19ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/command-handlers/project.test.ts (4 tests) 179ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/host-daemon-health-monitor.test.ts (3 tests) 1ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/auth-state.test.ts (5 tests) 37ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/command-handlers/host-files.test.ts (21 tests) 1303ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/startup-diagnostics.test.ts (2 tests) 2ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/plugin-host-worker.test.ts (2 tests) 498ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/command-dispatch-support.test.ts (1 test) 1ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/partysocket.test.ts (1 test) 129ms @bb/host-daemon:test: ✓ |@bb/host-daemon| test/parcel-watcher-not-loaded-in-parent.test.ts (2 tests) 784ms @bb/host-daemon:test: ✓ does not hoist a static import of @parcel/watcher 375ms @bb/host-daemon:test: ✓ does not dlopen a @parcel/watcher addon when the bundle is imported 406ms @bb/host-daemon:test: ✓ |@bb/host-daemon:isolated| src/runtime-manager.test.ts (49 tests) 804ms @bb/host-daemon:test: ✓ |@bb/host-daemon:isolated| src/terminals/terminal-manager.test.ts (29 tests) 506ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/local-api.test.ts (9 tests) 514ms @bb/host-daemon:test: ❯ |@bb/host-daemon| src/app.test.ts (12 tests | 2 failed) 430ms @bb/host-daemon:test: ✓ closes the machine authentication proxy during daemon shutdown 35ms @bb/host-daemon:test: ✓ refreshes runtime shell env before provider model listing 45ms @bb/host-daemon:test: ✓ reuses freshly resolved startup shell env for immediate model listing 6ms @bb/host-daemon:test: ✓ runs the idle provider session reaper on a non-overlapping interval 4ms @bb/host-daemon:test: ✓ reconnects through the server connection when event posting sees an inactive session 59ms @bb/host-daemon:test: ✓ forgets server-retired loaded environments when opening a session 32ms @bb/host-daemon:test: ✓ logs raw stderr for unexpected provider process exits 19ms @bb/host-daemon:test: ✓ posts a failure event when a provider exits before turn/started 85ms @bb/host-daemon:test: ✓ interrupts pending interactive requests when an expected provider exit affects their threads 79ms @bb/host-daemon:test: ✓ logs stack-bearing fields for dynamic tool forwarding failures 34ms @bb/host-daemon:test: × logs stack-bearing fields for unexpected interactive forwarding failures 29ms @bb/host-daemon:test: × logs rejected interactive request registrations with a structured code 3ms @bb/host-daemon:test: ❯ |@bb/host-daemon| test/command/host-branches-dispatch.test.ts (14 tests | 8 failed) 2101ms @bb/host-daemon:test: ✓ lists branches for a git repo and pins the default branch first 356ms @bb/host-daemon:test: ✓ lists remote branches separately from local checkout branches 480ms @bb/host-daemon:test: ✓ pins origin default branch first in remote branch results 507ms @bb/host-daemon:test: ✓ classifies a selected branch before filtering and pagination 553ms @bb/host-daemon:test: × refreshes remote branches before filtering branch lists 82ms @bb/host-daemon:test: × filters and limits branch lists 11ms @bb/host-daemon:test: × reports detached HEAD in checkout state 15ms @bb/host-daemon:test: × reports dirty primary checkouts 16ms @bb/host-daemon:test: × lists branches for a bare repository root that holds sibling worktrees 13ms @bb/host-daemon:test: ✓ returns an empty list for non-git directories 12ms @bb/host-daemon:test: ✓ returns an empty list for missing paths 6ms @bb/host-daemon:test: × pins local and remote defaults before applying the page limit 16ms @bb/host-daemon:test: × returns cached refs while a remote refresh continues in the background 17ms @bb/host-daemon:test: × does not start a remote refresh when the caller opts out 16ms @bb/host-daemon:test: ❯ |@bb/host-daemon| src/command-handlers/file-list.issue-2362.test.ts (1 test | 1 failed) 1145ms @bb/host-daemon:test: × lists a child directory with 130000 files 1145ms @bb/host-daemon:test: ❯ |@bb/host-daemon| src/command-handlers/file-list.test.ts (15 tests | 1 failed) 2000ms @bb/host-daemon:test: ✓ preserves walk order for an empty query 1ms @bb/host-daemon:test: ✓ sets the display name from the path basename 0ms @bb/host-daemon:test: ✓ does not report truncation below the limit 0ms @bb/host-daemon:test: ✓ does not report truncation exactly at the limit 0ms @bb/host-daemon:test: ✓ reports truncation above the limit 0ms @bb/host-daemon:test: ✓ applies query matching before truncating 2ms @bb/host-daemon:test: ✓ reports truncation after query matching when more matches remain 1ms @bb/host-daemon:test: ✓ returns an empty untruncated list when a query has no matches 0ms @bb/host-daemon:test: ✓ excludes directories when directory results are disabled 0ms @bb/host-daemon:test: ✓ includes directories with typed path metadata when requested 0ms @bb/host-daemon:test: ✓ applies fuzzy ranking before truncating mixed path results 1ms @bb/host-daemon:test: ✓ returns slash-separated relative paths for nested entries 28ms @bb/host-daemon:test: ✓ does not return symlinked files as regular path entries 9ms @bb/host-daemon:test: ✓ normalizes Windows separators before returning paths 0ms @bb/host-daemon:test: × does not overflow the call stack merging a large subdirectory 1954ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/plugin-host-manager.test.ts (19 tests) 4993ms @bb/host-daemon:test: ✓ keeps only the active artifact digest in each plugin cache 441ms @bb/host-daemon:test: ✓ evicts an idle worker and starts it again without reporting a crash 523ms @bb/host-daemon:test: ✓ retains a worker with a lease until the lease is released 703ms @bb/host-daemon:test: ✓ backpressures native watch delivery and disposes watches with the worker 425ms @bb/host-daemon:test: ✓ recovers after a crash and retires stale generations 364ms @bb/host-daemon:test: ✓ |@bb/host-daemon| src/lock.test.ts (3 tests) 4871ms @bb/host-daemon:test: ✓ re-acquires a compromised lock instead of crashing the daemon 1020ms @bb/host-daemon:test: ✓ re-acquires when the lock dir survives the compromise and must age past stale 2521ms @bb/host-daemon:test: ✓ yields the data dir when another live process holds the lock 1330ms @bb/host-daemon:test: ✓ |@bb/host-daemon| test/command/thread-stop-races.test.ts (4 tests) 11937ms @bb/host-daemon:test: ✓ resolves a stop dispatched before turn/started event-driven and stops the right turn 11006ms @bb/host-daemon:test: ✓ noops a stop after the turn-start wait times out without hanging 312ms @bb/host-daemon:test: ✓ treats the second of two racing stops as an idempotent no-op 322ms @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯ Failed Tests 14 ⎯⎯⎯⎯⎯⎯⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| src/app.test.ts > createHostDaemonApp > logs stack-bearing fields for unexpected interactive forwarding failures @bb/host-daemon:test: Error: ENOSPC: no space left on device, mkdir '/tmp/bb-host-daemon-app-test-JljwDX/thread-storage' @bb/host-daemon:test: ❯ ensureThreadStorageRoot src/thread-storage-root.ts:12:3 @bb/host-daemon:test: 10| ): Promise { @bb/host-daemon:test: 11| const rootPath = threadStorageRootPath(dataDir); @bb/host-daemon:test: 12| await fs.mkdir(rootPath, { recursive: true }); @bb/host-daemon:test: | ^ @bb/host-daemon:test: 13| return rootPath; @bb/host-daemon:test: 14| } @bb/host-daemon:test: ❯ createHostDaemonApp src/app.ts:230:33 @bb/host-daemon:test: ❯ createAppFixture src/app.test.ts:372:15 @bb/host-daemon:test: ❯ src/app.test.ts:1037:45 @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| src/app.test.ts > createHostDaemonApp > logs rejected interactive request registrations with a structured code @bb/host-daemon:test: Error: ENOSPC: no space left on device, mkdtemp '/tmp/bb-host-daemon-app-rejected-interactive-Z5XKL9' @bb/host-daemon:test: ❯ makeTempDir src/app.test.ts:84:15 @bb/host-daemon:test: 82| @bb/host-daemon:test: 83| async function makeTempDir(prefix: string): Promise { @bb/host-daemon:test: 84| const dir = await fs.mkdtemp(path.join(os.tmpdir(), prefix)); @bb/host-daemon:test: | ^ @bb/host-daemon:test: 85| tempDirs.push(dir); @bb/host-daemon:test: 86| return dir; @bb/host-daemon:test: ❯ src/app.test.ts:1083:29 @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[2/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| src/command-discovery.test.ts > resolveDeclaredScanRoots > does not walk above a cwd without a repository marker and lists the cwd once @bb/host-daemon:test: AssertionError: expected [ Array(4) ] to deeply equal [ { …(7) } ] @bb/host-daemon:test: @bb/host-daemon:test: - Expected @bb/host-daemon:test: + Received @bb/host-daemon:test: @bb/host-daemon:test: [ @bb/host-daemon:test: { @bb/host-daemon:test: - "boundaryPath": "/tmp/bb-command-discovery-AOqAgl/workspace/standalone", @bb/host-daemon:test: + "boundaryPath": "/tmp", @bb/host-daemon:test: + "namePrefix": "", @bb/host-daemon:test: + "origin": "project", @bb/host-daemon:test: + "rootPath": "/tmp/.agents/skills", @bb/host-daemon:test: + "shape": "skill", @bb/host-daemon:test: + "skillIdentitySeed": "test-provider:provider-project:.agents/skills:", @bb/host-daemon:test: + "source": "skill", @bb/host-daemon:test: + }, @bb/host-daemon:test: + { @bb/host-daemon:test: + "boundaryPath": "/tmp", @bb/host-daemon:test: + "namePrefix": "", @bb/host-daemon:test: + "origin": "project", @bb/host-daemon:test: + "rootPath": "/tmp/bb-command-discovery-AOqAgl/.agents/skills", @bb/host-daemon:test: + "shape": "skill", @bb/host-daemon:test: + "skillIdentitySeed": "test-provider:provider-project:.agents/skills:bb-command-discovery-AOqAgl", @bb/host-daemon:test: + "source": "skill", @bb/host-daemon:test: + }, @bb/host-daemon:test: + { @bb/host-daemon:test: + "boundaryPath": "/tmp", @bb/host-daemon:test: + "namePrefix": "", @bb/host-daemon:test: + "origin": "project", @bb/host-daemon:test: + "rootPath": "/tmp/bb-command-discovery-AOqAgl/workspace/.agents/skills", @bb/host-daemon:test: + "shape": "skill", @bb/host-daemon:test: + "skillIdentitySeed": "test-provider:provider-project:.agents/skills:bb-command-discovery-AOqAgl/workspace", @bb/host-daemon:test: + "source": "skill", @bb/host-daemon:test: + }, @bb/host-daemon:test: + { @bb/host-daemon:test: + "boundaryPath": "/tmp", @bb/host-daemon:test: "namePrefix": "", @bb/host-daemon:test: "origin": "project", @bb/host-daemon:test: "rootPath": "/tmp/bb-command-discovery-AOqAgl/workspace/standalone/.agents/skills", @bb/host-daemon:test: "shape": "skill", @bb/host-daemon:test: - "skillIdentitySeed": "test-provider:provider-project:.agents/skills:", @bb/host-daemon:test: + "skillIdentitySeed": "test-provider:provider-project:.agents/skills:bb-command-discovery-AOqAgl/workspace/standalone", @bb/host-daemon:test: "source": "skill", @bb/host-daemon:test: }, @bb/host-daemon:test: ] @bb/host-daemon:test: @bb/host-daemon:test: ❯ src/command-discovery.test.ts:764:19 @bb/host-daemon:test: 762| ); @bb/host-daemon:test: 763| @bb/host-daemon:test: 764| expect(roots).toEqual([ @bb/host-daemon:test: | ^ @bb/host-daemon:test: 765| { @bb/host-daemon:test: 766| boundaryPath: cwd, @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[3/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| src/command-discovery.test.ts > resolveDeclaredScanRoots > maps each resolved shape to its scan root and discovers through them @bb/host-daemon:test: AssertionError: expected [ { …(6) }, { …(6) }, { …(7) }, …(6) ] to deeply equal [ { …(6) }, { …(6) }, { …(7) }, …(6) ] @bb/host-daemon:test: @bb/host-daemon:test: - Expected @bb/host-daemon:test: + Received @bb/host-daemon:test: @bb/host-daemon:test: @@ -14,11 +14,11 @@ @bb/host-daemon:test: "shape": "skill", @bb/host-daemon:test: "skillIdentitySeed": "test-provider:provider-user:/tmp/bb-command-discovery-5aaCxj/home/system/no-such-skills", @bb/host-daemon:test: "source": "skill", @bb/host-daemon:test: }, @bb/host-daemon:test: { @bb/host-daemon:test: - "boundaryPath": "/tmp/bb-command-discovery-5aaCxj/workspace", @bb/host-daemon:test: + "boundaryPath": "/tmp", @bb/host-daemon:test: "namePrefix": "", @bb/host-daemon:test: "origin": "project", @bb/host-daemon:test: "rootPath": "/tmp/bb-command-discovery-5aaCxj/workspace/team-skills", @bb/host-daemon:test: "shape": "skill-recursive", @bb/host-daemon:test: "skillIdentitySeed": "test-provider:provider-project:/tmp/bb-command-discovery-5aaCxj/workspace/team-skills", @bb/host-daemon:test: @bb/host-daemon:test: ❯ src/command-discovery.test.ts:965:19 @bb/host-daemon:test: 963| ); @bb/host-daemon:test: 964| @bb/host-daemon:test: 965| expect(roots).toEqual([ @bb/host-daemon:test: | ^ @bb/host-daemon:test: 966| { @bb/host-daemon:test: 967| rootPath: systemSkills, @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[4/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| src/command-handlers/file-list.issue-2362.test.ts > issue 2362 > lists a child directory with 130000 files @bb/host-daemon:test: Error: ENOSPC: no space left on device, open '/tmp/bb-2362-7Pr7Sl/child/f15045.txt' @bb/host-daemon:test: ❯ src/command-handlers/file-list.issue-2362.test.ts:17:9 @bb/host-daemon:test: 15| for (let start = 0; start < fileCount; start += batchSize) { @bb/host-daemon:test: 16| const end = Math.min(start + batchSize, fileCount); @bb/host-daemon:test: 17| await Promise.all( @bb/host-daemon:test: | ^ @bb/host-daemon:test: 18| Array.from({ length: end - start }, (_, offset) => @bb/host-daemon:test: 19| fs.writeFile(path.join(child, `f${start + offset}.txt`), "… @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[5/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| src/command-handlers/file-list.test.ts > listPathsRecursively > does not overflow the call stack merging a large subdirectory @bb/host-daemon:test: Error: ENOSPC: no space left on device, open '/tmp/bb-file-list-L8XiUe/many/f45210.txt' @bb/host-daemon:test: ❯ src/command-handlers/file-list.test.ts:275:9 @bb/host-daemon:test: 273| for (let start = 0; start < fileCount; start += batchSize) { @bb/host-daemon:test: 274| const end = Math.min(start + batchSize, fileCount); @bb/host-daemon:test: 275| await Promise.all( @bb/host-daemon:test: | ^ @bb/host-daemon:test: 276| Array.from({ length: end - start }, (_, offset) => @bb/host-daemon:test: 277| fs.writeFile(path.join(nested, `f${start + offset}.txt`), … @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[6/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| test/command/host-branches-dispatch.test.ts > host.list_branches dispatch > refreshes remote branches before filtering branch lists @bb/host-daemon:test: Error: Command failed: git branch release/1.2 @bb/host-daemon:test: fatal: cannot lock ref 'refs/heads/release/1.2': unable to create directory for .git/refs/heads/release/1.2 @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[7/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| test/command/host-branches-dispatch.test.ts > host.list_branches dispatch > filters and limits branch lists @bb/host-daemon:test: Error: ENOSPC: no space left on device, mkdtemp '/tmp/bb-host-branches-repo-rMyVdU' @bb/host-daemon:test: ❯ makeTempDir test/command/dispatch-helpers.ts:557:15 @bb/host-daemon:test: 555| @bb/host-daemon:test: 556| export async function makeTempDir(prefix: string): Promise { @bb/host-daemon:test: 557| const dir = await fs.mkdtemp(path.join(os.tmpdir(), prefix)); @bb/host-daemon:test: | ^ @bb/host-daemon:test: 558| tempDirs.push(dir); @bb/host-daemon:test: 559| return dir; @bb/host-daemon:test: ❯ initBranchRepo test/command/host-branches-dispatch.test.ts:15:20 @bb/host-daemon:test: ❯ test/command/host-branches-dispatch.test.ts:231:22 @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[8/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| test/command/host-branches-dispatch.test.ts > host.list_branches dispatch > reports detached HEAD in checkout state @bb/host-daemon:test: Error: Command failed: git init -b develop @bb/host-daemon:test: /tmp/bb-host-branches-repo-fASkpA/.git/hooks/: No space left on device @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[9/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| test/command/host-branches-dispatch.test.ts > host.list_branches dispatch > reports dirty primary checkouts @bb/host-daemon:test: Error: Command failed: git init -b develop @bb/host-daemon:test: /tmp/bb-host-branches-repo-wRqPBe/.git/hooks/: No space left on device @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[10/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| test/command/host-branches-dispatch.test.ts > host.list_branches dispatch > lists branches for a bare repository root that holds sibling worktrees @bb/host-daemon:test: Error: Command failed: git init -b develop @bb/host-daemon:test: fatal: cannot copy '/usr/share/git-core/templates/hooks/pre-commit.sample' to '/tmp/bb-host-branches-repo-dxh5so/.git/hooks/pre-commit.sample': No space left on device @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[11/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| test/command/host-branches-dispatch.test.ts > host.list_branch_options dispatch > pins local and remote defaults before applying the page limit @bb/host-daemon:test: Error: Command failed: git init -b develop @bb/host-daemon:test: fatal: cannot copy '/usr/share/git-core/templates/hooks/pre-commit.sample' to '/tmp/bb-host-branches-repo-meS3Vj/.git/hooks/pre-commit.sample': No space left on device @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[12/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| test/command/host-branches-dispatch.test.ts > host.list_branch_options dispatch > returns cached refs while a remote refresh continues in the background @bb/host-daemon:test: Error: Command failed: git init -b develop @bb/host-daemon:test: fatal: cannot copy '/usr/share/git-core/templates/hooks/pre-commit.sample' to '/tmp/bb-host-branches-repo-fwnJ0w/.git/hooks/pre-commit.sample': No space left on device @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[13/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: FAIL |@bb/host-daemon| test/command/host-branches-dispatch.test.ts > host.list_branch_options dispatch > does not start a remote refresh when the caller opts out @bb/host-daemon:test: Error: Command failed: git init -b develop @bb/host-daemon:test: fatal: cannot copy '/usr/share/git-core/templates/hooks/pre-commit.sample' to '/tmp/bb-host-branches-repo-V52lBC/.git/hooks/pre-commit.sample': No space left on device @bb/host-daemon:test: @bb/host-daemon:test: ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[14/14]⎯ @bb/host-daemon:test: @bb/host-daemon:test: @bb/host-daemon:test: Test Files 5 failed | 41 passed (46) @bb/host-daemon:test: Tests 14 failed | 542 passed (556) @bb/host-daemon:test: Start at 15:59:55 @bb/host-daemon:test: Duration 19.88s (transform 54.42s, setup 0ms, import 88.75s, tests 37.03s, environment 11ms) @bb/host-daemon:test: @bb/host-daemon:test:  ELIFECYCLE  Test failed. See above for more details. @bb/host-daemon:test: ERROR: command finished with error: command (/tmp/bb-report-2362-investigate-THVgrm/apps/host-daemon) /home/sawyer/.local/share/pnpm/store/v11/links/@pnpm/exe/9.15.0/0cb0bed5359cd168a914de4ae70b4e04bc16c903df0764391acdba407e24b0c2/bin/pnpm run test exited (1) @bb/host-daemon#test: command (/tmp/bb-report-2362-investigate-THVgrm/apps/host-daemon) /home/sawyer/.local/share/pnpm/store/v11/links/@pnpm/exe/9.15.0/0cb0bed5359cd168a914de4ae70b4e04bc16c903df0764391acdba407e24b0c2/bin/pnpm run test exited (1) Tasks: 6 successful, 7 total Cached: 0 cached, 7 total Time: 43.585s Failed: @bb/host-daemon#test ERROR run failed: command exited (1)