
10 月 18 日北京 20 点到 21 点这一个小时:四仓没有新版本;CLIProxyAPI 保存配置与选号的两把锁顺序相反,撞上会把整站冻住、只能重启;sub2api 给上游 402 配了冷却,非池账号要自己开。
commitExecutorState:拿到 h.mu 之后,同一个函数里接着调 manager.RegisterExecutor、manager.Executor、manager.UnregisterExecutor,h.mu.Unlock() 排在这三句之后10。
CLIProxyAPI v8.0.32 的 internal/pluginhost/adapters_executors.go 第 136–182 行:第 140 行取 h.mu,第 173 行在锁内调 manager.RegisterExecutor,第 182 行才放锁。凭证侧那把锁就在第 173 行里面。10availableAuthsForSelector,后者在第 625 行问「插件调度器要不要跨优先级候选」12。pluginScheduler 为空时那一问直接返回 false,走不进插件里。所以只有装了提供调度器能力的插件,才有这条路径。hasPluginScheduler() 先放掉 m.mu.RLock() 再问插件,pluginSchedulerWantsAcrossPrioritiesLocked() 是握着锁问的14。两处差一步,环就出在这一步。reloadConfigAfterManagementSave,文件监听走 applyWatcherConfigUpdate,两条都会进 commitExecutorState9。commitExecutorState 与 pluginIdentityCurrent 是不是各卡一条。h.mu 里只改自己的字段,放锁之后再调 manager;凭证侧先把 schedulerAcross 读到锁外,再传进 availableAuthsForSelector9。payment_required 与截断后的上游原文一起写进结构化原因。状态同时落库与写 Redis 缓存,再打一行 account_temp_unschedulable_40216。payment_required_402_cooldown_minutes 是否大于 017。handleAuthError,也就是永久停用。
backend/internal/service/ratelimit_service.go 第 988–1030 行:第 989 行起取冷却时长(没配就用 30 分钟的常量),第 1000 行池模式直接放行,第 1003 行非池模式要求配置大于 0,第 1010 行起是三类特例的分流。17handleClineError 后返回 false、继续走原路;国产供应商、OpenCode Zen、Command Code 走可恢复的余额处理;OpenAI 的 deactivated_workspace 仍按鉴权错误停用18。temp_unschedulable_rules 兜余额类 402。规则命中就先停调,池模式也生效。payment_required_402_cooldown_minutes: 30,不写就跟今天一样。account_temp_unschedulable_402,看它带的 cooldown_minutes 与 until 两项。
CLIProxyAPI v8.0.32 的 internal/runtime/executor/antigravity_executor_credits.go 第 355–375 行:第 366 行只要 hint.Known 为真就返回,后面第 381 行的刷新锁与第 396 行的带超时刷新都轮不到执行。21INSUFFICIENT_G1_CREDITS_BALANCE,进程此后都认为额度是空的,充值也不会再问一次上游。第 578 行那个「额度回来就清标记」的调用因此永远走不到23。disable-cooling: true,那会让这段判断整段提前返回,代价是这台机器上所有冷却一起关掉。mcp__<server>__<tool>28。tools[] 顺序就改变碰撞结果。
backend/internal/service/gateway_tool_rewrite.go 第 40–105 行:第 41 行的 sync.Once 保证 server 名每个进程只抽一次,第 53 行拼 mcp__<server>__,第 85–95 行先排序再逐个分配别名。28tool_result 与 tool_search_tool_result 里的 tool_name 也一并改了,context_management.edits[].exclude_tools 跟着改,避免上下文清理规则失效26。#6744 会不会有维护者回应、最终修在哪一侧;#8198 合并之后,非池账号的默认值会不会也改成 30 分钟;#6745 用 UpdatedAt 判过期的改法会不会被接受;#8199 与 #8196 两套改法最后留哪一套;CLIProxyAPI dev 那两笔(UA 助手、mDNS)什么时候发版。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
github.com
github.com
github.com
github.com
github.com
github.com
github.com
status.openai.com
status.openai.com
status.anthropic.com
status.cloud.google.com
codex-reset.com
opentherank.com
community.openai.com
reddit.com
reddit.com
reddit.com
This story was produced automatically by a channel. One sentence is all it takes for Neodrop to keep producing for you.