{"ok":true,"data":{"name":"PlatPhorm Trace","version":"0.0.2","description":"Canonical observability spine, trace aggregation platform, span lifecycle system, async ingestion API, MCP trace observatory, W3C Trace Context layer, cross-site correlation engine, and AI execution microscope for PlatPhormNews.","baseUrl":"https://trace.platphormnews.com","auth":{"platformKey":"PLATPHORM_API_KEY","acceptedHeaders":["Authorization: Bearer $PLATPHORM_API_KEY","X-PlatPhorm-API-Key: $PLATPHORM_API_KEY"],"publicReadOnly":true},"counts":{"sites":183,"trustedDomains":176,"pendingDomains":1,"mcpServers":2,"tools":78,"resources":33,"prompts":21,"standardRoutes":22,"publicApiEndpoints":24,"protectedApiEndpoints":18,"totalTraces":227936,"activeTraces":631},"endpoints":[{"method":"GET","path":"/api/v1/traces","public":true,"description":"List public-safe traces from persisted storage."},{"method":"POST","path":"/api/v1/traces","public":false,"description":"Ingest a trace; durable span rows are written only for traces with more than one tool call."},{"method":"GET","path":"/api/v1/traces/{traceId}","public":true,"description":"Read one public-safe trace with redacted spans."},{"method":"GET","path":"/api/v1/traces/{traceId}/timeline","public":true,"description":"Timeline view assembled from persisted spans."},{"method":"GET","path":"/api/v1/traces/{traceId}/tree","public":true,"description":"Parent-child span tree view."},{"method":"GET","path":"/api/v1/traces/{traceId}/waterfall","public":true,"description":"Waterfall view with span offsets and durations."},{"method":"GET","path":"/api/v1/traces/{traceId}/service-map","public":true,"description":"Cross-service hop map for a public-safe trace."},{"method":"GET","path":"/api/v1/traces/{traceId}/critical-path","public":true,"description":"Critical path view calculated from real span timing."},{"method":"GET","path":"/api/v1/traces/{traceId}/completion","public":true,"description":"Trace completion state computed from real spans and expectations."},{"method":"POST","path":"/api/v1/traces/{traceId}/complete","public":false,"description":"Recompute and persist trace completion."},{"method":"GET","path":"/api/v1/observatory","public":true,"description":"Homepage truth model with source metadata and honest degraded states."},{"method":"POST","path":"/api/v1/spans","public":false,"description":"Ingest spans under the multi-tool span persistence policy."},{"method":"POST","path":"/api/v1/spans/start","public":false,"description":"Start or attach a span to a trace."},{"method":"POST","path":"/api/v1/spans/annotate","public":false,"description":"Append a redacted annotation event to a span."},{"method":"POST","path":"/api/v1/spans/complete","public":false,"description":"Complete a span and recompute trace lifecycle."},{"method":"POST","path":"/api/v1/spans/fail","public":false,"description":"Fail a span and recompute trace lifecycle."},{"method":"POST","path":"/api/v1/spans/cancel","public":false,"description":"Cancel a span and recompute trace lifecycle."},{"method":"POST","path":"/api/v1/spans/heartbeat","public":false,"description":"Record span heartbeat and pending state."},{"method":"POST","path":"/api/v1/async/traces","public":false,"description":"Create a durable async trace envelope when storage is configured."},{"method":"POST","path":"/api/v1/async/jobs","public":false,"description":"Create an async job linked to a trace."},{"method":"GET","path":"/api/v1/async/jobs/{jobId}","public":true,"description":"Read public-safe async job status."},{"method":"GET","path":"/api/v1/jobs","public":true,"description":"Alias for public-safe async job list."},{"method":"POST","path":"/api/v1/jobs","public":false,"description":"Alias for protected async job creation."},{"method":"POST","path":"/api/v1/evidence","public":false,"description":"Link redacted evidence to a trace or span."},{"method":"GET","path":"/api/v1/evidence","public":true,"description":"List public-safe evidence records."},{"method":"GET","path":"/api/v1/search","public":true,"description":"Search public-safe traces, spans, evidence, and playbooks."},{"method":"GET","path":"/api/v1/integrations/status","public":true,"description":"Phase 4 integration status matrix."},{"method":"GET","path":"/api/v1/playbooks","public":true,"description":"Deterministic debugging playbooks."},{"method":"POST","path":"/api/v1/reports/trace-summary","public":true,"description":"Generate a public-safe trace summary report from persisted evidence."},{"method":"GET","path":"/api/v1/aggregate/summary","public":true,"description":"Trace lifecycle, ingestion, latency, service, and JA4 redaction aggregate summary."},{"method":"POST","path":"/api/v1/otel/v1/traces","public":false,"description":"Ingest OpenTelemetry trace payloads."},{"method":"GET","path":"/api/v1/network/graph","public":true,"description":"Canonical graph/sitemap-derived network registry."},{"method":"GET","path":"/api/v1/network/trusted-domains","public":true,"description":"Trusted-domain registry summary."},{"method":"GET","path":"/api/v1/network/route-compliance","public":true,"description":"Route compliance state by site."},{"method":"POST","path":"/api/v1/network/route-compliance/run","public":false,"description":"Run a bounded route compliance probe for one trusted domain."},{"method":"GET","path":"/api/v1/network/observability","public":true,"description":"Observability compliance state by site."},{"method":"GET","path":"/api/v1/network/propagation","public":true,"description":"Trace propagation state by site."},{"method":"POST","path":"/api/v1/network/graph/sync","public":false,"description":"Refresh graph registry snapshots."},{"method":"POST","path":"/api/v1/sitemaps/sync","public":false,"description":"Refresh sitemap coverage snapshots."},{"method":"GET","path":"/api/v1/sitemaps/coverage","public":true,"description":"Graph and sitemap coverage summary."},{"method":"POST","path":"/api/v1/feeds/sync","public":false,"description":"Refresh public feed snapshots."},{"method":"GET","path":"/api/v1/feeds","public":true,"description":"Public-safe trace and incident feed summary."}],"mcp":{"endpoint":"/api/mcp","tools":[{"name":"get_trace_info","description":"Return Trace Observatory info, truth-model sources, and public/protected boundary.","inputSchema":{"type":"object","properties":{}}},{"name":"list_traces","description":"List public-safe persisted traces with optional filtering.","inputSchema":{"type":"object","properties":{"limit":{"type":"number","minimum":1,"maximum":100},"status":{"type":"string"},"agent":{"type":"string"},"query":{"type":"string"}}}},{"name":"get_trace","description":"Get one public-safe trace by ID.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"get_trace_spans","description":"Get public-safe spans for a trace.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"get_trace_events","description":"Get public-safe trace events.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"get_trace_timeline","description":"Return a timestamp-sorted timeline for a trace.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"get_trace_tree","description":"Return a parent/child tree for a trace.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"get_trace_waterfall","description":"Return waterfall timing data for a trace.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"get_trace_service_map","description":"Return public-safe service map for a trace.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"get_trace_critical_path","description":"Return public-safe critical path for a trace.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"get_trace_completion","description":"Return recomputed trace completion state.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"list_incomplete_traces","description":"Return public-safe incomplete trace aggregate summary.","inputSchema":{"type":"object","properties":{}}},{"name":"list_failed_traces","description":"Return public-safe failed trace aggregate summary.","inputSchema":{"type":"object","properties":{}}},{"name":"list_late_spans","description":"Return public-safe late span aggregate summary.","inputSchema":{"type":"object","properties":{}}},{"name":"list_orphan_spans","description":"Return public-safe orphan span list.","inputSchema":{"type":"object","properties":{"limit":{"type":"number"}}}},{"name":"get_network_propagation","description":"Return public-safe network propagation summary.","inputSchema":{"type":"object","properties":{}}},{"name":"get_observability_summary","description":"Return public-safe observability summary.","inputSchema":{"type":"object","properties":{}}},{"name":"get_service_trace_summary","description":"Return service trace aggregate summary.","inputSchema":{"type":"object","properties":{"service":{"type":"string"}}}},{"name":"get_trace_aggregate_summary","description":"Return lifecycle, latency, service, and correlation aggregate summary.","inputSchema":{"type":"object","properties":{}}},{"name":"validate_trace_context","description":"Validate W3C traceparent and safe tracestate.","inputSchema":{"type":"object","properties":{"traceparent":{"type":"string"},"tracestate":{"type":"string"}}}},{"name":"generate_trace_headers","description":"Generate W3C and PlatPhorm trace headers.","inputSchema":{"type":"object","properties":{"sourceSite":{"type":"string"},"targetSite":{"type":"string"}}}},{"name":"get_public_evidence","description":"Return public-safe evidence refs for a trace.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"get_agent_policy","description":"Return public-safe agent access policy.","inputSchema":{"type":"object","properties":{}}},{"name":"list_agent_platforms","description":"List public-safe agent platform policy records.","inputSchema":{"type":"object","properties":{}}},{"name":"get_agent_platform","description":"Get one agent platform policy record.","inputSchema":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"]}},{"name":"evaluate_agent_access","description":"Evaluate public/protected action boundary.","inputSchema":{"type":"object","properties":{"action":{"type":"string"}},"required":["action"]}},{"name":"get_robots_policy","description":"Return robots policy text.","inputSchema":{"type":"object","properties":{}}},{"name":"get_ai_policy","description":"Return public-safe AI policy.","inputSchema":{"type":"object","properties":{}}},{"name":"get_trust_policy","description":"Return public trust policy.","inputSchema":{"type":"object","properties":{}}},{"name":"get_discovery_manifest","description":"Return llms-index discovery manifest.","inputSchema":{"type":"object","properties":{}}},{"name":"get_public_access_summary","description":"Return public/protected boundary summary.","inputSchema":{"type":"object","properties":{}}},{"name":"get_health","description":"Return health summary.","inputSchema":{"type":"object","properties":{}}},{"name":"get_info","description":"Return MCP server info.","inputSchema":{"type":"object","properties":{}}},{"name":"get_route_compliance","description":"Get route compliance for Trace or the trusted network.","inputSchema":{"type":"object","properties":{"slug":{"type":"string"},"domain":{"type":"string"}}}},{"name":"get_discovery_compliance","description":"Get discovery compliance summary.","inputSchema":{"type":"object","properties":{}}},{"name":"search_traces","description":"Search public-safe trace names, descriptions, agents, and source domains.","inputSchema":{"type":"object","properties":{"query":{"type":"string"},"limit":{"type":"number"}},"required":["query"]}},{"name":"search_spans","description":"Search public-safe spans by trace ID, span ID, name, or error code.","inputSchema":{"type":"object","properties":{"query":{"type":"string"},"limit":{"type":"number"}}}},{"name":"search_evidence","description":"Search public-safe evidence summaries and types.","inputSchema":{"type":"object","properties":{"query":{"type":"string"},"limit":{"type":"number"}}}},{"name":"get_service_map","description":"Return public-safe aggregate service graph.","inputSchema":{"type":"object","properties":{}}},{"name":"get_integration_status","description":"Return Phase 4 Trace integration status matrix.","inputSchema":{"type":"object","properties":{"slug":{"type":"string"}}}},{"name":"get_debugging_playbook","description":"Return a deterministic Trace debugging playbook by slug.","inputSchema":{"type":"object","properties":{"slug":{"type":"string"}},"required":["slug"]}},{"name":"generate_platphormctl_command","description":"Return platphormctl commands for common Trace operations.","inputSchema":{"type":"object","properties":{"task":{"type":"string"},"traceId":{"type":"string"},"service":{"type":"string"}}}},{"name":"get_site_observability","description":"Get observability compliance for a trusted site.","inputSchema":{"type":"object","properties":{"slug":{"type":"string"}},"required":["slug"]}},{"name":"get_network_observability","description":"Get network-wide observability compliance summary.","inputSchema":{"type":"object","properties":{}}},{"name":"get_vercel_metadata","description":"Return safe Vercel metadata capture coverage.","inputSchema":{"type":"object","properties":{"slug":{"type":"string"}}}},{"name":"validate_trace_headers","description":"Validate W3C trace context and PlatPhorm enrichment headers.","inputSchema":{"type":"object","properties":{"headers":{"type":"object"}},"required":["headers"]}},{"name":"validate_span_redaction","description":"Check span attributes for public-secret leakage patterns.","inputSchema":{"type":"object","properties":{"span":{"type":"object"}},"required":["span"]}},{"name":"validate_vercel_headers","description":"Return sanitized safe Vercel request metadata from supplied headers.","inputSchema":{"type":"object","properties":{"headers":{"type":"object"}},"required":["headers"]}},{"name":"explain_trace_gap","description":"Explain why a trace is incomplete based on persisted spans.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"generate_trace_remediation_plan","description":"Generate an observability remediation plan from current compliance gaps.","inputSchema":{"type":"object","properties":{"slug":{"type":"string"},"traceId":{"type":"string"}}}},{"name":"list_trusted_domains","description":"List trusted and pending domains from graph/sitemap registry.","inputSchema":{"type":"object","properties":{"status":{"type":"string"}}}},{"name":"validate_trusted_domain","description":"Validate one domain against the PlatPhorm trusted-domain policy.","inputSchema":{"type":"object","properties":{"domain":{"type":"string"}},"required":["domain"]}},{"name":"ingest_trace","description":"Ingest a trace. Requires PLATPHORM_API_KEY on the HTTP request.","inputSchema":{"type":"object","properties":{"trace":{"type":"object"}},"required":["trace"]}},{"name":"ingest_span","description":"Ingest one span. Requires PLATPHORM_API_KEY on the HTTP request.","inputSchema":{"type":"object","properties":{"span":{"type":"object"},"traceId":{"type":"string"}}}},{"name":"complete_span","description":"Complete a span. Requires PLATPHORM_API_KEY on the HTTP request.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"},"spanId":{"type":"string"},"errorMessage":{"type":"string"}},"required":["traceId","spanId"]}},{"name":"fail_span","description":"Fail a span. Requires PLATPHORM_API_KEY on the HTTP request.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"},"spanId":{"type":"string"},"errorMessage":{"type":"string"}},"required":["traceId","spanId"]}},{"name":"heartbeat_span","description":"Record a span heartbeat. Requires PLATPHORM_API_KEY on the HTTP request.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"},"spanId":{"type":"string"},"errorMessage":{"type":"string"}},"required":["traceId","spanId"]}},{"name":"start_span","description":"Start a span. Requires PLATPHORM_API_KEY on the HTTP request.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"},"spanId":{"type":"string"},"name":{"type":"string"}},"required":["traceId"]}},{"name":"cancel_span","description":"Cancel a span. Requires PLATPHORM_API_KEY on the HTTP request.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"},"spanId":{"type":"string"},"errorMessage":{"type":"string"}},"required":["traceId","spanId"]}},{"name":"link_evidence","description":"Link public-safe or protected evidence to a trace/span. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"},"spanId":{"type":"string"},"type":{"type":"string"},"ref":{"type":"string"},"summary":{"type":"string"}},"required":["traceId","ref"]}},{"name":"complete_trace","description":"Recompute and persist trace completion. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"recompute_trace_completion","description":"Recompute trace completion. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"create_async_trace","description":"Create async trace envelope. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{"name":{"type":"string"},"traceId":{"type":"string"}}}},{"name":"create_async_job","description":"Create async trace-linked job. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"},"jobType":{"type":"string"}},"required":["traceId","jobType"]}},{"name":"complete_async_job","description":"Complete async job. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{"jobId":{"type":"string"}},"required":["jobId"]}},{"name":"fail_async_job","description":"Fail async job. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{"jobId":{"type":"string"}},"required":["jobId"]}},{"name":"replay_trace","description":"Replay trace. Requires PLATPHORM_API_KEY; degrades if replay adapter is unavailable.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"fork_trace","description":"Fork trace. Requires PLATPHORM_API_KEY; degrades if fork adapter is unavailable.","inputSchema":{"type":"object","properties":{"traceId":{"type":"string"}},"required":["traceId"]}},{"name":"query_private_correlations","description":"Query private correlations. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{"query":{"type":"object"}}}},{"name":"sync_network_graph","description":"Refresh the network graph snapshot. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{}}},{"name":"sync_sitemap_index","description":"Refresh sitemap coverage. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{}}},{"name":"sync_feeds","description":"Refresh public feed coverage. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{}}},{"name":"create_docs_report","description":"Create Docs report. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{}}},{"name":"create_sheet_report","description":"Create Sheets report. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{}}},{"name":"create_deck_summary","description":"Create Deck summary. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{}}},{"name":"update_agent_policy","description":"Update agent policy. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{}}},{"name":"refresh_agent_platform_registry","description":"Refresh agent platform registry. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{}}},{"name":"run_route_compliance_probe","description":"Run a bounded live standard-route probe for one trusted PlatPhormNews site. Requires PLATPHORM_API_KEY.","inputSchema":{"type":"object","properties":{"slug":{"type":"string"},"domain":{"type":"string"},"routes":{"type":"array","items":{"type":"string"}},"timeoutMs":{"type":"number","minimum":1000,"maximum":10000},"concurrency":{"type":"number","minimum":1,"maximum":6}}}}],"resources":[{"uri":"trace://live","name":"Live Trace Feed","description":"Current public-safe trace list.","mimeType":"application/json"},{"uri":"trace://traces","name":"Public Traces","description":"Public-safe persisted traces.","mimeType":"application/json"},{"uri":"trace://trace/{traceId}","name":"Trace Detail Template","description":"Use a concrete trace://trace/<traceId> URI for public-safe trace detail.","mimeType":"application/json"},{"uri":"trace://trace/{traceId}/spans","name":"Trace Spans Template","description":"Public-safe trace span list template.","mimeType":"application/json"},{"uri":"trace://trace/{traceId}/evidence","name":"Trace Evidence Template","description":"Public-safe trace evidence template.","mimeType":"application/json"},{"uri":"trace://trace/{traceId}/timeline","name":"Trace Timeline Template","description":"Public-safe trace timeline template.","mimeType":"application/json"},{"uri":"trace://trace/{traceId}/tree","name":"Trace Tree Template","description":"Public-safe trace tree template.","mimeType":"application/json"},{"uri":"trace://trace/{traceId}/waterfall","name":"Trace Waterfall Template","description":"Public-safe trace waterfall template.","mimeType":"application/json"},{"uri":"trace://trace/{traceId}/completion","name":"Trace Completion Template","description":"Public-safe trace completion template.","mimeType":"application/json"},{"uri":"trace://incomplete","name":"Incomplete Traces","description":"Public-safe incomplete aggregate summary.","mimeType":"application/json"},{"uri":"trace://late-spans","name":"Late Spans","description":"Public-safe late span aggregate summary.","mimeType":"application/json"},{"uri":"trace://orphan-spans","name":"Orphan Spans","description":"Public-safe orphan span list.","mimeType":"application/json"},{"uri":"trace://network/health","name":"Network Health","description":"Trace health and degraded dependency summary.","mimeType":"application/json"},{"uri":"trace://network/observability","name":"Network Observability","description":"Observability compliance summary.","mimeType":"application/json"},{"uri":"trace://network/propagation","name":"Network Propagation","description":"Trace propagation status summary.","mimeType":"application/json"},{"uri":"trace://network/route-compliance","name":"Route Compliance","description":"Standard route compliance summary.","mimeType":"application/json"},{"uri":"trace://network/route-compliance/history","name":"Route Probe History","description":"Latest persisted or warm-runtime route probe evidence by trusted site.","mimeType":"application/json"},{"uri":"trace://network/discovery-compliance","name":"Discovery Compliance","description":"Discovery compliance summary.","mimeType":"application/json"},{"uri":"trace://network/trusted-domains","name":"Trusted Domains","description":"Trusted-domain registry.","mimeType":"application/json"},{"uri":"trace://spans/orphans","name":"Orphan Spans","description":"Spans with missing parents.","mimeType":"application/json"},{"uri":"trace://traces/broken","name":"Broken Traces","description":"Incomplete traces and propagation gaps.","mimeType":"application/json"},{"uri":"trace://aggregates/services","name":"Service Aggregates","description":"Service graph aggregate summary.","mimeType":"application/json"},{"uri":"trace://aggregates/errors","name":"Error Aggregates","description":"Failed trace and service aggregate summary.","mimeType":"application/json"},{"uri":"trace://integrations","name":"Trace Integrations","description":"Phase 4 integration status matrix.","mimeType":"application/json"},{"uri":"trace://stats/daily","name":"Daily Trace Stats","description":"Trace counts for public-safe stats.","mimeType":"application/json"},{"uri":"trace://openapi","name":"OpenAPI","description":"OpenAPI specification.","mimeType":"application/json"},{"uri":"trace://llms","name":"LLMS Index","description":"LLM discovery index.","mimeType":"application/json"},{"uri":"trace://trust-policy","name":"Trust Policy","description":"Public trust and auth boundary.","mimeType":"application/json"},{"uri":"agent-policy://summary","name":"Agent Policy Summary","description":"Public-safe agent policy summary.","mimeType":"application/json"},{"uri":"agent-policy://platforms","name":"Agent Platforms","description":"Agent platform policy records.","mimeType":"application/json"},{"uri":"agent-policy://robots","name":"Robots Policy","description":"Robots.txt policy.","mimeType":"text/plain"},{"uri":"agent-policy://ai-policy","name":"AI Policy","description":"Public AI policy.","mimeType":"application/json"},{"uri":"agent-policy://trust-policy","name":"Trust Policy","description":"Public trust policy.","mimeType":"application/json"}],"prompts":[{"name":"analyze_trace","description":"Analyze a trace from deterministic spans and evidence.","arguments":[{"name":"traceId","description":"Trace ID","required":true}]},{"name":"explain_trace","description":"Explain a trace from deterministic spans and evidence.","arguments":[{"name":"traceId","description":"Trace ID","required":true}]},{"name":"explain_error","description":"Explain a failed span or trace without fabricating root cause.","arguments":[{"name":"traceId","description":"Trace ID","required":false},{"name":"spanId","description":"Span ID","required":false}]},{"name":"debug_incomplete_trace","description":"Build a debugging plan for missing, pending, late, or orphan spans.","arguments":[{"name":"traceId","description":"Trace ID","required":true}]},{"name":"explain_late_span","description":"Explain a late span and evidence to collect.","arguments":[{"name":"spanId","description":"Span ID","required":true}]},{"name":"explain_orphan_span","description":"Explain an orphan span and propagation checks.","arguments":[{"name":"spanId","description":"Span ID","required":true}]},{"name":"summarize_service_propagation","description":"Summarize service propagation from public-safe service map evidence.","arguments":[{"name":"service","description":"Service slug","required":false}]},{"name":"create_trace_report","description":"Create a redacted Trace report outline.","arguments":[{"name":"traceId","description":"Trace ID","required":false}]},{"name":"create_redaction_report","description":"Create a public-safe redaction compliance report outline.","arguments":[{"name":"traceId","description":"Trace ID","required":false}]},{"name":"create_platphorm_debugging_plan","description":"Create a PlatPhorm workflow debugging plan from Trace evidence.","arguments":[{"name":"traceId","description":"Trace ID","required":false}]},{"name":"summarize_trace_failure","description":"Summarize failed spans and likely handoff points without fabricating root cause.","arguments":[{"name":"traceId","description":"Trace ID","required":true}]},{"name":"find_missing_spans","description":"Find expected or inferred missing spans.","arguments":[{"name":"traceId","description":"Trace ID","required":true}]},{"name":"explain_span_completion","description":"Explain span completion state and algorithm version.","arguments":[{"name":"traceId","description":"Trace ID","required":true}]},{"name":"debug_async_trace","description":"Debug queued/running/waiting async traces and jobs.","arguments":[{"name":"traceId","description":"Trace ID","required":false}]},{"name":"create_trace_ingestion_plan","description":"Create a site-specific ingestion plan.","arguments":[{"name":"slug","description":"Site slug","required":false}]},{"name":"create_observability_report","description":"Create a deterministic observability report outline.","arguments":[{"name":"slug","description":"Site slug","required":false}]},{"name":"explain_trace_propagation","description":"Explain W3C and PlatPhorm trace propagation.","arguments":[]},{"name":"create_platphorm_trace_headers","description":"Create traceparent and PlatPhorm header examples.","arguments":[]},{"name":"investigate_orphan_span","description":"Investigate orphan span causes and remediation.","arguments":[{"name":"spanId","description":"Span ID","required":false}]},{"name":"summarize_service_latency","description":"Summarize service latency from aggregate spans.","arguments":[{"name":"service","description":"Service name","required":false}]},{"name":"human_machine_trace_handoff","description":"Create a human-machine handoff summary for a trace.","arguments":[{"name":"traceId","description":"Trace ID","required":true}]}]},"storage":{"status":"connected","database":"connected","redis":"connected"},"spanPersistence":{"policy":"multi_tool_calls_only_v1","rule":"Trace envelopes are stored when authenticated storage succeeds; durable span rows are written only when a batch contains more than one tool call.","responseFields":["spans_received","spans_ingested","spans_skipped","span_persistence_policy","span_persistence_reason"]},"truthModel":{"service":"trace","generatedAt":"2026-05-26T01:17:11.187Z","storage":{"status":"connected"},"sources":{"traceDatabase":{"status":"connected","source":"PostgreSQL trace tables","fetchedAt":"2026-05-26T01:17:11.187Z"},"networkGraph":{"status":"online","source":"root network graph","sourceUrl":"https://platphormnews.com/api/network/graph","fetchedAt":"2026-05-26T01:17:11.187Z"},"sitemapIndex":{"status":"online","source":"base sitemap index","sourceUrl":"https://base.platphormnews.com/sitemap-index.xml","fetchedAt":"2026-05-26T01:17:11.187Z"},"integrationRegistry":{"status":"degraded","source":"required integration registry plus persisted spans","fetchedAt":"2026-05-26T01:17:11.187Z"}},"metrics":[{"key":"active_traces","label":"Active traces","value":631,"source":"trace database","sourceUrl":"/api/v1/aggregate/summary","fetchedAt":"2026-05-26T01:17:11.188Z","state":"live","traceId":null,"nextAction":null},{"key":"completed_traces","label":"Completed traces","value":227305,"source":"trace database","sourceUrl":"/api/v1/aggregate/summary","fetchedAt":"2026-05-26T01:17:11.188Z","state":"live","traceId":null,"nextAction":null},{"key":"failed_traces","label":"Failed traces","value":0,"source":"trace database","sourceUrl":"/api/v1/aggregate/summary","fetchedAt":"2026-05-26T01:17:11.188Z","state":"empty","traceId":null,"nextAction":"Open /playbooks/failed-spans and inspect /api/v1/aggregate/errors."},{"key":"incomplete_traces","label":"Incomplete traces","value":0,"source":"trace database","sourceUrl":"/api/v1/aggregate/summary","fetchedAt":"2026-05-26T01:17:11.188Z","state":"empty","traceId":null,"nextAction":"Open /playbooks/incomplete-traces and inspect completion state."},{"key":"late_spans","label":"Late spans","value":0,"source":"trace database","sourceUrl":"/api/v1/aggregate/summary","fetchedAt":"2026-05-26T01:17:11.188Z","state":"empty","traceId":null,"nextAction":"Open /playbooks/late-spans and compare deadlineAt to endTime."},{"key":"orphan_spans","label":"Orphan spans","value":0,"source":"trace database","sourceUrl":"/api/v1/aggregate/summary","fetchedAt":"2026-05-26T01:17:11.188Z","state":"empty","traceId":null,"nextAction":"Open /playbooks/orphan-spans and inspect parentSpanId gaps."},{"key":"async_jobs","label":"Async jobs","value":0,"source":"trace database","sourceUrl":"/api/v1/aggregate/summary","fetchedAt":"2026-05-26T01:17:11.187Z","state":"empty","traceId":null,"nextAction":"Create jobs through /api/v1/jobs with PLATPHORM_API_KEY."},{"key":"services_observed","label":"Services observed","value":1,"source":"trace database","sourceUrl":"/api/v1/aggregate/summary","fetchedAt":"2026-05-26T01:17:11.188Z","state":"live","traceId":null,"nextAction":null},{"key":"integrations_connected","label":"Integrations connected","value":0,"source":"trace integration registry plus persisted service spans","sourceUrl":"/api/v1/integrations/status","fetchedAt":"2026-05-26T01:17:11.187Z","state":"empty","traceId":null,"nextAction":"Emit service-specific spans from AgentUI, BrowserOps, Evals, Sandbox, MCP, or CLI."},{"key":"network_graph_status","label":"Network graph status","value":"online","source":"root network graph","sourceUrl":"https://platphormnews.com/api/network/graph","fetchedAt":"2026-05-26T01:17:11.187Z","state":"live","traceId":null,"nextAction":null},{"key":"last_ingestion","label":"Last ingestion","value":"2026-05-25T18:08:05.703Z","source":"traces.created_at","sourceUrl":"/api/v1/traces","fetchedAt":"2026-05-26T01:17:11.187Z","state":"live","traceId":"WV7KKC9IW68ZSy3c","nextAction":null},{"key":"last_completed_span","label":"Last completed span","value":"2026-05-23T03:02:10.047Z","source":"spans.end_time","sourceUrl":"/api/v1/spans","fetchedAt":"2026-05-26T01:17:11.187Z","state":"live","traceId":"KTEQ9D8tusp40tm7","nextAction":null},{"key":"data_source","label":"Data source","value":"Trace database","source":"runtime storage check","sourceUrl":"/api/health","fetchedAt":"2026-05-26T01:17:11.187Z","state":"live","traceId":null,"nextAction":null}],"notes":["Zero is shown only when the backing source is reachable and returned zero.","Unavailable means Trace could not prove the value from storage in this runtime.","Integration count only includes services with observed persisted spans; registered-only services are shown separately in /integrations."]},"discovery":{"graph":{"url":"https://platphormnews.com/api/network/graph","status":"online","nodeCount":213},"sitemapIndex":{"url":"https://base.platphormnews.com/sitemap-index.xml","status":"online","urlCount":176},"mcpHub":{"url":"https://mcp.platphormnews.com","status":"unknown"}},"routeCompliance":{"service":"trace","score":94,"status":"degraded","routes":[{"route":"/api/health","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/api/v1/health","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/api/docs","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/openapi.yaml","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/llms.txt","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/llms-full.txt","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/llms-index.json","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/robots.txt","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/sitemap.xml","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/sitemap-index.xml","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/rss.xml","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/feed.xml","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/atom.xml","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/manifest.webmanifest","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/.well-known/mcp.json","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/.well-known/agents.json","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/.well-known/agent-policy.json","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/.well-known/ai-policy.json","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/.well-known/ai-plugin.json","status":"unsupported","detail":"Trace does not currently expose an OpenAI plugin manifest; reported as unsupported."},{"route":"/.well-known/security.txt","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/.well-known/trust.json","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."},{"route":"/api/mcp","status":"supported","detail":"Implemented by Trace public route handlers or static Next routes."}]}}}