mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-21 02:06:43 +00:00
* feat: add session discussion panel seam * fix: keep discussion iframe cookie-capable and changelog release-owned * test: cover cookie-capable discussion iframe sandbox * fix: stretch discussion panel host so the embed fills the rail * fix: keep provider failures retryable and probe discussion availability before showing the action * fix: block same-origin discussion embeds, show action on catalog sessions, close stale panel on reconnect * fix: scope discussion probes and panel callbacks to the issuing connection * fix: dedupe in-flight discussion probes per session * fix: retry superseded discussion probes and key-scope panel results * fix: regenerate Swift protocol models and extend advertised-method expectations * style: format chat-pane-header * fix: regenerate Kotlin protocol models and date discussion methods in the 2026.7 train * chore: restore release-owned changelog to main state * chore: keep changelog untouched relative to merge-base
70 lines
1.7 KiB
TypeScript
70 lines
1.7 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { listCoreGatewayMethodMetadata } from "./core-descriptors.js";
|
|
|
|
const CURRENT_TRAIN_METHODS = [
|
|
"question.request",
|
|
"question.waitAnswer",
|
|
"question.resolve",
|
|
"question.get",
|
|
"question.list",
|
|
"session.discussion.info",
|
|
"session.discussion.open",
|
|
"terminal.open",
|
|
"terminal.input",
|
|
"terminal.resize",
|
|
"terminal.close",
|
|
"terminal.attach",
|
|
"terminal.list",
|
|
"terminal.text",
|
|
"terminal.upload",
|
|
"worktrees.list",
|
|
"worktrees.branches",
|
|
"worktrees.create",
|
|
"worktrees.remove",
|
|
"worktrees.restore",
|
|
"worktrees.gc",
|
|
"agents.workspace.list",
|
|
"agents.workspace.get",
|
|
"audit.list",
|
|
"audit.activity.list",
|
|
"tts.speak",
|
|
"environments.list",
|
|
"environments.status",
|
|
"environments.create",
|
|
"environments.destroy",
|
|
"sessions.dispatch",
|
|
"sessions.reclaim",
|
|
"sessions.catalog.list",
|
|
"sessions.catalog.read",
|
|
"sessions.catalog.continue",
|
|
"sessions.catalog.archive",
|
|
"approval.get",
|
|
"approval.resolve",
|
|
"approval.history",
|
|
"migrations.memory.plan",
|
|
"openclaw.chat.history",
|
|
"migrations.memory.apply",
|
|
"gateway.suspend.prepare",
|
|
"gateway.suspend.status",
|
|
"gateway.suspend.resume",
|
|
"ui.command",
|
|
"device.pair.rename",
|
|
] as const;
|
|
|
|
describe("core gateway method release trains", () => {
|
|
it("records a valid train for every method and dates the 2026.7 families", () => {
|
|
const methods = listCoreGatewayMethodMetadata();
|
|
|
|
for (const method of methods) {
|
|
expect(method.since, method.name).toMatch(/^(<=)?\d{4}\.\d{1,2}$/);
|
|
}
|
|
|
|
expect(
|
|
methods
|
|
.filter((method) => method.since === "2026.7")
|
|
.map((method) => method.name)
|
|
.toSorted(),
|
|
).toEqual(CURRENT_TRAIN_METHODS.toSorted());
|
|
});
|
|
});
|