Skip to content

refactor(aibridge/intercept): move actor header injection into client-header middleware#26543

Draft
ssncferreira wants to merge 1 commit into
mainfrom
ssncferreira/actor-headers-in-middleware
Draft

refactor(aibridge/intercept): move actor header injection into client-header middleware#26543
ssncferreira wants to merge 1 commit into
mainfrom
ssncferreira/actor-headers-in-middleware

Conversation

@ssncferreira

Copy link
Copy Markdown
Contributor

Move actor header injection from per-request SDK options in the 6 blocking/streaming handlers into the client-header middleware in the 3 service builders (newResponsesService, newMessagesService, newCompletionsService). This eliminates duplicated logic and resolves all ssncferreira TODO comments about actor headers.

Previously, each blocking and streaming handler in responses, messages, and chatcompletions independently checked for an actor in the request context and injected actor headers as SDK request options. The client-header middleware then had to preserve these headers from the SDK-built request. Now, the middleware injects actor headers directly after building upstream headers, using the request context that the SDK propagates from the caller.

  • Add SetActorHeaders to inject actor headers directly into http.Header
  • Inject actor headers in the middleware closures of the 3 service builders
  • Remove actor header SDK option injection from all 6 blocking/streaming handlers
  • Remove actor header preservation from BuildUpstreamHeaders (no longer needed)
  • Add unit tests for SetActorHeaders; update BuildUpstreamHeaders tests

Generated by Coder Agents

@datadog-coder-official

This comment has been minimized.

…-header middleware

Move actor header injection from per-request SDK options in 6
blocking/streaming handlers into the client-header middleware in the 3
service builders. This eliminates duplicated logic and resolves all
ssncferreira TODO comments about actor headers.

Changes:
- Add SetActorHeaders to inject actor headers directly into http.Header
- Inject actor headers in the middleware closures of newResponsesService,
  newMessagesService, and newCompletionsService
- Remove actor header SDK option injection from all 6 blocking/streaming
  handlers
- Remove actor header preservation from BuildUpstreamHeaders (no longer
  needed since headers are set after BuildUpstreamHeaders in the
  middleware)
- Add unit tests for SetActorHeaders
- Update BuildUpstreamHeaders test to reflect the new behavior
@ssncferreira ssncferreira force-pushed the ssncferreira/actor-headers-in-middleware branch from c9c0e69 to d0bd79f Compare June 19, 2026 11:00
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.

1 participant