Let a walk wait for its delivery's word, and serve the delivery's owner (hq ADR 0239)
While the mesh-delivery seat has a holder on record, a merge that moves no core module opens its walk and asks nothing until mesh-delivery or a person says go; nothing of it is registered before its turn, so no other send carries it. The controller keeps the planner, the gate, sending and the walk, and gains the verbs the owner asks with: delivery-plan, -order, -check (a group composed as one future state), deliver, delivery-stop, delivery-walks; every walk kept is said as plan-moved.
This commit is contained in:
@@ -123,6 +123,21 @@ type CheckRequest struct {
|
||||
// the controller, judged by itself; JudgeValidator for a change to the node-engine, judged by the
|
||||
// running controller built with the change's validator in place of the one it vendors.
|
||||
Judge string `json:"judge,omitempty"`
|
||||
// Group names a delivery group whose members' heads are composed together with this one (novox/hq ADR
|
||||
// 0239), and Members are those other heads, each cloned beside it and laid over the mesh in turn. The
|
||||
// repository's own check is not run for a group: each member's pull request runs its own.
|
||||
Group string `json:"group,omitempty"`
|
||||
Members []GroupMember `json:"members,omitempty"`
|
||||
}
|
||||
|
||||
// GroupMember is one other head of a delivery group's composed check.
|
||||
type GroupMember struct {
|
||||
Owner string `json:"owner"`
|
||||
Repo string `json:"repo"`
|
||||
Number int `json:"number,omitempty"`
|
||||
Repository string `json:"repository"`
|
||||
Ref string `json:"ref"`
|
||||
Paths []string `json:"paths,omitempty"`
|
||||
}
|
||||
|
||||
// Who judges a merge check's gate.
|
||||
|
||||
@@ -76,6 +76,11 @@ const (
|
||||
// KeyChecked: a pull request's merge check was judged (novox/hq to-be 45 §9) — the verdict, its
|
||||
// summary and its report, for the forge's holder to set as the pull request's status.
|
||||
KeyChecked = "checked"
|
||||
// KeyPlanMoved: a walk — the controller's plan of one trunk commit, tier by tier across the machines —
|
||||
// was kept in a new state (novox/hq ADR 0239): the plan whole, for the delivery it walks to read its
|
||||
// steps from. Said after every save of the serving controller; a delivery's holder also asks for the
|
||||
// walks it follows, so a save made elsewhere is found by comparison, never lost.
|
||||
KeyPlanMoved = "plan-moved"
|
||||
)
|
||||
|
||||
// Applied is what a machine now runs, as the mesh states it.
|
||||
@@ -261,6 +266,19 @@ type Checked struct {
|
||||
// Plan is the change plan of the commit checked (novox/hq ADR 0238): what a merge of it would build
|
||||
// and send, posted with the verdict.
|
||||
Plan *ChangePlan `json:"plan,omitempty"`
|
||||
// Group is set on a delivery group's composed check (novox/hq ADR 0239): every member's head composed
|
||||
// together as one future state. Members are the heads judged. A forge's holder sets no merge-gate
|
||||
// status from it — the group's verdict is its owner's, mesh-delivery, to say on each member's head.
|
||||
Group string `json:"group,omitempty"`
|
||||
Members []CheckedMember `json:"members,omitempty"`
|
||||
}
|
||||
|
||||
// CheckedMember is one head a group's composed check judged.
|
||||
type CheckedMember struct {
|
||||
Owner string `json:"owner"`
|
||||
Repo string `json:"repo"`
|
||||
Number int `json:"number,omitempty"`
|
||||
Commit string `json:"commit"`
|
||||
}
|
||||
|
||||
// ChangePlan is what a change does to the mesh, computed from its diffset — a repository, the branch it
|
||||
|
||||
Reference in New Issue
Block a user