Skip to content

Commit 1092f02

Browse files
committed
docs(plan): §4.1 —— 宿主工具二进制没做,而它没做正是 14.1 那条边要单独声明的原因
1 parent 56c1237 commit 1092f02

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

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

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -290,6 +290,21 @@ What this buys, in order of value:
290290
- The same path serves CUDA cubins and fatbins, textures, fonts, model weights
291291
and ICD JSON. The tool stops being shader-specific.
292292
293+
> **Superseded, and the difference is load-bearing for 14.1.** The host-tool
294+
> binary was not built. What shipped is `mcpp::plugins::surface` -- a generator
295+
> in the collection's lib root that every rule calls FROM `build.mcpp`, writing
296+
> the interface, the implementation and the `.S` at plan time. The four values
297+
> listed above were all obtained anyway: both shader flavours produce identical
298+
> output, storage and surface are orthogonal options, `mcpp.rules.slang` joined
299+
> at no cost, and nothing in the generator is shader-specific.
300+
>
301+
> What the library form does NOT give is the property this section was reaching
302+
> for: a tool the GRAPH invokes has its inputs in the graph. A generator that
303+
> runs at plan time writes a `.S` naming a payload that does not exist yet, and
304+
> the edge between them has to be stated separately -- which is exactly the gap
305+
> 14.1 reports and `mcpp::recompile_if_changed` closes. The library form remains
306+
> the right shape; the missing edge was the cost of it, and it was payable.
307+
293308
### 4.2 One tool with options, not three
294309
295310
`bin2c`, `bin2cppm` and `bin2obj` as three names would force a consumer to

0 commit comments

Comments
 (0)