asks: a granted publish is the control for every refusal the proof reads as the bus's
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: THE CHANGE ALTERS ITS OWN CHECK (merge-check.sh): main's version judged it; the change's judges the pull requests after it merges; it…
mesh/delivery superseded: a newer head of the same pull request

This commit is contained in:
2026-10-09 11:24:17 +02:00
parent 3a486014fc
commit 8d24e7bbb5
+9 -4
View File
@@ -232,11 +232,16 @@ func TestTheOperatorsAnswerEndToEnd(t *testing.T) {
By: &asks.Person{Who: asks.Operator, Kind: "telegram", Identity: "42", Verified: "user id verified"}})
decided := asks.DecidedSubject("lab-asker")
// The control: what is granted is not refused, so a refusal below is the bus's word and not the lab's.
for _, try := range []struct{ user, subject string }{
{machine + ".lab-asker", "mesh.seat.operator-channel.accept.cancel.lab-asker"},
{machine + ".telegram", asks.IntakeSubject(asks.StandingWhat, "telegram")},
// The channel's control is a true standing, now: a false one would hold the router's messages.
standing, _ := json.Marshal(asks.Standing{Ready: true, EditsSilently: true, At: time.Now().UTC()})
for _, try := range []struct {
user, subject string
body []byte
}{
{machine + ".lab-asker", "mesh.seat.operator-channel.accept.cancel.lab-asker", []byte(`{"id":"none"}`)},
{machine + ".telegram", asks.IntakeSubject(asks.StandingWhat, "telegram"), standing},
} {
if l.refusedToPublish(try.user, try.subject, []byte(`{"id":"none","ready":true}`)) {
if l.refusedToPublish(try.user, try.subject, try.body) {
t.Fatalf("the control failed: %s was refused %s, which the controller grants it", try.user, try.subject)
}
}