Skip to content

feat!: rewrite module deps from loft-sh to skevetter forks#726

Open
skevetter wants to merge 2 commits intomainfrom
module-rename
Open

feat!: rewrite module deps from loft-sh to skevetter forks#726
skevetter wants to merge 2 commits intomainfrom
module-rename

Conversation

@skevetter
Copy link
Copy Markdown
Owner

@skevetter skevetter commented Apr 13, 2026

  • Rewrite all Go imports from loft-sh/* to skevetter/* forks
  • Update go.mod deps: agentapi v1.0.1, api v1.1.0, apiserver v1.0.1, admin-apis v1.0.0
  • Fix agentapi subpath: apis/loftapis/devsy
  • Fix api subpath: pkg/devpodpkg/devsy + type references

Summary by CodeRabbit

  • Chores
    • Consolidated API dependencies across workspace, cluster, platform, tunnel, daemon, and client code so runtime types and constants resolve from a single API provider.
    • Aligned platform/options, runner/clone, and build payload types to the new API provider.
    • Updated module dependency declarations and bumped related tooling and OpenAPI/Kubernetes helper versions.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 13, 2026

📝 Walkthrough

Walkthrough

Replaces import paths from Loft modules to skevetter equivalents across the repository, swaps platform option types from devpoddevsy, and updates go.mod to depend on github.com/skevetter/*. Affects many type imports, function/struct parameter types, and clientset/informer imports.

Changes

Cohort / File(s) Summary
Management/Storage API imports
cmd/pro/add/cluster.go, cmd/pro/daemon/start.go, cmd/pro/import_workspace.go, cmd/pro/provider/create/workspace.go, cmd/pro/provider/list/clusters.go, cmd/pro/provider/list/projects.go, cmd/pro/provider/list/templates.go, cmd/pro/provider/list/workspaces.go, cmd/troubleshoot.go, pkg/platform/form/form.go, pkg/platform/instance.go, pkg/workspace/list.go
Swapped managementv1 / storagev1 imports from github.com/loft-sh/... to github.com/skevetter/..., changing the resolved types for projects, clusters, templates, and workspace instances.
Agent/Cluster API imports
cmd/pro/sleep.go, cmd/pro/wakeup.go
Repointed clusterv1 (agent API) and storagev1 constants to skevetter module paths; annotation and workspace phase constant references now resolve to skevetter packages.
Provider commands / auth / status
cmd/pro/provider/status.go, cmd/pro/provider/stop.go, cmd/pro/provider/up.go, cmd/pro/reset/password.go, cmd/pro/start.go
Replaced storagev1 and auth imports with skevetter equivalents; user, credential, and status types/constants now come from skevetter modules.
Provider watch / informers / clientset
cmd/pro/provider/watch/workspaces.go
Replaced generated clientset and informer imports to skevetter module paths so informers and typed clients use skevetter types.
Platform options: devpod → devsy
pkg/agent/tunnelserver/options.go, pkg/agent/tunnelserver/tunnelserver.go, pkg/agent/workspace.go, pkg/client/client.go, pkg/devcontainer/buildkit/remote.go, pkg/devcontainer/setup/setup.go, pkg/daemon/agent/daemon.go, pkg/platform/kubeconfig.go, pkg/provider/workspace.go, pkg/tunnel/services.go
Replaced devpod.PlatformOptions / PlatformBuildOptions with devsy.PlatformOptions and updated imports to github.com/skevetter/api/pkg/devsy; adjusted struct fields and function parameter types accordingly.
Client implementations (daemon / proxy / up)
pkg/client/clientimplementation/daemonclient/client.go, pkg/client/clientimplementation/daemonclient/form.go, pkg/client/clientimplementation/daemonclient/stop.go, pkg/client/clientimplementation/daemonclient/up.go, pkg/client/clientimplementation/proxy_client.go
Updated management/storage imports to skevetter equivalents; changed functions/params that decode or reference PlatformOptions to use devsy.PlatformOptions.
Platform / daemon service imports
pkg/client/clientimplementation/services.go, pkg/daemon/platform/client.go, pkg/daemon/platform/local_server.go, pkg/daemon/platform/workspace_watcher.go, pkg/platform/client/client.go, pkg/platform/owner.go, pkg/platform/parameters/parameters.go, pkg/platform/user.go, pkg/platform/kube/kube.go
Migrated management/storage and generated client imports to github.com/skevetter/..., affecting typed client returns, informers, and helper functions.
go.mod dependency updates
go.mod
Removed Loft module requirements and added/replaced them with skevetter module versions; bumped several indirect OpenAPI/Kubernetes dependencies.
Misc single-file import adjustments
cmd/pro/wakeup.go, cmd/pro/sleep.go, and other one-file edits listed in summary
Various one-file import replacements so constants/types reference skevetter packages; no functional control-flow changes.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Suggested labels

size/xl

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 7.14% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title clearly and concisely summarizes the main change: rewriting module dependencies from loft-sh to skevetter forks, which is the primary objective of this changeset.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch module-rename

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 and usage tips.

- go.mod: loft-sh/agentapi/v4 → skevetter/agentapi v1.0.1
- go.mod: loft-sh/api/v4 → skevetter/api v1.1.0
- go.mod: loft-sh/apiserver → skevetter/apiserver v1.0.1
- go.mod: loft-sh/admin-apis → skevetter/admin-apis v1.0.0
- All Go imports rewritten to skevetter/* paths
- agentapi: apis/loft → apis/devsy subpath
- api: pkg/devpod → pkg/devsy subpath + type refs

BREAKING CHANGE: All loft-sh module references replaced with skevetter forks.
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@go.mod`:
- Line 203: go.mod currently contains both github.com/loft-sh/admin-apis and
github.com/skevetter/admin-apis as indirect requirements (mirrored by similar
duplicates for agentapi/apiserver); remove the stale/old module entry
(github.com/loft-sh/admin-apis) and ensure all references and replace directives
point to the intended module (github.com/skevetter/admin-apis), then run go mod
tidy to prune unused indirect deps and verify the dependency graph no longer
contains the duplicate; check and update any replace directives or transitive
module requirements that reference agentapi/apiserver duplicates as part of the
same cleanup.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 014b05cf-0695-49f9-85ff-45a062e6abef

📥 Commits

Reviewing files that changed from the base of the PR and between 80d9d7b and 6715b77.

⛔ Files ignored due to path filters (1)
  • go.sum is excluded by !**/*.sum
