From 200b86ad51820cfa579d994cb8aafe4981dc2324 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 11 Sep 2026 20:21:01 +0000 Subject: [PATCH 1/2] fix: the control plane owns a sidecar's listeners after the handshake The page said listeners stay in the local file. The first handshake uploads the whole document, listeners included, and the plane owns it from then on. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01WaDjmdUdiRoMXdZBcxwn2r --- control-plane/connect-sidecar.mdx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/control-plane/connect-sidecar.mdx b/control-plane/connect-sidecar.mdx index 5764169..86306e2 100644 --- a/control-plane/connect-sidecar.mdx +++ b/control-plane/connect-sidecar.mdx @@ -59,7 +59,7 @@ Four properties fall out of this shape, and they are the reason it looks like th hoop start sidecar --config config.yaml --token "" ``` - Listeners still come from the local file. Everything the Control Plane manages — guardrails, masking, analyzer settings — arrives over the ping. + The first handshake uploads this whole file, listeners included. The Control Plane owns it from then on, and listeners left in the file are ignored. The admin API reports the merged, live configuration. This is the only place you can see what the Sidecar actually ended up running: @@ -83,6 +83,7 @@ Four properties fall out of this shape, and they are the reason it looks like th | It appears, but runs no managed guardrails | Read `/config` on the admin API. A Sidecar that could not fetch falls back to its local file. | | Authentication fails | The token is per-Sidecar. Reusing one across two Sidecars is not a supported shape. | | Rules changed centrally but the Sidecar did not | Configuration is picked up on the ping, not pushed. Wait for the next interval or restart the Sidecar. | +| My listeners never reached the Control Plane | It already had a configuration for this Sidecar, so it kept that one. Edit the listeners there. | --- From d8d7d1cb8c0188d4b6fb52c1a4bedb5d62054c2c Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 11 Sep 2026 20:49:10 +0000 Subject: [PATCH 2/2] fix: keep the ping sentence, add listeners to the list it names Only the first sentence was false. Replacing the second one too dropped the only mention of how configuration arrives. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01WaDjmdUdiRoMXdZBcxwn2r --- control-plane/connect-sidecar.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/control-plane/connect-sidecar.mdx b/control-plane/connect-sidecar.mdx index 86306e2..8c332bb 100644 --- a/control-plane/connect-sidecar.mdx +++ b/control-plane/connect-sidecar.mdx @@ -59,7 +59,7 @@ Four properties fall out of this shape, and they are the reason it looks like th hoop start sidecar --config config.yaml --token "" ``` - The first handshake uploads this whole file, listeners included. The Control Plane owns it from then on, and listeners left in the file are ignored. + The first handshake uploads this whole file. Everything the Control Plane manages — listeners, guardrails, masking, analyzer settings — arrives over the ping. The admin API reports the merged, live configuration. This is the only place you can see what the Sidecar actually ended up running: