Skip to content

refactor(cmd): rename Pro identifiers to Platform - #1603

Merged
skevetter merged 1 commit into
mainfrom
refactor/platform-rename-cmd-identifiers
Oct 20, 2026
Merged

skevetter merged 1 commit into
mainfrom
refactor/platform-rename-cmd-identifiers

Conversation

@skevetter

@skevetter skevetter commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Renames internal Go identifiers from Pro to Platform across cmd/, pkg/config, pkg/platform, and pkg/telemetry. 23 files; non-test changed lines: +68 / −68.

Why

Internal identifiers should name the Platform product. This is the T1 step of the rename. The pro command, env var names and values, flags, and user-facing text stay as they are.

Tier

T1: internal identifiers only. Values, flags, env var values, string literals, cobra Use/Short, JSON tags, and log/error text are unchanged.

Validation

  • mkdir -p dist && go build ./...: pass
  • GOOS=windows go vet on touched packages: pass
  • go test on ./cmd/..., ./pkg/platform/..., ./pkg/telemetry/..., ./pkg/config/...: pass
  • mise run cli:format: clean
  • mise run cli:lint:ci: 0 issues

CodeRabbit CLI

Not run. coderabbit review --agent --committed failed twice with WebSocket closed (connection error) before the review started.

Auto-merge

Eligible: yes. Non-test changed lines: 136 (68 added, 68 removed) across 20 files.

Overlap

PR #1581 also touches cmd/root.go. Its hunk is in registerSubcommands; this PR's hunks are at lines 55–78 and 435–438. The hunks don't overlap. Skipping the file would break the build, since root.go must call the renamed pro.NewPlatformCmd.

Remaining

Pattern \bpro\b|Pro(?=[A-Z0-9_]|\b)|(^|[^A-Za-z])pro(?=[A-Z])|DEVSY_PRO(_|$):

  • Touched files: 257 hits on origin/main, 175 in this tree.
  • cmd/pro/: 249 hits in this tree.
  • Deferred: collectProWorkspaceInfo in cmd/workspace/troubleshoot.go keeps its old name. Renaming it trips revive argument-limit (5 args, max 4). It needs a params struct, which is a separate change.

