@4da/mcp-server 5.0.4 → 6.0.0

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 (172) hide show
  1. package/CHANGELOG.md +667 -0
  2. package/README.md +66 -35
  3. package/dist/build-staleness.d.ts +35 -0
  4. package/dist/build-staleness.js +95 -0
  5. package/dist/db.d.ts +53 -2
  6. package/dist/db.js +233 -37
  7. package/dist/doctor.js +27 -7
  8. package/dist/embeddings.js +7 -1
  9. package/dist/freshness-markers.d.ts +34 -0
  10. package/dist/freshness-markers.js +74 -0
  11. package/dist/gitignore.d.ts +37 -0
  12. package/dist/gitignore.js +130 -0
  13. package/dist/index.js +127 -44
  14. package/dist/live/bun-lockfile.d.ts +26 -0
  15. package/dist/live/bun-lockfile.js +123 -0
  16. package/dist/live/cargo-platform.d.ts +38 -0
  17. package/dist/live/cargo-platform.js +178 -0
  18. package/dist/live/changelog-classify.d.ts +41 -0
  19. package/dist/live/changelog-classify.js +207 -0
  20. package/dist/live/changelog.d.ts +64 -0
  21. package/dist/live/changelog.js +318 -0
  22. package/dist/live/crates-registry.js +3 -1
  23. package/dist/live/crates-versions.d.ts +47 -0
  24. package/dist/live/crates-versions.js +201 -0
  25. package/dist/live/dependency-set.d.ts +13 -0
  26. package/dist/live/dependency-set.js +95 -0
  27. package/dist/live/dev-scope.d.ts +32 -0
  28. package/dist/live/dev-scope.js +102 -0
  29. package/dist/live/file-signature.d.ts +18 -0
  30. package/dist/live/file-signature.js +43 -0
  31. package/dist/live/go-registry.js +3 -1
  32. package/dist/live/hn-fetcher.js +9 -3
  33. package/dist/live/index.d.ts +105 -2
  34. package/dist/live/index.js +266 -139
  35. package/dist/live/install-state.d.ts +43 -0
  36. package/dist/live/install-state.js +150 -0
  37. package/dist/live/js-lockfile-readers.d.ts +46 -0
  38. package/dist/live/js-lockfile-readers.js +181 -0
  39. package/dist/live/lockfile-parsers-pygo.d.ts +60 -0
  40. package/dist/live/lockfile-parsers-pygo.js +274 -0
  41. package/dist/live/lockfile-parsers.d.ts +69 -0
  42. package/dist/live/lockfile-parsers.js +311 -0
  43. package/dist/live/lockfile-types.d.ts +34 -0
  44. package/dist/live/lockfile-types.js +42 -0
  45. package/dist/live/maintenance.d.ts +33 -0
  46. package/dist/live/maintenance.js +37 -0
  47. package/dist/live/npm-packument.d.ts +47 -0
  48. package/dist/live/npm-packument.js +150 -0
  49. package/dist/live/npm-registry.js +67 -53
  50. package/dist/live/osv-scanner.d.ts +12 -1
  51. package/dist/live/osv-scanner.js +50 -15
  52. package/dist/live/package-archive.d.ts +49 -0
  53. package/dist/live/package-archive.js +186 -0
  54. package/dist/live/pypi-registry.js +3 -1
  55. package/dist/live/registry-health.d.ts +16 -0
  56. package/dist/live/registry-health.js +74 -0
  57. package/dist/live/release-metadata.d.ts +67 -0
  58. package/dist/live/release-metadata.js +16 -0
  59. package/dist/live/resolution.d.ts +43 -0
  60. package/dist/live/resolution.js +62 -0
  61. package/dist/live/semver-precedence.d.ts +30 -0
  62. package/dist/live/semver-precedence.js +83 -0
  63. package/dist/live/severity-scope.d.ts +57 -0
  64. package/dist/live/severity-scope.js +89 -0
  65. package/dist/live/types.d.ts +83 -0
  66. package/dist/live/upgrade-sources.d.ts +71 -0
  67. package/dist/live/upgrade-sources.js +198 -0
  68. package/dist/live/version-compare.d.ts +39 -0
  69. package/dist/live/version-compare.js +130 -0
  70. package/dist/live/version-resolver.d.ts +14 -1
  71. package/dist/live/version-resolver.js +93 -303
  72. package/dist/native-bindings.d.ts +19 -0
  73. package/dist/native-bindings.js +39 -0
  74. package/dist/project-manifests.d.ts +40 -0
  75. package/dist/project-manifests.js +193 -0
  76. package/dist/project-scanner.js +38 -48
  77. package/dist/project-tree.d.ts +41 -0
  78. package/dist/project-tree.js +110 -0
  79. package/dist/prompts.d.ts +28 -0
  80. package/dist/prompts.js +54 -0
  81. package/dist/schema-registry.d.ts +41 -29
  82. package/dist/schema-registry.js +98 -105
  83. package/dist/server-instructions.d.ts +11 -0
  84. package/dist/server-instructions.js +36 -0
  85. package/dist/tool-args.d.ts +28 -0
  86. package/dist/tool-args.js +93 -0
  87. package/dist/tool-dispatch.d.ts +1 -1
  88. package/dist/tool-dispatch.js +42 -8
  89. package/dist/tools/app-plan.d.ts +92 -0
  90. package/dist/tools/app-plan.js +155 -0
  91. package/dist/tools/briefing-stored-advisories.d.ts +20 -0
  92. package/dist/tools/briefing-stored-advisories.js +58 -0
  93. package/dist/tools/briefing-task-scope.d.ts +73 -0
  94. package/dist/tools/briefing-task-scope.js +197 -0
  95. package/dist/tools/briefing-wisdom.d.ts +31 -0
  96. package/dist/tools/briefing-wisdom.js +148 -0
  97. package/dist/tools/decision-enforcement.d.ts +0 -5
  98. package/dist/tools/decision-enforcement.js +0 -4
  99. package/dist/tools/decision-memory.js +18 -66
  100. package/dist/tools/dependency-check-signals.d.ts +74 -0
  101. package/dist/tools/dependency-check-signals.js +264 -0
  102. package/dist/tools/dependency-check.d.ts +98 -0
  103. package/dist/tools/dependency-check.js +295 -0
  104. package/dist/tools/dependency-health.js +74 -21
  105. package/dist/tools/developer-dna.d.ts +3 -0
  106. package/dist/tools/developer-dna.js +16 -15
  107. package/dist/tools/ecosystem-pulse.d.ts +6 -2
  108. package/dist/tools/ecosystem-pulse.js +53 -14
  109. package/dist/tools/get-actionable-signals.d.ts +26 -4
  110. package/dist/tools/get-actionable-signals.js +214 -251
  111. package/dist/tools/get-context.d.ts +2 -0
  112. package/dist/tools/get-context.js +9 -1
  113. package/dist/tools/get-relevant-content.d.ts +3 -1
  114. package/dist/tools/get-relevant-content.js +34 -3
  115. package/dist/tools/index.d.ts +4 -2
  116. package/dist/tools/index.js +4 -2
  117. package/dist/tools/install-drift-notes.d.ts +51 -0
  118. package/dist/tools/install-drift-notes.js +172 -0
  119. package/dist/tools/knowledge-gap-citations.d.ts +55 -0
  120. package/dist/tools/knowledge-gap-citations.js +132 -0
  121. package/dist/tools/knowledge-gap-exposure.d.ts +72 -0
  122. package/dist/tools/knowledge-gap-exposure.js +160 -0
  123. package/dist/tools/knowledge-gap-grading.d.ts +91 -0
  124. package/dist/tools/knowledge-gap-grading.js +157 -0
  125. package/dist/tools/knowledge-gap-installs.d.ts +65 -0
  126. package/dist/tools/knowledge-gap-installs.js +134 -0
  127. package/dist/tools/knowledge-gap-ranges.d.ts +51 -0
  128. package/dist/tools/knowledge-gap-ranges.js +146 -0
  129. package/dist/tools/knowledge-gap-scope.d.ts +63 -0
  130. package/dist/tools/knowledge-gap-scope.js +118 -0
  131. package/dist/tools/knowledge-gaps.d.ts +12 -3
  132. package/dist/tools/knowledge-gaps.js +172 -121
  133. package/dist/tools/package-presence.d.ts +24 -0
  134. package/dist/tools/package-presence.js +35 -0
  135. package/dist/tools/record-feedback.d.ts +0 -1
  136. package/dist/tools/record-feedback.js +7 -8
  137. package/dist/tools/signal-classifier.d.ts +25 -0
  138. package/dist/tools/signal-classifier.js +40 -0
  139. package/dist/tools/upgrade-impact-callsites.d.ts +52 -0
  140. package/dist/tools/upgrade-impact-callsites.js +226 -0
  141. package/dist/tools/upgrade-impact-literals.d.ts +45 -0
  142. package/dist/tools/upgrade-impact-literals.js +118 -0
  143. package/dist/tools/upgrade-impact-report.d.ts +80 -0
  144. package/dist/tools/upgrade-impact-report.js +178 -0
  145. package/dist/tools/upgrade-impact.d.ts +84 -0
  146. package/dist/tools/upgrade-impact.js +305 -0
  147. package/dist/tools/upgrade-planner.d.ts +41 -8
  148. package/dist/tools/upgrade-planner.js +201 -53
  149. package/dist/tools/vulnerability-scan-concise.d.ts +72 -0
  150. package/dist/tools/vulnerability-scan-concise.js +97 -0
  151. package/dist/tools/vulnerability-scan-format.d.ts +137 -0
  152. package/dist/tools/vulnerability-scan-format.js +276 -0
  153. package/dist/tools/vulnerability-scan.d.ts +338 -18
  154. package/dist/tools/vulnerability-scan.js +84 -125
  155. package/dist/tools/what-should-i-know.d.ts +86 -19
  156. package/dist/tools/what-should-i-know.js +277 -283
  157. package/dist/types.d.ts +4 -1
  158. package/package.json +27 -30
  159. package/dist/schemas/agent-memory.json +0 -49
  160. package/dist/schemas/decision-enforcement.json +0 -22
  161. package/dist/schemas/decision-memory.json +0 -54
  162. package/dist/schemas/dependency-health.json +0 -27
  163. package/dist/schemas/developer-dna.json +0 -219
  164. package/dist/schemas/ecosystem-pulse.json +0 -17
  165. package/dist/schemas/get-actionable-signals.json +0 -29
  166. package/dist/schemas/get-context.json +0 -17
  167. package/dist/schemas/get-relevant-content.json +0 -26
  168. package/dist/schemas/knowledge-gaps.json +0 -14
  169. package/dist/schemas/record-feedback.json +0 -24
  170. package/dist/schemas/upgrade-planner.json +0 -22
  171. package/dist/schemas/vulnerability-scan.json +0 -26
  172. package/dist/schemas/what-should-i-know.json +0 -19
