Repository navigation
Conversation
|
ework接单 |
(ai: vllm/qwen3.8-27b) 查重: 不重复。 关联项核对:
标签: bug + codex + scope/kernel + p2(缺陷 PR;生产证据来自 Codex Desktop/Responses;动的是 preflight 压缩引擎核心;p2=能用但超窗重试会被反复转发烧钱,有绕行=裁剪 payload)。 审核进行中,正在做:①新回归测试在 base |
…al 413 gate The !locallyRejected gate landed with only positive-direction coverage (suppression + fitting passthrough). Add the two scoping rows per the gate-test discipline (ranxianglei#3617): a stored refusal must NOT suppress the estimate-only probe when the model differs or when the request arbitrates at a larger window than the refused one. Both rows verified to fail against an over-suppressed predicate.
(ai: vllm/qwen3.8-27b) 审查结论:可合并(未发现缺陷;顺手直接修了一处测试覆盖缺口,已推送到 PR 分支)。全量回归以远程 CI 为准。 结构化八问
行为变更披露:旧行为 → 本地 413 后若基线降级为 estimate,下一次超窗请求可经 estimate-only probe 被转发一次;新行为 → 存在匹配拒绝记录(同 origin+model、窗口不大于被拒时)期间,四个投机性转发全部抑制,只走折叠或 fail-fast 413。这正是修复目标本身。 独立验证证据
关于 #2928 的发现(非本 PR 缺陷)#2928 的分支基于较旧的 master(早于 #2847/#3146 合入)。compose 验证显示两者语义兼容(doomed-probe 分支可并集合并),但 #2928 合入后其作者需要更新:issue2490-d / issue2915-cross-origin 中三处 502→413 状态期望,以及 issue2847 的两处消息断言(其 fixture 恰好有 11 个可折叠 range,在 #2928 下走折叠路径;413 / retryable:false / 绝不转发的契约完整保留,仅措辞从 byte-math 变为 post-fold futility 判决)。建议本 PR 先行合并,或 #2928 rebase 到包含本 PR 的 master 后再合。 结论:可合并。 CI 绿后建议直接合并本 PR;#2928 可随后 rebase 跟进。 |
Fixes #3846
After local preflight 413, rebuilding can replace the trusted token baseline with an estimate. A later request then re-enters estimate-only arbitration and forwards the oversized payload. Remember local refusals independently of billing evidence, scoped to upstream origin/model and the refused window.
Gate all four arbitration escapes after a matching refusal: estimate-only probe, image arbitration, rebuilt-view divergence, and fresh-session probe. A tighter window retains the refusal; a different origin/model or larger window can arbitrate independently. Payloads that fit continue normally. Metadata uses existing session persistence; no schema version, configuration, kernel, or release changes.
Adds a complete HTTP regression: seed 200 -> local 413 -> estimate demotion + metadata JSON round-trip + reconnect -> three 413 retries with no extra upstream streams -> trimmed request 200. Original code returns 200 on the first oversized retry.
Related: #2830; complementary to open PR #2928 rather than replacing its fold-first change.
Validation on master
85c27f0e:Preflight is shared by plugin and proxy modes; this only changes eligibility for forwarding above the current window after a prior local refusal. It does not fabricate upstream usage. Full-suite verdict is left to GitHub CI.