refactor: use config from meta_core, drop meta_cli dependency - #5
Conversation
meta_rust_cli only needed meta_cli for config parsing. Now that config lives in meta_core, the meta_cli dependency is no longer needed. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
WalkthroughReplaces the Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches🧪 Generate unit tests (beta)
No actionable comments were generated in the recent review. 🎉 Comment |
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
Cargo.toml (2)
1-6:⚠️ Potential issue | 🟠 MajorCI blocker: workspace-root inheritance fails for this manifest.
The pipeline error shows
cargo fmtfails becauseedition.workspace(and other workspace.* fields) can’t resolve without a workspace root. Ensure CI runs from the workspace root, or make this crate standalone by setting explicit values (edition/version/license/repository) or adding a workspace root manifest to the repo.
18-23:⚠️ Potential issue | 🔴 CriticalFix broken path dependency reference for
meta_core.The path dependency
meta_core = { path = "../meta_core" }(line 19) cannot be resolved—../meta_core/Cargo.tomldoes not exist. Verify the correct workspace path or convert to a published dependency ifmeta_coreis not part of this workspace.The
indexmapdependency (line 23) is justified—it is used insrc/main.rsviause indexmap::IndexMap;.
|
The outside-diff comments about workspace inheritance and path dependencies are false positives. This repo is part of a meta-repo workspace — the parent |
CI was failing because the repo uses workspace-inherited fields (version.workspace = true) but was checked out in isolation without a workspace root. Add proper workspace setup and smart branch cloning. Also update dependencies to only meta_plugin_protocol and meta_core (removed meta_cli dependency since config moved to meta_core). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In @.github/workflows/auto-format.yml:
- Around line 34-55: The "Clone dependencies" step uses inline interpolation of
github.head_ref into BRANCH which risks shell injection; change the job step to
pass the branch value via environment (export or the step's env) instead of
embedding the expression in the multiline run, and then reference the sanitized
$BRANCH inside the script; update the step that defines BRANCH in the "Clone
dependencies" run block (and any other uses in the following commands that rely
on BRANCH/Cargo.toml generation) to read the branch from the step env so branch
names with quotes are not injected into the shell.
In @.github/workflows/ci.yml:
- Around line 29-48: The workflow is vulnerable to shell injection by
interpolating github.head_ref into the run block; instead set BRANCH via the
job/step env (using the expression github.head_ref || github.ref_name) and
reference the environment variable $BRANCH inside the shell run block (used by
the git clone loop and any other uses), ensuring you do not inline the GitHub
expression inside the heredoc or commands; update the step that defines BRANCH
and the "Create workspace Cargo.toml" shell run so all uses rely on the safe
$BRANCH env variable.
- Move github.head_ref from inline shell interpolation to env: section to prevent command injection from malicious branch names - Add clone failure handling (fail fast with ::error:: annotation) - Add branch logging so CI shows which branch was used for each dep Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Summary
configfrommeta_coreinstead ofmeta_climeta_clidependency withmeta_core(no longer needsmeta_cliat all)Merge order
Merge after: gitkb/meta_core#3
Test plan
cargo build --workspacepassescargo test --workspacepasses🤖 Generated with Claude Code
Summary by CodeRabbit