Human: it's a bit confusing. Are 3XX redirects allowed or not. LLMs say no, but actually yes.
Addie:
Confirmed and it's a direct contradiction, not just a locality gap:
adagents. json Tech Spec (the primary doc): "Validators reject any HTTP redirect... The URL must resolve directly to the JSON file with a 200 response — no 301, 302, or other redirect chain. "
Managed Network Deployment doc: "Same-registrable-domain redirects MUST be followed on the /. well-known/adagents. json fetch... Capping the chain at 3 hops. "
These are opposite normative statements about the same fetch. One says reject all redirects, the other says MUST follow same-eTLD+1 redirects. That's not a "hard to find" problem — it's a real spec conflict, and no implementer reading both docs can satisfy both.
Context
The redirect policy for the initial fetch of a well-known file (before any authoritative_location variant is known) already exists for adagents.json, in the Managed Network Deployment doc:
"Same-registrable-domain redirects MUST be followed on the /.well-known/adagents.json fetch — apex ↔ www, and any redirect that stays on the same registrable domain (eTLD+1) — re-validating the SSRF controls on every hop, refusing any redirect to a non-HTTPS scheme, and capping the chain at 3 hops. Refusing these silently reports a correctly-configured publisher as unauthorized."
This matches the leashed-redirect approach implementers (e.g. ssrfSafeFetchAdAgents in adcp-client) already use: ≤3 hops, same registrable domain, HTTPS-only, per-hop SSRF revalidation.
Problem
- This rule lives only in the "Managed Network Deployment" doc, not in the primary adagents.json Tech Spec fetch-reference steps. An implementer reading the adagents.json spec top-to-bottom will not find it and may reasonably conclude (as we did) that initial-fetch redirects are unaddressed — leading verifiers to refuse redirects at hop zero and fail-open on the
authorized_operators check for any publisher doing an ordinary apex↔www redirect.
- The equivalent rule does not appear to exist for
brand.json's initial /.well-known/brand.json fetch at all.
Ask
- Cross-link (or relocate) the same-registrable-domain redirect rule from Managed Network Deployment into the adagents.json Tech Spec's fetch-reference steps, so it's visible where implementers actually look.
- State explicitly whether the same rule (≤3 hops, same registrable domain, HTTPS-only, per-hop SSRF revalidation) applies to the initial
brand.json fetch, and if so, add it to the brand.json spec.
Affected docs: governance/property/adagents, governance/property/managed-networks, brand-protocol/brand-json.
Human: it's a bit confusing. Are 3XX redirects allowed or not. LLMs say no, but actually yes.
Addie:
Context
The redirect policy for the initial fetch of a well-known file (before any
authoritative_locationvariant is known) already exists foradagents.json, in the Managed Network Deployment doc:This matches the leashed-redirect approach implementers (e.g.
ssrfSafeFetchAdAgentsin adcp-client) already use: ≤3 hops, same registrable domain, HTTPS-only, per-hop SSRF revalidation.Problem
authorized_operatorscheck for any publisher doing an ordinary apex↔www redirect.brand.json's initial/.well-known/brand.jsonfetch at all.Ask
brand.jsonfetch, and if so, add it to the brand.json spec.Affected docs:
governance/property/adagents,governance/property/managed-networks,brand-protocol/brand-json.