Skip to content

feat(teleop): add LiveKit hosted teleop module - #3398

Draft
ruthwikdasyam wants to merge 4 commits into
mainfrom
ruthwik/feat/livekit-hosted-module
Draft

feat(teleop): add LiveKit hosted teleop module#3398
ruthwikdasyam wants to merge 4 commits into
mainfrom
ruthwik/feat/livekit-hosted-module

Conversation

@ruthwikdasyam

@ruthwikdasyam ruthwikdasyam commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

Contribution path

Problem

Hosted teleoperation only supports the Cloudflare transport path. The previous LiveKit attempt predated the current hosted teleop module foundation and was closed as superseded.

Solution

Add a LiveKit room edge module that obtains broker-minted room credentials, manages broker heartbeat and session cleanup, routes existing hosted command/state/telemetry/map ports, publishes the camera mux track, and forwards operator-loss to the existing safety path. Add Go2, XArm6, and XArm7 blueprints without adding a generic DimOS transport.

How to Test

uv sync --extra livekit && uv run pytest dimos/teleop/hosted/test_livekit.py dimos/robot/test_all_blueprints.py -v

A credentialed broker/operator session is still required to validate a real LiveKit room.

AI assistance

OpenCode with gpt-5.6-terra implemented the feature and tests; the author reviewed the resulting code.

Checklist

  • I have read and approved the CLA.

@codecov

codecov Bot commented Aug 8, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 64.16309% with 167 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
dimos/teleop/hosted/livekit.py 47.54% 128 Missing and 11 partials ⚠️
dimos/teleop/hosted/livekit_broker_client.py 52.54% 23 Missing and 5 partials ⚠️
@@            Coverage Diff             @@
##             main    #3398      +/-   ##
==========================================
- Coverage   76.09%   76.03%   -0.06%     
==========================================
  Files        1189     1193       +4     
  Lines      115284   115750     +466     
  Branches    10366    10403      +37     
==========================================
+ Hits        87720    88016     +296     
- Misses      24553    24707     +154     
- Partials     3011     3027      +16     
Flag Coverage Δ
OS-ubuntu-24.04-arm 70.12% <64.16%> (-0.04%) ⬇️
OS-ubuntu-latest 72.11% <64.16%> (-0.04%) ⬇️
Py-3.10 72.11% <64.16%> (-0.04%) ⬇️
Py-3.11 72.11% <64.16%> (-0.04%) ⬇️
Py-3.12 72.11% <64.16%> (-0.03%) ⬇️
Py-3.13 72.11% <64.16%> (-0.05%) ⬇️
Py-3.14 72.11% <64.16%> (-0.04%) ⬇️
Py-3.14t 72.11% <64.16%> (-0.05%) ⬇️
SelfHosted-Large 29.64% <30.04%> (+<0.01%) ⬆️
SelfHosted-Linux 35.81% <30.04%> (-0.04%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
dimos/robot/all_blueprints.py 100.00% <ø> (ø)
dimos/teleop/hosted/blueprints/livekit.py 100.00% <100.00%> (ø)
dimos/teleop/hosted/test_livekit.py 100.00% <100.00%> (ø)
dimos/teleop/hosted/livekit_broker_client.py 52.54% <52.54%> (ø)
dimos/teleop/hosted/livekit.py 47.54% <47.54%> (ø)

... and 3 files with indirect coverage changes

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions github-actions Bot added ready-to-merge Required CI checks have passed on this PR and removed ready-to-merge Required CI checks have passed on this PR labels Aug 8, 2026
@ruthwikdasyam
ruthwikdasyam marked this pull request as draft August 8, 2026 03:05
@ruthwikdasyam
ruthwikdasyam force-pushed the ruthwik/feat/livekit-hosted-module branch from 38d4927 to f5e3c5c Compare August 8, 2026 03:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant