Repository navigation
Conversation
This was referenced Nov 7, 2026
fspy benchmarklinuxmacoswindows |
wan9chi
force-pushed
the
claude/dry-run-09-nested-plans
branch
from
November 7, 2026 11:50
7f725dd to
c78783a
Compare
wan9chi
force-pushed
the
claude/dry-run-09-nested-plans
branch
from
November 7, 2026 12:00
c78783a to
480cb60
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 480cb60. Configure here.
wan9chi
force-pushed
the
claude/dry-run-09-nested-plans
branch
from
November 7, 2026 14:54
480cb60 to
7209175
Compare
wan9chi
force-pushed
the
claude/dry-run-09-nested-plans
branch
from
November 7, 2026 15:07
7209175 to
e96fb3d
Compare
wan9chi
force-pushed
the
claude/dry-run-09-nested-plans
branch
from
November 7, 2026 17:19
e96fb3d to
968b86f
Compare
wan9chi
force-pushed
the
claude/dry-run-09-nested-plans
branch
from
November 7, 2026 18:04
968b86f to
e76f876
Compare
Since `vp run --dry-run --json` was added, it failed for a task whose command runs `vp run …`. The RFC shows such a step as `expandedFrom` with its own `plan`, so the run plan is a tree, and each nested plan has its own dependencies. - The layout recurses into nested graphs. Each plan's `dependsOn` is scoped to its own tasks, so the same task ID can appear at several levels. - `expandedFrom` is the item's command as written, with the args given after the task name. - A leaf's step is found by its path through the nested plans. - The error for tasks that run `vp run` goes away. A nested `vp run --dry-run` is still a spawned step, which a dry run doesn't start. The e2e fixture `run_plan_json_nested` covers plans at several levels, args forwarded to a nested run, and a nested dry run. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
wan9chi
force-pushed
the
claude/dry-run-09-nested-plans
branch
from
November 7, 2026 18:38
e76f876 to
1d46e32
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Motivation
Since #966,
vp run --dry-run --jsonfails for a task whose command runsvp run …. The dry-run RFC shows such a step asexpandedFromwith its ownplan, so the run plan is a tree, and each nested plan has its own dependencies.Changes
dependsOnis scoped to its own tasks, so the same task ID can appear at several levels.expandedFromis the item's command as written, with any args given after the task name.vp rungoes away.A nested
vp run --dry-runis still a spawned step, which a dry run doesn't start. The e2e fixturerun_plan_json_nestedcovers plans at several levels, args forwarded to a nested run, and a nested dry run.🤖 Generated with Claude Code
Note
Medium Risk
Changes the
--dry-run --jsonoutput shape and planning/reporter behavior for nested runs; consumers of that JSON and anyone relying on the previous hard error should validate against the new nested step format.Overview
vp run --dry-run --jsonno longer errors when a task invokes nestedvp run …commands. Those steps are emitted as nested plan nodes (expandedFromplus an embeddedplan) instead of aborting.The JSON reporter builds a tree of plans: it walks expanded execution graphs, scopes each plan's
dependsOnto that plan only (so the same task ID can appear at multiple depths), and maps leaf cache results into command steps via a path through nested plans. The run-plan schema and Rust document types split steps into command vs nested variants; the changelog reflects the new behavior.E2E coverage adds multi-level nested plans, argument forwarding into nested runs, and the case where a nested
vp run --dry-runstays a plain spawned step (not inlined).Reviewed by Cursor Bugbot for commit 1d46e32. Bugbot is set up for automated code reviews on this repo. Configure here.