Skip to content

feat(observability): trace skill execution - #1

Draft
zakahan wants to merge 2 commits into
mainfrom
feat/skill-observability-origin
Draft

feat(observability): trace skill execution#1
zakahan wants to merge 2 commits into
mainfrom
feat/skill-observability-origin

Conversation

@zakahan

@zakahan zakahan commented Aug 2, 2026

Copy link
Copy Markdown
Owner

Summary

  • add a shared Skill observability model for legacy VeADK SkillsTool and Google ADK SkillToolset operations
  • propagate W3C trace context through InvokeTool into the sandbox python agent process
  • attribute real LLM input/output token usage to the active Skill without high-cardinality metric labels
  • add Skill invocation, error, duration, and token metrics while retaining the legacy latency metric
  • prevent active Skill state from leaking across invocation IDs

Validation

  • 30 focused tests passed
  • Ruff 0.11.12 lint and format checks passed
  • branch is based on this fork latest origin/main

Notes

Only traceparent and tracestate cross the sandbox boundary; baggage and prompt/output content are not added by this change.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

license-eye has totally checked 620 files.

Valid Invalid Ignored Fixed
619 1 0 0
Click to see the invalid file list
  • tests/tracing/test_skill_observability.py

@@ -0,0 +1,75 @@
from types import SimpleNamespace

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
from types import SimpleNamespace
# Copyright (c) 2025 Beijing Volcano Engine Technology Co., Ltd. and/or its affiliates.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from types import SimpleNamespace

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant