Judge every manifest against the list of predefined keys of its tree, and carry the list from a build
Mesh and node config may hold values only for keys on a fixed, reviewed list (hq ADR 0348 clause 7, design 57 package K2, issue 661). A build reads predefined.json at the root of the repository at the commit it builds and carries it with the commit's generation; module check and the merge gate read it from the tree. (Part 1 of 2: the changes to existing files.) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -334,6 +334,12 @@ type BuildResult struct {
|
||||
ReusedFrom *ReusedFrom `json:"reused-from,omitempty"`
|
||||
BuiltWhy string `json:"built-why,omitempty"`
|
||||
|
||||
// Predefined is the list of predefined keys at the root of the repository at the commit built (novox/hq ADR
|
||||
// 0348 §7), which the manifest was judged against: the controller publishes the catalogue's from a trunk
|
||||
// build, the newest by Generation winning. Absent for a repository holding none, and from a builder that
|
||||
// predates the list.
|
||||
Predefined *PredefinedList `json:"predefined,omitempty"`
|
||||
|
||||
// Source is the request's, echoed: the seat form of the repository, for whoever registers.
|
||||
Source *SourceOnSeat `json:"source,omitempty"`
|
||||
|
||||
@@ -346,6 +352,14 @@ type BuildResult struct {
|
||||
Checked *CheckRequest `json:"check,omitempty"`
|
||||
}
|
||||
|
||||
// PredefinedList is the list of predefined keys a build read (novox/hq ADR 0348 §7): Keys its canonical text, a
|
||||
// JSON object of keys, and Generation how many commits the commit built stands on — of two commits on one trunk
|
||||
// the later has more, which is what orders two builds' lists; 0 when the builder could not say.
|
||||
type PredefinedList struct {
|
||||
Keys json.RawMessage `json:"keys"`
|
||||
Generation int `json:"generation,omitempty"`
|
||||
}
|
||||
|
||||
// ReadRepository is a repository a build read source from besides the module's own, at the branch,
|
||||
// tag or commit it read. Spelled here as well as in the catalogue and the inventory, for the reason
|
||||
// MadeArtifact is: one direction of dependency.
|
||||
|
||||
Reference in New Issue
Block a user