mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 10:40:43 +00:00
fix(plugins): pin beta-only external launch specs
This commit is contained in:
@@ -19,6 +19,7 @@ Docs: https://docs.openclaw.ai
|
||||
|
||||
### Fixes
|
||||
|
||||
- Plugins/externalization: pin beta-only official launch packages for ACPX, Google Chat, and LINE to explicit npm beta specs so catalog-driven installs do not trip the prerelease safety guard while npm `latest` still points at beta. Thanks @vincentkoc.
|
||||
- Control UI/Talk: fix Talk (OpenAI Realtime WebRTC) CORS failure by stripping server-side-only attribution headers (`originator`, `version`, `User-Agent`) from browser offer headers; `api.openai.com/v1/realtime/calls` only allows `authorization` and `content-type` in its CORS preflight, so forwarding these headers caused the browser SDP exchange to fail. Fixes #76435. Thanks @hclsys.
|
||||
- CLI/logs: auto-reconnect `openclaw logs --follow` on transient gateway disconnects (WebSocket close, timeout, connection drop) with bounded exponential backoff (up to 8 retries, capped at 30 s) and stderr retry warnings, while still exiting immediately on non-recoverable auth or configuration errors. Fixes #74782. (#75059) Thanks @shashank-poola.
|
||||
- Plugins/onboarding: trust optional official plugin and web-search installs selected from the official catalog so npm security scanning treats them like other source-linked official install paths. Thanks @vincentkoc.
|
||||
|
||||
@@ -176,7 +176,7 @@
|
||||
]
|
||||
},
|
||||
"install": {
|
||||
"npmSpec": "@openclaw/googlechat",
|
||||
"npmSpec": "@openclaw/googlechat@beta",
|
||||
"defaultChoice": "npm",
|
||||
"minHostVersion": ">=2026.4.10"
|
||||
}
|
||||
@@ -201,7 +201,7 @@
|
||||
"quickstartAllowFrom": true
|
||||
},
|
||||
"install": {
|
||||
"npmSpec": "@openclaw/line",
|
||||
"npmSpec": "@openclaw/line@beta",
|
||||
"defaultChoice": "npm",
|
||||
"minHostVersion": ">=2026.4.10"
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
"label": "ACPX Runtime"
|
||||
},
|
||||
"install": {
|
||||
"npmSpec": "@openclaw/acpx",
|
||||
"npmSpec": "@openclaw/acpx@beta",
|
||||
"defaultChoice": "npm",
|
||||
"minHostVersion": ">=2026.4.25"
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import {
|
||||
getOfficialExternalPluginCatalogEntry,
|
||||
listOfficialExternalPluginCatalogEntries,
|
||||
resolveOfficialExternalPluginId,
|
||||
resolveOfficialExternalPluginInstall,
|
||||
} from "./official-external-plugin-catalog.js";
|
||||
@@ -21,4 +22,28 @@ describe("official external plugin catalog", () => {
|
||||
"openclaw-plugin-yuanbao@2.11.0",
|
||||
);
|
||||
});
|
||||
|
||||
it("opts current beta-only official launch packages into prerelease npm tags", () => {
|
||||
expect(
|
||||
resolveOfficialExternalPluginInstall(getOfficialExternalPluginCatalogEntry("acpx")!)?.npmSpec,
|
||||
).toBe("@openclaw/acpx@beta");
|
||||
expect(
|
||||
resolveOfficialExternalPluginInstall(getOfficialExternalPluginCatalogEntry("googlechat")!)
|
||||
?.npmSpec,
|
||||
).toBe("@openclaw/googlechat@beta");
|
||||
expect(
|
||||
resolveOfficialExternalPluginInstall(getOfficialExternalPluginCatalogEntry("line")!)?.npmSpec,
|
||||
).toBe("@openclaw/line@beta");
|
||||
});
|
||||
|
||||
it("keeps Matrix and Mattermost out of the external catalog until cutover", () => {
|
||||
const ids = new Set(
|
||||
listOfficialExternalPluginCatalogEntries()
|
||||
.map((entry) => resolveOfficialExternalPluginId(entry))
|
||||
.filter(Boolean),
|
||||
);
|
||||
|
||||
expect(ids.has("matrix")).toBe(false);
|
||||
expect(ids.has("mattermost")).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user