diff --git a/CHANGELOG.md b/CHANGELOG.md index 86dda6cdd3b..c8204b9cea4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ Docs: https://docs.openclaw.ai ### Fixes +- Thinking: allow xhigh for `github-copilot/gpt-5.2-codex` and `github-copilot/gpt-5.2`. (#11646) Thanks @seans-openclawbot. - Discord: support forum/media `thread create` starter messages, wire `message thread create --message`, and harden thread-create routing. (#10062) Thanks @jarvis89757. - Web UI: make chat refresh smoothly scroll to the latest messages and suppress new-messages badge flash during manual refresh. - Cron: route text-only isolated agent announces through the shared subagent announce flow; add exponential backoff for repeated errors; preserve future `nextRunAtMs` on restart; include current-boundary schedule matches; prevent stale threadId reuse across targets; and add per-job execution timeout. (#11641) Thanks @tyler6204. diff --git a/src/auto-reply/reply.directive.directive-behavior.accepts-thinking-xhigh-codex-models.e2e.test.ts b/src/auto-reply/reply.directive.directive-behavior.accepts-thinking-xhigh-codex-models.e2e.test.ts index 0598a8bb981..45d5d56bf18 100644 --- a/src/auto-reply/reply.directive.directive-behavior.accepts-thinking-xhigh-codex-models.e2e.test.ts +++ b/src/auto-reply/reply.directive.directive-behavior.accepts-thinking-xhigh-codex-models.e2e.test.ts @@ -154,7 +154,7 @@ describe("directive behavior", () => { const texts = (Array.isArray(res) ? res : [res]).map((entry) => entry?.text).filter(Boolean); expect(texts).toContain( - 'Thinking level "xhigh" is only supported for openai/gpt-5.2, openai-codex/gpt-5.3-codex, openai-codex/gpt-5.2-codex or openai-codex/gpt-5.1-codex.', + 'Thinking level "xhigh" is only supported for openai/gpt-5.2, openai-codex/gpt-5.3-codex, openai-codex/gpt-5.2-codex, openai-codex/gpt-5.1-codex, github-copilot/gpt-5.2-codex or github-copilot/gpt-5.2.', ); }); }); diff --git a/src/auto-reply/thinking.test.ts b/src/auto-reply/thinking.test.ts index 5dd630185c3..f1c6b850440 100644 --- a/src/auto-reply/thinking.test.ts +++ b/src/auto-reply/thinking.test.ts @@ -50,6 +50,11 @@ describe("listThinkingLevels", () => { expect(listThinkingLevels("openai", "gpt-5.2")).toContain("xhigh"); }); + it("includes xhigh for github-copilot gpt-5.2 refs", () => { + expect(listThinkingLevels("github-copilot", "gpt-5.2")).toContain("xhigh"); + expect(listThinkingLevels("github-copilot", "gpt-5.2-codex")).toContain("xhigh"); + }); + it("excludes xhigh for non-codex models", () => { expect(listThinkingLevels(undefined, "gpt-4.1-mini")).not.toContain("xhigh"); }); diff --git a/src/auto-reply/thinking.ts b/src/auto-reply/thinking.ts index 7a6af032cb7..02c12fa9a67 100644 --- a/src/auto-reply/thinking.ts +++ b/src/auto-reply/thinking.ts @@ -26,6 +26,8 @@ export const XHIGH_MODEL_REFS = [ "openai-codex/gpt-5.3-codex", "openai-codex/gpt-5.2-codex", "openai-codex/gpt-5.1-codex", + "github-copilot/gpt-5.2-codex", + "github-copilot/gpt-5.2", ] as const; const XHIGH_MODEL_SET = new Set(XHIGH_MODEL_REFS.map((entry) => entry.toLowerCase()));