Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion src/deepiri_modelkit/streaming/topics.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ class StreamTopics(str, Enum):
PIPELINE_SPLICE_EVENTS = "pipeline.splice.events"
PIPELINE_DEAD_LETTER = "pipeline.dead-letter"
PIPELINE_METRICS = "pipeline.metrics"
# Speech plane (deepiri-speech STT/TTS / LiveKit session events).
SPEECH_EVENTS = "speech-events"

@classmethod
def all(cls) -> list:
Expand All @@ -36,5 +38,9 @@ def all(cls) -> list:

@classmethod
def sugar_glider_allowlist(cls) -> list:
"""Canonical SIDECAR_PUBLISH/CONSUME stream list for compose."""
"""Canonical Redis stream topic names for Sugar Glider compose allowlists.

Used as ``SUGAR_GLIDER_PUBLISH_STREAMS`` / ``SIDECAR_PUBLISH_STREAMS``
(and the matching CONSUME lists). Returns every ``StreamTopics`` value.
"""
return cls.all()
3 changes: 3 additions & 0 deletions tests/test_streaming_topics.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,4 +41,7 @@ def test_all_includes_shared_stream_topics() -> None:
assert "pipeline.artifact.invalidation" in topics
assert "pipeline.splice.events" in topics
assert "training-jobs" in topics
assert "speech-events" in topics
assert StreamTopics.SPEECH_EVENTS.value == "speech-events"
assert len(StreamTopics.sugar_glider_allowlist()) == len(topics)
assert "speech-events" in StreamTopics.sugar_glider_allowlist()
Loading