Skip to content

lfs.dimensionalos.com 404 #2495

Description

@timbojones91

Description

System

22.04

Robot/Sim/Hardware (including firmware version)

Go2

Steps to reproduce

DimOS version

main latest

Logs / screenshots

dimos installed in /home/th/dimensional

▸ DimOS uses LCM transport which needs larger UDP buffers:
sudo sysctl -w net.core.rmem_max=67108864
sudo sysctl -w net.core.rmem_default=67108864

net.core.rmem_max = 67108864
net.core.rmem_default = 67108864
✓ LCM buffers configured
▸ verifying installation...
✓ python import: dimos ✓
✓ dimos CLI available

▸ post-install smoke test

▸ running: dimos --simulation run unitree-go2 (Ctrl+C to stop)
07:41:13.312[inf][dimos/robot/cli/dimos.py ] Starting DimOS
07:41:33.488[inf][dination/module_coordinator.py] Building the blueprint
07:41:33.544[war][ce/system_configurator/base.py] System configuration changes are recommended/required:

07:41:33.545[war][ce/system_configurator/base.py] - Multicast: sudo ip link set lo multicast on

  • Multicast: sudo ip route add 224.0.0.0/4 dev lo

07:41:33.567[inf][ce/system_configurator/base.py] System configuration completed.
07:41:33.567[inf][dination/module_coordinator.py] Starting the modules
07:41:33.625[inf][ation/worker_manager_python.py] Worker pool started. n_workers=9
07:41:36.619[inf][/coordination/python_worker.py] Deployed module. module=PatrollingModule module_id=7 worker_id=7
07:41:36.755[inf][/coordination/python_worker.py] Deployed module. module=ReplanningAStarPlanner module_id=5 worker_id=5
07:41:36.779[inf][/coordination/python_worker.py] Deployed module. module=WavefrontFrontierExplorer module_id=6 worker_id=6
07:41:36.900[inf][et_vis/websocket_vis_module.py] WebSocket visualization module initialized on port 7779, GPS goal tracking enabled
07:41:36.901[inf][/coordination/python_worker.py] Deployed module. module=WebsocketVisModule module_id=2 worker_id=2
07:41:39.044[inf][/coordination/python_worker.py] Deployed module. module=CostMapper module_id=4 worker_id=4
07:41:39.639[inf][dimos/utils/data.py ] Using local user data directory at '/home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/data'
07:41:40.083[inf][/coordination/python_worker.py] Deployed module. module=RerunBridgeModule module_id=0 worker_id=0
batch response: 404 Not Found: Cannot find any of the requested objects
error: failed to fetch some objects from 'https://lfs.dimensionalos.com/dimensionalOS/dimos'
07:41:43.663[inf][/coordination/python_worker.py] Deployed module. module=VoxelGridMapper module_id=3 worker_id=3
07:41:43.664[inf][ation/worker_manager_python.py] Shutting down all workers...
07:41:43.669[inf][/coordination/python_worker.py] Worker stopping module... module=PatrollingModule module_id=7 worker_id=7
07:41:43.706[inf][/coordination/python_worker.py] Worker module stopped. module=PatrollingModule module_id=7 worker_id=7
07:41:43.714[inf][/coordination/python_worker.py] Worker stopping module... module=WavefrontFrontierExplorer module_id=6 worker_id=6
07:41:43.749[inf][/coordination/python_worker.py] Worker module stopped. module=WavefrontFrontierExplorer module_id=6 worker_id=6
07:41:43.758[inf][/coordination/python_worker.py] Worker stopping module... module=ReplanningAStarPlanner module_id=5 worker_id=5
07:41:43.759[inf][nning_a_star/global_planner.py] Cancelling goal. arrived=False but_will_try_again=False
07:41:43.763[inf][anning_a_star/local_planner.py] changed state state=idle
07:41:43.763[inf][nning_a_star/global_planner.py] Cancelling goal. arrived=False but_will_try_again=False
07:41:43.763[inf][anning_a_star/local_planner.py] changed state state=idle
07:41:43.763[inf][anning_a_star/local_planner.py] changed state state=idle
07:41:43.777[inf][/coordination/python_worker.py] Worker module stopped. module=ReplanningAStarPlanner module_id=5 worker_id=5
07:41:43.784[inf][/coordination/python_worker.py] Worker stopping module... module=CostMapper module_id=4 worker_id=4
07:41:43.803[inf][/coordination/python_worker.py] Worker module stopped. module=CostMapper module_id=4 worker_id=4
07:41:43.828[inf][/coordination/python_worker.py] Worker stopping module... module=VoxelGridMapper module_id=3 worker_id=3
07:41:43.864[inf][/coordination/python_worker.py] Worker module stopped. module=VoxelGridMapper module_id=3 worker_id=3
07:41:43.933[inf][/coordination/python_worker.py] Worker stopping module... module=WebsocketVisModule module_id=2 worker_id=2
07:41:43.969[inf][/coordination/python_worker.py] Worker module stopped. module=WebsocketVisModule module_id=2 worker_id=2
07:41:44.009[inf][/coordination/python_worker.py] Worker stopping module... module=RerunBridgeModule module_id=0 worker_id=0
07:41:44.041[inf][/coordination/python_worker.py] Worker module stopped. module=RerunBridgeModule module_id=0 worker_id=0
07:41:44.076[inf][ation/worker_manager_python.py] All workers shut down
07:41:44.084[err][dimos/utils/logging_config.py ] Uncaught exception occurred
╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
│ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/robot/cli/dimos.py:275 in run │
│ │
│ 272 │ if cli_config_overrides: │
│ 273 │ │ kwargs["g"] = cli_config_overrides │
│ 274 │ │
│ ❱ 275 │ coordinator = ModuleCoordinator.build(blueprint, kwargs) │
│ 276 │ │
│ 277 │ if daemon: │
│ 278 │ │ # Health check before daemonizing — catch early crashes │
│ │
│ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/core/coordination/module_coordinat │
│ or.py:268 in build │
│ │
│ 265 │ │ coordinator = cls(g=global_config) │
│ 266 │ │ coordinator.start() │
│ 267 │ │ │
│ ❱ 268 │ │ _deploy_all_modules(blueprint, coordinator, global_config, blueprint_args) │
│ 269 │ │ coordinator._connect_streams(blueprint) │
│ 270 │ │ _connect_module_refs(blueprint, coordinator) │
│ 271 │
│ │
│ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/core/coordination/module_coordinat │
│ or.py:655 in _deploy_all_modules │
│ │
│ 652 │ for bp in blueprint.active_blueprints: │
│ 653 │ │ module_specs.append((bp.module, gc, bp.kwargs.copy())) │
│ 654 │ │
│ ❱ 655 │ module_coordinator.deploy_parallel(module_specs, blueprint_args) │
│ 656 │ │
│ 657 │ for bp in blueprint.active_blueprints: │
│ 658 │ │ module_coordinator._deployed_atoms[bp.module] = bp │
│ │
│ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/core/coordination/module_coordinat │
│ or.py:165 in deploy_parallel │
│ │
│ 162 │ │ │ │ results[index] = module │
│ 163 │ │ │
│ 164 │ │ try: │
│ ❱ 165 │ │ │ safe_thread_map(list(specs_by_deployment.keys()), _deploy_group) │
│ 166 │ │ except: │
│ 167 │ │ │ self.stop() │
│ 168 │ │ │ raise │
│ │
│ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/utils/safe_thread_map.py:84 in │
│ safe_thread_map │
│ │
│ 81 │ │ if on_errors is not None: │
│ 82 │ │ │ zipped = [(items[i], outcomes[i]) for i in range(len(items))] │
│ 83 │ │ │ return on_errors(zipped, successes, errors) # type: ignore[no-any-return] │
│ ❱ 84 │ │ raise ExceptionGroup("safe_thread_map failed", errors) │
│ 85 │ │
│ 86 │ return [outcomes[i] for i in range(len(items))] # type: ignore[misc] │
│ 87 │
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
ExceptionGroup: safe_thread_map failed (1 sub-exception)