📒 Files selected for processing (46)
  • cmd/pro/add/cluster.go
  • cmd/pro/daemon/start.go
  • cmd/pro/import_workspace.go
  • cmd/pro/provider/create/workspace.go
  • cmd/pro/provider/list/clusters.go
  • cmd/pro/provider/list/projects.go
  • cmd/pro/provider/list/templates.go
  • cmd/pro/provider/list/workspaces.go
  • cmd/pro/provider/status.go
  • cmd/pro/provider/stop.go
  • cmd/pro/provider/up.go
  • cmd/pro/provider/update/workspace.go
  • cmd/pro/provider/watch/workspaces.go
  • cmd/pro/reset/password.go
  • cmd/pro/sleep.go
  • cmd/pro/start.go
  • cmd/pro/wakeup.go
  • cmd/troubleshoot.go
  • go.mod
  • pkg/agent/tunnelserver/options.go
  • pkg/agent/tunnelserver/tunnelserver.go
  • pkg/agent/workspace.go
  • pkg/client/client.go
  • pkg/client/clientimplementation/daemonclient/client.go
  • pkg/client/clientimplementation/daemonclient/form.go
  • pkg/client/clientimplementation/daemonclient/stop.go
  • pkg/client/clientimplementation/daemonclient/up.go
  • pkg/client/clientimplementation/proxy_client.go
  • pkg/client/clientimplementation/services.go
  • pkg/daemon/agent/daemon.go
  • pkg/daemon/platform/client.go
  • pkg/daemon/platform/local_server.go
  • pkg/daemon/platform/workspace_watcher.go
  • pkg/devcontainer/buildkit/remote.go
  • pkg/devcontainer/setup/setup.go
  • pkg/platform/client/client.go
  • pkg/platform/form/form.go
  • pkg/platform/instance.go
  • pkg/platform/kube/kube.go
  • pkg/platform/kubeconfig.go
  • pkg/platform/owner.go
  • pkg/platform/parameters/parameters.go
  • pkg/platform/user.go
  • pkg/provider/workspace.go
  • pkg/tunnel/services.go
  • pkg/workspace/list.go
✅ Files skipped from review due to trivial changes (20)
  • cmd/pro/import_workspace.go
  • cmd/pro/provider/stop.go
  • pkg/platform/owner.go
  • cmd/pro/provider/create/workspace.go
  • pkg/client/clientimplementation/daemonclient/stop.go
  • cmd/pro/provider/watch/workspaces.go
  • pkg/client/clientimplementation/daemonclient/client.go
  • pkg/client/clientimplementation/daemonclient/form.go
  • pkg/platform/user.go
  • pkg/workspace/list.go
  • pkg/platform/client/client.go
  • pkg/agent/workspace.go
  • cmd/pro/provider/up.go
  • pkg/provider/workspace.go
  • cmd/pro/wakeup.go
  • cmd/pro/start.go
  • pkg/platform/kube/kube.go
  • pkg/platform/form/form.go
  • cmd/pro/reset/password.go
  • pkg/devcontainer/setup/setup.go
🚧 Files skipped from review as they are similar to previous changes (19)
  • cmd/pro/provider/status.go
  • cmd/pro/add/cluster.go
  • cmd/pro/provider/list/workspaces.go
  • cmd/troubleshoot.go
  • pkg/daemon/platform/workspace_watcher.go
  • pkg/agent/tunnelserver/options.go
  • pkg/tunnel/services.go
  • pkg/client/client.go
  • pkg/daemon/platform/local_server.go
  • pkg/daemon/platform/client.go
  • cmd/pro/provider/list/templates.go
  • pkg/platform/parameters/parameters.go
  • cmd/pro/provider/update/workspace.go
  • pkg/daemon/agent/daemon.go
  • pkg/client/clientimplementation/proxy_client.go
  • cmd/pro/sleep.go
  • cmd/pro/provider/list/projects.go
  • pkg/client/clientimplementation/daemonclient/up.go
  • pkg/agent/tunnelserver/tunnelserver.go

Bumps api to v1.0.1, agentapi to v1.0.0, apiserver to v1.0.2.
All loft-sh indirect dependencies are now eliminated.
@skevetter skevetter marked this pull request as draft April 13, 2026 03:45
@coderabbitai coderabbitai bot added the size/xl label Apr 13, 2026
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@go.mod`:
- Around line 42-44: Update the PR description to reflect the actual module
versions found in go.mod: change the listed versions for
github.com/skevetter/agentapi to v1.0.0, github.com/skevetter/api to v1.0.1, and
github.com/skevetter/apiserver to v1.0.2 (or explicitly explain why the
description shows different versions), ensuring the PR text matches the versions
of the modules named agentapi, api, and apiserver.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: ac506a2c-cf5a-4828-b4dc-08c76fcc6af8

📥 Commits

Reviewing files that changed from the base of the PR and between 6715b77 and e60ec02.

⛔ Files ignored due to path filters (1)
  • go.sum is excluded by !**/*.sum
📒 Files selected for processing (1)
  • go.mod

Comment on lines +42 to +44
github.com/skevetter/agentapi v1.0.0
github.com/skevetter/api v1.0.1
github.com/skevetter/apiserver v1.0.2
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Description: Verify the skevetter module versions exist

# Check agentapi v1.0.0
echo "Checking github.com/skevetter/agentapi@v1.0.0..."
curl -s "https://proxy.golang.org/github.com/skevetter/agentapi/@v/v1.0.0.info" | jq -r '.Version // "NOT FOUND"'

# Check api v1.0.1
echo "Checking github.com/skevetter/api@v1.0.1..."
curl -s "https://proxy.golang.org/github.com/skevetter/api/@v/v1.0.1.info" | jq -r '.Version // "NOT FOUND"'

# Check apiserver v1.0.2
echo "Checking github.com/skevetter/apiserver@v1.0.2..."
curl -s "https://proxy.golang.org/github.com/skevetter/apiserver/@v/v1.0.2.info" | jq -r '.Version // "NOT FOUND"'

# Check admin-apis v1.0.0
echo "Checking github.com/skevetter/admin-apis@v1.0.0..."
curl -s "https://proxy.golang.org/github.com/skevetter/admin-apis/@v/v1.0.0.info" | jq -r '.Version // "NOT FOUND"'

Repository: skevetter/devpod

Length of output: 281


Update PR description to match actual dependency versions.

Verified that all module versions in the code exist and are valid. However, the PR description states different versions than what's actually specified:

  • agentapi: PR says v1.0.1, code has v1.0.0
  • api: PR says v1.1.0, code has v1.0.1
  • apiserver: PR says v1.0.1, code has v1.0.2

Update the PR description to reflect the correct versions, or clarify why the versions differ from what was documented.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@go.mod` around lines 42 - 44, Update the PR description to reflect the actual
module versions found in go.mod: change the listed versions for
github.com/skevetter/agentapi to v1.0.0, github.com/skevetter/api to v1.0.1, and
github.com/skevetter/apiserver to v1.0.2 (or explicitly explain why the
description shows different versions), ensuring the PR text matches the versions
of the modules named agentapi, api, and apiserver.

@skevetter skevetter marked this pull request as ready for review April 13, 2026 04:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant