home / skills / jeremylongshore / claude-code-plugins-plus-skills / vastai-upgrade-migration
/plugins/saas-packs/vastai-pack/skills/vastai-upgrade-migration
This skill analyzes and guides upgrading Vast.ai SDK versions, detects breaking changes, and streamlines migration across import, config, and tests.
npx playbooks add skill jeremylongshore/claude-code-plugins-plus-skills --skill vastai-upgrade-migrationReview the files below or copy the command above to add this skill to your agents.
---
name: vastai-upgrade-migration
description: |
Analyze, plan, and execute Vast.ai SDK upgrades with breaking change detection.
Use when upgrading Vast.ai SDK versions, detecting deprecations,
or migrating to new API versions.
Trigger with phrases like "upgrade vastai", "vastai migration",
"vastai breaking changes", "update vastai SDK", "analyze vastai version".
allowed-tools: Read, Write, Edit, Bash(npm:*), Bash(git:*)
version: 1.0.0
license: MIT
author: Jeremy Longshore <[email protected]>
---
# Vast.ai Upgrade & Migration
## Overview
Guide for upgrading Vast.ai SDK versions and handling breaking changes.
## Prerequisites
- Current Vast.ai SDK installed
- Git for version control
- Test suite available
- Staging environment
## Instructions
### Step 1: Check Current Version
```bash
npm list @vastai/sdk
npm view @vastai/sdk version
```
### Step 2: Review Changelog
```bash
open https://github.com/vastai/sdk/releases
```
### Step 3: Create Upgrade Branch
```bash
git checkout -b upgrade/vastai-sdk-vX.Y.Z
npm install @vastai/sdk@latest
npm test
```
### Step 4: Handle Breaking Changes
Update import statements, configuration, and method signatures as needed.
## Output
- Updated SDK version
- Fixed breaking changes
- Passing test suite
- Documented rollback procedure
## Error Handling
| SDK Version | API Version | Node.js | Breaking Changes |
|-------------|-------------|---------|------------------|
| 3.x | 2024-01 | 18+ | Major refactor |
| 2.x | 2023-06 | 16+ | Auth changes |
| 1.x | 2022-01 | 14+ | Initial release |
## Examples
### Import Changes
```typescript
// Before (v1.x)
import { Client } from '@vastai/sdk';
// After (v2.x)
import { Vast.aiClient } from '@vastai/sdk';
```
### Configuration Changes
```typescript
// Before (v1.x)
const client = new Client({ key: 'xxx' });
// After (v2.x)
const client = new Vast.aiClient({
apiKey: 'xxx',
});
```
### Rollback Procedure
```bash
npm install @vastai/[email protected] --save-exact
```
### Deprecation Handling
```typescript
// Monitor for deprecation warnings in development
if (process.env.NODE_ENV === 'development') {
process.on('warning', (warning) => {
if (warning.name === 'DeprecationWarning') {
console.warn('[Vast.ai]', warning.message);
// Log to tracking system for proactive updates
}
});
}
// Common deprecation patterns to watch for:
// - Renamed methods: client.oldMethod() -> client.newMethod()
// - Changed parameters: { key: 'x' } -> { apiKey: 'x' }
// - Removed features: Check release notes before upgrading
```
## Resources
- [Vast.ai Changelog](https://github.com/vastai/sdk/releases)
- [Vast.ai Migration Guide](https://docs.vastai.com/migration)
## Next Steps
For CI integration during upgrades, see `vastai-ci-integration`.This skill analyzes, plans, and executes Vast.ai SDK upgrades while detecting breaking changes and deprecations. It guides you through version checks, changelog review, branch-based upgrades, code adjustments, testing, and rollback preparation. Use it to reduce upgrade risk and keep integrations working across API versions.
The skill inspects the current installed SDK version, compares it with target releases, and highlights known breaking changes and required code edits (imports, config keys, method signatures). It generates a stepwise upgrade plan: create a feature branch, install the new SDK, run tests, apply code fixes, and document rollback steps. It also recommends monitoring deprecation warnings in development and CI.
What if tests fail after upgrading the SDK?
Create a focused branch with failing tests, inspect breaking-change notes for renamed methods or changed parameters, apply minimal code changes, and rerun tests. If needed, roll back to the previous exact version and document the issue.
How do I detect deprecations proactively?
Enable node warning handlers in development to capture DeprecationWarning, add logging to your tracking system, and include dependency changelog checks in the upgrade checklist.