╭──────────────────────────────────────── Sub-exception #1 ────────────────────────────────────────╮
│ ╭───────────────────────────── Traceback (most recent call last) ──────────────────────────────╮ │
│ │ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/utils/safe_thread_map.py:68 in │ │
│ │ safe_thread_map │ │
│ │ │ │
│ │ 65 │ │ for fut in as_completed(futures): │ │
│ │ 66 │ │ │ idx = futures[fut] │ │
│ │ 67 │ │ │ try: │ │
│ │ ❱ 68 │ │ │ │ outcomes[idx] = fut.result() │ │
│ │ 69 │ │ │ except Exception as e: │ │
│ │ 70 │ │ │ │ outcomes[idx] = e │ │
│ │ 71 │ │
│ │ │ │
│ │ /home/th/.local/share/uv/python/cpython-3.12.13-linux-x86_64-gnu/lib/python3.12/concurrent/f │ │
│ │ utures/_base.py:449 in result │ │
│ │ │ │
│ │ 446 │ │ │ │ if self._state in [CANCELLED, CANCELLED_AND_NOTIFIED]: │ │
│ │ 447 │ │ │ │ │ raise CancelledError() │ │
│ │ 448 │ │ │ │ elif self._state == FINISHED: │ │
│ │ ❱ 449 │ │ │ │ │ return self.__get_result() │ │
│ │ 450 │ │ │ │ │ │
│ │ 451 │ │ │ │ self._condition.wait(timeout) │ │
│ │ 452 │ │
│ │ │ │
│ │ /home/th/.local/share/uv/python/cpython-3.12.13-linux-x86_64-gnu/lib/python3.12/concurrent/f │ │
│ │ utures/_base.py:401 in __get_result │ │
│ │ │ │
│ │ 398 │ def __get_result(self): │ │
│ │ 399 │ │ if self._exception: │ │
│ │ 400 │ │ │ try: │ │
│ │ ❱ 401 │ │ │ │ raise self._exception │ │
│ │ 402 │ │ │ finally: │ │
│ │ 403 │ │ │ │ # Break a reference cycle with the exception in self._exception │ │
│ │ 404 │ │ │ │ self = None │ │
│ │ │ │
│ │ /home/th/.local/share/uv/python/cpython-3.12.13-linux-x86_64-gnu/lib/python3.12/concurrent/f │ │
│ │ utures/thread.py:59 in run │ │
│ │ │ │
│ │ 56 │ │ │ return │ │
│ │ 57 │ │ │ │
│ │ 58 │ │ try: │ │
│ │ ❱ 59 │ │ │ result = self.fn(*self.args, **self.kwargs) │ │
│ │ 60 │ │ except BaseException as exc: │ │
│ │ 61 │ │ │ self.future.set_exception(exc) │ │
│ │ 62 │ │ │ # Break a reference cycle with the exception 'exc' │ │
│ │ │ │
│ │ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/core/coordination/module_coord │ │
│ │ inator.py:160 in _deploy_group │ │
│ │ │ │
│ │ 157 │ │ results: list[Any] = [None] * len(module_specs) │ │
│ │ 158 │ │ │ │
│ │ 159 │ │ def _deploy_group(dep: str) -> None: │ │
│ │ ❱ 160 │ │ │ deployed = self._managers[dep].deploy_parallel(specs_by_deployment[dep], b │ │
│ │ 161 │ │ │ for index, module in zip(indices_by_deployment[dep], deployed, strict=True │ │
│ │ 162 │ │ │ │ results[index] = module │ │
│ │ 163 │ │
│ │ │ │
│ │ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/core/coordination/worker_manag │ │
│ │ er_python.py:163 in deploy_parallel │ │
│ │ │ │
│ │ 160 │ │ │ │
│ │ 161 │ │ try: │ │
│ │ 162 │ │ │ # item: (worker, module_class, global_config, kwargs) │ │
│ │ ❱ 163 │ │ │ return safe_thread_map( │ │
│ │ 164 │ │ │ │ assignments, │ │
│ │ 165 │ │ │ │ lambda item: RPCClient(item[0].deploy_module(item[1], item[2], item[3] │ │
│ │ 166 │ │ │ ) │ │
│ │ │ │
│ │ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/utils/safe_thread_map.py:84 in │ │
│ │ safe_thread_map │ │
│ │ │ │
│ │ 81 │ │ if on_errors is not None: │ │
│ │ 82 │ │ │ zipped = [(items[i], outcomes[i]) for i in range(len(items))] │ │
│ │ 83 │ │ │ return on_errors(zipped, successes, errors) # type: ignore[no-any-return] │ │
│ │ ❱ 84 │ │ raise ExceptionGroup("safe_thread_map failed", errors) │ │
│ │ 85 │ │ │
│ │ 86 │ return [outcomes[i] for i in range(len(items))] # type: ignore[misc] │ │
│ │ 87 │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
│ ExceptionGroup: safe_thread_map failed (1 sub-exception) │
│ │
│ ╭────────────────────────────────────── Sub-exception #1 ──────────────────────────────────────╮ │
│ │ ╭─────────────────────────── Traceback (most recent call last) ────────────────────────────╮ │ │
│ │ │ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/utils/safe_thread_map.py:6 │ │ │
│ │ │ 8 in safe_thread_map │ │ │
│ │ │ │ │ │
│ │ │ 65 │ │ for fut in as_completed(futures): │ │ │
│ │ │ 66 │ │ │ idx = futures[fut] │ │ │
│ │ │ 67 │ │ │ try: │ │ │
│ │ │ ❱ 68 │ │ │ │ outcomes[idx] = fut.result() │ │ │
│ │ │ 69 │ │ │ except Exception as e: │ │ │
│ │ │ 70 │ │ │ │ outcomes[idx] = e │ │ │
│ │ │ 71 │ │ │
│ │ │ │ │ │
│ │ │ /home/th/.local/share/uv/python/cpython-3.12.13-linux-x86_64-gnu/lib/python3.12/concurre │ │ │
│ │ │ nt/futures/_base.py:449 in result │ │ │
│ │ │ │ │ │
│ │ │ 446 │ │ │ │ if self._state in [CANCELLED, CANCELLED_AND_NOTIFIED]: │ │ │
│ │ │ 447 │ │ │ │ │ raise CancelledError() │ │ │
│ │ │ 448 │ │ │ │ elif self._state == FINISHED: │ │ │
│ │ │ ❱ 449 │ │ │ │ │ return self.__get_result() │ │ │
│ │ │ 450 │ │ │ │ │ │ │
│ │ │ 451 │ │ │ │ self._condition.wait(timeout) │ │ │
│ │ │ 452 │ │ │
│ │ │ │ │ │
│ │ │ /home/th/.local/share/uv/python/cpython-3.12.13-linux-x86_64-gnu/lib/python3.12/concurre │ │ │
│ │ │ nt/futures/_base.py:401 in __get_result │ │ │
│ │ │ │ │ │
│ │ │ 398 │ def __get_result(self): │ │ │
│ │ │ 399 │ │ if self._exception: │ │ │
│ │ │ 400 │ │ │ try: │ │ │
│ │ │ ❱ 401 │ │ │ │ raise self._exception │ │ │
│ │ │ 402 │ │ │ finally: │ │ │
│ │ │ 403 │ │ │ │ # Break a reference cycle with the exception in self._exception │ │ │
│ │ │ 404 │ │ │ │ self = None │ │ │
│ │ │ │ │ │
│ │ │ /home/th/.local/share/uv/python/cpython-3.12.13-linux-x86_64-gnu/lib/python3.12/concurre │ │ │
│ │ │ nt/futures/thread.py:59 in run │ │ │
│ │ │ │ │ │
│ │ │ 56 │ │ │ return │ │ │
│ │ │ 57 │ │ │ │ │
│ │ │ 58 │ │ try: │ │ │
│ │ │ ❱ 59 │ │ │ result = self.fn(*self.args, **self.kwargs) │ │ │
│ │ │ 60 │ │ except BaseException as exc: │ │ │
│ │ │ 61 │ │ │ self.future.set_exception(exc) │ │ │
│ │ │ 62 │ │ │ # Break a reference cycle with the exception 'exc' │ │ │
│ │ │ │ │ │
│ │ │ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/core/coordination/worker_m │ │ │
│ │ │ anager_python.py:165 in │ │ │
│ │ │ │ │ │
│ │ │ 162 │ │ │ # item: (worker, module_class, global_config, kwargs) │ │ │
│ │ │ 163 │ │ │ return safe_thread_map( │ │ │
│ │ │ 164 │ │ │ │ assignments, │ │ │
│ │ │ ❱ 165 │ │ │ │ lambda item: RPCClient(item[0].deploy_module(item[1], item[2], ite │ │ │
│ │ │ 166 │ │ │ ) │ │ │
│ │ │ 167 │ │ except: │ │ │
│ │ │ 168 │ │ │ self.stop() │ │ │
│ │ │ │ │ │
│ │ │ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/core/coordination/python_w │ │ │
│ │ │ orker.py:242 in deploy_module │ │ │
│ │ │ │ │ │
│ │ │ 239 │ │ │ │ response: WorkerResponse = self._conn.recv() │ │ │
│ │ │ 240 │ │ │ │ │ │
│ │ │ 241 │ │ │ if response.error: │ │ │
│ │ │ ❱ 242 │ │ │ │ raise RuntimeError(f"Failed to deploy module: {response.error}") │ │ │
│ │ │ 243 │ │ │ │ │ │
│ │ │ 244 │ │ │ actor = Actor(self._conn, module_class, self._worker_id, module_id, se │ │ │
│ │ │ 245 │ │ │ actor.set_ref(actor).result() │ │ │
│ │ ╰──────────────────────────────────────────────────────────────────────────────────────────╯ │ │
│ │ RuntimeError: Failed to deploy module: RuntimeError: Failed to pull LFS file │ │
│ │ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/data/repo/data/.lfs/mujoco_sim │ │
│ │ .tar.gz: Command '['git', 'lfs', 'pull', '--include', 'data/.lfs/mujoco_sim.tar.gz']' │ │
│ │ returned non-zero exit status 2. │ │
│ │ Traceback (most recent call last): │ │
│ │ File "/home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/utils/data.py", line │ │
│ │ 164, in _lfs_pull │ │
│ │ subprocess.run( │ │
│ │ File │ │
│ │ "/home/th/.local/share/uv/python/cpython-3.12.13-linux-x86_64-gnu/lib/python3.12/subprocess. │ │
│ │ py", line 571, in run │ │
│ │ raise CalledProcessError(retcode, process.args, │ │
│ │ subprocess.CalledProcessError: Command '['git', 'lfs', 'pull', '--include', │ │
│ │ 'data/.lfs/mujoco_sim.tar.gz']' returned non-zero exit status 2. │ │
│ │ │ │
│ │ During handling of the above exception, another exception occurred: │ │
│ │ │ │
│ │ Traceback (most recent call last): │ │
│ │ File │ │
│ │ "/home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/core/coordination/python_work │ │
│ │ er.py", line 441, in _worker_loop │ │
│ │ response = _handle_request(request, state) │ │
│ │ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ │ │
│ │ File │ │
│ │ "/home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/core/coordination/python_work │ │
│ │ er.py", line 377, in _handle_request │ │
│ │ state.instances[module_id] = module_class(**kwargs) │ │
│ │ ^^^^^^^^^^^^^^^^^^^^^^ │ │
│ │ File │ │
│ │ "/home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/robot/unitree/go2/connection. │ │
│ │ py", line 221, in init │ │
│ │ self.connection = make_connection(self.config.ip, self.config.g) │ │
│ │ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ │ │
│ │ File │ │
│ │ "/home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/robot/unitree/go2/connection. │ │
│ │ py", line 128, in make_connection │ │
│ │ return MujocoConnection(cfg) │ │
│ │ ^^^^^^^^^^^^^^^^^^^^^ │ │
│ │ File │ │
│ │ "/home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/robot/unitree/mujoco_connecti │ │
│ │ on.py", line 75, in init │ │
│ │ get_data("mujoco_sim") │ │
│ │ File "/home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/utils/data.py", line │ │
│ │ 259, in get_data │ │
│ │ archive_path = _decompress_archive(_pull_lfs_archive(archive_name)) │ │
│ │ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ │ │
│ │ File "/home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/utils/data.py", line │ │
│ │ 203, in _pull_lfs_archive │ │
│ │ _lfs_pull(file_path, repo_root) │ │
│ │ File "/home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/utils/data.py", line │ │
│ │ 171, in _lfs_pull │ │
│ │ raise RuntimeError(f"Failed to pull LFS file {file_path}: {e}") │ │
│ │ RuntimeError: Failed to pull LFS file │ │
│ │ /home/th/dimensional/.venv/lib/python3.12/site-packages/dimos/data/repo/data/.lfs/mujoco_sim │ │
│ │ .tar.gz: Command '['git', 'lfs', 'pull', '--include', 'data/.lfs/mujoco_sim.tar.gz']' │ │
│ │ returned non-zero exit status 2. │ │
│ │ │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯

⚠ smoke test exited with code 1 (may be expected headless)

🎉 installation complete!

Dimos failed smoke test as the LFS is not available

thanks

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions