@dependabit/monitor 0.1.14 → 0.1.15
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 +9 -0
- package/dist/checkers/github-repo.js.map +1 -1
- package/dist/checkers/openapi.js.map +1 -1
- package/dist/checkers/url-content.js.map +1 -1
- package/dist/comparator.js.map +1 -1
- package/dist/monitor.d.ts +81 -0
- package/dist/monitor.d.ts.map +1 -1
- package/dist/monitor.js +50 -0
- package/dist/monitor.js.map +1 -1
- package/dist/normalizer.js.map +1 -1
- package/dist/scheduler.js.map +1 -1
- package/dist/severity.js.map +1 -1
- package/dist/types.d.ts +73 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +7 -1
- package/dist/types.js.map +1 -1
- package/package.json +26 -9
- package/src/checkers/github-repo.ts +0 -150
- package/src/checkers/index.ts +0 -7
- package/src/checkers/openapi.ts +0 -310
- package/src/checkers/url-content.ts +0 -78
- package/src/comparator.ts +0 -68
- package/src/index.ts +0 -20
- package/src/monitor.ts +0 -120
- package/src/normalizer.ts +0 -122
- package/src/scheduler.ts +0 -175
- package/src/severity.ts +0 -112
- package/src/types.ts +0 -40
- package/test/checkers/github-repo.test.ts +0 -124
- package/test/checkers/openapi.test.ts +0 -352
- package/test/checkers/url-content.test.ts +0 -99
- package/test/comparator.test.ts +0 -108
- package/test/monitor.test.ts +0 -177
- package/test/normalizer.test.ts +0 -66
- package/test/scheduler.test.ts +0 -674
- package/test/severity.test.ts +0 -122
- package/tsconfig.json +0 -10
- package/tsconfig.tsbuildinfo +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# @dependabit/monitor
|
|
2
2
|
|
|
3
|
+
## 0.1.15
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#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
|
|
8
|
+
|
|
9
|
+
- Updated dependencies [[`83b9818`](https://github.com/pradeepmouli/dependabit/commit/83b98187940da75a41fb41990ea03c8d962146b4)]:
|
|
10
|
+
- @dependabit/manifest@0.1.15
|
|
11
|
+
|
|
3
12
|
## 0.1.14
|
|
4
13
|
|
|
5
14
|
### Patch Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github-repo.js","sourceRoot":"","sources":["../../src/checkers/github-repo.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,OAAO,iBAAiB;IAC5B;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,MAAoB
|
|
1
|
+
{"version":3,"file":"github-repo.js","sourceRoot":"","sources":["../../src/checkers/github-repo.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/checkers/openapi.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAyD1C,MAAM,OAAO,cAAc;IACzB;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,MAAoB
|
|
1
|
+
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/checkers/openapi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url-content.js","sourceRoot":"","sources":["../../src/checkers/url-content.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,OAAO,iBAAiB;IAC5B;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,MAAoB
|
|
1
|
+
{"version":3,"file":"url-content.js","sourceRoot":"","sources":["../../src/checkers/url-content.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,OAAO,iBAAiB;IAC5B;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,MAAoB;QAC9B,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;QAEvB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,OAAO,EAAE;oBACP,YAAY,EAAE,wBAAwB;iBACvC;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,eAAe,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;YAC3E,CAAC;YAED,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;YAC/D,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAEtC,IAAI,iBAAyB,CAAC;YAE9B,8CAA8C;YAC9C,IACE,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC;gBACjC,OAAO,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;gBACtC,OAAO,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAClC,CAAC;gBACD,iBAAiB,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,+EAA+E;gBAC/E,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAC1D,CAAC;YAED,6CAA6C;YAC7C,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAEtF,OAAO;gBACL,SAAS;gBACT,SAAS,EAAE,IAAI,IAAI,EAAE;gBACrB,QAAQ,EAAE;oBACR,WAAW;oBACX,aAAa,EAAE,OAAO,CAAC,MAAM;oBAC7B,gBAAgB,EAAE,iBAAiB,CAAC,MAAM;iBAC3C;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,gCAAiC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,IAAwB,EAAE,IAAwB;QAC9D,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,mCAAmC;QACnC,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;QAED,OAAO;YACL,UAAU,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC;YAC9B,OAAO;SACR,CAAC;IACJ,CAAC;CACF"}
|
package/dist/comparator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comparator.js","sourceRoot":"","sources":["../src/comparator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,OAAO,eAAe;IAC1B;;OAEG;IACH,OAAO,CAAC,QAA4B,EAAE,QAA4B
|
|
1
|
+
{"version":3,"file":"comparator.js","sourceRoot":"","sources":["../src/comparator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,OAAO,eAAe;IAC1B;;OAEG;IACH,OAAO,CAAC,QAA4B,EAAE,QAA4B;QAChE,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,mBAAmB;QACnB,IAAI,QAAQ,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5B,CAAC;QAED,gBAAgB;QAChB,IAAI,QAAQ,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC1C,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;QAED,8CAA8C;QAC9C,IAAI,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO;YACL,UAAU,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC;YAC9B,OAAO;YACP,UAAU,EAAE,QAAQ,CAAC,OAAO;YAC5B,UAAU,EAAE,QAAQ,CAAC,OAAO;SAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,kBAAkB,CACxB,OAAiC,EACjC,OAAiC;QAEjC,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAErC,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClC,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
|
package/dist/monitor.d.ts
CHANGED
|
@@ -3,6 +3,26 @@
|
|
|
3
3
|
* Coordinates dependency checking across multiple access methods
|
|
4
4
|
*/
|
|
5
5
|
import type { Checker, AccessConfig, DependencySnapshot, ChangeDetection } from './types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Runtime descriptor passed to the monitor for a single tracked dependency.
|
|
8
|
+
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* Extends {@link AccessConfig} with identity, state-tracking, and monitoring
|
|
11
|
+
* rule fields. This is typically constructed by reading a
|
|
12
|
+
* `DependencyEntry` from a manifest and projecting the relevant fields.
|
|
13
|
+
*
|
|
14
|
+
* @config
|
|
15
|
+
* @category Monitor
|
|
16
|
+
*
|
|
17
|
+
* @never
|
|
18
|
+
* - `currentStateHash` must reflect the **last known good state** fetched by
|
|
19
|
+
* the monitor. An empty string or stale hash causes the first check to
|
|
20
|
+
* always report a change (false positive on first run).
|
|
21
|
+
* - `lastChecked` is used by the `Scheduler` to decide whether a dependency
|
|
22
|
+
* is due for checking. An incorrect or missing timestamp causes either
|
|
23
|
+
* perpetual over-checking (missing timestamp) or silent skipping (future
|
|
24
|
+
* timestamp).
|
|
25
|
+
*/
|
|
6
26
|
export interface DependencyConfig extends AccessConfig {
|
|
7
27
|
id: string;
|
|
8
28
|
name?: string;
|
|
@@ -15,14 +35,75 @@ export interface DependencyConfig extends AccessConfig {
|
|
|
15
35
|
ignoreChanges?: boolean;
|
|
16
36
|
};
|
|
17
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* The outcome of a single dependency check performed by {@link Monitor}.
|
|
40
|
+
*
|
|
41
|
+
* @remarks
|
|
42
|
+
* When `hasChanged` is `false` and `error` is undefined, the dependency's
|
|
43
|
+
* state is unchanged. When `error` is set, the check failed and the
|
|
44
|
+
* snapshot should **not** be used to update the manifest.
|
|
45
|
+
*
|
|
46
|
+
* @category Monitor
|
|
47
|
+
*/
|
|
18
48
|
export interface CheckResult {
|
|
19
49
|
dependency: DependencyConfig;
|
|
20
50
|
hasChanged: boolean;
|
|
21
51
|
changes?: ChangeDetection;
|
|
22
52
|
severity?: 'breaking' | 'major' | 'minor' | undefined;
|
|
23
53
|
newSnapshot?: DependencySnapshot;
|
|
54
|
+
/** Non-empty string if the check failed; callers should log and skip. */
|
|
24
55
|
error?: string;
|
|
25
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* Orchestrates dependency checking across multiple access methods.
|
|
59
|
+
*
|
|
60
|
+
* @remarks
|
|
61
|
+
* Built-in checkers are registered for `github-api`, `http`, and `openapi`
|
|
62
|
+
* access methods. Additional checkers (e.g., from plugin packages) can be
|
|
63
|
+
* registered with {@link Monitor.registerChecker}.
|
|
64
|
+
*
|
|
65
|
+
* All checks in {@link Monitor.checkAll} run concurrently via
|
|
66
|
+
* `Promise.all`. If one checker throws, its result contains an `error`
|
|
67
|
+
* string but the other checks complete normally.
|
|
68
|
+
*
|
|
69
|
+
* @category Monitor
|
|
70
|
+
*
|
|
71
|
+
* @useWhen
|
|
72
|
+
* Polling a set of tracked dependencies for state changes on a schedule.
|
|
73
|
+
*
|
|
74
|
+
* @avoidWhen
|
|
75
|
+
* You only need to check a single dependency type — instantiate the
|
|
76
|
+
* specific checker (e.g., `GitHubRepoChecker`) directly to avoid loading
|
|
77
|
+
* all built-in checkers.
|
|
78
|
+
*
|
|
79
|
+
* @never
|
|
80
|
+
* - **Concurrent update races**: if two `Monitor` instances watch the same
|
|
81
|
+
* dependency and call `updateDependency` on the shared manifest file
|
|
82
|
+
* simultaneously, one write will silently overwrite the other. Serialise
|
|
83
|
+
* monitor runs or use a single shared `Monitor` instance.
|
|
84
|
+
* - **ETag drift false positives**: the `URLContentChecker` hashes the full
|
|
85
|
+
* HTTP response body. Dynamic content (ads, timestamps, CSP nonces) in
|
|
86
|
+
* the response will produce hash changes that are not real dependency
|
|
87
|
+
* updates. Use `monitoring.ignoreChanges: true` for URLs with high
|
|
88
|
+
* natural churn, or replace them with a more specific checker.
|
|
89
|
+
* - **Clock skew**: `Scheduler.shouldCheckDependency` compares
|
|
90
|
+
* `dependency.lastChecked` to wall clock time. If the system clock jumps
|
|
91
|
+
* backward (e.g., NTP correction), dependencies may be skipped until the
|
|
92
|
+
* clock catches up to the stored `lastChecked` timestamp.
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* ```ts
|
|
96
|
+
* import { Monitor } from '@dependabit/monitor';
|
|
97
|
+
*
|
|
98
|
+
* const monitor = new Monitor();
|
|
99
|
+
* const results = await monitor.checkAll(dependencies);
|
|
100
|
+
* for (const result of results) {
|
|
101
|
+
* if (result.hasChanged) {
|
|
102
|
+
* console.log(`${result.dependency.url} changed with severity ${result.severity}`);
|
|
103
|
+
* }
|
|
104
|
+
* }
|
|
105
|
+
* ```
|
|
106
|
+
*/
|
|
26
107
|
export declare class Monitor {
|
|
27
108
|
private checkers;
|
|
28
109
|
private classifier;
|
package/dist/monitor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monitor.d.ts","sourceRoot":"","sources":["../src/monitor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7F,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,gBAAgB,CAAC;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,QAAQ,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;IACtD,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,UAAU,CAAqB;IAEvC,cAOC;IAED;;OAEG;IACG,eAAe,CAAC,UAAU,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,CAyCxE;IAED;;OAEG;IACG,QAAQ,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAgBvE;IAED;;OAEG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAE5D;CACF"}
|
|
1
|
+
{"version":3,"file":"monitor.d.ts","sourceRoot":"","sources":["../src/monitor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7F;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,CAAC;CACH;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,gBAAgB,CAAC;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,QAAQ,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;IACtD,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,UAAU,CAAqB;IAEvC,cAOC;IAED;;OAEG;IACG,eAAe,CAAC,UAAU,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,CAyCxE;IAED;;OAEG;IACG,QAAQ,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAgBvE;IAED;;OAEG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAE5D;CACF"}
|
package/dist/monitor.js
CHANGED
|
@@ -6,6 +6,56 @@ import { GitHubRepoChecker } from './checkers/github-repo.js';
|
|
|
6
6
|
import { URLContentChecker } from './checkers/url-content.js';
|
|
7
7
|
import { OpenAPIChecker } from './checkers/openapi.js';
|
|
8
8
|
import { SeverityClassifier } from './severity.js';
|
|
9
|
+
/**
|
|
10
|
+
* Orchestrates dependency checking across multiple access methods.
|
|
11
|
+
*
|
|
12
|
+
* @remarks
|
|
13
|
+
* Built-in checkers are registered for `github-api`, `http`, and `openapi`
|
|
14
|
+
* access methods. Additional checkers (e.g., from plugin packages) can be
|
|
15
|
+
* registered with {@link Monitor.registerChecker}.
|
|
16
|
+
*
|
|
17
|
+
* All checks in {@link Monitor.checkAll} run concurrently via
|
|
18
|
+
* `Promise.all`. If one checker throws, its result contains an `error`
|
|
19
|
+
* string but the other checks complete normally.
|
|
20
|
+
*
|
|
21
|
+
* @category Monitor
|
|
22
|
+
*
|
|
23
|
+
* @useWhen
|
|
24
|
+
* Polling a set of tracked dependencies for state changes on a schedule.
|
|
25
|
+
*
|
|
26
|
+
* @avoidWhen
|
|
27
|
+
* You only need to check a single dependency type — instantiate the
|
|
28
|
+
* specific checker (e.g., `GitHubRepoChecker`) directly to avoid loading
|
|
29
|
+
* all built-in checkers.
|
|
30
|
+
*
|
|
31
|
+
* @never
|
|
32
|
+
* - **Concurrent update races**: if two `Monitor` instances watch the same
|
|
33
|
+
* dependency and call `updateDependency` on the shared manifest file
|
|
34
|
+
* simultaneously, one write will silently overwrite the other. Serialise
|
|
35
|
+
* monitor runs or use a single shared `Monitor` instance.
|
|
36
|
+
* - **ETag drift false positives**: the `URLContentChecker` hashes the full
|
|
37
|
+
* HTTP response body. Dynamic content (ads, timestamps, CSP nonces) in
|
|
38
|
+
* the response will produce hash changes that are not real dependency
|
|
39
|
+
* updates. Use `monitoring.ignoreChanges: true` for URLs with high
|
|
40
|
+
* natural churn, or replace them with a more specific checker.
|
|
41
|
+
* - **Clock skew**: `Scheduler.shouldCheckDependency` compares
|
|
42
|
+
* `dependency.lastChecked` to wall clock time. If the system clock jumps
|
|
43
|
+
* backward (e.g., NTP correction), dependencies may be skipped until the
|
|
44
|
+
* clock catches up to the stored `lastChecked` timestamp.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```ts
|
|
48
|
+
* import { Monitor } from '@dependabit/monitor';
|
|
49
|
+
*
|
|
50
|
+
* const monitor = new Monitor();
|
|
51
|
+
* const results = await monitor.checkAll(dependencies);
|
|
52
|
+
* for (const result of results) {
|
|
53
|
+
* if (result.hasChanged) {
|
|
54
|
+
* console.log(`${result.dependency.url} changed with severity ${result.severity}`);
|
|
55
|
+
* }
|
|
56
|
+
* }
|
|
57
|
+
* ```
|
|
58
|
+
*/
|
|
9
59
|
export class Monitor {
|
|
10
60
|
checkers;
|
|
11
61
|
classifier;
|
package/dist/monitor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monitor.js","sourceRoot":"","sources":["../src/monitor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"monitor.js","sourceRoot":"","sources":["../src/monitor.ts"],"names":[],"mappings":"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"}
|
package/dist/normalizer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalizer.js","sourceRoot":"","sources":["../src/normalizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY
|
|
1
|
+
{"version":3,"file":"normalizer.js","sourceRoot":"","sources":["../src/normalizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,UAAU,GAAG,IAAI,CAAC;IAEtB,sDAAsD;IACtD,2FAA2F;IAC3F,6DAA6D;IAC7D,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,OAAO,UAAU,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACxC,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;QAC/B,4FAA4F;QAC5F,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,6CAA6C,EAAE,EAAE,CAAC,CAAC;IACrF,CAAC;IACD,UAAU,GAAG,CAAC,CAAC;IACf,OAAO,UAAU,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACxC,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;QAC/B,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,2CAA2C,EAAE,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,oEAAoE;IACpE,UAAU,GAAG,CAAC,CAAC;IACf,OAAO,UAAU,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACxC,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;QAC/B,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,mEAAmE;IACnE,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7C,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;IAE/B,2CAA2C;IAC3C,sEAAsE;IACtE,UAAU,GAAG,UAAU,CAAC,OAAO,CAC7B,qEAAqE,EACrE,EAAE,CACH,CAAC;IAEF,wBAAwB;IACxB,UAAU,GAAG,UAAU,CAAC,OAAO,CAC7B,kEAAkE,EAClE,EAAE,CACH,CAAC;IAEF,6BAA6B;IAC7B,UAAU,GAAG,UAAU,CAAC,OAAO,CAC7B,6EAA6E,EAC7E,EAAE,CACH,CAAC;IAEF,yDAAyD;IACzD,kDAAkD;IAClD,UAAU,GAAG,UAAU,CAAC,OAAO,CAC7B,gFAAgF,EAChF,EAAE,CACH,CAAC;IAEF,gEAAgE;IAChE,oDAAoD;IACpD,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7C,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;IAE/B,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,GAAW;IACtC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAE5B,oCAAoC;QACpC,MAAM,cAAc,GAAG;YACrB,YAAY;YACZ,YAAY;YACZ,cAAc;YACd,UAAU;YACV,aAAa;YACb,QAAQ;YACR,OAAO;YACP,SAAS;YACT,QAAQ;YACR,QAAQ;YACR,KAAK;YACL,MAAM;YACN,WAAW;YACX,KAAK;YACL,MAAM;SACP,CAAC;QAEF,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC/B,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,wCAAwC;QACxC,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC"}
|
package/dist/scheduler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,2BAA2B,EAC5B,MAAM,sBAAsB,CAAC;AAM9B;;;;;;;;;GASG;AACH,MAAM,OAAO,SAAS;IACpB;;;;;;;OAOG;IACH,qBAAqB,CACnB,UAA2B,EAC3B,MAAwB,EACxB,WAAW,GAAS,IAAI,IAAI,EAAE
|
|
1
|
+
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"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"}
|
package/dist/severity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"severity.js","sourceRoot":"","sources":["../src/severity.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,OAAO,kBAAkB;IAC7B;;OAEG;IACH,QAAQ,CAAC,OAAwB
|
|
1
|
+
{"version":3,"file":"severity.js","sourceRoot":"","sources":["../src/severity.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Common types for dependency checkers
|
|
2
|
+
* Common types for dependency checkers.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* These types define the low-level protocol between the {@link Monitor}
|
|
6
|
+
* orchestrator and individual checker implementations.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* A point-in-time snapshot of a dependency's state.
|
|
12
|
+
*
|
|
13
|
+
* @remarks
|
|
14
|
+
* `stateHash` is a hex-encoded SHA-256 (or equivalent) of the dependency's
|
|
15
|
+
* content at the time of the fetch. It is used for equality comparison
|
|
16
|
+
* between snapshots — a hash change signals a potential update.
|
|
17
|
+
*
|
|
18
|
+
* @category Monitor
|
|
19
|
+
*
|
|
20
|
+
* @never
|
|
21
|
+
* - Different checker implementations may compute `stateHash` differently
|
|
22
|
+
* (e.g., hashing the full HTTP body vs. only the version string).
|
|
23
|
+
* Snapshots produced by different checkers for the same URL are **not**
|
|
24
|
+
* interchangeable and should not be compared directly.
|
|
3
25
|
*/
|
|
4
26
|
export interface DependencySnapshot {
|
|
5
27
|
version?: string | undefined;
|
|
@@ -7,6 +29,21 @@ export interface DependencySnapshot {
|
|
|
7
29
|
fetchedAt: Date;
|
|
8
30
|
metadata?: Record<string, unknown>;
|
|
9
31
|
}
|
|
32
|
+
/**
|
|
33
|
+
* The result of comparing two {@link DependencySnapshot} objects.
|
|
34
|
+
*
|
|
35
|
+
* @remarks
|
|
36
|
+
* When `hasChanged` is `true`, `changes` lists the fields that differed
|
|
37
|
+
* (e.g. `'version'`, `'content'`). The strings are checker-specific and
|
|
38
|
+
* should not be parsed programmatically.
|
|
39
|
+
*
|
|
40
|
+
* @category Monitor
|
|
41
|
+
*
|
|
42
|
+
* @never
|
|
43
|
+
* - `hasChanged: true` does not guarantee a real change; ETag drift in
|
|
44
|
+
* dynamic HTTP responses can trigger false positives for URL-based
|
|
45
|
+
* checkers. See `URLContentChecker` pitfalls.
|
|
46
|
+
*/
|
|
10
47
|
export interface ChangeDetection {
|
|
11
48
|
hasChanged: boolean;
|
|
12
49
|
changes: string[];
|
|
@@ -15,6 +52,17 @@ export interface ChangeDetection {
|
|
|
15
52
|
diff?: unknown;
|
|
16
53
|
severity?: 'breaking' | 'major' | 'minor';
|
|
17
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* Minimum configuration required to fetch and compare a dependency.
|
|
57
|
+
*
|
|
58
|
+
* @config
|
|
59
|
+
* @category Monitor
|
|
60
|
+
*
|
|
61
|
+
* @never
|
|
62
|
+
* - `auth.secret` contains the raw credential value at runtime. **Never**
|
|
63
|
+
* persist this object to disk or logs. Store the secret reference in
|
|
64
|
+
* `DependencyEntry.auth.secretEnvVar` and resolve it at runtime.
|
|
65
|
+
*/
|
|
18
66
|
export interface AccessConfig {
|
|
19
67
|
url: string;
|
|
20
68
|
accessMethod: 'github-api' | 'http' | 'openapi' | 'context7' | 'arxiv';
|
|
@@ -23,13 +71,35 @@ export interface AccessConfig {
|
|
|
23
71
|
secret?: string;
|
|
24
72
|
};
|
|
25
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* Contract for all dependency checker implementations.
|
|
76
|
+
*
|
|
77
|
+
* @remarks
|
|
78
|
+
* The {@link Monitor} selects a checker based on `AccessConfig.accessMethod`
|
|
79
|
+
* and calls `fetch` followed by `compare`. Plugins implement this interface
|
|
80
|
+
* to extend the set of supported access methods.
|
|
81
|
+
*
|
|
82
|
+
* @category Monitor
|
|
83
|
+
*
|
|
84
|
+
* @useWhen
|
|
85
|
+
* Implementing a custom checker for a new access method (e.g., a proprietary
|
|
86
|
+
* API or registry). Register it with {@link Monitor.registerChecker}.
|
|
87
|
+
*
|
|
88
|
+
* @never
|
|
89
|
+
* - `fetch` should throw only for unrecoverable errors (network failure,
|
|
90
|
+
* auth error). Temporary 5xx responses should be retried inside the
|
|
91
|
+
* implementation to avoid marking the dependency as errored.
|
|
92
|
+
* - `compare` receives the **stored** previous snapshot and the **live**
|
|
93
|
+
* current snapshot. Do not assume both snapshots were produced by the
|
|
94
|
+
* same checker version.
|
|
95
|
+
*/
|
|
26
96
|
export interface Checker {
|
|
27
97
|
/**
|
|
28
|
-
* Fetches the current state of a dependency
|
|
98
|
+
* Fetches the current state of a dependency.
|
|
29
99
|
*/
|
|
30
100
|
fetch(config: AccessConfig): Promise<DependencySnapshot>;
|
|
31
101
|
/**
|
|
32
|
-
* Compares two snapshots to detect changes
|
|
102
|
+
* Compares two snapshots to detect changes.
|
|
33
103
|
*/
|
|
34
104
|
compare(prev: DependencySnapshot, curr: DependencySnapshot): Promise<ChangeDetection>;
|
|
35
105
|
}
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC;CAC3C;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;IACvE,IAAI,CAAC,EAAE;QACL,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;QAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,KAAK,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CACvF"}
|
package/dist/types.js
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Common types for dependency checkers
|
|
2
|
+
* Common types for dependency checkers.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* These types define the low-level protocol between the {@link Monitor}
|
|
6
|
+
* orchestrator and individual checker implementations.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
3
9
|
*/
|
|
4
10
|
export {};
|
|
5
11
|
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dependabit/monitor",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.15",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
|
-
"url": "https://github.com/pradeepmouli/dependabit",
|
|
6
|
+
"url": "https://github.com/pradeepmouli/dependabit.git",
|
|
7
7
|
"directory": "packages/monitor"
|
|
8
8
|
},
|
|
9
|
-
"
|
|
9
|
+
"homepage": "https://pradeepmouli.github.io/dependabit/",
|
|
10
|
+
"bugs": {
|
|
11
|
+
"url": "https://github.com/pradeepmouli/dependabit/issues"
|
|
12
|
+
},
|
|
13
|
+
"description": "Poll GitHub repos, URLs, and OpenAPI specs for changes with snapshot diffing and severity classification.",
|
|
10
14
|
"type": "module",
|
|
11
15
|
"main": "dist/index.js",
|
|
12
16
|
"types": "dist/index.d.ts",
|
|
@@ -17,22 +21,35 @@
|
|
|
17
21
|
}
|
|
18
22
|
},
|
|
19
23
|
"dependencies": {
|
|
20
|
-
"yaml": "^2.8.
|
|
24
|
+
"yaml": "^2.8.3",
|
|
21
25
|
"zod": "^4.3.6",
|
|
22
|
-
"@dependabit/manifest": "0.1.
|
|
26
|
+
"@dependabit/manifest": "0.1.15"
|
|
23
27
|
},
|
|
24
28
|
"devDependencies": {
|
|
25
|
-
"@types/node": "^25.
|
|
29
|
+
"@types/node": "^25.6.0",
|
|
26
30
|
"tsx": "^4.21.0",
|
|
27
|
-
"typescript": "^
|
|
28
|
-
"vitest": "^4.
|
|
31
|
+
"typescript": "^6.0.3",
|
|
32
|
+
"vitest": "^4.1.5"
|
|
29
33
|
},
|
|
30
34
|
"keywords": [
|
|
35
|
+
"dependabit",
|
|
31
36
|
"monitor",
|
|
32
37
|
"change-detection",
|
|
33
|
-
"dependency"
|
|
38
|
+
"dependency",
|
|
39
|
+
"openapi",
|
|
40
|
+
"diff"
|
|
34
41
|
],
|
|
35
42
|
"license": "MIT",
|
|
43
|
+
"author": "Pradeep Mouli <pmouli@mac.com> (https://github.com/pradeepmouli)",
|
|
44
|
+
"publishConfig": {
|
|
45
|
+
"access": "public"
|
|
46
|
+
},
|
|
47
|
+
"files": [
|
|
48
|
+
"dist",
|
|
49
|
+
"README.md",
|
|
50
|
+
"CHANGELOG.md",
|
|
51
|
+
"LICENSE"
|
|
52
|
+
],
|
|
36
53
|
"scripts": {
|
|
37
54
|
"build": "tsgo -p tsconfig.json",
|
|
38
55
|
"clean": "rm -rf dist tsconfig.tsbuildinfo",
|