Skip to content

Commit 379a11d

Browse files
committed
docs(plan): 13.2.1 —— 这一批的跨仓波次,以及为什么它和上一批同形
约束没变(plugins 的 CI 钉的是已发布的 mcpp),后果也没变。写进文档而不是留在 PR 里,是因为这个形状现在是两个仓库之间的性质,而不是某一次改动的偶然。 附带一条这一批才看清的推论:引擎那一半能自己被测(e2e 633 不用任何规则包), plugins 那一半不能——它的下界是 PR 打开时还没发生的那个发布。所以第二波的 绿色 CI 是**最后**一份可得的证据而不是第一份,顶上来的是本地对着本地构建的引擎 跑的那次。
1 parent 38f734a commit 379a11d

1 file changed

Lines changed: 35 additions & 0 deletions

File tree

.agents/docs/2026-09-07-module-first-heterogeneous-surface.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -950,6 +950,41 @@ reads it. An engine that does not set it leaves the header surface in place,
950950
which is what every consumer had before, so an older engine keeps its behaviour
951951
and a newer one moves a project to the module surface with nothing declared.
952952

953+
#### 13.2.1 The same structure, for the batch that closed 14.1 and 14.2
954+
955+
The constraint has not changed and neither has its consequence, so the second
956+
batch has the same two waves and the same reason. It is recorded here rather
957+
than left to the pull requests because the shape is now a property of the two
958+
repositories rather than an accident of one change.
959+
960+
```
961+
wave 1 mcpp 2026.9.8.1: `mcpp::recompile_if_changed` (protocol 9),
962+
e2e 633, three ninja-backend unit tests, docs/07 both languages,
963+
and this document's alignment with what shipped
964+
|
965+
+--- release mcpp ---+
966+
|
967+
wave 2 +--> mcpp:plugins 0.3.1: a depfile on
968+
all six rules, the `.incbin`
969+
declaration in `surface::emit`,
970+
three CI steps whose criterion is
971+
the artifact's bytes, and
972+
MCPP_VERSION raised to 2026.9.8.1
973+
|
974+
wave 3 +--> mcpp-index: 0.3.1 in the three
975+
platform tables, `latest` REPLACED
976+
|
977+
wave 4 +--> sandbox verification against the
978+
published packages
979+
```
980+
981+
The engine half is testable on its own -- e2e 633 uses no rule package -- and
982+
the plugins half is not, because its floor is the release that has not happened
983+
when the pull request opens. Nothing in wave 2 can be checked by its own CI
984+
until wave 1 is published, so a green wave-2 CI is the LAST evidence available
985+
rather than the first, and the local run against a locally built engine is what
986+
stands in for it.
987+
953988
### 13.3 Evaluation criteria, by the dimensions this work is judged on
954989

955990
| Dimension | What decides it | Where it is checked |

0 commit comments

Comments
 (0)