Name the seat mesh-placement where the kept declaration's retirement reads the placement, as L2 moved it (issue 774, ADR 0567)
This commit is contained in:
@@ -452,7 +452,7 @@ func nodeAgent(ctx context.Context, opts options, signer ed25519.PublicKey, trus
|
||||
return
|
||||
}
|
||||
var ag *agent.Agent
|
||||
// The kept release-5 declaration is no longer read once every module the catalogue places here has a have of its
|
||||
// The kept release-5 declaration is no longer read once every module the seat's placement puts here has a have of its
|
||||
// own (ADR 0550 §2: its signature is the controller's, trusted no more after the lease write).
|
||||
if retired, why := placedAllHave(linked, session, node); retired && !keptRetired.Swap(true) {
|
||||
say("the kept declaration is no longer read: " + why)
|
||||
@@ -742,7 +742,7 @@ func busyModules() []string {
|
||||
return out
|
||||
}
|
||||
|
||||
// keptRetired says the kept declaration is read no more: every module the catalogue places on this node has a have of
|
||||
// keptRetired says the kept declaration is read no more: every module the seat's placement puts on this node has a have of
|
||||
// its own (placedAllHave), so what runs is the agent's alone (ADR 0550 §2, design 47's L3 s9).
|
||||
var keptRetired atomic.Bool
|
||||
|
||||
|
||||
@@ -235,8 +235,8 @@ func followTrust(ctx context.Context, session *link.Session, trust *meshTrust, s
|
||||
}
|
||||
}
|
||||
|
||||
// placedAllHave says whether every module the catalogue places on node has a have of its own, read from the bus: then
|
||||
// the kept declaration is read no more (keptRetired). A node the catalogue does not place, or whose placement or haves
|
||||
// placedAllHave says whether every module the seat mesh-placement places on node has a have of its own, read from the
|
||||
// bus: then the kept declaration is read no more (keptRetired). A node the seat does not place, or whose placement or haves
|
||||
// cannot be read, keeps reading it.
|
||||
func placedAllHave(ctx context.Context, session *link.Session, node string) (bool, string) {
|
||||
key, err := delivery.PlacementKey(node)
|
||||
@@ -260,7 +260,7 @@ func placedAllHave(ctx context.Context, session *link.Session, node string) (boo
|
||||
// allHave says whether has finds a have for every module p places, and why not.
|
||||
func allHave(p delivery.Placement, has func(module string) (bool, error)) (bool, string) {
|
||||
if len(p.Modules) == 0 {
|
||||
return false, "the catalogue places no module here"
|
||||
return false, "the seat mesh-placement places no module here"
|
||||
}
|
||||
for _, m := range p.Modules {
|
||||
ok, err := has(m.Module)
|
||||
|
||||
Reference in New Issue
Block a user