From 5d512669c4b4c80cc54f62eb7afcdbcae75430f7 Mon Sep 17 00:00:00 2001 From: Erica Pisani Date: Wed, 11 Mar 2026 10:19:05 -0400 Subject: [PATCH 1/4] docs(ai-agents): Fix footnote [9] for image URL redaction - Add RFC 2119 SHOULD keyword to image URL redaction requirement - Remove mime_type note from footnote [9] - Update pinned SHA link to main branch - Add [9] reference to AI Client Span table (gen_ai.input.messages) - Add trailing newline Co-Authored-By: Claude --- .../sdk/telemetry/traces/modules/ai-agents.mdx | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx b/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx index 1818362d5c34b5..a710eda8a1dbff 100644 --- a/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx +++ b/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx @@ -48,7 +48,7 @@ Additional attributes on the span: | Attribute | Type | Requirement Level | Description | Example | | :--------------------------------- | :----- | :---------------- | :-------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------- | -| `gen_ai.input.messages` | string | optional | List of dictionaries describing the messages (prompts) given to the agent. **[0]**, **[1]**, **[6]**, **[7]** | `'[{"role": "user", "parts": [{"type": "text", "content": "..."}]}]'` | +| `gen_ai.input.messages` | string | optional | List of dictionaries describing the messages (prompts) given to the agent. **[0]**, **[1]**, **[6]**, **[7]**, **[9]** | `'[{"role": "user", "parts": [{"type": "text", "content": "..."}]}]'` | | `gen_ai.tool.definitions` | string | optional | List of dictionaries describing the available tools. **[0]** | `'[{"name": "random_number", "description": "..."}, ...]'` | | `gen_ai.system_instructions` | string | optional | The system instructions passed to the model. | `"You are a helpful assistant."` | | `gen_ai.request.max_tokens` | int | optional | Model configuration parameter. | `500` | @@ -113,7 +113,7 @@ Additional attributes on the span: | Attribute | Type | Requirement Level | Description | Example | | :--------------------------------- | :----- | :---------------- | :----------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------- | -| `gen_ai.input.messages` | string | optional | List of dictionaries describing the messages (prompts) sent to the LLM. **[0]**, **[1]**, **[6]**, **[7]** | `'[{"role": "user", "parts": [{"type": "text", "content": "..."}]}]'` | +| `gen_ai.input.messages` | string | optional | List of dictionaries describing the messages (prompts) sent to the LLM. **[0]**, **[1]**, **[6]**, **[7]**, **[9]** | `'[{"role": "user", "parts": [{"type": "text", "content": "..."}]}]'` | | `gen_ai.tool.definitions` | string | optional | List of dictionaries describing the available tools. **[0]** | `'[{"name": "random_number", "description": "..."}, ...]'` | | `gen_ai.system_instructions` | string | optional | The system instructions passed to the model. | `"You are a helpful assistant."` | | `gen_ai.request.max_tokens` | int | optional | Model configuration parameter. | `500` | @@ -252,3 +252,9 @@ Binary blobs in the input list should be replaced with the string `"[Blob substi In some agent libraries, the agent name is optional, and some do not provide the user an option to name their agents. In these cases, the span name SHOULD be `"invoke_agent {call_id}"`, where `call_id` is some user-provided identifier for the agent invocation. For example, `functionId` in Vercel AI. + +**[9]** + +Image URLs in the data URL format in the input list **SHOULD** be replaced with the string `"[Blob substitute]"` in positions where binary data is expected. For example, data URLs like `data:image/png;base64` will be redacted, but HTTP URLs like `example.com/data?` will not be. + +See [this file](https://github.com/getsentry/sentry-python/blob/main/sentry_sdk/integrations/pydantic_ai/consts.py) for the regex used. From 1c8c8474c68f77a44f20fc2452ef35c40fdda78d Mon Sep 17 00:00:00 2001 From: Erica Pisani Date: Wed, 11 Mar 2026 10:29:09 -0400 Subject: [PATCH 2/4] fix link --- develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx b/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx index a710eda8a1dbff..519bca9b5bcd14 100644 --- a/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx +++ b/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx @@ -257,4 +257,4 @@ In these cases, the span name SHOULD be `"invoke_agent {call_id}"`, where `call_ Image URLs in the data URL format in the input list **SHOULD** be replaced with the string `"[Blob substitute]"` in positions where binary data is expected. For example, data URLs like `data:image/png;base64` will be redacted, but HTTP URLs like `example.com/data?` will not be. -See [this file](https://github.com/getsentry/sentry-python/blob/main/sentry_sdk/integrations/pydantic_ai/consts.py) for the regex used. +See [this file](https://github.com/getsentry/sentry-python/blob/master/sentry_sdk/integrations/pydantic_ai/consts.py) for the regex used. From 75a150cdb08057b7603dc41991843225c0b878de Mon Sep 17 00:00:00 2001 From: Erica Pisani Date: Wed, 11 Mar 2026 11:05:43 -0400 Subject: [PATCH 3/4] clean up to conform the style to other footnotes --- develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx b/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx index 519bca9b5bcd14..5f2878da2ee68b 100644 --- a/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx +++ b/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx @@ -255,6 +255,6 @@ In these cases, the span name SHOULD be `"invoke_agent {call_id}"`, where `call_ **[9]** -Image URLs in the data URL format in the input list **SHOULD** be replaced with the string `"[Blob substitute]"` in positions where binary data is expected. For example, data URLs like `data:image/png;base64` will be redacted, but HTTP URLs like `example.com/data?` will not be. +Image URLs in the data URL format in the input list should be replaced with the string `"[Blob substitute]"` in positions where binary data is expected. For example, data URLs like `data:image/png;base64` will be redacted, but HTTP URLs like `example.com/data?` will not be. See [this file](https://github.com/getsentry/sentry-python/blob/master/sentry_sdk/integrations/pydantic_ai/consts.py) for the regex used. From 06ac1e683c4e743f20e91a9bb110454cae26f70b Mon Sep 17 00:00:00 2001 From: Erica Pisani Date: Wed, 11 Mar 2026 14:04:10 -0400 Subject: [PATCH 4/4] add a more specific link for the regex --- develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx b/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx index 5f2878da2ee68b..bcfdbc985ea49c 100644 --- a/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx +++ b/develop-docs/sdk/telemetry/traces/modules/ai-agents.mdx @@ -257,4 +257,4 @@ In these cases, the span name SHOULD be `"invoke_agent {call_id}"`, where `call_ Image URLs in the data URL format in the input list should be replaced with the string `"[Blob substitute]"` in positions where binary data is expected. For example, data URLs like `data:image/png;base64` will be redacted, but HTTP URLs like `example.com/data?` will not be. -See [this file](https://github.com/getsentry/sentry-python/blob/master/sentry_sdk/integrations/pydantic_ai/consts.py) for the regex used. +See [here](https://github.com/getsentry/sentry-python/blob/5379537fcd2925374fa617e49bb618fc9979509b/sentry_sdk/integrations/pydantic_ai/consts.py#L6) for the regex used.