MCP: expose span status and status message in inspect_span
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 68/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
- Área
- api, observability
Línea de trabajo
Start by reading packages/domain/src/mcp-outputs/traces.ts to compare TraceSpanOutput, which already carries status, against InspectSpanOutput, which does not. Then follow apps/ai/src/mcp/tools/inspect-span.ts for the handler and renderer, using apps/ai/src/mcp/lib/render-trace.ts as the rendering reference; check whether the span-detail query already selects statusCode/statusMessage before extending it. Done looks like structured and text output showing Unset, Ok, and Error distinctly, agreeing with inspect_trace, plus tests for error-with-message, error-without-message, Ok, Unset, and missing span.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Problem
An agent inspecting one span cannot read its explicit OpenTelemetry status from inspect_span. The tool returns span attributes, resource attributes, and an optional AI decode, but its output schema and renderer omit statusCode and statusMessage.
A Worker can catch a failed operation, mark its custom span as an error, and still return a successful HTTP response. An agent needs that span status to understand the operation's result. Currently it must fetch inspect_trace separately, which already exposes these fields.
Why this matters for Cloudflare now
Cloudflare's October 26, 2026 Workers tracing update adds span.setStatus() to native custom spans. The explicit status and optional error message are included in exported OTLP traces, while the Workers Observability dashboard does not yet show span status.
This makes the existing MCP output gap more useful to close. The feature should work for spans from all OpenTelemetry producers.
Current code
Checked against main at 7edfccb17c3f524f9d793e0a11893fcf0535737e:
InspectSpanOutputandTraceSpanOutput: the single-span output omits status; the trace-span output includes it.inspect_spanhandler and renderer.inspect_tracerenderer already renders explicit status and error messages.
Proposed change
Expose the stored statusCode and statusMessage in both the structured and text results of inspect_span. Keep existing attributes, AI decoding, and missing-span behavior. Extend the span-detail query if needed.
Keep HTTP response status and OpenTelemetry span status separate. Do not infer an explicit Ok from a missing or unset status.
Acceptance criteria
inspect_spanreturns and renders the stored status and error message for a found span.- Unset, Ok, and Error remain distinct and agree with
inspect_tracefor the same span. - A custom span marked Error remains visible as failed even when the enclosing HTTP request succeeds.
- Tests cover an error with a message, an error without a message, Ok, Unset, and a missing span.
- Include a native Workers OTLP fixture using
setStatus({ code: "error", message: "Probe failed" }), or verify the same path with a small Worker export.
Evidence: source inspection. A live Cloudflare-to-Maple export has not been tested for this report.
- Lenguaje dominante
- TypeScript
- Estrellas
- 1.8k
- Forks
- 120
- Merge medio
- 8 h 11 min
- PR fusionados (30 d)
- 667
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de MapleTechLabs/maple
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
MapleTechLabs/maple#1921 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
MapleTechLabs/maple#1888 ·
Los mantenedores suelen responder en 1 día
-
Alerting: Linear as a destination type, opening one issue per incidentPosiblemente ocupada @Makisuo la tomó hoy. Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
MapleTechLabs/maple#1896 ·
Los mantenedores suelen responder en 1 día
-
@maple-dev/alchemy: typed dashboard props, a managed refresh interval, and adopting a dashboard built in the UIPosiblemente ocupada @jasonkuhrt la tomó hace 2 días. Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 18/100
MapleTechLabs/maple#1891 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
MapleTechLabs/maple#1874 ·
Los mantenedores suelen responder en 1 día
Todos los issues de MapleTechLabs/maple
Issues similares
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 1 día
-
area:plugins area:security area:skills bug has repro
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
anthropics/claude-code#105911 ·
Los mantenedores suelen responder en 1 día
-
[ko] Translate /team into KoreanAbiertodocumentation good first issue help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
dev-five-git/devup-ui#879 ·
Los mantenedores suelen responder en 11 días
-
openspec-apply-change skill: when blocked, may select a ready artifact unrelated to missingArtifactsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Fission-AI/OpenSpec#2165 ·
Los mantenedores suelen responder en 1 día
-
🐞 bug 🧐 unconfirmed
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Tencent/tdesign-vue-next#7032 · 1 comentario ·
Los mantenedores suelen responder en 1 día