upstream-radar 0.18.0 → 0.19.1

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 (50) hide show
  1. package/README.md +19 -3
  2. package/cordis.patch.yml +2 -0
  3. package/dist/src/cli.js +13 -3
  4. package/dist/src/cli.js.map +1 -1
  5. package/dist/src/compatibility.d.ts +4 -1
  6. package/dist/src/compatibility.d.ts.map +1 -1
  7. package/dist/src/compatibility.js +57 -6
  8. package/dist/src/compatibility.js.map +1 -1
  9. package/dist/src/dsh-analysis.d.ts.map +1 -1
  10. package/dist/src/dsh-analysis.js +4 -2
  11. package/dist/src/dsh-analysis.js.map +1 -1
  12. package/dist/src/dsh-plugin.d.ts +3 -0
  13. package/dist/src/dsh-plugin.d.ts.map +1 -1
  14. package/dist/src/dsh-plugin.js +6 -2
  15. package/dist/src/dsh-plugin.js.map +1 -1
  16. package/dist/src/index.d.ts +4 -3
  17. package/dist/src/index.d.ts.map +1 -1
  18. package/dist/src/index.js +3 -2
  19. package/dist/src/index.js.map +1 -1
  20. package/dist/src/init.d.ts +2 -0
  21. package/dist/src/init.d.ts.map +1 -1
  22. package/dist/src/init.js +2 -0
  23. package/dist/src/init.js.map +1 -1
  24. package/dist/src/npm-candidate.d.ts +23 -0
  25. package/dist/src/npm-candidate.d.ts.map +1 -0
  26. package/dist/src/npm-candidate.js +71 -0
  27. package/dist/src/npm-candidate.js.map +1 -0
  28. package/dist/src/npm.d.ts +11 -0
  29. package/dist/src/npm.d.ts.map +1 -1
  30. package/dist/src/npm.js +51 -0
  31. package/dist/src/npm.js.map +1 -1
  32. package/dist/src/radar-render.d.ts.map +1 -1
  33. package/dist/src/radar-render.js +7 -2
  34. package/dist/src/radar-render.js.map +1 -1
  35. package/dist/src/radar-state.d.ts.map +1 -1
  36. package/dist/src/radar-state.js +48 -1
  37. package/dist/src/radar-state.js.map +1 -1
  38. package/dist/src/radar-status.d.ts.map +1 -1
  39. package/dist/src/radar-status.js +3 -1
  40. package/dist/src/radar-status.js.map +1 -1
  41. package/dist/src/radar-types.d.ts +27 -1
  42. package/dist/src/radar-types.d.ts.map +1 -1
  43. package/dist/src/radar.d.ts +5 -2
  44. package/dist/src/radar.d.ts.map +1 -1
  45. package/dist/src/radar.js +175 -1
  46. package/dist/src/radar.js.map +1 -1
  47. package/dist/src/version.d.ts +1 -1
  48. package/dist/src/version.js +1 -1
  49. package/docs/README.zh-CN.md +19 -3
  50. package/package.json +2 -2
package/README.md CHANGED
@@ -69,6 +69,18 @@ OSV advisory or npm release
69
69
 
70
70
  **No matching installed path means no Agent wake-up.** Version matching and compatibility facts are calculated by code; the model handles only repository-specific judgment.
71
71
 
72
+ ## The missing middle: candidate dependency graphs
73
+
74
+ An upgrade can look clean at the top level while introducing a vulnerable transitive package. Radar therefore does not stop at `plugin@1.3.0`'s manifest:
75
+
76
+ ```text
77
+ candidate plugin@1.1.0
78
+ └── logger@4.1.0
79
+ └── parser@2.9.0 ← OSV advisory
80
+ ```
81
+
82
+ For the earliest bounded set of newer versions, Radar resolves npm metadata into a temporary `package-lock.json` with lifecycle scripts disabled, queries every resolved node against OSV, and keeps the exact path in the compatibility event. A missing required edge, resolver failure, or OSV failure is shown as incomplete or unavailable; it is never presented as “no vulnerability found”. Later versions are marked as unchecked when the candidate list is larger than the bounded prefix. The result is still a starting point for DSH project analysis, not an upgrade certificate.
83
+
72
84
  ## See one incident
73
85
 
74
86
  If an advisory affects only one of two installed `parser` versions, Radar reports the path that actually matched:
@@ -91,7 +103,7 @@ That incident becomes a plugin-originated DSH notice. It is not copied into a ge
91
103
  | Upstream signal | Radar proves deterministically | DSH Agent investigates |
92
104
  | --- | --- | --- |
93
105
  | Vulnerability or malicious package | affected `name@version`, every installed path, fixed versions, incident state | whether project code reaches it, attacker input can reach it, and the least disruptive fix |
94
- | Candidate npm release | version boundary and Node.js, peer, export, entrypoint, bundle, and dependency changes; exact candidate OSV status; when possible, the first newer version without a deterministic blocker or known vulnerability | which APIs or Cordis configuration would break and what migration is appropriate; the first candidate is never treated as a safety certificate |
106
+ | Candidate npm release | version boundary and Node.js, peer, export, entrypoint, bundle, and dependency changes; exact direct and transitive candidate OSV status; when possible, the first newer version without a deterministic blocker or known vulnerable path | which APIs or Cordis configuration would break and what migration is appropriate; the first candidate is never treated as a safety certificate |
95
107
 
96
108
  ## Install in DSH
97
109
 
@@ -119,7 +131,7 @@ dsh --profile web --patch ./upstream-radar.dsh.yml
119
131
  pnpm dlx --package=upstream-radar@latest upstream-radar radar status ./upstream-radar.config.json
120
132
  ```
121
133
 
122
- The generated overlay points DSH at the config and state files explicitly and records the selected profile. Before each native DSH polling cycle, and before each CLI `radar check` or `radar watch` cycle, it re-reads that profile's installed graph, so later plugin installs, upgrades, removals, and host-runtime changes are not silently missed. If the refresh fails, that cycle stops without replacing the last durable state. `radar status` remains read-only and reports whether a check has completed, which source is unhealthy, whether dependency coverage is complete, active incidents, and pending DSH tasks. `radar compare` remains a manual comparison of the files you provide. If you prefer environment variables or need to override the polling interval, omit `--dsh-patch` and use `UPSTREAM_RADAR_CONFIG`, `UPSTREAM_RADAR_STATE`, and `UPSTREAM_RADAR_INTERVAL_SECONDS` as before.
134
+ The generated overlay points DSH at the config and state files explicitly and records the selected profile. If `--registry <url>` was used during initialization, the same registry is carried into the running DSH monitor; otherwise release and candidate checks use the public npm registry. Before each native DSH polling cycle, and before each CLI `radar check` or `radar watch` cycle, it re-reads that profile's installed graph, so later plugin installs, upgrades, removals, and host-runtime changes are not silently missed. If the refresh fails, that cycle stops without replacing the last durable state. `radar status` remains read-only and reports whether a check has completed, which source is unhealthy, whether dependency coverage is complete, active incidents, and pending DSH tasks. `radar compare` remains a manual comparison of the files you provide. If you prefer environment variables or need to override the polling interval, omit `--dsh-patch` and use `UPSTREAM_RADAR_CONFIG`, `UPSTREAM_RADAR_STATE`, `UPSTREAM_RADAR_INTERVAL_SECONDS`, `UPSTREAM_RADAR_REGISTRY`, and `UPSTREAM_RADAR_DEEP_CANDIDATES` as before.
123
135
 
124
136
  The generated graph is the actual installed profile graph. DSH also maintains a shared `profiles/node_modules` host plane for built-in runtime packages; Radar includes packages resolved from that plane, marks them as `dsh-host`, and still checks their exact versions for advisories. If a required dependency is declared but cannot be resolved from either place, it remains visible as incomplete coverage instead of being treated as absent. Missing optional platform packages are retained as evidence but do not make coverage incomplete. Passing `--registry <url>` explicitly selects the older public npm artifact graph path, which is useful for comparing a profile against registry resolution but is not the default.
125
137
 
@@ -127,6 +139,8 @@ For a hand-written or CI fixture, use [the example inventory](examples/radar/con
127
139
 
128
140
  Once running, Radar polls OSV, npm, and public GitHub Releases, persists incident state before delivery, and submits only changed incidents to the first live root DSH Agent. If a source is temporarily unavailable, Radar keeps the last confirmed state instead of claiming that the project is clean, continues delivering already queued tasks, and creates one source-health notice after three consecutive failures.
129
141
 
142
+ Each release cycle also checks a bounded prefix of candidate dependency graphs. This is enabled by default in the DSH adapter and CLI; use `--no-deep-candidates` only when you deliberately want manifest-only compatibility checks. The graph resolver is isolated in a temporary directory and uses `package-lock-only` plus `ignore-scripts`, so candidate package code is not loaded or executed.
143
+
130
144
  ## Run the proof
131
145
 
132
146
  Boot a real DSH `headless` profile with the packed Upstream Radar bundle installed:
@@ -243,6 +257,7 @@ Advisories, release notes, links, package names, and repository strings remain u
243
257
  - DSH shared host-runtime dependency resolution, with profile and `dsh-host` packages kept distinct in both graphs and alerts;
244
258
  - exact-version OSV vulnerability and malicious-package matching;
245
259
  - npm release monitoring for plugins and DSH/Cordis packages, accepting only a candidate newer than the installed exact version (a regressed `latest` dist-tag is not a breaking update), with public GitHub Release notes attached when an exact candidate tag is available;
260
+ - bounded transitive dependency graph checks for the earliest candidate versions, exact OSV matching for every resolved node, vulnerable path evidence, and explicit incomplete/unavailable coverage;
246
261
  - durable incident state with current-task replacement and resolution;
247
262
  - native DSH bundle installation, startup polling, `agent/created` retry, and plugin-source attribution;
248
263
  - automatic selection of the only DSH profile with third-party bundles, plus a network-free `radar status` snapshot;
@@ -258,8 +273,9 @@ pnpm dlx --package=upstream-radar@latest upstream-radar inspect npm:dsh-cloudfla
258
273
 
259
274
  ## Current boundaries
260
275
 
261
- - `init` discovers the only DSH profile with third-party bundles when `--profile` is omitted; multiple candidates still require an explicit profile. By default it follows the installed DSH `node_modules` tree, so pnpm overrides and local resolution choices are included. `--dsh-patch <path>` writes an explicit DSH overlay so first startup needs no environment variables. A native pnpm lockfile parser for pre-install/CI inspection is still deferred.
276
+ - `init` discovers the only DSH profile with third-party bundles when `--profile` is omitted; multiple candidates still require an explicit profile. By default it follows the installed DSH `node_modules` tree, so pnpm overrides and local resolution choices are included. `--dsh-patch <path>` writes an explicit DSH overlay so first startup needs no environment variables and preserves an explicitly selected registry. A native pnpm lockfile parser for pre-install/CI inspection is still deferred.
262
277
  - A graph with unresolved required dependency declarations is marked as incomplete coverage; optional packages that are not installed for the current platform remain visible but do not create a false required-dependency alert.
278
+ - Candidate upgrade graphs are resolved only for a bounded earliest prefix. A candidate with an incomplete or unavailable graph is not recommended; later unqueried candidates remain visibly unchecked. Pass `--no-deep-candidates` to opt out of this extra registry work.
263
279
  - `radar status` is a local snapshot only: it does not refresh OSV/npm/GitHub data, and it cannot prove that a source is current until a check has completed.
264
280
  - npm lock graphs are supported; pnpm and Yarn graph adapters are not implemented.
265
281
  - OSV, npm `latest`, and public GitHub Release notes are live sources; changelog, comparison-diff, and migration-guide ingestion are deferred.
package/cordis.patch.yml CHANGED
@@ -8,4 +8,6 @@
8
8
  stateFile: !!js process.env.UPSTREAM_RADAR_STATE
9
9
  intervalSeconds: !!js Number(process.env.UPSTREAM_RADAR_INTERVAL_SECONDS || 1800)
10
10
  osvBaseUrl: !!js process.env.UPSTREAM_RADAR_OSV_BASE_URL
11
+ registry: !!js process.env.UPSTREAM_RADAR_REGISTRY
12
+ deepCandidates: !!js process.env.UPSTREAM_RADAR_DEEP_CANDIDATES !== 'false'
11
13
  runOnStart: !!js process.env.UPSTREAM_RADAR_RUN_ON_START !== 'false'
package/dist/src/cli.js CHANGED
@@ -8,6 +8,7 @@ import { GitHubReleaseClient } from './github-release.js';
8
8
  import { createRadarConfigFromDshProfile, discoverDshProfiles, refreshRadarConfigFromConfiguredProfile, resolveDshProfileDirectory, writeDshPatch, writeRadarConfig } from './init.js';
9
9
  import { parsePackageManifestSnapshot, parseRadarConfig } from './inventory.js';
10
10
  import { inspectNpmPackage } from './npm.js';
11
+ import { NpmCandidateGraphClient } from './npm-candidate.js';
11
12
  import { NpmReleaseClient } from './npm-release.js';
12
13
  import { OsvClient } from './osv.js';
13
14
  import { verdictAtLeast } from './policy.js';
@@ -51,6 +52,7 @@ Commands:
51
52
  Options:
52
53
  --deep resolve the dependency graph with scripts disabled and ask npm to verify signatures/provenance
53
54
  --registry <url> HTTPS npm registry for inspect or explicit public-graph init
55
+ --no-deep-candidates skip bounded transitive dependency graph checks for upgrade candidates
54
56
  --state <path> persistent radar state (default: <config.json>.state.json)
55
57
  --osv-base-url <url> alternate HTTPS OSV API base URL
56
58
  --interval <seconds> watch interval from 300 to 86400 seconds (default: 1800)
@@ -180,6 +182,7 @@ async function runRadar(args) {
180
182
  let intervalSeconds = 1_800;
181
183
  let intervalProvided = false;
182
184
  let once = false;
185
+ let deepCandidates = true;
183
186
  for (let index = 2; index < args.length; index += 1) {
184
187
  const argument = args[index];
185
188
  if (argument === '--json') {
@@ -188,6 +191,9 @@ async function runRadar(args) {
188
191
  else if (argument === '--once') {
189
192
  once = true;
190
193
  }
194
+ else if (argument === '--no-deep-candidates') {
195
+ deepCandidates = false;
196
+ }
191
197
  else if (argument === '--state' || argument === '--osv-base-url' || argument === '--registry'
192
198
  || argument === '--notes' || argument === '--interval') {
193
199
  const value = args[index + 1];
@@ -222,7 +228,7 @@ async function runRadar(args) {
222
228
  const readConfigForPoll = async () => refreshRadarConfigFromConfiguredProfile(await readConfig());
223
229
  if (subcommand === 'status') {
224
230
  if (positional.length > 0 || notesPath !== undefined || once || intervalProvided
225
- || osvBaseUrl !== undefined || registry !== undefined || statePath === ':memory:') {
231
+ || osvBaseUrl !== undefined || registry !== undefined || !deepCandidates || statePath === ':memory:') {
226
232
  throw new Error('radar status only accepts --state and --json options');
227
233
  }
228
234
  const config = await readConfig();
@@ -243,12 +249,15 @@ async function runRadar(args) {
243
249
  const releases = new NpmReleaseClient({
244
250
  ...(registry === undefined ? {} : { registry }),
245
251
  });
252
+ const candidateGraphs = deepCandidates
253
+ ? new NpmCandidateGraphClient({ ...(registry === undefined ? {} : { registry }) })
254
+ : undefined;
246
255
  const releaseNotesSource = new GitHubReleaseClient();
247
256
  const stateFile = statePath ?? `${resolve(configPath)}.state.json`;
248
257
  const runCheck = async () => {
249
258
  const config = await readConfigForPoll();
250
259
  const state = statePath === ':memory:' ? emptyRadarState() : await loadRadarState(stateFile);
251
- const result = await pollRadar(config.projects, state, osv, new Date(), releases, releaseNotesSource);
260
+ const result = await pollRadar(config.projects, state, osv, new Date(), releases, releaseNotesSource, candidateGraphs);
252
261
  if (statePath !== ':memory:')
253
262
  await saveRadarState(stateFile, result.state);
254
263
  return result;
@@ -312,7 +321,7 @@ async function runRadar(args) {
312
321
  }
313
322
  return 0;
314
323
  }
315
- if (statePath !== undefined || osvBaseUrl !== undefined || registry !== undefined || once || intervalProvided) {
324
+ if (statePath !== undefined || osvBaseUrl !== undefined || registry !== undefined || once || intervalProvided || !deepCandidates) {
316
325
  throw new Error('radar compare does not accept check or watch options');
317
326
  }
318
327
  const config = await readConfig();
@@ -437,6 +446,7 @@ async function runInit(args) {
437
446
  configFile: outputPath,
438
447
  stateFile: statePath,
439
448
  profile: resolvedProfile,
449
+ ...(registry === undefined ? {} : { registry }),
440
450
  force,
441
451
  });
442
452
  const plugins = config.projects[0]?.plugins ?? [];
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type CompatibilityEvent, type CompatibilityVulnerabilityStatus, type PackageManifestSnapshot, type ProjectInventory, type VulnerabilityAdvisory } from './radar-types.js';
1
+ import { type CompatibilityDependencyCheck, type CompatibilityDependencyStatus, type CompatibilityEvent, type CompatibilityVulnerabilityStatus, type PackageManifestSnapshot, type ProjectInventory, type VulnerabilityAdvisory } from './radar-types.js';
2
2
  export interface CompatibilityChangeInput {
3
3
  previous: PackageManifestSnapshot;
4
4
  candidate: PackageManifestSnapshot;
@@ -9,6 +9,9 @@ export interface CompatibilityChangeInput {
9
9
  /** Exact OSV results for candidate versions, keyed by npm package coordinate. */
10
10
  candidateVulnerabilities?: ReadonlyMap<string, readonly VulnerabilityAdvisory[]>;
11
11
  candidateVulnerabilityStatus?: CompatibilityVulnerabilityStatus;
12
+ /** OSV results for the bounded transitive graphs of candidate versions. */
13
+ candidateDependencyChecks?: ReadonlyMap<string, CompatibilityDependencyCheck>;
14
+ candidateDependencyStatus?: CompatibilityDependencyStatus;
12
15
  detectedAt: string;
13
16
  }
14
17
  /** Find deterministic incompatibilities and high-value change signals before asking a model. */
@@ -1 +1 @@
1
- {"version":3,"file":"compatibility.d.ts","sourceRoot":"","sources":["../../src/compatibility.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,kBAAkB,EAGvB,KAAK,gCAAgC,EAErC,KAAK,uBAAuB,EAE5B,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAA;AAGzB,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,uBAAuB,CAAA;IACjC,SAAS,EAAE,uBAAuB,CAAA;IAClC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,wGAAwG;IACxG,iBAAiB,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAA;IACtD,iFAAiF;IACjF,wBAAwB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,qBAAqB,EAAE,CAAC,CAAA;IAChF,4BAA4B,CAAC,EAAE,gCAAgC,CAAA;IAC/D,UAAU,EAAE,MAAM,CAAA;CACnB;AAyOD,gGAAgG;AAChG,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,wBAAwB,GAC/B,kBAAkB,GAAG,SAAS,CAEhC;AAED,0FAA0F;AAC1F,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,wBAAwB,GAC/B,kBAAkB,EAAE,CAkEtB"}
1
+ {"version":3,"file":"compatibility.d.ts","sourceRoot":"","sources":["../../src/compatibility.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,4BAA4B,EACjC,KAAK,6BAA6B,EAClC,KAAK,kBAAkB,EAGvB,KAAK,gCAAgC,EAErC,KAAK,uBAAuB,EAE5B,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAA;AAGzB,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,uBAAuB,CAAA;IACjC,SAAS,EAAE,uBAAuB,CAAA;IAClC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,wGAAwG;IACxG,iBAAiB,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAA;IACtD,iFAAiF;IACjF,wBAAwB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,qBAAqB,EAAE,CAAC,CAAA;IAChF,4BAA4B,CAAC,EAAE,gCAAgC,CAAA;IAC/D,2EAA2E;IAC3E,yBAAyB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAA;IAC7E,yBAAyB,CAAC,EAAE,6BAA6B,CAAA;IACzD,UAAU,EAAE,MAAM,CAAA;CACnB;AA2RD,gGAAgG;AAChG,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,wBAAwB,GAC/B,kBAAkB,GAAG,SAAS,CAEhC;AAED,0FAA0F;AAC1F,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,wBAAwB,GAC/B,kBAAkB,EAAE,CAyEtB"}
@@ -26,7 +26,7 @@ function changedSignal(signals, code, summary, before, after) {
26
26
  return;
27
27
  signals.push({ code, confidence: 'needs-analysis', summary, before: text(before), after: text(after) });
28
28
  }
29
- function collectCompatibilitySignals(inventory, installation, previous, candidate, releaseNotes, candidateVulnerabilities = []) {
29
+ function collectCompatibilitySignals(inventory, installation, previous, candidate, releaseNotes, candidateVulnerabilities = [], candidateDependencyCheck) {
30
30
  const signals = [];
31
31
  if (crossesBreakingVersionBoundary(previous.version, candidate.version)) {
32
32
  signals.push({
@@ -155,12 +155,39 @@ function collectCompatibilitySignals(inventory, installation, previous, candidat
155
155
  ...(advisory.fixedVersions.length === 0 ? {} : { after: `fixed: ${advisory.fixedVersions.slice(0, 8).join(', ')}` }),
156
156
  });
157
157
  }
158
+ if (candidateDependencyCheck !== undefined) {
159
+ for (const finding of [...candidateDependencyCheck.findings]
160
+ .sort((left, right) => packageKey(left.package).localeCompare(packageKey(right.package)) || left.advisory.id.localeCompare(right.advisory.id))) {
161
+ const path = finding.paths[0];
162
+ signals.push({
163
+ code: 'candidate-dependency-vulnerability',
164
+ confidence: 'confirmed',
165
+ summary: `OSV reports ${finding.advisory.id} (${finding.advisory.severity}) for transitive dependency ${finding.package.name}@${finding.package.version}.`,
166
+ before: finding.advisory.id,
167
+ ...(path === undefined ? {} : { after: path.map(item => `${item.name}@${item.version}`).join(' -> ') }),
168
+ });
169
+ }
170
+ if (candidateDependencyCheck.status === 'incomplete') {
171
+ signals.push({
172
+ code: 'candidate-dependency-graph-incomplete',
173
+ confidence: 'needs-analysis',
174
+ summary: `The candidate dependency graph has ${candidateDependencyCheck.unresolvedCount} unresolved dependency edge(s); it cannot be treated as fully checked.`,
175
+ });
176
+ }
177
+ else if (candidateDependencyCheck.status === 'unavailable') {
178
+ signals.push({
179
+ code: 'candidate-dependency-check-unavailable',
180
+ confidence: 'needs-analysis',
181
+ summary: 'The candidate dependency graph or its vulnerability query was unavailable; transitive dependency risk is unknown.',
182
+ });
183
+ }
184
+ }
158
185
  return signals;
159
186
  }
160
187
  function isDeterministicallyBlocked(signals) {
161
188
  return signals.some(signal => signal.confidence === 'confirmed' || signal.confidence === 'strong');
162
189
  }
163
- function assessUpgradePath(inventory, installation, previous, latestCandidate, candidates, releaseNotes, candidateVulnerabilities = new Map(), vulnerabilityStatus = 'not-requested') {
190
+ function assessUpgradePath(inventory, installation, previous, latestCandidate, candidates, releaseNotes, candidateVulnerabilities = new Map(), vulnerabilityStatus = 'not-requested', candidateDependencyChecks = new Map(), dependencyStatus = 'not-requested') {
164
191
  const unique = new Map();
165
192
  for (const candidate of candidates) {
166
193
  if (candidate.name !== previous.name)
@@ -177,24 +204,44 @@ function assessUpgradePath(inventory, installation, previous, latestCandidate, c
177
204
  const blocked = [];
178
205
  let blockedCount = 0;
179
206
  for (const candidate of ordered) {
180
- const signals = collectCompatibilitySignals(inventory, installation, previous, candidate, candidate.version === latestCandidate.version ? releaseNotes : undefined, candidateVulnerabilities.get(packageKey({ ecosystem: 'npm', name: candidate.name, version: candidate.version })) ?? []);
207
+ const signals = collectCompatibilitySignals(inventory, installation, previous, candidate, candidate.version === latestCandidate.version ? releaseNotes : undefined, candidateVulnerabilities.get(packageKey({ ecosystem: 'npm', name: candidate.name, version: candidate.version })) ?? [], candidateDependencyChecks.get(packageKey({ ecosystem: 'npm', name: candidate.name, version: candidate.version })));
208
+ const dependencyCheck = candidateDependencyChecks.get(packageKey({
209
+ ecosystem: 'npm',
210
+ name: candidate.name,
211
+ version: candidate.version,
212
+ }));
181
213
  const assessed = {
182
214
  candidate: { ecosystem: 'npm', name: candidate.name, version: candidate.version },
183
215
  signals,
216
+ ...(dependencyCheck === undefined ? {} : { dependencyCheck }),
184
217
  };
185
218
  if (isDeterministicallyBlocked(signals)) {
186
219
  blockedCount += 1;
187
220
  if (blocked.length < 8)
188
221
  blocked.push(assessed);
189
222
  }
190
- else if (firstCandidate === undefined && vulnerabilityStatus !== 'unavailable') {
223
+ else if (firstCandidate === undefined
224
+ && vulnerabilityStatus !== 'unavailable'
225
+ && dependencyStatus !== 'unavailable'
226
+ && (dependencyCheck === undefined
227
+ ? dependencyStatus === 'not-requested'
228
+ : dependencyCheck.status === 'checked')) {
191
229
  firstCandidate = assessed;
192
230
  }
193
231
  }
232
+ const uncheckedCount = dependencyStatus === 'not-requested'
233
+ ? 0
234
+ : ordered.filter(candidate => candidateDependencyChecks.get(packageKey({
235
+ ecosystem: 'npm',
236
+ name: candidate.name,
237
+ version: candidate.version,
238
+ }))?.status !== 'checked').length;
194
239
  return {
195
240
  evaluated: ordered.length,
196
241
  blockedCount,
197
242
  vulnerabilityStatus,
243
+ dependencyStatus,
244
+ uncheckedCount,
198
245
  ...(firstCandidate === undefined ? {} : { firstCandidate }),
199
246
  blocked,
200
247
  };
@@ -216,12 +263,16 @@ export function assessCompatibilityChanges(inventory, change) {
216
263
  if (installations.length === 0)
217
264
  return [];
218
265
  return installations.flatMap((installation) => {
219
- const signals = collectCompatibilitySignals(inventory, installation, change.previous, change.candidate, change.releaseNotes, change.candidateVulnerabilities?.get(packageKey({ ecosystem: 'npm', name: change.candidate.name, version: change.candidate.version })) ?? []);
266
+ const signals = collectCompatibilitySignals(inventory, installation, change.previous, change.candidate, change.releaseNotes, change.candidateVulnerabilities?.get(packageKey({ ecosystem: 'npm', name: change.candidate.name, version: change.candidate.version })) ?? [], change.candidateDependencyChecks?.get(packageKey({
267
+ ecosystem: 'npm',
268
+ name: change.candidate.name,
269
+ version: change.candidate.version,
270
+ })));
220
271
  if (signals.length === 0)
221
272
  return [];
222
273
  const upgradePath = change.upgradeCandidates === undefined
223
274
  ? undefined
224
- : assessUpgradePath(inventory, installation, change.previous, change.candidate, change.upgradeCandidates, change.releaseNotes, change.candidateVulnerabilities ?? new Map(), change.candidateVulnerabilityStatus ?? 'not-requested');
275
+ : assessUpgradePath(inventory, installation, change.previous, change.candidate, change.upgradeCandidates, change.releaseNotes, change.candidateVulnerabilities ?? new Map(), change.candidateVulnerabilityStatus ?? 'not-requested', change.candidateDependencyChecks ?? new Map(), change.candidateDependencyStatus ?? 'not-requested');
225
276
  const eventSeed = [inventory.project.id, installation.package.name, installation.package.version, change.previous.name, change.previous.version, change.candidate.version, change.detectedAt].join('\0');
226
277
  const incidentSeed = [inventory.project.id, installation.package.name, installation.package.version, change.previous.name, change.previous.version].join('\0');
227
278
  return [{
@@ -1 +1 @@
1
- {"version":3,"file":"compatibility.js","sourceRoot":"","sources":["../../src/compatibility.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compatibility.js","sourceRoot":"","sources":["../../src/compatibility.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dsh-analysis.d.ts","sourceRoot":"","sources":["../../src/dsh-analysis.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,UAAU,EAChB,MAAM,kBAAkB,CAAA;AAMzB,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,YAAY,CAoBlE;AAqCD,6DAA6D;AAC7D,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAEpE;AAED,oFAAoF;AACpF,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,CAIrF;AAED,0FAA0F;AAC1F,eAAO,MAAM,uBAAuB,kCAA4B,CAAA"}
1
+ {"version":3,"file":"dsh-analysis.d.ts","sourceRoot":"","sources":["../../src/dsh-analysis.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,UAAU,EAChB,MAAM,kBAAkB,CAAA;AAMzB,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,YAAY,CAoBlE;AAuCD,6DAA6D;AAC7D,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAEpE;AAED,oFAAoF;AACpF,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,CAIrF;AAED,0FAA0F;AAC1F,eAAO,MAAM,uBAAuB,kCAA4B,CAAA"}
@@ -26,7 +26,7 @@ export function createAnalysisTask(event) {
26
26
  }
27
27
  function renderAnalysisPrompt(task, events) {
28
28
  const focus = task.event.kind === 'compatibility'
29
- ? '判断这个候选升级会不会破坏当前项目,定位受影响的 API、配置或运行环境,并给出最小迁移与验证方案。'
29
+ ? '判断这个候选升级会不会破坏当前项目,定位受影响的 API、配置、运行环境或候选依赖图中的漏洞路径,并给出最小迁移与验证方案。'
30
30
  : task.event.kind === 'source-health'
31
31
  ? '确认监控源当前不可用对告警覆盖造成的影响,向项目负责人说明不要把“没有新事件”当作安全结论,并给出恢复该监控源的最小行动。'
32
32
  : '判断该漏洞的触发条件在当前项目中是否成立,定位实际调用和数据入口,并给出当前项目可以执行的修复方案。';
@@ -48,7 +48,9 @@ function renderAnalysisPrompt(task, events) {
48
48
  5. 区分“已确认事实”和“模型判断”,不要把推测写成事实。
49
49
  6. 如果 event_json 含有 upgradePath,firstCandidate 只表示“没有发现确定性阻断的第一个版本”,不是“安全”或“已兼容”;必须继续用项目证据判断它是否值得尝试。
50
50
  7. 如果 upgradePath.vulnerabilityStatus 是 unavailable,不得推荐任何候选版本为安全或可升级;应先恢复 OSV 监控并说明当前判断不完整。
51
- 8. 返回一个 JSON 对象,字段严格为 project_exposure、confidence、evidence、recommended_action、urgency、reasoning_summary。${groupedInstruction}
51
+ 8. 如果 upgradePath.dependencyStatus unavailable,不得推荐任何候选版本;如果是 partial,只能把 firstCandidate 理解为“已检查的最早一小段中的候选”,不能推断后续版本没有风险。
52
+ 9. 如果候选的 dependencyCheck.status 是 incomplete 或 unavailable,必须把传递依赖风险写成 unknown,并说明缺少哪类检查;不要把“没有发现”写成“安全”。
53
+ 10. 返回一个 JSON 对象,字段严格为 project_exposure、confidence、evidence、recommended_action、urgency、reasoning_summary。${groupedInstruction}
52
54
 
53
55
  expected_output:
54
56
  ${JSON.stringify(task.expectedOutput, null, 2)}
@@ -1 +1 @@
1
- {"version":3,"file":"dsh-analysis.js","sourceRoot":"","sources":["../../src/dsh-analysis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EACL,oBAAoB,GAGrB,MAAM,kBAAkB,CAAA;AAEzB,SAAS,SAAS,CAAC,KAAa;IAC9B,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AACtE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAiB;IAClD,OAAO;QACL,MAAM,EAAE,oBAAoB;QAC5B,EAAE,EAAE,YAAY,SAAS,CAAC,GAAG,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE;QAC/D,SAAS,EAAE,KAAK,CAAC,UAAU;QAC3B,KAAK;QACL,WAAW,EAAE;YACX,yBAAyB,EAAE,IAAI;YAC/B,QAAQ,EAAE,IAAI;YACd,sBAAsB,EAAE,IAAI;SAC7B;QACD,cAAc,EAAE;YACd,gBAAgB,EAAE,kDAAkD;YACpE,UAAU,EAAE,qBAAqB;YACjC,QAAQ,EAAE,qEAAqE;YAC/E,kBAAkB,EAAE,8BAA8B;YAClD,OAAO,EAAE,iDAAiD;YAC1D,iBAAiB,EAAE,sEAAsE;SAC1F;KACF,CAAA;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAkB,EAAE,MAA6B;IAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe;QAC/C,CAAC,CAAC,oDAAoD;QACtD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe;YACnC,CAAC,CAAC,+DAA+D;YACjE,CAAC,CAAC,oDAAoD,CAAA;IAC1D,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC;QACnC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACnC,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC;QAC5C,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,UAAU,MAAM,CAAC,MAAM,mEAAmE,CAAA;IAE9F,OAAO;;;;;;;KAOJ,KAAK;;;;;0GAKgG,kBAAkB;;;EAG1H,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;;;EAG5C,SAAS;CACV,CAAA;AACD,CAAC;AAED,6DAA6D;AAC7D,MAAM,UAAU,yBAAyB,CAAC,IAAkB;IAC1D,OAAO,oBAAoB,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;AACjD,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,8BAA8B,CAAC,KAA8B;IAC3E,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IACtB,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IAC/E,OAAO,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;AACnE,CAAC;AAED,0FAA0F;AAC1F,MAAM,CAAC,MAAM,uBAAuB,GAAG,yBAAyB,CAAA"}
1
+ {"version":3,"file":"dsh-analysis.js","sourceRoot":"","sources":["../../src/dsh-analysis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EACL,oBAAoB,GAGrB,MAAM,kBAAkB,CAAA;AAEzB,SAAS,SAAS,CAAC,KAAa;IAC9B,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AACtE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAiB;IAClD,OAAO;QACL,MAAM,EAAE,oBAAoB;QAC5B,EAAE,EAAE,YAAY,SAAS,CAAC,GAAG,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE;QAC/D,SAAS,EAAE,KAAK,CAAC,UAAU;QAC3B,KAAK;QACL,WAAW,EAAE;YACX,yBAAyB,EAAE,IAAI;YAC/B,QAAQ,EAAE,IAAI;YACd,sBAAsB,EAAE,IAAI;SAC7B;QACD,cAAc,EAAE;YACd,gBAAgB,EAAE,kDAAkD;YACpE,UAAU,EAAE,qBAAqB;YACjC,QAAQ,EAAE,qEAAqE;YAC/E,kBAAkB,EAAE,8BAA8B;YAClD,OAAO,EAAE,iDAAiD;YAC1D,iBAAiB,EAAE,sEAAsE;SAC1F;KACF,CAAA;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAkB,EAAE,MAA6B;IAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe;QAC/C,CAAC,CAAC,gEAAgE;QAClE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe;YACnC,CAAC,CAAC,+DAA+D;YACjE,CAAC,CAAC,oDAAoD,CAAA;IAC1D,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC;QACnC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACnC,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC;QAC5C,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,UAAU,MAAM,CAAC,MAAM,mEAAmE,CAAA;IAE9F,OAAO;;;;;;;KAOJ,KAAK;;;;;;;2GAOiG,kBAAkB;;;EAG3H,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;;;EAG5C,SAAS;CACV,CAAA;AACD,CAAC;AAED,6DAA6D;AAC7D,MAAM,UAAU,yBAAyB,CAAC,IAAkB;IAC1D,OAAO,oBAAoB,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;AACjD,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,8BAA8B,CAAC,KAA8B;IAC3E,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IACtB,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IAC/E,OAAO,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;AACnE,CAAC;AAED,0FAA0F;AAC1F,MAAM,CAAC,MAAM,uBAAuB,GAAG,yBAAyB,CAAA"}
@@ -10,6 +10,9 @@ export interface Config {
10
10
  refreshProfile?: boolean;
11
11
  intervalSeconds?: number;
12
12
  osvBaseUrl?: string;
13
+ registry?: string;
14
+ /** Set false to skip bounded transitive candidate graph checks. */
15
+ deepCandidates?: boolean;
13
16
  runOnStart?: boolean;
14
17
  }
15
18
  export interface DshRadarMessage {
@@ -1 +1 @@
1
- {"version":3,"file":"dsh-plugin.d.ts","sourceRoot":"","sources":["../../src/dsh-plugin.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAEhE,eAAO,MAAM,IAAI,mBAAmB,CAAA;AACpC,eAAO,MAAM,MAAM,UAAa,CAAA;AAEhC,MAAM,WAAW,MAAM;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,oEAAoE;IACpE,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC9C,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ,CAAA;QACd,MAAM,EAAE,gBAAgB,CAAA;QACxB,IAAI,EAAE,QAAQ,CAAA;QACd,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;CACF;AAED,UAAU,YAAY;IACpB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAA;CACzC;AAED,UAAU,eAAe;IACvB,MAAM,EAAE;QACN,KAAK,IAAI,YAAY,EAAE,CAAA;KACxB,CAAA;IACD,MAAM,EAAE;QACN,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;QAC3B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAC5B,CAAA;IACD,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9E,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAA;CAC7D;AAwBD,6GAA6G;AAC7G,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,GAAG,YAAY,EAAE,EAAE,CAoB1F;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,YAAY,GAAG,eAAe,CAYzE;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,GAAG,eAAe,CAc3F;AAED,6FAA6F;AAC7F,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,GAAG,UAAU,CAe9F;AAaD,gHAAgH;AAChH,wBAAgB,KAAK,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,GAAE,MAAW,GAAG,IAAI,CA4DrE"}
1
+ {"version":3,"file":"dsh-plugin.d.ts","sourceRoot":"","sources":["../../src/dsh-plugin.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAEhE,eAAO,MAAM,IAAI,mBAAmB,CAAA;AACpC,eAAO,MAAM,MAAM,UAAa,CAAA;AAEhC,MAAM,WAAW,MAAM;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,oEAAoE;IACpE,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,mEAAmE;IACnE,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC9C,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ,CAAA;QACd,MAAM,EAAE,gBAAgB,CAAA;QACxB,IAAI,EAAE,QAAQ,CAAA;QACd,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;CACF;AAED,UAAU,YAAY;IACpB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAA;CACzC;AAED,UAAU,eAAe;IACvB,MAAM,EAAE;QACN,KAAK,IAAI,YAAY,EAAE,CAAA;KACxB,CAAA;IACD,MAAM,EAAE;QACN,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;QAC3B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAC5B,CAAA;IACD,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9E,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAA;CAC7D;AAwBD,6GAA6G;AAC7G,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,GAAG,YAAY,EAAE,EAAE,CAoB1F;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,YAAY,GAAG,eAAe,CAYzE;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,GAAG,eAAe,CAc3F;AAED,6FAA6F;AAC7F,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,GAAG,UAAU,CAe9F;AAaD,gHAAgH;AAChH,wBAAgB,KAAK,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,GAAE,MAAW,GAAG,IAAI,CA+DrE"}
@@ -6,6 +6,7 @@ import { GitHubReleaseClient } from './github-release.js';
6
6
  import { parseRadarConfig } from './inventory.js';
7
7
  import { refreshRadarConfigFromDshProfile } from './init.js';
8
8
  import { OsvClient } from './osv.js';
9
+ import { NpmCandidateGraphClient } from './npm-candidate.js';
9
10
  import { NpmReleaseClient } from './npm-release.js';
10
11
  import { pollRadar } from './radar.js';
11
12
  import { loadRadarState, saveRadarState } from './radar-state.js';
@@ -128,7 +129,10 @@ export function apply(ctx, config = {}) {
128
129
  throw new Error('upstream-radar intervalSeconds must be between 300 and 86400');
129
130
  }
130
131
  const source = new OsvClient({ ...(config.osvBaseUrl === undefined ? {} : { baseUrl: config.osvBaseUrl }) });
131
- const releases = new NpmReleaseClient();
132
+ const releases = new NpmReleaseClient({ ...(config.registry === undefined ? {} : { registry: config.registry }) });
133
+ const candidateGraphs = config.deepCandidates === false
134
+ ? undefined
135
+ : new NpmCandidateGraphClient({ ...(config.registry === undefined ? {} : { registry: config.registry }) });
132
136
  const releaseNotes = new GitHubReleaseClient();
133
137
  ctx.effect(() => {
134
138
  let stopped = false;
@@ -146,7 +150,7 @@ export function apply(ctx, config = {}) {
146
150
  if (radarConfig !== configured && JSON.stringify(radarConfig.projects) !== JSON.stringify(configured.projects)) {
147
151
  ctx.logger.info(`upstream-radar: refreshed installed DSH profile ${config.profile}`);
148
152
  }
149
- const result = await pollRadar(radarConfig.projects, state, source, new Date(), releases, releaseNotes);
153
+ const result = await pollRadar(radarConfig.projects, state, source, new Date(), releases, releaseNotes, candidateGraphs);
150
154
  state = result.state;
151
155
  // Persist before model delivery. A crash may duplicate a task, but cannot silently lose it.
152
156
  await saveRadarState(stateFile, state);
@@ -1 +1 @@
1
- {"version":3,"file":"dsh-plugin.js","sourceRoot":"","sources":["../../src/dsh-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dsh-plugin.js","sourceRoot":"","sources":["../../src/dsh-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,8BAA8B,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,gCAAgC,EAAE,MAAM,WAAW,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAGjE,MAAM,CAAC,MAAM,IAAI,GAAG,gBAAgB,CAAA;AACpC,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAA;AA6ChC,SAAS,WAAW,CAAC,KAAc;IACjC,MAAM,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACpE,OAAO,KAAK,CAAC,OAAO,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;AAC5E,CAAC;AAED,SAAS,WAAW,CAAC,IAAkB;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACpD,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAA;QAC7C,IAAI,WAAW,KAAK,qBAAqB,IAAI,WAAW,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACzF,OAAO,wCAAwC,OAAO,EAAE,CAAA;QAC1D,CAAC;QACD,OAAO,4BAA4B,OAAO,EAAE,CAAA;IAC9C,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe;QAAE,OAAO,kCAAkC,OAAO,EAAE,CAAA;IAC3F,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,eAAe,QAAQ,OAAO,EAAE,CAAA;AAClG,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY;IACvC,OAAO,IAAI,KAAK,qBAAqB,IAAI,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAA;AAC/E,CAAC;AAED,6GAA6G;AAC7G,MAAM,UAAU,yBAAyB,CAAC,KAA8B;IACtE,MAAM,MAAM,GAAqB,EAAE,CAAA;IACnC,MAAM,SAAS,GAAG,IAAI,GAAG,EAA0B,CAAA;IACnD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACxB,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YACjF,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;YACnB,SAAQ;QACV,CAAC;QACD,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,kBAAkB,KAAK,CAAC,UAAU,EAAE,CAAA;QACnE,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACnC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACnB,SAAQ;QACV,CAAC;QACD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAA;QACpB,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACzB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACpB,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAkB;IACtD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,UAAU,EAAE;QAChB,IAAI,EAAE,MAAe;QACrB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3E,MAAM,EAAE;YACN,IAAI,EAAE,QAAiB;YACvB,MAAM,EAAE,gBAAyB;YACjC,IAAI,EAAE,QAAiB;YACvB,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC;SAC3B;KACF,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,KAA8B;IACxE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IACtB,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IAC5F,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,UAAU,EAAE;QAChB,IAAI,EAAE,MAAe;QACrB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,8BAA8B,CAAC,KAAK,CAAC,EAAE,CAAC;QACjF,MAAM,EAAE;YACN,IAAI,EAAE,QAAiB;YACvB,MAAM,EAAE,gBAAyB;YACjC,IAAI,EAAE,QAAiB;YACvB,OAAO,EAAE,sCAAsC,KAAK,CAAC,MAAM,SAAS,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;SAC5G;KACF,CAAC,CAAA;AACJ,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,2BAA2B,CAAC,KAAiB,EAAE,KAAmB;IAChF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAA;IACtC,KAAK,MAAM,KAAK,IAAI,yBAAyB,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC1E,IAAI,CAAC;YACH,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC,CAAA;YAC1G,KAAK,MAAM,IAAI,IAAI,KAAK;gBAAE,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACrD,CAAC;QAAC,MAAM,CAAC;YACP,MAAK;QACP,CAAC;IACH,CAAC;IACD,IAAI,YAAY,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACzC,OAAO;QACL,GAAG,KAAK;QACR,oBAAoB,EAAE,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAC5F,CAAA;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,IAAY;IACpC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC7C,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;IAChH,IAAI,CAAC;QACH,OAAO,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAY,CAAC,CAAA;IAC1D,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,IAAI,KAAK,YAAY,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACnF,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC;AAED,gHAAgH;AAChH,MAAM,UAAU,KAAK,CAAC,GAAoB,EAAE,MAAM,GAAW,EAAE;IAC7D,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACvE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,yEAAyE,CAAC,CAAA;QAC1F,OAAM;IACR,CAAC;IACD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,GAAG,UAAU,aAAa,CAAC,CAAA;IACzE,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,KAAK,CAAA;IACvD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,eAAe,GAAG,GAAG,IAAI,eAAe,GAAG,MAAM,EAAE,CAAC;QAChG,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;IACjF,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,CAAA;IAC5G,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAA;IAClH,MAAM,eAAe,GAAG,MAAM,CAAC,cAAc,KAAK,KAAK;QACrD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,IAAI,uBAAuB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAA;IAC5G,MAAM,YAAY,GAAG,IAAI,mBAAmB,EAAE,CAAA;IAE9C,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE;QACd,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,IAAI,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAA;QAC9B,MAAM,GAAG,GAAG,CAAC,IAAa,EAAQ,EAAE;YAClC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;gBAC9B,IAAI,OAAO;oBAAE,OAAM;gBACnB,IAAI,KAAK,GAAG,MAAM,cAAc,CAAC,SAAS,CAAC,CAAA;gBAC3C,IAAI,IAAI,EAAE,CAAC;oBACT,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAA;oBAC/C,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,cAAc,KAAK,KAAK;wBACjF,CAAC,CAAC,UAAU;wBACZ,CAAC,CAAC,MAAM,gCAAgC,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;oBACtE,IAAI,WAAW,KAAK,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC/G,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,mDAAmD,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;oBACtF,CAAC;oBACD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,CAAC,CAAA;oBACxH,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;oBACpB,4FAA4F;oBAC5F,MAAM,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;oBACtC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC7B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,MAAM,CAAC,MAAM,eAAe,MAAM,CAAC,aAAa,CAAC,MAAM,mBAAmB,CAAC,CAAA;oBACvH,CAAC;oBACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;wBACxC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC,MAAM,KAAK,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;oBACnF,CAAC;gBACH,CAAC;gBACD,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;gBACnC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,oBAAoB,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAM;gBAC1E,MAAM,IAAI,GAAG,2BAA2B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;gBACtD,IAAI,IAAI,KAAK,KAAK;oBAAE,MAAM,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;YAC3D,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBAC1B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACxE,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,MAAM,WAAW,GAAG,GAAG,CAAC,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;QACjE,IAAI,MAAM,CAAC,UAAU,KAAK,KAAK;YAAE,GAAG,CAAC,IAAI,CAAC,CAAA;QAC1C,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,CAAA,CAAC,CAAC,EAAE,eAAe,GAAG,KAAK,CAAC,CAAA;QACvE,OAAO,KAAK,IAAI,EAAE;YAChB,OAAO,GAAG,IAAI,CAAA;YACd,aAAa,CAAC,KAAK,CAAC,CAAA;YACpB,WAAW,EAAE,CAAA;YACb,MAAM,MAAM,CAAA;QACd,CAAC,CAAA;IACH,CAAC,EAAE,4BAA4B,CAAC,CAAA;AAClC,CAAC"}