Skip to content

Commit 64803fc

Browse files
committed
docs: record Windows index route evidence
1 parent 9a47ccf commit 64803fc

2 files changed

Lines changed: 57 additions & 21 deletions

File tree

.agents/docs/2026-08-09-mcpp-template-runtime-graphics-aur-validation.md

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -312,23 +312,39 @@ root in E2E 156, and its exact rerun passes after `0cc6a2a`. Exact E2E 12 also
312312
passes after `ed4cf64`. This is deliberately not restated as a full latest-head
313313
206-case rerun.
314314

315-
The native `ed4cf64` matrix produced the following terminal evidence before the
316-
documentation-only handoff commit re-queued latest-head CI:
315+
The native `ed4cf64` matrix is terminal with 12 successes, five failures and one
316+
concurrency cancellation:
317317

318318
- PASS: hermetic Linux E2E, macOS ARM64 E2E, musl + LLVM, MinGW
319-
Linux-to-Windows + Wine, Windows-to-Linux cross-build and Linux artifact run;
319+
Linux-to-Windows + Wine, Windows-to-Linux cross-build and Linux artifact run,
320+
Linux unit/cold-GCC/both E2E shards, Windows build/unit/package and Windows
321+
E2E 1/2;
320322
- FAIL at one known cross-repository boundary: Linux xlings integration, macOS
321323
xlings LLVM E2E, aarch64 mcpp + xlings, and Windows xlings regressions all
322324
encounter xlings' bare `ftxui` declaration under exact selection;
323-
- the remaining jobs were still pending and therefore are not claimed as pass.
325+
- FAIL independently in Windows E2E 2/2 (run `31321961040`, job
326+
`93266267511`): workspace-member `mcpp add acme.util@2.0.0` cannot read its
327+
root-owned local index even though the corresponding native unit passes;
328+
- CANCELLED: the bare-Windows/no-Visual-Studio job was superseded by a later
329+
push and is not counted as pass.
330+
331+
The exact Windows artifact succeeds for both a hand-authored member and `mcpp
332+
new m1` under an isolated Wine reproduction. That narrows the remaining failure
333+
to native Git Bash/process/workspace state, but does not prove it fixed.
334+
Commit `9a47ccf` therefore adds a permanent, privacy-safe `route:` error line
335+
that reports only local-index root/`pkgs` presence. Its TDD cycle is RED on the
336+
missing API, then GREEN for `PmIndexRoute` 12/12 and real E2E 12. The next native
337+
Windows run remains the authority for the root cause; no latest-head full-suite
338+
claim is made yet.
324339

