Skip to main content

Rollback Procedures

Establishes reliable rollback procedures for quick recovery from deployment failures, ensuring service availability and stability.

Install this skill

or
0/100

Security score

The Rollback Procedures skill was audited on Mar 1, 2026 and we found 73 security issues across 4 threat categories, including 3 high-severity. Review the findings below before installing.

Categories Tested

Security Issues

high line 214

Direct command execution function call

SourceSKILL.md
214const output = execSync(platformConfig.listCommand, { encoding: 'utf8' });
high line 402

Direct command execution function call

SourceSKILL.md
402execSync(command, { stdio: 'inherit' });
high line 421

Direct command execution function call

SourceSKILL.md
421execSync(command, { stdio: 'inherit' });
medium line 186

Template literal with variable interpolation in command context

SourceSKILL.md
186console.log(`${colors[color]}${message}${colors.reset}`);
medium line 228

Template literal with variable interpolation in command context

SourceSKILL.md
228colorLog(`✅ Found ${deployments.length} deployments`, 'green');
medium line 285

Template literal with variable interpolation in command context

SourceSKILL.md
285colorLog(`🏥 Checking health of deployment: ${deployment.url}`, 'blue');
medium line 292

Template literal with variable interpolation in command context

SourceSKILL.md
292const url = `${deployment.url}${endpoint}`;
medium line 309

Template literal with variable interpolation in command context

SourceSKILL.md
309colorLog(`❌ Health check failed: ${endpoint} (${response.status})`, 'red');
medium line 311

Template literal with variable interpolation in command context

SourceSKILL.md
311colorLog(`✅ Health check passed: ${endpoint} (${responseTime}ms)`, 'green');
medium line 319

Template literal with variable interpolation in command context

SourceSKILL.md
319colorLog(`❌ Health check error: ${endpoint} - ${error.message}`, 'red');
medium line 334

Template literal with variable interpolation in command context

SourceSKILL.md
334colorLog(`📊 Getting metrics for deployment: ${deployment.url}`, 'blue');
medium line 347

Template literal with variable interpolation in command context

SourceSKILL.md
347colorLog(` Error Rate: ${(metrics.error_rate * 100).toFixed(2)}%`, 'cyan');
medium line 348

Template literal with variable interpolation in command context

SourceSKILL.md
348colorLog(` Response Time: ${metrics.response_time.toFixed(0)}ms`, 'cyan');
medium line 349

Template literal with variable interpolation in command context

SourceSKILL.md
349colorLog(` Throughput: ${metrics.throughput.toFixed(0)} req/s`, 'cyan');
medium line 376

Template literal with variable interpolation in command context

SourceSKILL.md
376colorLog(`🔄 Executing rollback to: ${targetDeployment.url}`, 'magenta');
medium line 377

Template literal with variable interpolation in command context

SourceSKILL.md
377colorLog(`Strategy: ${strategy}`, 'cyan');
medium line 388

Template literal with variable interpolation in command context

SourceSKILL.md
388throw new Error(`Unsupported platform: ${this.platform}`);
medium line 391

Template literal with variable interpolation in command context

SourceSKILL.md
391colorLog(`❌ Rollback failed: ${error.message}`, 'red');
medium line 400

Template literal with variable interpolation in command context

SourceSKILL.md
400const command = `${platformConfig.promoteCommand} ${targetDeployment.id}`;
medium line 401

Template literal with variable interpolation in command context

SourceSKILL.md
401colorLog(`🚀 Running: ${command}`, 'blue');
medium line 412

Template literal with variable interpolation in command context

SourceSKILL.md
412throw new Error(`Vercel rollback failed: ${error.message}`);
medium line 419

Template literal with variable interpolation in command context

SourceSKILL.md
419const command = `${platformConfig.rollbackCommand} ${targetDeployment.id}`;
medium line 420

Template literal with variable interpolation in command context

SourceSKILL.md
420colorLog(`🚀 Running: ${command}`, 'blue');
medium line 430

Template literal with variable interpolation in command context

SourceSKILL.md
430throw new Error(`Netlify rollback failed: ${error.message}`);
medium line 435

Template literal with variable interpolation in command context

SourceSKILL.md
435colorLog(`📢 Sending notification: ${type}`, 'blue');
medium line 447

Template literal with variable interpolation in command context

SourceSKILL.md
447const notificationFile = `rollback-notification-${Date.now()}.json`;
medium line 449

Template literal with variable interpolation in command context

SourceSKILL.md
449colorLog(`📄 Notification saved: ${notificationFile}`, 'cyan');
medium line 456

Template literal with variable interpolation in command context

SourceSKILL.md
456colorLog(`🔍 Monitoring deployment for ${duration / 60000} minutes...`, 'blue');
medium line 472

Template literal with variable interpolation in command context

SourceSKILL.md
472colorLog(`🚨 Rollback triggered: ${rollbackDecision.reason}`, 'red');
medium line 473

Template literal with variable interpolation in command context

SourceSKILL.md
473colorLog(`Severity: ${rollbackDecision.severity}`, 'yellow');
medium line 561

Template literal with variable interpolation in command context

SourceSKILL.md
561colorLog(`${status} ${index + 1}. ${dep.id} - ${dep.url}${prod}`, 'cyan');
medium line 629

Template literal with variable interpolation in command context

SourceSKILL.md
629console.log(`📡 Monitoring deployment: ${deployment.url}`);
medium line 647

Template literal with variable interpolation in command context

