1"""OpenAI Responses request and response mapper.
2
3Converts the OpenAI Responses wire DTOs
4(:class:`ResponsesRequest` / :class:`ResponsesResponse`) into the
5canonical relay IR and back. Stream conversion is handled by the shared
6stream lifecycle task and reports ``unsupported_feature`` until then.
7"""
8
9from __future__ import annotations
10
11from lexigram.ai.relay.mappers.openai_responses.items import ItemsMixin
12from lexigram.ai.relay.mappers.openai_responses.request import RequestMixin
13from lexigram.ai.relay.mappers.openai_responses.response import ResponseMixin
14from lexigram.ai.relay.mappers.openai_responses.stream import StreamMixin
15from lexigram.ai.relay.mappers.openai_responses.utils import _TARGET
16
17__all__ = ["OpenAIResponsesMapper"]
18
19
20class OpenAIResponsesMapper(
21 RequestMixin,
22 ItemsMixin,
23 ResponseMixin,
24 StreamMixin,
25):
26 """Bidirectional OpenAI Responses converter.
27
28 Attributes:
29 format: The wire format this mapper handles.
30 """
31
32 format = _TARGET