@vibgrate/cli 2026.729.1 → 2026.729.2

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 (42) hide show
  1. package/dist/baseline-UOTGTJYT.js +9 -0
  2. package/dist/{baseline-MROWBNK7.js.map → baseline-UOTGTJYT.js.map} +1 -1
  3. package/dist/{chunk-QS5BTBRX.js → chunk-67YG3R5F.js} +3 -3
  4. package/dist/{chunk-QS5BTBRX.js.map → chunk-67YG3R5F.js.map} +1 -1
  5. package/dist/{chunk-2JV3J5NF.js → chunk-74ZMAOVF.js} +3 -3
  6. package/dist/{chunk-2JV3J5NF.js.map → chunk-74ZMAOVF.js.map} +1 -1
  7. package/dist/{chunk-YMHQZ24Q.js → chunk-CYC3ZI32.js} +5 -5
  8. package/dist/{chunk-YMHQZ24Q.js.map → chunk-CYC3ZI32.js.map} +1 -1
  9. package/dist/{chunk-CF2MLSOV.js → chunk-F6ZPUKED.js} +3 -3
  10. package/dist/{chunk-CF2MLSOV.js.map → chunk-F6ZPUKED.js.map} +1 -1
  11. package/dist/{chunk-OIWHR57Q.js → chunk-HDQG3QYV.js} +7 -4
  12. package/dist/chunk-HDQG3QYV.js.map +1 -0
  13. package/dist/{chunk-YKVNMNEM.js → chunk-P3QIO4ZU.js} +3 -3
  14. package/dist/{chunk-YKVNMNEM.js.map → chunk-P3QIO4ZU.js.map} +1 -1
  15. package/dist/{chunk-TQFY6OSV.js → chunk-PXXVLX7K.js} +6 -6
  16. package/dist/{chunk-TQFY6OSV.js.map → chunk-PXXVLX7K.js.map} +1 -1
  17. package/dist/{chunk-EEVZVXT2.js → chunk-QDZ47G45.js} +6 -6
  18. package/dist/{chunk-EEVZVXT2.js.map → chunk-QDZ47G45.js.map} +1 -1
  19. package/dist/{chunk-3IJB5UJI.js → chunk-VZRQUI54.js} +3 -3
  20. package/dist/{chunk-3IJB5UJI.js.map → chunk-VZRQUI54.js.map} +1 -1
  21. package/dist/chunk-WQE4OIZS.js +6 -0
  22. package/dist/{chunk-NQ4FSRXL.js.map → chunk-WQE4OIZS.js.map} +1 -1
  23. package/dist/cli.js +46 -31
  24. package/dist/cli.js.map +1 -1
  25. package/dist/index.d.ts +1 -1
  26. package/dist/index.js +6 -6
  27. package/dist/{interactive-R5VQGDWP.js → interactive-HLGJJFLI.js} +11 -11
  28. package/dist/{interactive-R5VQGDWP.js.map → interactive-HLGJJFLI.js.map} +1 -1
  29. package/dist/load-4MLIHGXF.js +9 -0
  30. package/dist/{load-WKIZF2AK.js.map → load-4MLIHGXF.js.map} +1 -1
  31. package/dist/{runtime-session-5NRB6BTR.js → runtime-session-5M6QZZOS.js} +6 -6
  32. package/dist/{runtime-session-5NRB6BTR.js.map → runtime-session-5M6QZZOS.js.map} +1 -1
  33. package/dist/{vg-mcp-bridge-YXQS6HTO.js → vg-mcp-bridge-ZCKBYQ2D.js} +5 -5
  34. package/dist/{vg-mcp-bridge-YXQS6HTO.js.map → vg-mcp-bridge-ZCKBYQ2D.js.map} +1 -1
  35. package/dist/{vgd-KC5RCOP6.js → vgd-TGGEAGQZ.js} +5 -5
  36. package/dist/vgd-TGGEAGQZ.js.map +1 -0
  37. package/package.json +1 -1
  38. package/dist/baseline-MROWBNK7.js +0 -9
  39. package/dist/chunk-NQ4FSRXL.js +0 -6
  40. package/dist/chunk-OIWHR57Q.js.map +0 -1
  41. package/dist/load-WKIZF2AK.js +0 -9
  42. package/dist/vgd-KC5RCOP6.js.map +0 -1
package/dist/cli.js CHANGED
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
- import { sha256Hex, generateKeypair, dssePae, DSSE_PAYLOAD_TYPE, keyId, registerBuild, readGlobal, applyGlobalOptions, ProgressBar, printLogo, fetchCatalog, resolveProviders, runBuild } from './chunk-EEVZVXT2.js';
3
- export { runBuild } from './chunk-EEVZVXT2.js';
2
+ import { sha256Hex, generateKeypair, dssePae, DSSE_PAYLOAD_TYPE, keyId, registerBuild, readGlobal, applyGlobalOptions, ProgressBar, printLogo, fetchCatalog, resolveProviders, runBuild } from './chunk-QDZ47G45.js';
3
+ export { runBuild } from './chunk-QDZ47G45.js';
4
4
  import { CONTEXT_POLICY_VERSION, computeFcsReport, renderFcsReportMarkdown, createTrajectoryCollector, runAgent } from './chunk-2ZHWF7C6.js';
5
- import { loadAdvancedScanHook, baselineCommand } from './chunk-CF2MLSOV.js';
5
+ import { loadAdvancedScanHook, baselineCommand } from './chunk-F6ZPUKED.js';
6
6
  import { runCodeSession } from './chunk-PRGCCW7D.js';
7
7
  import { summarizeDiffs, ScriptedProvider } from './chunk-RZEXHDCF.js';
8
8
  import { disableColor, info, c, json, out } from './chunk-CT5BS56U.js';
9
- import { VGD_PROTOCOL_VERSION, startVgdServer } from './chunk-2JV3J5NF.js';
9
+ import { VGD_PROTOCOL_VERSION, startVgdServer } from './chunk-74ZMAOVF.js';
10
10
  import './chunk-5I4VSBWQ.js';
11
11
  import './chunk-IS7VTH2Q.js';
12
12
  import { init_resolve_ollama, gatherSystemMemory, resolveOllamaBinary, hasOllamaBinary, resolve_ollama_exports } from './chunk-OWSFZQOP.js';
@@ -21,12 +21,12 @@ import { buildIdentifierTrieFromGraph } from './chunk-JIBOJTGS.js';
21
21
  import './chunk-7AVYKZEM.js';
22
22
  import { buildModelInstallPlan } from './chunk-WHJMS7XC.js';
23
23
  import { ensurePackage, ensureUnavailableMessage } from './chunk-REIGWTTH.js';
24
- import { serveStdio, exportGraph, GraphSource, createServer, formatForExt } from './chunk-TQFY6OSV.js';
25
- import { CliError, ExitCode, refreshIfStale, driftCount, ASSISTANTS, detectAssistants, usageError, detectServeLaunch, installAssistant, writeNavigationConfig, uninstallAssistant, buildGraph, writeSnapshot, probeFreshness, discover, assistantById, SMALL_REPO_FILES, SKIP_DIRS, SKIP_FILES } from './chunk-YMHQZ24Q.js';
26
- import { resolveDsn, resolveIngestHost, dashHostForIngestHost, availableRegionIds, createWorkspaceDsn, writeStoredCredentials, credentialsPath, findGitRoot, ensureGitignored, gitignoreEntryForCredentials, clearStoredCredentials, parseDsn as parseDsn$1, uploadScanArtifact, ingestHostForRegionId, dsnCommand, pushCommand, countTokens, shortestPath, pathDisconnect, testsToRun, detectRunner, coveringTests, FREE_PACK, readScanArtifact, publishPrivateLibrary, assessDocQuality, symbolsFromApi, fetchHostedDocsCached, selectForBudget, hostedBase, readStoredCredentials, projectCredentialsPath, homeCredentialsPath } from './chunk-QS5BTBRX.js';
24
+ import { serveStdio, exportGraph, GraphSource, createServer, formatForExt } from './chunk-PXXVLX7K.js';
25
+ import { CliError, ExitCode, refreshIfStale, driftCount, ASSISTANTS, detectAssistants, usageError, detectServeLaunch, installAssistant, writeNavigationConfig, uninstallAssistant, buildGraph, writeSnapshot, probeFreshness, discover, assistantById, SMALL_REPO_FILES, SKIP_DIRS, SKIP_FILES } from './chunk-CYC3ZI32.js';
26
+ import { resolveDsn, resolveIngestHost, dashHostForIngestHost, availableRegionIds, createWorkspaceDsn, writeStoredCredentials, credentialsPath, findGitRoot, ensureGitignored, gitignoreEntryForCredentials, clearStoredCredentials, parseDsn as parseDsn$1, uploadScanArtifact, ingestHostForRegionId, dsnCommand, pushCommand, countTokens, shortestPath, pathDisconnect, testsToRun, detectRunner, coveringTests, FREE_PACK, readScanArtifact, publishPrivateLibrary, assessDocQuality, symbolsFromApi, fetchHostedDocsCached, selectForBudget, hostedBase, readStoredCredentials, projectCredentialsPath, homeCredentialsPath } from './chunk-67YG3R5F.js';
27
27
  import './chunk-IPICO2RV.js';
