scoutline 0.7.0 → 0.10.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/README.md +31 -20
- package/dist/capabilities/quota.d.ts +12 -1
- package/dist/capabilities/quota.d.ts.map +1 -1
- package/dist/capabilities/quota.js.map +1 -1
- package/dist/capabilities/search.d.ts +11 -1
- package/dist/capabilities/search.d.ts.map +1 -1
- package/dist/commands/crawl.js +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +13 -10
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/map.js +1 -1
- package/dist/commands/quota.d.ts +23 -0
- package/dist/commands/quota.d.ts.map +1 -1
- package/dist/commands/quota.js +21 -4
- package/dist/commands/quota.js.map +1 -1
- package/dist/commands/read.js +1 -1
- package/dist/commands/repo.js +1 -1
- package/dist/commands/research.js +5 -5
- package/dist/commands/research.js.map +1 -1
- package/dist/commands/search.d.ts +2 -1
- package/dist/commands/search.d.ts.map +1 -1
- package/dist/commands/search.js +21 -12
- package/dist/commands/search.js.map +1 -1
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +35 -4
- package/dist/index.js.map +1 -1
- package/dist/lib/async-job-state.d.ts +119 -0
- package/dist/lib/async-job-state.d.ts.map +1 -0
- package/dist/lib/{research-state.js → async-job-state.js} +43 -34
- package/dist/lib/async-job-state.js.map +1 -0
- package/dist/lib/cache.d.ts +16 -8
- package/dist/lib/cache.d.ts.map +1 -1
- package/dist/lib/cache.js +33 -8
- package/dist/lib/cache.js.map +1 -1
- package/dist/lib/execution.d.ts.map +1 -1
- package/dist/lib/execution.js +8 -4
- package/dist/lib/execution.js.map +1 -1
- package/dist/lib/redact.d.ts +2 -2
- package/dist/lib/redact.d.ts.map +1 -1
- package/dist/lib/redact.js +16 -2
- package/dist/lib/redact.js.map +1 -1
- package/dist/providers/brave/adapter.d.ts +42 -0
- package/dist/providers/brave/adapter.d.ts.map +1 -0
- package/dist/providers/brave/adapter.js +504 -0
- package/dist/providers/brave/adapter.js.map +1 -0
- package/dist/providers/brave/client.d.ts +161 -0
- package/dist/providers/brave/client.d.ts.map +1 -0
- package/dist/providers/brave/client.js +297 -0
- package/dist/providers/brave/client.js.map +1 -0
- package/dist/providers/brave/credentials.d.ts +33 -0
- package/dist/providers/brave/credentials.d.ts.map +1 -0
- package/dist/providers/brave/credentials.js +55 -0
- package/dist/providers/brave/credentials.js.map +1 -0
- package/dist/providers/brave/diagnostics.d.ts +46 -0
- package/dist/providers/brave/diagnostics.d.ts.map +1 -0
- package/dist/providers/brave/diagnostics.js +76 -0
- package/dist/providers/brave/diagnostics.js.map +1 -0
- package/dist/providers/brave/quota.d.ts +86 -0
- package/dist/providers/brave/quota.d.ts.map +1 -0
- package/dist/providers/brave/quota.js +247 -0
- package/dist/providers/brave/quota.js.map +1 -0
- package/dist/providers/exa/adapter.d.ts +58 -0
- package/dist/providers/exa/adapter.d.ts.map +1 -0
- package/dist/providers/exa/adapter.js +894 -0
- package/dist/providers/exa/adapter.js.map +1 -0
- package/dist/providers/exa/client.d.ts +143 -0
- package/dist/providers/exa/client.d.ts.map +1 -0
- package/dist/providers/exa/client.js +328 -0
- package/dist/providers/exa/client.js.map +1 -0
- package/dist/providers/exa/credentials.d.ts +34 -0
- package/dist/providers/exa/credentials.d.ts.map +1 -0
- package/dist/providers/exa/credentials.js +56 -0
- package/dist/providers/exa/credentials.js.map +1 -0
- package/dist/providers/exa/diagnostics.d.ts +42 -0
- package/dist/providers/exa/diagnostics.d.ts.map +1 -0
- package/dist/providers/exa/diagnostics.js +69 -0
- package/dist/providers/exa/diagnostics.js.map +1 -0
- package/dist/providers/firecrawl/adapter.d.ts +53 -0
- package/dist/providers/firecrawl/adapter.d.ts.map +1 -0
- package/dist/providers/firecrawl/adapter.js +962 -0
- package/dist/providers/firecrawl/adapter.js.map +1 -0
- package/dist/providers/firecrawl/client.d.ts +182 -0
- package/dist/providers/firecrawl/client.d.ts.map +1 -0
- package/dist/providers/firecrawl/client.js +426 -0
- package/dist/providers/firecrawl/client.js.map +1 -0
- package/dist/providers/firecrawl/credentials.d.ts +38 -0
- package/dist/providers/firecrawl/credentials.d.ts.map +1 -0
- package/dist/providers/firecrawl/credentials.js +60 -0
- package/dist/providers/firecrawl/credentials.js.map +1 -0
- package/dist/providers/firecrawl/diagnostics.d.ts +36 -0
- package/dist/providers/firecrawl/diagnostics.d.ts.map +1 -0
- package/dist/providers/firecrawl/diagnostics.js +65 -0
- package/dist/providers/firecrawl/diagnostics.js.map +1 -0
- package/dist/providers/firecrawl/quota.d.ts +46 -0
- package/dist/providers/firecrawl/quota.d.ts.map +1 -0
- package/dist/providers/firecrawl/quota.js +120 -0
- package/dist/providers/firecrawl/quota.js.map +1 -0
- package/dist/providers/minimax/adapter.js +1 -1
- package/dist/providers/minimax/adapter.js.map +1 -1
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js +6 -0
- package/dist/providers/registry.js.map +1 -1
- package/dist/providers/tavily/adapter.d.ts +2 -2
- package/dist/providers/tavily/adapter.d.ts.map +1 -1
- package/dist/providers/tavily/adapter.js +10 -3
- package/dist/providers/tavily/adapter.js.map +1 -1
- package/dist/providers/types.d.ts +1 -1
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/providers/types.js +1 -1
- package/dist/providers/types.js.map +1 -1
- package/dist/providers/zai/adapter.d.ts.map +1 -1
- package/dist/providers/zai/adapter.js +7 -1
- package/dist/providers/zai/adapter.js.map +1 -1
- package/package.json +1 -1
- package/dist/lib/research-state.d.ts +0 -104
- package/dist/lib/research-state.d.ts.map +0 -1
- package/dist/lib/research-state.js.map +0 -1
- package/dist/providers/minimax/sdk-client.d.ts +0 -29
- package/dist/providers/minimax/sdk-client.d.ts.map +0 -1
- package/dist/providers/minimax/sdk-client.js +0 -50
- package/dist/providers/minimax/sdk-client.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -31,6 +31,13 @@ export declare function parseAndValidateCount(raw: unknown): number | undefined;
|
|
|
31
31
|
* configuration gates. Exported for testing.
|
|
32
32
|
*/
|
|
33
33
|
export declare function parseAndValidateTopic(raw: unknown): "general" | "news" | "finance" | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Validate the `--type` flag value BEFORE Provider resolution, mirroring
|
|
36
|
+
* `parseAndValidateTopic`. `type` is a content axis (not an editorial
|
|
37
|
+
* topic axis) and is mutually exclusive with `--topic` (checked in
|
|
38
|
+
* `handleSearch`). Exported for testing.
|
|
39
|
+
*/
|
|
40
|
+
export declare function parseAndValidateType(raw: unknown): "video" | undefined;
|
|
34
41
|
export interface MainDependencies {
|
|
35
42
|
readonly invocation: CommandInvocationAdapter;
|
|
36
43
|
readonly env: NodeJS.ProcessEnv;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsCH,OAAO,EAAiB,KAAK,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAI1E,OAAO,KAAK,EAAE,kBAAkB,EAAc,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsCH,OAAO,EAAiB,KAAK,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAI1E,OAAO,KAAK,EAAE,kBAAkB,EAAc,MAAM,sBAAsB,CAAC;AAmb3E;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAuBtE;AAID;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAgB9F;AAID;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAatE;AAg7BD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,EAAE,wBAAwB,CAAC;IAC9C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC7D;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,MAAM,CAAC;IACrC;;;;;;OAMG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,MAAM,CAAC;IACzC;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,MAAM,CAAC;IACrC;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,MAAM,CAAC;IACpC;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,MAAM,CAAC;IAClC;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,MAAM,CAAC;CACxC;AAID,wBAAsB,IAAI,CACxB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,YAAY,EAAE,gBAAgB,GAC7B,OAAO,CAAC,MAAM,CAAC,CAgKjB"}
|
package/dist/index.js
CHANGED
|
@@ -34,7 +34,7 @@ Usage: scoutline <command> [args] [options]
|
|
|
34
34
|
|
|
35
35
|
Commands:
|
|
36
36
|
vision Image and video analysis (Z.AI; MiniMax for interpret-image)
|
|
37
|
-
search Real-time web search (shared: Z.AI + MiniMax + Tavily; --topic
|
|
37
|
+
search Real-time web search (shared: Z.AI + MiniMax + Tavily + Exa + Brave; --topic
|
|
38
38
|
honored by every Provider)
|
|
39
39
|
read Fetch and parse web pages (Provider Capability; Z.AI and Tavily
|
|
40
40
|
supply it, MiniMax returns UNSUPPORTED_CAPABILITY)
|
|
@@ -55,13 +55,14 @@ Commands:
|
|
|
55
55
|
code Execute TypeScript tool chains (Code Mode, Z.AI)
|
|
56
56
|
|
|
57
57
|
Provider selection (precedence: --provider, then SCOUTLINE_PROVIDER, then zai):
|
|
58
|
-
--provider <zai|minimax|tavily> Select the active Provider for shared capabilities
|
|
58
|
+
--provider <zai|minimax|tavily|exa|brave|firecrawl> Select the active Provider for shared capabilities
|
|
59
59
|
SCOUTLINE_PROVIDER=<id> Fallback when --provider is not passed
|
|
60
60
|
|
|
61
61
|
Shared capabilities accept --provider. The 'repo', 'read', 'crawl', 'map',
|
|
62
62
|
and 'research' commands participate in Provider selection: Z.AI
|
|
63
63
|
advertises and supplies repository-exploration and reader; Tavily
|
|
64
|
-
advertises and supplies reader plus crawl, map, and research;
|
|
64
|
+
advertises and supplies reader plus crawl, map, and research; Exa
|
|
65
|
+
advertises and supplies search, reader, and research; MiniMax
|
|
65
66
|
advertises and supplies none of those Provider-only Capabilities. A
|
|
66
67
|
non-supplier returns UNSUPPORTED_CAPABILITY with no fallback. Z.AI-only
|
|
67
68
|
commands (tools, tool, call, code) carry the flag but ignore it.
|
|
@@ -337,6 +338,25 @@ export function parseAndValidateTopic(raw) {
|
|
|
337
338
|
}
|
|
338
339
|
return str;
|
|
339
340
|
}
|
|
341
|
+
const SEARCH_TYPES = ["video"];
|
|
342
|
+
/**
|
|
343
|
+
* Validate the `--type` flag value BEFORE Provider resolution, mirroring
|
|
344
|
+
* `parseAndValidateTopic`. `type` is a content axis (not an editorial
|
|
345
|
+
* topic axis) and is mutually exclusive with `--topic` (checked in
|
|
346
|
+
* `handleSearch`). Exported for testing.
|
|
347
|
+
*/
|
|
348
|
+
export function parseAndValidateType(raw) {
|
|
349
|
+
if (raw === undefined || raw === "")
|
|
350
|
+
return undefined;
|
|
351
|
+
if (raw === true) {
|
|
352
|
+
throw new ValidationError("Type requires a value.", `Use one of: ${SEARCH_TYPES.join(", ")}.`);
|
|
353
|
+
}
|
|
354
|
+
const str = typeof raw === "string" ? raw : String(raw);
|
|
355
|
+
if (!SEARCH_TYPES.includes(str)) {
|
|
356
|
+
throw new ValidationError(`Invalid --type value "${str}": must be one of ${SEARCH_TYPES.join(", ")}`, `Use one of: ${SEARCH_TYPES.join(", ")}.`);
|
|
357
|
+
}
|
|
358
|
+
return str;
|
|
359
|
+
}
|
|
340
360
|
async function handleSearch(args, outputMode, deps) {
|
|
341
361
|
const { flags, positional } = parseArgs(args);
|
|
342
362
|
if (flags.help || flags.h || positional.length === 0) {
|
|
@@ -348,9 +368,17 @@ async function handleSearch(args, outputMode, deps) {
|
|
|
348
368
|
// not depend on whether credentials are present: `search q --count nope`
|
|
349
369
|
// with NO credentials must surface VALIDATION_ERROR (exit 1), not
|
|
350
370
|
// CONFIGURATION_ERROR (exit 3). Order: parse global options -> validate
|
|
351
|
-
// count -> validate topic ->
|
|
371
|
+
// count -> validate topic -> validate type -> reject type+topic combo
|
|
372
|
+
// -> resolve provider -> check configured -> dispatch.
|
|
352
373
|
const count = parseAndValidateCount(flags.count);
|
|
353
374
|
const topic = parseAndValidateTopic(flags.topic);
|
|
375
|
+
const type = parseAndValidateType(flags.type);
|
|
376
|
+
// `type` is a content axis; `topic` is an editorial axis. They are
|
|
377
|
+
// mutually exclusive. Enforced at parse time (before Provider
|
|
378
|
+
// resolution) so the error is VALIDATION_ERROR regardless of provider.
|
|
379
|
+
if (type !== undefined && topic !== undefined) {
|
|
380
|
+
throw new ValidationError("--type and --topic are mutually exclusive (--type has no editorial topic axis).", "Pass either --type or --topic, not both.");
|
|
381
|
+
}
|
|
354
382
|
// Resolve the Provider ONLY inside shared Search (DESIGN.md §6). Other
|
|
355
383
|
// command families carry the parsed flag but never resolve or validate
|
|
356
384
|
// it. An invalid explicit/env value throws VALIDATION_ERROR here, before
|
|
@@ -389,6 +417,7 @@ async function handleSearch(args, outputMode, deps) {
|
|
|
389
417
|
contentSize: flags["content-size"],
|
|
390
418
|
location: flags.location,
|
|
391
419
|
topic,
|
|
420
|
+
type,
|
|
392
421
|
maxSummary: flags["max-summary"]
|
|
393
422
|
? parseInt(flags["max-summary"], 10)
|
|
394
423
|
: undefined,
|
|
@@ -867,6 +896,8 @@ async function handleQuota(args, outputMode, deps) {
|
|
|
867
896
|
sleep: deps.searchSleep,
|
|
868
897
|
random: deps.searchRandom,
|
|
869
898
|
}),
|
|
899
|
+
writeStderr: (value) => deps.invocation.writeStderr(value),
|
|
900
|
+
secrets: deps.secrets,
|
|
870
901
|
}), outputMode, deps.now, deps.secrets);
|
|
871
902
|
}
|
|
872
903
|
async function handleCode(args, outputMode, deps) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Async-job state file — resume mechanism for interrupted async jobs
|
|
3
|
+
* (tech-plan §3, T07 / FC-01).
|
|
4
|
+
*
|
|
5
|
+
* Some Provider operations run asynchronously server-side: a create call
|
|
6
|
+
* starts the job and returns a `requestId`, then a poll call checks it
|
|
7
|
+
* until completion. Tavily Research is the first (POST /research →
|
|
8
|
+
* GET /research/{id}); Firecrawl async Crawl (FC-04) is the second. If
|
|
9
|
+
* the CLI exits (Ctrl-C, crash) mid-poll, the job keeps running and
|
|
10
|
+
* consuming credits/quota. Without a persistence mechanism, the next
|
|
11
|
+
* identical request would start a SECOND job — a double charge.
|
|
12
|
+
*
|
|
13
|
+
* This module persists `{ requestId, identityHash, createdAt, status }`
|
|
14
|
+
* to `<state-dir>/<state-hash>.json` so the next invocation of the same
|
|
15
|
+
* request detects the in-flight job and polls it instead of creating a
|
|
16
|
+
* new one. The state-hash is deterministic for a given
|
|
17
|
+
* `{provider, capability, credentialFingerprint, request}` tuple (see
|
|
18
|
+
* {@link computeAsyncJobStateHash}). The state directory is injected by
|
|
19
|
+
* the caller (the Provider Descriptor resolves it via
|
|
20
|
+
* `asyncJobStateDir(capability)`); this module never touches the cache
|
|
21
|
+
* root, keeping it pure and unit-testable.
|
|
22
|
+
*
|
|
23
|
+
* Boundary rules (ARCHITECTURE.md §2):
|
|
24
|
+
* - May import normalized errors (none today) and node builtins only.
|
|
25
|
+
* - Must NOT import cache-root resolution, transport, command
|
|
26
|
+
* presentation, or a Provider Adapter.
|
|
27
|
+
*
|
|
28
|
+
* Resilience contract (tech-plan §3 / G1-G3):
|
|
29
|
+
* - `write()` uses `{ flag: "wx" }` for atomic creation. A concurrent
|
|
30
|
+
* invocation that finds the file already exists gets EEXIST and
|
|
31
|
+
* polls the existing job instead of creating a new one.
|
|
32
|
+
* - `read()` catches JSON parse errors, deletes the corrupt file, and
|
|
33
|
+
* returns `null` (treated as absent → new job created).
|
|
34
|
+
* - `remove()` deletes the file and ignores ENOENT (already gone).
|
|
35
|
+
*
|
|
36
|
+
* Wire-compat: the persisted `requestId` field name and the `status`
|
|
37
|
+
* enum are fixed by the on-disk format and the SIGINT reader in
|
|
38
|
+
* `commands/research.ts`. They are NOT renamed even though the module
|
|
39
|
+
* is now async-job-generic (critique C1).
|
|
40
|
+
*/
|
|
41
|
+
/**
|
|
42
|
+
* A single in-flight async job's persisted state. `status` tracks the
|
|
43
|
+
* last-seen poll status ("pending" or "in_progress"); the poll loop
|
|
44
|
+
* updates it so a resume after Ctrl-C skips statuses already observed.
|
|
45
|
+
*
|
|
46
|
+
* The `requestId` field name is part of the on-disk wire format and is
|
|
47
|
+
* deliberately kept even though the module is generic — the SIGINT path
|
|
48
|
+
* reads `parsed.requestId` off disk synchronously.
|
|
49
|
+
*/
|
|
50
|
+
export interface AsyncJobState {
|
|
51
|
+
readonly requestId: string;
|
|
52
|
+
readonly identityHash: string;
|
|
53
|
+
readonly createdAt: string;
|
|
54
|
+
readonly status: "pending" | "in_progress";
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Port the Adapter uses to read/write/remove async-job state. Production
|
|
58
|
+
* wires {@link createProductionAsyncJobStateFile}; tests inject in-memory
|
|
59
|
+
* doubles to exercise the lifecycle deterministically without touching
|
|
60
|
+
* the filesystem.
|
|
61
|
+
*/
|
|
62
|
+
export interface AsyncJobStateFile {
|
|
63
|
+
read(identityHash: string): Promise<AsyncJobState | null>;
|
|
64
|
+
write(identityHash: string, state: AsyncJobState): Promise<void>;
|
|
65
|
+
remove(identityHash: string): Promise<void>;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Inputs to the async-job state hash. `credentialFingerprint` is the full
|
|
69
|
+
* lowercase SHA-256 hex digest of the active credential (same value used
|
|
70
|
+
* for the response-cache fingerprint). `request` is the normalized
|
|
71
|
+
* Capability request whose recursively key-sorted JSON becomes part of
|
|
72
|
+
* the hash.
|
|
73
|
+
*/
|
|
74
|
+
export interface AsyncJobStateHashInput {
|
|
75
|
+
readonly provider: string;
|
|
76
|
+
readonly capability: string;
|
|
77
|
+
readonly credentialFingerprint: string;
|
|
78
|
+
readonly request: unknown;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Compute the deterministic state-file identity hash for an async job
|
|
82
|
+
* (tech-plan §3 / CR3).
|
|
83
|
+
*
|
|
84
|
+
* state-hash = SHA-256(recursively-key-sorted-JSON({
|
|
85
|
+
* provider, capability, credentialFingerprint, request
|
|
86
|
+
* }))
|
|
87
|
+
*
|
|
88
|
+
* Same canonical approach as `buildProviderCacheKey`'s request hashing,
|
|
89
|
+
* extended to include provider + capability + credential. Rotating the
|
|
90
|
+
* API key orphans old state files (correct — the old job belongs to the
|
|
91
|
+
* old key's billing). The hash never contains a raw credential.
|
|
92
|
+
*/
|
|
93
|
+
export declare function computeAsyncJobStateHash(input: AsyncJobStateHashInput): string;
|
|
94
|
+
/**
|
|
95
|
+
* Build a production {@link AsyncJobStateFile} backed by files under the
|
|
96
|
+
* caller-supplied `dir` (one JSON file per in-flight job, named
|
|
97
|
+
* `<state-hash>.json`). The caller — typically the Provider Descriptor —
|
|
98
|
+
* resolves `dir` via `asyncJobStateDir(capability)`; this module performs
|
|
99
|
+
* no cache-root resolution itself.
|
|
100
|
+
*
|
|
101
|
+
* - `write()` atomically creates the file with `{ flag: "wx" }`. A
|
|
102
|
+
* concurrent invocation that finds it exists throws EEXIST; the caller
|
|
103
|
+
* catches that and polls the existing job.
|
|
104
|
+
* - `read()` catches JSON parse errors, deletes the corrupt file, and
|
|
105
|
+
* returns `null`.
|
|
106
|
+
* - `remove()` deletes the file and ignores ENOENT.
|
|
107
|
+
*/
|
|
108
|
+
export declare function createProductionAsyncJobStateFile(dir: string): AsyncJobStateFile;
|
|
109
|
+
/**
|
|
110
|
+
* Convenience helper exported for the Adapter and tests: builds an
|
|
111
|
+
* in-memory {@link AsyncJobStateFile} that throws EEXIST on a second
|
|
112
|
+
* write to the same hash, mirroring the production `{ flag: "wx" }`
|
|
113
|
+
* contract exactly. The adapter's lifecycle must not depend on whether
|
|
114
|
+
* the state file is disk-backed or memory-backed.
|
|
115
|
+
*/
|
|
116
|
+
export declare function createInMemoryAsyncJobStateFile(): AsyncJobStateFile & {
|
|
117
|
+
readonly store: Map<string, string>;
|
|
118
|
+
};
|
|
119
|
+
//# sourceMappingURL=async-job-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"async-job-state.d.ts","sourceRoot":"","sources":["../../src/lib/async-job-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAUH;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,aAAa,CAAC;CAC5C;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAC1D,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAMD;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAuBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM,CAQ9E;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAkEhF;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,IAAI,iBAAiB,GAAG;IACrE,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC,CAgDA"}
|
|
@@ -1,38 +1,46 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
* (tech-plan §3, T07).
|
|
2
|
+
* Async-job state file — resume mechanism for interrupted async jobs
|
|
3
|
+
* (tech-plan §3, T07 / FC-01).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
5
|
+
* Some Provider operations run asynchronously server-side: a create call
|
|
6
|
+
* starts the job and returns a `requestId`, then a poll call checks it
|
|
7
|
+
* until completion. Tavily Research is the first (POST /research →
|
|
8
|
+
* GET /research/{id}); Firecrawl async Crawl (FC-04) is the second. If
|
|
9
|
+
* the CLI exits (Ctrl-C, crash) mid-poll, the job keeps running and
|
|
10
|
+
* consuming credits/quota. Without a persistence mechanism, the next
|
|
11
|
+
* identical request would start a SECOND job — a double charge.
|
|
11
12
|
*
|
|
12
13
|
* This module persists `{ requestId, identityHash, createdAt, status }`
|
|
13
|
-
* to
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* to `<state-dir>/<state-hash>.json` so the next invocation of the same
|
|
15
|
+
* request detects the in-flight job and polls it instead of creating a
|
|
16
|
+
* new one. The state-hash is deterministic for a given
|
|
16
17
|
* `{provider, capability, credentialFingerprint, request}` tuple (see
|
|
17
|
-
*
|
|
18
|
+
* {@link computeAsyncJobStateHash}). The state directory is injected by
|
|
19
|
+
* the caller (the Provider Descriptor resolves it via
|
|
20
|
+
* `asyncJobStateDir(capability)`); this module never touches the cache
|
|
21
|
+
* root, keeping it pure and unit-testable.
|
|
18
22
|
*
|
|
19
23
|
* Boundary rules (ARCHITECTURE.md §2):
|
|
20
|
-
* - May import
|
|
21
|
-
* - Must NOT import transport, command
|
|
22
|
-
* Adapter.
|
|
24
|
+
* - May import normalized errors (none today) and node builtins only.
|
|
25
|
+
* - Must NOT import cache-root resolution, transport, command
|
|
26
|
+
* presentation, or a Provider Adapter.
|
|
23
27
|
*
|
|
24
28
|
* Resilience contract (tech-plan §3 / G1-G3):
|
|
25
29
|
* - `write()` uses `{ flag: "wx" }` for atomic creation. A concurrent
|
|
26
30
|
* invocation that finds the file already exists gets EEXIST and
|
|
27
|
-
* polls the existing
|
|
31
|
+
* polls the existing job instead of creating a new one.
|
|
28
32
|
* - `read()` catches JSON parse errors, deletes the corrupt file, and
|
|
29
|
-
* returns `null` (treated as absent → new
|
|
33
|
+
* returns `null` (treated as absent → new job created).
|
|
30
34
|
* - `remove()` deletes the file and ignores ENOENT (already gone).
|
|
35
|
+
*
|
|
36
|
+
* Wire-compat: the persisted `requestId` field name and the `status`
|
|
37
|
+
* enum are fixed by the on-disk format and the SIGINT reader in
|
|
38
|
+
* `commands/research.ts`. They are NOT renamed even though the module
|
|
39
|
+
* is now async-job-generic (critique C1).
|
|
31
40
|
*/
|
|
32
41
|
import crypto from "node:crypto";
|
|
33
42
|
import * as fs from "node:fs/promises";
|
|
34
43
|
import path from "node:path";
|
|
35
|
-
import { researchStateDir } from "./cache.js";
|
|
36
44
|
/**
|
|
37
45
|
* Recursively sort object keys so `JSON.stringify` produces a stable
|
|
38
46
|
* representation regardless of insertion order. Mirrors the cache module's
|
|
@@ -54,8 +62,8 @@ function sortKeysDeep(value) {
|
|
|
54
62
|
return value;
|
|
55
63
|
}
|
|
56
64
|
/**
|
|
57
|
-
* Compute the deterministic state-file identity hash for
|
|
58
|
-
*
|
|
65
|
+
* Compute the deterministic state-file identity hash for an async job
|
|
66
|
+
* (tech-plan §3 / CR3).
|
|
59
67
|
*
|
|
60
68
|
* state-hash = SHA-256(recursively-key-sorted-JSON({
|
|
61
69
|
* provider, capability, credentialFingerprint, request
|
|
@@ -63,10 +71,10 @@ function sortKeysDeep(value) {
|
|
|
63
71
|
*
|
|
64
72
|
* Same canonical approach as `buildProviderCacheKey`'s request hashing,
|
|
65
73
|
* extended to include provider + capability + credential. Rotating the
|
|
66
|
-
* API key orphans old state files (correct — the old
|
|
74
|
+
* API key orphans old state files (correct — the old job belongs to the
|
|
67
75
|
* old key's billing). The hash never contains a raw credential.
|
|
68
76
|
*/
|
|
69
|
-
export function
|
|
77
|
+
export function computeAsyncJobStateHash(input) {
|
|
70
78
|
const payload = {
|
|
71
79
|
provider: input.provider,
|
|
72
80
|
capability: input.capability,
|
|
@@ -79,20 +87,22 @@ export function computeResearchStateHash(input) {
|
|
|
79
87
|
// Production state-file implementation
|
|
80
88
|
// ---------------------------------------------------------------------------
|
|
81
89
|
/**
|
|
82
|
-
* Build a production {@link
|
|
83
|
-
*
|
|
84
|
-
*
|
|
90
|
+
* Build a production {@link AsyncJobStateFile} backed by files under the
|
|
91
|
+
* caller-supplied `dir` (one JSON file per in-flight job, named
|
|
92
|
+
* `<state-hash>.json`). The caller — typically the Provider Descriptor —
|
|
93
|
+
* resolves `dir` via `asyncJobStateDir(capability)`; this module performs
|
|
94
|
+
* no cache-root resolution itself.
|
|
85
95
|
*
|
|
86
96
|
* - `write()` atomically creates the file with `{ flag: "wx" }`. A
|
|
87
97
|
* concurrent invocation that finds it exists throws EEXIST; the caller
|
|
88
|
-
* catches that and polls the existing
|
|
98
|
+
* catches that and polls the existing job.
|
|
89
99
|
* - `read()` catches JSON parse errors, deletes the corrupt file, and
|
|
90
100
|
* returns `null`.
|
|
91
101
|
* - `remove()` deletes the file and ignores ENOENT.
|
|
92
102
|
*/
|
|
93
|
-
export function
|
|
103
|
+
export function createProductionAsyncJobStateFile(dir) {
|
|
94
104
|
function filePath(identityHash) {
|
|
95
|
-
return path.join(
|
|
105
|
+
return path.join(dir, `${identityHash}.json`);
|
|
96
106
|
}
|
|
97
107
|
return {
|
|
98
108
|
async read(identityHash) {
|
|
@@ -129,19 +139,18 @@ export function createProductionResearchStateFile() {
|
|
|
129
139
|
}
|
|
130
140
|
catch {
|
|
131
141
|
// Corrupt JSON — delete the file so the next run creates a fresh
|
|
132
|
-
//
|
|
142
|
+
// job instead of forever reading garbage.
|
|
133
143
|
await fs.unlink(file).catch(() => { });
|
|
134
144
|
return null;
|
|
135
145
|
}
|
|
136
146
|
},
|
|
137
147
|
async write(identityHash, state) {
|
|
138
|
-
const dir = researchStateDir();
|
|
139
148
|
await fs.mkdir(dir, { recursive: true });
|
|
140
149
|
const file = filePath(identityHash);
|
|
141
150
|
const payload = JSON.stringify(state);
|
|
142
151
|
// `{ flag: "wx" }` atomically creates the file only if it does not
|
|
143
152
|
// exist. A concurrent invocation that lost the race gets EEXIST;
|
|
144
|
-
// the caller catches it and polls the existing
|
|
153
|
+
// the caller catches it and polls the existing job instead of
|
|
145
154
|
// creating a second one.
|
|
146
155
|
await fs.writeFile(file, payload, { flag: "wx" });
|
|
147
156
|
},
|
|
@@ -159,12 +168,12 @@ export function createProductionResearchStateFile() {
|
|
|
159
168
|
}
|
|
160
169
|
/**
|
|
161
170
|
* Convenience helper exported for the Adapter and tests: builds an
|
|
162
|
-
* in-memory {@link
|
|
171
|
+
* in-memory {@link AsyncJobStateFile} that throws EEXIST on a second
|
|
163
172
|
* write to the same hash, mirroring the production `{ flag: "wx" }`
|
|
164
173
|
* contract exactly. The adapter's lifecycle must not depend on whether
|
|
165
174
|
* the state file is disk-backed or memory-backed.
|
|
166
175
|
*/
|
|
167
|
-
export function
|
|
176
|
+
export function createInMemoryAsyncJobStateFile() {
|
|
168
177
|
const store = new Map();
|
|
169
178
|
return {
|
|
170
179
|
store,
|
|
@@ -211,4 +220,4 @@ export function createInMemoryResearchStateFile() {
|
|
|
211
220
|
},
|
|
212
221
|
};
|
|
213
222
|
}
|
|
214
|
-
//# sourceMappingURL=
|
|
223
|
+
//# sourceMappingURL=async-job-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"async-job-state.js","sourceRoot":"","sources":["../../src/lib/async-job-state.ts"],"names":[],"mappings":"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"}
|