From 67049227d61793cb01238b5f39e207c47b3cedb8 Mon Sep 17 00:00:00 2001 From: ScriptedAlchemy Date: Wed, 2 Sep 2026 00:04:30 +0000 Subject: [PATCH] fix(test): accept npm 12 pack --json in packed-consumer Reuse packOutputFromJson from shared-pack.ts so packed-consumer.test.ts handles npm 12's package-keyed object output, matching PR #225's fix at the other npm pack --json call sites. --- packages/agent-bundle/tests/packed-consumer.test.ts | 4 ++-- packages/agent-bundle/tests/support/shared-pack.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/agent-bundle/tests/packed-consumer.test.ts b/packages/agent-bundle/tests/packed-consumer.test.ts index f13868085..aeb11b0a1 100644 --- a/packages/agent-bundle/tests/packed-consumer.test.ts +++ b/packages/agent-bundle/tests/packed-consumer.test.ts @@ -20,7 +20,7 @@ import { promisify } from 'node:util'; import { expect, it } from '@rstest/core'; import { sha256Hex } from '../src/core/digest.ts'; -import { cachedNpmInstallArguments, installedEnvironment } from './support/shared-pack.ts'; +import { cachedNpmInstallArguments, installedEnvironment, packOutputFromJson } from './support/shared-pack.ts'; const execFile = promisify(executeFile); const workspaceRoot = process.cwd(); @@ -92,7 +92,7 @@ it('uses only an installed tarball after source deletion', async () => { cwd: packedPackageRoot, env: installedEnvironment(), }); - const tarball = join(consumerRoot, (JSON.parse(packed) as Array<{ filename: string }>)[0]!.filename); + const tarball = join(consumerRoot, packOutputFromJson(packed).filename); await cp(fixtureRoot, projectRoot, { recursive: true }); const [sourceShellMode, sourcePythonMode] = await Promise.all([ stat(join(projectRoot, 'src', 'shell.sh')).then((metadata) => metadata.mode & 0o777), diff --git a/packages/agent-bundle/tests/support/shared-pack.ts b/packages/agent-bundle/tests/support/shared-pack.ts index 1d3347681..ceecb7cab 100644 --- a/packages/agent-bundle/tests/support/shared-pack.ts +++ b/packages/agent-bundle/tests/support/shared-pack.ts @@ -23,7 +23,7 @@ export interface SharedPack { export type SharedPackPackage = 'agent-bundle' | 'create-agent-bundle' | 'runtime'; -const packOutputFromJson = (stdout: string): SharedPackOutput => { +export const packOutputFromJson = (stdout: string): SharedPackOutput => { const parsed: unknown = JSON.parse(stdout); const entries = Array.isArray(parsed) ? parsed