Skip to content

fix: misc dev fixes (docs import paths + CameraModule.stop @rpc)#1773

Merged
jeff-hykin merged 24 commits intodevfrom
jeff/fix/dev
Apr 11, 2026
Merged

fix: misc dev fixes (docs import paths + CameraModule.stop @rpc)#1773
jeff-hykin merged 24 commits intodevfrom
jeff/fix/dev

Conversation

@jeff-hykin
Copy link
Copy Markdown
Member

Problem

Two small things bundled:

  1. Docs and READMEs still reference the old dimos.core.blueprints import path after the move to dimos.core.coordination.blueprints (the shim still works, but examples should show the canonical path).
  2. CameraModule.stop() is a lifecycle hook but wasn't decorated with @rpc, so it wasn't reachable via RPC like the other lifecycle hooks.

Solution

  • Update AGENTS.md, README.md, and the lidar/temporal-memory/nav READMEs to import autoconnect from dimos.core.coordination.blueprints.
  • Add @rpc to CameraModule.stop().

Breaking Changes

None.

How to Test

bin/ci-check

Docs-only changes + a one-line decorator addition — no behavior change beyond making stop() RPC-callable.

Contributor License Agreement

  • I have read and approved the CLA.

jeff-hykin and others added 23 commits March 20, 2026 08:03
….py, add typing_extensions dep

Address Paul's review comment: fix remaining Self imports that used
'Any as Self' fallback on Python 3.10, and add typing_extensions as an
explicit dependency in pyproject.toml.
typer.confirm raises click.Abort when stdin is not a TTY. New
dimos/utils/prompt.py provides confirm() that returns the default
when not interactive. system_configurator now uses it.

Revert: git revert HEAD
dimos/utils/prompt.py provides:
- confirm(): returns default if not TTY, else typer.confirm()
- sudo_run(): prepends sudo if not root

Moved sudo_run from system_configurator/base.py to prompt.py.
Updated all importers (base.py, lcm.py, clock_sync.py, tests).

Root cause: Ivan's 8edc995 replaced input() with typer.confirm()
which raises click.Abort on non-TTY stdin.

Revert: git revert HEAD
The test_lcm_autodecoder_pubsub test flaked under full suite load because
publish() fired before the handler thread entered the LCM loop. Adding a
50ms sleep after start() in each fixture gives the thread time to be ready.
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Non-interactive (no tty) still defaults to True for daemons/CI.
Interactive sessions no longer default to yes — pressing Enter without
typing y/n now aborts instead of silently applying system changes.
Prevents accidental sudo commands from Enter-mashing.
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
- Update core/ structure tree to show coordination/ subdir (blueprints.py
  moved; dimos/core/blueprints.py shim no longer exists).
- Fix unclosed code fence after minimal skill example.
- Replace nonexistent xarm7-trajectory-sim row with xarm-perception-sim-agent
  and xarm7-planner-coordinator.
- Update spec-pattern source reference to coordination/blueprints.py.
- Minor grammar fix in intro.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@jeff-hykin jeff-hykin enabled auto-merge (squash) April 11, 2026 02:17
@jeff-hykin jeff-hykin merged commit f3dcc9f into dev Apr 11, 2026
3 of 4 checks passed
@jeff-hykin jeff-hykin deleted the jeff/fix/dev branch April 11, 2026 02:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants