Skip to content
Merged
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
1afe5d6
feat(openai): Set gen_ai.tool.definitions attribute
alexander-alderman-webb Jul 30, 2026
33faef1
add type
alexander-alderman-webb Jul 30, 2026
9ba36b2
feat(openai): Set attribute for the Responses API
alexander-alderman-webb Jul 30, 2026
7398e26
make iteration safer
alexander-alderman-webb Jul 30, 2026
0cd572b
clean up test
alexander-alderman-webb Jul 30, 2026
6d8546a
clean up
alexander-alderman-webb Jul 30, 2026
54ca1d9
higher version bound
alexander-alderman-webb Jul 30, 2026
f94e12e
fix import error
alexander-alderman-webb Jul 30, 2026
9f5b9ed
merge
alexander-alderman-webb Jul 30, 2026
8048f1d
fix import
alexander-alderman-webb Jul 30, 2026
e8f202e
Merge branch 'webb/openai-completions-gen-ai-tool-definitions' into w…
alexander-alderman-webb Jul 30, 2026
a9e263c
more import problems
alexander-alderman-webb Jul 30, 2026
2ceb5ef
restore import changes
alexander-alderman-webb Jul 30, 2026
ee8639e
Merge branch 'webb/openai-completions-gen-ai-tool-definitions' into w…
alexander-alderman-webb Jul 30, 2026
7c30a05
ref(openai-agents): Stop setting gen_ai.request.available_tools on Ex…
alexander-alderman-webb Jul 30, 2026
df36922
ref(openai-agents): Stop setting gen_ai.request.available_tools on In…
alexander-alderman-webb Jul 30, 2026
74b0823
type safety
alexander-alderman-webb Jul 30, 2026
7496d8e
Merge branch 'webb/openai-responses-gen-ai-tool-definitions' into web…
alexander-alderman-webb Jul 30, 2026
4e12293
Merge branch 'webb/openai-agents-tool-definitions' into webb/openai-a…
alexander-alderman-webb Jul 30, 2026
18a45a2
fix(openai-agents): Stop destructively wrapping tools
alexander-alderman-webb Jul 30, 2026
ce1c3fe
Merge branch 'webb/openai-agents-agent-tool-definitions' into webb/op…
alexander-alderman-webb Jul 30, 2026
89f78bf
add quotes around type annotation
alexander-alderman-webb Jul 31, 2026
a15f21b
Merge branch 'webb/openai-responses-gen-ai-tool-definitions' into web…
alexander-alderman-webb Jul 31, 2026
df909c3
Merge branch 'webb/openai-agents-tool-definitions' into webb/openai-a…
alexander-alderman-webb Jul 31, 2026
c140a3f
Merge branch 'webb/openai-agents-agent-tool-definitions' into webb/op…
alexander-alderman-webb Jul 31, 2026
4efb6fb
try out RunHooks
alexander-alderman-webb Jul 31, 2026
4eec0bb
Revert "try out RunHooks"
alexander-alderman-webb Jul 31, 2026
1a2a232
make idempotent
alexander-alderman-webb Jul 31, 2026
23696f3
gate custom access
alexander-alderman-webb Jul 31, 2026
53ae691
Merge branch 'webb/openai-completions-gen-ai-tool-definitions' into w…
alexander-alderman-webb Jul 31, 2026
adf5e38
Merge branch 'webb/openai-responses-gen-ai-tool-definitions' into web…
alexander-alderman-webb Jul 31, 2026
e89f581
Merge branch 'webb/openai-agents-tool-definitions' into webb/openai-a…
alexander-alderman-webb Jul 31, 2026
27d9ea6
Merge branch 'webb/openai-agents-agent-tool-definitions' into webb/op…
alexander-alderman-webb Jul 31, 2026
a301748
merge master
alexander-alderman-webb Jul 31, 2026
08f26fe
remove attribute
alexander-alderman-webb Jul 31, 2026
f27ec10
Merge branch 'webb/openai-agents-agent-tool-definitions' into webb/op…
alexander-alderman-webb Jul 31, 2026
620418d
Merge branch 'master' into webb/openai-agents-tool-overwrite
alexander-alderman-webb Jul 31, 2026
7f5cc96
no idempotency guard
alexander-alderman-webb Jul 31, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 2 additions & 9 deletions sentry_sdk/integrations/openai_agents/patches/tools.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,14 +57,7 @@

return sentry_wrapped_on_invoke_tool

wrapped_tool = agents.FunctionTool(
name=tool.name,
description=tool.description,
params_json_schema=tool.params_json_schema,
on_invoke_tool=create_wrapped_invoke(tool, original_on_invoke),
strict_json_schema=tool.strict_json_schema,
is_enabled=tool.is_enabled,
)
wrapped_tools.append(wrapped_tool)
tool.on_invoke_tool = create_wrapped_invoke(tool, original_on_invoke)

Check warning on line 60 in sentry_sdk/integrations/openai_agents/patches/tools.py

View check run for this annotation

@sentry/warden / warden: code-review

Mutating tool.on_invoke_tool in place leads to nested wrapping on repeated calls

Each call to `_get_all_tools` wraps `tool.on_invoke_tool` again because the mutation persists on the original tool instance. This creates nested spans and duplicate instrumentation if the same agent runs more than once.
wrapped_tools.append(tool)
Comment thread
alexander-alderman-webb marked this conversation as resolved.
Comment thread
alexander-alderman-webb marked this conversation as resolved.

Comment thread
alexander-alderman-webb marked this conversation as resolved.
return wrapped_tools
Loading