SourceSKILL.md
647console.log(`🔍 Auto-check at ${new Date().toLocaleTimeString()}`);
medium line 654

Template literal with variable interpolation in command context

SourceSKILL.md
654console.log(`🚨 Auto-rollback triggered: ${rollbackDecision.reason}`);
medium line 661

Template literal with variable interpolation in command context

SourceSKILL.md
661console.log(`🔄 Auto-rolling back to: ${previousDeployment.url}`);
medium line 703

Template literal with variable interpolation in command context

SourceSKILL.md
703console.log(`🤖 Auto-rollback status: ${this.isRunning ? 'running' : 'stopped'}`);
medium line 747

Template literal with variable interpolation in command context

SourceSKILL.md
747console.log(`${colors[color]}${message}${colors.reset}`);
medium line 757

Template literal with variable interpolation in command context

SourceSKILL.md
757colorLog(`💾 Creating backup for deployment: ${deploymentId}`, 'blue');
medium line 764

Template literal with variable interpolation in command context

SourceSKILL.md
764const backupDir = path.join(this.backupDir, `${deploymentId}-${timestamp}`);
medium line 789

Template literal with variable interpolation in command context

SourceSKILL.md
789colorLog(`✅ Backed up: ${file}`, 'green');
medium line 806

Template literal with variable interpolation in command context

SourceSKILL.md
806colorLog(`✅ Backup created: ${backupDir}`, 'green');
medium line 809

Template literal with variable interpolation in command context

SourceSKILL.md
809colorLog(`❌ Backup failed: ${error.message}`, 'red');
medium line 865

Template literal with variable interpolation in command context

SourceSKILL.md
865colorLog(`${index + 1}. ${backup}`, 'cyan');
medium line 866

Template literal with variable interpolation in command context

SourceSKILL.md
866colorLog(` Deployment: ${metadata.deploymentId}`, 'yellow');
medium line 867

Template literal with variable interpolation in command context

SourceSKILL.md
867colorLog(` Platform: ${metadata.platform}`, 'yellow');
medium line 868

Template literal with variable interpolation in command context

SourceSKILL.md
868colorLog(` Created: ${date}`, 'yellow');
medium line 869

Template literal with variable interpolation in command context

SourceSKILL.md
869colorLog(` Path: ${backupPath}`, 'yellow');
medium line 872

Template literal with variable interpolation in command context

SourceSKILL.md
872colorLog(`${index + 1}. ${backup} (no metadata)`, 'yellow');
medium line 878

Template literal with variable interpolation in command context

SourceSKILL.md
878colorLog(`🔄 Restoring backup: ${backupName}`, 'blue');
medium line 919

Template literal with variable interpolation in command context

SourceSKILL.md
919colorLog(`✅ Restored: ${file}`, 'green');
medium line 931

Template literal with variable interpolation in command context

SourceSKILL.md
931colorLog(`❌ Restore failed: ${error.message}`, 'red');
medium line 937

Template literal with variable interpolation in command context

SourceSKILL.md
937colorLog(`🧹 Cleaning up old backups (keeping ${keepCount})...`, 'blue');
medium line 958

Template literal with variable interpolation in command context

SourceSKILL.md
958colorLog(`🗑️ Deleted: ${backup}`, 'yellow');
medium line 961

Template literal with variable interpolation in command context

SourceSKILL.md
961colorLog(`✅ Cleaned up ${toDelete.length} old backups`, 'green');
low line 169

Node child_process module reference

SourceSKILL.md
169const { execSync } = require('child_process');
low line 151

Webhook reference - potential data exfiltration

SourceSKILL.md
151channels: ['slack', 'email', 'webhook'],
low line 198

Access to .env file

SourceSKILL.md
198if (process.env.VERCEL_ENV) {
low line 776

Access to .env file

SourceSKILL.md
776'.env.local',
low line 834

Access to .env file

SourceSKILL.md
834if (process.env.VERCEL_ENV) return 'vercel';
medium line 176

Hex-encoded characters

SourceSKILL.md
176reset: '\x1b[0m',
medium line 177

Hex-encoded characters

SourceSKILL.md
177red: '\x1b[31m',
medium line 178

Hex-encoded characters

SourceSKILL.md
178green: '\x1b[32m',
medium line 179

Hex-encoded characters

SourceSKILL.md
179yellow: '\x1b[33m',
medium line 180

Hex-encoded characters

SourceSKILL.md
180blue: '\x1b[34m',
medium line 181

Hex-encoded characters

SourceSKILL.md
181cyan: '\x1b[36c',
medium line 182

Hex-encoded characters

SourceSKILL.md
182magenta: '\x1b[35m',
medium line 737

Hex-encoded characters

SourceSKILL.md
737reset: '\x1b[0m',
medium line 738

Hex-encoded characters

SourceSKILL.md
738red: '\x1b[31m',
medium line 739

Hex-encoded characters

SourceSKILL.md
739green: '\x1b[32m',
medium line 740

Hex-encoded characters

SourceSKILL.md
740yellow: '\x1b[33m',
medium line 741

Hex-encoded characters

SourceSKILL.md
741blue: '\x1b[34m',
medium line 742

Hex-encoded characters

SourceSKILL.md
742cyan: '\x1b[36c',
medium line 743

Hex-encoded characters

SourceSKILL.md
743magenta: '\x1b[35m',
Scanned on Mar 1, 2026
View Security Dashboard
Installation guide →