mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 07:40:44 +00:00
fix(voice-call): fallback on gateway 1006 closes (#76858)
This commit is contained in:
committed by
GitHub
parent
863198f0c9
commit
5a028489b1
@@ -33,6 +33,7 @@ Docs: https://docs.openclaw.ai
|
||||
- Plugins/OpenRouter: advertise DeepSeek V4 thinking levels, including `xhigh` and `max`, through the runtime and lightweight provider policy surfaces so `/think` validation no longer rejects OpenRouter-routed DeepSeek V4 models. Fixes #74788. Thanks @vincentkoc.
|
||||
- Status/sessions: ignore malformed non-string persisted session provider/model metadata instead of throwing while rendering status summaries. Thanks @vincentkoc.
|
||||
- CLI/config: remove only the targeted array element for `openclaw config unset array[index]` instead of replaying the unset during config write and deleting the shifted next element. Fixes #76290. Thanks @SymbolStar and @vincentkoc.
|
||||
- Plugins/voice-call: treat abnormal local Gateway close code 1006 as a standalone CLI fallback case, so `voicecall smoke` and related commands can still run the provider check path when the Gateway socket closes before returning a response.
|
||||
- Agents/tools: stop treating `tools.deny: ["write"]` as an implicit `apply_patch` deny; operators who want to block patch writes should deny `apply_patch` or `group:fs` explicitly. Fixes #76749. (#76795) Thanks @Nek-12 and @hclsys.
|
||||
- Plugins/release: verify published plugin npm tarballs expose compiled runtime entries after publish, catching TS-only package artifacts before release closeout. Thanks @vincentkoc.
|
||||
- CLI/message: exit cleanly with a nonzero status when message-command plugin registry loading fails before dispatch, preventing `openclaw-message` children from staying alive after plugin load errors. Fixes #76168.
|
||||
|
||||
12
extensions/voice-call/src/cli.test.ts
Normal file
12
extensions/voice-call/src/cli.test.ts
Normal file
@@ -0,0 +1,12 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { __testing } from "./cli.js";
|
||||
|
||||
describe("voice-call CLI gateway fallback", () => {
|
||||
it("treats abnormal local gateway closes as standalone-runtime fallback candidates", () => {
|
||||
expect(
|
||||
__testing.isGatewayUnavailableForLocalFallback(
|
||||
new Error("gateway closed (1006 abnormal closure (no close frame)): no close reason"),
|
||||
),
|
||||
).toBe(true);
|
||||
});
|
||||
});
|
||||
@@ -60,6 +60,7 @@ export const __testing = {
|
||||
setCallGatewayFromCliForTests(next?: typeof callGatewayFromCli): void {
|
||||
voiceCallCliDeps.callGatewayFromCli = next ?? callGatewayFromCli;
|
||||
},
|
||||
isGatewayUnavailableForLocalFallback,
|
||||
};
|
||||
|
||||
function writeStdoutLine(...values: unknown[]): void {
|
||||
@@ -81,6 +82,7 @@ function isGatewayUnavailableForLocalFallback(err: unknown): boolean {
|
||||
message.includes("ECONNRESET") ||
|
||||
message.includes("EHOSTUNREACH") ||
|
||||
message.includes("ENOTFOUND") ||
|
||||
message.includes("gateway closed (1006") ||
|
||||
message.includes("gateway not connected")
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user