From cf21cbafc4fa9b8382676fcb13e0a21827668ee4 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Wed, 6 May 2026 12:06:01 +0100 Subject: [PATCH] ci: harden release validation harness checks --- scripts/github/run-openclaw-cross-os-release-checks.sh | 8 +++++++- src/gateway/gateway-codex-harness.live-helpers.test.ts | 1 + src/gateway/gateway-codex-harness.live-helpers.ts | 2 ++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/scripts/github/run-openclaw-cross-os-release-checks.sh b/scripts/github/run-openclaw-cross-os-release-checks.sh index c377fc492ff..448a65223fc 100755 --- a/scripts/github/run-openclaw-cross-os-release-checks.sh +++ b/scripts/github/run-openclaw-cross-os-release-checks.sh @@ -51,7 +51,13 @@ command -v "${npm_cmd}" >/dev/null 2>&1 || { if [[ ! -f "${loader_path}" ]]; then mkdir -p "${tool_dir}" - if ! "${npm_cmd}" install --prefix "${npm_tool_dir}" --no-save --no-package-lock "tsx@${tsx_version}" >/dev/null; then + if command -v cygpath >/dev/null 2>&1 && [[ "${npm_cmd}" == *.cmd ]]; then + npm_install_cmd="\"${npm_cmd}\" install --prefix \"${npm_tool_dir}\" --no-save --no-package-lock \"tsx@${tsx_version}\"" + if ! cmd.exe /d /s /c "${npm_install_cmd}" >/dev/null; then + echo "failed to install cross-OS release-check loader with ${npm_cmd}." >&2 + exit 127 + fi + elif ! "${npm_cmd}" install --prefix "${npm_tool_dir}" --no-save --no-package-lock "tsx@${tsx_version}" >/dev/null; then echo "failed to install cross-OS release-check loader with ${npm_cmd}." >&2 exit 127 fi diff --git a/src/gateway/gateway-codex-harness.live-helpers.test.ts b/src/gateway/gateway-codex-harness.live-helpers.test.ts index 164c7be07db..7eb04f0a298 100644 --- a/src/gateway/gateway-codex-harness.live-helpers.test.ts +++ b/src/gateway/gateway-codex-harness.live-helpers.test.ts @@ -277,6 +277,7 @@ describe("gateway codex harness live helpers", () => { ].join("\n"), ["Available model overrides here:", "", "- `gpt-5.4`"].join("\n"), ["Available model overrides:", "", "- `gpt-5.4`"].join("\n"), + ["Available model overrides listed for this session:", "", "- `gpt-5.5`"].join("\n"), ["Available models:", "", "- `gpt-5.4`", "- `gpt-5.4-mini`"].join("\n"), [ "Available model overrides exposed in this session are:", diff --git a/src/gateway/gateway-codex-harness.live-helpers.ts b/src/gateway/gateway-codex-harness.live-helpers.ts index 781cc949d94..c1cbd97c452 100644 --- a/src/gateway/gateway-codex-harness.live-helpers.ts +++ b/src/gateway/gateway-codex-harness.live-helpers.ts @@ -37,6 +37,7 @@ export const EXPECTED_CODEX_MODELS_COMMAND_TEXT = [ "Available model overrides:", "Available model overrides exposed in this session", "Available model overrides here:", + "Available model overrides listed for this session:", "Available model overrides listed in this session:", "Available model overrides shown in this session:", "Available model overrides in this session:", @@ -209,6 +210,7 @@ export function isExpectedCodexModelsCommandText(text: string): boolean { normalized.includes("visible options:") || normalized.includes("available codex agent model:") || normalized.includes("available codex agent models:") || + normalized.includes("available model overrides listed for this session:") || normalized.includes("available model overrides listed in this session:") || normalized.includes("available model overrides shown in this session:") || normalized.includes("available here:") ||