Coverage for /home/admin/Documents/AI/applications/lexigram-dev/lexigram/experimental/ai/lexigram-ai-relay/src/lexigram/ai/relay/mappers/claude/__init__.py: 100%

8 statements  

« prev     ^ index     » next       coverage.py v7.15.4, created at 2026-08-25 07:19 +0800

1"""Anthropic Claude Messages request and response mapper. 

2 

3Converts the Claude Messages wire DTOs 

4(:class:`ClaudeRequest` / :class:`ClaudeResponse`) into the canonical 

5relay IR and back. Stream conversion is handled by the shared stream 

6lifecycle task and reports ``unsupported_feature`` until then. 

7""" 

8 

9from __future__ import annotations 

10 

11from lexigram.ai.relay.mappers.claude.request import RequestMixin 

12from lexigram.ai.relay.mappers.claude.response import ResponseMixin 

13from lexigram.ai.relay.mappers.claude.stream import StreamMixin 

14from lexigram.ai.relay.mappers.claude.utils import _TARGET 

15 

16__all__ = ["ClaudeMapper"] 

17 

18 

19class ClaudeMapper(RequestMixin, ResponseMixin, StreamMixin): 

20 """Bidirectional Anthropic Claude Messages converter. 

21 

22 Attributes: 

23 format: The wire format this mapper handles. 

24 """ 

25 

26 format = _TARGET