Skip to content

Commit 4e39a8e

Browse files
committed
docs: make Draft PR trace privacy-safe
1 parent 92caaf9 commit 4e39a8e

3 files changed

Lines changed: 19 additions & 17 deletions

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -438,7 +438,7 @@ home = ""
438438
- 全局 config 决定“使用哪一个 xlings 实例和 home”。
439439
- 项目 <code>mcpp.toml</code> 决定“在该实例中使用 default 还是哪个 named SubOS”。
440440

441-
这样团队可以提交 <code>subos = "el8"</code>,而不提交某位开发者的 <code>/home/user/.xlings</code>。
441+
这样团队可以提交 <code>subos = "el8"</code>,而不提交某位开发者的本地 <code>XLINGS_HOME</code> 路径
442442

443443
### 6.5 选择优先级
444444

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

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
44
5-
**Goal:** 在一张 mcpp PR 中落地已冻结的模板 selector、项目级 RuntimeSelection/RuntimeBinding、provider-neutral 图形运行时契约与仅管理 mcpp-bin 的 AUR reconciler;随后完成 squash/bypass 合入、release、mcpp-index/GitCode 对接和隔离环境下的 xlings 全生态验证。
5+
**Goal:** 在一张 mcpp Draft PR 中落地已冻结的模板 selector、项目级 RuntimeSelection/RuntimeBinding、provider-neutral 图形运行时契约与仅管理 mcpp-bin 的 AUR reconciler;随后完成 review-gated 普通合入、release、mcpp-index/GitCode 对接和隔离环境下的 xlings 全生态验证。
66

77
**Architecture:** CLI 和 mcpp.toml 共用一个 exact dotted PackageSelector;scaffold 在任何落盘前解析出完整 PackageId/version/template,并在 sibling 临时目录事务生成。运行时只允许 McppDefault 或 root/workspace-root NamedSubos,两者解析成一次性 RuntimeBinding snapshot,进入构建指纹并由 build/run/test 复用,dependency/member 的 SubOS 不传递。mcpp-index 声明图形 RuntimeRequirement,xlings/xim 解析 provider,mcpp 仅记录 canonical requester/provider/artifact provenance 和执行平台通用链接/运行验证。GitHub Release manifest 是 AUR desired state,mcpp-bin reconciler 单调、幂等、校验实物并只做 fast-forward push。
88

@@ -12,7 +12,8 @@
1212

1313
- [ ] 所有行为改动遵循 RED → GREEN → refactor;每个 RED 命令和预期失败原因写入提交/验证台账。
1414
- [ ] mcpp 实现只使用一张 PR,基于最新 `origin/main`;不直接 push main,不 force-push,不 amend/rebase 历史。
15-
- [ ] 最终按用户授权使用 admin/bypass squash merge;只有最新 PR HEAD 的 required checks 全部终态成功后执行。
15+
- [ ] 所有改动先形成可审阅的独立 commit,立即 push 到 Draft PR,并追加验证/checkpoint 评论;不在提交、PR 或日志摘录中记录本地用户名、绝对工作区路径或私有信息。
16+
- [ ] Draft PR 经用户 review 后才可转 ready;不使用 admin/bypass,只有最新 PR HEAD 的 required checks 全部终态成功后才进行普通 merge。
1617
- [ ] `mcpp-m` 边界为字节级不变:不修改 `scripts/aur/mcpp-m/**`,不读取/生成/发布其内容,不访问其 AUR remote。
1718
- [ ] 不增加 `--variant``--subos` 或其他顶层 CLI;不在 mcpp 中出现 GPU vendor、Mesa、NVIDIA、WSL 或 ICD 选择分支。
1819
- [ ] SubOS 只来自本次构建 root/workspace root 的 `mcpp.toml`,不写入 dependency requirement/lock identity,不从 dependency/member 继承。
@@ -360,17 +361,18 @@
360361
- [ ] Run sanitizers/static checks available in repository CI, `git diff --check origin/main...HEAD`, forbidden mcpp-m diff, and explicit scope inventory.
361362
- [ ] Measure hot no-op build and template parse against baseline; require no material regression and zero xlings/GPU subprocess on hot no-op.
362363
- [ ] Rebase is forbidden; if origin/main advanced, merge origin/main normally, rerun all affected gates, and preserve visible history.
363-
- [ ] Push the branch and open one non-draft PR with `Closes #398`, related issue notes, architecture decisions, RED/GREEN evidence, boundary proof, version/pin, and cross-repo follow-up plan.
364+
- [x] Push the branch and open one Draft PR with `Closes #398`, related issue notes, architecture decisions, RED/GREEN evidence, boundary proof, version/pin, and cross-repo follow-up plan.
365+
- [ ] After every logical commit, push immediately and append a checkpoint with commit id, focused evidence, remaining failures, and cross-repository boundary.
364366
- [ ] Request review using the repository review workflow and address feedback with fresh evidence.
365367

