You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
refactor(workspace): rename pro to platform in pkg/workspace - #1580
Renames Pro-named identifiers, locals, comments, and internal log/error text in pkg/workspace to Platform terms. pro.go becomes platform.go. Exported renames: ListProInstances → ListPlatformInstances, FindProviderProInstance → FindProviderPlatformInstance. Callers in cmd/ updated to the new identifier only.
Why
Part of the Loft/Pro → Devsy/Platform rename tracker. Behaviour-preserving.
Validation
go build ./...
GOOS=windows go vet ./pkg/workspace/... ./cmd/...
mise run cli:format
mise run cli:lint:ci (0 issues)
go test ./pkg/workspace/... ./cmd/provider/... ./cmd/pro/... ./cmd/workspace/... (pass)
CodeRabbit CLI
coderabbit review --agent --committed returned rate_limit (free OSS quota exhausted, wait ~4m39s). No review result yet.
Tier
T1. Exported API changed (two functions) with all callers updated in the same commit.
listProWorkspacesForProvider kept: 5-arg signature violates revive argument-limit (max 4). Origin already has this signature. Renaming the changed declaration line trips diff-only lint. Needs a params-struct refactor in a separate change.
IsPro(), Workspace.Pro, ProMetadata, and provider2.ProInstance belong to the pkg/provider slice.
rename.go: error text changed from "cannot rename pro workspaces; ..." to "cannot rename platform workspaces; they are managed by the platform". The old text was tautological.
User-visible CLI strings unchanged.
Next
Re-run CodeRabbit once the rate limit resets. Then mark ready for review.
Summary by CodeRabbit
Updates
Workspace listings, host suggestions, login, and troubleshooting now use a consistent platform-wide view of instances.
Provider deletion and renaming checks account for all platform instances, preserving safeguards when a provider is in use.
Platform-related messages and workspace selection terminology are now more consistent.
No actionable comments were generated in the recent review. 🎉
ℹ️ Recent review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Advanced
Run ID: 85cfd283-bb7e-4dcf-8a0d-941b67f15dc9
📥 Commits
Reviewing files that changed from the base of the PR and between 2b30bfa and 93a2933.
📒 Files selected for processing: 13
cmd/pro/cluster/add.go
cmd/pro/completion/suggestions.go
cmd/pro/list.go
cmd/pro/login.go
cmd/provider/delete.go
cmd/provider/rename.go
cmd/workspace/troubleshoot.go
pkg/workspace/list.go
pkg/workspace/platform.go
pkg/workspace/provider.go
pkg/workspace/provider_update.go
pkg/workspace/rename.go
pkg/workspace/workspace.go
Included review availability: This review used your included allowance. Your plan provides up to 2 included reviews per hour; 1 remain after this review.
📝 Walkthrough
The change replaces Pro-specific workspace and instance terminology with platform terminology across workspace helpers and command call sites. Existing listing, selection, provider-check, and update behavior is retained.
Changes: Platform terminology migration
Layer / File(s)
Summary
Platform instance and workspace listing pkg/workspace/platform.go, pkg/workspace/list.go
Instance listing, workspace reconciliation, conversion, and related helpers use platform terminology. Existing filtering, merging, and cleanup behavior remains.
Platform workspace resolution and import pkg/workspace/workspace.go
Workspace resolution, selection, and import helpers use platform terminology. The existing IsPro() selection condition and import flow remain.
Platform provider lookup and updates pkg/workspace/provider.go, pkg/workspace/provider_update.go, pkg/workspace/rename.go
Provider lookup and update helpers use platform terminology. Existing provider matching and update behavior remain. The workspace rename rejection message now refers to platform workspaces.
The terminology migration appears mergeable after normal checks; no concrete behavior regression is established.
Security architecture risk:⚪ Minimal · up to 93a29
No material security risk was found introduced by this rename. Provider restrictions, ownership filtering and state-transition guards remain unchanged. Source consumers of the two old exported function names must update.
Retained concerns
No architecture-level concerns identified.
Security review details
Security Blast Radius
inferred — The reviewed entrypoint changes do not expand attacker-controlled reachability: supplied context, provider and host values continue through the same instance loaders and provider matching. No additional authority or instance scope is introduced by renaming the called functions.
Trust Boundaries and Controls
observed — Provider deletion still checks instance and workspace usage unless explicitly forced. Provider rename still rejects platform-managed provider types and instance associations. Workspace rename still rejects platform-managed workspaces before mutation. These restrictions are preserved, not newly introduced controls.
Resilience and Maintainability Implications
observed — Listing reconciliation retains provider-keyed results, owner propagation, mutex-protected collection and completion waiting before cleanup. Missing or failed provider results retain local workspaces; successful results use the existing imported-workspace and UID-counterpart checks. Cancellation propagation and failure outcomes are unchanged by this PR.
Pre-merge checks: 4 · 1
Failed checks: 1 warning
Check name
Status
Explanation
Resolution
Docstring Coverage
Docstring coverage is 20.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 40 functions across 13 files.
Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed checks: 4 passed
Check name
Status
Explanation
Title check
The title clearly identifies the refactor from Pro to Platform terminology in the workspace package. It is concise and follows Conventional Commits format.
Description check
The description explains the scope, motivation, behavior-preserving intent, validation commands, out-of-scope items, and review status. It does not use every template section, such as the explicit cha…
Linked Issues check
Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check
Check skipped because no linked issues were found for this pull request.
Full details: Description check
Explanation
The description explains the scope, motivation, behavior-preserving intent, validation commands, out-of-scope items, and review status. It does not use every template section, such as the explicit change-type, AI-assistance, checklist, and manual-verification sections, but it is sufficiently complete for review.
Fix all pre-merge checks with AI
✨ Finishing Touches
✨ Simplify code
Commit to this branch
Create a new PR
Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
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.
Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.
Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.
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
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.
Summary
Renames Pro-named identifiers, locals, comments, and internal log/error text in
pkg/workspaceto Platform terms.pro.gobecomesplatform.go. Exported renames:ListProInstances→ListPlatformInstances,FindProviderProInstance→FindProviderPlatformInstance. Callers incmd/updated to the new identifier only.Why
Part of the Loft/Pro → Devsy/Platform rename tracker. Behaviour-preserving.
Validation
go build ./...GOOS=windows go vet ./pkg/workspace/... ./cmd/...mise run cli:formatmise run cli:lint:ci(0 issues)go test ./pkg/workspace/... ./cmd/provider/... ./cmd/pro/... ./cmd/workspace/...(pass)CodeRabbit CLI
coderabbit review --agent --committedreturnedrate_limit(free OSS quota exhausted, wait ~4m39s). No review result yet.Tier
T1. Exported API changed (two functions) with all callers updated in the same commit.
Auto-merge
Eligible: yes. 228 changed non-test lines (119 added, 109 deleted), 13 files.
Remaining
Protokens inpkg/workspace: 114 → 21 (PCRE count).GetProInstancekept: open PR feat(wslg): discover display values for Windows Docker workspaces #1503 ownscmd/workspace/up/up_client.go.listProWorkspacesForProviderkept: 5-arg signature violatesreviveargument-limit (max 4). Origin already has this signature. Renaming the changed declaration line trips diff-only lint. Needs a params-struct refactor in a separate change.IsPro(),Workspace.Pro,ProMetadata, andprovider2.ProInstancebelong to the pkg/provider slice.rename.go: error text changed from "cannot rename pro workspaces; ..." to "cannot rename platform workspaces; they are managed by the platform". The old text was tautological.Next
Re-run CodeRabbit once the rate limit resets. Then mark ready for review.
Summary by CodeRabbit