agentevals-cli 0.6.1__tar.gz → 0.6.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/PKG-INFO +1 -1
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/flake.nix +5 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/pyproject.toml +1 -1
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/api/otlp_routes.py +14 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/streaming/ws_server.py +9 -3
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/trace_attrs.py +1 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/uv.lock +1 -1
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.claude/skills/eval/SKILL.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.claude/skills/eval/evals/evals.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.claude/skills/inspect/SKILL.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.claude/skills/inspect/evals/evals.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.dockerignore +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.github/workflows/ci.yml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.github/workflows/publish-evaluator-sdk.yml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.github/workflows/release.yml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.gitignore +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/.mcp.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/CONTRIBUTING.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/DEVELOPMENT.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/Dockerfile +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/LICENSE +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/Makefile +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/README.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/charts/agentevals/Chart.yaml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/charts/agentevals/templates/NOTES.txt +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/charts/agentevals/templates/_helpers.tpl +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/charts/agentevals/templates/deployment.yaml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/charts/agentevals/templates/service.yaml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/charts/agentevals/templates/serviceaccount.yaml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/charts/agentevals/values.yaml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/docs/assets/logo-color-on-transparent.svg +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/docs/assets/logo-color.png +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/docs/assets/logo-dark-on-transparent.svg +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/docs/custom-evaluators.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/docs/eval-set-format.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/docs/otel-compatibility.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/docs/streaming.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/README.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/custom_evaluators/eval_config.yaml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/custom_evaluators/response_quality.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/custom_evaluators/tool_call_checker.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/dice_agent/README.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/dice_agent/agent.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/dice_agent/eval_set.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/dice_agent/main.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/dice_agent/test_streaming.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/langchain_agent/README.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/langchain_agent/agent.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/langchain_agent/eval_set.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/langchain_agent/main.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/langchain_agent/requirements.txt +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/langchain_agent/test_streaming.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/sdk_example/async_example.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/sdk_example/context_manager_example.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/sdk_example/decorator_example.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/sdk_example/requirements.txt +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/strands_agent/agent.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/strands_agent/eval_set.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/strands_agent/main.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/strands_agent/requirements.txt +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/adk/requirements.txt +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/adk/run.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/langchain/requirements.txt +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/langchain/run.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/openai-agents/requirements.txt +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/openai-agents/run.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/strands/requirements.txt +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/strands/run.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/flake.lock +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/packages/evaluator-sdk-py/README.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/packages/evaluator-sdk-py/pyproject.toml +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/packages/evaluator-sdk-py/src/agentevals_evaluator_sdk/__init__.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/packages/evaluator-sdk-py/src/agentevals_evaluator_sdk/decorator.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/packages/evaluator-sdk-py/src/agentevals_evaluator_sdk/types.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/samples/eval_set_helm.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/samples/evalset_helm_3_2026-02-23.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/samples/evalset_k8s_2026-02-20.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/samples/helm.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/samples/helm_2.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/samples/helm_3.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/samples/k8s.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/__init__.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/_protocol.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/_static/assets/index-BqibLiHO.css +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/_static/assets/index-lHPO8TkI.js +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/_static/index.html +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/_static/logo.svg +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/_static/vite.svg +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/api/__init__.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/api/app.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/api/debug_routes.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/api/dependencies.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/api/models.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/api/otlp_app.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/api/routes.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/api/streaming_routes.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/builtin_metrics.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/cli.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/config.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/converter.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/custom_evaluators.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/eval_config_loader.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/evaluator/__init__.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/evaluator/resolver.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/evaluator/sources.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/evaluator/templates.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/evaluator/venv.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/extraction.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/genai_converter.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/loader/__init__.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/loader/base.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/loader/jaeger.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/loader/otlp.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/mcp_server.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/openai_eval_backend.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/output.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/runner.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/sdk.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/streaming/__init__.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/streaming/incremental_processor.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/streaming/processor.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/streaming/session.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/trace_metrics.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/utils/__init__.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/utils/genai_messages.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/utils/log_buffer.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/utils/log_enrichment.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/integration/__init__.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/integration/conftest.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/integration/test_evaluation_pipeline.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/integration/test_live_agents.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/integration/test_session_grouping.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/integration/test_timing_stress.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_api.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_converter.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_extraction.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_genai_converter.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_jaeger_loader.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_log_enrichment.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_otlp_loader.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_otlp_receiver.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_output.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_protocol.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_runner.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/tests/test_sdk.py +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/.gitignore +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/README.md +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/eslint.config.js +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/index.html +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/package-lock.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/package.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/public/logo.svg +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/public/vite.svg +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/App.css +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/App.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/api/client.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/assets/react.svg +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/annotation-queue/AnnotationDetailPanel.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/annotation-queue/AnnotationQueueView.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/annotation-queue/AnnotationTable.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/bug-report/BugReportModal.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/builder/BuilderHeader.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/builder/BuilderView.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/builder/EvalCaseCard.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/builder/EvalCasesList.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/builder/InvocationEditor.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/builder/JsonPreview.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/builder/MetadataEditor.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/builder/TraceUploadZone.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/builder/index.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/dashboard/DashboardView.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/dashboard/MetricScoreCard.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/dashboard/PerformanceCard.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/dashboard/PerformanceCharts.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/dashboard/SummaryStats.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/dashboard/TraceCard.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/dashboard/TraceTable.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/ComparisonPanel.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/DataSection.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/InspectorHeader.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/InspectorLayout.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/InspectorView.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/InvocationCard.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/InvocationSummaryPanel.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/MetricResultsSection.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/MetricsComparisonSection.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/PerformanceSection.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/ToolCallList.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/TrajectoryComparisonDetails.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/sidebar/Sidebar.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/streaming/LiveConversationPanel.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/streaming/LiveMessage.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/streaming/LiveStreamingView.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/streaming/SessionCard.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/streaming/SessionMetadata.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/upload/EvalSetEditorDrawer.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/upload/FileDropZone.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/upload/MetricSelector.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/upload/RawJsonPreview.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/upload/TraceEditorDrawer.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/upload/UploadView.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/welcome/WelcomeView.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/config.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/context/TraceContext.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/context/TraceProvider.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/index.css +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/lib/console-capture.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/lib/evalset-builder.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/lib/network-capture.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/lib/trace-helpers.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/lib/trace-loader.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/lib/trace-metadata.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/lib/trace-patcher.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/lib/types.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/lib/utils.ts +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/main.tsx +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/tsconfig.app.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/tsconfig.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/tsconfig.node.json +0 -0
- {agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/vite.config.ts +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "agentevals-cli"
|
|
7
|
-
version = "0.6.
|
|
7
|
+
version = "0.6.2"
|
|
8
8
|
description = "Standalone framework to evaluate agent correctness based on portable OpenTelemetry traces"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.11"
|
|
@@ -26,6 +26,7 @@ from opentelemetry.proto.collector.trace.v1.trace_service_pb2 import (
|
|
|
26
26
|
|
|
27
27
|
from ..extraction import flatten_otlp_attributes
|
|
28
28
|
from ..trace_attrs import (
|
|
29
|
+
OTEL_GENAI_CONVERSATION_ID,
|
|
29
30
|
OTEL_GENAI_INPUT_MESSAGES,
|
|
30
31
|
OTEL_GENAI_OUTPUT_MESSAGES,
|
|
31
32
|
OTEL_SCOPE,
|
|
@@ -107,6 +108,11 @@ async def _process_traces(body: dict, manager: StreamingTraceManager) -> None:
|
|
|
107
108
|
if not trace_id:
|
|
108
109
|
continue
|
|
109
110
|
|
|
111
|
+
if not metadata.get("conversation_id"):
|
|
112
|
+
conversation_id = _extract_conversation_id(span.get("attributes", []))
|
|
113
|
+
if conversation_id:
|
|
114
|
+
metadata["conversation_id"] = conversation_id
|
|
115
|
+
|
|
110
116
|
session = await manager.get_or_create_otlp_session(trace_id, metadata)
|
|
111
117
|
|
|
112
118
|
if not session.can_accept_span():
|
|
@@ -252,6 +258,14 @@ def _extract_agentevals_metadata(resource_attrs: list[dict]) -> dict:
|
|
|
252
258
|
}
|
|
253
259
|
|
|
254
260
|
|
|
261
|
+
def _extract_conversation_id(attrs_list: list[dict]) -> str | None:
|
|
262
|
+
"""Extract gen_ai.conversation.id from OTLP span attributes."""
|
|
263
|
+
for attr in attrs_list:
|
|
264
|
+
if attr.get("key") == OTEL_GENAI_CONVERSATION_ID:
|
|
265
|
+
return attr.get("value", {}).get("stringValue")
|
|
266
|
+
return None
|
|
267
|
+
|
|
268
|
+
|
|
255
269
|
def _convert_otlp_log_record(log_record: dict) -> dict | None:
|
|
256
270
|
"""Convert OTLP log record to internal log event format.
|
|
257
271
|
|
|
@@ -212,12 +212,15 @@ class StreamingTraceManager:
|
|
|
212
212
|
async def get_or_create_otlp_session(self, trace_id: str, metadata: dict) -> TraceSession:
|
|
213
213
|
"""Get existing session for trace_id or create a new one (OTLP path).
|
|
214
214
|
|
|
215
|
-
Groups spans by session_name (from resource attributes)
|
|
215
|
+
Groups spans by session_name (from resource attributes) or
|
|
216
|
+
gen_ai.conversation.id (OTel semconv), not by trace_id.
|
|
216
217
|
A single session can contain spans from multiple traces — this is common
|
|
217
218
|
with GenAI semconv instrumentation where each LLM call creates its own
|
|
218
|
-
independent trace
|
|
219
|
+
independent trace, and with multi-turn agent conversations where each
|
|
220
|
+
turn produces a separate trace sharing the same conversation ID.
|
|
219
221
|
"""
|
|
220
|
-
|
|
222
|
+
conversation_id = metadata.get("conversation_id")
|
|
223
|
+
session_name = metadata.get("session_name") or conversation_id or f"otlp-{trace_id[:12]}"
|
|
221
224
|
|
|
222
225
|
active_id = self._active_session_for_name.get(session_name)
|
|
223
226
|
if active_id:
|
|
@@ -225,6 +228,9 @@ class StreamingTraceManager:
|
|
|
225
228
|
if active and not active.is_complete:
|
|
226
229
|
active.trace_ids.add(trace_id)
|
|
227
230
|
return active
|
|
231
|
+
if active and active.is_complete and conversation_id:
|
|
232
|
+
self._reopen_session(active, trace_id, session_name)
|
|
233
|
+
return active
|
|
228
234
|
|
|
229
235
|
existing = self.find_session_by_trace_id(trace_id)
|
|
230
236
|
if existing and existing.is_complete:
|
|
@@ -23,6 +23,7 @@ OTEL_GENAI_TOOL_NAME = "gen_ai.tool.name"
|
|
|
23
23
|
OTEL_GENAI_TOOL_CALL_ID = "gen_ai.tool.call.id"
|
|
24
24
|
OTEL_GENAI_TOOL_CALL_ARGUMENTS = "gen_ai.tool.call.arguments"
|
|
25
25
|
OTEL_GENAI_TOOL_CALL_RESULT = "gen_ai.tool.call.result"
|
|
26
|
+
OTEL_GENAI_CONVERSATION_ID = "gen_ai.conversation.id"
|
|
26
27
|
|
|
27
28
|
# ADK-specific custom attributes (gcp.vertex.agent.*)
|
|
28
29
|
ADK_LLM_REQUEST = "gcp.vertex.agent.llm_request"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/charts/agentevals/templates/serviceaccount.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/custom_evaluators/response_quality.py
RENAMED
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/custom_evaluators/tool_call_checker.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/sdk_example/context_manager_example.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/adk/requirements.txt
RENAMED
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/langchain/requirements.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/openai-agents/run.py
RENAMED
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/examples/zero-code-examples/strands/requirements.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/_static/assets/index-BqibLiHO.css
RENAMED
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/_static/assets/index-lHPO8TkI.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/src/agentevals/streaming/incremental_processor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/annotation-queue/AnnotationTable.tsx
RENAMED
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/bug-report/BugReportModal.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/builder/InvocationEditor.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/dashboard/MetricScoreCard.tsx
RENAMED
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/dashboard/PerformanceCard.tsx
RENAMED
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/dashboard/PerformanceCharts.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/ComparisonPanel.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/InspectorHeader.tsx
RENAMED
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/InspectorLayout.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/InvocationCard.tsx
RENAMED
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/InvocationSummaryPanel.tsx
RENAMED
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/MetricResultsSection.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/inspector/PerformanceSection.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/streaming/LiveConversationPanel.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/streaming/LiveStreamingView.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/streaming/SessionMetadata.tsx
RENAMED
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/upload/EvalSetEditorDrawer.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentevals_cli-0.6.1 → agentevals_cli-0.6.2}/ui/src/components/upload/TraceEditorDrawer.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|