Repository navigation
[PR] fix: preflight fail-fast diagnoses — name headroom-reserved walls as the effective input budget, count attempted summary calls - #4618
Conversation
…the effective input budget, count attempted summary calls (#3663)
📦 Built Package ArtifactBranch: Latest build — install this exact versionnpm install -g [email protected]This exact version is immutable and reproducible. The rolling Recent builds (commit → version)
Download artifact
tar xzf billion-context-pr4618.tgz
npm install -g packageInstall instructions are refreshed on each push. |
(ai: vllm-qwen/qwen3.8-27b) CI auto-fix 车道判定(转发指向旧 head 52bda58,unused-exports):无需再推任何提交——该红已在分支上修掉且已转绿,剩余红全部是继承性 master 红。 独立核实(不照抄既有结论,live API + 本地复跑):
八问
剩余红分账:12 个 test 分片 = 继承性 LIVE_FILES tripwire(#4599 盘点第 2 条,归 #4606/#1248)。处置:等 #4606 合并 → 本分支 rebase 重触发即全绿;rebase 时丢弃与 #4606 重复的 de-export commit。#4599 已有本帖两次分账记录(floor 33/34),不再重复评论。 结论:本车道目标检查(unused-exports)在现行 head 已绿,auto-fix 完成;PR 整体转绿唯一闸门是 owner 合并 #4606,之后 rebase 即可,无需其他动作。 |
(ai: vllm-qwen/qwen3.8-27b) 查重: 不重复 —— 本 PR 是 #3663 facet B+C 的唯一在途修复(A/D 已由已合并的 #3650/#3696 落地);其余在途 preflight PR(#3659 外部摘要诊断、#4294 fit 即停折、#4046 fold 持久化、#3590 marathon 墙钟)机制面均不重叠。 独立审核结论(对 diff 逐段重读,非转述 issue 侧分析)① 方向关:两个缺陷在 master 上独立复现成立,PR 打点准确。
② 回归审查(逐项审过的既有行为及结论):
③ 代码审查发现(两条非阻塞边角,均非回归): 新标签在两个稀有角落会把预留归因到错误的设置项——
④ 测试有效性: 5 行全部有牙——真值表正例+5 负门逐字节断言;端到端两方向(带 max_tokens 出 413 新标签 / 不带则旧标签且禁止出现 budget 字样,经真实 startServer 全链路);失败 dispatch 可见性( ⑤/⑤b diff 与代码整洁: 4 文件 +385/−7,每行均服务于 B/C;两个 commit 标注清晰(修复 + 继承红小修独立成 commit)。命名达意(attemptsUsed vs callsUsed、headroomShrunk)、注释讲为什么且引号齐全(#3663/#736/#3450)、无死代码、风格一致。通过。 CI 状态(head d146325): unused-exports 与全部静态门禁/guards/docs/lock-sync 绿;剩余 11 个 test 分片红 = master 继承的 LIVE_FILES tripwire(与 master tip 同一签名,分片跑测试前即退出,已在 #4599 登记分账),等 #4606 合入后 rebase 重触发即绿,非本 PR 内容问题。 结构化八问
行为变更披露(仅措辞,PR 正文表格属实):① 墙为 headroom 预留所设时,标题从 判定:内容面可合——方向正确、回归面逐项守住、测试有牙、diff 干净;唯二注意项是 ③ 的两条边角归因边界(建议记录,不阻塞)。合并路径:#4606 合入 → 本分支 rebase(丢弃 d146325 重复小修)→ 重触发全绿 → 人工合并。 |
(ai: vllm-qwen/qwen3.8-27b) CI auto-fix 车道判定(attempt 2/2,head d146325,11 个 test 分片红):继承性 master 红,本车道不修——修复已在途(#4606),等合并后 rebase 即全绿。判定依据与上轮相同但独立复核过: 独立核实(抽 3 个失败分片日志跨平台覆盖:ubuntu-22-1、windows-22-4
八问
结论:attempt 2/2 用尽,判定为「非本车道小修」,停手。PR 转绿唯一闸门 = owner 合并 #4606;合并后我(或下条通知)rebase 重触发即可,无需其他动作。#4599 已有本 PR 分账记录(floors 33/34),不重复评论。 |
(ai: vllm-qwen/qwen3.8-27b) 本轮工作收口确认(完整审核结论见上条评论):
当前状态:内容面可合,停手等外部闸门——owner 合并 #4606 后 rebase 本分支(丢弃 d146325 重复小修)→ 重触发全绿 → 人工合并。无需其他动作。 |
…ot this PR's master 146b34f fails the unused-exports gate on this exact line (INTERNAL_ONLY src/agent/client-build-note.ts: ClientBuildCheck): the type-only export #4545 introduced was missed by the 4d34abf de-export sweep. This PR touches none of it — every PR rebased past that master inherits the red (#4599 storm log). Same one-word fix as #4606 commit 1 and the in-branch precedents (#4607/#4595/#4540/#4618/#4622): drop the leading export on a symbol referenced only within its own file. Drop this commit when rebasing after #4606 merges.
…elp-merge sweep)
…elp-merge sweep)
…elp-merge sweep)
…elp-merge sweep)
master window commits 293ae65/de5e03659 bumped kernel/package.json to 0.0.165 without regenerating the lockfiles; lock-sync re-resolution then rewrites the stale recorded versions (root 0.0.163, kernel 0.0.164) and fails. Pure recorded-version sync via npm install --package-lock-only; no dependency or semantic change.
Closes #3663
What this fixes (diagnostics only — no overflow-check or metadata change)
Two of the four diagnostic defects reported in #3663 were still open on master after #3650/#3696 landed (facets A and D are fixed there — verified in-thread):
B — wall mislabeled. The preflight fail-fast headline said
… exceeds the model window Neven when N was bili's own OUTPUT-HEADROOM-reserved budget (native window − min(max_tokens, compress.outputHeadroomMaxPct × window); handle.ts rewrites modelContextLimit in place and records no shrink reason). The reporter's case: native 272000, reserved 68000, cited wall 204000 labeled "the model window". New exported helper buildEffectiveWallClause labels exactly the headroom shape asthe effective input budget L (model window N, R tokens reserved for model output via compress.outputHeadroomMaxPct); every other shape (no reservation, operator/codex shrink, stated-wall overflow arm binding, unknown native window) keeps the historical wording byte-for-byte.C — failed distillation attempts invisible. The tier-recovery detail counted only COMPLETED distillations (callsUsed), so a recovery whose summarizer failed/timed out read "0 summary call(s)" while the logs show the attempts happened. attemptTierRecovery now also counts committed dispatches (attemptsUsed, incremented before the summarizeRange await so throw/unusable/drift/refuse all count); the detail states
N of M attempted summary call(s) completedonly when some dispatch failed — byte-identical to the historical phrasing when every dispatched call completed.Behavior changes (user-visible wording)
exceeds the model window Lexceeds the effective input budget L (model window N, R tokens reserved for model output via compress.outputHeadroomMaxPct)(N summary call(s), net …)(N of M attempted summary call(s) completed, net …)Both changes are additive diagnostics: no threshold, default, decision quantity, wire shape, or overflow check changed. This is NOT a weakening of any overflow gate and does not touch model metadata.
Config surface
None added/renamed/re-semantics'd. The message merely NAMES the existing compress.outputHeadroomMaxPct setting.
Tests