From ccd089bb1fbf834f37425d622a3bec64d6bd2347 Mon Sep 17 00:00:00 2001 From: Antonio Ojea Date: Sun, 21 Jun 2026 21:10:36 +0000 Subject: [PATCH 1/3] fix AutoRelay default zero value --- cmd/sam-node/main.go | 28 +++++++++++++++++----------- tests/integration/failover_test.go | 2 +- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/cmd/sam-node/main.go b/cmd/sam-node/main.go index 1ecb9d7..87cd504 100644 --- a/cmd/sam-node/main.go +++ b/cmd/sam-node/main.go @@ -190,12 +190,15 @@ func main() { MeshID: meshFlag, DiscoveryInterval: discoveryIntervalFlag, ListenAddrs: listenAddrs, - EnableRelay: enableRelayFlag, - NodeConfig: nodeConfig, - KeyGracePeriod: keyGracePeriodFlag, - AllowLoopback: allowLoopbackFlag, - MonitorBootstrap: monitorBootstrapFlag, - MonitorInterval: monitorCheckIntervalFlag, + EnableRelay: enableRelayFlag, + NodeConfig: nodeConfig, + KeyGracePeriod: keyGracePeriodFlag, + AllowLoopback: allowLoopbackFlag, + MonitorBootstrap: monitorBootstrapFlag, + MonitorInterval: monitorCheckIntervalFlag, + AutoRelayMinInterval: autoRelayMinIntervalFlag, + AutoRelayBootDelay: autoRelayBootDelayFlag, + AutoRelayBackoff: autoRelayBackoffFlag, }) if err != nil { logger.Fatalf("Failed to start mesh node: %v", err) @@ -243,11 +246,14 @@ func main() { DiscoveryInterval: discoveryIntervalFlag, ListenAddrs: listenAddrs, EnableRelay: enableRelayFlag, - NodeConfig: nodeConfig, - KeyGracePeriod: keyGracePeriodFlag, - AllowLoopback: allowLoopbackFlag, - MonitorBootstrap: monitorBootstrapFlag, - MonitorInterval: monitorCheckIntervalFlag, + NodeConfig: nodeConfig, + KeyGracePeriod: keyGracePeriodFlag, + AllowLoopback: allowLoopbackFlag, + MonitorBootstrap: monitorBootstrapFlag, + MonitorInterval: monitorCheckIntervalFlag, + AutoRelayMinInterval: autoRelayMinIntervalFlag, + AutoRelayBootDelay: autoRelayBootDelayFlag, + AutoRelayBackoff: autoRelayBackoffFlag, }) if err != nil { enrollCancel() diff --git a/tests/integration/failover_test.go b/tests/integration/failover_test.go index bcc26e8..57e3c83 100644 --- a/tests/integration/failover_test.go +++ b/tests/integration/failover_test.go @@ -143,7 +143,7 @@ roles: {} "--allow-loopback", "--monitor-bootstrap", "1s", "--monitor-interval", "1s", - "--autorelay-min-interval", "0s", + "--autorelay-min-interval", "1s", "--autorelay-backoff", "1s", "--autorelay-boot-delay", "0s", ) From 0963aa552f81b5ab6f43b3a5d479f884d6aa33f2 Mon Sep 17 00:00:00 2001 From: Antonio Ojea Date: Sun, 21 Jun 2026 21:20:05 +0000 Subject: [PATCH 2/3] fix AutoRelay params in remaining NewSamNode calls --- cmd/sam-node/main.go | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/cmd/sam-node/main.go b/cmd/sam-node/main.go index 87cd504..d07ffab 100644 --- a/cmd/sam-node/main.go +++ b/cmd/sam-node/main.go @@ -293,11 +293,14 @@ func main() { DiscoveryInterval: discoveryIntervalFlag, ListenAddrs: listenAddrs, EnableRelay: enableRelayFlag, - NodeConfig: nodeConfig, - KeyGracePeriod: keyGracePeriodFlag, - AllowLoopback: allowLoopbackFlag, - MonitorBootstrap: monitorBootstrapFlag, - MonitorInterval: monitorCheckIntervalFlag, + NodeConfig: nodeConfig, + KeyGracePeriod: keyGracePeriodFlag, + AllowLoopback: allowLoopbackFlag, + MonitorBootstrap: monitorBootstrapFlag, + MonitorInterval: monitorCheckIntervalFlag, + AutoRelayMinInterval: autoRelayMinIntervalFlag, + AutoRelayBootDelay: autoRelayBootDelayFlag, + AutoRelayBackoff: autoRelayBackoffFlag, }) if err != nil { logger.Fatalf("Failed to start mesh node after enrollment: %v", err) @@ -437,11 +440,14 @@ func main() { DiscoveryInterval: discoveryIntervalFlag, ListenAddrs: []string{"/ip4/0.0.0.0/udp/0/quic-v1", "/ip4/0.0.0.0/tcp/0"}, EnableRelay: enableRelayFlag, - NodeConfig: nodeConfig, - KeyGracePeriod: keyGracePeriodFlag, - AllowLoopback: allowLoopbackFlag, - MonitorBootstrap: 2 * time.Minute, - MonitorInterval: 1 * time.Minute, + NodeConfig: nodeConfig, + KeyGracePeriod: keyGracePeriodFlag, + AllowLoopback: allowLoopbackFlag, + MonitorBootstrap: 2 * time.Minute, + MonitorInterval: 1 * time.Minute, + AutoRelayMinInterval: autoRelayMinIntervalFlag, + AutoRelayBootDelay: autoRelayBootDelayFlag, + AutoRelayBackoff: autoRelayBackoffFlag, }) if err != nil { logger.Fatalf("Failed to initialize node for enrollment: %v", err) From b0c8843d476a7dc015d8007caf788db921c06f2b Mon Sep 17 00:00:00 2001 From: Antonio Ojea Date: Sun, 21 Jun 2026 23:24:17 +0200 Subject: [PATCH 3/3] Update cmd/sam-node/main.go Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- cmd/sam-node/main.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cmd/sam-node/main.go b/cmd/sam-node/main.go index d07ffab..42bd7f9 100644 --- a/cmd/sam-node/main.go +++ b/cmd/sam-node/main.go @@ -445,9 +445,9 @@ func main() { AllowLoopback: allowLoopbackFlag, MonitorBootstrap: 2 * time.Minute, MonitorInterval: 1 * time.Minute, - AutoRelayMinInterval: autoRelayMinIntervalFlag, - AutoRelayBootDelay: autoRelayBootDelayFlag, - AutoRelayBackoff: autoRelayBackoffFlag, + AutoRelayMinInterval: 30 * time.Second, + AutoRelayBootDelay: 0 * time.Second, + AutoRelayBackoff: 3 * time.Second, }) if err != nil { logger.Fatalf("Failed to initialize node for enrollment: %v", err)