325340
The xlings boundary is tracked by
326341
[openxlings/xlings#521](https://github.com/openxlings/xlings/pull/521), whose
327342
eight native/cross checks pass. It remains Draft and REVIEW_REQUIRED. After the
328343
handoff (`9f6161a`) and validation-ledger (`6e42d6c`) commits, privacy review
329344
produced `cf39cb2`: the AUR reconciler and rendered `mcpp-bin` now use the public
330-
`speak-agent` noreply identity, with a RED/GREEN contract regression. That
331-
latest-head matrix must reach terminal state before any latest-head claim.
345+
`speak-agent` noreply identity, with a RED/GREEN contract regression. `189c6d1`
346+
records that 12/12 contract result. The current diagnostic head `9a47ccf` must
347+
reach terminal state before any latest-head claim.
332348

333349
The Chinese operator handoff is
334350
`.agents/docs/2026-08-09-pr400-handoff-zh.md`. It records implementation scope,

.agents/docs/2026-08-09-pr400-handoff-zh.md

Lines changed: 35 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,11 @@ Draft PR [openxlings/xlings#521](https://github.com/openxlings/xlings/pull/521)
4646

4747
mcpp 分支为 `feat/template-runtime-graphics-aur`,基线为
4848
`80291ca01a982c1e8c00e43bfa97ffe68516e6d7`。核心实现和原生诊断 checkpoint 是
49-
`ed4cf64279a5da94c736742338e5b01d90e297b8`;随后增加中文交接、验证账本和公共发布身份,
50-
隐私修复 checkpoint 为 `cf39cb2`。截至该 checkpoint,相对基线共有 29 个可追溯
51-
commit,改动 111 个文件,约 14,976 行新增、1,692 行删除。接手时仍须重新比较本地与
52-
远端 HEAD,不要把本文快照当成可变分支的永久 HEAD。
49+
`ed4cf64279a5da94c736742338e5b01d90e297b8`;随后增加中文交接、验证账本、公共发布身份,
50+
以及不泄露本地路径的 exact-index 路由诊断。本文更新时远端 HEAD 为
51+
`9a47ccf5727a2756451812da2c98e18e1f034409`。相对基线共有 31 个可追溯 commit,改动
52+
111 个文件,约 15,049 行新增、1,692 行删除。接手时仍须重新比较本地与远端 HEAD,
53+
不要把本文快照当成可变分支的永久 HEAD。
5354

5455
设计和验证文档按以下顺序阅读:
5556

@@ -198,6 +199,8 @@ commit,改动 111 个文件,约 14,976 行新增、1,692 行删除。接手
198199
| `9f6161a` | 新增完整中文 PR 交接文档 |
199200
| `6e42d6c` | 同步 Arch、CI 和跨仓库验证账本 |
200201
| `cf39cb2` | AUR 使用 `speak-agent` 公共 noreply 身份,并增加隐私回归 |
202+
| `189c6d1` | 记录隐私安全 AUR checkpoint 和 12/12 契约结果 |
203+
| `9a47ccf` | exact miss 输出隐私安全的 index route 状态,供 Windows 原生定位 |
201204

202205
每个逻辑 commit push 后都在 PR #400 留有 checkpoint。issue #380#392#396 也已经
203206
收到“实现已进入 Draft、但发布前不关闭”的状态评论。
@@ -243,8 +246,19 @@ edge,但 stage/main BMI 已经稳定。测试现在只约束它负责验证的
243246
- workspace 根 `[indices] acme = { path = "index" }` 在 Windows 上经
244247
`weakly_canonical` 后可能因为 short-name/case alias 与成员视图失去字符串身份。现在使用
245248
`(workspace_root / relative_path).lexically_normal()`,既把相对 index 锚定到根,又不改变
246-
用户声明的 lexical identity。新增 focused unit,相关本地 E2E #12 通过;最终仍以原生
247-
Windows CI 为准。
249+
用户声明的 lexical identity。新增 focused unit,相关本地 E2E #12 通过;但
250+
`ed4cf64` 的原生 Windows E2E 2/2 仍在 workspace member 的 `mcpp add
251+
acme.util@2.0.0` 失败,因此该提交不是完整修复。
252+
- 失败 job 为 run `31321961040` / job `93266267511`;错误只有 `package 'acme.util'
253+
not found in any configured index``tried: (acme, util)`。同一原生 Windows 矩阵的
254+
`PmIndexRoute.WorkspaceMemberReadsRootAnchoredRelativeIndex` 已执行并通过,说明纯单元 fixture
255+
没有覆盖真实进程/工作目录视图。
256+
- 已下载该 job 构建的 Windows artifact,并在隔离 Wine 环境中同时用手工 member 和
257+
`mcpp new m1` 重放;两条 `mcpp add acme.util@2.0.0` 都通过,所以不能把 Wine 结果外推为
258+
GitHub Windows 已修复。
259+
- `9a47ccf` 增加永久、隐私安全的 `route:` 诊断,只报告 local index 的 root/`pkgs`
260+
present/absent,不输出盘符、用户目录或绝对路径。下一轮原生日志将区分 workspace
261+
inheritance、路径锚定和 descriptor read 三层;拿到证据前不猜测修复。
248262

249263
### 5.6 隔离 HOME fixture 使用错误根
250264

@@ -273,6 +287,9 @@ mcpp,而没有进入目标 nested-tool regression。fixture 现在使用
273287
- 一轮隔离 Linux 全量 E2E:186 pass、1 fail、19 个平台/能力 skip。唯一失败是 #156
274288
fixture 根错误,修复后精确重跑通过。
275289
- `ed4cf64` 后精确重跑 #12#156 通过,完整 72/72 unit 再次通过。
290+
- `9a47ccf` 按 TDD 先得到缺少 `IndexRoute::describe` 的 RED;实现后 focused
291+
`PmIndexRoute` 12/12、真实 E2E #12 通过,且诊断不包含本机路径。该提交尚未重新宣称
292+
最新源码全量 unit/E2E 均通过。
276293
- 重点 E2E 已覆盖 package/template、事务 scaffold、RuntimeBinding、root-local SubOS、
277294
Rule A/B、provider provenance、stored `why runtime`、AUR/release 脚本。
278295
- release manifest contract:12/12。
@@ -297,7 +314,7 @@ mcpp,而没有进入目标 nested-tool regression。fixture 现在使用
297314

298315
### 6.3 GitHub CI 快照
299316

300-
以下是 `ed4cf64` 在 2026-08-09 23:53 CST 左右的快照。pending 不是 pass:
317+
以下是 `ed4cf64` 的终态快照;共 12 success、5 failure、1 cancelled。cancelled 不是 pass:
301318

302319
| 状态 | Job |
303320
|---|---|
@@ -306,22 +323,25 @@ mcpp,而没有进入目标 nested-tool regression。fixture 现在使用
306323
| PASS | musl + LLVM toolchain |
307324
| PASS | MinGW Linux→Windows build + Wine run |
308325
| PASS | Windows→Linux cross-build及 Linux artifact run |
326+
| PASS | Linux unit、GCC cold toolchain、Linux E2E 1/2 和 2/2 |
327+
| PASS | Windows build/unit/package、Windows E2E 1/2 |
309328
| FAIL(已知外部边界) | Linux 构建/运行 xlings |
310329
| FAIL(已知外部边界) | macOS xlings LLVM E2E |
311330
| FAIL(已知外部边界) | aarch64 mcpp + xlings |
312331
| FAIL(已知外部边界) | Windows toolchains + regressions 中的 xlings 构建 |
313-
| PENDING | Linux unit、GCC cold toolchain、Linux E2E 1/2 和 2/2 |
314-
| PENDING | Windows build/unit/package、Windows E2E 1/2 和 2/2 |
332+
| FAIL(mcpp 内部,仍在定位) | Windows E2E 2/2 的 workspace root local index |
333+
| CANCELLED | bare Windows/no-Visual-Studio;被后续 push 的 concurrency 取消,不作结论 |
315334

316335
四个已知失败都发生在构建当前 xlings source 时的裸 `ftxui` exact miss;对应 #521
317-
不能在 mcpp 中用 fallback 掩盖。其它 pending job 必须等终态后再分类。
336+
不能在 mcpp 中用 fallback 掩盖。Windows E2E 2/2 是独立的 mcpp 问题,不能归入 #521
337+
`9a47ccf` 的 latest-head 原生矩阵需先给出 route 状态,再做下一笔最小修复。
318338

319339
## 7. 尚未完成
320340

321341
以下项目必须明确交接,不能因为“代码已经很多”而省略:
322342

323-
1. **等待当前 mcpp latest-head CI 终态** 特别关注 Windows E2E 2/2,确认
324-
`ed4cf64` 真正解决根相对 index;不要只看本地 Linux 结果
343+
1. **等待 `9a47ccf`mcpp latest-head CI 证据** 特别读取 Windows E2E 2/2
344+
`route:` 行;`ed4cf64` 已经由原生 runner 证明没有完整解决根相对 index
325345
2. **用户 review xlings #521** 8/8 CI 已通过,但仍为 Draft/REVIEW_REQUIRED。
326346
3. **普通合并 xlings #521** 不使用 admin、bypass、squash、force 或历史改写。
327347
4. **发布新的 xlings 稳定版本。** 当前 `2026.8.9.2` 不含 #521;需要正常 version bump、
@@ -349,9 +369,9 @@ mcpp,而没有进入目标 nested-tool regression。fixture 现在使用
349369

350370
1. 确认 `gh api user --jq .login` 返回 `speak-agent`
351371
2. 检查 PR #400 本地 HEAD、远端 HEAD 和 clean worktree;不要在原始用户 checkout 上工作。
352-
3.`ed4cf64` 的全部 job 终态,逐个读取失败日志。只有四个裸 `ftxui` 失败可以归入
353-
#521;任何新失败都要单独 RED/根因/修复/commit/checkpoint。
354-
4. 把终态快照评论到 #400,但先不要为了记录而修改代码或重复 rerun workflow。
372+
3.`9a47ccf` 的 Windows E2E 2/2 输出隐私安全的 `route:` 状态;只按原生证据修复。
373+
四个裸 `ftxui` 失败归入 #521,其余失败必须单独 RED/根因/修复/commit/checkpoint。
374+
4. 把最新终态快照评论到 #400;不要重复 rerun 已被新 HEAD 取代的旧 workflow。
355375
5. 请用户 review #521;得到明确同意后,转 ready 并普通合并,随后按 xlings release skill
356376
正常发版。
357377
6. mcpp 独立 commit 更新新 xlings pin,push 后评论 checkpoint,再等待新的 latest-head

0 commit comments

Comments
 (0)