@@ -4,14 +4,20 @@
4
4
  * Scans project dependencies for known vulnerabilities using OSV.dev.
5
5
  * Zero configuration — auto-detects stack from manifest files.
6
6
  * Returns CVEs, severity, fix versions across npm, Rust, Python, Go.
7
+ * Output shaping lives in vulnerability-scan-format.ts.
7
8
  */
8
9
  import type { FourDADatabase } from "../db.js";
9
10
  import { LiveIntelligence } from "../live/index.js";
11
+ import { isMaintenanceNotice } from "../live/maintenance.js";
12
+ export { isMaintenanceNotice };
13
+ export { collapseAliases, platformFilterNote, relativeDir } from "./vulnerability-scan-format.js";
10
14
  export interface VulnerabilityScanParams {
11
15
  project_path?: string;
12
16
  severity_filter?: "critical" | "high" | "medium" | "low";
13
17
  include_dev?: boolean;
14
18
  force_refresh?: boolean;
19
+ response_format?: "concise" | "detailed";
20
+ package?: string;
15
21
  }
16
22
  export declare const vulnerabilityScanTool: {
17
23
  name: string;
@@ -36,27 +42,34 @@ export declare const vulnerabilityScanTool: {
36
42
  type: string;
37
43
  description: string;
38
44
  };
45
+ package: {
46
+ type: string;
47
+ description: string;
48
+ };
49
+ response_format: {
50
+ type: string;
51
+ enum: string[];
52
+ description: string;
53
+ };
39
54
  };
