@vforsh/argus-core 0.2.0 → 0.4.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.
- package/dist/.tsbuildinfo +1 -1
- package/dist/auth/state.d.ts +13 -0
- package/dist/auth/state.d.ts.map +1 -1
- package/dist/auth/state.js +31 -0
- package/dist/auth/state.js.map +1 -1
- package/dist/errorMessage.d.ts +9 -0
- package/dist/errorMessage.d.ts.map +1 -0
- package/dist/errorMessage.js +17 -0
- package/dist/errorMessage.js.map +1 -0
- package/dist/http/fetch.d.ts +34 -0
- package/dist/http/fetch.d.ts.map +1 -1
- package/dist/http/fetch.js +46 -4
- package/dist/http/fetch.js.map +1 -1
- package/dist/http/watcher.d.ts +34 -0
- package/dist/http/watcher.d.ts.map +1 -0
- package/dist/http/watcher.js +33 -0
- package/dist/http/watcher.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/protocol/http/auth.d.ts +25 -21
- package/dist/protocol/http/auth.d.ts.map +1 -1
- package/dist/protocol/http/auth.js +125 -0
- package/dist/protocol/http/auth.js.map +1 -1
- package/dist/protocol/http/code.d.ts +17 -12
- package/dist/protocol/http/code.d.ts.map +1 -1
- package/dist/protocol/http/code.js +53 -1
- package/dist/protocol/http/code.js.map +1 -1
- package/dist/protocol/http/dialog.d.ts +9 -6
- package/dist/protocol/http/dialog.d.ts.map +1 -1
- package/dist/protocol/http/dialog.js +21 -1
- package/dist/protocol/http/dialog.js.map +1 -1
- package/dist/protocol/http/dom.d.ts +61 -33
- package/dist/protocol/http/dom.d.ts.map +1 -1
- package/dist/protocol/http/dom.js +252 -1
- package/dist/protocol/http/dom.js.map +1 -1
- package/dist/protocol/http/domInteraction.d.ts +9 -9
- package/dist/protocol/http/domInteraction.d.ts.map +1 -1
- package/dist/protocol/http/domInteraction.js +3 -0
- package/dist/protocol/http/domInteraction.js.map +1 -1
- package/dist/protocol/http/emulation.d.ts +14 -21
- package/dist/protocol/http/emulation.d.ts.map +1 -1
- package/dist/protocol/http/emulation.js +99 -1
- package/dist/protocol/http/emulation.js.map +1 -1
- package/dist/protocol/http/errors.d.ts +51 -4
- package/dist/protocol/http/errors.d.ts.map +1 -1
- package/dist/protocol/http/errors.js +47 -1
- package/dist/protocol/http/errors.js.map +1 -1
- package/dist/protocol/http/eval.d.ts +22 -58
- package/dist/protocol/http/eval.d.ts.map +1 -1
- package/dist/protocol/http/eval.js +24 -1
- package/dist/protocol/http/eval.js.map +1 -1
- package/dist/protocol/http/extension.d.ts +52 -36
- package/dist/protocol/http/extension.d.ts.map +1 -1
- package/dist/protocol/http/extension.js +34 -1
- package/dist/protocol/http/extension.js.map +1 -1
- package/dist/protocol/http/locate.d.ts +9 -3
- package/dist/protocol/http/locate.d.ts.map +1 -1
- package/dist/protocol/http/locate.js +28 -1
- package/dist/protocol/http/locate.js.map +1 -1
- package/dist/protocol/http/logs.d.ts +9 -12
- package/dist/protocol/http/logs.d.ts.map +1 -1
- package/dist/protocol/http/net.d.ts +19 -27
- package/dist/protocol/http/net.d.ts.map +1 -1
- package/dist/protocol/http/netMock.d.ts +17 -27
- package/dist/protocol/http/netMock.d.ts.map +1 -1
- package/dist/protocol/http/netMock.js +126 -0
- package/dist/protocol/http/netMock.js.map +1 -1
- package/dist/protocol/http/query.d.ts +97 -0
- package/dist/protocol/http/query.d.ts.map +1 -0
- package/dist/protocol/http/query.js +79 -0
- package/dist/protocol/http/query.js.map +1 -0
- package/dist/protocol/http/record.d.ts +11 -6
- package/dist/protocol/http/record.d.ts.map +1 -1
- package/dist/protocol/http/record.js +56 -0
- package/dist/protocol/http/record.js.map +1 -1
- package/dist/protocol/http/screenshot.d.ts +18 -3
- package/dist/protocol/http/screenshot.d.ts.map +1 -1
- package/dist/protocol/http/screenshot.js +45 -1
- package/dist/protocol/http/screenshot.js.map +1 -1
- package/dist/protocol/http/snapshot.d.ts +5 -3
- package/dist/protocol/http/snapshot.d.ts.map +1 -1
- package/dist/protocol/http/snapshot.js +16 -1
- package/dist/protocol/http/snapshot.js.map +1 -1
- package/dist/protocol/http/status.d.ts +17 -9
- package/dist/protocol/http/status.d.ts.map +1 -1
- package/dist/protocol/http/status.js +12 -1
- package/dist/protocol/http/status.js.map +1 -1
- package/dist/protocol/http/storage.d.ts +7 -31
- package/dist/protocol/http/storage.d.ts.map +1 -1
- package/dist/protocol/http/storage.js +31 -1
- package/dist/protocol/http/storage.js.map +1 -1
- package/dist/protocol/http/throttle.d.ts +14 -21
- package/dist/protocol/http/throttle.d.ts.map +1 -1
- package/dist/protocol/http/throttle.js +27 -1
- package/dist/protocol/http/throttle.js.map +1 -1
- package/dist/protocol/http/trace.d.ts +9 -6
- package/dist/protocol/http/trace.d.ts.map +1 -1
- package/dist/protocol/http/trace.js +29 -1
- package/dist/protocol/http/trace.js.map +1 -1
- package/dist/protocol/http/visibility.d.ts +7 -3
- package/dist/protocol/http/visibility.d.ts.map +1 -1
- package/dist/protocol/http/visibility.js +19 -1
- package/dist/protocol/http/visibility.js.map +1 -1
- package/dist/protocol/http.d.ts +18 -16
- package/dist/protocol/http.d.ts.map +1 -1
- package/dist/protocol/http.js +17 -1
- package/dist/protocol/http.js.map +1 -1
- package/dist/protocol/native-messaging.d.ts +276 -0
- package/dist/protocol/native-messaging.d.ts.map +1 -0
- package/dist/protocol/native-messaging.js +19 -0
- package/dist/protocol/native-messaging.js.map +1 -0
- package/dist/protocol/scenario.d.ts +63 -0
- package/dist/protocol/scenario.d.ts.map +1 -0
- package/dist/protocol/scenario.js +2 -0
- package/dist/protocol/scenario.js.map +1 -0
- package/dist/protocol/schemaFields.d.ts +76 -0
- package/dist/protocol/schemaFields.d.ts.map +1 -0
- package/dist/protocol/schemaFields.js +152 -0
- package/dist/protocol/schemaFields.js.map +1 -0
- package/dist/protocol/version.d.ts +14 -0
- package/dist/protocol/version.d.ts.map +1 -1
- package/dist/protocol/version.js +21 -0
- package/dist/protocol/version.js.map +1 -1
- package/dist/registry/lock.d.ts.map +1 -1
- package/dist/registry/lock.js +2 -3
- package/dist/registry/lock.js.map +1 -1
- package/dist/registry/registry.d.ts +14 -0
- package/dist/registry/registry.d.ts.map +1 -1
- package/dist/registry/registry.js +20 -0
- package/dist/registry/registry.js.map +1 -1
- package/dist/textPattern.d.ts.map +1 -1
- package/dist/textPattern.js +2 -1
- package/dist/textPattern.js.map +1 -1
- package/dist/time.d.ts +20 -0
- package/dist/time.d.ts.map +1 -0
- package/dist/time.js +39 -0
- package/dist/time.js.map +1 -0
- package/package.json +9 -7
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-messaging.d.ts","sourceRoot":"","sources":["../../src/protocol/native-messaging.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Native Messaging wire protocol shared by the Chrome extension and argus-watcher.
|
|
3
|
+
*
|
|
4
|
+
* This module is the single definition of the extension <-> watcher contract. The two
|
|
5
|
+
* peers ship as independently versioned npm packages, so a field added on one side and
|
|
6
|
+
* forgotten on the other would compile cleanly and only fail at runtime in a user's
|
|
7
|
+
* Chrome — importing both ends from here makes that a compile error instead.
|
|
8
|
+
*
|
|
9
|
+
* The extension bundles this with esbuild: keep it types plus erasable constants only,
|
|
10
|
+
* so the extension's no-runtime-dependencies property survives.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Version of the native-messaging wire contract.
|
|
14
|
+
*
|
|
15
|
+
* Bump on any breaking change to the message shapes below. Peers exchange it in the
|
|
16
|
+
* `host_info` handshake and refuse to proceed on a mismatch.
|
|
17
|
+
*/
|
|
18
|
+
export const NATIVE_MESSAGING_PROTOCOL_VERSION = 2;
|
|
19
|
+
//# sourceMappingURL=native-messaging.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-messaging.js","sourceRoot":"","sources":["../../src/protocol/native-messaging.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAU,CAAA"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Host-bridge types for bundled eval scenarios.
|
|
3
|
+
*
|
|
4
|
+
* These describe the in-page capability object handed to a scenario's `export default`,
|
|
5
|
+
* not an HTTP payload — the members are functions returning promises and are never
|
|
6
|
+
* serialized over the wire. They live outside `protocol/http/` for exactly that reason.
|
|
7
|
+
*/
|
|
8
|
+
import type { LogEpoch, LogEvent, LogLevel } from './logs.js';
|
|
9
|
+
import type { ScreenshotClipRegion, ScreenshotResponse } from './http/screenshot.js';
|
|
10
|
+
/** Page-side screenshot options accepted by scenario artifact helpers. */
|
|
11
|
+
export type ArgusScenarioScreenshotOptions = {
|
|
12
|
+
/** Crop to the first matching element. */
|
|
13
|
+
selector?: string;
|
|
14
|
+
/** Crop to a viewport-relative rectangle. Mutually exclusive with `selector`. */
|
|
15
|
+
clip?: ScreenshotClipRegion;
|
|
16
|
+
};
|
|
17
|
+
/** Filters for reading watcher logs from a scenario cursor. */
|
|
18
|
+
export type ArgusScenarioLogOptions = {
|
|
19
|
+
/** Only include these severity levels. */
|
|
20
|
+
levels?: LogLevel[];
|
|
21
|
+
/** Match event text against any supplied regular expression. */
|
|
22
|
+
match?: string | string[];
|
|
23
|
+
/** Regex case handling. Defaults to case-sensitive. */
|
|
24
|
+
matchCase?: 'sensitive' | 'insensitive';
|
|
25
|
+
/** Case-insensitive substring filter over the event source. */
|
|
26
|
+
source?: string;
|
|
27
|
+
/** Maximum number of matching events. Defaults to 500; maximum 5000. */
|
|
28
|
+
limit?: number;
|
|
29
|
+
};
|
|
30
|
+
/** Result of reading scenario logs after a cursor. */
|
|
31
|
+
export type ArgusScenarioLogsResult = {
|
|
32
|
+
events: LogEvent[];
|
|
33
|
+
/** Cursor to use for the next read. */
|
|
34
|
+
nextCursor: LogEpoch;
|
|
35
|
+
};
|
|
36
|
+
/** Stateful log window created at a scenario-defined baseline. */
|
|
37
|
+
export type ArgusScenarioLogSession = {
|
|
38
|
+
/** Current session cursor. It advances after each successful read. */
|
|
39
|
+
readonly cursor: LogEpoch;
|
|
40
|
+
/** Read matching logs since the session cursor and advance it. */
|
|
41
|
+
read: (options?: ArgusScenarioLogOptions) => Promise<ArgusScenarioLogsResult>;
|
|
42
|
+
};
|
|
43
|
+
/** Log cursor helpers available to bundled scenario entrypoints. */
|
|
44
|
+
export type ArgusScenarioLogs = {
|
|
45
|
+
/** Return the watcher's current log cursor without downloading events. */
|
|
46
|
+
cursor: () => Promise<LogEpoch>;
|
|
47
|
+
/** Read matching logs produced strictly after `cursor`. */
|
|
48
|
+
read: (cursor: LogEpoch, options?: ArgusScenarioLogOptions) => Promise<ArgusScenarioLogsResult>;
|
|
49
|
+
/** Capture the current cursor and return a stateful log window. */
|
|
50
|
+
session: () => Promise<ArgusScenarioLogSession>;
|
|
51
|
+
};
|
|
52
|
+
/** Host capabilities passed to `export default` in a bundled eval file. */
|
|
53
|
+
export type ArgusScenarioContext = {
|
|
54
|
+
/** Frozen string arguments supplied by `--arg` / `--args`. */
|
|
55
|
+
readonly args: Readonly<Record<string, string>>;
|
|
56
|
+
/** Capture a screenshot using a watcher-generated safe artifact path. */
|
|
57
|
+
screenshot: (options?: ArgusScenarioScreenshotOptions) => Promise<ScreenshotResponse>;
|
|
58
|
+
/** Capture or replace `checkpoints/<name>.png` under the watcher artifact directory. */
|
|
59
|
+
checkpoint: (name: string, options?: ArgusScenarioScreenshotOptions) => Promise<ScreenshotResponse>;
|
|
60
|
+
/** Cursor and session helpers for logs produced during the scenario. */
|
|
61
|
+
readonly logs: ArgusScenarioLogs;
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=scenario.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scenario.d.ts","sourceRoot":"","sources":["../../src/protocol/scenario.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAEpF,0EAA0E;AAC1E,MAAM,MAAM,8BAA8B,GAAG;IAC5C,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,iFAAiF;IACjF,IAAI,CAAC,EAAE,oBAAoB,CAAA;CAC3B,CAAA;AAED,+DAA+D;AAC/D,MAAM,MAAM,uBAAuB,GAAG;IACrC,0CAA0C;IAC1C,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAA;IACnB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IACzB,uDAAuD;IACvD,SAAS,CAAC,EAAE,WAAW,GAAG,aAAa,CAAA;IACvC,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,sDAAsD;AACtD,MAAM,MAAM,uBAAuB,GAAG;IACrC,MAAM,EAAE,QAAQ,EAAE,CAAA;IAClB,uCAAuC;IACvC,UAAU,EAAE,QAAQ,CAAA;CACpB,CAAA;AAED,kEAAkE;AAClE,MAAM,MAAM,uBAAuB,GAAG;IACrC,sEAAsE;IACtE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAA;IACzB,kEAAkE;IAClE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,uBAAuB,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAA;CAC7E,CAAA;AAED,oEAAoE;AACpE,MAAM,MAAM,iBAAiB,GAAG;IAC/B,0EAA0E;IAC1E,MAAM,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC/B,2DAA2D;IAC3D,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,uBAAuB,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAA;IAC/F,mEAAmE;IACnE,OAAO,EAAE,MAAM,OAAO,CAAC,uBAAuB,CAAC,CAAA;CAC/C,CAAA;AAED,2EAA2E;AAC3E,MAAM,MAAM,oBAAoB,GAAG;IAClC,8DAA8D;IAC9D,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAC/C,yEAAyE;IACzE,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE,8BAA8B,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAA;IACrF,wFAAwF;IACxF,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,8BAA8B,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAA;IACnG,wEAAwE;IACxE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;CAChC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scenario.js","sourceRoot":"","sources":["../../src/protocol/scenario.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { type ProtocolValidationResult } from './schema.js';
|
|
2
|
+
/**
|
|
3
|
+
* Field-level readers shared by every protocol schema.
|
|
4
|
+
*
|
|
5
|
+
* Route-level validation used to grow one copy of "non-empty string", "non-negative
|
|
6
|
+
* integer", "boolean or absent" per endpoint, which is where the drift lived. These are
|
|
7
|
+
* the single copies; schemas compose them instead of re-deriving them.
|
|
8
|
+
*
|
|
9
|
+
* Each reader returns either a value or a {@link FieldError}. Compose several with
|
|
10
|
+
* {@link readFields}, which returns per-field types on success.
|
|
11
|
+
*/
|
|
12
|
+
/** A field that failed validation. Structurally distinct from every legal field value. */
|
|
13
|
+
export type FieldError = {
|
|
14
|
+
readonly __fieldError: string;
|
|
15
|
+
};
|
|
16
|
+
/** True when a reader returned a failure rather than a value. */
|
|
17
|
+
export declare const isFieldError: (value: unknown) => value is FieldError;
|
|
18
|
+
/** Build a field failure with an explicit message. */
|
|
19
|
+
export declare const fieldError: (message: string) => FieldError;
|
|
20
|
+
/**
|
|
21
|
+
* A reader that pulls one field out of a payload, or reports why it is invalid.
|
|
22
|
+
*
|
|
23
|
+
* Written as an unconstrained return type so any of the readers below — and any inline
|
|
24
|
+
* arrow that closes over extra bounds — satisfies it; {@link ReadFieldsResult} recovers
|
|
25
|
+
* the precise per-field type afterwards.
|
|
26
|
+
*/
|
|
27
|
+
export type FieldReader = (source: Record<string, unknown>, key: string) => unknown;
|
|
28
|
+
/** The values produced by a set of readers, with the failure branch stripped. */
|
|
29
|
+
export type ReadFieldsResult<S extends Record<string, FieldReader>> = {
|
|
30
|
+
[K in keyof S]: Exclude<ReturnType<S[K]>, FieldError>;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Run a set of field readers, returning either every value or the first failure.
|
|
34
|
+
*
|
|
35
|
+
* The success branch is typed per field — `Exclude<..., FieldError>` removes the failure
|
|
36
|
+
* arm — so a schema gets `string` and `number | undefined` back rather than having to
|
|
37
|
+
* re-narrow each field after a combined check.
|
|
38
|
+
*/
|
|
39
|
+
export declare const readFields: <S extends Record<string, FieldReader>>(source: Record<string, unknown>, readers: S) => ProtocolValidationResult<ReadFieldsResult<S>>;
|
|
40
|
+
/** Guard the top-level payload shape. Every schema starts here. */
|
|
41
|
+
export declare const requireObject: <T>(value: unknown) => ProtocolValidationResult<T> | null;
|
|
42
|
+
/** Read a required string field. Empty and whitespace-only values are rejected. */
|
|
43
|
+
export declare const requiredString: (source: Record<string, unknown>, key: string) => string | FieldError;
|
|
44
|
+
/** Read an optional string field. Present-but-not-a-string is an error, absent is `undefined`. */
|
|
45
|
+
export declare const optionalString: (source: Record<string, unknown>, key: string) => string | undefined | FieldError;
|
|
46
|
+
/** Read an optional non-empty string field, treating `''` as absent. */
|
|
47
|
+
export declare const optionalNonEmptyString: (source: Record<string, unknown>, key: string) => string | undefined | FieldError;
|
|
48
|
+
/** Read an optional boolean field. */
|
|
49
|
+
export declare const optionalBoolean: (source: Record<string, unknown>, key: string) => boolean | undefined | FieldError;
|
|
50
|
+
/** Read an optional finite number field, optionally bounded. */
|
|
51
|
+
export declare const optionalNumber: (source: Record<string, unknown>, key: string, bounds?: {
|
|
52
|
+
min?: number;
|
|
53
|
+
max?: number;
|
|
54
|
+
}) => number | undefined | FieldError;
|
|
55
|
+
/** Read an optional integer field, optionally bounded. */
|
|
56
|
+
export declare const optionalInteger: (source: Record<string, unknown>, key: string, bounds?: {
|
|
57
|
+
min?: number;
|
|
58
|
+
max?: number;
|
|
59
|
+
}) => number | undefined | FieldError;
|
|
60
|
+
/** Read an optional field constrained to a fixed set of literals. */
|
|
61
|
+
export declare const optionalEnum: <const T extends readonly string[]>(source: Record<string, unknown>, key: string, allowed: T) => T[number] | undefined | FieldError;
|
|
62
|
+
/** Read an optional array of strings. */
|
|
63
|
+
export declare const optionalStringArray: (source: Record<string, unknown>, key: string) => string[] | undefined | FieldError;
|
|
64
|
+
/** Read an optional nested object, leaving its contents to the caller. */
|
|
65
|
+
export declare const optionalRecord: (source: Record<string, unknown>, key: string) => Record<string, unknown> | undefined | FieldError;
|
|
66
|
+
/** Read an optional array, leaving element validation to the caller. */
|
|
67
|
+
export declare const optionalArray: (source: Record<string, unknown>, key: string) => unknown[] | undefined | FieldError;
|
|
68
|
+
/**
|
|
69
|
+
* Drop `undefined` entries so an optional field that was absent stays absent.
|
|
70
|
+
*
|
|
71
|
+
* Schemas build their result object field by field; without this, `{ selector: undefined }`
|
|
72
|
+
* would serialize differently from `{}` and defeat `exactOptionalPropertyTypes`-style
|
|
73
|
+
* reasoning at call sites.
|
|
74
|
+
*/
|
|
75
|
+
export declare const compact: <T extends object>(value: T) => T;
|
|
76
|
+
//# sourceMappingURL=schemaFields.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemaFields.d.ts","sourceRoot":"","sources":["../../src/protocol/schemaFields.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { invalidProtocolPayload, isProtocolObject } from './schema.js';
|
|
2
|
+
/** True when a reader returned a failure rather than a value. */
|
|
3
|
+
export const isFieldError = (value) => typeof value === 'object' && value != null && '__fieldError' in value && typeof value.__fieldError === 'string';
|
|
4
|
+
/** Build a field failure with an explicit message. */
|
|
5
|
+
export const fieldError = (message) => ({ __fieldError: message });
|
|
6
|
+
/**
|
|
7
|
+
* Run a set of field readers, returning either every value or the first failure.
|
|
8
|
+
*
|
|
9
|
+
* The success branch is typed per field — `Exclude<..., FieldError>` removes the failure
|
|
10
|
+
* arm — so a schema gets `string` and `number | undefined` back rather than having to
|
|
11
|
+
* re-narrow each field after a combined check.
|
|
12
|
+
*/
|
|
13
|
+
export const readFields = (source, readers) => {
|
|
14
|
+
const values = {};
|
|
15
|
+
for (const [key, read] of Object.entries(readers)) {
|
|
16
|
+
const value = read(source, key);
|
|
17
|
+
if (isFieldError(value)) {
|
|
18
|
+
return invalidProtocolPayload(value.__fieldError);
|
|
19
|
+
}
|
|
20
|
+
values[key] = value;
|
|
21
|
+
}
|
|
22
|
+
return { ok: true, value: values };
|
|
23
|
+
};
|
|
24
|
+
/** Guard the top-level payload shape. Every schema starts here. */
|
|
25
|
+
export const requireObject = (value) => isProtocolObject(value) ? null : invalidProtocolPayload('request body must be an object');
|
|
26
|
+
/** Read a required string field. Empty and whitespace-only values are rejected. */
|
|
27
|
+
export const requiredString = (source, key) => {
|
|
28
|
+
const field = source[key];
|
|
29
|
+
if (typeof field !== 'string' || field.trim() === '') {
|
|
30
|
+
return fieldError(`${key} is required and must be a non-empty string`);
|
|
31
|
+
}
|
|
32
|
+
return field;
|
|
33
|
+
};
|
|
34
|
+
/** Read an optional string field. Present-but-not-a-string is an error, absent is `undefined`. */
|
|
35
|
+
export const optionalString = (source, key) => {
|
|
36
|
+
const field = source[key];
|
|
37
|
+
if (field == null) {
|
|
38
|
+
return undefined;
|
|
39
|
+
}
|
|
40
|
+
if (typeof field !== 'string') {
|
|
41
|
+
return fieldError(`${key} must be a string`);
|
|
42
|
+
}
|
|
43
|
+
return field;
|
|
44
|
+
};
|
|
45
|
+
/** Read an optional non-empty string field, treating `''` as absent. */
|
|
46
|
+
export const optionalNonEmptyString = (source, key) => {
|
|
47
|
+
const field = optionalString(source, key);
|
|
48
|
+
if (isFieldError(field) || field == null) {
|
|
49
|
+
return field;
|
|
50
|
+
}
|
|
51
|
+
return field.length > 0 ? field : undefined;
|
|
52
|
+
};
|
|
53
|
+
/** Read an optional boolean field. */
|
|
54
|
+
export const optionalBoolean = (source, key) => {
|
|
55
|
+
const field = source[key];
|
|
56
|
+
if (field == null) {
|
|
57
|
+
return undefined;
|
|
58
|
+
}
|
|
59
|
+
if (typeof field !== 'boolean') {
|
|
60
|
+
return fieldError(`${key} must be a boolean`);
|
|
61
|
+
}
|
|
62
|
+
return field;
|
|
63
|
+
};
|
|
64
|
+
/** Read an optional finite number field, optionally bounded. */
|
|
65
|
+
export const optionalNumber = (source, key, bounds = {}) => {
|
|
66
|
+
const field = source[key];
|
|
67
|
+
if (field == null) {
|
|
68
|
+
return undefined;
|
|
69
|
+
}
|
|
70
|
+
if (typeof field !== 'number' || !Number.isFinite(field)) {
|
|
71
|
+
return fieldError(`${key} must be a finite number`);
|
|
72
|
+
}
|
|
73
|
+
if (bounds.min != null && field < bounds.min) {
|
|
74
|
+
return fieldError(`${key} must be >= ${bounds.min}`);
|
|
75
|
+
}
|
|
76
|
+
if (bounds.max != null && field > bounds.max) {
|
|
77
|
+
return fieldError(`${key} must be <= ${bounds.max}`);
|
|
78
|
+
}
|
|
79
|
+
return field;
|
|
80
|
+
};
|
|
81
|
+
/** Read an optional integer field, optionally bounded. */
|
|
82
|
+
export const optionalInteger = (source, key, bounds = {}) => {
|
|
83
|
+
const field = optionalNumber(source, key, bounds);
|
|
84
|
+
if (isFieldError(field) || field == null) {
|
|
85
|
+
return field;
|
|
86
|
+
}
|
|
87
|
+
if (!Number.isInteger(field)) {
|
|
88
|
+
return fieldError(`${key} must be an integer`);
|
|
89
|
+
}
|
|
90
|
+
return field;
|
|
91
|
+
};
|
|
92
|
+
/** Read an optional field constrained to a fixed set of literals. */
|
|
93
|
+
export const optionalEnum = (source, key, allowed) => {
|
|
94
|
+
const field = source[key];
|
|
95
|
+
if (field == null) {
|
|
96
|
+
return undefined;
|
|
97
|
+
}
|
|
98
|
+
if (typeof field !== 'string' || !allowed.includes(field)) {
|
|
99
|
+
return fieldError(`${key} must be one of: ${allowed.join(', ')}`);
|
|
100
|
+
}
|
|
101
|
+
return field;
|
|
102
|
+
};
|
|
103
|
+
/** Read an optional array of strings. */
|
|
104
|
+
export const optionalStringArray = (source, key) => {
|
|
105
|
+
const field = source[key];
|
|
106
|
+
if (field == null) {
|
|
107
|
+
return undefined;
|
|
108
|
+
}
|
|
109
|
+
if (!Array.isArray(field) || field.some((item) => typeof item !== 'string')) {
|
|
110
|
+
return fieldError(`${key} must be an array of strings`);
|
|
111
|
+
}
|
|
112
|
+
return field;
|
|
113
|
+
};
|
|
114
|
+
/** Read an optional nested object, leaving its contents to the caller. */
|
|
115
|
+
export const optionalRecord = (source, key) => {
|
|
116
|
+
const field = source[key];
|
|
117
|
+
if (field == null) {
|
|
118
|
+
return undefined;
|
|
119
|
+
}
|
|
120
|
+
if (!isProtocolObject(field)) {
|
|
121
|
+
return fieldError(`${key} must be an object`);
|
|
122
|
+
}
|
|
123
|
+
return field;
|
|
124
|
+
};
|
|
125
|
+
/** Read an optional array, leaving element validation to the caller. */
|
|
126
|
+
export const optionalArray = (source, key) => {
|
|
127
|
+
const field = source[key];
|
|
128
|
+
if (field == null) {
|
|
129
|
+
return undefined;
|
|
130
|
+
}
|
|
131
|
+
if (!Array.isArray(field)) {
|
|
132
|
+
return fieldError(`${key} must be an array`);
|
|
133
|
+
}
|
|
134
|
+
return field;
|
|
135
|
+
};
|
|
136
|
+
/**
|
|
137
|
+
* Drop `undefined` entries so an optional field that was absent stays absent.
|
|
138
|
+
*
|
|
139
|
+
* Schemas build their result object field by field; without this, `{ selector: undefined }`
|
|
140
|
+
* would serialize differently from `{}` and defeat `exactOptionalPropertyTypes`-style
|
|
141
|
+
* reasoning at call sites.
|
|
142
|
+
*/
|
|
143
|
+
export const compact = (value) => {
|
|
144
|
+
const result = {};
|
|
145
|
+
for (const [key, entry] of Object.entries(value)) {
|
|
146
|
+
if (entry !== undefined) {
|
|
147
|
+
result[key] = entry;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
return result;
|
|
151
|
+
};
|
|
152
|
+
//# sourceMappingURL=schemaFields.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemaFields.js","sourceRoot":"","sources":["../../src/protocol/schemaFields.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,4 +2,18 @@
|
|
|
2
2
|
export declare const ARGUS_PROTOCOL_VERSION: 2;
|
|
3
3
|
/** Type-level alias for the current protocol version. */
|
|
4
4
|
export type ArgusProtocolVersion = typeof ARGUS_PROTOCOL_VERSION;
|
|
5
|
+
/**
|
|
6
|
+
* Describe a watcher's protocol compatibility with this build.
|
|
7
|
+
*
|
|
8
|
+
* The CLI, the SDK, and the watcher ship as separate npm packages, so a 0.3.x CLI can
|
|
9
|
+
* drive a long-running watcher started by an older install. Without this check a version
|
|
10
|
+
* bump changes nothing observable: mismatched peers keep talking and fail later with
|
|
11
|
+
* confusing per-command errors instead of one clear message.
|
|
12
|
+
*
|
|
13
|
+
* @param protocolVersion The `protocolVersion` reported by `GET /status`. A watcher too
|
|
14
|
+
* old to report one is treated as incompatible rather than assumed to match.
|
|
15
|
+
* @returns `null` when the peer is compatible, or an actionable message naming both
|
|
16
|
+
* versions and what to do about it.
|
|
17
|
+
*/
|
|
18
|
+
export declare const describeProtocolMismatch: (protocolVersion: number | undefined, watcherVersion?: string) => string | null;
|
|
5
19
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/protocol/version.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,eAAO,MAAM,sBAAsB,EAAG,CAAU,CAAA;AAEhD,yDAAyD;AACzD,MAAM,MAAM,oBAAoB,GAAG,OAAO,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/protocol/version.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,eAAO,MAAM,sBAAsB,EAAG,CAAU,CAAA;AAEhD,yDAAyD;AACzD,MAAM,MAAM,oBAAoB,GAAG,OAAO,sBAAsB,CAAA;AAEhE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,wBAAwB,GAAI,iBAAiB,MAAM,GAAG,SAAS,EAAE,iBAAiB,MAAM,KAAG,MAAM,GAAG,IAQhH,CAAA"}
|
package/dist/protocol/version.js
CHANGED
|
@@ -1,3 +1,24 @@
|
|
|
1
1
|
/** Current protocol version exchanged between CLI and watcher. */
|
|
2
2
|
export const ARGUS_PROTOCOL_VERSION = 2;
|
|
3
|
+
/**
|
|
4
|
+
* Describe a watcher's protocol compatibility with this build.
|
|
5
|
+
*
|
|
6
|
+
* The CLI, the SDK, and the watcher ship as separate npm packages, so a 0.3.x CLI can
|
|
7
|
+
* drive a long-running watcher started by an older install. Without this check a version
|
|
8
|
+
* bump changes nothing observable: mismatched peers keep talking and fail later with
|
|
9
|
+
* confusing per-command errors instead of one clear message.
|
|
10
|
+
*
|
|
11
|
+
* @param protocolVersion The `protocolVersion` reported by `GET /status`. A watcher too
|
|
12
|
+
* old to report one is treated as incompatible rather than assumed to match.
|
|
13
|
+
* @returns `null` when the peer is compatible, or an actionable message naming both
|
|
14
|
+
* versions and what to do about it.
|
|
15
|
+
*/
|
|
16
|
+
export const describeProtocolMismatch = (protocolVersion, watcherVersion) => {
|
|
17
|
+
if (protocolVersion === ARGUS_PROTOCOL_VERSION) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
const reported = protocolVersion == null ? 'an unknown version' : `version ${protocolVersion}`;
|
|
21
|
+
const which = watcherVersion ? `Watcher ${watcherVersion}` : 'This watcher';
|
|
22
|
+
return `${which} speaks protocol ${reported}, but this argus build expects version ${ARGUS_PROTOCOL_VERSION}. Restart the watcher with the current argus, or update argus (npm i -g @vforsh/argus).`;
|
|
23
|
+
};
|
|
3
24
|
//# sourceMappingURL=version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/protocol/version.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAU,CAAA"}
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/protocol/version.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAU,CAAA;AAKhD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,eAAmC,EAAE,cAAuB,EAAiB,EAAE;IACvH,IAAI,eAAe,KAAK,sBAAsB,EAAE,CAAC;QAChD,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,MAAM,QAAQ,GAAG,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,WAAW,eAAe,EAAE,CAAA;IAC9F,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,WAAW,cAAc,EAAE,CAAC,CAAC,CAAC,cAAc,CAAA;IAC3E,OAAO,GAAG,KAAK,oBAAoB,QAAQ,0CAA0C,sBAAsB,yFAAyF,CAAA;AACrM,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../../src/registry/lock.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../../src/registry/lock.ts"],"names":[],"mappings":"AAcA;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,YAAY,SAAoB,GAAG,OAAO,CAAC,CAAC,CAAC,CAS5G"}
|
package/dist/registry/lock.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import fs from 'node:fs/promises';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { getRegistryPath } from './paths.js';
|
|
4
|
+
import { delay } from '../time.js';
|
|
4
5
|
/** Max time to wait for lock acquisition. */
|
|
5
6
|
const LOCK_TIMEOUT_MS = 2_000;
|
|
6
7
|
/** Lock considered stale if mtime is older than this. */
|
|
@@ -43,8 +44,7 @@ const acquireLock = async (lockPath) => {
|
|
|
43
44
|
}
|
|
44
45
|
attempt += 1;
|
|
45
46
|
const jitter = Math.random() * BASE_RETRY_MS;
|
|
46
|
-
|
|
47
|
-
await sleep(delay);
|
|
47
|
+
await delay(Math.min(BASE_RETRY_MS * attempt, 200) + jitter);
|
|
48
48
|
}
|
|
49
49
|
// Last-resort: remove potentially stale lock and try once more
|
|
50
50
|
await removeStaleLock(lockPath);
|
|
@@ -83,5 +83,4 @@ const removeStaleLock = async (lockPath) => {
|
|
|
83
83
|
const isExistError = (error) => {
|
|
84
84
|
return !!error && typeof error === 'object' && 'code' in error && error.code === 'EEXIST';
|
|
85
85
|
};
|
|
86
|
-
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
87
86
|
//# sourceMappingURL=lock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../src/registry/lock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../src/registry/lock.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,4 +26,18 @@ export declare const pruneStaleWatchers: (registry: RegistryV1, now?: number, tt
|
|
|
26
26
|
registry: RegistryV1;
|
|
27
27
|
removedIds: string[];
|
|
28
28
|
};
|
|
29
|
+
/**
|
|
30
|
+
* Read the registry, pruning heartbeat-stale entries in the same locked read-modify-write.
|
|
31
|
+
*
|
|
32
|
+
* This is the only automatic path that removes entries: the registry is shared between the CLI
|
|
33
|
+
* and the SDK, so both read through here rather than each keeping its own wrapper.
|
|
34
|
+
*/
|
|
35
|
+
export declare const readAndPruneRegistry: (options?: {
|
|
36
|
+
registryPath?: string;
|
|
37
|
+
ttlMs?: number;
|
|
38
|
+
}) => Promise<RegistryV1>;
|
|
39
|
+
/** Remove a watcher entry atomically (locked read-modify-write). */
|
|
40
|
+
export declare const removeWatcherAndPersist: (id: string, registryPath?: string) => Promise<RegistryV1>;
|
|
41
|
+
/** Remove several watcher entries in one locked read-modify-write. */
|
|
42
|
+
export declare const removeWatchersAndPersist: (ids: string[], registryPath?: string) => Promise<RegistryV1>;
|
|
29
43
|
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/registry/registry.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/E,uCAAuC;AACvC,eAAO,MAAM,gBAAgB,IAAI,CAAA;AAEjC,yCAAyC;AACzC,eAAO,MAAM,cAAc,QAAS,CAAA;AAEpC,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB,GAAI,YAAgB,KAAG,UAIrD,CAAA;AAEF,kEAAkE;AAClE,eAAO,MAAM,YAAY,GAAU,qBAAgC,KAAG,OAAO,CAAC,kBAAkB,CA4B/F,CAAA;AAED,uDAAuD;AACvD,eAAO,MAAM,aAAa,GAAU,UAAU,UAAU,EAAE,qBAAgC,KAAG,OAAO,CAAC,IAAI,CAIxG,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAU,SAAS,CAAC,QAAQ,EAAE,UAAU,KAAK,UAAU,EAAE,qBAAgC,KAAG,OAAO,CAAC,UAAU,CASxI,CAAA;AAED,0CAA0C;AAC1C,eAAO,MAAM,YAAY,GAAI,UAAU,UAAU,KAAG,aAAa,EAAsC,CAAA;AAEvG,qCAAqC;AACrC,eAAO,MAAM,eAAe,GAAI,UAAU,UAAU,EAAE,SAAS,aAAa,EAAE,YAAgB,KAAG,UAUhG,CAAA;AAED,oCAAoC;AACpC,eAAO,MAAM,kBAAkB,GAAI,UAAU,UAAU,EAAE,IAAI,MAAM,EAAE,YAAgB,KAAG,UAavF,CAAA;AAED,mDAAmD;AACnD,eAAO,MAAM,kBAAkB,GAC9B,UAAU,UAAU,EACpB,YAAgB,EAChB,cAAsB,KACpB;IAAE,QAAQ,EAAE,UAAU,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAwB9C,CAAA"}
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/registry/registry.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/E,uCAAuC;AACvC,eAAO,MAAM,gBAAgB,IAAI,CAAA;AAEjC,yCAAyC;AACzC,eAAO,MAAM,cAAc,QAAS,CAAA;AAEpC,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB,GAAI,YAAgB,KAAG,UAIrD,CAAA;AAEF,kEAAkE;AAClE,eAAO,MAAM,YAAY,GAAU,qBAAgC,KAAG,OAAO,CAAC,kBAAkB,CA4B/F,CAAA;AAED,uDAAuD;AACvD,eAAO,MAAM,aAAa,GAAU,UAAU,UAAU,EAAE,qBAAgC,KAAG,OAAO,CAAC,IAAI,CAIxG,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAU,SAAS,CAAC,QAAQ,EAAE,UAAU,KAAK,UAAU,EAAE,qBAAgC,KAAG,OAAO,CAAC,UAAU,CASxI,CAAA;AAED,0CAA0C;AAC1C,eAAO,MAAM,YAAY,GAAI,UAAU,UAAU,KAAG,aAAa,EAAsC,CAAA;AAEvG,qCAAqC;AACrC,eAAO,MAAM,eAAe,GAAI,UAAU,UAAU,EAAE,SAAS,aAAa,EAAE,YAAgB,KAAG,UAUhG,CAAA;AAED,oCAAoC;AACpC,eAAO,MAAM,kBAAkB,GAAI,UAAU,UAAU,EAAE,IAAI,MAAM,EAAE,YAAgB,KAAG,UAavF,CAAA;AAED,mDAAmD;AACnD,eAAO,MAAM,kBAAkB,GAC9B,UAAU,UAAU,EACpB,YAAgB,EAChB,cAAsB,KACpB;IAAE,QAAQ,EAAE,UAAU,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAwB9C,CAAA;AAoDD;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAAU,UAAS;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,KAAG,OAAO,CAAC,UAAU,CAGtH,CAAA;AAED,oEAAoE;AACpE,eAAO,MAAM,uBAAuB,GAAU,IAAI,MAAM,EAAE,eAAe,MAAM,KAAG,OAAO,CAAC,UAAU,CACvB,CAAA;AAE7E,sEAAsE;AACtE,eAAO,MAAM,wBAAwB,GAAU,KAAK,MAAM,EAAE,EAAE,eAAe,MAAM,KAAG,OAAO,CAAC,UAAU,CAOvG,CAAA"}
|
|
@@ -152,4 +152,24 @@ const isRegistryV1 = (value) => {
|
|
|
152
152
|
}
|
|
153
153
|
return typeof record.updatedAt === 'number';
|
|
154
154
|
};
|
|
155
|
+
/**
|
|
156
|
+
* Read the registry, pruning heartbeat-stale entries in the same locked read-modify-write.
|
|
157
|
+
*
|
|
158
|
+
* This is the only automatic path that removes entries: the registry is shared between the CLI
|
|
159
|
+
* and the SDK, so both read through here rather than each keeping its own wrapper.
|
|
160
|
+
*/
|
|
161
|
+
export const readAndPruneRegistry = async (options = {}) => {
|
|
162
|
+
const ttlMs = options.ttlMs ?? DEFAULT_TTL_MS;
|
|
163
|
+
return updateRegistry((registry) => pruneStaleWatchers(registry, Date.now(), ttlMs).registry, options.registryPath);
|
|
164
|
+
};
|
|
165
|
+
/** Remove a watcher entry atomically (locked read-modify-write). */
|
|
166
|
+
export const removeWatcherAndPersist = async (id, registryPath) => updateRegistry((registry) => removeWatcherEntry(registry, id), registryPath);
|
|
167
|
+
/** Remove several watcher entries in one locked read-modify-write. */
|
|
168
|
+
export const removeWatchersAndPersist = async (ids, registryPath) => {
|
|
169
|
+
if (ids.length === 0) {
|
|
170
|
+
const { registry } = await readRegistry(registryPath);
|
|
171
|
+
return registry;
|
|
172
|
+
}
|
|
173
|
+
return updateRegistry((registry) => ids.reduce((next, id) => removeWatcherEntry(next, id), registry), registryPath);
|
|
174
|
+
};
|
|
155
175
|
//# sourceMappingURL=registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/registry/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/registry/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textPattern.d.ts","sourceRoot":"","sources":["../src/textPattern.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"textPattern.d.ts","sourceRoot":"","sources":["../src/textPattern.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAI7F;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,WAa/C,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,SAAS,WAAW,KAAG,OAQvE,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAAI,MAAM,MAAM,EAAE,SAAS,WAAW,KAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAgB7G,CAAA"}
|
package/dist/textPattern.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { formatError } from './errorMessage.js';
|
|
1
2
|
const REGEX_PATTERN = /^\/(.+)\/([imsu]*)$/;
|
|
2
3
|
/**
|
|
3
4
|
* Parse a plain string or `/regex/flags` value into a reusable text pattern.
|
|
@@ -12,7 +13,7 @@ export const parseTextPattern = (text) => {
|
|
|
12
13
|
return { type: 'regex', regex: new RegExp(pattern, flags) };
|
|
13
14
|
}
|
|
14
15
|
catch (error) {
|
|
15
|
-
const msg =
|
|
16
|
+
const msg = formatError(error);
|
|
16
17
|
throw new Error(`Invalid regex pattern "${text}": ${msg}`);
|
|
17
18
|
}
|
|
18
19
|
};
|
package/dist/textPattern.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textPattern.js","sourceRoot":"","sources":["../src/textPattern.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"textPattern.js","sourceRoot":"","sources":["../src/textPattern.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAG/C,MAAM,aAAa,GAAG,qBAAqB,CAAA;AAE3C;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAe,EAAE;IAC7D,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;IACtC,CAAC;IAED,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,KAAK,CAAA;IAChC,IAAI,CAAC;QACJ,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,MAAM,CAAC,OAAQ,EAAE,KAAK,CAAC,EAAE,CAAA;IAC7D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;QAC9B,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,MAAM,GAAG,EAAE,CAAC,CAAA;IAC3D,CAAC;AACF,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,OAAoB,EAAW,EAAE;IACjF,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IACpC,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACxC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAA;IAC3B,OAAO,OAAO,CAAA;AACf,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,OAAoB,EAA4C,EAAE;IACpH,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACzC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IACnE,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACxC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAA;IAC3B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,OAAO;QACN,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC;KAC5C,CAAA;AACF,CAAC,CAAA"}
|
package/dist/time.d.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolve after `ms` milliseconds.
|
|
3
|
+
*
|
|
4
|
+
* Seventeen modules had defined this same one-liner privately, under two names.
|
|
5
|
+
*/
|
|
6
|
+
export declare const delay: (ms: number) => Promise<void>;
|
|
7
|
+
/** Duration suffixes accepted by {@link parseDurationMs}. */
|
|
8
|
+
export type DurationUnit = 'ms' | 's' | 'm' | 'h' | 'd';
|
|
9
|
+
/**
|
|
10
|
+
* Parse a duration string such as `250ms`, `30s`, `10m`, `2h`, or `7d` into milliseconds.
|
|
11
|
+
*
|
|
12
|
+
* @param value Duration string. A bare number is interpreted using `defaultUnit`.
|
|
13
|
+
* @param defaultUnit Unit applied when `value` carries no suffix. Defaults to seconds,
|
|
14
|
+
* matching the CLI's `--since`/`--duration` style flags; pass `'ms'` for flags whose
|
|
15
|
+
* documented examples are millisecond-scale.
|
|
16
|
+
* @returns Milliseconds, or `null` when the value is empty or not a valid duration.
|
|
17
|
+
* Note that `0` is a valid result — check for `null` explicitly, not falsiness.
|
|
18
|
+
*/
|
|
19
|
+
export declare const parseDurationMs: (value: string, defaultUnit?: DurationUnit) => number | null;
|
|
20
|
+
//# sourceMappingURL=time.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../src/time.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,KAAK,GAAI,IAAI,MAAM,KAAG,OAAO,CAAC,IAAI,CAAsD,CAAA;AAErG,6DAA6D;AAC7D,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;AAUvD;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO,MAAM,EAAE,cAAa,YAAkB,KAAG,MAAM,GAAG,IAiBzF,CAAA"}
|