snow-flow 8.37.24 → 8.37.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../../src/mcp/enterprise-proxy/credentials.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../../src/mcp/enterprise-proxy/credentials.ts"],"names":[],"mappings":"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"}
@@ -43,16 +43,25 @@ const SNOW_INSTANCE_URL = process.env.SNOW_INSTANCE_URL || '';
43
43
  const SNOW_USERNAME = process.env.SNOW_USERNAME || '';
44
44
  const SNOW_PASSWORD = process.env.SNOW_PASSWORD || '';
45
45
  // Jira credentials (optional)
46
- const JIRA_BASE_URL = process.env.JIRA_BASE_URL || '';
47
- const JIRA_EMAIL = process.env.JIRA_EMAIL || '';
48
- const JIRA_API_TOKEN = process.env.JIRA_API_TOKEN || '';
46
+ // Support both naming conventions:
47
+ // - JIRA_* (manual config / .env.example)
48
+ // - ATLASSIAN_* + JIRA_HOST (snow-code auth login)
49
+ const JIRA_BASE_URL = process.env.JIRA_BASE_URL || process.env.JIRA_HOST || '';
50
+ const JIRA_EMAIL = process.env.JIRA_EMAIL || process.env.ATLASSIAN_EMAIL || '';
51
+ const JIRA_API_TOKEN = process.env.JIRA_API_TOKEN || process.env.ATLASSIAN_API_TOKEN || '';
49
52
  // Azure DevOps credentials (optional)
50
- const AZDO_ORG_URL = process.env.AZDO_ORG_URL || '';
51
- const AZDO_PAT = process.env.AZDO_PAT || '';
53
+ // Support both naming conventions:
54
+ // - AZDO_* (manual config / .env.example)
55
+ // - AZURE_* (snow-code auth login)
56
+ const AZDO_ORG_URL = process.env.AZDO_ORG_URL || process.env.AZURE_ORG || '';
57
+ const AZDO_PAT = process.env.AZDO_PAT || process.env.AZURE_PAT || '';
52
58
  // Confluence credentials (optional)
