feat!(mip,minimald): turn down build/test/shell shorthands, move pkg cmds under subcmd - #976
Conversation
📝 WalkthroughWalkthroughThe PR groups package operations under nested ChangesPackage CLI hierarchy
Estimated code review effort: 3 (Moderate) | ~25 minutes Possibly related issues
Possibly related PRs
Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (3 passed)
✨ Finishing Touches📝 Generate docstrings
Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
🧹 Nitpick comments (1)
crates/minimald/src/env_min_helper.sh (1)
111-126: 🎯 Functional Correctness | 🔵 TrivialRun the daemon integration coverage for this dispatch change.
just test-vmcovers the VM/helper path, andjust ciis the pre-PR gate.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@crates/minimald/src/env_min_helper.sh` around lines 111 - 126, Run the daemon integration coverage for the min_package dispatch change by executing just test-vm, then run the full pre-PR gate with just ci and address any failures.Source: Coding guidelines
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@crates/mctx/src/min_helper.sh`:
- Around line 125-127: Update the unknown-subcommand branch of min_helper.sh to
advertise the actually supported patched-build subcommand instead of build. Keep
the existing error output and return behavior unchanged.
In `@crates/minimald/src/env_min_helper.sh`:
- Around line 122-124: Update the unknown-subcommand error message in the
env_min_helper.sh dispatch case to advertise both accepted subcommands, build
and patched-build, while preserving the existing rejection and return behavior.
In `@docs/reference/cli-mip.md`:
- Around line 116-117: Label both shell command fenced code blocks containing
“mip package build” and “mip package dep” with the bash language identifier,
including the additional block referenced by the review, so all new fences
satisfy MD040.
- Around line 109-112: Extend the package command reference alongside the
existing build and dep entries to document package build-plan and patched-build,
including each command’s syntax, purpose, and science-mode availability. Ensure
the documentation reflects that both commands are now invoked under mip package.
---
Nitpick comments:
In `@crates/minimald/src/env_min_helper.sh`:
- Around line 111-126: Run the daemon integration coverage for the min_package
dispatch change by executing just test-vm, then run the full pre-PR gate with
just ci and address any failures.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 28265ed6-6da6-425c-b643-b72e65a83c2e
📒 Files selected for processing (8)
crates/mctx/src/min_helper.shcrates/minimald/src/env_min_helper.shcrates/mip/src/cmd_pkg.rscrates/mip/src/cmd_pkg_build_plan.rscrates/mip/src/cmd_pkg_dep.rscrates/mip/src/cmd_pkg_patched_build.rscrates/mip/src/main.rsdocs/reference/cli-mip.md
5f13212 to
82dbc8a
Compare
…d to package subcmd
82dbc8a to
58a8793
Compare
Move activate, attach, destroy, and rename under the session noun, and stop under a new provider noun, continuing the <noun> <verb> sweep that #976 started with mip package. min ls, bare min, and the init/add/update passthroughs stay top-level as deliberate ergonomic exceptions, commented as such in the source so a later reader does not "fix" them. Every noun gains a visible singular/plural alias. Documents the convention itself in docs/reference/cli.md, so it is not re-derived from the command tree every time someone adds a command. BREAKING CHANGE: min activate, min attach, min destroy and min rename are now min session activate, min session attach, min session destroy and min session rename. min stop is now min provider stop, with min stop retained as a shortcut onto the same code path. Refs: #1005 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Move activate, attach, destroy, and rename under the session noun, continuing the <noun> <verb> sweep that #976 started with mip package. min ls, min stop, bare min, and the init/add/update passthroughs stay top-level as deliberate ergonomic exceptions, commented as such in the source so a later reader does not "fix" them. stop in particular acts on the daemon backend rather than any session. Nouns gain a visible singular/plural alias. Documents the convention itself in docs/reference/cli.md, so it is not re-derived from the command tree every time someone adds a command. BREAKING CHANGE: min activate, min attach, min destroy and min rename are now min session activate, min session attach, min session destroy and min session rename. Refs: #1005 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Move activate, attach, destroy, and rename under the session noun, continuing the <noun> <verb> sweep that #976 started with mip package. min ls, min stop, bare min, and the init/add/update passthroughs stay top-level as deliberate ergonomic exceptions, commented as such in the source so a later reader does not "fix" them. stop in particular acts on the daemon backend rather than any session. Nouns gain a visible singular/plural alias. Documents the convention itself in docs/reference/cli.md, so it is not re-derived from the command tree every time someone adds a command. BREAKING CHANGE: min activate, min attach, min destroy and min rename are now min session activate, min session attach, min session destroy and min session rename. Refs: #1005 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Move activate, attach, destroy, and rename under the session noun, continuing the <noun> <verb> sweep that #976 started with mip package. min ls, min stop, bare min, and the init/add/update passthroughs stay top-level as deliberate ergonomic exceptions, commented as such in the source so a later reader does not "fix" them. stop in particular acts on the daemon backend rather than any session. Nouns gain a visible singular/plural alias. Documents the convention itself in docs/reference/cli.md, so it is not re-derived from the command tree every time someone adds a command. BREAKING CHANGE: min activate, min attach, min destroy and min rename are now min session activate, min session attach, min session destroy and min session rename. Refs: #1005 Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
The Commands section of docs/reference/sandbox-operations.md still documented the pre-#976 helper surface. PR #976 removed the build and test shorthands and moved building under the package subcommand, but the reference was never updated to match. Drop build/test, rename patched-pkg to package patched-build, and add the real package build command, matching the in-sandbox min helper banner (crates/minimald/src/env_min_helper.sh). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…1058) The Commands section of docs/reference/sandbox-operations.md still documented the pre-#976 helper surface. PR #976 removed the build and test shorthands and moved building under the package subcommand, but the reference was never updated to match. Drop build/test, rename patched-pkg to package patched-build, and add the real package build command, matching the in-sandbox min helper banner (crates/minimald/src/env_min_helper.sh). Co-authored-by: gominimal-aw-bot[bot] <281738952+gominimal-aw-bot[bot]@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Commit 99d5ea5 (#976) turned down the mip build/test/shell shorthands, but docs/reference/cli.md and docs/guide/building.md still taught them. Drop the shorthand parenthetical from mip run in cli.md, and rewrite building.md to use mip run build / mip run test throughout, matching docs/concepts/stacks.md and cli-mip.md (whose command list carries no build/test/shell).
Commit 99d5ea5 (#976) turned down the mip build/test/shell shorthands, but docs/reference/cli.md and docs/guide/building.md still taught them. Drop the shorthand parenthetical from mip run in cli.md, and rewrite building.md to use mip run build / mip run test throughout, matching docs/concepts/stacks.md and cli-mip.md (whose command list carries no build/test/shell).
mip:mip build/test/shellshorthands for running a task of that namemip pkg/packagetomip pkg/package buildmip deptomip pkg/package depmip upload-cachetomip pkg/package upload-cachemip patched-buildtomip pkg/package patched-buildmip plantomip pkg/package build-planSession
minhelper:min buildtomin package buildmin patched-pkgtomin package patched-buildLegacy
minhelper:package builderrors as we don't have an implementation in mipNote
Move
mippackage commands undermip packagesubcommand and remove top-level build/test/shell shorthandsmipcommandsshell,build,test,plan,upload-cache,patched-build, anddep; equivalent operations are now undermip run …ormip package ….mip package(aliaspkg) with subcommands:build,dep, and hiddenbuild-plan,patched-build,upload-cache.cmd_plan.rs→cmd_pkg_build_plan.rs,PlanArgs→PkgBuildPlanArgs) to match the new subcommand structure.mctxandminimaldto replacemin build,min test, andmin patched-pkgwithmin package buildandmin package patched-build.Macroscope summarized 58a8793.
Summary by CodeRabbit
New Features
mip packagecommand with subcommands for build, build plans, dependency inspection, patched builds, and cache uploads.package,pkg, andpackagesaliases and updated command dispatch accordingly.min packagerouting, includingmin package patched-build <name>and rejecting unsupportedmin packageinvocations.Documentation
mip package ...structure and removed guidance for prior top-levelbuild,test,shell, anddepcommands.mip run buildterminology.