docs: record direct package export boundary

This commit is contained in:
2026-08-12 18:42:26 +09:00
parent edd3f4ee83
commit a88078faf8
2 changed files with 117 additions and 63 deletions

View File

@@ -238,11 +238,13 @@ caller-owned persistent package-artifact workdir: the directory must already
exist, is never cleaned by the driver, and holds one committed unit, `.wwi`,
`.s`, `.o`, and dep `.a` per package plus byte copies of the invoking driver,
compiler, and assembler and a small mode stamp. A package is reused only when
its freshly composed unit byte-equals the committed unit and every applicable
recorded executable byte-equals the live executable — content identity only,
no mtimes, no hashes, every decision reproducible with `cmp` against plain
files. The driver identity covers the graph, unit-composition, archive, and
commit algorithms that neither unit bytes nor compiler identity can name.
its freshly composed owner unit byte-equals the committed unit, no recompiled
direct dependency emitted changed export bytes, and every applicable recorded
executable byte-equals the live executable — content identity only, no mtimes,
no hashes, every decision reproducible with `cmp` against plain files. The
driver identity covers graph construction, owner-unit composition,
direct-export argument construction, archive creation, and commit algorithms
that neither unit bytes nor compiler identity can name.
Recompiled artifacts land at staged `.new` names and commit by rename with the
unit renamed last, so an interrupted build forces a recompile rather than a
false reuse; the link always reruns. One workdir serves one invocation at a