fix(release): pin direct OpenAI smoke runtime

This commit is contained in:
Peter Steinberger
2026-05-09 17:05:40 +01:00
parent 6a20083098
commit 0d1c4393b9
8 changed files with 12 additions and 22 deletions

View File

@@ -422,7 +422,7 @@ describe("telegram live qa runtime", () => {
?.buildRun("sut_bot").steps[0],
).toMatchObject({
expectedJoinedSutTextIncludes: ["TELEGRAM-LONG-FINAL-BEGIN", "TELEGRAM-LONG-FINAL-END"],
expectedSutMessageCount: 2,
expectedSutMessageCount: 1,
replyToLatestSutMessage: true,
});
expect(
@@ -513,7 +513,7 @@ describe("telegram live qa runtime", () => {
expect(
__testing.assertTelegramScenarioMessageSet({
expectedJoinedSutTextIncludes: ["TELEGRAM-LONG-FINAL-BEGIN", "TELEGRAM-LONG-FINAL-END"],
expectedSutMessageCount: 2,
expectedSutMessageCount: 1,
groupId: "-100123",
scenarioId: "telegram-long-final-reuses-preview",
sutBotId: 99,
@@ -527,32 +527,18 @@ describe("telegram live qa runtime", () => {
scenarioId: "telegram-long-final-reuses-preview",
scenarioTitle: "Telegram long final reuses the preview message",
matchedScenario: true,
text: "TELEGRAM-LONG-FINAL-BEGIN part one ",
text: "TELEGRAM-LONG-FINAL-BEGIN part one part two TELEGRAM-LONG-FINAL-END",
timestamp: 1_700_000_000_000,
inlineButtons: [],
mediaKinds: [],
},
{
updateId: 2,
messageId: 11,
chatId: -100123,
senderId: 99,
senderIsBot: true,
scenarioId: "telegram-long-final-reuses-preview",
scenarioTitle: "Telegram long final reuses the preview message",
matchedScenario: true,
text: "part two TELEGRAM-LONG-FINAL-END",
timestamp: 1_700_000_001_000,
inlineButtons: [],
mediaKinds: [],
},
],
}),
).toBeUndefined();
expect(() =>
__testing.assertTelegramScenarioMessageSet({
expectedSutMessageCount: 2,
expectedSutMessageCount: 1,
groupId: "-100123",
scenarioId: "telegram-long-final-reuses-preview",
sutBotId: 99,
@@ -601,7 +587,7 @@ describe("telegram live qa runtime", () => {
},
],
}),
).toThrow("expected 2 SUT message(s), observed 3");
).toThrow("expected 1 SUT message(s), observed 3");
});
it("accepts legitimate three-chunk Telegram final replies", () => {

View File

@@ -441,7 +441,7 @@ const TELEGRAM_QA_SCENARIOS: TelegramQaScenarioDefinition[] = [
input: `@${sutUsername} Telegram long final QA check. Use the scripted long final response.`,
expectedTextIncludes: ["TELEGRAM-LONG-FINAL-BEGIN"],
expectedJoinedSutTextIncludes: ["TELEGRAM-LONG-FINAL-BEGIN", "TELEGRAM-LONG-FINAL-END"],
expectedSutMessageCount: 2,
expectedSutMessageCount: 1,
replyToLatestSutMessage: true,
settleMs: 4_000,
}),

View File

@@ -606,6 +606,7 @@ run_profile() {
agent_model="$(set_agent_model "$profile" \
"openai/gpt-5.5" \
"openai/gpt-5.4-mini")"
openclaw --profile "$profile" config set models.providers.openai.agentRuntime '{"id":"pi"}' --strict-json >/dev/null
image_model="$(set_image_model "$profile" \
"openai/gpt-5.4-image-2")"
else

View File

@@ -97,6 +97,7 @@ function writeOpenWebUiConfig([openaiApiKey]) {
value: (process.env.OPENAI_BASE_URL || "https://api.openai.com/v1").trim(),
},
{ path: "models.providers.openai.models", value: [] },
{ path: "models.providers.openai.agentRuntime", value: { id: "pi" } },
{ path: "gateway.controlUi.enabled", value: false },
{ path: "gateway.mode", value: "local" },
{ path: "gateway.bind", value: "lan" },

View File

@@ -1042,7 +1042,7 @@ update_candidate() {
else
update_start="$(node -e "process.stdout.write(String(Date.now()))")"
fi
if ! env -u OPENCLAW_GATEWAY_TOKEN -u OPENCLAW_GATEWAY_PASSWORD openclaw "${update_args[@]}" >"$UPDATE_JSON" 2>"$UPDATE_ERR"; then
if ! env -u OPENCLAW_GATEWAY_TOKEN -u OPENCLAW_GATEWAY_PASSWORD OPENCLAW_ALLOW_ROOT=1 openclaw "${update_args[@]}" >"$UPDATE_JSON" 2>"$UPDATE_ERR"; then
echo "openclaw update failed" >&2
cat "$UPDATE_ERR" >&2 || true
cat "$UPDATE_JSON" >&2 || true

View File

@@ -289,7 +289,7 @@ if [ "$UPDATE_RESTART_MODE" != "auto-auth" ]; then
update_args+=(--no-restart)
fi
set +e
env -u OPENCLAW_GATEWAY_TOKEN -u OPENCLAW_GATEWAY_PASSWORD openclaw "${update_args[@]}" >/tmp/openclaw-upgrade-survivor-update.json 2>/tmp/openclaw-upgrade-survivor-update.err
env -u OPENCLAW_GATEWAY_TOKEN -u OPENCLAW_GATEWAY_PASSWORD OPENCLAW_ALLOW_ROOT=1 openclaw "${update_args[@]}" >/tmp/openclaw-upgrade-survivor-update.json 2>/tmp/openclaw-upgrade-survivor-update.err
update_status=$?
set -e
if [ "$update_status" -ne 0 ]; then

View File

@@ -99,6 +99,7 @@ function buildReleaseProviderConfigOverride(providerMeta) {
}
return {
...(typeof providerMeta.baseUrl === "string" ? { baseUrl: providerMeta.baseUrl } : {}),
...(providerMeta.extensionId === "openai" ? { agentRuntime: { id: "pi" } } : {}),
models: [],
...(typeof providerMeta.timeoutSeconds === "number"
? { timeoutSeconds: providerMeta.timeoutSeconds }

View File

@@ -268,6 +268,7 @@ describe("scripts/openclaw-cross-os-release-checks", () => {
expect(CROSS_OS_AGENT_TURN_TIMEOUT_SECONDS).toBeGreaterThanOrEqual(600);
expect(source).toContain("buildReleaseProviderConfigOverride");
expect(source).toContain("models: []");
expect(source).toContain('agentRuntime: { id: "pi" }');
expect(source).toContain('"--merge"');
expect(source).toContain(providerOverride);
expect(source).not.toContain("models.providers.${params.providerConfig.extensionId}.baseUrl");