Intentionally kept: Use: "pro" and "pro" string args, DEVSY_PRO_* env values, config.ProductNamePro, names.SkipPro, DevsyProInstances, workspace.GetProInstance, package and directory names (pro), import aliases, providers.ProProvider, "Devsy Pro" in comments, and everything under cmd/workspace/up/**.

Summary by CodeRabbit

  • Changes
    • Updated command-line terminology from “Pro” to “Platform” across commands, providers, hosts, workspaces, and troubleshooting.
    • The feature-gated command is now presented as the platform command when enabled.
    • Default release, namespace, and container names now use the Platform naming convention.
    • Platform runner and telemetry detection use updated Platform terminology while preserving existing behavior.
    • Updated environment-gated command handling and related configuration names.

@skevetter skevetter added the rename Loft/Pro rename label Oct 19, 2026
@netlify

netlify Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for devsydev canceled.

Name Link
🔨 Latest commit 150da5c
🔍 Latest deploy log https://app.netlify.com/projects/devsydev/deploys/6ad6a4e34a3a28c0c237bd62

@coderabbitai

coderabbitai Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

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: f9332df2-5a10-474a-8af5-8c66503aac01
📥 Commits

Reviewing files that changed from the base of the PR and between 2a0a202 and 150da5c.

📒 Files selected for processing: 23
  • cmd/env_flags_test.go
  • cmd/pro/list.go
  • cmd/pro/login.go
  • cmd/pro/login_test.go
  • cmd/pro/pro.go
  • cmd/pro/proutil/proutil.go
  • cmd/pro/proutil/proutil_test.go
  • cmd/pro/provider/provider.go
  • cmd/pro/start.go
  • cmd/pro/start_docker.go
  • cmd/pro/start_flags.go
  • cmd/pro/start_uninstall.go
  • cmd/pro/workspace/create.go
  • cmd/pro/workspace/import.go
  • cmd/pro/workspace/list.go
  • cmd/pro/workspace/update.go
  • cmd/pro/workspace/watch.go
  • cmd/root.go
  • cmd/workspace/troubleshoot.go
  • pkg/config/env.go
  • pkg/config/repo.go
  • pkg/platform/client.go
  • pkg/telemetry/collect.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 command, provider, configuration, and telemetry identifiers with platform terminology. It updates command registration, provider resolution, release-name references, runner detection, and related tests. Existing environment-variable and release-name values remain unchanged where noted.

Changes: Platform terminology

Layer / File(s) Summary
Platform command registration
cmd/root.go, cmd/pro/pro.go, cmd/pro/provider/provider.go, cmd/env_flags_test.go
The command and provider constructors and feature-gate identifiers use platform terminology. Command registration and environment-gated tests use the renamed command. The DEVSY_PRO_ENABLED check remains unchanged.
Platform provider resolution
cmd/pro/proutil/*, cmd/pro/workspace/*, pkg/platform/client.go, cmd/workspace/troubleshoot.go, cmd/pro/list.go, cmd/pro/login_test.go
Provider-resolution helpers, workspace host parameters, and the troubleshooting helper use platform terminology. Related tests and JSON list construction use renamed identifiers.
Release and runner names
pkg/config/env.go, pkg/config/repo.go, cmd/pro/login.go, cmd/pro/start*.go, cmd/pro/start_uninstall.go, pkg/telemetry/collect.go
Release-name and runner environment constants use platform identifiers. CLI defaults, uninstall cleanup naming, and telemetry checks reference those identifiers. The existing environment-variable and release-name values remain unchanged.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~15 minutes

Change: Refactor

Merge Risk: ⚪ Minimal · up to 150da

The renamed identifiers preserve the described CLI behavior and configuration values. No merge-blocking issue is established.

Security architecture risk: 🔵 Low · up to 150da

Command exposure, telemetry controls and resource names are preserved. The limited architectural risk is source compatibility: integrations using the renamed exported Go identifiers may require coordinated updates.

Retained concerns
No architecture-level concerns identified.

Security review details

Security Blast Radius

  • inferred — The inspected changes preserve the effective command gate, host/provider selection and default deployment identity. They do not establish an expansion of attacker-controlled reachability or resource authority. This conclusion is limited to the compared paths, not an assurance about every existing command or deployment.

Trust Boundaries and Controls

  • observed — Runner classification is derived from the process environment using an exact true comparison. The inspected code uses it for telemetry activation and event classification; it does not establish the environment value as authenticated identity. The producer of that environment value and downstream backend handling remain unverified.

Resilience and Maintainability Implications

  • observed — The telemetry rename preserves collector creation, configuration opt-out replacement and the command lifecycle's failure recording and deferred flush ordering. It introduces no new collector-state transition. Backend concurrency and flush guarantees were not established by this review.
Pre-merge checks: Passed 3 · Failed 2

Failed Failed checks: 2 warnings

Check name Status Explanation Resolution
Description check Warning The description explains the scope, rationale, intentional exclusions, validation results, and deferred work. However, it omits the template's Type of change, AI assistance, Testing, Checklist, and No… Add the required template sections or explicitly remove sections that do not apply. Mark Refactor, disclose whether AI tools were used, document testing and manual verification, and complete the checklist items.
Docstring Coverage Warning Docstring coverage is 64.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 25 functions across 23 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 3 passed
Check name Status Explanation
Title check Passed The title clearly and concisely describes the main change: renaming Pro identifiers to Platform.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Description check

Explanation

The description explains the scope, rationale, intentional exclusions, validation results, and deferred work. However, it omits the template's Type of change, AI assistance, Testing, Checklist, and Notes sections, including explicit refactor selection, AI-use disclosure, manual verification details, and checklist status.

Resolution

Add the required template sections or explicitly remove sections that do not apply. Mark Refactor, disclose whether AI tools were used, document testing and manual verification, and complete the checklist items.

  • 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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@netlify

netlify Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for images-devsy-sh canceled.

Name Link
🔨 Latest commit 150da5c
🔍 Latest deploy log https://app.netlify.com/projects/images-devsy-sh/deploys/6ad6a4e3bbe5831875505988

@skevetter
skevetter force-pushed the refactor/platform-rename-cmd-identifiers branch from 9cf3f84 to 150da5c Compare October 19, 2026 23:16
@skevetter
skevetter marked this pull request as ready for review October 20, 2026 02:00
@skevetter

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@mergify

mergify Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

This pull request does not currently match the merge queue conditions, so it cannot be queued from here. The box comes back if it matches again.

@coderabbitai

coderabbitai Bot commented Oct 20, 2026 •

Copy link
Copy Markdown
⚠️ Action not completed

Already reviewed the last commit. Use @coderabbitai full review to rerun a review of the entire changeset.

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.

@skevetter
skevetter merged commit 67da7be into main Oct 20, 2026
111 checks passed
@skevetter
skevetter deleted the refactor/platform-rename-cmd-identifiers branch October 20, 2026 02:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

rename Loft/Pro rename size/l

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant