@dependabit/detector 0.1.16 → 0.1.18
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.
- package/CHANGELOG.md +20 -0
- package/dist/detector.d.ts +179 -12
- package/dist/detector.d.ts.map +1 -1
- package/dist/detector.js +121 -12
- package/dist/detector.js.map +1 -1
- package/dist/diff-parser.js.map +1 -1
- package/dist/llm/client.d.ts +112 -3
- package/dist/llm/client.d.ts.map +1 -1
- package/dist/llm/client.js +34 -2
- package/dist/llm/client.js.map +1 -1
- package/dist/llm/copilot.d.ts.map +1 -1
- package/dist/llm/copilot.js +1 -7
- package/dist/llm/copilot.js.map +1 -1
- package/dist/llm/prompts.d.ts +42 -2
- package/dist/llm/prompts.d.ts.map +1 -1
- package/dist/llm/prompts.js +42 -2
- package/dist/llm/prompts.js.map +1 -1
- package/dist/parsers/code-comments.js.map +1 -1
- package/dist/parsers/package-files.js.map +1 -1
- package/dist/parsers/readme.d.ts +1 -1
- package/dist/parsers/readme.d.ts.map +1 -1
- package/dist/parsers/readme.js +1 -1
- package/dist/parsers/readme.js.map +1 -1
- package/package.json +28 -11
- package/src/detector.ts +0 -1043
- package/src/diff-parser.ts +0 -257
- package/src/index.ts +0 -43
- package/src/llm/client.ts +0 -85
- package/src/llm/copilot.ts +0 -150
- package/src/llm/prompts.ts +0 -111
- package/src/parsers/code-comments.ts +0 -178
- package/src/parsers/package-files.ts +0 -156
- package/src/parsers/readme.ts +0 -191
- package/test/detector.test.ts +0 -169
- package/test/diff-parser.test.ts +0 -187
- package/test/llm/client.test.ts +0 -31
- package/test/llm/copilot.test.ts +0 -334
- package/test/parsers/code-comments.test.ts +0 -98
- package/test/parsers/package-files.test.ts +0 -52
- package/test/parsers/readme.test.ts +0 -52
- package/tsconfig.json +0 -10
- package/tsconfig.tsbuildinfo +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,25 @@
|
|
|
1
1
|
# @dependabit/detector
|
|
2
2
|
|
|
3
|
+
## 0.1.18
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`ca60e76`](https://github.com/pradeepmouli/dependabit/commit/ca60e767ca80da383f6348b3b893c182f4cd184e) Thanks [@pradeepmouli](https://github.com/pradeepmouli)! - Update production dependencies (@actions/core, @actions/github, zod, yaml)
|
|
8
|
+
|
|
9
|
+
- Updated dependencies [[`ca60e76`](https://github.com/pradeepmouli/dependabit/commit/ca60e767ca80da383f6348b3b893c182f4cd184e)]:
|
|
10
|
+
- @dependabit/github-client@0.1.16
|
|
11
|
+
- @dependabit/manifest@0.1.16
|
|
12
|
+
|
|
13
|
+
## 0.1.17
|
|
14
|
+
|
|
15
|
+
### Patch Changes
|
|
16
|
+
|
|
17
|
+
- [#101](https://github.com/pradeepmouli/dependabit/pull/101) [`83b9818`](https://github.com/pradeepmouli/dependabit/commit/83b98187940da75a41fb41990ea03c8d962146b4) Thanks [@pradeepmouli](https://github.com/pradeepmouli)! - - chore: bump typedoc-plugin-to-skills to ^1.3.0
|
|
18
|
+
|
|
19
|
+
- Updated dependencies [[`83b9818`](https://github.com/pradeepmouli/dependabit/commit/83b98187940da75a41fb41990ea03c8d962146b4)]:
|
|
20
|
+
- @dependabit/github-client@0.1.15
|
|
21
|
+
- @dependabit/manifest@0.1.15
|
|
22
|
+
|
|
3
23
|
## 0.1.16
|
|
4
24
|
|
|
5
25
|
### Patch Changes
|
package/dist/detector.d.ts
CHANGED
|
@@ -4,16 +4,74 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import type { LLMProvider } from './llm/client.js';
|
|
6
6
|
import type { DependencyEntry } from '@dependabit/manifest';
|
|
7
|
+
/**
|
|
8
|
+
* Configuration options for the {@link Detector} orchestrator.
|
|
9
|
+
*
|
|
10
|
+
* @remarks
|
|
11
|
+
* All options except `repoPath` and `llmProvider` have safe defaults.
|
|
12
|
+
* The detector respects `.gitignore` files and git's global excludes file
|
|
13
|
+
* by default; set `useGitExcludes` to `false` to disable that behaviour.
|
|
14
|
+
*
|
|
15
|
+
* @config
|
|
16
|
+
* @category Detector
|
|
17
|
+
*
|
|
18
|
+
* @useWhen
|
|
19
|
+
* You want to scan a local repository clone for informational dependencies
|
|
20
|
+
* that package managers do not track.
|
|
21
|
+
*
|
|
22
|
+
* @avoidWhen
|
|
23
|
+
* The repository has not been cloned to disk — the detector reads files
|
|
24
|
+
* from the filesystem and cannot operate on a bare Git remote.
|
|
25
|
+
*
|
|
26
|
+
* @never
|
|
27
|
+
* - `ignorePatterns` performs substring matching on path segments; overly
|
|
28
|
+
* broad patterns (e.g. `"src"`) will silently exclude large parts of the
|
|
29
|
+
* repository.
|
|
30
|
+
* - `repoOwner` / `repoName` are used to filter self-referential URLs from
|
|
31
|
+
* results. Omitting them causes the repo's own URLs to appear as
|
|
32
|
+
* dependencies.
|
|
33
|
+
* - Token budgets: the LLM provider is called once per README (up to 5) and
|
|
34
|
+
* once per unclassified URL. Large repositories with many READMEs can
|
|
35
|
+
* exhaust the provider's context window mid-run; truncation at 5 000
|
|
36
|
+
* characters per document is intentional but may miss late-appearing URLs.
|
|
37
|
+
*/
|
|
7
38
|
export interface DetectorOptions {
|
|
39
|
+
/** Absolute path to the root of the repository on disk. */
|
|
8
40
|
repoPath: string;
|
|
41
|
+
/** LLM provider used for document analysis and dependency classification. */
|
|
9
42
|
llmProvider: LLMProvider;
|
|
43
|
+
/**
|
|
44
|
+
* Path segments to exclude during directory traversal.
|
|
45
|
+
* @defaultValue `['node_modules', 'dist', 'build', 'target', 'vendor', 'venv', '__pycache__', 'coverage']`
|
|
46
|
+
*/
|
|
10
47
|
ignorePatterns?: string[];
|
|
48
|
+
/**
|
|
49
|
+
* When `true`, `.gitignore` files and git's global excludes are loaded
|
|
50
|
+
* and applied during traversal.
|
|
51
|
+
* @defaultValue `true`
|
|
52
|
+
*/
|
|
11
53
|
useGitExcludes?: boolean;
|
|
54
|
+
/** GitHub owner used to filter self-referential URLs. */
|
|
12
55
|
repoOwner?: string;
|
|
56
|
+
/** GitHub repository name used to filter self-referential URLs. */
|
|
13
57
|
repoName?: string;
|
|
14
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* The result produced by {@link Detector.detectDependencies} or
|
|
61
|
+
* {@link Detector.analyzeFiles}.
|
|
62
|
+
*
|
|
63
|
+
* @remarks
|
|
64
|
+
* `statistics` are informational only — they track how many LLM calls were
|
|
65
|
+
* made and the cumulative token cost. Do not rely on `llmCalls` being zero
|
|
66
|
+
* as an indicator that the LLM was not consulted; programmatic classification
|
|
67
|
+
* may succeed without any LLM calls.
|
|
68
|
+
*
|
|
69
|
+
* @category Detector
|
|
70
|
+
*/
|
|
15
71
|
export interface DetectionResult {
|
|
72
|
+
/** Discovered dependency entries ready for merging into a manifest. */
|
|
16
73
|
dependencies: DependencyEntry[];
|
|
74
|
+
/** Diagnostic counters for the scan run. */
|
|
17
75
|
statistics: {
|
|
18
76
|
filesScanned: number;
|
|
19
77
|
urlsFound: number;
|
|
@@ -23,7 +81,67 @@ export interface DetectionResult {
|
|
|
23
81
|
};
|
|
24
82
|
}
|
|
25
83
|
/**
|
|
26
|
-
*
|
|
84
|
+
* Orchestrates multi-stage detection of informational external dependencies
|
|
85
|
+
* inside a local repository clone.
|
|
86
|
+
*
|
|
87
|
+
* @remarks
|
|
88
|
+
* Detection follows a hybrid pipeline:
|
|
89
|
+
* 1. Programmatic parsing of README files, documentation, package metadata,
|
|
90
|
+
* and code comments extracts candidate URLs.
|
|
91
|
+
* 2. An LLM second-pass (up to 5 README files, capped at 5 000 chars each)
|
|
92
|
+
* enriches the candidate set with URLs that plain text parsing missed.
|
|
93
|
+
* 3. Programmatic heuristics classify each URL's `DependencyType` and
|
|
94
|
+
* `AccessMethod`; an LLM fallback is used only when heuristics fail.
|
|
95
|
+
* 4. Low-confidence entries (below 0.5) are discarded before returning.
|
|
96
|
+
*
|
|
97
|
+
* The detector does **not** write to disk or mutate any manifest file —
|
|
98
|
+
* callers are responsible for merging the returned `DetectionResult` into
|
|
99
|
+
* an existing manifest via `@dependabit/manifest`.
|
|
100
|
+
*
|
|
101
|
+
* @category Detector
|
|
102
|
+
*
|
|
103
|
+
* @useWhen
|
|
104
|
+
* Scanning a freshly-cloned or locally-checked-out repository to build an
|
|
105
|
+
* initial manifest, or during CI to detect newly-introduced dependencies from
|
|
106
|
+
* a commit diff.
|
|
107
|
+
*
|
|
108
|
+
* @avoidWhen
|
|
109
|
+
* - The repository is very large (> 10 000 source files) — source file
|
|
110
|
+
* scanning is hard-capped at 50 files per run.
|
|
111
|
+
* - You need deterministic, reproducible output across model versions — LLM
|
|
112
|
+
* classifications are non-deterministic even with `temperature: 0`.
|
|
113
|
+
*
|
|
114
|
+
* @never
|
|
115
|
+
* - **LLM output format instability**: the detector parses raw JSON from the
|
|
116
|
+
* LLM response; a model update that changes the output schema will silently
|
|
117
|
+
* produce zero LLM-sourced results rather than throwing. Pin the model
|
|
118
|
+
* version in `DetectorOptions.llmProvider` when reproducibility matters.
|
|
119
|
+
* - **Non-determinism**: identical inputs across two runs may produce
|
|
120
|
+
* different `dependencies` arrays if LLM classification is involved.
|
|
121
|
+
* Never diff two manifests by dependency count alone.
|
|
122
|
+
* - **Token budget exhaustion**: manifests with large README files are
|
|
123
|
+
* truncated to 5 000 characters before being sent to the LLM. URLs that
|
|
124
|
+
* appear only in the truncated portion will not be discovered by the LLM
|
|
125
|
+
* pass (they may still be found by the programmatic parser).
|
|
126
|
+
* - **Source file cap**: only the first 50 source files returned by the
|
|
127
|
+
* directory traversal are scanned for code-comment references. Repositories
|
|
128
|
+
* with many source files may have incomplete coverage.
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* ```ts
|
|
132
|
+
* import { Detector } from '@dependabit/detector';
|
|
133
|
+
* import { GitHubCopilotProvider } from '@dependabit/detector';
|
|
134
|
+
*
|
|
135
|
+
* const detector = new Detector({
|
|
136
|
+
* repoPath: '/path/to/repo',
|
|
137
|
+
* llmProvider: new GitHubCopilotProvider({ model: 'gpt-4o' }),
|
|
138
|
+
* repoOwner: 'my-org',
|
|
139
|
+
* repoName: 'my-repo',
|
|
140
|
+
* });
|
|
141
|
+
*
|
|
142
|
+
* const result = await detector.detectDependencies();
|
|
143
|
+
* console.log(`Found ${result.dependencies.length} dependencies`);
|
|
144
|
+
* ```
|
|
27
145
|
*/
|
|
28
146
|
export declare class Detector {
|
|
29
147
|
private options;
|
|
@@ -32,16 +150,36 @@ export declare class Detector {
|
|
|
32
150
|
private skipUrlPatterns;
|
|
33
151
|
constructor(options: DetectorOptions);
|
|
34
152
|
/**
|
|
35
|
-
*
|
|
153
|
+
* Performs a full-repository scan and returns all detected informational
|
|
154
|
+
* dependencies as a {@link DetectionResult}.
|
|
155
|
+
*
|
|
156
|
+
* @remarks
|
|
157
|
+
* The scan is bounded: README files are capped at 5 for LLM analysis,
|
|
158
|
+
* source files at 50 for code-comment parsing. Results are
|
|
159
|
+
* non-deterministic when LLM classification is involved.
|
|
160
|
+
*
|
|
161
|
+
* @returns Detected dependencies and diagnostic statistics.
|
|
162
|
+
*
|
|
163
|
+
* @throws {Error} If the LLM provider's `analyze` call throws and the error
|
|
164
|
+
* is not caught by the internal try-catch blocks (individual LLM failures
|
|
165
|
+
* are logged and skipped; file-system errors bubble up).
|
|
36
166
|
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
167
|
+
* @category Detector
|
|
168
|
+
*
|
|
169
|
+
* @useWhen
|
|
170
|
+
* Building an initial manifest for a repository or running a full refresh
|
|
171
|
+
* on a schedule.
|
|
172
|
+
*
|
|
173
|
+
* @avoidWhen
|
|
174
|
+
* Only a small subset of files changed — prefer {@link Detector.analyzeFiles}
|
|
175
|
+
* for incremental updates to avoid unnecessary LLM calls.
|
|
176
|
+
*
|
|
177
|
+
* @never
|
|
178
|
+
* - Results are **not** cached between calls; calling `detectDependencies`
|
|
179
|
+
* twice on the same instance makes duplicate LLM calls.
|
|
180
|
+
* - The method does not deduplicate against an existing manifest; callers
|
|
181
|
+
* must use `mergeManifests` from `@dependabit/manifest` to avoid
|
|
182
|
+
* duplicate entries.
|
|
45
183
|
*/
|
|
46
184
|
detectDependencies(): Promise<DetectionResult>;
|
|
47
185
|
private addReference;
|
|
@@ -75,8 +213,37 @@ export declare class Detector {
|
|
|
75
213
|
private getDefaultGlobalExcludeFiles;
|
|
76
214
|
private expandHomePath;
|
|
77
215
|
/**
|
|
78
|
-
*
|
|
79
|
-
*
|
|
216
|
+
* Analyzes a specific list of files for dependencies rather than scanning
|
|
217
|
+
* the entire repository. Prefer this over {@link Detector.detectDependencies}
|
|
218
|
+
* when only a handful of files changed (e.g., in a pull-request diff).
|
|
219
|
+
*
|
|
220
|
+
* @param filePaths - Absolute or `repoPath`-relative file paths to analyze.
|
|
221
|
+
* Paths outside the repository root are silently skipped to prevent
|
|
222
|
+
* directory-traversal attacks.
|
|
223
|
+
*
|
|
224
|
+
* @returns Detected dependencies and diagnostic statistics.
|
|
225
|
+
*
|
|
226
|
+
* @remarks
|
|
227
|
+
* Unlike `detectDependencies`, this method does NOT perform an LLM second
|
|
228
|
+
* pass on README files. Classification still falls back to the LLM when
|
|
229
|
+
* programmatic heuristics cannot determine a dependency type.
|
|
230
|
+
*
|
|
231
|
+
* @category Detector
|
|
232
|
+
*
|
|
233
|
+
* @useWhen
|
|
234
|
+
* Incremental manifest updates after a commit or pull request — pass the
|
|
235
|
+
* list of changed files from the diff parser.
|
|
236
|
+
*
|
|
237
|
+
* @avoidWhen
|
|
238
|
+
* Running a full initial scan — use {@link Detector.detectDependencies}
|
|
239
|
+
* instead, which also performs an LLM enrichment pass.
|
|
240
|
+
*
|
|
241
|
+
* @never
|
|
242
|
+
* - Files outside `repoPath` are **silently** skipped without error.
|
|
243
|
+
* Callers relying on path-traversal behaviour will get empty results.
|
|
244
|
+
* - File read errors are logged with `console.warn` and skipped, not
|
|
245
|
+
* thrown; a broken file system will produce partial results without
|
|
246
|
+
* surfacing an error.
|
|
80
247
|
*/
|
|
81
248
|
analyzeFiles(filePaths: string[]): Promise<DetectionResult>;
|
|
82
249
|
}
|
package/dist/detector.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../src/detector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAUnD,OAAO,KAAK,EACV,eAAe,EAIhB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,UAAU,EAAE;QACV,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAeD
|
|
1
|
+
{"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../src/detector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAUnD,OAAO,KAAK,EACV,eAAe,EAIhB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,WAAW,eAAe;IAC9B,2DAA2D;IAC3D,QAAQ,EAAE,MAAM,CAAC;IACjB,6EAA6E;IAC7E,WAAW,EAAE,WAAW,CAAC;IACzB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,eAAe;IAC9B,uEAAuE;IACvE,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,4CAA4C;IAC5C,UAAU,EAAE;QACV,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAeD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,eAAe,CAAW;IAElC,YAAY,OAAO,EAAE,eAAe,EA8BnC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACG,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC,CA2SnD;IAED,OAAO,CAAC,YAAY;IAqCpB,OAAO,CAAC,YAAY;IAIpB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA0B7B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAgE/B,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,gBAAgB;YAsBV,SAAS;YA2BT,gBAAgB;YAIhB,eAAe;IAI7B,OAAO,CAAC,YAAY;YAIN,gBAAgB;IAa9B,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,kBAAkB;YAIZ,YAAY;IAmB1B,OAAO,CAAC,mBAAmB;YAeb,gBAAgB;YA6ChB,qBAAqB;IAsBnC,OAAO,CAAC,oBAAoB;IAmB5B,OAAO,CAAC,uBAAuB;IAiB/B,OAAO,CAAC,2BAA2B;IAkBnC,OAAO,CAAC,4BAA4B;IASpC,OAAO,CAAC,cAAc;IAUtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CA8MhE;CACF"}
|
package/dist/detector.js
CHANGED
|
@@ -24,7 +24,67 @@ const DEFAULT_IGNORE_PATTERNS = [
|
|
|
24
24
|
];
|
|
25
25
|
const ALLOWED_DOT_DIRECTORIES = new Set();
|
|
26
26
|
/**
|
|
27
|
-
*
|
|
27
|
+
* Orchestrates multi-stage detection of informational external dependencies
|
|
28
|
+
* inside a local repository clone.
|
|
29
|
+
*
|
|
30
|
+
* @remarks
|
|
31
|
+
* Detection follows a hybrid pipeline:
|
|
32
|
+
* 1. Programmatic parsing of README files, documentation, package metadata,
|
|
33
|
+
* and code comments extracts candidate URLs.
|
|
34
|
+
* 2. An LLM second-pass (up to 5 README files, capped at 5 000 chars each)
|
|
35
|
+
* enriches the candidate set with URLs that plain text parsing missed.
|
|
36
|
+
* 3. Programmatic heuristics classify each URL's `DependencyType` and
|
|
37
|
+
* `AccessMethod`; an LLM fallback is used only when heuristics fail.
|
|
38
|
+
* 4. Low-confidence entries (below 0.5) are discarded before returning.
|
|
39
|
+
*
|
|
40
|
+
* The detector does **not** write to disk or mutate any manifest file —
|
|
41
|
+
* callers are responsible for merging the returned `DetectionResult` into
|
|
42
|
+
* an existing manifest via `@dependabit/manifest`.
|
|
43
|
+
*
|
|
44
|
+
* @category Detector
|
|
45
|
+
*
|
|
46
|
+
* @useWhen
|
|
47
|
+
* Scanning a freshly-cloned or locally-checked-out repository to build an
|
|
48
|
+
* initial manifest, or during CI to detect newly-introduced dependencies from
|
|
49
|
+
* a commit diff.
|
|
50
|
+
*
|
|
51
|
+
* @avoidWhen
|
|
52
|
+
* - The repository is very large (> 10 000 source files) — source file
|
|
53
|
+
* scanning is hard-capped at 50 files per run.
|
|
54
|
+
* - You need deterministic, reproducible output across model versions — LLM
|
|
55
|
+
* classifications are non-deterministic even with `temperature: 0`.
|
|
56
|
+
*
|
|
57
|
+
* @never
|
|
58
|
+
* - **LLM output format instability**: the detector parses raw JSON from the
|
|
59
|
+
* LLM response; a model update that changes the output schema will silently
|
|
60
|
+
* produce zero LLM-sourced results rather than throwing. Pin the model
|
|
61
|
+
* version in `DetectorOptions.llmProvider` when reproducibility matters.
|
|
62
|
+
* - **Non-determinism**: identical inputs across two runs may produce
|
|
63
|
+
* different `dependencies` arrays if LLM classification is involved.
|
|
64
|
+
* Never diff two manifests by dependency count alone.
|
|
65
|
+
* - **Token budget exhaustion**: manifests with large README files are
|
|
66
|
+
* truncated to 5 000 characters before being sent to the LLM. URLs that
|
|
67
|
+
* appear only in the truncated portion will not be discovered by the LLM
|
|
68
|
+
* pass (they may still be found by the programmatic parser).
|
|
69
|
+
* - **Source file cap**: only the first 50 source files returned by the
|
|
70
|
+
* directory traversal are scanned for code-comment references. Repositories
|
|
71
|
+
* with many source files may have incomplete coverage.
|
|
72
|
+
*
|
|
73
|
+
* @example
|
|
74
|
+
* ```ts
|
|
75
|
+
* import { Detector } from '@dependabit/detector';
|
|
76
|
+
* import { GitHubCopilotProvider } from '@dependabit/detector';
|
|
77
|
+
*
|
|
78
|
+
* const detector = new Detector({
|
|
79
|
+
* repoPath: '/path/to/repo',
|
|
80
|
+
* llmProvider: new GitHubCopilotProvider({ model: 'gpt-4o' }),
|
|
81
|
+
* repoOwner: 'my-org',
|
|
82
|
+
* repoName: 'my-repo',
|
|
83
|
+
* });
|
|
84
|
+
*
|
|
85
|
+
* const result = await detector.detectDependencies();
|
|
86
|
+
* console.log(`Found ${result.dependencies.length} dependencies`);
|
|
87
|
+
* ```
|
|
28
88
|
*/
|
|
29
89
|
export class Detector {
|
|
30
90
|
options;
|
|
@@ -59,16 +119,36 @@ export class Detector {
|
|
|
59
119
|
];
|
|
60
120
|
}
|
|
61
121
|
/**
|
|
62
|
-
*
|
|
122
|
+
* Performs a full-repository scan and returns all detected informational
|
|
123
|
+
* dependencies as a {@link DetectionResult}.
|
|
63
124
|
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
125
|
+
* @remarks
|
|
126
|
+
* The scan is bounded: README files are capped at 5 for LLM analysis,
|
|
127
|
+
* source files at 50 for code-comment parsing. Results are
|
|
128
|
+
* non-deterministic when LLM classification is involved.
|
|
129
|
+
*
|
|
130
|
+
* @returns Detected dependencies and diagnostic statistics.
|
|
131
|
+
*
|
|
132
|
+
* @throws {Error} If the LLM provider's `analyze` call throws and the error
|
|
133
|
+
* is not caught by the internal try-catch blocks (individual LLM failures
|
|
134
|
+
* are logged and skipped; file-system errors bubble up).
|
|
135
|
+
*
|
|
136
|
+
* @category Detector
|
|
137
|
+
*
|
|
138
|
+
* @useWhen
|
|
139
|
+
* Building an initial manifest for a repository or running a full refresh
|
|
140
|
+
* on a schedule.
|
|
141
|
+
*
|
|
142
|
+
* @avoidWhen
|
|
143
|
+
* Only a small subset of files changed — prefer {@link Detector.analyzeFiles}
|
|
144
|
+
* for incremental updates to avoid unnecessary LLM calls.
|
|
145
|
+
*
|
|
146
|
+
* @never
|
|
147
|
+
* - Results are **not** cached between calls; calling `detectDependencies`
|
|
148
|
+
* twice on the same instance makes duplicate LLM calls.
|
|
149
|
+
* - The method does not deduplicate against an existing manifest; callers
|
|
150
|
+
* must use `mergeManifests` from `@dependabit/manifest` to avoid
|
|
151
|
+
* duplicate entries.
|
|
72
152
|
*/
|
|
73
153
|
async detectDependencies() {
|
|
74
154
|
const allReferences = new Map();
|
|
@@ -642,8 +722,37 @@ Return as JSON: {"accessMethod": "...", "confidence": 0.0-1.0}`;
|
|
|
642
722
|
return filePath;
|
|
643
723
|
}
|
|
644
724
|
/**
|
|
645
|
-
*
|
|
646
|
-
*
|
|
725
|
+
* Analyzes a specific list of files for dependencies rather than scanning
|
|
726
|
+
* the entire repository. Prefer this over {@link Detector.detectDependencies}
|
|
727
|
+
* when only a handful of files changed (e.g., in a pull-request diff).
|
|
728
|
+
*
|
|
729
|
+
* @param filePaths - Absolute or `repoPath`-relative file paths to analyze.
|
|
730
|
+
* Paths outside the repository root are silently skipped to prevent
|
|
731
|
+
* directory-traversal attacks.
|
|
732
|
+
*
|
|
733
|
+
* @returns Detected dependencies and diagnostic statistics.
|
|
734
|
+
*
|
|
735
|
+
* @remarks
|
|
736
|
+
* Unlike `detectDependencies`, this method does NOT perform an LLM second
|
|
737
|
+
* pass on README files. Classification still falls back to the LLM when
|
|
738
|
+
* programmatic heuristics cannot determine a dependency type.
|
|
739
|
+
*
|
|
740
|
+
* @category Detector
|
|
741
|
+
*
|
|
742
|
+
* @useWhen
|
|
743
|
+
* Incremental manifest updates after a commit or pull request — pass the
|
|
744
|
+
* list of changed files from the diff parser.
|
|
745
|
+
*
|
|
746
|
+
* @avoidWhen
|
|
747
|
+
* Running a full initial scan — use {@link Detector.detectDependencies}
|
|
748
|
+
* instead, which also performs an LLM enrichment pass.
|
|
749
|
+
*
|
|
750
|
+
* @never
|
|
751
|
+
* - Files outside `repoPath` are **silently** skipped without error.
|
|
752
|
+
* Callers relying on path-traversal behaviour will get empty results.
|
|
753
|
+
* - File read errors are logged with `console.warn` and skipped, not
|
|
754
|
+
* thrown; a broken file system will produce partial results without
|
|
755
|
+
* surfacing an error.
|
|
647
756
|
*/
|
|
648
757
|
async analyzeFiles(filePaths) {
|
|
649
758
|
const allReferences = new Map();
|
package/dist/detector.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detector.js","sourceRoot":"","sources":["../src/detector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"detector.js","sourceRoot":"","sources":["../src/detector.ts"],"names":[],"mappings":"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"}
|
package/dist/diff-parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff-parser.js","sourceRoot":"","sources":["../src/diff-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAoBH,oCAAoC;AACpC,MAAM,WAAW,GAAG,kCAAkC,CAAC;AAEvD,8BAA8B;AAC9B,MAAM,oBAAoB,GAAG;IAC3B,WAAW,EAAE,8BAA8B;IAC3C,eAAe,EAAE,+BAA+B;IAChD,SAAS,EACP,uNAAuN;CAC1N,CAAC;AAEF,mDAAmD;AACnD,MAAM,mBAAmB,GAAG;IAC1B,KAAK;IACL,MAAM;IACN,MAAM;IACN,OAAO,EAAE,gBAAgB;IACzB,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,OAAO;IACP,MAAM;IACN,IAAI;IACJ,IAAI,EAAE,OAAO;IACb,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM,EAAE,SAAS;IACjB,OAAO;IACP,MAAM,CAAC,SAAS;CACjB,CAAC;AAEF,yBAAyB;AACzB,MAAM,sBAAsB,GAAG;IAC7B,cAAc;IACd,kBAAkB;IAClB,YAAY;IACZ,QAAQ;IACR,SAAS;IACT,cAAc;IACd,SAAS;IACT,eAAe;CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,KAAa
|
|
1
|
+
{"version":3,"file":"diff-parser.js","sourceRoot":"","sources":["../src/diff-parser.ts"],"names":[],"mappings":"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"}
|