From 7e4f86253e5d02ba54de32ef49731c921efd23ba Mon Sep 17 00:00:00 2001 From: jochen Date: Mon, 9 Nov 2026 22:53:21 +0100 Subject: [PATCH] =?UTF-8?q?T2:=20the=20tool=20runner=20states=20the=20capa?= =?UTF-8?q?bility=20seat-settle-delay=20(ADR=200664=20=C2=A75,=20issue=201?= =?UTF-8?q?748)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ --- node-tools/internal/runtime/announce_test.go | 2 +- node-tools/internal/runtime/busstate.go | 6 ++++-- node-tools/internal/runtime/ledgers_test.go | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/node-tools/internal/runtime/announce_test.go b/node-tools/internal/runtime/announce_test.go index c263b7e..6965fea 100644 --- a/node-tools/internal/runtime/announce_test.go +++ b/node-tools/internal/runtime/announce_test.go @@ -139,7 +139,7 @@ func TestTheRunnerStatesTheCapabilitiesOfItsCallsInItsPing(t *testing.T) { t.Fatalf("ping of the instance: %v", err) } var ping micro.Ping - if err := json.Unmarshal(msg.Data, &ping); err != nil || ping.Metadata[announce.Capabilities] != "bus-state-calls,ledger-calls" { + if err := json.Unmarshal(msg.Data, &ping); err != nil || ping.Metadata[announce.Capabilities] != "bus-state-calls,ledger-calls,seat-settle-delay" { t.Errorf("the runner states %q (%v), want its bus-state and ledger calls", ping.Metadata[announce.Capabilities], err) } } diff --git a/node-tools/internal/runtime/busstate.go b/node-tools/internal/runtime/busstate.go index 3d293d4..2c67519 100644 --- a/node-tools/internal/runtime/busstate.go +++ b/node-tools/internal/runtime/busstate.go @@ -5,6 +5,7 @@ import ( "fmt" "sort" + stdio "git.novox.be/novox/mesh-sdk/go" "git.novox.be/novox/mesh-sdk/go/buscalls" ) @@ -25,9 +26,10 @@ var callFamilies = map[string][]string{ buscalls.LedgerRebuild, buscalls.LedgerReindex, buscalls.LedgerSnapshot, buscalls.LedgerLag}, } -// CallCapabilities is every capability of the calls this runner answers, sorted. +// CallCapabilities is every capability of the calls this runner answers, sorted. The delayed settle of a pulled seat +// message names a fate, not a method, so it stands beside the method families (novox/hq ADR 0664 ยง5). func CallCapabilities() []string { - out := make([]string, 0, len(callFamilies)) + out := []string{stdio.CapSeatSettleDelay} for c := range callFamilies { out = append(out, c) } diff --git a/node-tools/internal/runtime/ledgers_test.go b/node-tools/internal/runtime/ledgers_test.go index 6d530fd..805984a 100644 --- a/node-tools/internal/runtime/ledgers_test.go +++ b/node-tools/internal/runtime/ledgers_test.go @@ -204,7 +204,7 @@ func TestABundleToolNamedAsALedgerRepairIsRefused(t *testing.T) { // no other name; none answers "the runtime answers no ...". func TestEveryCallOfAStatedCapabilityIsAnswered(t *testing.T) { m, _, _ := aLedger(t) - if got := strings.Join(CallCapabilities(), ","); got != "bus-state-calls,ledger-calls" { + if got := strings.Join(CallCapabilities(), ","); got != "bus-state-calls,ledger-calls,seat-settle-delay" { t.Fatalf("the runner states %s", got) } for capability, methods := range callFamilies {