28
28
  import { inventory, enrichOnline, ECOSYSTEMS, catalogPath, libDir, loadCatalog, driftFor, addLibrary, resolveLib, libId, resolveVersion, readDoc, localPackageDocs, localApiSurface } from './chunk-G4HTI4ZM.js';
29
- import { writeDefaultConfig, parseDsn, detectVcs, computeRepoFingerprint, resolveRepositoryName, fetchScanPreflight, runCoreScan, loadConfig, prepareCompressedUpload, computeDriftScore, titleBox, projectTypeToVulnEcosystem, driftBar, gitHistoryAvailable, buildVersionTimelines, findPackageAnyEcosystem, normalizeConstraint, findVersionCrossings, versionSatisfies, PROJECT_TYPE_TO_OSV_ECOSYSTEM, fetchRiskySymbols } from './chunk-OIWHR57Q.js';
29
+ import { writeDefaultConfig, parseDsn, detectVcs, computeRepoFingerprint, resolveRepositoryName, fetchScanPreflight, runCoreScan, loadConfig, prepareCompressedUpload, computeDriftScore, titleBox, projectTypeToVulnEcosystem, driftBar, gitHistoryAvailable, buildVersionTimelines, findPackageAnyEcosystem, normalizeConstraint, findVersionCrossings, versionSatisfies, PROJECT_TYPE_TO_OSV_ECOSYSTEM, fetchRiskySymbols } from './chunk-HDQG3QYV.js';
30
30
  import { recordCliCall, CLI_TOOL_ALIASES, savingsLedgerPath, clearSavings, readSavings, readUsage, readModelSavings, CAPSULE_RANKING_VERSION, SAVINGS_TOOLS, sanitizeClient } from './chunk-US2DAKCM.js';
31
31
  import { ensureDir, pathExists, readJsonFile, writeTextFile, writeJsonFile } from './chunk-CRAMOEBE.js';
32
32
  import { resolveOne } from './chunk-J7LKEB2R.js';
@@ -36,8 +36,8 @@ import { init_cli_invocation, resolveCliInvocation, NPX_INVOCATION } from './chu
36
36
  import { freeBytesOnVolume, weightStoreDir, listCachedWeights, ensureWeightCached, catalogIntegrityReport } from './chunk-OV4KGXPD.js';
37
37
  import { resolvedGrammarFiles, grammarSetVersion } from './chunk-UTNNGKKX.js';
38
38
  import './chunk-RXP66R2E.js';
39
- import { resolveGraphPath, renderReport, loadGraph, loadGraphFileWithSnapshot, writeArtifacts, vibgrateDir, mapFileExists, SCHEMA_VERSION } from './chunk-YKVNMNEM.js';
40
- import { VERSION } from './chunk-NQ4FSRXL.js';
39
+ import { resolveGraphPath, renderReport, loadGraph, loadGraphFileWithSnapshot, writeArtifacts, vibgrateDir, mapFileExists, SCHEMA_VERSION } from './chunk-P3QIO4ZU.js';
40
+ import { VERSION } from './chunk-WQE4OIZS.js';
41
41
  import { cacheDir, serializeGraph, stableStringify } from './chunk-ZKNB4YH4.js';
42
42
  import './chunk-BWPBB45M.js';
43
43
  import { canonicalize, hashString, hashBytes } from './chunk-JFGYT6BI.js';
@@ -53,11 +53,12 @@ import { Command, CommanderError, Option } from 'commander';
53
53
  import * as os from 'os';
54
54
  import * as crypto3 from 'crypto';
55
55
  import { randomUUID } from 'crypto';
56
+ import * as semver3 from 'semver';
57
+ import semver3__default from 'semver';
56
58
  import { execSync, spawn, spawnSync, execFileSync } from 'child_process';