366-
## Task 12: Native GitHub Actions, Squash/Bypass Merge, and Release
368+
## Task 12: Native GitHub Actions, Review-Gated Merge, and Release
367369

368370
**Skills required at this task:** `mcpp-release`, `superpowers:verification-before-completion`, and `superpowers:finishing-a-development-branch`.
369371

370372
- [ ] Wait for all latest-HEAD checks to reach terminal success across Linux, macOS, Windows, cross/QEMU aarch64, native aarch64, fresh install, release manifest, and AUR dry-run lanes.
371373
- [ ] Treat skipped native/runtime hardware rows as NOT_EXERCISED, not pass; create an isolated temporary CI lane if a required platform gate is absent.
372374
- [ ] Verify remote PR HEAD equals local HEAD, branch diff is clean, no unresolved reviews, no conflict, and `scripts/aur/mcpp-m/**` is unchanged.
373-
- [ ] Use the explicitly authorized admin/bypass squash merge; verify the squash commit is on main and PR/issue states are correct.
375+
- [ ] After explicit user review, mark the Draft ready and use the repository's normal merge path without admin/bypass; verify the merge commit is on main and PR/issue states are correct.
374376
- [ ] Follow `mcpp-release`: verify version strings, create/push the release tag, monitor every release job, asset, checksum, `mcpp-release.json`, GitCode mirror, and GitHub release until terminal success.
375377
- [ ] Do not block/rollback the GitHub release for an AUR transient; dispatch the fixed latest-stable mcpp-bin reconciler and record its exact terminal state.
376378
- [ ] Close #380/#392/#396 only when their released acceptance paths are proven; otherwise comment with delivered subset and keep the residual open.
@@ -379,10 +381,10 @@
379381

380382
**Repositories:**
381383

382-
- `/home/speak/workspace/github/mcpplibs/mcpp-index`
383-
- `/home/speak/workspace/github/openxlings/xim-pkgindex`
384-
- `/home/speak/workspace/github/openxlings/xlings`
385-
- local GitCode helper/config already used by release workflow
384+
- `mcpplibs/mcpp-index`
385+
- `openxlings/xim-pkgindex`
386+
- `openxlings/xlings`
387+
- GitCode helper/config already used by the release workflow
386388

387389
- [ ] In isolated repo-specific worktrees, update mcpp-index minimum/current mcpp pins and template descriptors to canonical selectors and sole/default template lint.
388390
- [ ] Refactor ImGui features/templates to core/headless, backend-glfw-opengl3, backend-vulkan, app, docking, and viewports without making core pull graphics unconditionally.

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

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,15 @@
1010

1111
The mcpp implementation is developed in one branch and one pull request:
1212

