Preserve handwritten Git API during generation cleanup - #4042
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (5)
Included review availability: Your plan provides up to 4 included reviews per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe CLI catalog now records whether each tool generates a command facade. The workflow passes this value to Linux and Windows cleanup steps. Cleanup deletes service files only for tools with command-facade generation enabled. ChangesCommand Facade Cleanup
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This change preserves the handwritten Git API during generation cleanup and keeps the related generation paths aligned; no actionable merge-blocking risk remains beyond normal checks and review. Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Greptile SummaryThe PR carries command-facade ownership from each scraper into the generation matrix so cleanup preserves Git’s handwritten API while retaining existing cleanup for generator-owned facades.
Confidence Score: 5/5The PR appears safe to merge. No blocking failure remains.
|
| Filename | Overview |
|---|---|
| .github/workflows/generate-cli-options.yml | Propagates the facade-ownership flag into both matrices and gates Linux and Windows legacy-service cleanup consistently. |
| tools/ModularPipelines.OptionsGenerator/src/ModularPipelines.OptionsGenerator/Scrapers/Cli/ICliScraper.cs | Adds a default metadata contract indicating that generators own command facades unless a scraper opts out. |
| tools/ModularPipelines.OptionsGenerator/src/ModularPipelines.OptionsGenerator/Scrapers/Cli/GitCliScraper.cs | Marks Git’s facade as handwritten and reuses that value when constructing its tool definition. |
| tools/ModularPipelines.OptionsGenerator/src/ModularPipelines.OptionsGenerator/ToolCatalog.cs | Carries command-facade ownership into JSON and human-readable catalog output consumed by automation. |
| tools/ModularPipelines.OptionsGenerator/src/ModularPipelines.OptionsGenerator.Tests/ToolCatalogTests.cs | Verifies Git’s opt-out, other scrapers’ defaults, and JSON serialization of the new field. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart LR
A[ICliScraper metadata] --> B[Tool catalog JSON]
B --> C[GitHub Actions matrix]
C --> D{Generate command facade?}
D -->|Yes| E[Remove generator-owned facade files]
D -->|No: Git| F[Preserve handwritten IGit and Git APIs]
E --> G[Generate and validate package]
F --> G
Reviews (2): Last reviewed commit: "fix(generator): drive cleanup from catal..." | Re-trigger Greptile
Code reviewReviewed the diff (workflow YAML + What I checked:
Design note (not a blocker): this reuses the same Nice fix — small, targeted, and it removes special-casing rather than adding more of it. |
Summary
Validation
Part of #3996
Summary by CodeRabbit
Bug Fixes
Documentation