From 08788365eb22bae502be01d4824617bc7c90523c Mon Sep 17 00:00:00 2001 From: Julie Yaunches Date: Thu, 21 May 2026 11:16:49 -0400 Subject: [PATCH] fix(e2e): run full repo scenario cli build --- .../nemoclaw_scenarios/install/repo-current.sh | 17 ++++++----------- .../e2e-lib-helpers.test.ts | 14 ++++++++++++++ 2 files changed, 20 insertions(+), 11 deletions(-) diff --git a/test/e2e/nemoclaw_scenarios/install/repo-current.sh b/test/e2e/nemoclaw_scenarios/install/repo-current.sh index 4065308a7f..8c985dc3f7 100755 --- a/test/e2e/nemoclaw_scenarios/install/repo-current.sh +++ b/test/e2e/nemoclaw_scenarios/install/repo-current.sh @@ -28,21 +28,16 @@ e2e_install_repo() { mkdir -p .e2e echo "repo-current: build cli" build_status=0 - ./node_modules/.bin/tsc -p tsconfig.src.json >.e2e/build-cli.log 2>&1 || build_status=$? + npm run build:cli >.e2e/build-cli.log 2>&1 || build_status=$? if [ "${build_status}" -ne 0 ]; then cat .e2e/build-cli.log >&2 - echo "CLI TypeScript build failed with status ${build_status}" >&2 + echo "CLI build failed with status ${build_status}" >&2 return "${build_status}" fi - if find nemoclaw-blueprint/scripts -name '*.ts' -print -quit | grep -q .; then - echo "repo-current: build blueprint" - build_status=0 - ./node_modules/.bin/tsc -p nemoclaw-blueprint/tsconfig.json >.e2e/build-blueprint.log 2>&1 || build_status=$? - if [ "${build_status}" -ne 0 ]; then - cat .e2e/build-blueprint.log >&2 - echo "Blueprint TypeScript build failed with status ${build_status}" >&2 - return "${build_status}" - fi + if [ ! -s dist/lib/cli/oclif-command-metadata.generated.json ]; then + cat .e2e/build-cli.log >&2 + echo "CLI build did not generate oclif command metadata" >&2 + return 1 fi echo "repo-current: link cli" chmod +x bin/nemoclaw.js diff --git a/test/e2e/scenario-framework-tests/e2e-lib-helpers.test.ts b/test/e2e/scenario-framework-tests/e2e-lib-helpers.test.ts index 69af4a5eb0..d5318cccef 100644 --- a/test/e2e/scenario-framework-tests/e2e-lib-helpers.test.ts +++ b/test/e2e/scenario-framework-tests/e2e-lib-helpers.test.ts @@ -812,6 +812,20 @@ describe("Phase 1.E install dispatcher splits", () => { expect(r.stdout + r.stderr).not.toMatch(/install-curl|install-ollama|install-launchable/); }); + it("repo_current_install_should_use_full_cli_build_script", () => { + const script = fs.readFileSync(path.join(INSTALL_DIR, "repo-current.sh"), "utf8"); + expect(script).toContain("npm run build:cli"); + expect(script).not.toContain("./node_modules/.bin/tsc -p tsconfig.src.json"); + expect(script).not.toContain("./node_modules/.bin/tsc -p nemoclaw-blueprint/tsconfig.json"); + }); + + it("repo_current_install_should_verify_generated_oclif_metadata", () => { + const script = fs.readFileSync(path.join(INSTALL_DIR, "repo-current.sh"), "utf8"); + const buildScript = JSON.parse(fs.readFileSync(path.join(REPO_ROOT, "package.json"), "utf8")).scripts?.["build:cli"] ?? ""; + expect(buildScript).toContain("generate-oclif-metadata-manifest.js"); + expect(script).toContain("dist/lib/cli/oclif-command-metadata.generated.json"); + }); + it("install_should_dispatch_to_install_curl_helper_for_public_installer_profile", () => { const r = dispatchDryRun("public-installer"); expect(r.status, r.stderr).toBe(0);