40
55
  };
41
56
  };
42
57
  export declare function executeVulnerabilityScan(db: FourDADatabase, params: VulnerabilityScanParams, liveIntelligence: LiveIntelligence | null): Promise<{
43
58
  scan_time: string;
44
59
  project: string;
60
+ project_root: string;
61
+ workspaces_with_findings: string[];
45
62
  host_platform: string;
46
63
  ecosystems_scanned: string[];
47
64
  total_dependencies_scanned: number;
48
65
  total_vulnerable_packages: number;
49
66
  platform_inactive_packages: number;
50
- by_severity: {
51
- critical: number;
52
- high: number;
53
- medium: number;
54
- low: number;
55
- unknown: number;
56
- };
67
+ by_severity: import("../live/severity-scope.js").SeverityCounts;
68
+ advisory_by_severity: import("../live/severity-scope.js").SeverityCounts;
57
69
  vulnerabilities: {
58
70
  package: string;
59
71
  current_version: string;
72
+ source_dirs: string[];
60
73
  ecosystem: import("../live/types.js").OsvEcosystem;
61
74
  is_dev: boolean;
62
75
  is_direct: boolean;
@@ -65,7 +78,9 @@ export declare function executeVulnerabilityScan(db: FourDADatabase, params: Vul
65
78
  platform_active: boolean;
66
79
  vuln_id: string;
67
80
  aliases: string[];
68
- severity: "critical" | "high" | "medium" | "low" | "unknown";
81
+ severity: "critical" | "high" | "low" | "medium" | "unknown";
82
+ advisory_severity: "critical" | "high" | "low" | "medium" | "unknown";
83
+ severity_note?: string | undefined;
69
84
  cvss_score: number | null;
70
85
  summary: string;
71
86
  fixed_version: string | null;
@@ -75,6 +90,28 @@ export declare function executeVulnerabilityScan(db: FourDADatabase, params: Vul
75
90
  platform_inactive_vulnerabilities: {
76
91
  package: string;
77
92
  current_version: string;
93
+ source_dirs: string[];
94
+ ecosystem: import("../live/types.js").OsvEcosystem;
95
+ is_dev: boolean;
96
+ is_direct: boolean;
97
+ dev_scope_known: boolean;
98
+ target: string | null;
99
+ platform_active: boolean;
100
+ vuln_id: string;
101
+ aliases: string[];
102
+ severity: "critical" | "high" | "low" | "medium" | "unknown";
103
+ advisory_severity: "critical" | "high" | "low" | "medium" | "unknown";
104
+ severity_note?: string | undefined;
105
+ cvss_score: number | null;
106
+ summary: string;
107
+ fixed_version: string | null;
108
+ published: string;
109
+ references: string[];
110
+ }[];
111
+ maintenance_notices: {
112
+ package: string;
113
+ current_version: string;
114
+ source_dirs: string[];
78
115
  ecosystem: import("../live/types.js").OsvEcosystem;
79
116
  is_dev: boolean;
80
117
  is_direct: boolean;
@@ -83,22 +120,74 @@ export declare function executeVulnerabilityScan(db: FourDADatabase, params: Vul
83
120
  platform_active: boolean;
84
121
  vuln_id: string;
85
122
  aliases: string[];
86
- severity: "critical" | "high" | "medium" | "low" | "unknown";
123
+ severity: "critical" | "high" | "low" | "medium" | "unknown";
124
+ advisory_severity: "critical" | "high" | "low" | "medium" | "unknown";
125
+ severity_note?: string | undefined;
87
126
  cvss_score: number | null;
88
127
  summary: string;
89
128
  fixed_version: string | null;
90
129
  published: string;
91
130
  references: string[];
92
131
  }[];
132
+ install_drift: Record<string, unknown>[];
93
133
  recommendations: string[];
94
134
  clean_dependencies: number;
95
135
  scan_duration_ms: number;
96
136
  _meta: {
97
137
  source: string;
98
138
  cached: boolean;
139
+ osv_cached: boolean;
99
140
  offline: boolean;
100
141
  privacy: string;
101
142
  relevance: string;
143
+ severity_rule: string;
144
+ resolution: {
145
+ resolved_at: string | null;
146
+ lockfiles: {
147
+ path: string;
148
+ kind: "lockfile" | "manifest";
149
+ mtime: string | null;
150
+ }[];
151
+ re_resolved_this_call: boolean;
152
+ note: string;
153
+ };
154
+ };
155
+ } | {
156
+ scan_time: string;
157
+ project_root: string;
158
+ host_platform: string;
159
+ ecosystems_scanned: string[];
160
+ total_dependencies_scanned: number;
161
+ total_vulnerable_packages: number;
162
+ by_severity: import("../live/severity-scope.js").SeverityCounts;
163
+ vulnerable_packages: import("./vulnerability-scan-concise.js").PackageRow[];
164
+ vulnerable_packages_note?: string | undefined;
165
+ recommendations: string[];
166
+ recommendations_note?: string | undefined;
167
+ not_listed: {
168
+ platform_inactive: {
169
+ count: number;
170
+ packages: string[];
171
+ };
172
+ maintenance_notices: {
173
+ count: number;
174
+ packages: string[];
175
+ };
176
+ install_drift: {
177
+ count: number;
178
+ vulnerable_installed: Record<string, unknown>[];
179
+ };
180
+ note: string;
181
+ };
182
+ _meta: {
183
+ source: string;
184
+ osv_cached: boolean;
185
+ offline: boolean;
186
+ relevance: string;
187
+ severity_rule: string;
188
+ lockfiles_read: number;
189
+ resolved_at: string | null;
190
+ privacy: string;
102
191
  };
103
192
  } | {
104
193
  error: null;
@@ -106,29 +195,176 @@ export declare function executeVulnerabilityScan(db: FourDADatabase, params: Vul
106
195
  message: string;
107
196
  hint: string;
108
197
  } | {
198
+ hint?: undefined;
199
+ error: string;
200
+ offline?: undefined;
201
+ message?: undefined;
202
+ } | {
203
+ hint?: undefined;
109
204
  error: null;
110
205
  offline: boolean;
111
206
  message: string;
207
+ } | {
208
+ scan_time: string;
209
+ project: string;
210
+ project_root: string;
211
+ workspaces_with_findings: string[];
212
+ host_platform: string;
213
+ ecosystems_scanned: string[];
214
+ total_dependencies_scanned: number;
215
+ total_vulnerable_packages: number;
216
+ platform_inactive_packages: number;
217
+ by_severity: import("../live/severity-scope.js").SeverityCounts;
218
+ advisory_by_severity: import("../live/severity-scope.js").SeverityCounts;
219
+ vulnerabilities: {
220
+ package: string;
221
+ current_version: string;
222
+ source_dirs: string[];
223
+ ecosystem: import("../live/types.js").OsvEcosystem;
224
+ is_dev: boolean;
225
+ is_direct: boolean;
226
+ dev_scope_known: boolean;
227
+ target: string | null;
228
+ platform_active: boolean;
229
+ vuln_id: string;
230
+ aliases: string[];
231
+ severity: "critical" | "high" | "low" | "medium" | "unknown";
232
+ advisory_severity: "critical" | "high" | "low" | "medium" | "unknown";
233
+ severity_note?: string | undefined;
234
+ cvss_score: number | null;
235
+ summary: string;
236
+ fixed_version: string | null;
237
+ published: string;
238
+ references: string[];
239
+ }[];
240
+ platform_inactive_vulnerabilities: {
241
+ package: string;
242
+ current_version: string;
243
+ source_dirs: string[];
244
+ ecosystem: import("../live/types.js").OsvEcosystem;
245
+ is_dev: boolean;
246
+ is_direct: boolean;
247
+ dev_scope_known: boolean;
248
+ target: string | null;
249
+ platform_active: boolean;
250
+ vuln_id: string;
251
+ aliases: string[];
252
+ severity: "critical" | "high" | "low" | "medium" | "unknown";
253
+ advisory_severity: "critical" | "high" | "low" | "medium" | "unknown";
254
+ severity_note?: string | undefined;
255
+ cvss_score: number | null;
256
+ summary: string;
257
+ fixed_version: string | null;
258
+ published: string;
259
+ references: string[];
260
+ }[];
261
+ maintenance_notices: {
262
+ package: string;
263
+ current_version: string;
264
+ source_dirs: string[];
265
+ ecosystem: import("../live/types.js").OsvEcosystem;
266
+ is_dev: boolean;
267
+ is_direct: boolean;
268
+ dev_scope_known: boolean;
269
+ target: string | null;
270
+ platform_active: boolean;
271
+ vuln_id: string;
272
+ aliases: string[];
273
+ severity: "critical" | "high" | "low" | "medium" | "unknown";
274
+ advisory_severity: "critical" | "high" | "low" | "medium" | "unknown";
275
+ severity_note?: string | undefined;
276
+ cvss_score: number | null;
277
+ summary: string;
278
+ fixed_version: string | null;
279
+ published: string;
280
+ references: string[];
281
+ }[];
282
+ install_drift: Record<string, unknown>[];
283
+ recommendations: string[];
284
+ clean_dependencies: number;
285
+ scan_duration_ms: number;
286
+ _meta: {
287
+ source: string;
288
+ cached: boolean;
289
+ osv_cached: boolean;
290
+ offline: boolean;
291
+ privacy: string;
292
+ relevance: string;
293
+ severity_rule: string;
294
+ resolution: {
295
+ resolved_at: string | null;
296
+ lockfiles: {
297
+ path: string;
298
+ kind: "lockfile" | "manifest";
299
+ mtime: string | null;
300
+ }[];
301
+ re_resolved_this_call: boolean;
302
+ note: string;
303
+ };
304
+ };
112
305
  hint?: undefined;
306
+ error?: undefined;
307
+ offline?: undefined;
308
+ message?: undefined;
309
+ note: string;
113
310
  } | {
311
+ scan_time: string;
312
+ project_root: string;
313
+ host_platform: string;
314
+ ecosystems_scanned: string[];
315
+ total_dependencies_scanned: number;
316
+ total_vulnerable_packages: number;
317
+ by_severity: import("../live/severity-scope.js").SeverityCounts;
318
+ vulnerable_packages: import("./vulnerability-scan-concise.js").PackageRow[];
319
+ vulnerable_packages_note?: string | undefined;
320
+ recommendations: string[];
321
+ recommendations_note?: string | undefined;
322
+ not_listed: {
323
+ platform_inactive: {
324
+ count: number;
325
+ packages: string[];
326
+ };
327
+ maintenance_notices: {
328
+ count: number;
329
+ packages: string[];
330
+ };
331
+ install_drift: {
332
+ count: number;
333
+ vulnerable_installed: Record<string, unknown>[];
334
+ };
335
+ note: string;
336
+ };
337
+ _meta: {
338
+ source: string;
339
+ osv_cached: boolean;
340
+ offline: boolean;
341
+ relevance: string;
342
+ severity_rule: string;
343
+ lockfiles_read: number;
344
+ resolved_at: string | null;
345
+ privacy: string;
346
+ };
347
+ hint?: undefined;
348
+ error?: undefined;
349
+ offline?: undefined;
350
+ message?: undefined;
114
351
  note: string;
352
+ } | {
115
353
  scan_time: string;
116
354
  project: string;
355
+ project_root: string;
356
+ workspaces_with_findings: string[];
117
357
  host_platform: string;
118
358
  ecosystems_scanned: string[];
119
359
  total_dependencies_scanned: number;
120
360
  total_vulnerable_packages: number;
121
361
  platform_inactive_packages: number;
122
- by_severity: {
123
- critical: number;
124
- high: number;
125
- medium: number;
126
- low: number;
127
- unknown: number;
128
- };
362
+ by_severity: import("../live/severity-scope.js").SeverityCounts;
363
+ advisory_by_severity: import("../live/severity-scope.js").SeverityCounts;
129
364
  vulnerabilities: {
130
365
  package: string;
131
366
  current_version: string;
367
+ source_dirs: string[];
132
368
  ecosystem: import("../live/types.js").OsvEcosystem;
133
369
  is_dev: boolean;
134
370
  is_direct: boolean;
@@ -137,7 +373,9 @@ export declare function executeVulnerabilityScan(db: FourDADatabase, params: Vul
137
373
  platform_active: boolean;
138
374
  vuln_id: string;
139
375
  aliases: string[];
140
- severity: "critical" | "high" | "medium" | "low" | "unknown";
376
+ severity: "critical" | "high" | "low" | "medium" | "unknown";
377
+ advisory_severity: "critical" | "high" | "low" | "medium" | "unknown";
378
+ severity_note?: string | undefined;
141
379
  cvss_score: number | null;
142
380
  summary: string;
143
381
  fixed_version: string | null;
@@ -147,6 +385,7 @@ export declare function executeVulnerabilityScan(db: FourDADatabase, params: Vul
147
385
  platform_inactive_vulnerabilities: {
148
386
  package: string;
149
387
  current_version: string;
388
+ source_dirs: string[];
150
389
  ecosystem: import("../live/types.js").OsvEcosystem;
151
390
  is_dev: boolean;
152
391
  is_direct: boolean;
@@ -155,25 +394,106 @@ export declare function executeVulnerabilityScan(db: FourDADatabase, params: Vul
155
394
  platform_active: boolean;
156
395
  vuln_id: string;
157
396
  aliases: string[];
158
- severity: "critical" | "high" | "medium" | "low" | "unknown";
397
+ severity: "critical" | "high" | "low" | "medium" | "unknown";
398
+ advisory_severity: "critical" | "high" | "low" | "medium" | "unknown";
399
+ severity_note?: string | undefined;
159
400
  cvss_score: number | null;
160
401
  summary: string;
161
402
  fixed_version: string | null;
162
403
  published: string;
163
404
  references: string[];
164
405
  }[];
406
+ maintenance_notices: {
407
+ package: string;
408
+ current_version: string;
409
+ source_dirs: string[];
410
+ ecosystem: import("../live/types.js").OsvEcosystem;
411
+ is_dev: boolean;
412
+ is_direct: boolean;
413
+ dev_scope_known: boolean;
414
+ target: string | null;
415
+ platform_active: boolean;
416
+ vuln_id: string;
417
+ aliases: string[];
418
+ severity: "critical" | "high" | "low" | "medium" | "unknown";
419
+ advisory_severity: "critical" | "high" | "low" | "medium" | "unknown";
420
+ severity_note?: string | undefined;
421
+ cvss_score: number | null;
422
+ summary: string;
423
+ fixed_version: string | null;
424
+ published: string;
425
+ references: string[];
426
+ }[];
427
+ install_drift: Record<string, unknown>[];
165
428
  recommendations: string[];
166
429
  clean_dependencies: number;
167
430
  scan_duration_ms: number;
168
431
  _meta: {
169
432
  source: string;
170
433
  cached: boolean;
434
+ osv_cached: boolean;
171
435
  offline: boolean;
172
436
  privacy: string;
173
437
  relevance: string;
438
+ severity_rule: string;
439
+ resolution: {
440
+ resolved_at: string | null;
441
+ lockfiles: {
442
+ path: string;
443
+ kind: "lockfile" | "manifest";
444
+ mtime: string | null;
445
+ }[];
446
+ re_resolved_this_call: boolean;
447
+ note: string;
448
+ };
174
449
  };
450
+ hint?: undefined;
175
451
  error?: undefined;
176
452
  offline?: undefined;
177
453
  message?: undefined;
454
+ package_note: string;
455
+ note: string;
456
+ } | {
457
+ scan_time: string;
458
+ project_root: string;
459
+ host_platform: string;
460
+ ecosystems_scanned: string[];
461
+ total_dependencies_scanned: number;
462
+ total_vulnerable_packages: number;
463
+ by_severity: import("../live/severity-scope.js").SeverityCounts;
464
+ vulnerable_packages: import("./vulnerability-scan-concise.js").PackageRow[];
465
+ vulnerable_packages_note?: string | undefined;
466
+ recommendations: string[];
467
+ recommendations_note?: string | undefined;
468
+ not_listed: {
469
+ platform_inactive: {
470
+ count: number;
471
+ packages: string[];
472
+ };
473
+ maintenance_notices: {
474
+ count: number;
475
+ packages: string[];
476
+ };
477
+ install_drift: {
478
+ count: number;
479
+ vulnerable_installed: Record<string, unknown>[];
480
+ };
481
+ note: string;
482
+ };
483
+ _meta: {
484
+ source: string;
485
+ osv_cached: boolean;
486
+ offline: boolean;
487
+ relevance: string;
488
+ severity_rule: string;
489
+ lockfiles_read: number;
490
+ resolved_at: string | null;
491
+ privacy: string;
492
+ };
178
493
  hint?: undefined;
494
+ error?: undefined;
495
+ offline?: undefined;
496
+ message?: undefined;
497
+ package_note: string;
498
+ note: string;
179
499
  }>;