Skip to content

chore(teleop): rename Quest stack to WebXR - #3676

Open
TomCC7 wants to merge 6 commits into
mainfrom
cc/feat/pico-support
Open

chore(teleop): rename Quest stack to WebXR#3676
TomCC7 wants to merge 6 commits into
mainfrom
cc/feat/pico-support

Conversation

@TomCC7

@TomCC7 TomCC7 commented Aug 25, 2026

Copy link
Copy Markdown
Member

Contribution path

This is a breaking rename of the existing device-specific Quest teleoperation
adapter before PICO support is developed separately.

Problem

The browser teleoperation stack was named after Meta Quest even though it uses
the WebXR API and supports both immersive AR and immersive VR sessions.

Changes

  • Rename the Quest package, classes, imports, and blueprints to WebXR.
  • Use spatial teleoperation as the device-neutral capability description.
  • Remove remaining Quest/VR abstraction names from the browser UI, comments,
    tests, and documentation while retaining real device names in support notes.
  • Remove stale body-tracking documentation; this PR adds no tracking API or
    behavior.
  • Restore the domain glossary and update only its teleoperation terminology.

There are intentionally no compatibility aliases for the removed Quest names.

Verification

  • uv run pytest -q dimos/teleop/webxr/test_module.py dimos/teleop/webxr/test_blueprints.py dimos/control/tasks/teleop_ik_task/test_teleop_ik_task.py dimos/control/test_coordinator_routing.py dimos/teleop/hosted/test_arm_command.py dimos/robot/test_all_blueprints.py dimos/robot/test_all_blueprints_generation.py dimos/robot/test_get_all_blueprints.py
    • 215 passed, 3 skipped, 40 deselected
  • uv run ruff check
  • uv run mypy dimos/
  • node --check dimos/teleop/webxr/web/static/teleop.js

AI assistance

OpenAI Codex with GPT-5 performed the refactor cleanup, documentation updates,
and automated verification under user direction.

Checklist

  • I have read and approved the CLA.

@codecov

codecov Bot commented Aug 25, 2026

Copy link
Copy Markdown

Codecov Report

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

Files with missing lines Patch % Lines
dimos/teleop/webxr/module.py 82.35% 3 Missing ⚠️
@@            Coverage Diff             @@
##             main    #3676      +/-   ##
==========================================
+ Coverage   77.93%   77.98%   +0.04%     
==========================================
  Files        1300     1296       -4     
  Lines      125122   124870     -252     
  Branches    10917    10901      -16     
==========================================
- Hits        97519    97380     -139     
+ Misses      24457    24318     -139     
- Partials     3146     3172      +26     
Flag Coverage Δ
OS-ubuntu-24.04-arm 73.04% <97.43%> (-0.01%) ⬇️
OS-ubuntu-latest 74.86% <97.43%> (-0.01%) ⬇️
Py-3.10 74.85% <97.43%> (-0.01%) ⬇️
Py-3.11 74.86% <97.43%> (-0.01%) ⬇️
Py-3.12 74.86% <97.43%> (+<0.01%) ⬆️
Py-3.13 74.85% <97.43%> (-0.01%) ⬇️
Py-3.14 74.86% <97.43%> (-0.01%) ⬇️
Py-3.14t 74.85% <97.43%> (ø)
SelfHosted-Large 29.91% <58.97%> (-0.03%) ⬇️
SelfHosted-Linux 35.06% <58.97%> (+<0.01%) ⬆️

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

Files with missing lines Coverage Δ
dimos/control/task.py 80.45% <ø> (ø)
dimos/control/tasks/pose_target_ik.py 84.01% <ø> (ø)
...mos/control/tasks/teleop_ik_task/teleop_ik_task.py 90.28% <100.00%> (ø)
...ontrol/tasks/teleop_ik_task/test_teleop_ik_task.py 100.00% <100.00%> (ø)
dimos/control/teleop_coordinator.py 100.00% <100.00%> (ø)
dimos/control/test_coordinator_routing.py 99.41% <100.00%> (ø)
dimos/imitation/collection/blueprint.py 88.23% <100.00%> (ø)
dimos/imitation/collection/episode_monitor.py 89.18% <100.00%> (ø)
dimos/imitation/collection/test_blueprint.py 100.00% <100.00%> (ø)
dimos/imitation/collection/test_episode_monitor.py 99.35% <100.00%> (ø)
... and 16 more

... and 16 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.

@TomCC7 TomCC7 changed the title feat(teleop): add PICO WebXR body tracking demo feat(teleop): add PICO tracking and generalize Quest stack to WebXR Aug 25, 2026
@TomCC7 TomCC7 changed the title feat(teleop): add PICO tracking and generalize Quest stack to WebXR refactor(teleop): generalize Quest stack to WebXR Aug 26, 2026
@TomCC7
TomCC7 force-pushed the cc/feat/pico-support branch from f71e3e1 to 06be824 Compare August 26, 2026 06:24
@TomCC7
TomCC7 changed the base branch from cc/feat/openyam-macos-support to main August 26, 2026 06:24
@TomCC7
TomCC7 marked this pull request as ready for review August 26, 2026 06:28
@mintlify

mintlify Bot commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
dimensional 🔴 Failed Aug 26, 2026, 6:34 AM

💡 Tip: Enable Workflows to automatically generate PRs for you.

@TomCC7 TomCC7 changed the title refactor(teleop): generalize Quest stack to WebXR chore(teleop): rename Quest stack to WebXR Aug 26, 2026
@greptile-apps

greptile-apps Bot commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This change renames the Quest teleoperation stack under WebXR naming across the package, integrations, tests, and documentation. A focused check confirmed that dimos/teleop/webxr/README.md still directs contributors to a removed quest/ package path in its file tree.

Confidence Score: 4/5

Not ready to merge until the WebXR README points contributors to the current package directory.

The documented package root was directly compared with the repository filesystem and tracked paths, confirming that the README uses the old directory name.

Files Needing Attention: dimos/teleop/webxr/README.md needs its File Structure root updated from quest/ to webxr/.

T-Rex T-Rex Logs

What T-Rex did

  • Produced proofs for two posted P2 findings and linked the corresponding review comments.
  • Ran the WebXR README package-path validation script and observed an intentional mismatch signal (exit code 1), with the actual package located under dimos/teleop/webxr and the expected path webxr.

View all artifacts

T-Rex Ran code and verified through T-Rex

Comments Outside Diff (1)

  1. General comment

    P2 WebXR README directs contributors to removed quest/ package path

    • Bug
      • The File Structure tree at dimos/teleop/webxr/README.md:102-107 starts with quest/, while the actual tracked package is dimos/teleop/webxr and no dimos/teleop/quest directory exists.
    • Cause
      • The package was renamed to webxr/ without updating the root label in the README's File Structure tree.
    • Fix
      • Change line 102 from quest/ to webxr/.

    T-Rex Ran code and verified through T-Rex

Reviews (1): Last reviewed commit: "spec: remove" | Re-trigger Greptile

Comment thread dimos/teleop/webxr/README.md Outdated
@github-actions github-actions Bot added the ready-to-merge Required CI checks have passed on this PR label Aug 26, 2026
Comment thread dimos/teleop/webxr/README.md Outdated
@ruthwikdasyam

Copy link
Copy Markdown
Contributor

looking good. The html/js files refer Quest Teleop in the title.. on the browser landing page. can modify that too

@TomCC7
TomCC7 requested a review from aclauer as a code owner August 26, 2026 21:00
@github-actions github-actions Bot removed the ready-to-merge Required CI checks have passed on this PR label Aug 26, 2026
@TomCC7

TomCC7 commented Aug 26, 2026

Copy link
Copy Markdown
Member Author

Addressed the landing-page feedback in 3950c95: both the document title and visible heading now say DimOS WebXR Teleop. I also renamed the VR-only function/status wording because this client requests immersive-ar first and falls back to immersive-vr.

@TomCC7
TomCC7 force-pushed the cc/feat/pico-support branch from d73e1ae to f14fc67 Compare August 26, 2026 21:27
@github-actions github-actions Bot added the ready-to-merge Required CI checks have passed on this PR label Aug 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-to-merge Required CI checks have passed on this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants