From 941c42bb626881523fb37c8737d6748de9707cae Mon Sep 17 00:00:00 2001 From: Abhijeet Prasad Date: Fri, 4 Sep 2026 14:17:06 -0400 Subject: [PATCH] fix(adk): preserve agent spans for custom roots Trace `BaseAgent.run_async` instead of treating `BaseNode.run` as its replacement. --- .agents/skills/commit-message/SKILL.md | 200 ++++++++++++------ py/pyproject.toml | 1 + ...base_agent_root_preserves_agent_spans.yaml | 57 +++++ ...adk_binary_data_attachment_conversion.yaml | 58 +++++ .../test_adk_braintrust_integration.yaml | 126 +++++++++++ .../2.6.3/test_adk_captures_metrics.yaml | 56 +++++ .../2.6.3/test_adk_complex_nested_schema.yaml | 68 ++++++ ...base_agent_root_preserves_agent_spans.yaml | 57 +++++ .../test_adk_input_schema_serialization.yaml | 56 +++++ .../test_adk_max_tokens_captures_content.yaml | 60 ++++++ ...test_adk_multi_turn_history_is_logged.yaml | 114 ++++++++++ ...nested_subagent_tool_calls_are_traced.yaml | 126 +++++++++++ .../test_adk_response_json_schema_dict.yaml | 61 ++++++ .../test_adk_structured_output_pydantic.yaml | 60 ++++++ ..._transfer_does_not_log_generator_exit.yaml | 152 +++++++++++++ ...n_does_not_duplicate_invocation_spans.yaml | 126 +++++++++++ .../test_adk_usage_metadata_metrics.yaml | 135 ++++++++++++ ...base_agent_root_preserves_agent_spans.yaml | 62 ++++++ .../integrations/adk/integration.py | 2 - .../braintrust/integrations/adk/patchers.py | 13 +- .../braintrust/integrations/adk/test_adk.py | 67 +++++- py/src/braintrust/integrations/adk/tracing.py | 35 +-- .../auto_test_scripts/test_auto_adk.py | 10 +- 23 files changed, 1590 insertions(+), 112 deletions(-) create mode 100644 py/src/braintrust/integrations/adk/cassettes/1.14.1/test_adk_custom_base_agent_root_preserves_agent_spans.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_binary_data_attachment_conversion.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_braintrust_integration.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_captures_metrics.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_complex_nested_schema.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_custom_base_agent_root_preserves_agent_spans.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_input_schema_serialization.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_max_tokens_captures_content.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_multi_turn_history_is_logged.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_nested_subagent_tool_calls_are_traced.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_response_json_schema_dict.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_structured_output_pydantic.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_subagent_transfer_does_not_log_generator_exit.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_sync_runner_run_does_not_duplicate_invocation_spans.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/2.6.3/test_adk_usage_metadata_metrics.yaml create mode 100644 py/src/braintrust/integrations/adk/cassettes/latest/test_adk_custom_base_agent_root_preserves_agent_spans.yaml diff --git a/.agents/skills/commit-message/SKILL.md b/.agents/skills/commit-message/SKILL.md index e9e160d74..6a44ebf09 100644 --- a/.agents/skills/commit-message/SKILL.md +++ b/.agents/skills/commit-message/SKILL.md @@ -1,97 +1,169 @@ --- name: commit-message -description: Suggest a Braintrust SDK repo-style commit message from the current diff and conversation. Use when asked to write, suggest, or generate a commit message for the current changes. +description: Generates a meaningful conventional commit message (title + body) from the current diff and conversation context. Use when asked to write, suggest, or generate a commit message for the current changes. --- -# Commit Message +# Commit Message Generator -Generate a single commit message that matches the style used on `main` in this repo. +Generate a conventional commit message based on the staged/unstaged diff and the surrounding conversation. -## Repo Style +## Conventional Commits Format -Prefer: +``` +(): + + -```text -(): +