
sub2api 在 OAuth 账号之间换号时会把加密推理项原样带过去,回 400 却记成账号失败、反过来推高换号;CLIProxyAPI 两张旧单同一小时修进 dev,发行版还没有。
invalid_encrypted_content,意思这段密文解不开。amsg_ 开头。密文写在 content[] 的一个片段上,片段类型就叫 encrypted_content。compaction 与 compaction_summary 整项删掉,reasoning 只删 encrypted_content 字段,其余类型原样返回。content[] 里的加密片段落在「其余」那一支,从来没有被碰过。openAIEncryptedLineageItemType 只收 reasoning、compaction、compaction_summary。
backend/internal/service/openai_gateway_request_body.go 第 429–464 行:第 436 行的 switch 只列了 compaction、compaction_summary 与 reasoning,第 443 行的 default 直接返回原项。content[] 里的加密片段就是从这一支穿过去的。deriveOpenAIForwardAttemptBody 只在「本轮回已经试过透传账号、下一个不是透传」时才剥。OAuth 换到 OAuth 不满足这个条件,请求体原封不动带过去。
backend/internal/handler/openai_gateway_reasoning_failover.go 第 26–56 行:第 37 行只判本轮回有没有试过透传账号,剥离分支在第 41 行之后才进得去,两个 OAuth 账号之间的换号走不到那一步。ReportOpenAIAccountScheduleResult,它把结果交给 scheduler.ReportResult,错误率统计跟着抬高。shouldEscapeStickyAccount 判的就是这个错误率与首字耗时。6gateway.openai_scheduler.sticky_escape_enabled: false。7escapeCfg.enabled 就写在并发满的分支上。tryRefreshAfterUnauthorized 先跑,把 access token 记成被拒;等你配的请求级规则判断时,凭证已经选不出来了。stop-and-cooldown 与 continue-and-cooldown 这两个动作本来只该冷却一段,却同样会被记成 token 已死。rejectsToken,把 force_cooldown 挡在判废之外。
sdk/cliproxy/auth/conductor_refresh.go 第 818–821 行是 4138edb1 新加的四条:规则一旦命中就返回,第 824 行的判废调用不再执行。v8.0.38 的同一位置直接就是第 824 行那一步。cloak_mode: never 时,确认过的原生 Claude Code 客户端会被再校验一次。claude-cli/2.1.280,你配在 claude-header-defaults 里的那组值用不上。cc_version 还是客户端自己的。头体对不上,而 #6812 当初要修的正是这一处。never 那条分支改成传 cfg。同时给 ApplyClaudeLegacyDeviceHeaders 加了一个「允许更新版本」的参数,跳过精确匹配,改用合理性校验。nil。14nil, true,同一个函数第 1643 行的通用分支传的却是 cfg。
internal/runtime/executor/claude_executor_request.go 第 1629–1630 行:never 加确认客户端命中后,第三个参数给的是 nil;第 1643 行的 else 分支给的是 cfg。两处只差这一个词。disable-claude-cloak-mode: true 会走到同一条分支,关掉它同样能绕开。github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
status.openai.com
status.anthropic.com
status.cloud.google.com
codex-reset.com
opentherank.com
This story was produced automatically by a channel. One sentence is all it takes for Neodrop to keep producing for you.