ECO-639: Document the X-Agent-Info attribution header - #1144
Draft
wkoutre wants to merge 1 commit into
Draft
Conversation
Adds a dedicated page covering the optional X-Agent-Info request header (decision_origin, integration_name, version), the rules that mark it malformed, and the x-agent-info-status response contract used to confirm it parsed. Cross-linked from the swapping API integration guide, troubleshooting page, and the Uniswap AI overview. ECO-639
|
Thanks for contributing to Uniswap Docs! 🦄 Quick heads up on how this repo works: the docs you see on developers.uniswap.org are built from a separate source repo. When we accept a change here, we port it over there, so your fix might show up on the live site before it lands in this repo. Updates to this repo come in batches on a regular cadence. When yours is included, you'll be credited as a co-author on the commit, so the contribution counts on your GitHub profile and in Uniswap/docs. We review every PR but can't merge everything. Either way, someone from the docs team will follow up here once we've taken a look. One legal bit: by submitting a PR you agree your contribution is licensed under the repo's MIT license. |
msarkor718
approved these changes
Aug 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Linear
https://linear.app/uniswap/issue/ECO-639
Summary
Adds developer docs for the optional
X-Agent-Inforequest header (AI-agent traffic attribution on the Trading API):content/trading/swapping-api/agent-attribution.mdx: the three-field request schema (decision_origin,integration_name,version), every rule that marks the header malformed, and thex-agent-info-statusresponse contract used to confirm it parsed — with a worked cURL + TypeScript example.meta.json: adds the new page to the Swapping API nav, after Integration Guide.integration-guide.mdx(Authentication section),common-errors.mdx(Headers troubleshooting), anduniswap-ai/overview.mdx(AI-agent audience).Schema and malformed-detection rules were verified directly against Linear ECO-634 and the backend implementation PR body (
Uniswap/backend#11003), not just the docs ticket's own description — two real gaps (the "successful responses only" gating on the diagnostic response header, and the empty-string-is-absent-not-malformed case) were caught by an independent review pass and fixed before this PR was opened.Uniswap/backend#11003(parsing + thex-agent-info-statusresponse header) and its base stack (#11002→substreams#670) are all still open, unmerged as of 2026-08-02. The automated security gate passed, but the PR carries an explicit "do not merge before SECURE-274 appsec review closes" note. ECO-634 (the gateway ticket) is in "In Review", not Done. Recommend holding this docs PR until the backend stack merges and the entry-gateway CORS/Pulumi change actually deploys — otherwise these docs describe a header that silently does nothing in production yet.README.md/CONTRIBUTING.md(added in the recentcontent/-restructure),Uniswap/docsis a downstream mirror: accepted changes are ported into a separate, private publishing pipeline in batches, and may go live before or after they land here. So there's already a natural delay before this PR (once merged) reaches the live site — worth knowing when coordinating with navbar links fallback to most recent version instead of current version #1 above.llms.txt/llms-full.txtare not files in this repo. No staticllms.txtexists undercontent/; the previous (now-archived) Docusaurus site generated it from doc content at build time viadocusaurus-plugin-llms, andcontent/uniswap-ai/overview.mdxdescribes the same live behavior today atdevelopers.uniswap.org/llms.txt. This strongly suggests the new pipeline auto-generates it fromcontent/the same way — meaning this page should flow intollms.txt/llms-full.txtautomatically once ported — but I don't have visibility into that separate pipeline's repo to confirm directly.Test plan
meta.jsonis well-formed JSON and the new page's nav entry matches its filename.content/(no rootpackage.json) — nothing further to run.🤖 Autonomously generated by the Linear Task Worker.