Fix Codex OAuth GPT-5.4 using wrong Responses endpoint#12
Closed
Fix Codex OAuth GPT-5.4 using wrong Responses endpoint#12
Conversation
…enclaw#25557) Merged via squash. Prepared head SHA: ea99040 Co-authored-by: rodrigouroz <384037+rodrigouroz@users.noreply.github.com> Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com> Reviewed-by: @jalehman
* fix(ios): hide quick setup when gateway is configured * fix: note ios quick setup gating for configured gateways (openclaw#38964) (thanks @ngutman)
…law#32352) * kilocode: dynamic model discovery, kilo/auto default, cooldown exemption - Replace 9-model hardcoded catalog with dynamic discovery from GET /api/gateway/models (Venice-like pattern with static fallback) - Default model changed from anthropic/claude-opus-4.6 to kilo/auto (smart routing model) - Add createKilocodeWrapper for X-KILOCODE-FEATURE header injection and reasoning.effort handling (skip for kilo/auto) - Add kilocode to cooldown-exempt providers (proxy like OpenRouter) - Keep sync buildKilocodeProvider for onboarding, add async buildKilocodeProviderWithDiscovery for implicit provider resolution - Per-token gateway pricing converted to per-1M-token for cost fields * kilocode: skip reasoning injection for x-ai models, harden discovery loop * fix(kilocode): keep valid discovered duplicates (openclaw#32352, thanks @pandemicsyn) * refactor(proxy): normalize reasoning payload guards (openclaw#32352, thanks @pandemicsyn) * chore(changelog): note kilocode hardening (openclaw#32352, thanks @pandemicsyn and @vincentkoc) * chore(changelog): fix kilocode note format (openclaw#32352, thanks @pandemicsyn and @vincentkoc) * test(kilocode): support auto-model override cases (openclaw#32352, thanks @pandemicsyn) * Update CHANGELOG.md --------- Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
Merged via squash. Prepared head SHA: 0883654 Co-authored-by: mukhtharcm <56378562+mukhtharcm@users.noreply.github.com> Co-authored-by: mukhtharcm <56378562+mukhtharcm@users.noreply.github.com> Reviewed-by: @mukhtharcm
* Auto-reply: scope allowlist store writes * Tests: cover allowlist store account scoping * Changelog: note allowlist store scoping hardening
Signed-off-by: sallyom <somalley@redhat.com> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Land openclaw#39104 by @jakepresent. Co-authored-by: Jake Present <jakepresent@microsoft.com>
…w#38889) Land openclaw#38889 by @gambletan. Co-authored-by: gambletan <ethanchang32@gmail.com>
Land openclaw#39105 by @akropp. Co-authored-by: Adam Kropp <adam@thekropp.com>
…penclaw#39113) Co-authored-by: scoootscooob <zhentongfan@gmail.com>
…ter injection (openclaw#39116) Co-authored-by: Bill <gsamzn@gmail.com>
…ction (openclaw#39123) Co-authored-by: MumuTW <clothl47364@gmail.com>
Co-authored-by: john <john.j@min123.net>
…lds (openclaw#38892) Co-authored-by: giumex <giuliano.messina@gmail.com>
…lures (openclaw#39133) Co-authored-by: scoootscooob <zhentongfan@gmail.com>
…enclaw#39076) Co-authored-by: ademczuk <andrew.demczuk@gmail.com>
* fix(line): enforce requireMention gating in group message handler
* fix(line): scope canDetectMention to text messages, pass hasAnyMention
* fix(line): fix TS errors in mentionees type and test casts
* feat(line): register LINE in DOCKS and CHAT_CHANNEL_ORDER
- Add "line" to CHAT_CHANNEL_ORDER and CHAT_CHANNEL_META in registry.ts
- Export resolveLineGroupRequireMention and resolveLineGroupToolPolicy
in group-mentions.ts using the generic resolveChannelGroupRequireMention
and resolveChannelGroupToolsPolicy helpers (same pattern as iMessage)
- Add "line" entry to DOCKS in dock.ts so resolveGroupRequireMention
in the reply stage can correctly read LINE group config
Fixes the third layer of the requireMention bug: previously
getChannelDock("line") returned undefined, causing the reply-stage
resolveGroupRequireMention to fall back to true unconditionally.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix(line): pending history, requireMention default, mentionPatterns fallback
- Default requireMention to true (consistent with other channels)
- Add mentionPatterns regex fallback alongside native isSelf/@ALL detection
- Record unmentioned group messages via recordPendingHistoryEntryIfEnabled
- Inject pending history context in buildLineMessageContext when bot is mentioned
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* test(line): update tests for requireMention default and pending history
- Add requireMention: false to 6 group tests unrelated to mention gating
(allowlist, replay dedup, inflight dedup, error retry) to preserve
their original intent after the default changed from false to true
- Add test: skips group messages by default when requireMention not configured
- Add test: records unmentioned group messages as pending history
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix(line): use undefined instead of empty string as historyKey sentinel
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix(line): deliver pending history via InboundHistory, not Body mutation
- Remove post-hoc ctxPayload.Body injection (BodyForAgent takes priority
in the prompt pipeline, so Body was never reached)
- Pass InboundHistory array to finalizeInboundContext instead, matching
the Telegram pattern rendered by buildInboundUserContextPrefix
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix(line): pass agentId to buildMentionRegexes for per-agent mentionPatterns
- Resolve route before mention gating to obtain agentId
- Pass agentId to buildMentionRegexes, matching Telegram behavior
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix(line): clear pending history after handled group turn
- Call clearHistoryEntriesIfEnabled after processMessage for group messages
- Prevents stale skipped messages from replaying on subsequent mentions
- Matches Discord, Signal, Slack, iMessage behavior
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* style(line): fix import order and merge orphaned JSDoc in bot-handlers
- Move resolveAgentRoute import from ./local group to ../routing group
- Merge duplicate JSDoc blocks above getLineMentionees into one
Addresses Greptile review comments r2888826724 and r2888826840 on PR openclaw#35847.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix(line): read historyLimit from config and guard clear with has()
- bot.ts: resolve historyLimit from cfg.messages.groupChat.historyLimit
with fallback to DEFAULT_GROUP_HISTORY_LIMIT, so setting historyLimit: 0
actually disables pending history accumulation
- bot-handlers.ts: add groupHistories.has(historyKey) guard before
clearHistoryEntriesIfEnabled to prevent writing empty buckets for
groups that have never accumulated pending history (memory leak)
Addresses Codex review comments r2888829146 and r2888829152 on PR openclaw#35847.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* style(line): apply oxfmt formatting to bot-handlers and bot
Auto-formatted by oxfmt to fix CI format:check failure on PR openclaw#35847.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix(line): add shouldLogVerbose to globals mock in bot-handlers test
resolveAgentRoute calls shouldLogVerbose() from globals.js; the mock
was missing this export, causing 13 test failures.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* Address review findings for openclaw#35847
---------
Co-authored-by: Kaiyi <me@kaiyi.cool>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Yi-Cheng Wang <yicheng.wang@heph-ai.com>
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com>
* fix: restore strip-ansi and typecheck fixtures * test: normalize windows install path assertions
…h push-based flow (openclaw#39089) * fix(cron): eliminate double-announce and replace delivery polling with push-based flow - Set deliveryAttempted=true in announce early-return paths (active-subagent suppression and stale-interim suppression) so the heartbeat timer no longer fires a redundant enqueueSystemEvent fallback (double-announce bug). - Refactor waitForDescendantSubagentSummary to use event-based agent.wait RPC calls instead of a 500ms busy-poll loop. Each active descendant run is now awaited concurrently via Promise.allSettled, and only a short bounded grace period (5s) remains to capture the cron agent's post-orchestration synthesis. Eliminates O(n*timeoutMs/500ms) gateway calls and wasted wall-clock time. - Add FAST_TEST_MODE (OPENCLAW_TEST_FAST=1) to subagent-followup.ts to keep the grace-period tests instant in CI. - Add comprehensive tests for the new waitForDescendantSubagentSummary behaviour (push-based wait, error resilience, NO_REPLY handling, multi-descendant waits). * fix: prep cron double-announce followup tests (openclaw#39089) (thanks @tyler6204)
… tool (openclaw#33953) Verified: - pnpm install --frozen-lockfile - pnpm build - pnpm check - pnpm test:macmini Co-authored-by: tars90percent <252094836+tars90percent@users.noreply.github.com>
Open
Owner
Author
|
Superseded by #25. Closing to reduce duplication and keep the queue clean. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes openclaw#38706.
What changed
Why
Codex OAuth models must hit the Codex Responses endpoint. Using the generic Responses endpoint routes the request to the wrong backend and causes failures.
Details
https://api.openai.com/v1/responseshttps://api.openai.com/v1/codex-responsesTests
node scripts/test-parallel.mjs src/agents/model-compat.test.ts src/agents/pi-embedded-runner/model.test.ts src/agents/pi-embedded-runner-extraparams.test.ts