Skip to content

Conversation

@jgallagher
Copy link
Contributor

There are two main changes in this PR:

  • PlanningInput now has a parent_blueprint field
  • The Planner no longer takes a separate parent blueprint argument (since it comes with the planning input)

There are a bunch of other mechanical changes, mostly related to trafficking in Arc<Blueprint>s in various places.

The rationale for change this is to ensure correctness as we get into #5552; I wrote this up in the new doc comment on PlanningInputFromDb::assemble(); feedback welcome!

This is staged on top of #9473. I had tried to make this change before doing that work, and updating the planner tests was a true nightmare. Happy to report updating the tests after that change was quite easy! (Didn't touch the planner tests at all, which only left a few that constructed PlanningInputs outside the simulator.)

Copy link
Collaborator

@davepacheco davepacheco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. This does make me feel like it'd be worth defining an actual type for the blueprint loader to export so that if we need to make small changes like this we don't have to change a dozen places that are destructuring the tuple. That's neither urgent nor important.

Base automatically changed from john/planner-tests-use-reconfigurator-sim to main December 11, 2025 15:32
@jgallagher jgallagher force-pushed the john/blueprint-into-planning-input branch from a301b6d to 905cb46 Compare December 11, 2025 15:42
@jgallagher jgallagher merged commit 2e658cc into main Dec 11, 2025
16 checks passed
@jgallagher jgallagher deleted the john/blueprint-into-planning-input branch December 11, 2025 21:21
jgallagher added a commit that referenced this pull request Dec 12, 2025
Replaces the `(BlueprintTarget, Arc<Blueprint>)` tuple as suggested by
@davepacheco in
#9481 (review).

(Also does some minor cleanup to avoid having the `blueprint_planner`
task expose a different channel with the same type of contents as the
`blueprint_loader`, with a comment explaining the difference.)

Staged on top of #9481.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants