Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/EVIDENCE.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ R1 固定总出口的源码为 `ce9b24d`,早期 `2dc8d6d` / `9b16acc` 仍分
| 原生命周期探针重复与控制台测试后采样(#145 未关闭) | [固定结果](../experiments/conpty/results/2026-10-29-probe-repeat-r145/README.md)、[验证身份](../experiments/conpty/results/2026-10-29-probe-repeat-r145/validation.json) | 隔离重复 40×4=160 会话 0 红;先跑 conpty_ctrl_c/conpty_margin 后采样 20×4=80 会话,1 红但 resize 回复正确(resized=1、120x40、exit 37),原因是会话后线程基线 4→6 超过 1s 结算窗口。旧尺寸回复仍未复现;该线程稳态红归 #38 族,不并入 #145 根因。 |
| 持续 cmd 输出与原始 Ctrl-C 回归(#36 未关闭) | [受监督入口](../experiments/conpty/README.md#持续-cmd-输出与-ctrlc-独立回归)、[三次 fresh 公开记录及本地字节复核](../experiments/conpty/results/2026-10-26-ctrl-c-retest/validation.json) | 原百万次输出、单次 ETX、五秒期限和退出 37 保留;三次 fresh 原始字节/Job0 本地重算。后续成功未解释历史失败,未改产品 Ctrl-C 路径。 |
| WSL 尺寸标记观察窗口(#80 未关闭,stage 5 支线已修) | [成因与修法记录](../experiments/shell/results/2026-10-31-wsl-size-window/README.md)、[固定验证记录](../experiments/shell/results/2026-10-31-wsl-size-window/validation.json) | 失败作业 124536048854 的 185B 窗口含命令回显 + `ESC[10;1H` + 标记;oracle 的三条 CUP 合同禁止把该定位当边界,故改为在场景层重开观察窗口。修前该作业红在 stage 5、修后同一回归绿,差异仅一处。**不构成本项原始 hosted stage-6 事件的因果证据**,故 #80 保持开放 |
| 三类持续未复现项的量化批次(#144 / #145 / #160) | [批次记录](../experiments/shell/results/2026-10-31-reliability-batches/README.md)、[固定验证记录](../experiments/shell/results/2026-10-31-reliability-batches/validation.json) | 同一 artifact 集:425 个沉降样本全部 0 ms 消失;1500 轮 resize 的 `stale_*` 与 `disagreement` 全 0;80 次 Node 运行最大 1.969 s(冷启动首例)、超时 0。三项均**无反驳样本**,故保持开放;计时为探针自身测量,非性能声明 |
| 持续输出中断的原失败记录 | [#36](https://github.com/JavaZeroo/termforge/issues/36)、[ConPTY 输入机制研究](research/conpty-ctrl-c-input.md)、[原 R1 历史证据](../experiments/shell/results/2026-10-23-r1-foundations/validation.json) | 原 Windows 11 回归中的 normal/resize 超时与 ETW/插桩观察;调试扰动及管道读完成缺口保留。不是当前全套结果,后续未复现不能抹去此失败。 |
| controller B 正常结束后 cmd 退出未验收(#44) | [原失败脱敏记录](../experiments/shell/results/2026-10-26-controller-exit/validation.json)、[新退出诊断及有界重放](../experiments/shell/results/2026-10-26-controller-exit-observation/validation.json)、[关闭合同](https://github.com/JavaZeroo/termforge/issues/44) | 原 child 收完 32B、退出 0/join/Job0;cmd 只留下 close 后 0xC000013A,close 前未知。新观察分列输入、wait、pre-close 与清理;多轮未复现不构成历史修复,继续阻塞 #38。 |
| 原 10 秒纯夹具超时的阶段保留(#40 未关闭) | [限定合同](research/inventory-timeout-checkpoints.md)、[正常与受控超时对照](../research/ime/results/2026-10-26-inventory-timeout-checkpoints/validation.json) | 保持原 10 秒期限;超时后保留有界阶段、原异常和回收。受控挂起对照已通过,但历史 CI 的阶段/根因仍未知,#40 不因此关闭。 |
Expand Down
19 changes: 19 additions & 0 deletions experiments/shell/results/2026-10-31-reliability-batches/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# 三类持续未复现项的量化批次(#144 / #145 / #160)

同一 artifact 集(run 41198898623,hosted Windows 2025)里,这三个历史上偶发的问题都没有复现。本记录把三批数据放在一起,便于判断证据强度。

| issue | 批次 | 关键计数 | 结论 |
|---|---|---|---|
| #160 desktop 沉降 | 425 个 `sample.json` | 全部 `[{elapsed_ms:0, gone:true}]`;缺失 5 条均为刻意构造的 `desktop-failure` 负例 | 关闭后首次检查即消失,无退避 |
| #145 resize 旧尺寸回复 | 10 个配置 / **1500 轮** | `stale_buffer=0`、`stale_window=0`、`buffer_window_disagreement=0` | 无陈旧回复样本 |
| #144 Node 10 秒停顿 | 60 顺序 + 20 并发 | 中位 0.062 s、最大 1.969 s(冷启动首例)、超时 0 | 宿主正常时远低于期限 |

## 为什么放在一起

三项的共同点是:复现依赖宿主侧偶发状态,而不是固定输入可触发的确定性缺陷。三批数据都指向"当前批次未复现",但都没有反例,因此三项都保持开放。

## 限制

- 三批来自同一 run 的不同 artifact,不拼成一次"全绿";
- 各自的原始失败记录仍然保留,未被新批次覆盖;
- `resize_to_reply_us` 等计时是探针自身测量,不构成性能声明。
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"schema": "termforge-reliability-batches-v1",
"run": 41198898623,
"platform": "Windows-2025Server-10.0.26100-SP0",
"desktop_settle": {
"samples_with_field": 425,
"samples_without_field": 5,
"shapes": [
{
"length": 1,
"last_gone": true,
"count": 425
}
],
"missing_reason": "desktop-failure fixtures are constructed negatives"
},
"resize_reply": {
"files": 10,
"rounds": 1500,
"stale_buffer": 0,
"stale_window": 0,
"buffer_window_disagreement": 0,
"resize_vt_before_reply": 1000,
"median_of_medians_ms": 13.8,
"max_ms": 23.6
},
"node_timing": {
"sequential": {
"samples": 60,
"min_s": 0.046,
"median_s": 0.062,
"max_s": 1.969,
"timeouts": 0
},
"concurrent": {
"samples": 20,
"max_s": 0.235,
"timeouts": 0
}
},
"closed_issues": [],
"limitations": [
"single run",
"no counter-example found",
"timings are probe-local, not performance claims"
]
}