Assigner: hears build.ended and version-released, reads no build log; a want's version and parts come from them

A kept build's or another branch's build names its parts and keeping node from build.ended; the trunk's entry names its version and parts from the version-released whose source is the kept assignment graph revision's. The parts' contract comment says <module>:<artifact>.

Builds: design 47 G §379, §525, §526, A-94, A-96, A-67

Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
This commit is contained in:
2026-11-11 23:32:50 +01:00
parent d1357239e2
commit 6c852a8eea
16 changed files with 258 additions and 159 deletions
+2 -2
View File
@@ -491,7 +491,7 @@ export interface VersionDeliveredEvent {
"away"?: string[];
/** the module */
"module": string;
/** the digest of each of its parts, by artifact reference */
/** the digest of each of its parts, by `<module>:<artifact>` */
"parts": Record<string, string>;
"v": number;
/** MAJOR.MINOR.PATCH */
@@ -516,7 +516,7 @@ export interface WantsByWantNodeModuleValue {
/** for a kept build, the build node that keeps it, from the builder's build.ended; the node-engine fetches the build through that node's seat verb kept-artifact, and a want with none from the store (design 47 G section 526) */
"kept-on"?: string;
"newest"?: string;
/** the digest of each of the module's parts, by artifact reference; the node-engine fetches and checks each part by it (design 47 G section 379) */
/** the digest of each of the module's parts, by `<module>:<artifact>`; the node-engine fetches and checks each part by it (design 47 G section 379) */
"parts"?: Record<string, string>;
"put"?: boolean;
"release"?: string;