57
59
  import * as readline from 'readline';
58
60
  import chalk7 from 'chalk';
59
61
  import * as fs20 from 'fs/promises';
60
- import semver2 from 'semver';
61
62
 
62
63
  init_cli_invocation();
63
64
  function registerStatus(program) {
@@ -2978,9 +2979,19 @@ function osvEcosystem(type) {
2978
2979
  return null;
2979
2980
  }
2980
2981
  }
2982
+ function inRangeStep(dep) {
2983
+ const target = dep.latestSatisfying;
2984
+ if (!target || !dep.resolvedVersion) return null;
2985
+ if (!semver3.valid(target) || !semver3.valid(dep.resolvedVersion)) return null;
2986
+ if (!semver3.gt(target, dep.resolvedVersion)) return null;
2987
+ const diff2 = semver3.diff(dep.resolvedVersion, target);
2988
+ return { version: target, size: diff2 === "patch" || diff2 === "prepatch" ? "patch" : "minor" };
2989
+ }
2981
2990
  function inlineLabel(dep) {
2982
2991
  const bits = [];
2983
2992
  if (dep.drift === "major-behind") {
2993
+ const step2 = inRangeStep(dep);
2994
+ if (step2) bits.push(`${step2.size} behind`, step2.version);
2984
2995
  const n = dep.majorsBehind ?? 1;
2985
2996
  bits.push(`${n} major behind`);
2986
2997
  } else if (dep.drift === "minor-behind") {
@@ -3025,6 +3036,10 @@ function hoverMarkdown(dep, contribution) {
3025
3036
  lines.push(`| | |`);
3026
3037
  lines.push(`|---|---|`);
3027
3038
  lines.push(`| yours | \`${yours}\` |`);
3039
+ const step2 = inRangeStep(dep);
3040
+ if (step2 && step2.version !== dep.latestStable) {
3041
+ lines.push(`| latest in range | \`${step2.version}\` |`);
3042
+ }
3028
3043
  lines.push(`| latest | \`${dep.latestStable}\` |`);
3029
3044
  const journey = versionJourney(yours, dep.latestStable);
3030
3045
  if (journey) lines.push(`| journey | ${journey} |`);
@@ -6120,7 +6135,7 @@ function registerCode(program) {
6120
6135
  try {
6121
6136
  const { parseMode: parseMode2, resolveMode: resolveMode2, readOrchestratorState: readOrchestratorState2, activePin: activePin2 } = await import('./model-orchestrator-LHYPJBFH.js');
6122
6137
  const { gatherSystemMemory: gatherSystemMemory2 } = await import('./local-runtime-2ED33KK6.js');
6123
- const { loadGraph: loadGraph2 } = await import('./load-WKIZF2AK.js');
6138
+ const { loadGraph: loadGraph2 } = await import('./load-4MLIHGXF.js');
6124
6139
  const state = readOrchestratorState2();
6125
6140
  const mode = parseMode2(modeFlag) ?? state.defaultMode ?? void 0;
6126
6141
  const pin = mode ? activePin2(mode, state) : null;
@@ -6204,7 +6219,7 @@ function registerCode(program) {
6204
6219
  if (!(process.stdin.isTTY && process.stdout.isTTY)) {
6205
6220
  throw usageError('say what to change, e.g. `vg code "add a --timeout flag to the scan command"` (guided mode needs an interactive terminal)');
6206
6221
  }
6207
- const { runInteractive } = await import('./interactive-R5VQGDWP.js');
6222
+ const { runInteractive } = await import('./interactive-HLGJJFLI.js');
6208
6223
  await runInteractive(
6209
6224
  rootOf(global),
6210
6225
  global,
@@ -6293,11 +6308,11 @@ function registerCode(program) {
6293
6308
  const { loadOrDiscoverFederation } = await import('./federation-MDQPO3PW.js');
6294
6309
  const { resolveExecutionEnv } = await import('./execution-env-4MS5AYAN.js');
6295
6310
  const { resolveModelExecutionProfile, mergeModelExecutionProfile } = await import('./model-execution-profile-ELWF3Z6H.js');
6296
- const { startCodeRuntimeSession } = await import('./runtime-session-5NRB6BTR.js');
6311
+ const { startCodeRuntimeSession } = await import('./runtime-session-5M6QZZOS.js');
6297
6312
  const { resolveGraphBackend } = await import('./graph-backend-GBL33GMW.js');
6298
6313
  const { detectGitRef } = await import('./git-ref-RSRAN4OH.js');
6299
6314
  const { repositoryIdFromRoot } = await import('./paths-62AKTFSR.js');
6300
- const { vgdRequest: vgdRequest2 } = await import('./vgd-KC5RCOP6.js');
6315
+ const { vgdRequest: vgdRequest2 } = await import('./vgd-TGGEAGQZ.js');
6301
6316
  const federation = loadOrDiscoverFederation(root2);
6302
6317
  const modelProfile = mergeModelExecutionProfile(
6303
6318
  resolveModelExecutionProfile({
@@ -6343,7 +6358,7 @@ ${res.stderr}` : ""),
6343
6358
  exitCode: res.status ?? 1
6344
6359
  };
6345
6360
  };
6346
- const { createVgBuiltinMcpTools, mergeExternalToolsets } = await import('./vg-mcp-bridge-YXQS6HTO.js');
6361
+ const { createVgBuiltinMcpTools, mergeExternalToolsets } = await import('./vg-mcp-bridge-ZCKBYQ2D.js');
6347
6362
  const vgBuiltin = createVgBuiltinMcpTools({
6348
6363
  getGraph: () => graph,
6349
6364
  root: root2,
@@ -6425,7 +6440,7 @@ ${res.stderr}` : ""),
6425
6440
  if (!autonomous && !tty) {
6426
6441
  throw usageError("the agent approves each edit/command \u2014 run in a terminal to approve interactively, or pass --auto to run autonomously (or --single for a one-shot diff).");
6427
6442
  }
6428
- const { agentTask } = await import('./interactive-R5VQGDWP.js');
6443
+ const { agentTask } = await import('./interactive-HLGJJFLI.js');
6429
6444
  const { nodeCodeFs } = await import('./session-2JT4AUZT.js');
6430
6445
  const { TtyPrompter } = await import('./ui-K7D3BCHD.js');
6431
6446
  let priorSummary;
@@ -6435,7 +6450,7 @@ ${res.stderr}` : ""),
6435
6450
  if (prev) priorSummary = summarizeSession(prev);
6436
6451
  }
6437
6452
  const prompter = tty ? new TtyPrompter() : void 0;
6438
- const { createVgBuiltinMcpTools, mergeExternalToolsets } = await import('./vg-mcp-bridge-YXQS6HTO.js');
6453
+ const { createVgBuiltinMcpTools, mergeExternalToolsets } = await import('./vg-mcp-bridge-ZCKBYQ2D.js');
6439
6454
  const vgBuiltin = createVgBuiltinMcpTools({
6440
6455
  getGraph: () => graph,
6441
6456
  root: root2,
@@ -6459,11 +6474,11 @@ ${res.stderr}` : ""),
6459
6474
  const { loadFederation } = await import('./federation-MDQPO3PW.js');
6460
6475
  const { resolveExecutionEnv } = await import('./execution-env-4MS5AYAN.js');
6461
6476
  const { resolveModelExecutionProfile, mergeModelExecutionProfile } = await import('./model-execution-profile-ELWF3Z6H.js');
6462
- const { startCodeRuntimeSession } = await import('./runtime-session-5NRB6BTR.js');
6477
+ const { startCodeRuntimeSession } = await import('./runtime-session-5M6QZZOS.js');
6463
6478
  const { resolveGraphBackend } = await import('./graph-backend-GBL33GMW.js');
6464
6479
  const { detectGitRef } = await import('./git-ref-RSRAN4OH.js');
6465
6480
  const { repositoryIdFromRoot } = await import('./paths-62AKTFSR.js');
6466
- const { vgdRequest: vgdRequest2 } = await import('./vgd-KC5RCOP6.js');
6481
+ const { vgdRequest: vgdRequest2 } = await import('./vgd-TGGEAGQZ.js');
6467
6482
  const federation = loadFederation(root2);
6468
6483
  const modelProfile = mergeModelExecutionProfile(
6469
6484
  resolveModelExecutionProfile({
@@ -7303,7 +7318,7 @@ function registerDaemon(program) {
7303
7318
  if (!await vgdIsRunning({ socketPath })) {
7304
7319
  throw new CliError(`vgd is not running \u2014 start it with \`vg daemon ensure\` (${socketPath})`, ExitCode.NOT_FOUND);
7305
7320
  }
7306
- const { loadGraph: loadGraph2 } = await import('./load-WKIZF2AK.js');
7321
+ const { loadGraph: loadGraph2 } = await import('./load-4MLIHGXF.js');
7307
7322
  const { detectGitRef } = await import('./git-ref-RSRAN4OH.js');
7308
7323
  const { repositoryIdFromRoot } = await import('./paths-62AKTFSR.js');
7309
7324
  const opts = this.opts();
@@ -7652,7 +7667,7 @@ var initCommand = new Command("init").description("Initialize vibgrate in a proj
7652
7667
  console.log(chalk7.green("\u2714") + ` Created ${chalk7.bold("vibgrate.config.ts")}`);
7653
7668
  }
7654
7669
  if (opts.baseline) {
7655
- const { runBaseline } = await import('./baseline-MROWBNK7.js');
7670
+ const { runBaseline } = await import('./baseline-UOTGTJYT.js');
7656
7671
  await runBaseline(rootDir);
7657
7672
  }
7658
7673
  console.log("");
@@ -8953,7 +8968,7 @@ async function fetchLatestVersion() {
8953
8968
  if (!response.ok) return null;
8954
8969
  const data = await response.json();
8955
8970
  const latest = data.version;
8956
- if (!latest || !semver2.valid(latest)) return null;
8971
+ if (!latest || !semver3__default.valid(latest)) return null;
8957
8972
  await writeCache({ latest, checkedAt: Date.now() });
8958
8973
  return latest;
8959
8974
  } catch {
@@ -9092,8 +9107,8 @@ var updateCommand = new Command("update").description("Update vibgrate to the la
9092
9107
  console.error(chalk7.red("Could not reach the npm registry. Check your network connection."));
9093
9108
  process.exit(1);
9094
9109
  }
9095
- const semver3 = await import('semver');
9096
- if (!semver3.gt(latest, VERSION)) {
9110
+ const semver4 = await import('semver');
9111
+ if (!semver4.gt(latest, VERSION)) {
9097
9112
  console.log(chalk7.green("\u2714") + ` You are on the latest version (${VERSION}).`);
9098
9113
  if (opts.reap !== false) reapAndReport(process.cwd(), VERSION);
9099
9114
  return;
@@ -10971,9 +10986,9 @@ async function loadReleases(root2, productId) {
10971
10986
  return releases;
10972
10987
  }
10973
10988
  function coerce(version) {
10974
- const parsed = semver2.parse(version, { loose: true });
10989
+ const parsed = semver3__default.parse(version, { loose: true });
10975
10990
  if (parsed) return parsed.version;
10976
- const c2 = semver2.coerce(version);
10991
+ const c2 = semver3__default.coerce(version);
10977
10992
  return c2 ? c2.version : null;
10978
10993
  }
10979
10994
  function versionAffected(version, range) {
@@ -10983,11 +10998,11 @@ function versionAffected(version, range) {
10983
10998
  if (!range.introduced && !range.fixed && !range.versions) return false;
10984
10999
  const introduced = range.introduced ? coerce(range.introduced) : "0.0.0";
10985
11000
  if (!introduced) return false;
10986
- if (semver2.lt(v, introduced)) return false;
11001
+ if (semver3__default.lt(v, introduced)) return false;
10987
11002
  if (range.fixed) {
10988
11003
  const fixed = coerce(range.fixed);
10989
11004
  if (!fixed) return false;
10990
- if (semver2.gte(v, fixed)) return false;
11005
+ if (semver3__default.gte(v, fixed)) return false;
10991
11006
  }
10992
11007
  return true;
10993
11008
  }
@@ -11068,8 +11083,8 @@ function computeExposure(input) {
11068
11083
  productName: product.name,
11069
11084
  classification: product.classification,
11070
11085
  status,
11071
- affectedVersions: [...affectedVersions].sort(semver2.compareLoose),
11072
- releases: affectedReleases.sort((a, b) => semver2.compareLoose(a.version, b.version)),
11086
+ affectedVersions: [...affectedVersions].sort(semver3__default.compareLoose),
11087
+ releases: affectedReleases.sort((a, b) => semver3__default.compareLoose(a.version, b.version)),
11073
11088
  memberStates: product.memberStates,
11074
11089
  supportStatus: support.status,
11075
11090
  supportDetail: support.detail