Coverage for src / lexigram / ai / relay / stream / __init__.py: 100%
7 statements
« prev ^ index » next coverage.py v7.13.5, created at 2026-08-08 23:08 +0800
« prev ^ index » next coverage.py v7.13.5, created at 2026-08-08 23:08 +0800
1"""Stream session state and shared lifecycle rules.
3The session state machine ties a source mapper's ``stream_to_delta`` to
4a target mapper's ``delta_to_stream``. Mutable state stays private to
5:class:`StreamSession`; callers observe it through read-only snapshots.
6The bundled emitters map canonical deltas into the four target wire
7event families.
8"""
10from __future__ import annotations
12from lexigram.ai.relay.stream.claude import claude_emitter
13from lexigram.ai.relay.stream.gemini import gemini_emitter
14from lexigram.ai.relay.stream.openai_chat import openai_chat_emitter
15from lexigram.ai.relay.stream.openai_responses import openai_responses_emitter
16from lexigram.ai.relay.stream.state import (
17 StreamEmitter,
18 StreamNormalizer,
19 StreamSession,
20 StreamSnapshot,
21 StreamToolCallRecord,
22)
24__all__ = [
25 "StreamEmitter",
26 "StreamNormalizer",
27 "StreamSession",
28 "StreamSnapshot",
29 "StreamToolCallRecord",
30 "claude_emitter",
31 "gemini_emitter",
32 "openai_chat_emitter",
33 "openai_responses_emitter",
34]