the lane S2 red is a share of routed requests, not a timing flake
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 新手友好度
- 74/100
- Issue 类型
- 缺陷
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- go
- 领域
- testing-qa
调研方向
Start with internal/lane/e2e_test.go, especially lines 449, 467-468, 931, and 945, and run TestS2TheDefaultGoesSlowAndTheRouterMoves. Trace firstsScripted and the TTFT ledger, then add failure output showing each request's lane and ledger belief. Add deterministic coverage for exactly 2 and 3 broken answers, asserting about 79% and 0.0% respectively.
由索引模型根据 Issue 内容生成。
描述
What happens
TestS2TheDefaultGoesSlowAndTheRouterMoves in internal/lane fails when other
suites run beside it. On a quiet box it passes. 316 consecutive runs in
isolation never reproduced it.
That is exactly the shape the repository says to file rather than rerun.
What the red actually means, which is not what it looks like
The assertion at internal/lane/e2e_test.go:467-468 does NOT divide a measured
time. It divides firstsScripted, a lookup into scriptedFirstWorld
(e2e_test.go:945). The wall figures computed at line 449 are logged and
asserted nowhere.
So the test is not timing-sensitive in the way its name suggests. It asserts a
share of requests that were routed to the good lane after the break.
The margin is a cliff, not a slope. Out of 20 routed requests:
| answers from the broken lane | asserted figure |
|---|---|
| 2 | about 79% |
| 3 | exactly 0.0% |
A pass sits ONE request away from that cliff every time it passes. The red means
at least 3 of 20 routed requests reached the broken lane after the break, and
nothing about the failure output says so.
How load gets in
One channel only: the ledger's TTFT: e2eWorld(result.ttft) at
e2e_test.go:931, a measured time multiplied by 100, against a real gap of
8.4ms versus 40ms. Under load the wall p90 moved from 1.0s to 10.4s while the
asserted figure never moved at all, which is why the two look unrelated until
you follow the ledger.
Replication
Run the lane suite with the box under load, for instance a full internal/tui3
run beside it. It is not reliable, which is the point. In isolation it is green
316 times out of 316.
Acceptance
Not "it stops failing". A rerun proves nothing here.
- The failure output prints the per-request lane sequence and the ledger's
belief at each step. Today a reader cannot tell 3-of-20 from 10-of-20. - A deterministic test that drives the ledger to exactly 2 and exactly 3 broken
answers and asserts 79% and 0.0%, so the cliff is written down rather than
discovered. - Only then, whatever fix follows.
Not a fix
task/lane-s2-under-load at a41e4abc5 is an unfinished edit from an agent that
died mid-change. It is parked, unmerged, and should not be read as a proposal.
- 主要语言
- Go
- 星标
- 115
- 派生
- 14
- 平均合并
- 9 小时 35 分钟
- 30 天内合并 PR
- 752
环境准备
我们还没有检查这个项目的环境配置文件。先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
Agent-Field/CodeAF 的其他 Issue
-
area:chat bug sev:papercut
难度 2/5 1-3 小时 新手友好度 86/100
Agent-Field/CodeAF#1592 ·
维护者通常 1 天内回复
-
area:headless bug sev:critical
难度 2/5 1-3 小时 新手友好度 88/100
Agent-Field/CodeAF#1566 ·
维护者通常 1 天内回复
-
area:chat bug sev:critical
难度 2/5 1-3 小时 新手友好度 82/100
Agent-Field/CodeAF#1548 · 1 条评论 ·
维护者通常 1 天内回复
-
area:chat feature
难度 2/5 1-3 小时 新手友好度 88/100
Agent-Field/CodeAF#1510 ·
维护者通常 1 天内回复
-
area:tests bug
难度 2/5 1-3 小时 新手友好度 82/100
Agent-Field/CodeAF#1489 ·
维护者通常 1 天内回复
查看 Agent-Field/CodeAF 的全部 Issue
相似的 Issue
-
area/proxy kind/bug priority/backlog triage/accepted
难度 2/5 1-3 小时 新手友好度 68/100
lexfrei/cloudflare-tunnel-gateway-controller#840 ·
维护者通常 1 天内回复
-
kind/bug
难度 2/5 1-3 小时 新手友好度 72/100
维护者通常 7 天内回复
-
bug needs triage
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
bug P2 reliability
难度 2/5 1-3 小时 新手友好度 88/100
afreidah/s3-orchestrator#1564 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 84/100
blinklabs-io/gouroboros#2577 ·
维护者通常 1 天内回复