dimensionalOS / dimensionalOS/dimos

GlobalPlanner can replan during shutdown

Open
#3,039 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
4.5k
Forks
808
Avg merge
3d 5h
Merged PRs (30d)
233

Description

GlobalPlanner.stop() marks the planner stopped only after it cancels the goal and stops LocalPlanner.

A final stopped_navigating callback can wake the monitor during teardown and queue another replan. An in-flight goal or path calculation can also activate stale work after cancellation.

Shutdown should mark the planner as stopping first, detach the callback, and ignore work for an old goal or plan.

Reproduced on current main with deterministic tests covering a completion during stop, a goal during shutdown, and a path calculation finishing after cancellation.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with GlobalPlanner.stop() and trace how it cancels the goal, stops LocalPlanner, and handles the stopped_navigating callback. Run or inspect the deterministic tests described in the issue for completion during stop, a goal during shutdown, and a path calculation after cancellation. Done means shutdown cannot queue replans or reactivate work for an old goal or plan.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
robotics
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.