hosted-teleop: remove quest_hosted and cleanup#3173
Conversation
…ns close promptly
…eport fixes; 22-bit latency stamp (416px min)
…thread, safety-path tests
…+); enable go2 acrobatics
…defensive pending reset
❌ 12 Tests Failed:
View the top 3 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
Greptile SummaryThis PR removes the deprecated
Confidence Score: 5/5The PR appears safe to merge because no additional blocking failure eligible for this follow-up review remains. No blocking failure remains beyond the issue already communicated in the existing inline thread. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart LR
Operator[Hosted operator] --> Broker[WebRTC broker provider]
Broker --> Commands[Go2 / Arm command modules]
Broker --> Camera[Camera mux]
Broker --> Stats[Hosted stats]
Commands --> Executor[Serialized command executor]
Executor --> Driver[Robot driver / coordinator]
Camera --> Broker
Stats --> Broker
Reviews (2): Last reviewed commit: "Merge branch 'main' into ruthwik/hostedt..." | Re-trigger Greptile |
| def _apply_coordinator_latch(self, _epoch: int) -> bool: | ||
| estopped = self._estopped | ||
| try: |
There was a problem hiding this comment.
E-STOP transition state is lost
When an E-STOP is followed quickly by a clear, the independent urgent callbacks both read the latest _estopped value instead of their requested transitions. Both can therefore call coordinator.set_estop(False) and acknowledge success without ever latching the coordinator, leaving its arm tasks operational.
Knowledge Base Used: Teleop Flow: From Input Device to Robot Control Commands
Contribution path
Problem
Cleanup deprecated quest_hosted module
fix needed - lifecycle races, E-STOP acks, blocking driver RPCs
Solution
quest_hosted/(superseded byteleop/hosted/)TeleopRecorder, removed dublicate_run_sync, race-free loop-thread shutdown, prompt session close on worker teardown.stop_movement/set_estop/Damp run on urgent threads off the provider loop.How to Test
dimos run teleop-hosted-go2-transport— drive, E-STOP, minimap, camera fromthe operator page.
pytest dimos/teleop dimos/protocol/pubsub/impl/webrtcAI assistance
Claude Code with Opus 4.8 - audit, fixes, and tests written with heavy assistance; all changes reviewed by me.
Checklist