fix(spec+compiler): update MCP gateway OTLP headers to string-only (v1.13.0)#25135
fix(spec+compiler): update MCP gateway OTLP headers to string-only (v1.13.0)#25135
Conversation
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/3996a176-e590-4a9b-a928-05c51894409e Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
@lpcox FYI |
|
@copilot update compiler to emit string with headers value and NOT try to parse them to a JSON object. |
…sion Agent-Logs-Url: https://github.com/github/gh-aw/sessions/6920f518-5ec9-4aa2-b777-42c0b5b9c02d Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Done in commit 58c4131. The compiler ( Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
|
@copilot merge main and recompile |
…teway-specification Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Done in commit c537fa3. Merged main and recompiled all 182 workflows. Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
|
🌑 The shadows whisper... Smoke Codex failed. The oracle requires further meditation... |
|
💫 TO BE CONTINUED... Smoke Claude failed! Our hero faces unexpected challenges... |
|
📰 BREAKING: Smoke Copilot is now investigating this pull request. Sources say the story is developing... |
|
❌ Tool validation failed! Agent Container Smoke Test detected missing tools: failed |
|
📰 DEVELOPING STORY: Smoke Copilot reports failed. Our correspondents are investigating the incident... |
Both review comments addressed in commit 0a519ca:
Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
|
@copilot remove JSON escaping, pass header as is |
|
@copilot merge main and recompile |
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/06bfb7ad-9e57-4700-8ed6-6df0f67094f1 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Done in commit 5eb4433. Removed the JSON-escaping preamble; the gateway config now emits Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
…teway-specification # Conflicts: # .github/workflows/approach-validator.lock.yml # .github/workflows/architecture-guardian.lock.yml # .github/workflows/daily-firewall-report.lock.yml # .github/workflows/daily-performance-summary.lock.yml # .github/workflows/deep-report.lock.yml # .github/workflows/design-decision-gate.lock.yml # .github/workflows/refactoring-cadence.lock.yml # .github/workflows/smoke-copilot.lock.yml Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/44263e6e-8484-45e7-b298-361f0e891412 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Done in commit 0b27aa2. Merged main and recompiled all 187 workflows. Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
|
💫 TO BE CONTINUED... Smoke Claude failed! Our hero faces unexpected challenges... |
|
🌑 The shadows whisper... Smoke Codex failed. The oracle requires further meditation... |
|
❌ Tool validation failed! Agent Container Smoke Test detected missing tools: failed |
|
📰 BREAKING: Smoke Copilot is now investigating this pull request. Sources say the story is developing... |
|
📰 DEVELOPING STORY: Smoke Copilot reports failed. Our correspondents are investigating the incident... |
|
@copilot check the latest https://github.com/github/gh-aw-mcpg/releases .17 does not exist |
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/768df2a5-af4b-4139-bd8f-049be6409f3f Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Confirmed — the latest release of Note: this means the PR currently emits string-form Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
|
@lpcox I'll let you finish this one |
|
Hey The PR looks great — it includes a detailed description, tests covering all three key scenarios in ✅ This PR looks ready for maintainer review.
|
Summary
Updates the MCP Gateway Specification, JSON schemas, and compiler so that the
headersfield in theopentelemetryconfiguration is exclusively a string, removing the previously supported object form. The compiler passes the headers string through as-is via${OTEL_EXPORTER_OTLP_HEADERS}. The MCP Gateway version remains atv0.2.16(the latest available release); this PR is ready to merge oncegh-aw-mcpgpublishes a release that accepts string headers.Changes
Specification (
docs/src/content/docs/reference/mcp-gateway.md)1.12.0→1.13.0headerstype fromobject | stringtostring; updated description to clarify the value is passed through as-isheadersMUST be a string when provided; removed string-parsing requirementT-OTEL-001 through T-OTEL-012→T-OTEL-001 through T-OTEL-010headerswith string formJSON Schemas
pkg/workflow/schemas/mcp-gateway-config.schema.jsondocs/public/schemas/mcp-gateway-config.schema.jsonBoth: changed
opentelemetryConfig.headersfromoneOf [object, string]to plainstringtype with updated description.Compiler (
pkg/workflow/mcp_renderer.go)OTEL_EXPORTER_OTLP_HEADERSfromkey=value,...format into a JSON object (_GH_AW_OTLP_HEADERS_JSON)"headers": "${OTEL_EXPORTER_OTLP_HEADERS}"— the raw string value passed through as-is — instead of the previously injected JSON objectTests (
pkg/workflow/mcp_renderer_test.go)TestRenderJSONMCPConfig_OTLPGatewaycovering three scenarios: endpoint+headers (verifies raw env var passthrough and no conversion preamble), endpoint only (no headers field), and no OTLP config (noopentelemetrysection)Gateway Version (
pkg/constants/version_constants.go)DefaultMCPGatewayVersionremains atv0.2.16(latest available release ofgh-aw-mcpg)Workflow Lock Files
Changeset
headersto string-only and removed object-form support in spec, schema, and compiler output. Headers are passed through as-is.