Archived
Mark the uplink seat's verbs optional, the one mechanism, and keep every optional verb out of the seat row
mesh/merge-gate pass: builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step; every machine composes with the change as it…
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery-group group feat/node-uplink-verbs ready: every member ready, and composed together they pass
mesh/delivery superseded: a newer head of the same pull request
mesh/merge-gate pass: builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step; every machine composes with the change as it…
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery-group group feat/node-uplink-verbs ready: every member ready, and composed together they pass
mesh/delivery superseded: a newer head of the same pull request
Staged duplicated Verb.Optional. Optional, though, was still seeded into the row, where the mark is not kept: read back, the delivery seat's checks verb and these would be required of every holder, and an older controller would require them too. Stored leaves optional verbs out, and the working set takes them from the compiled seat, still optional.
This commit is contained in:
@@ -62,7 +62,7 @@ func (i *Inventory) Seats(ctx context.Context) ([]catalogue.Seat, error) {
|
||||
func (i *Inventory) SeedSeats(ctx context.Context, defaults []catalogue.Seat) (int, error) {
|
||||
var added int
|
||||
for _, s := range defaults {
|
||||
// A verb still staged is never stored (catalogue.Seat.Staged).
|
||||
// An optional verb is never stored (catalogue.Verb.Optional).
|
||||
s = s.Stored()
|
||||
accepts, emits, serves, err := protocolJSON(s)
|
||||
if err != nil {
|
||||
|
||||
@@ -157,9 +157,10 @@ func TestTheControllersVerbsInTheRowAreTheBinarys(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// A verb still staged (novox/hq ADR 0241) is never in the store's row: a controller older than it reads
|
||||
// the row and would require what no holder of its time serves.
|
||||
func TestAStagedVerbIsNotSeeded(t *testing.T) {
|
||||
// An optional verb (catalogue.Verb.Optional; novox/hq ADR 0241, ADR 0239) is never in the store's row: a
|
||||
// controller older than it reads the row and would require what no holder of its time serves, and the mark
|
||||
// itself is not stored, so the row would read back required.
|
||||
func TestAnOptionalVerbIsNotSeeded(t *testing.T) {
|
||||
inv := ForTest(t)
|
||||
if _, err := inv.SeedSeats(t.Context(), catalogue.DefaultSeats()); err != nil {
|
||||
t.Fatal(err)
|
||||
@@ -173,8 +174,10 @@ func TestAStagedVerbIsNotSeeded(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
for _, s := range got {
|
||||
if s.Name == "node-uplink" && len(s.Serves) != 0 {
|
||||
t.Fatalf("the row keeps %v", s.Serves)
|
||||
for _, v := range s.Serves {
|
||||
if (s.Name == "node-uplink") || (s.Name == catalogue.DeliverySeat && v.Name == "checks") {
|
||||
t.Fatalf("%s's row keeps the optional %s", s.Name, v.Name)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user