Repository navigation
fix(acp-bridge): deflake the exhaustive UTF-16 byte-estimate test (#10529) #10532
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 3 commits
a623924
add1021
9da9722
ed03500
ccbcde4
a8394bd
ac4b2a4
66882c2
50447e2
62162ce
18aaa8f
964fb72
8cae3ac
3f56e9a
323281f
4c06d54
049ef40
5dcf629
488a1d9
4e8d80b
75ea637
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -8,14 +8,17 @@ import { describe, expect, it, vi } from 'vitest'; | |
| import { estimateJsonStringBytes } from './json-string-bytes.js'; | ||
|
|
||
| describe('estimateJsonStringBytes', () => { | ||
| // The exhaustive 65,536-iteration sweep spends most of its time in | ||
| // per-iteration assertion overhead, which exceeds vitest's default 5s | ||
| // timeout on slow or contended CI runners. | ||
| it('matches JSON.stringify UTF-8 bytes for every UTF-16 code unit', () => { | ||
| for (let code = 0; code <= 0xffff; code++) { | ||
| const value = String.fromCharCode(code); | ||
| expect(estimateJsonStringBytes(value, Number.MAX_SAFE_INTEGER)).toBe( | ||
| Buffer.byteLength(JSON.stringify(value)), | ||
| ); | ||
| } | ||
| }); | ||
| }, 60_000); | ||
|
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Disposition: escalated to a maintainer — the finding is verified, but neither offered remediation is implementable by this bot, so this thread stays open. The finding was re-verified against the code at HEAD this round: this PR's diff touches only Why this round implements neither offered remediation:
Question for the maintainer: how should the false linkage be repaired — (a, recommended) edit the PR body to drop 中文说明处置:已升级给维护者——该发现经核实成立,但两种补救方式机器人均无法实施,因此本线程保持打开。 本轮已在 HEAD 代码上复核该发现:本 PR 的差异只触碰 本轮为何不实施任何一种补救方式:
请维护者决策: 应如何修复错误关联——(a,推荐)编辑 PR 正文移除
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Disposition: escalated to a maintainer — round-2 re-verification confirmed, but neither offered remediation is implementable by this bot, so this thread stays open. The round-2 evidence was independently confirmed against the local tree this round: Why this round implements neither offered remediation:
Question for the maintainer: how should the false linkage be repaired — (a, recommended) edit the PR body to drop 中文说明处置:已升级给维护者——第 2 轮的复核证据已确认,但两种补救方式机器人均无法实施,因此本线程保持打开。 本轮已在本地代码树上独立确认第 2 轮的证据: 本轮为何不实施任何一种补救方式:
请维护者决策: 应如何修复错误关联——(a,推荐)编辑 PR 正文移除
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Disposition: escalated to a maintainer — the round-3 re-verification was independently confirmed this round; still not implementable by this bot, so this thread stays open. Re-verified against HEAD
Why neither remediation changed status this round:
Question for the maintainer (unanswered since round 1): repair the false linkage by (a, recommended) editing the PR body to drop 中文说明处置:升级给维护者——第 3 轮的复核本轮已独立确认;本机器人仍无法实施,线程保持打开。 已在 HEAD
本轮两种补救方式状态不变的原因:
请维护者决策(自第 1 轮起未获答复): 以如下方式修复错误关联——(a,推荐)编辑 PR 正文移除
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Round 4: re-verified at HEAD Verified at this HEAD:
New CI evidence: run 33321057659, Why nothing was implemented: both remediations remain outside this loop's reach. Option A (retarget: deflake the heartbeat suite) lives in the protected 中文说明第 4 轮:已在 HEAD 在当前 HEAD 上核实:
新的 CI 证据: run 33321057659 中 未实施任何修改的原因: 两种补救方式都超出本循环的能力范围。方案 A(重新对准:为心跳套件消抖)位于受保护的
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Disposition: escalated to a maintainer — the round-5 re-verification was independently confirmed at the exact HEAD your ledger assessed; still not implementable by this bot, so this thread stays open. Re-verified against HEAD
New CI evidence this round: at this HEAD, run 33328773311's Why nothing was implemented: both remediations remain outside this loop's reach. Option A (retarget: deflake the heartbeat suite) lives in the protected Question for the maintainer (unanswered since round 1): repair the false linkage by (a, recommended) editing the PR body to drop 中文说明处置:升级给维护者——第 5 轮的复核已在你们的台账所评估的确切 HEAD 上独立确认;本机器人仍然无法实施,因此本线程保持打开。 已在 HEAD
本轮新的 CI 证据: 在本 HEAD 上,运行 33328773311 的 为何未实施任何修改: 两种补救方式仍然都在本循环的能力之外。方案 A(重新对准:为心跳套件消抖)位于受保护的 给维护者的问题(自第 1 轮起未获答复): 请以以下方式之一修复错误关联:(a,推荐) 编辑 PR 正文移除
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Disposition: still escalated to a maintainer — round-6 re-verification confirms the finding at the post-merge HEAD; neither remediation is implementable by this loop, so the thread stays open. Re-verified at post-merge HEAD
New this round — root cause of the five red checks, fixed by merging main. Run 33354030402 (03:30Z) failed while main itself was red: Why nothing was implemented for the finding itself: both remediations remain outside this loop's reach. Option A (retarget: deflake the heartbeat suite) lives in the protected Question for the maintainer (unanswered since round 1): repair the false linkage by (a, recommended) editing the PR body to drop 中文说明处置:继续升级给维护者——第 6 轮复核在合并后的 HEAD 上确认该发现仍然成立;两种补救方式本循环均无法实施,因此线程保持打开。 已在合并后的 HEAD
本轮新进展——五个红色检查的根因,已通过合并 main 修复。 运行 33354030402(03:30Z)失败时 main 本身是红的: 为何未就该发现本身实施任何修改: 两种补救方式仍然都在本循环的能力之外。方案 A(重新对准:为心跳套件消抖)位于受保护的 给维护者的问题(自第 1 轮起未获答复): 请以以下方式之一修复错误关联:(a,推荐) 编辑 PR 正文移除
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Disposition: still escalated to a maintainer — the round-7 re-verification is independently confirmed at HEAD Re-verified this round at HEAD
Why nothing was implemented: both remediations remain outside this loop's reach, as in every prior round. Option A (retarget: deflake the heartbeat suite) lives in the protected Question for the maintainer (open since round 1): (a, recommended) edit the PR body to drop 中文说明处置:继续升级给维护者——第 7 轮的复核已在 HEAD 本回合已在 HEAD
为何未实施任何修改: 与之前每一轮相同,两种补救方式都在本循环的能力之外。方案 A(重新对准:为心跳套件消抖)位于受保护的 给维护者的问题(自第 1 轮起开放): (a,推荐) 编辑 PR 正文移除
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Disposition: still escalated to a maintainer — the round-8 re-verification (now from the run's raw job log) is independently confirmed at HEAD Re-verified this round at HEAD
Why nothing was implemented: both remediations remain outside this loop's reach, as in every prior round. Option A (retarget: deflake the heartbeat suite) lives in the protected Agreement recorded: your comment concedes "neither remediation is implementable by the bot loop — this remains a maintainer decision", and both round-7/8 review bodies recommend Question for the maintainer (open since round 1): (a, recommended) edit the PR body to drop 中文说明处置:继续升级给维护者——第 8 轮的复核(本轮已取自该运行的原始任务日志)已在 HEAD 本回合已在 HEAD
为何未实施任何修改: 与之前每一轮相同,两种补救方式都在本循环的能力之外。方案 A(重新对准:为心跳套件消抖)位于受保护的 共识记录: 你的评论自己也承认"两种补救措施均非机器人循环所能实施——这仍是 maintainer 的决定";第 7/8 轮的评审正文也都建议 给维护者的问题(自第 1 轮起开放): (a,推荐) 编辑 PR 正文移除
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Disposition: escalated to a maintainer — verified real at HEAD Re-verified this round at the exact HEAD review round 11 assessed:
Why this stays a maintainer decision: the recommended remediation — dropping The standalone deflake itself remains valid and green: at HEAD Question for the maintainer (open since round 1, now narrowed): 中文说明处置:升级给维护者——已在 HEAD 本回合已在第 11 轮评审所评估的同一 HEAD 上复核:
为何仍属维护者决策:推荐的补救方式——移除 独立消抖本身仍然有效且为绿:在 HEAD 给维护者的问题(自第 1 轮起开放,现已收窄):
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Confirmed — agreed, and acted on as far as this bot can reach with an additive commit. The false certification had three carriers: the PR body ( The remaining fix is GitHub metadata this bot cannot write (no credentials in this path): a maintainer please 中文说明已确认——认同该发现,并已在本机器人通过追加式提交所能触及的范围内处理。该错误认证有三个载体:PR 正文( 剩余修复是本机器人无法写入的 GitHub 元数据(此路径无凭据):请维护者执行 |
||
|
|
||
| it('matches JSON.stringify for paired surrogates and mixed escaping', () => { | ||
| const samples = [ | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Verified as real; escalated — the fix is PR metadata, which this round cannot write.
Confirmed against this checkout, not just the report:
.github/scripts/autofix-status-heartbeat.test.mjs:919is the subteststamps each tick in flight around the gh call and clears it after, andci.yml:739runs it as its ownRun .github/scripts helper testsstep ($HELPER_TESTS,ci.yml:82) ahead of the Vitest step that executes this PR's test. A failure there aborts the job, so the Vitest step is skipped — this change cannot have fixed that run.git diff origin/main...HEAD --statis one file,packages/acp-bridge/src/json-string-bytes.test.ts(+10/-3).grep -rn "10529"over the repo returns nothing, so the certification lives only in the PR title/body on GitHub.Why no commit: the finding's own remediation is "PR-metadata bookkeeping only, no code change", and @wenshao's round-2 verification says "drop
Fixes #10529(a plain reference is fine). Then merge." The shipped assert-once rewrite is correct and stays as it is. This mode's agent has no GitHub credentials (GITHUB_TOKEN/GH_TOKEN/CI_DEV_BOT_PATunset), and thereview-addresspath consumes no PR-metadata file —pr-title.txt/pr-body.mdare read only bygh pr createin the develop-issue publish job (qwen-autofix.yml:1543-1544); the autofix workflow contains nogh pr edit. So writing them here would produce nothing.Applying it needs one
gh pr edit 10532:Title, minus the trailing reference:
Both body sections, with the closing keyword removed from each — GitHub parses closing keywords anywhere in the body, so removing one leaves the certification live:
The remaining stale sections the finding names ("What this PR does", Test Plan step 3, Evidence, Risk) still describe the superseded 60s timeout raise. A complete paste-ready replacement body describing the assert-once change that actually ships is in this round's report comment on the PR.
Thread intentionally left open: the finding is not resolved in code, so resolving it would hide an unaddressed Critical.
经复核属实;已上报——修复对象是 PR 元数据,本轮无法写入。
对照当前 checkout 确认(不只是照抄报告):
.github/scripts/autofix-status-heartbeat.test.mjs:919就是子测试stamps each tick in flight around the gh call and clears it after;ci.yml:739以独立的Run .github/scripts helper tests步骤运行它($HELPER_TESTS,见ci.yml:82),位于执行本 PR 测试的 Vitest 步骤之前。该步骤失败会中止整个 job,Vitest 步骤因此被跳过——本改动不可能修复那次运行。git diff origin/main...HEAD --stat只有一个文件packages/acp-bridge/src/json-string-bytes.test.ts(+10/-3)。对仓库执行grep -rn "10529"无任何匹配,说明该认证只存在于 GitHub 上的 PR 标题/正文中。为何没有提交:该发现自身写明的修复方式是 "仅 PR 元数据操作,无需代码改动",@wenshao 的第 2 轮验证也写明 "drop
Fixes #10529(a plain reference is fine). Then merge."(去掉Fixes #10529,普通引用即可,然后合入。)实际提交的 assert-once 重写是正确的,保持原样。本模式的 agent 没有任何 GitHub 凭据(GITHUB_TOKEN/GH_TOKEN/CI_DEV_BOT_PAT均未设置),而review-address路径不消费任何 PR 元数据文件——pr-title.txt/pr-body.md只在 develop-issue 发布 job 的gh pr create中被读取(qwen-autofix.yml:1543-1544);整个 autofix 工作流中没有gh pr edit。因此在这里写出这两个文件不会产生任何效果。要落实它,只需一条
gh pr edit 10532:标题去掉末尾的 issue 引用:
两处正文章节都要移除关闭关键字——GitHub 会解析正文任意位置的关闭关键字,只移除一处,认证仍然有效。(两段替换文本见上方英文区块中的
## Linked Issues与## 关联 Issue。)该发现点名的其余过时章节("What this PR does"、Test Plan 第 3 步、Evidence、Risk)仍在描述已被替换的 60 秒超时上调。一份可直接整段粘贴、描述实际提交的 assert-once 改动的完整替换正文,已放在本轮发到 PR 上的报告评论中。
线程刻意保持开放:该发现并未在代码中被解决,关闭它会掩盖一条未处理的 Critical。