Coverage for src / lexigram / contracts / ai / relay / dto / __init__.py: 0%

6 statements  

« prev     ^ index     » next       coverage.py v7.13.5, created at 2026-08-15 18:57 +0800

1"""Wire-accurate DTOs for the four relay protocols. 

2 

3Each DTO carries only the fields the conversion engine semantically 

4understands. Unknown upstream fields land in ``passthrough`` and are 

5re-emitted verbatim on ``to_dict()`` so a gateway can forward request 

6bodies without data loss. 

7 

8This package replaces the historical flat ``dto.py`` module. The public 

9import path ``lexigram.contracts.ai.relay.dto`` is preserved: every 

10previously public name is re-exported here from its focused submodule. 

11""" 

12 

13from __future__ import annotations 

14 

15from lexigram.contracts.ai.relay.dto.claude import ( 

16 ClaudeContent, 

17 ClaudeMessage, 

18 ClaudeRequest, 

19 ClaudeResponse, 

20 ClaudeStreamEvent, 

21 ClaudeUsage, 

22) 

23from lexigram.contracts.ai.relay.dto.gemini import ( 

24 GeminiCandidate, 

25 GeminiContent, 

26 GeminiGroundingMetadata, 

27 GeminiPart, 

28 GeminiPromptFeedback, 

29 GeminiRequest, 

30 GeminiResponse, 

31 GeminiSafetyRating, 

32 GeminiUsageMetadata, 

33) 

34from lexigram.contracts.ai.relay.dto.openai_chat import ( 

35 OpenAIChatChoice, 

36 OpenAIChatMessage, 

37 OpenAIChatRequest, 

38 OpenAIChatResponse, 

39 OpenAIChatStreamChoice, 

40 OpenAIChatStreamChunk, 

41 OpenAIChatStreamDelta, 

42) 

43from lexigram.contracts.ai.relay.dto.openai_responses import ( 

44 ResponsesEvent, 

45 ResponsesIncompleteDetails, 

46 ResponsesItem, 

47 ResponsesRequest, 

48 ResponsesResponse, 

49 ResponsesUsage, 

50) 

51 

52__all__ = [ 

53 "ClaudeContent", 

54 "ClaudeMessage", 

55 "ClaudeRequest", 

56 "ClaudeResponse", 

57 "ClaudeStreamEvent", 

58 "ClaudeUsage", 

59 "GeminiCandidate", 

60 "GeminiContent", 

61 "GeminiGroundingMetadata", 

62 "GeminiPart", 

63 "GeminiPromptFeedback", 

64 "GeminiRequest", 

65 "GeminiResponse", 

66 "GeminiSafetyRating", 

67 "GeminiUsageMetadata", 

68 "OpenAIChatChoice", 

69 "OpenAIChatMessage", 

70 "OpenAIChatRequest", 

71 "OpenAIChatResponse", 

72 "OpenAIChatStreamChoice", 

73 "OpenAIChatStreamChunk", 

74 "OpenAIChatStreamDelta", 

75 "ResponsesEvent", 

76 "ResponsesIncompleteDetails", 

77 "ResponsesItem", 

78 "ResponsesRequest", 

79 "ResponsesResponse", 

80 "ResponsesUsage", 

81]