53
- const CONFLUENCE_BASE_URL = process.env.CONFLUENCE_BASE_URL || '';
54
- const CONFLUENCE_EMAIL = process.env.CONFLUENCE_EMAIL || '';
55
- const CONFLUENCE_API_TOKEN = process.env.CONFLUENCE_API_TOKEN || '';
59
+ // Support both naming conventions:
60
+ // - CONFLUENCE_* (manual config / .env.example)
61
+ // - ATLASSIAN_* + CONFLUENCE_HOST (snow-code auth login)
62
+ const CONFLUENCE_BASE_URL = process.env.CONFLUENCE_BASE_URL || process.env.CONFLUENCE_HOST || '';
63
+ const CONFLUENCE_EMAIL = process.env.CONFLUENCE_EMAIL || process.env.ATLASSIAN_EMAIL || '';
64
+ const CONFLUENCE_API_TOKEN = process.env.CONFLUENCE_API_TOKEN || process.env.ATLASSIAN_API_TOKEN || '';
56
65
  class EnterpriseProxyServer {
57
66
  constructor() {
58
67
  this.availableTools = [];
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/mcp/enterprise-proxy/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/mcp/enterprise-proxy/server.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,12 @@
1
1
  /**
2
2
  * Automatic Snow-Code Update Utility
3
3
  * Ensures users always have the LATEST version of @groeimetai/snow-code and platform binaries
4
- * Used by init and swarm commands to keep dependencies up-to-date
4
+ *
5
+ * OPTIMIZED FOR FAST STARTUP:
6
+ * - Caches version checks (1 hour TTL)
7
+ * - Fully async operations (no blocking)
8
+ * - Skips checks if recently verified
9
+ * - Background updates don't block swarm startup
5
10
  */
6
11
  export interface UpdateResult {
7
12
  success: boolean;
@@ -9,19 +14,33 @@ export interface UpdateResult {
9
14
  mainPackageVersion: string | null;
10
15
  binaryPackagesUpdated: number;
11
16
  errors: string[];
17
+ skipped?: boolean;
18
+ fromCache?: boolean;
12
19
  }
13
20
  /**
14
- * Comprehensive snow-code update function
15
- * Updates both main package and platform binaries to latest versions
16
- *
17
- * @param targetDir - Target directory for local installations (defaults to cwd)
18
- * @param verbose - Show detailed progress messages
19
- * @returns UpdateResult with detailed status
21
+ * Quick check if update is needed using cache
22
+ * Returns immediately if cache is valid
23
+ */
24
+ export declare function checkForUpdatesWithCache(): Promise<{
25
+ updateAvailable: boolean;
26
+ currentVersion: string | null;
27
+ latestVersion: string | null;
28
+ fromCache: boolean;
29
+ }>;
30
+ /**
31
+ * FAST auto-update function optimized for swarm startup
32
+ * - Returns immediately if cache is valid and no update needed
33
+ * - Triggers background update if needed (non-blocking)
34
+ * - Never blocks the main thread
20
35
  */
21
36
  export declare function autoUpdateSnowCode(targetDir?: string, verbose?: boolean): Promise<UpdateResult>;
22
37
  /**
23
- * Quick check if snow-code update is available (without installing)
24
- * Useful for showing update notifications
38
+ * Force clear the version cache (useful for debugging or manual refresh)
39
+ */
40
+ export declare function clearVersionCache(): void;
41
+ /**
42
+ * Legacy function for backwards compatibility
43
+ * @deprecated Use checkForUpdatesWithCache() instead
25
44
  */
26
45
  export declare function checkForUpdates(): Promise<{
27
46
  updateAvailable: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"auto-update-snow-code.d.ts","sourceRoot":"","sources":["../../src/utils/auto-update-snow-code.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAoLD;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,UAAQ,GACd,OAAO,CAAC,YAAY,CAAC,CA6DvB;AAED;;;GAGG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC;IAC/C,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,CAAC,CAUD"}
1
+ {"version":3,"file":"auto-update-snow-code.d.ts","sourceRoot":"","sources":["../../src/utils/auto-update-snow-code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAeH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAoJD;;;GAGG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC;IACxD,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC,CAqCD;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,UAAQ,GACd,OAAO,CAAC,YAAY,CAAC,CA2DvB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAUxC;AAED;;;GAGG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC;IAC/C,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,CAAC,CAOD"}
@@ -2,16 +2,31 @@
2
2
  /**
3
3
  * Automatic Snow-Code Update Utility
4
4
  * Ensures users always have the LATEST version of @groeimetai/snow-code and platform binaries
5
- * Used by init and swarm commands to keep dependencies up-to-date
5
+ *
6
+ * OPTIMIZED FOR FAST STARTUP:
7
+ * - Caches version checks (1 hour TTL)
8
+ * - Fully async operations (no blocking)
9
+ * - Skips checks if recently verified
10
+ * - Background updates don't block swarm startup
6
11
  */
12
+ var __importDefault = (this && this.__importDefault) || function (mod) {
13
+ return (mod && mod.__esModule) ? mod : { "default": mod };
14
+ };
7
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.checkForUpdatesWithCache = checkForUpdatesWithCache;
8
17
  exports.autoUpdateSnowCode = autoUpdateSnowCode;
18
+ exports.clearVersionCache = clearVersionCache;
9
19
  exports.checkForUpdates = checkForUpdates;
10
20
  const child_process_1 = require("child_process");
11
21
  const fs_1 = require("fs");
12
22
  const path_1 = require("path");
23
+ const os_1 = __importDefault(require("os"));
13
24
  const logger_js_1 = require("./logger.js");
14
25
  const logger = new logger_js_1.Logger('auto-update');
26
+ // Cache settings
27
+ const CACHE_DIR = (0, path_1.join)(os_1.default.homedir(), '.snow-flow', 'cache');
28
+ const VERSION_CACHE_FILE = (0, path_1.join)(CACHE_DIR, 'version-cache.json');
29
+ const CACHE_TTL_MS = 60 * 60 * 1000; // 1 hour
15
30
  /**
16
31
  * Platform-specific binary packages that need to be updated
17
32
  */
@@ -23,23 +38,82 @@ const BINARY_PACKAGES = [
23
38
  '@groeimetai/snow-code-windows-x64'
24
39
  ];
25
40
  /**
26
- * Get the latest version of a package from npm registry
41
+ * Ensure cache directory exists
42
+ */
43
+ function ensureCacheDir() {
44
+ if (!(0, fs_1.existsSync)(CACHE_DIR)) {
45
+ (0, fs_1.mkdirSync)(CACHE_DIR, { recursive: true });
46
+ }
47
+ }
48
+ /**
49
+ * Read version cache from disk
27
50
  */
28
- async function getLatestVersion(packageName) {
51
+ function readVersionCache() {
29
52
  try {
30
- const version = (0, child_process_1.execSync)(`npm view ${packageName} version 2>/dev/null`, {
31
- encoding: 'utf8',
32
- stdio: ['pipe', 'pipe', 'ignore']
33
- }).trim();
34
- return version || null;
53
+ if ((0, fs_1.existsSync)(VERSION_CACHE_FILE)) {
54
+ const data = (0, fs_1.readFileSync)(VERSION_CACHE_FILE, 'utf8');
55
+ return JSON.parse(data);
56
+ }
35
57
  }
36
58
  catch (error) {
37
- logger.debug(`Could not fetch latest version for ${packageName}`);
38
- return null;
59
+ logger.debug('Could not read version cache:', error);
39
60
  }
61
+ return null;
40
62
  }
41
63
  /**
42
- * Get currently installed version of a package
64
+ * Write version cache to disk
65
+ */
66
+ function writeVersionCache(cache) {
67
+ try {
68
+ ensureCacheDir();
69
+ (0, fs_1.writeFileSync)(VERSION_CACHE_FILE, JSON.stringify(cache, null, 2));
70
+ }
71
+ catch (error) {
72
+ logger.debug('Could not write version cache:', error);
73
+ }
74
+ }
75
+ /**
76
+ * Check if cache is still valid (within TTL)
77
+ */
78
+ function isCacheValid(cache) {
79
+ if (!cache)
80
+ return false;
81
+ const age = Date.now() - cache.lastCheck;
82
+ return age < CACHE_TTL_MS;
83
+ }
84
+ /**
85
+ * Get the latest version of a package from npm registry (ASYNC - non-blocking)
86
+ */
87
+ async function getLatestVersionAsync(packageName) {
88
+ return new Promise((resolve) => {
89
+ const npmProcess = (0, child_process_1.spawn)('npm', ['view', packageName, 'version'], {
90
+ stdio: ['ignore', 'pipe', 'ignore'],
91
+ shell: true
92
+ });
93
+ let version = '';
94
+ npmProcess.stdout?.on('data', (data) => {
95
+ version += data.toString();
96
+ });
97
+ npmProcess.on('close', (code) => {
98
+ if (code === 0 && version.trim()) {
99
+ resolve(version.trim());
100
+ }
101
+ else {
102
+ resolve(null);
103
+ }
104
+ });
105
+ npmProcess.on('error', () => {
106
+ resolve(null);
107
+ });
108
+ // Timeout after 5 seconds
109
+ setTimeout(() => {
110
+ npmProcess.kill();
111
+ resolve(null);
112
+ }, 5000);
113
+ });
114
+ }
115
+ /**
116
+ * Get currently installed version of a package (sync but fast - just reads local file)
43
117
  */
44
118
  function getInstalledVersion(packageName, targetDir) {
45
119
  try {
@@ -48,7 +122,7 @@ function getInstalledVersion(packageName, targetDir) {
48
122
  if (!(0, fs_1.existsSync)(packageJsonPath)) {
49
123
  return null;
50
124
  }
51
- const packageJson = require(packageJsonPath);
125
+ const packageJson = JSON.parse((0, fs_1.readFileSync)(packageJsonPath, 'utf8'));
52
126
  return packageJson.version;
53
127
  }
54
128
  catch (error) {
@@ -56,199 +130,144 @@ function getInstalledVersion(packageName, targetDir) {
56
130
  }
57
131
  }
58
132
  /**
59
- * Update main @groeimetai/snow-code package to latest version
60
- * Installs both globally (for CLI usage) and locally (as dependency)
133
+ * Run npm install in background (ASYNC - non-blocking)
61
134
  */
62
- async function updateMainPackage(targetDir, verbose = false) {
63
- const packageName = '@groeimetai/snow-code';
64
- const result = {
65
- success: false,
66
- version: null,
67
- globalUpdated: false,
68
- localUpdated: false
69
- };
70
- try {
71
- // Get latest version
72
- if (verbose)
73
- logger.info('Checking for latest snow-code version...');
74
- const latestVersion = await getLatestVersion(packageName);
75
- if (!latestVersion) {
76
- logger.warn('Could not determine latest version from npm');
77
- return result;
78
- }
79
- result.version = latestVersion;
80
- // Update GLOBAL installation (used by snow-flow CLI commands)
81
- if (verbose)
82
- logger.info(`Updating global ${packageName} to v${latestVersion}...`);
83
- try {
84
- (0, child_process_1.execSync)(`npm install -g ${packageName}@latest`, {
85
- stdio: verbose ? 'inherit' : 'ignore',
86
- encoding: 'utf8'
87
- });
88
- result.globalUpdated = true;
89
- if (verbose)
90
- logger.info('✓ Global installation updated');
91
- }
92
- catch (globalErr) {
93
- logger.debug('Global update failed (non-critical):', globalErr);
94
- // Continue even if global update fails
95
- }
96
- // Update LOCAL installation (as project dependency)
97
- if (verbose)
98
- logger.info(`Updating local ${packageName} to v${latestVersion}...`);
99
- try {
100
- const cwd = targetDir || process.cwd();
101
- (0, child_process_1.execSync)(`npm install ${packageName}@latest`, {
102
- stdio: verbose ? 'inherit' : 'ignore',
103
- cwd,
104
- encoding: 'utf8'
105
- });
106
- result.localUpdated = true;
107
- if (verbose)
108
- logger.info('✓ Local installation updated');
109
- }
110
- catch (localErr) {
111
- logger.debug('Local update failed (non-critical):', localErr);
112
- // Continue even if local update fails
113
- }
114
- result.success = result.globalUpdated || result.localUpdated;
115
- return result;
116
- }
117
- catch (error) {
118
- logger.error('Failed to update main package:', error);
119
- return result;
120
- }
135
+ function runNpmInstallAsync(packageName, global, targetDir) {
136
+ return new Promise((resolve) => {
137
+ const args = global
138
+ ? ['install', '-g', `${packageName}@latest`, '--silent', '--no-audit', '--no-fund']
139
+ : ['install', `${packageName}@latest`, '--silent', '--no-audit', '--no-fund'];
140
+ const npmProcess = (0, child_process_1.spawn)('npm', args, {
141
+ stdio: 'ignore',
142
+ shell: true,
143
+ cwd: global ? undefined : (targetDir || process.cwd()),
144
+ detached: true // Run independently of parent
145
+ });
146
+ // Don't wait for completion - let it run in background
147
+ npmProcess.unref();
148
+ // Resolve immediately - update happens in background
149
+ resolve(true);
150
+ });
121
151
  }
122
152
  /**
123
- * Update platform-specific binary packages to latest versions
124
- * Uses platform detection to prioritize the current platform's binary
153
+ * Quick check if update is needed using cache
154
+ * Returns immediately if cache is valid
125
155
  */
126
- async function updateBinaryPackages(targetDir, verbose = false) {
127
- const result = {
128
- updated: 0,
129
- errors: []
130
- };
131
- if (verbose)
132
- logger.info('Updating platform-specific binaries...');
133
- // Detect current platform to prioritize it
134
- const platform = process.platform;
135
- const arch = process.arch;
136
- const currentPlatformPackage = `@groeimetai/snow-code-${platform}-${arch}`;
137
- // Prioritize current platform, then update others
138
- const packagesToUpdate = [
139
- currentPlatformPackage,
140
- ...BINARY_PACKAGES.filter(pkg => pkg !== currentPlatformPackage)
141
- ];
142
- for (const packageName of packagesToUpdate) {
143
- try {
144
- const latestVersion = await getLatestVersion(packageName);
145
- if (!latestVersion) {
146
- if (verbose)
147
- logger.debug(`Skipping ${packageName} (not available)`);
148
- continue;
149
- }
150
- const installedVersion = getInstalledVersion(packageName, targetDir);
151
- // Only update if not installed or version differs
152
- if (!installedVersion || installedVersion !== latestVersion) {
153
- if (verbose) {
154
- logger.info(`Updating ${packageName} to v${latestVersion}...`);
155
- }
156
- const cwd = targetDir || process.cwd();
157
- (0, child_process_1.execSync)(`npm install --no-save --prefer-offline ${packageName}@${latestVersion}`, {
158
- stdio: verbose ? 'inherit' : 'ignore',
159
- cwd,
160
- encoding: 'utf8'
161
- });
162
- result.updated++;
163
- if (verbose)
164
- logger.info(`✓ ${packageName} updated`);
165
- }
166
- else {
167
- if (verbose)
168
- logger.debug(`✓ ${packageName} already up-to-date (v${installedVersion})`);
169
- }
170
- }
171
- catch (error) {
172
- const errorMsg = `Failed to update ${packageName}: ${error instanceof Error ? error.message : 'unknown error'}`;
173
- result.errors.push(errorMsg);
174
- logger.debug(errorMsg);
175
- }
156
+ async function checkForUpdatesWithCache() {
157
+ const packageName = '@groeimetai/snow-code';
158
+ // Check cache first
159
+ const cache = readVersionCache();
160
+ if (isCacheValid(cache)) {
161
+ logger.debug('Using cached version info (age: ' + Math.round((Date.now() - cache.lastCheck) / 1000) + 's)');
162
+ return {
163
+ updateAvailable: cache.updateAvailable,
164
+ currentVersion: cache.installedVersion,
165
+ latestVersion: cache.latestVersion,
166
+ fromCache: true
167
+ };
176
168
  }
177
- return result;
169
+ // Cache miss or expired - check npm (async)
170
+ const currentVersion = getInstalledVersion(packageName);
171
+ const latestVersion = await getLatestVersionAsync(packageName);
172
+ const updateAvailable = currentVersion !== null &&
173
+ latestVersion !== null &&
174
+ currentVersion !== latestVersion;
175
+ // Update cache
176
+ writeVersionCache({
177
+ lastCheck: Date.now(),
178
+ latestVersion,
179
+ installedVersion: currentVersion,
180
+ updateAvailable
181
+ });
182
+ return {
183
+ updateAvailable,
184
+ currentVersion,
185
+ latestVersion,
186
+ fromCache: false
187
+ };
178
188
  }
179
189
  /**
180
- * Comprehensive snow-code update function
181
- * Updates both main package and platform binaries to latest versions
182
- *
183
- * @param targetDir - Target directory for local installations (defaults to cwd)
184
- * @param verbose - Show detailed progress messages
185
- * @returns UpdateResult with detailed status
190
+ * FAST auto-update function optimized for swarm startup
191
+ * - Returns immediately if cache is valid and no update needed
192
+ * - Triggers background update if needed (non-blocking)
193
+ * - Never blocks the main thread
186
194
  */
187
195
  async function autoUpdateSnowCode(targetDir, verbose = false) {
188
- const startTime = Date.now();
189
- if (verbose) {
190
- logger.info('🔄 Checking for snow-code updates...');
191
- }
192
196
  const result = {
193
- success: false,
197
+ success: true,
194
198
  mainPackageUpdated: false,
195
199
  mainPackageVersion: null,
196
200
  binaryPackagesUpdated: 0,
197
- errors: []
201
+ errors: [],
202
+ skipped: false,
203
+ fromCache: false
198
204
  };
199
205
  try {
200
- // Update main package (global + local)
201
- const mainUpdate = await updateMainPackage(targetDir, verbose);
202
- result.mainPackageUpdated = mainUpdate.success;
203
- result.mainPackageVersion = mainUpdate.version;
204
- if (!mainUpdate.success) {
205
- result.errors.push('Failed to update main snow-code package');
206
+ // Quick cache check
207
+ const versionInfo = await checkForUpdatesWithCache();
208
+ result.mainPackageVersion = versionInfo.latestVersion;
209
+ result.fromCache = versionInfo.fromCache;
210
+ if (!versionInfo.updateAvailable) {
211
+ // No update needed - return immediately
212
+ if (verbose) {
213
+ logger.debug(`✓ snow-code is up-to-date (v${versionInfo.currentVersion})${versionInfo.fromCache ? ' [cached]' : ''}`);
214
+ }
215
+ result.skipped = true;
216
+ return result;
206
217
  }
207
- // Update binary packages
208
- const binaryUpdate = await updateBinaryPackages(targetDir, verbose);
209
- result.binaryPackagesUpdated = binaryUpdate.updated;
210
- result.errors.push(...binaryUpdate.errors);
211
- // Overall success if at least main package updated
212
- result.success = mainUpdate.success;
213
- const duration = ((Date.now() - startTime) / 1000).toFixed(1);
218
+ // Update available - trigger background install (non-blocking)
214
219
  if (verbose) {
215
- if (result.success) {
216
- logger.info(`✅ Snow-code updated successfully in ${duration}s`);
217
- if (result.mainPackageVersion) {
218
- logger.info(` Main package: v${result.mainPackageVersion}`);
219
- }
220
- if (result.binaryPackagesUpdated > 0) {
221
- logger.info(` Binary packages: ${result.binaryPackagesUpdated} updated`);
222
- }
223
- }
224
- else {
225
- logger.warn(`⚠️ Snow-code update completed with errors (${duration}s)`);
226
- }
227
- if (result.errors.length > 0) {
228
- logger.debug('Update errors:', result.errors);
229
- }
220
+ logger.info(`🔄 Updating snow-code v${versionInfo.currentVersion} → v${versionInfo.latestVersion} (background)...`);
221
+ }
222
+ // Fire and forget - these run in background
223
+ runNpmInstallAsync('@groeimetai/snow-code', true, targetDir);
224
+ runNpmInstallAsync('@groeimetai/snow-code', false, targetDir);
225
+ // Update current platform binary only (not all platforms)
226
+ const platform = process.platform;
227
+ const arch = process.arch;
228
+ const currentPlatformPackage = `@groeimetai/snow-code-${platform}-${arch}`;
229
+ if (BINARY_PACKAGES.includes(currentPlatformPackage)) {
230
+ runNpmInstallAsync(currentPlatformPackage, false, targetDir);
231
+ result.binaryPackagesUpdated = 1;
232
+ }
233
+ result.mainPackageUpdated = true;
234
+ if (verbose) {
235
+ logger.info('✓ Update started in background (non-blocking)');
230
236
  }
231
237
  return result;
232
238
  }
233
239
  catch (error) {
234
- const errorMsg = `Unexpected error during update: ${error instanceof Error ? error.message : 'unknown error'}`;
240
+ const errorMsg = `Update check failed: ${error instanceof Error ? error.message : 'unknown error'}`;
235
241
  result.errors.push(errorMsg);
236
- logger.error(errorMsg);
242
+ logger.debug(errorMsg);
237
243
  return result;
238
244
  }
239
245
  }
240
246
  /**
241
- * Quick check if snow-code update is available (without installing)
242
- * Useful for showing update notifications
247
+ * Force clear the version cache (useful for debugging or manual refresh)
248
+ */
249
+ function clearVersionCache() {
250
+ try {
251
+ if ((0, fs_1.existsSync)(VERSION_CACHE_FILE)) {
252
+ const { unlinkSync } = require('fs');
253
+ unlinkSync(VERSION_CACHE_FILE);
254
+ logger.debug('Version cache cleared');
255
+ }
256
+ }
257
+ catch (error) {
258
+ logger.debug('Could not clear version cache:', error);
259
+ }
260
+ }
261
+ /**
262
+ * Legacy function for backwards compatibility
263
+ * @deprecated Use checkForUpdatesWithCache() instead
243
264
  */
244
265
  async function checkForUpdates() {
245
- const packageName = '@groeimetai/snow-code';
246
- const currentVersion = getInstalledVersion(packageName);
247
- const latestVersion = await getLatestVersion(packageName);
266
+ const result = await checkForUpdatesWithCache();
248
267
  return {
249
- updateAvailable: currentVersion !== null && latestVersion !== null && currentVersion !== latestVersion,
250
- currentVersion,
251
- latestVersion
268
+ updateAvailable: result.updateAvailable,
269
+ currentVersion: result.currentVersion,
270
+ latestVersion: result.latestVersion
252
271
  };
253
272
  }
254
273
  //# sourceMappingURL=auto-update-snow-code.js.map