@workflow/cli 5.0.0-beta.1 → 5.0.0-beta.3

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.
Files changed (41) hide show
  1. package/README.md +1 -1
  2. package/dist/base.js.map +1 -1
  3. package/dist/commands/build.js.map +1 -1
  4. package/dist/commands/cancel.js.map +1 -1
  5. package/dist/commands/dev.js.map +1 -1
  6. package/dist/commands/health.js.map +1 -1
  7. package/dist/commands/init.js.map +1 -1
  8. package/dist/commands/inspect.js.map +1 -1
  9. package/dist/commands/start.js.map +1 -1
  10. package/dist/commands/transform.js +3 -3
  11. package/dist/commands/transform.js.map +1 -1
  12. package/dist/commands/validate.js.map +1 -1
  13. package/dist/commands/web.js.map +1 -1
  14. package/dist/lib/config/log.js.map +1 -1
  15. package/dist/lib/config/types.js.map +1 -1
  16. package/dist/lib/config/workflow-config.js.map +1 -1
  17. package/dist/lib/inspect/auth.js.map +1 -1
  18. package/dist/lib/inspect/env.js.map +1 -1
  19. package/dist/lib/inspect/flags.js.map +1 -1
  20. package/dist/lib/inspect/hydration.d.ts.map +1 -1
  21. package/dist/lib/inspect/hydration.js +9 -2
  22. package/dist/lib/inspect/hydration.js.map +1 -1
  23. package/dist/lib/inspect/output.d.ts +8 -1
  24. package/dist/lib/inspect/output.d.ts.map +1 -1
  25. package/dist/lib/inspect/output.js +11 -6
  26. package/dist/lib/inspect/output.js.map +1 -1
  27. package/dist/lib/inspect/output.test.d.ts +2 -0
  28. package/dist/lib/inspect/output.test.d.ts.map +1 -0
  29. package/dist/lib/inspect/output.test.js +52 -0
  30. package/dist/lib/inspect/output.test.js.map +1 -0
  31. package/dist/lib/inspect/pagination.js.map +1 -1
  32. package/dist/lib/inspect/run.js.map +1 -1
  33. package/dist/lib/inspect/setup.js +2 -2
  34. package/dist/lib/inspect/setup.js.map +1 -1
  35. package/dist/lib/inspect/stream.js.map +1 -1
  36. package/dist/lib/inspect/terminal-utils.js.map +1 -1
  37. package/dist/lib/inspect/vercel-api.js.map +1 -1
  38. package/dist/lib/inspect/vercel-link.js.map +1 -1
  39. package/dist/lib/inspect/web.js.map +1 -1
  40. package/dist/lib/update-check.js.map +1 -1
  41. package/package.json +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../../src/lib/inspect/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,MAA+B,EAC/B,EAAU,EACV,IAAuB,EACvB,EAAE;IACF,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;IAClC,mEAAmE;IACnE,yEAAyE;IACzE,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,GAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAChD,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,CAAC;QACH,SAAS,CAAC;YACR,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM;YACR,CAAC;YAED,oBAAoB;YACpB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAC1C,SAAS;YACX,CAAC;YAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,+BAA+B;gBAC/B,MAAM,IAAI,GACR,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACrE,MAAM,CAAC,GAAG,CAAC,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC,CAAC;gBACtC,UAAU,EAAE,CAAC;YACf,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,iFAAiF;QACjF,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACtE,MAAM,CAAC,KAAK,CACV,kFAAkF,CACnF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC1B,KAAK,EAAE,iCAAiC,EAAE,EAAE;gBAC5C,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC;aACrB,CAAC,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;YAAS,CAAC;QACT,aAAa,CAAC,SAAS,CAAC,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,4CAA4C;QAC9C,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../../src/lib/inspect/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,MAA+B,EAC/B,EAAU,EACV,IAAuB,EACvB,EAAE;IACF,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;IAClC,mEAAmE;IACnE,yEAAyE;IACzE,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,GAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAChD,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,CAAC;QACH,SAAS,CAAC;YACR,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM;YACR,CAAC;YAED,oBAAoB;YACpB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAC1C,SAAS;YACX,CAAC;YAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,+BAA+B;gBAC/B,MAAM,IAAI,GACR,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACrE,MAAM,CAAC,GAAG,CAAC,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC,CAAC;gBACtC,UAAU,EAAE,CAAC;YACf,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,iFAAiF;QACjF,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACtE,MAAM,CAAC,KAAK,CACV,kFAAkF,CACnF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC1B,KAAK,EAAE,iCAAiC,EAAE,EAAE;gBAC5C,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC;aACrB,CAAC,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;YAAS,CAAC;QACT,aAAa,CAAC,SAAS,CAAC,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,4CAA4C;QAC9C,CAAC;IACH,CAAC;AACH,CAAC,CAAC","sourcesContent":["import { logger } from '../config/log.js';\nimport type { InspectCLIOptions } from '../config/types.js';\n\n/**\n * This function will read from a deserialized stream and write the output to the console.\n * If the stream is not closed, this function will block until the stream is closed.\n */\nexport const streamToConsole = async (\n stream: ReadableStream<unknown>,\n id: string,\n opts: InspectCLIOptions\n) => {\n const reader = stream.getReader();\n // Keep the Node.js event loop alive while we await stream closure.\n // Pending Promises alone do not keep the process alive when using oclif.\n const keepAlive = setInterval(() => {}, 60_000);\n let chunkIndex = 0;\n try {\n for (;;) {\n const { value, done } = await reader.read();\n if (done) {\n break;\n }\n\n // Skip empty chunks\n if (value === undefined || value === null) {\n continue;\n }\n\n if (opts.json) {\n process.stdout.write(`${JSON.stringify(value)}\\n`);\n } else {\n // Format the value for display\n const text =\n typeof value === 'string' ? value : JSON.stringify(value, null, 2);\n logger.log(`[${chunkIndex}] ${text}`);\n chunkIndex++;\n }\n }\n } catch (err) {\n // Provide a clear message when the stream is encrypted and --decrypt wasn't used\n if (err instanceof Error && err.message.includes('no encryption key')) {\n logger.error(\n 'This stream contains encrypted data. Use --decrypt --run=<run-id> to decrypt it.'\n );\n } else {\n console.error(`Failed to read stream with ID ${id}:`, err);\n }\n if (opts.json) {\n const json = JSON.stringify({\n error: `Failed to read stream with ID ${id}`,\n details: String(err),\n });\n process.stderr.write(`${json}\\n`);\n }\n } finally {\n clearInterval(keepAlive);\n try {\n await reader.cancel();\n } catch {\n // Ignore cancellation errors during cleanup\n }\n }\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-utils.js","sourceRoot":"","sources":["../../../src/lib/inspect/terminal-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-utils.js","sourceRoot":"","sources":["../../../src/lib/inspect/terminal-utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Utilities for terminal display and environment detection\n */\n\n/**\n * Check if running in CI environment\n */\nexport const isCI = (): boolean => {\n return !!(\n process.env.CI ||\n process.env.CONTINUOUS_INTEGRATION ||\n process.env.BUILD_NUMBER ||\n process.env.GITHUB_ACTIONS ||\n process.env.GITLAB_CI ||\n process.env.CIRCLECI ||\n process.env.TRAVIS ||\n process.env.JENKINS_URL ||\n process.env.BUILDKITE ||\n process.env.TF_BUILD\n );\n};\n\n/**\n * Check if running in an interactive terminal\n */\nexport const isInteractive = (): boolean => {\n return !isCI() && !!process.stdout.isTTY;\n};\n\n/**\n * Get the current terminal width\n */\nexport const getTerminalWidth = (): number => {\n return process.stdout.columns || 80; // Default to 80 if not available\n};\n\n/**\n * Calculate display settings based on terminal width\n */\nexport interface DisplaySettings {\n showRelativeDates: boolean;\n dataFieldWidth: number;\n abbreviateStatus: boolean;\n namesTruncateLength: number;\n truncateIdsToLastChars: boolean;\n hideCompletedAt: boolean;\n}\n\nexport const getDisplaySettings = (\n terminalWidth: number,\n withData: boolean,\n isRunTable: boolean = true\n): DisplaySettings => {\n // Base widths from actual measurements (without data fields)\n const baseWidth = (isRunTable ? 140 : 170) + (withData ? 32 : 0);\n\n // Initialize with defaults\n const settings: DisplaySettings = {\n showRelativeDates: !withData, // Disabled by default when withData is true\n dataFieldWidth: 15,\n abbreviateStatus: false,\n namesTruncateLength: 40,\n truncateIdsToLastChars: false,\n hideCompletedAt: false,\n };\n\n // If terminal width is sufficient, return defaults\n if (terminalWidth >= baseWidth) {\n return settings;\n }\n\n // Progressive degradation avenues\n let availableWidth = baseWidth;\n\n // Disable relative dates (save 34 characters)\n if (settings.showRelativeDates && terminalWidth < availableWidth) {\n settings.showRelativeDates = false;\n availableWidth -= 34;\n }\n\n // Reduce data field width if withData is set (save 20 characters from 2*10)\n if (\n withData &&\n settings.dataFieldWidth === 15 &&\n terminalWidth < availableWidth\n ) {\n settings.dataFieldWidth = 5;\n availableWidth -= 20;\n }\n\n // Abbreviate status and set header to \"S\" (save 8 characters)\n if (terminalWidth < availableWidth) {\n settings.abbreviateStatus = true;\n availableWidth -= 8;\n }\n\n // Trim names from 40 to 20 characters (save 20 characters)\n if (settings.namesTruncateLength === 40 && terminalWidth < availableWidth) {\n settings.namesTruncateLength = 20;\n availableWidth -= 20;\n }\n\n // Hide completedAt column (save 23 characters)\n if (terminalWidth < availableWidth) {\n settings.hideCompletedAt = true;\n availableWidth -= 23;\n }\n\n // Trim IDs to last 4 characters\n if (terminalWidth < availableWidth) {\n settings.truncateIdsToLastChars = true;\n availableWidth -= isRunTable ? 24 : 48;\n }\n\n return settings;\n};\n\n/**\n * Format status with optional abbreviation\n */\nexport const formatStatus = (status: string, abbreviated: boolean): string => {\n if (!abbreviated) {\n return status;\n }\n\n // Abbreviate to first letter\n const abbrevMap: Record<string, string> = {\n running: 'R',\n completed: 'C',\n failed: 'F',\n cancelled: 'X',\n pending: 'P',\n };\n\n return abbrevMap[status.toLowerCase()] || status.charAt(0).toUpperCase();\n};\n\n/**\n * Format ISO date without T and Z characters\n */\nexport const formatISODate = (date: Date): string => {\n const isoString = date.toISOString();\n // Replace T with space and remove Z\n return isoString.replace('T', ' ').replace('Z', '');\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"vercel-api.js","sourceRoot":"","sources":["../../../src/lib/inspect/vercel-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vercel-api.js","sourceRoot":"","sources":["../../../src/lib/inspect/vercel-api.ts"],"names":[],"mappings":"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","sourcesContent":["import chalk from 'chalk';\nimport { logger } from '../config/log.js';\n\ninterface VercelTeam {\n id: string;\n slug: string;\n}\n\n/**\n * Fetch team information from Vercel API\n * Timeout: 5 seconds - falls back to local UI if the request fails or times out\n */\nexport async function fetchTeamInfo(\n teamId: string,\n authToken: string\n): Promise<{ teamSlug: string } | null> {\n try {\n // Create an AbortController with a 5 second timeout\n const controller = new AbortController();\n const timeoutId = setTimeout(() => controller.abort(), 5000);\n\n const response = await fetch(`https://api.vercel.com/v2/teams/${teamId}`, {\n headers: {\n Authorization: `Bearer ${authToken}`,\n },\n signal: controller.signal,\n });\n\n // Clear the timeout if the request completes successfully\n clearTimeout(timeoutId);\n\n if (response.status === 401 || response.status === 403) {\n logger.error(\n chalk.red(\n `Authentication failed (${response.status}): Unable to access team information`\n )\n );\n logger.warn(\n chalk.yellow(\n '\\nPlease ensure you are logged in and have access to the team:'\n )\n );\n logger.warn(chalk.yellow(' Run `vercel login` to authenticate'));\n return null;\n }\n\n if (!response.ok) {\n logger.debug(\n `Failed to fetch team info: ${response.status} ${response.statusText}`\n );\n return null;\n }\n\n const team = (await response.json()) as VercelTeam;\n return {\n teamSlug: team.slug,\n };\n } catch (error) {\n // Handle both timeout and other errors - fall back to local UI\n if (error instanceof Error && error.name === 'AbortError') {\n logger.debug(\n 'Vercel API request timed out after 5 seconds, falling back to local UI'\n );\n } else {\n logger.debug(`Error fetching team info: ${error}`);\n }\n return null;\n }\n}\n\n// /**\n// * Check if the Vercel dashboard workflows page is available\n// */\n// export async function checkVercelDashboardAvailable(\n// teamSlug: string,\n// projectName: string,\n// authToken: string\n// ): Promise<boolean> {\n// try {\n// const dashboardUrl = `https://vercel.com/${teamSlug}/${projectName}/ai/workflows`;\n// logger.debug(`Checking Vercel dashboard availability: ${dashboardUrl}`);\n\n// const response = await fetch(dashboardUrl, {\n// method: 'HEAD',\n// redirect: 'follow',\n// headers: {\n// Authorization: `Bearer ${authToken}`,\n// },\n// });\n\n// // Consider 2xx and 3xx as success\n// const isAvailable = response.status >= 200 && response.status < 400;\n// logger.debug(\n// `Dashboard check result: ${response.status} - ${isAvailable ? 'available' : 'not available'}`\n// );\n\n// return isAvailable;\n// } catch (error) {\n// logger.debug(`Error checking dashboard availability: ${error}`);\n// return false;\n// }\n// }\n\n/**\n * Get the Vercel dashboard URL for workflows\n */\nexport function getVercelDashboardUrl(\n teamSlug: string,\n projectName: string,\n resource: string,\n id?: string\n): string {\n let url = `https://vercel.com/${teamSlug}/${projectName}/observability/workflows`;\n\n // Add resource-specific path segments\n if (resource === 'run' && id) {\n url += `/runs/${id}?environment=production`;\n } else if (id) {\n url += `?${resource}Id=${id}`;\n }\n\n return url;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"vercel-link.js","sourceRoot":"","sources":["../../../src/lib/inspect/vercel-link.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vercel-link.js","sourceRoot":"","sources":["../../../src/lib/inspect/vercel-link.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * This file was copied from @vercel/vercel/packages/cli/src/util/projects/link.ts\n * and adapted to work without importing most of the vercel CLI code.\n *\n * It strips:\n * - Network requests for validating whether the org/user/team/project exists\n * - Some vercel-specific environment variable checks and inference\n * that we're not supporting for Workflow CLI for now\n */\n\nimport { execSync } from 'node:child_process';\nimport fs, { statSync } from 'node:fs';\nimport { lstat } from 'node:fs/promises';\nimport { homedir } from 'node:os';\nimport { join, normalize, posix, relative } from 'node:path';\nimport util from 'node:util';\nimport { promisify } from 'util';\nimport { logger } from '../config/log.js';\n\nconst home = homedir();\n\ninterface RepoProjectConfig {\n id: string;\n name: string;\n directory: string;\n /** Per-project orgId — added in vercel/vercel#14967. Prefer this over root-level orgId. */\n orgId?: string;\n}\n\ninterface RepoProjectsConfig {\n /** Legacy root-level orgId — older Vercel CLI versions put orgId here. */\n orgId?: string;\n remoteName: string;\n projects: RepoProjectConfig[];\n}\n\ninterface RepoLink {\n rootPath: string;\n repoConfigPath: string;\n repoConfig?: RepoProjectsConfig;\n}\n\nexport interface ProjectLink {\n /**\n * ID of the Vercel Project.\n */\n projectId: string;\n /**\n * User or Team ID of the owner of the Vercel Project.\n */\n orgId: string;\n /**\n * When linked as a repository, contains the absolute path\n * to the root directory of the repository.\n */\n repoRoot?: string;\n /**\n * When linked as a repository, contains the relative path\n * to the selected project root directory.\n */\n projectRootDirectory?: string;\n /**\n * Name of the Vercel Project.\n */\n projectName?: string;\n}\n\nconst readFile = promisify(fs.readFile);\n\nexport const VERCEL_DIR = '.vercel';\nexport const VERCEL_DIR_FALLBACK = '.now';\nexport const VERCEL_DIR_PROJECT = 'project.json';\nexport const VERCEL_DIR_REPO = 'repo.json';\n\nconst isDirectory = (dir: string) => {\n try {\n return statSync(dir).isDirectory();\n } catch (err) {\n logger.debug(`${dir} is not a directory: ${err}`);\n return false;\n }\n};\n\n/**\n * A type guard for `try...catch` errors.\n * @deprecated use `require('node:util').types.isNativeError(error)` instead\n */\nexport const isError = (error: unknown): error is Error => {\n return util.types.isNativeError(error);\n};\n\nexport const isErrnoException = (\n error: unknown\n): error is NodeJS.ErrnoException => {\n return isError(error) && 'code' in error;\n};\n\nexport const isOneOfErrNoExceptions = (error: unknown, codes: string[]) => {\n return (\n isErrnoException(error) &&\n 'code' in error &&\n error.code &&\n codes.includes(error.code)\n );\n};\n\n/**\n * Returns the `<cwd>/.vercel` directory for the current project\n * with a fallback to <cwd>/.now` if it exists.\n *\n * Throws an error if *both* `.vercel` and `.now` directories exist.\n */\nexport function getVercelDirectory(cwd: string): string {\n logger.debug(`Getting vercel directory for ${cwd}`);\n const possibleDirs = [join(cwd, VERCEL_DIR), join(cwd, VERCEL_DIR_FALLBACK)];\n logger.debug(`Possible vercel directories: ${possibleDirs.join(', ')}`);\n const existingDirs = possibleDirs.filter((d) => isDirectory(d));\n if (existingDirs.length > 1) {\n throw new Error(\n 'CONFLICTING_CONFIG_DIRECTORIES: Both `.vercel` and `.now` directories exist. Please remove the `.now` directory.'\n );\n }\n return existingDirs[0] || possibleDirs[0];\n}\n\nexport async function getProjectLink(\n path: string\n): Promise<ProjectLink | null> {\n return (\n (await getProjectLinkFromRepoLink(path)) ||\n (await getLinkFromDir(getVercelDirectory(path)))\n );\n}\n\n/**\n * Convert Windows separators to Unix separators.\n */\nexport function normalizeOsPath(p: string): string {\n const isWin = process.platform === 'win32';\n return isWin ? p.replace(/\\\\/g, '/') : p;\n}\n\nfunction sortByDirectory(\n a: { directory: string },\n b: { directory: string }\n): number {\n const aParts = a.directory.split('/');\n const bParts = b.directory.split('/');\n return bParts.length - aParts.length;\n}\n\n/**\n * Finds the matching Projects from an array of Project links\n * where the provided relative path is within the Project's\n * root directory.\n */\nexport function findProjectsFromPath(\n projects: RepoProjectConfig[],\n path: string\n): RepoProjectConfig[] {\n logger.debug(\n `Finding projects ${JSON.stringify(projects)} from path ${path}`\n );\n const normalizedPath = normalizeOsPath(path);\n const matches = projects\n .slice()\n .sort(sortByDirectory)\n .filter((project) => {\n if (project.directory === '.') {\n // Project has no \"Root Directory\" setting, so any path is valid\n return true;\n }\n return (\n normalizedPath === project.directory ||\n normalizedPath.startsWith(`${project.directory}/`)\n );\n });\n // If there are multiple matches, we only want the most relevant\n // selections (with the deepest directory depth), so pick the first\n // one and filter on those matches.\n const firstMatch = matches[0];\n return matches.filter((match) => match.directory === firstMatch.directory);\n}\n\nasync function getProjectLinkFromRepoLink(\n path: string\n): Promise<ProjectLink | null> {\n const repoLink = await getRepoLink(path);\n if (!repoLink?.repoConfig) {\n logger.debug('No repo link found');\n return null;\n }\n logger.debug('Repo link', JSON.stringify(repoLink));\n const projects = findProjectsFromPath(\n repoLink.repoConfig.projects,\n relative(repoLink.rootPath, path)\n );\n logger.debug(`Found matching repo projects: ${JSON.stringify(projects)}`);\n if (projects.length === 1) {\n const project = projects[0];\n // Prefer per-project orgId (vercel/vercel#14967), fall back to\n // root-level orgId for older Vercel CLI versions.\n const orgId = project.orgId ?? repoLink.repoConfig?.orgId;\n if (!orgId) {\n logger.debug('No orgId found in repo link project or root config');\n return null;\n }\n return {\n repoRoot: repoLink.rootPath,\n orgId,\n projectId: project.id,\n projectName: project.name,\n projectRootDirectory: project.directory,\n };\n } else if (projects.length > 1) {\n throw new Error('Multiple projects found');\n }\n return null;\n}\n\nexport async function getLinkFromDir(\n vercelDir: string\n): Promise<ProjectLink | null> {\n logger.debug(`Getting link from dir ${vercelDir}`);\n try {\n const json = await readFile(join(vercelDir, VERCEL_DIR_PROJECT), 'utf8');\n const link: ProjectLink = JSON.parse(json);\n\n if (!link || !link.projectId || !link.orgId) {\n throw new Error(\n `Project Settings are invalid. To link your project again, remove the ${vercelDir} directory.`\n );\n }\n\n return link;\n } catch (err: unknown) {\n // link file does not exists, project is not linked\n if (isOneOfErrNoExceptions(err, ['ENOENT', 'ENOTDIR'])) {\n return null;\n }\n\n // link file can't be read\n if (isError(err) && err.name === 'SyntaxError') {\n throw new Error(\n `Project Settings could not be retrieved. To link your project again, remove the ${vercelDir} directory.`\n );\n }\n\n throw err;\n }\n}\n\nexport function* traverseUpDirectories({\n start,\n base,\n maxDepth = 10,\n}: {\n start: string;\n base?: string;\n maxDepth?: number;\n}) {\n let current: string | undefined = normalize(start);\n const normalizedRoot = base ? normalize(base) : undefined;\n let depth = 0;\n while (current) {\n yield current;\n if (current === normalizedRoot) break;\n // Go up one directory\n const next = join(current, '..');\n current = next === current ? undefined : next;\n depth++;\n if (depth > maxDepth) {\n logger.debug(`Max traversal depth of ${maxDepth} reached`);\n break;\n }\n }\n}\n\n/**\n * Given a `start` directory, traverses up the directory hierarchy until\n * the nearest `.git/config` file is found. Returns the directory where\n * the Git config was found, or `undefined` when no Git repo was found.\n */\nexport async function findRepoRoot(\n cwd: string,\n start: string\n): Promise<string | undefined> {\n const REPO_JSON_PATH = join(VERCEL_DIR, VERCEL_DIR_REPO);\n /**\n * If the current repo is a git submodule or git worktree '.git' is a file\n * with a pointer to the \"parent\" git repository instead of a directory.\n */\n const GIT_PATH = isGitWorktreeOrSubmodule(cwd)\n ? posix.normalize('.git')\n : posix.normalize('.git/config');\n\n for (const current of traverseUpDirectories({ start })) {\n if (current === home) {\n // Sometimes the $HOME directory is set up as a Git repo\n // (for dotfiles, etc.). In this case it's safe to say that\n // this isn't the repo we're looking for. Bail.\n logger.debug('Arrived at home directory');\n break;\n }\n\n // if `.vercel/repo.json` exists (already linked),\n // then consider this the repo root\n const repoConfigPath = join(current, REPO_JSON_PATH);\n let stat = await lstat(repoConfigPath).catch((err) => {\n if (err.code !== 'ENOENT') throw err;\n });\n if (stat) {\n logger.debug(\n `Found repo config \"${REPO_JSON_PATH}\" - detected \"${current}\" as repo root`\n );\n return current;\n }\n\n // if `.git/config` exists (unlinked),\n // then consider this the repo root\n const gitConfigPath = join(current, GIT_PATH);\n stat = await lstat(gitConfigPath).catch((err) => {\n if (err.code !== 'ENOENT') throw err;\n });\n if (stat) {\n logger.debug(\n `Found git config \"${GIT_PATH}\" - detected \"${current}\" as repo root`\n );\n return current;\n }\n }\n\n logger.debug('Aborting search for repo root');\n}\n\nfunction getGitDirectory(cwd: string): string | null {\n try {\n const gitConfigPath = execSync('git rev-parse --git-dir', {\n cwd,\n encoding: 'utf8',\n stdio: ['ignore', 'pipe', 'ignore'],\n });\n\n return gitConfigPath;\n } catch (err: unknown) {\n if (err instanceof Error) {\n logger.debug(`Failed to get git directory: ${err.message}`);\n }\n return null;\n }\n}\n\nexport function isGitWorktreeOrSubmodule(cwd: string): boolean {\n const gitDir = getGitDirectory(cwd);\n\n if (gitDir === null) {\n return false;\n }\n\n const isGitWorktree = gitDir.includes('.git/worktrees/');\n const isGitSubmodule = gitDir.includes('.git/modules/');\n\n return isGitWorktree || isGitSubmodule;\n}\n\n/**\n * Given a directory path `cwd`, finds the root of the Git repository\n * and returns the parsed `.vercel/repo.json` file if the repository\n * has already been linked.\n */\nexport async function getRepoLink(cwd: string): Promise<RepoLink | undefined> {\n // Determine where the root of the repo is\n logger.debug(`Getting repo link for ${cwd}`);\n const rootPath = await findRepoRoot(cwd, './');\n if (!rootPath) {\n logger.debug('getRepoLink: No repo root found');\n return undefined;\n }\n\n // Read the `repo.json`, if this repo has already been linked\n const repoConfigPath = join(rootPath, VERCEL_DIR, VERCEL_DIR_REPO);\n logger.debug(`getRepoLink: Reading repo config path \"${repoConfigPath}\"`);\n try {\n const file = await readFile(repoConfigPath, 'utf8');\n const repoConfig: RepoProjectsConfig = JSON.parse(file);\n return { rootPath, repoConfig, repoConfigPath };\n } catch (err) {\n logger.debug(`Failed to parse ${repoConfigPath}: ${err}`);\n return undefined;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"web.js","sourceRoot":"","sources":["../../../src/lib/inspect/web.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web.js","sourceRoot":"","sources":["../../../src/lib/inspect/web.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Server } from 'node:http';\nimport chalk from 'chalk';\nimport open from 'open';\nimport { logger } from '../config/log.js';\nimport { getEnvVars } from './env.js';\nimport { getVercelDashboardUrl } from './vercel-api.js';\n\nexport const getHostUrl = (webPort: number) => `http://localhost:${webPort}`;\n\nlet httpServer: Server | null = null;\n\n/**\n * Check if a server is already listening on the given URL.\n */\nasync function isServerRunning(hostUrl: string): Promise<boolean> {\n try {\n const response = await fetch(hostUrl, { method: 'HEAD' });\n return response.ok;\n } catch {\n return false;\n }\n}\n\n/**\n * Start the @workflow/web server in the current process.\n */\nasync function startWebServer(webPort: number): Promise<boolean> {\n if (await isServerRunning(getHostUrl(webPort))) {\n logger.debug('Server is already running');\n return true;\n }\n\n try {\n logger.info('Starting web UI server...');\n const { startServer } = await import('@workflow/web/server');\n httpServer = await startServer(webPort);\n logger.success(chalk.green(`Web UI server started on port ${webPort}`));\n return true;\n } catch (error) {\n logger.error(`Failed to start server: ${error}`);\n return false;\n }\n}\n\n/**\n * Build a URL for opening the local web UI.\n *\n * The web UI reads world configuration from server-side environment variables.\n * Query params are only used for deep-linking to specific resources (resource/id, runId, etc.)\n */\nfunction buildWebUIUrl(\n hostUrl: string,\n resource: string,\n id: string | undefined,\n flags: Record<string, any>\n): string {\n const params = new URLSearchParams();\n\n // Deep-linking params\n params.set('resource', resource);\n if (id) {\n params.set('id', id);\n }\n\n // Optional deep-linking to specific run/step/hook\n for (const flagName of ['runId', 'stepId', 'hookId'] as const) {\n const value = flags[flagName];\n if (value !== undefined && value !== '' && value !== false) {\n params.set(flagName, String(value));\n }\n }\n\n const queryString = params.toString();\n return queryString ? `${hostUrl}?${queryString}` : hostUrl;\n}\n\n/**\n * Launch the web UI with the specified configuration.\n * This starts the server (if not running), opens the browser, then keeps the server running.\n *\n * World configuration is passed to the web server via environment variables.\n * The web UI reads these from process.env on the server side, not from query params.\n */\nexport async function launchWebUI(\n resource: string,\n id: string | undefined,\n flags: Record<string, any>,\n _cliVersion: string\n): Promise<void> {\n const envVars = getEnvVars();\n\n // Check if browser opening is disabled via flag or environment variable\n const disableBrowserOpen = flags.noBrowser;\n\n // Check if we should try to use the Vercel dashboard\n const vercelBackendNames = ['vercel', '@workflow/world-vercel'];\n const isVercelBackend = vercelBackendNames.includes(\n envVars.WORKFLOW_TARGET_WORLD\n );\n const teamSlug = envVars.WORKFLOW_VERCEL_TEAM;\n const projectName =\n envVars.WORKFLOW_VERCEL_PROJECT_NAME || envVars.WORKFLOW_VERCEL_PROJECT;\n\n // Check if user wants local UI via flag or environment variable\n const useLocalUi = flags.localUi;\n\n if (!useLocalUi && isVercelBackend) {\n logger.info(\n 'If you do not want to use the Vercel dashboard, use the --localUi flag or set WORKFLOW_LOCAL_UI=1 in your environment variables.'\n );\n }\n if (isVercelBackend && teamSlug && projectName && !useLocalUi) {\n logger.debug(\n `Checking Vercel dashboard availability for team: ${teamSlug}, project: ${projectName}`\n );\n\n const dashboardUrl = getVercelDashboardUrl(\n teamSlug,\n projectName,\n resource,\n id\n );\n\n if (disableBrowserOpen) {\n logger.info(chalk.cyan(`Vercel dashboard URL: ${dashboardUrl}`));\n logger.info(chalk.cyan('(Browser auto-open disabled)'));\n return;\n }\n\n logger.info(\n chalk.green(`Opening Vercel dashboard for workflows at: ${dashboardUrl}`)\n );\n try {\n await open(dashboardUrl);\n return; // Exit early since we opened the dashboard\n } catch (error) {\n logger.error(`Failed to open browser: ${error}`);\n logger.info(`Please open the link manually.`);\n return;\n }\n }\n\n // Fall back to local web UI\n const webPort = flags.webPort ?? 3456;\n const hostUrl = getHostUrl(webPort);\n const url = buildWebUIUrl(hostUrl, resource, id, flags);\n\n // Check if server is already running\n const alreadyRunning = await isServerRunning(hostUrl);\n\n if (alreadyRunning) {\n logger.info(\n chalk.cyan(`Web UI server is already running on port ${webPort}.`)\n );\n } else {\n // Start the server\n const started = await startWebServer(webPort);\n if (!started) {\n logger.error('Failed to start web UI server');\n return;\n }\n }\n\n // Open browser\n if (disableBrowserOpen) {\n logger.info(chalk.cyan(`Web UI available at: ${url}`));\n logger.info(chalk.cyan('(Browser auto-open disabled)'));\n } else {\n logger.info(chalk.cyan(`Opening browser to: ${url}`));\n try {\n await open(url);\n } catch (error) {\n logger.error(`Failed to open browser: ${error}`);\n logger.info(`Please open the link manually.`);\n }\n }\n\n // If we started the server, keep the process running\n if (!alreadyRunning && httpServer) {\n logger.info(chalk.cyan('Press Ctrl+C to stop the web UI server and exit'));\n\n // Keep the CLI process alive while the server is running\n await new Promise<void>((resolve) => {\n if (httpServer) {\n httpServer.on('close', () => resolve());\n } else {\n resolve();\n }\n });\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"update-check.js","sourceRoot":"","sources":["../../src/lib/update-check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-check.js","sourceRoot":"","sources":["../../src/lib/update-check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,YAAY;AACZ,MAAM,YAAY,GAAG,eAAe,CAAC;AACrC,MAAM,YAAY,GAAG,4BAA4B,CAAC;AAClD,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;AAC5D,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAChC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AAE1D,iDAAiD;AACjD,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,EAAE;IACrC,OACE,WACD,CAAC,GAAG,CAAC,CAAC;AACT,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,wBAAwB;IACtC,MAAM,IAAI,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC;IACnD,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,4BAA4B,CAAC,CAAC;AACrD,CAAC;AAcD;;;GAGG;AACH,SAAS,eAAe,CAAC,CAAS,EAAE,CAAS;IAC3C,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,EAAE;QACjC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAC/B,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CACxB,IAAwB,EACxB,IAAwB,EAChB,EAAE;QACV,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,CAAC,CAAC,qBAAqB;QACnD,IAAI,CAAC,IAAI,IAAI,IAAI;YAAE,OAAO,CAAC,CAAC,CAAC,6BAA6B;QAC1D,IAAI,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,CAAC,CAAC,CAAC,6BAA6B;QAC3D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAC;QAEnE,+CAA+C;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAChE,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACrB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAErB,mDAAmD;YACnD,IAAI,EAAE,KAAK,SAAS;gBAAE,OAAO,CAAC,CAAC,CAAC;YAChC,IAAI,EAAE,KAAK,SAAS;gBAAE,OAAO,CAAC,CAAC;YAE/B,iDAAiD;YACjD,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;YACxB,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;YACxB,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;YAChD,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;YAEhD,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;gBACrB,yCAAyC;gBACzC,IAAI,IAAI,GAAG,IAAI;oBAAE,OAAO,CAAC,CAAC;gBAC1B,IAAI,IAAI,GAAG,IAAI;oBAAE,OAAO,CAAC,CAAC,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,mDAAmD;gBACnD,IAAI,EAAE,GAAG,EAAE;oBAAE,OAAO,CAAC,CAAC;gBACtB,IAAI,EAAE,GAAG,EAAE;oBAAE,OAAO,CAAC,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,OAAO,CAAC,CAAC,CAAC,QAAQ;IACpB,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAEjC,8BAA8B;IAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QACvD,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IAC1D,CAAC;IAED,4DAA4D;IAC5D,sDAAsD;IACtD,MAAM,SAAS,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC9E,OAAO,SAAS,GAAG,CAAC,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,kBAAkB,CAC/B,cAAsB;IAEtB,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAE3E,MAAM,GAAG,GAAG,GAAG,YAAY,IAAI,YAAY,EAAE,CAAC;QAC9C,MAAM,CAAC,KAAK,CAAC,2BAA2B,GAAG,EAAE,CAAC,CAAC;QAE/C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,OAAO,EAAE;gBACP,MAAM,EAAE,kBAAkB;aAC3B;YACD,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC,CAAC;QAEH,YAAY,CAAC,SAAS,CAAC,CAAC;QAExB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,CAAC,KAAK,CACV,iCAAiC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAC1E,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAElC,CAAC;QAEF,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACpD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,YAAY,cAAc,aAAa,aAAa,EAAE,CAAC,CAAC;QACrE,OAAO,aAAa,CAAC;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAC1D,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,cAAsB;IAEtB,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAE/D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO;YACL,cAAc;YACd,WAAW,EAAE,KAAK;SACnB,CAAC;IACJ,CAAC;IAED,+DAA+D;IAC/D,MAAM,eAAe,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACtD,MAAM,kBAAkB,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvD,MAAM,WAAW,GACf,CAAC,CAAC,eAAe,IAAI,kBAAkB,CAAC;QACxC,eAAe,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAEjD,OAAO;QACL,cAAc;QACd,aAAa;QACb,WAAW;KACZ,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,SAAS,CAAC,SAAiB;IACxC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAsB,CAAC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,UAAU,CACvB,SAAiB,EACjB,IAAuB;IAEvB,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,kCAAkC,KAAK,EAAE,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,YAAY,CACzB,SAAiB,EACjB,cAAsB;IAEtB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAE1B,sCAAsC;QACtC,IAAI,MAAM,CAAC,cAAc,KAAK,cAAc,EAAE,CAAC;YAC7C,MAAM,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACnD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,gCAAgC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,MAAM,OAAO,GAAG,GAAG,GAAG,iBAAiB,CAAC;QAExC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CACV,uBAAuB,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,WAAW,CAC9D,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,cAAsB;IAEtB,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG,EAAE,CAAC;QACjD,MAAM,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACnE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;IAChD,CAAC;IAED,MAAM,SAAS,GAAG,wBAAwB,EAAE,CAAC;IAE7C,0BAA0B;IAC1B,IAAI,MAAM,YAAY,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,MAAM,EAAE,CAAC;YACX,+DAA+D;YAC/D,MAAM,eAAe,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC7D,MAAM,kBAAkB,GAAG,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC9D,OAAO;gBACL,cAAc,EAAE,MAAM,CAAC,cAAc;gBACrC,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,WAAW,EACT,CAAC,CAAC,eAAe,IAAI,kBAAkB,CAAC;oBACxC,eAAe,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,cAAc,CAAC;aAC/D,CAAC;QACJ,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CAAC,CAAC;IAEpD,8CAA8C;IAC9C,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;QACzB,MAAM,UAAU,CAAC,SAAS,EAAE;YAC1B,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { mkdir, readFile, writeFile } from 'node:fs/promises';\nimport { dirname, join } from 'node:path';\nimport XDGAppPaths from 'xdg-app-paths';\nimport { logger } from './config/log.js';\n\n// Constants\nconst PACKAGE_NAME = '@workflow/cli';\nconst NPM_REGISTRY = 'https://registry.npmjs.org';\nconst CACHE_DURATION_MS = 3 * 24 * 60 * 60 * 1000; // 3 days\nconst REQUEST_TIMEOUT_MS = 5000;\nconst VERSION_CHECK_CACHE_FILENAME = 'version-check.json';\n\n// Get XDG-compliant cache directory for workflow\nconst getXDGAppPaths = (app: string) => {\n return (\n XDGAppPaths as unknown as (app: string) => { dataDirs: () => string[] }\n )(app);\n};\n\n/**\n * Get the cache file path for version checks.\n */\nexport function getVersionCheckCacheFile(): string {\n const dirs = getXDGAppPaths('workflow').dataDirs();\n return join(dirs[0], VERSION_CHECK_CACHE_FILENAME);\n}\n\ninterface VersionCheckResult {\n currentVersion: string;\n latestVersion?: string;\n needsUpdate: boolean;\n}\n\ninterface CachedVersionData {\n currentVersion: string;\n latestVersion: string;\n timestamp: number;\n}\n\n/**\n * Compare two semver versions including pre-release tags\n * Returns true if version a is greater than version b\n */\nfunction compareVersions(a: string, b: string): boolean {\n const parseVersion = (v: string) => {\n const [base, prerelease] = v.split('-');\n const parts = base.split('.').map(Number);\n return { parts, prerelease };\n };\n\n const comparePrerelease = (\n pre1: string | undefined,\n pre2: string | undefined\n ): number => {\n if (!pre1 && !pre2) return 0; // both no prerelease\n if (!pre1 && pre2) return 1; // no prerelease > prerelease\n if (pre1 && !pre2) return -1; // prerelease < no prerelease\n if (typeof pre1 !== 'string' || typeof pre2 !== 'string') return 0;\n\n // Both have prerelease - compare them properly\n const parts1 = pre1.split('.');\n const parts2 = pre2.split('.');\n\n for (let i = 0; i < Math.max(parts1.length, parts2.length); i++) {\n const p1 = parts1[i];\n const p2 = parts2[i];\n\n // If one side is missing, it's less than the other\n if (p1 === undefined) return -1;\n if (p2 === undefined) return 1;\n\n // Try to parse as numbers for numeric comparison\n const num1 = Number(p1);\n const num2 = Number(p2);\n const isNum1 = !Number.isNaN(num1) && p1 !== '';\n const isNum2 = !Number.isNaN(num2) && p2 !== '';\n\n if (isNum1 && isNum2) {\n // Both are numbers - compare numerically\n if (num1 > num2) return 1;\n if (num1 < num2) return -1;\n } else {\n // At least one is non-numeric - compare as strings\n if (p1 > p2) return 1;\n if (p1 < p2) return -1;\n }\n }\n\n return 0; // equal\n };\n\n const versionA = parseVersion(a);\n const versionB = parseVersion(b);\n\n // Compare major, minor, patch\n for (let i = 0; i < 3; i++) {\n if (versionA.parts[i] > versionB.parts[i]) return true;\n if (versionA.parts[i] < versionB.parts[i]) return false;\n }\n\n // If versions are equal up to patch level, check prerelease\n // No prerelease is considered greater than prerelease\n const preResult = comparePrerelease(versionA.prerelease, versionB.prerelease);\n return preResult > 0;\n}\n\n/**\n * Fetch the latest version from npm registry\n */\nasync function fetchLatestVersion(\n currentVersion: string\n): Promise<string | null> {\n try {\n const controller = new AbortController();\n const timeoutId = setTimeout(() => controller.abort(), REQUEST_TIMEOUT_MS);\n\n const url = `${NPM_REGISTRY}/${PACKAGE_NAME}`;\n logger.debug(`Checking for updates at ${url}`);\n\n const response = await fetch(url, {\n headers: {\n Accept: 'application/json',\n },\n signal: controller.signal,\n });\n\n clearTimeout(timeoutId);\n\n if (!response.ok) {\n logger.debug(\n `Failed to fetch package info: ${response.status} ${response.statusText}`\n );\n return null;\n }\n\n const data = (await response.json()) as {\n 'dist-tags': { [tag: string]: string };\n };\n\n const latestVersion = data['dist-tags']['latest'];\n if (!latestVersion) {\n logger.debug('No latest version found in registry');\n return null;\n }\n\n logger.debug(`Current: ${currentVersion}, Latest: ${latestVersion}`);\n return latestVersion;\n } catch (error) {\n if (error instanceof Error && error.name === 'AbortError') {\n logger.debug('Version check timed out after 5 seconds');\n } else {\n logger.debug(`Error fetching version: ${error}`);\n }\n return null;\n }\n}\n\n/**\n * Check if there's a new version available\n * Returns the current and latest version if an update is available\n */\nexport async function checkForUpdate(\n currentVersion: string\n): Promise<VersionCheckResult> {\n const latestVersion = await fetchLatestVersion(currentVersion);\n\n if (!latestVersion) {\n return {\n currentVersion,\n needsUpdate: false,\n };\n }\n\n // Don't suggest prerelease updates to users on stable versions\n const currentIsStable = !currentVersion.includes('-');\n const latestIsPrerelease = latestVersion.includes('-');\n const needsUpdate =\n !(currentIsStable && latestIsPrerelease) &&\n compareVersions(latestVersion, currentVersion);\n\n return {\n currentVersion,\n latestVersion,\n needsUpdate,\n };\n}\n\n/**\n * Read cached version data from file\n */\nasync function readCache(cacheFile: string): Promise<CachedVersionData | null> {\n try {\n const content = await readFile(cacheFile, 'utf-8');\n const data = JSON.parse(content) as CachedVersionData;\n return data;\n } catch {\n return null;\n }\n}\n\n/**\n * Write version data to cache file\n */\nasync function writeCache(\n cacheFile: string,\n data: CachedVersionData\n): Promise<void> {\n try {\n await mkdir(dirname(cacheFile), { recursive: true });\n await writeFile(cacheFile, JSON.stringify(data, null, 2));\n } catch (error) {\n logger.debug(`Failed to write version cache: ${error}`);\n }\n}\n\n/**\n * Check if cache is still valid\n */\nasync function isCacheValid(\n cacheFile: string,\n currentVersion: string\n): Promise<boolean> {\n try {\n const cached = await readCache(cacheFile);\n if (!cached) return false;\n\n // Cache is invalid if version changed\n if (cached.currentVersion !== currentVersion) {\n logger.debug('Version changed, cache invalidated');\n return false;\n }\n\n // Check if cache is still fresh\n const now = Date.now();\n const age = now - cached.timestamp;\n const isValid = age < CACHE_DURATION_MS;\n\n if (!isValid) {\n logger.debug(\n `Cache expired (age: ${Math.floor(age / 1000 / 60)} minutes)`\n );\n }\n\n return isValid;\n } catch {\n return false;\n }\n}\n\n/**\n * Check for updates with filesystem caching\n * Cache is valid unless the local version changes\n *\n * Set WORKFLOW_NO_UPDATE_CHECK=1 to skip the update check entirely.\n */\nexport async function checkForUpdateCached(\n currentVersion: string\n): Promise<VersionCheckResult> {\n if (process.env.WORKFLOW_NO_UPDATE_CHECK === '1') {\n logger.debug('Skipping update check (WORKFLOW_NO_UPDATE_CHECK=1)');\n return { currentVersion, needsUpdate: false };\n }\n\n const cacheFile = getVersionCheckCacheFile();\n\n // Check if cache is valid\n if (await isCacheValid(cacheFile, currentVersion)) {\n logger.debug('Using cached version check result');\n const cached = await readCache(cacheFile);\n if (cached) {\n // Don't suggest prerelease updates to users on stable versions\n const currentIsStable = !cached.currentVersion.includes('-');\n const latestIsPrerelease = cached.latestVersion.includes('-');\n return {\n currentVersion: cached.currentVersion,\n latestVersion: cached.latestVersion,\n needsUpdate:\n !(currentIsStable && latestIsPrerelease) &&\n compareVersions(cached.latestVersion, cached.currentVersion),\n };\n }\n }\n\n // Perform fresh check\n logger.debug('Performing fresh version check');\n const result = await checkForUpdate(currentVersion);\n\n // Cache the result if we got a latest version\n if (result.latestVersion) {\n await writeCache(cacheFile, {\n currentVersion: result.currentVersion,\n latestVersion: result.latestVersion,\n timestamp: Date.now(),\n });\n }\n\n return result;\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@workflow/cli",
3
- "version": "5.0.0-beta.1",
3
+ "version": "5.0.0-beta.3",
4
4
  "description": "Command-line interface for Workflow SDK",
5
5
  "type": "module",
6
6
  "bin": {
@@ -55,15 +55,15 @@
55
55
  "tinyglobby": "0.2.15",
56
56
  "xdg-app-paths": "5.1.0",
57
57
  "zod": "4.3.6",
58
- "@workflow/builders": "5.0.0-beta.1",
59
- "@workflow/swc-plugin": "5.0.0-beta.1",
60
- "@workflow/utils": "5.0.0-beta.0",
61
- "@workflow/errors": "5.0.0-beta.0",
62
- "@workflow/core": "5.0.0-beta.1",
63
- "@workflow/web": "5.0.0-beta.1",
58
+ "@workflow/builders": "5.0.0-beta.3",
59
+ "@workflow/swc-plugin": "5.0.0-beta.3",
60
+ "@workflow/utils": "5.0.0-beta.1",
61
+ "@workflow/errors": "5.0.0-beta.1",
62
+ "@workflow/core": "5.0.0-beta.3",
63
+ "@workflow/web": "5.0.0-beta.3",
64
64
  "@workflow/world": "5.0.0-beta.1",
65
- "@workflow/world-local": "5.0.0-beta.1",
66
- "@workflow/world-vercel": "5.0.0-beta.1"
65
+ "@workflow/world-local": "5.0.0-beta.3",
66
+ "@workflow/world-vercel": "5.0.0-beta.3"
67
67
  },
68
68
  "scripts": {
69
69
  "build": "tsc && chmod +x bin/run.js",