• Stefy Lanza (nextime / spora )'s avatar
    colibri/k3: give the mux engines a remote service too · 85f0f53d
    Stefy Lanza (nextime / spora ) authored
    These two were the exception in the last commit: they are driven over a
    stdin/stdout mux protocol, so there was no URL to redirect. This adds the
    missing HTTP boundary.
    
    tools/mux_service.py hosts a real MuxEngine (colibri or k3 — both use the
    same class) and exposes /health, /run (NDJSON: text chunks then stats),
    /pause and /resume. codai/api/mux_remote.RemoteMuxEngine is the client
    and presents the exact surface the backends use — run/is_alive/pause/
    resume/close/log_tail/family — so ensure_engine() can hand one back and
    nothing downstream can tell local from remote. Cancellation travels as a
    dropped connection: the service's write fails and it stops generating,
    matching the local `cancelled` callback semantics.
    
    `service_url` is now a real config field on all five engine backends
    (ds4, colibri, k3, ktransformers, vllm), settable through the admin API
    and persisted, rather than only an env var.
    
    Tested end-to-end against a stub engine: streaming, stats, mid-stream
    cancellation, pause/resume, and error propagation all round-trip.
    Co-Authored-By: 's avatarClaude Opus 5 (1M context) <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_0182DhR1eFNPQyGmDrpHbedY
    85f0f53d
Name
Last commit
Last update
..
__init__.py Loading commit data...
_film_net.py Loading commit data...
_rife_ifnet.py Loading commit data...
app.py Loading commit data...
archive.py Loading commit data...
audio_backends.py Loading commit data...
audio_clean.py Loading commit data...
audio_gen.py Loading commit data...
audio_stems.py Loading commit data...
canary_worker.py Loading commit data...
characters.py Loading commit data...
colibri_worker.py Loading commit data...
crisperwhisper_worker.py Loading commit data...
custom_pipelines.py Loading commit data...
diarization.py Loading commit data...
ds4_kv_janitor.py Loading commit data...
ds4_worker.py Loading commit data...
embeddings.py Loading commit data...
environments.py Loading commit data...
faceswap.py Loading commit data...
fastlog.py Loading commit data...
h3_worker.py Loading commit data...
hub_compat.py Loading commit data...
images.py Loading commit data...
k3_worker.py Loading commit data...
kt_worker.py Loading commit data...
lipsync.py Loading commit data...
log.py Loading commit data...
lora_archs.py Loading commit data...
loras.py Loading commit data...
melotts_worker.py Loading commit data...
mux_remote.py Loading commit data...
ocr.py Loading commit data...
parler_worker.py Loading commit data...
pipelines.py Loading commit data...
prompt_cache.py Loading commit data...
pyannote_worker.py Loading commit data...
ratelimit.py Loading commit data...
rerank.py Loading commit data...
runpod_client.py Loading commit data...
runpod_ledger.py Loading commit data...
runpod_worker.py Loading commit data...
spatial.py Loading commit data...
speaker_embeddings.py Loading commit data...
speaker_registry.py Loading commit data...
state.py Loading commit data...
stt_backends.py Loading commit data...
text.py Loading commit data...
transcriptions.py Loading commit data...
tts.py Loading commit data...
tts_backends.py Loading commit data...
urlutils.py Loading commit data...
video.py Loading commit data...
vllm_worker.py Loading commit data...
voice_clone.py Loading commit data...
voice_convert.py Loading commit data...
vpr_salad_server.py Loading commit data...