Say again what the controller keeps at every push, so a word refused before its grant is kept once a push carries it (issue 1790, D1)

This commit is contained in:
2026-10-22 19:05:05 +02:00
parent 791c2a3d48
commit ab33f015ec
+7
View File
@@ -1490,6 +1490,13 @@ func issueMemberships(ctx context.Context, open *stores, server *link.Server, se
if reheard > 0 {
fmt.Printf(" issued %d membership(s) again for what they hear of a module's stream\n", reheard)
}
// **And says again what it keeps** (novox/hq ADR 0495 clause 2, issue 1790): its word at start is refused until a push
// carries its grant; kept only when it changed, so saying it at every push changes nothing else.
if js := servingBus.Load(); js != nil {
if err := announceOwnStates(ctx, js); err != nil {
fmt.Printf(" states: %v\n", err)
}
}
if len(refused) > 0 {
// Returned, never passed over (novox/hq issue 249): the declarations of the machines they are
// for are not sent, and the rollout that asked is tried again rather than waiting for a push.