Skip to content

gantry acr artifact streaming - #836

Draft
Vaibhav Patel (vpatelsj) wants to merge 23 commits into
mainfrom
copilot/gantry-acr-artifact-streaming
Draft

Vaibhav Patel (vpatelsj) wants to merge 23 commits into
mainfrom
copilot/gantry-acr-artifact-streaming

Conversation

@vpatelsj

Copy link
Copy Markdown
Contributor

No description provided.

@vpatelsj Vaibhav Patel (vpatelsj) changed the title Copilot/gantry acr artifact streaming gantry acr artifact streaming Sep 24, 2026
Six agent knobs were duplicated across the config struct, defaults, env
vars, CLI flags, validation, chart values, JSON schema, and the rendered
ConfigMap. Four of them were tuning values an operator cannot evaluate
from the outside, so keep only the feature gate and the signed-origin
host allowlist and move the rest into internal/gantry/streaming beside
the behavior they govern.

NewOriginClient no longer takes tuning parameters and cannot fail, and
streaming.Options now falls back to defaults instead of rejecting a zero
value, which removes an error path from agent startup.

Also stop writing logConfig.logLevel on the host. The configurator owns
p2pConfig only; the test now pins that unrelated OverlayBD settings are
left exactly as the host had them.
The live streaming e2e sent sig=redacted, so the plan's secret-free
logs contract passed without testing anything. Use a sentinel SAS value
and assert it is absent from every Gantry pod's logs and metrics after
the request has demonstrably transited the agent.
Add a stale-provider e2e: remove the blob from the provider's containerd
while its DHT record survives, then assert the next range fails over to
the signed origin inside one request and the peer serves nothing more.
libp2p has no protocol-level withdraw, so this is the real production
shape rather than a simulated error.

Make the test origin reject any request whose URI did not arrive
byte-for-byte and give it the ACR data-path form, doubled slash and
percent-encoded query included. Raw signed-URL preservation through the
real listener was previously only covered by a unit test with a
hand-set RequestURI.

Factor the shared cluster setup into a fixture so the two scenarios do
not duplicate it.

Document the operations surface the plan required and was missing:
metrics reference, four alert rules separating Gantry, ACR, peer-reuse
and allowlist failures, an incident table, and a compatibility matrix
naming who owns each component.
@vpatelsj
Vaibhav Patel (vpatelsj) force-pushed the copilot/gantry-acr-artifact-streaming branch from 3d5f410 to 92842e1 Compare September 25, 2026 12:06

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant