Repository navigation
feat(provider): deprecate built-in MicroSandbox and update CLI alias - #1497
Conversation
✅ Deploy Preview for devsydev ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Merge Risk: ⚪ Minimal · up to
|
✅ Deploy Preview for images-devsy-sh canceled.
|
|
@greptileai review Please review the complete current PR at head |
[Medium impact] The PR appears safe to merge; no actionable issues remain from this review. SummaryFresh
Reviews (2) · Last reviewed commit: "fix(provider): resolve templated drivers..." · Reviewed by Greptile |
|
@greptileai review Please review the complete current PR at final head ef8253f, all 21 changed files, including the fresh-add alias boundary, preserved legacy reload identity, saved-option driver classification without command execution or state mutation, Desktop metadata, and truthful built-in/external native fixtures. All current implementation/external checks and actual native80/Desktop gates passed. The earlier templated-driver finding is fixed and its thread resolved. |
|
@coderabbitai full review Please perform a full review of final head ef8253f while this PR remains draft, covering all 21 changed files, with explicit current security/architecture and merge-risk analysis as well as inline findings. This first deprecation stage routes only fresh CLI installs to the published external pin, retains an explicit builtin:microsandbox selector and existing internal-record behavior, and labels the selected built-in driver in CLI/Desktop. Driver templates use saved provider options without executing commands or mutating state. Existing defaults/options/workspaces and the real built-in compatibility/native fixtures remain intact. Migration tooling, a compatibility flag and runtime removal are outside this PR. |
✅ Action performedFull review finished. |
|
Final review disposition for ef8253f: Greptile completed at 5/5, and the completed full CodeRabbit run reviewed all 21 files with no actionable comments, Minimal merge risk and Low security architecture risk. I inspected the entire retained risk assessment and all inlines/threads. The interrupted-install note describes the unchanged generic installer: returned binary-download errors remove the candidate directory; an uncatchable hard interruption can leave a directory before provider.json is saved. This PR changes source selection, not that installer/cleanup ordering. A candidate is registered only after installation succeeds, and the default changes only after successful configuration. Existing deletion code can remove such a directory without a saved provider manifest. This remains an inherited recovery limit, not a new rollback guarantee. The stronger release-provenance proposal is separate hardening; checksums bind executable bytes to the selected trusted manifest, and this stage preserves the documented external-provider trust boundary. The docstring-coverage item is a non-blocking review warning, not an inline defect or failed repository check. No code change is warranted to add comments that restate these named functions and tests. All required lint, documentation, CI and native gates passed; no threshold or setting was changed. The valid templated-driver finding was fixed with a regression and its thread is resolved. |
Fresh
devsy provider add microsandboxinstalls the published external provider pinned togithub.com/devsy-org/devsy-provider-microsandbox@v0.1.8. The deliberate compatibility sourcebuiltin:microsandboxselects the existing embedded implementation and retains its canonical internal identity. Source-omitted reloads and saved internal records keep their current behavior.Installed providers using the built-in MicroSandbox driver now expose deprecation metadata in CLI JSON, a separate lifecycle column in CLI output, and a badge and notice in Desktop. Classification resolves driver templates using saved provider options without running option commands, including custom provider definitions; an external provider named
microsandboxis not deprecated. Names, defaults, initialization state, options and existing workspaces remain unchanged.The shared native fixtures explicitly select the real built-in implementation. The external lifecycle case installs through the fresh CLI alias and asserts the installed source and driver before exercising the existing lifecycle and performance checks. The catalogue remains sixteen suites and eighty cases. Documentation explains the compatibility selector and explicit source migration. Migration tooling, a compatibility flag and physical runtime removal remain subsequent stages.
Validation: affected Go races, Linux vet, Linux amd64/arm64 E2E compilation, Windows test compilation, module verification, strict Linux lint (zero issues), documentation build/link checking and all applicable scoped hooks passed. Desktop type checking reported zero errors or warnings and all 909 unit tests passed. Exact-head CI passed all 88 implementation jobs and seven Desktop jobs, including 62 Playwright tests on each platform, packaging, tray and Flatpak. All sixteen actual MicroSandbox suites passed all eighty selected cases (37 built-in, 43 external), including the fresh CLI alias lifecycle and running/stopped migration. Windows dynamically discovered provider tests passed all 42 roots/84 test IDs and both helper unit packages. The current performance artifact records 808 reaped warm/first process observations; no cold-cache or all-host runtime claim is made. Full primary and Luna source audits found no additional defect. The temporary waiver of unavailable local CodeRabbit service-start gating remains in effect; no local CodeRabbit coverage is claimed. Fresh final-head Greptile completed at 5/5 and full CodeRabbit covered all 21 files with no actionable comments, Minimal merge risk and Low security architecture risk. All actionable threads are resolved and both commits have valid GitHub signatures. The retained recovery/provenance observations and docstring-coverage warning received a source-backed no-change disposition.