Skip to content

test: PR 233 on ARC runners#1

Draft
sipercai wants to merge 105 commits into
mainfrom
liuyu/pr233-arc-ci-test-20260702
Draft

test: PR 233 on ARC runners#1
sipercai wants to merge 105 commits into
mainfrom
liuyu/pr233-arc-ci-test-20260702

Conversation

@sipercai

@sipercai sipercai commented Jul 2, 2026

Copy link
Copy Markdown
Owner

Temporary fork-only CI validation branch for alibaba#233 on ACK/ACS ARC runners.\n\nThis PR is not intended to merge. It exists to compare CI queue/runtime behavior with generated workflows using the fork runner label loongsuite-python-agent-fork-arc.

sipercai and others added 30 commits May 21, 2026 18:09
Co-authored-by: musi <admin@arms-test-agent033059173062.os30>
Co-authored-by: root <root@arms-test-agent033059173062.os30>
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Co-authored-by: 流屿 <caishipeng.csp@alibaba-inc.com>
123liuziming and others added 29 commits June 26, 2026 11:58
…te.md

Implements the hybrid "SpanProcessor + optional ReAct step patch" plan
documented in llm-dev/microsoft-agent-framework/investigate/execute.md.

- MicrosoftAgentFrameworkInstrumentor: enables MAF native OTel layers
  (force=True) and registers MAFSemanticProcessor.
- MAFSemanticProcessor (span_processor.py): injects gen_ai.span.kind,
  gen_ai.operation.name, renames MAF private-prefix attributes to gen_ai.*,
  normalizes provider.name (azure_openai -> openai), backfills TTFT from
  streaming events, sets StatusCode.OK on success, aggregates the 6 ARMS
  gauges. Reuses opentelemetry.util.genai.utils.gen_ai_json_dumps (aligned
  with openai-agents-v2/span_processor.py:27) to coerce dict/list attribute
  values into JSON strings.
- react_step_patch.py (opt-in via ARMS_MAF_REACT_STEP_ENABLED): emits one
  react step span per LLM round-trip inside FunctionInvocationLayer via
  ExtendedTelemetryHandler.react_step() from opentelemetry-util-genai.
- config.py: env switches (master, sensitive data, react step, slow threshold).
- tests: 23 passing unit tests covering span classification, metric
  aggregation, provider normalization, TTFT backfill, dict coercion, and
  react_step handler behavior.
[M1] MCP span classification: detect mcp.method.name attribute (or
SpanKind.CLIENT + mcp.* fallback) in _classify_span and return
(CLIENT, MCP). MAF_SPAN_NAME_PREFIXES documents that MCP is detected via
attribute rather than prefix (method names are unbounded).

[M2] revert_react_step_patch: capture originals BEFORE wrapping (via
__wrapped__ unwrap chain), and switch from broken decorator form to
wrap_function_wrapper(class, name, wrapper) + @wrapt.decorator. revert
now restores the original; apply->revert->apply does not stack wrappers.

[L1] _safe_dumps: cap output at 4096 chars (execute.md single-field cap)
since gen_ai_json_dumps only serializes. Docstring + module docstring
updated to match actual behavior.

Tests: +6 (test_mcp_span_classified_as_client, mcp client-kind fallback,
non-mcp client negative, _safe_dumps truncation, apply->revert->apply
round-trip, _unwrap_to_function). 29 passed.
- P0: react_step_patch wrappers now return coroutines from sync wrappers
  so MAF's await layer.get_response no longer raises TypeError.
  ContextVar tokens are set inside the coroutine body so set/reset share
  the same asyncio task context.
- P1: extend op_name override condition to include CLIENT span kind so MCP
  tools/call inner spans get gen_ai.operation.name=mcp even when MAF
  pre-wrote execute_tool.
- P3: provider.name normalization now handles sequence values (MAF emits
  list-wrapped values on AGENT spans) and falls back to case-insensitive
  matching so microsoft.agent_framework -> openai on AGENT spans.
- P5: instrument() prepends MAFSemanticProcessor to the SDK processor
  tuple so on_end enrichments run before exporter processors registered
  earlier in bootstrap.

Adds 7 unit tests; pytest tests/ -> 36 passed.
Add license header to all 11 files in the microsoft-agent-framework
instrumentation package. Resolves the check-license-header CI failure.
…e-pr208-229-232

# Conflicts:
#	loongsuite-distro/src/loongsuite/distro/bootstrap_gen.py
…e-pr208-229-232

# Conflicts:
#	.github/workflows/loongsuite_test_0.yml
#	loongsuite-distro/src/loongsuite/distro/bootstrap_gen.py
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.

5 participants