13-
- worktree: `/home/speak/.config/superpowers/worktrees/mcpp/template-runtime-graphics-aur`
13+
- worktree: isolated feature worktree; local path intentionally omitted
1414
- branch: `feat/template-runtime-graphics-aur`
1515
- base: `mcpp-community/mcpp main@80291ca01a982c1e8c00e43bfa97ffe68516e6d7`
1616
- focused issue: `mcpp-community/mcpp#398`
1717
- umbrella issue: `mcpp-community/mcpp#397`
1818

1919
External repositories retain their own history and review boundaries. Their implementation, if required after the mcpp release, uses separate repository PRs; it does not create a second mcpp implementation PR.
2020

21-
The main mcpp checkout contains user-owned untracked design/triage files. This worktree was created from `origin/main`; no tracked or untracked file in the main checkout is moved or deleted.
21+
The implementation worktree was created from `origin/main`; pre-existing checkout state was left untouched.
2222

2323
## 2. Live baseline
2424

@@ -65,14 +65,14 @@ Approved design hashes:
6565

6666
Host xlings configuration snapshot:
6767

68-
- scope: sorted SHA256 rows for `/home/speak/.xlings/.xlings.json` and `subos/*/.xlings.json`; contents were not copied.
68+
- scope: sorted SHA256 rows for `$XLINGS_HOME/.xlings.json` and `$XLINGS_HOME/subos/*/.xlings.json`; contents were not copied.
6969
- aggregate: `f218aadf3792ee815c8535ce0ca0bb53f634fecbdbc5d0d47db442052d786d1b`.
7070

7171
All stateful verification uses a separate temporary root and must reproduce both aggregate hashes before completion.
7272

7373
## 4. Baseline verification
7474

75-
Isolated root: `/tmp/mcpp-focused-398.XVUEhz`.
75+
Isolated root: disposable task root; exact local path intentionally omitted.
7676

7777
| Gate | Command shape | Status | Evidence |
7878
|---|---|---|---|
@@ -85,9 +85,9 @@ Isolated root: `/tmp/mcpp-focused-398.XVUEhz`.
8585

8686
### Baseline fixture diagnosis
8787

88-
The first #201 run exited 1 because the isolated `MCPP_HOME` itself was `/tmp/mcpp-focused-398.XVUEhz/.mcpp`. The test intentionally rejects every RUNPATH beginning with `/tmp/` as evidence of another temporary home, so it classified the current, valid isolated home as pollution. The observed two paths were the current glibc and gcc payload directories, not a stale foreign home.
88+
The first #201 run exited 1 because the isolated `MCPP_HOME` itself was below the system temporary directory. The test intentionally rejects every RUNPATH beginning with that directory as evidence of another temporary home, so it classified the current, valid isolated home as pollution. The observed two paths were the current glibc and gcc payload directories, not a stale foreign home.
8989

90-
The hypothesis was tested by hard-link cloning the disposable state into the non-`/tmp` isolated root `/home/speak/.cache/mcpp-focused-398.IE23if`, letting the normal fixup rebind paths, and running the unmodified script again. It exited 0 and proved both link modes load nothing from the host. No product or test source was changed for this baseline result.
90+
The hypothesis was tested by hard-link cloning the disposable state into a non-temporary isolated root, letting the normal fixup rebind paths, and running the unmodified script again. It exited 0 and proved both link modes load nothing from the host. No product or test source was changed for this baseline result.
9191

9292
## 5. RED/GREEN ledger
9393

@@ -291,7 +291,7 @@ Terminal conclusions are not yet claimed.
291291

292292
## 7. Merge and release
293293

294-
Not started. This section will record the authorized bypass squash commit, tag, GitHub release, release workflow/job IDs, asset inventory, checksums, `mcpp-release.json`, and GitCode mirror evidence.
294+
Not started. After explicit user review, this section will record the normal merge commit, tag, GitHub release, release workflow/job IDs, asset inventory, checksums, `mcpp-release.json`, and GitCode mirror evidence. Admin/bypass merge is outside the approved workflow.
295295

296296
## 8. AUR mcpp-bin
297297

0 commit comments

Comments
 (0)