scoutline 0.10.2 → 0.12.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 +99 -44
- package/dist/capabilities/diagnostics.d.ts +75 -0
- package/dist/capabilities/diagnostics.d.ts.map +1 -1
- package/dist/capabilities/diagnostics.js.map +1 -1
- package/dist/capabilities/quota.d.ts +64 -1
- package/dist/capabilities/quota.d.ts.map +1 -1
- package/dist/capabilities/quota.js.map +1 -1
- package/dist/capabilities/vision.d.ts +4 -3
- package/dist/capabilities/vision.d.ts.map +1 -1
- package/dist/capabilities/vision.js +7 -5
- package/dist/capabilities/vision.js.map +1 -1
- package/dist/commands/code.d.ts +9 -1
- package/dist/commands/code.d.ts.map +1 -1
- package/dist/commands/code.js +4 -4
- package/dist/commands/code.js.map +1 -1
- package/dist/commands/crawl.d.ts.map +1 -1
- package/dist/commands/crawl.js +14 -3
- package/dist/commands/crawl.js.map +1 -1
- package/dist/commands/doctor.d.ts +71 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +96 -15
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init.d.ts +186 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +1221 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/map.d.ts.map +1 -1
- package/dist/commands/map.js +16 -3
- package/dist/commands/map.js.map +1 -1
- package/dist/commands/quota.d.ts +32 -0
- package/dist/commands/quota.d.ts.map +1 -1
- package/dist/commands/quota.js +165 -24
- package/dist/commands/quota.js.map +1 -1
- package/dist/commands/read.d.ts.map +1 -1
- package/dist/commands/read.js +9 -3
- package/dist/commands/read.js.map +1 -1
- package/dist/commands/repo.d.ts.map +1 -1
- package/dist/commands/repo.js +5 -3
- package/dist/commands/repo.js.map +1 -1
- package/dist/commands/research.d.ts +35 -7
- package/dist/commands/research.d.ts.map +1 -1
- package/dist/commands/research.js +93 -15
- package/dist/commands/research.js.map +1 -1
- package/dist/commands/tools.d.ts +8 -0
- package/dist/commands/tools.d.ts.map +1 -1
- package/dist/commands/tools.js +4 -4
- package/dist/commands/tools.js.map +1 -1
- package/dist/commands/vision.d.ts +10 -0
- package/dist/commands/vision.d.ts.map +1 -1
- package/dist/commands/vision.js +25 -2
- package/dist/commands/vision.js.map +1 -1
- package/dist/index.d.ts +136 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +894 -298
- package/dist/index.js.map +1 -1
- package/dist/lib/api-client.d.ts +1 -1
- package/dist/lib/api-client.d.ts.map +1 -1
- package/dist/lib/api-client.js +6 -2
- package/dist/lib/api-client.js.map +1 -1
- package/dist/lib/cache.d.ts +9 -2
- package/dist/lib/cache.d.ts.map +1 -1
- package/dist/lib/cache.js +9 -2
- package/dist/lib/cache.js.map +1 -1
- package/dist/lib/code-mode.d.ts +8 -0
- package/dist/lib/code-mode.d.ts.map +1 -1
- package/dist/lib/code-mode.js +3 -1
- package/dist/lib/code-mode.js.map +1 -1
- package/dist/lib/config-store.d.ts +165 -0
- package/dist/lib/config-store.d.ts.map +1 -0
- package/dist/lib/config-store.js +332 -0
- package/dist/lib/config-store.js.map +1 -0
- package/dist/lib/config.d.ts +2 -2
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +19 -11
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/consumption.d.ts +144 -0
- package/dist/lib/consumption.d.ts.map +1 -0
- package/dist/lib/consumption.js +161 -0
- package/dist/lib/consumption.js.map +1 -0
- package/dist/lib/errors.d.ts +11 -0
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +14 -0
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/execution.d.ts +32 -4
- package/dist/lib/execution.d.ts.map +1 -1
- package/dist/lib/execution.js +156 -13
- package/dist/lib/execution.js.map +1 -1
- package/dist/lib/mcp-client.d.ts +12 -0
- package/dist/lib/mcp-client.d.ts.map +1 -1
- package/dist/lib/mcp-client.js +16 -7
- package/dist/lib/mcp-client.js.map +1 -1
- package/dist/lib/mcp-config.d.ts +10 -0
- package/dist/lib/mcp-config.d.ts.map +1 -1
- package/dist/lib/mcp-config.js +13 -7
- package/dist/lib/mcp-config.js.map +1 -1
- package/dist/lib/monitor-client.d.ts +19 -3
- package/dist/lib/monitor-client.d.ts.map +1 -1
- package/dist/lib/monitor-client.js +21 -5
- package/dist/lib/monitor-client.js.map +1 -1
- package/dist/lib/provider-fallback.d.ts +150 -0
- package/dist/lib/provider-fallback.d.ts.map +1 -0
- package/dist/lib/provider-fallback.js +510 -0
- package/dist/lib/provider-fallback.js.map +1 -0
- package/dist/lib/quota-mapping.d.ts +402 -0
- package/dist/lib/quota-mapping.d.ts.map +1 -0
- package/dist/lib/quota-mapping.js +539 -0
- package/dist/lib/quota-mapping.js.map +1 -0
- package/dist/lib/quota-store.d.ts +271 -0
- package/dist/lib/quota-store.d.ts.map +1 -0
- package/dist/lib/quota-store.js +540 -0
- package/dist/lib/quota-store.js.map +1 -0
- package/dist/lib/trigger-detection.d.ts +149 -0
- package/dist/lib/trigger-detection.d.ts.map +1 -0
- package/dist/lib/trigger-detection.js +149 -0
- package/dist/lib/trigger-detection.js.map +1 -0
- package/dist/lib/tty.d.ts +8 -1
- package/dist/lib/tty.d.ts.map +1 -1
- package/dist/lib/tty.js +53 -1
- package/dist/lib/tty.js.map +1 -1
- package/dist/providers/brave/adapter.d.ts +26 -0
- package/dist/providers/brave/adapter.d.ts.map +1 -1
- package/dist/providers/brave/adapter.js +66 -4
- package/dist/providers/brave/adapter.js.map +1 -1
- package/dist/providers/brave/client.d.ts +46 -2
- package/dist/providers/brave/client.d.ts.map +1 -1
- package/dist/providers/brave/client.js +55 -3
- package/dist/providers/brave/client.js.map +1 -1
- package/dist/providers/exa/adapter.d.ts.map +1 -1
- package/dist/providers/exa/adapter.js +10 -1
- package/dist/providers/exa/adapter.js.map +1 -1
- package/dist/providers/firecrawl/adapter.d.ts.map +1 -1
- package/dist/providers/firecrawl/adapter.js +13 -3
- package/dist/providers/firecrawl/adapter.js.map +1 -1
- package/dist/providers/minimax/adapter.d.ts.map +1 -1
- package/dist/providers/minimax/adapter.js +4 -0
- package/dist/providers/minimax/adapter.js.map +1 -1
- package/dist/providers/selection.d.ts +114 -1
- package/dist/providers/selection.d.ts.map +1 -1
- package/dist/providers/selection.js +99 -3
- package/dist/providers/selection.js.map +1 -1
- package/dist/providers/tavily/adapter.d.ts.map +1 -1
- package/dist/providers/tavily/adapter.js +2 -0
- package/dist/providers/tavily/adapter.js.map +1 -1
- package/dist/providers/types.d.ts +33 -1
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/providers/types.js +8 -0
- package/dist/providers/types.js.map +1 -1
- package/dist/providers/zai/adapter.d.ts.map +1 -1
- package/dist/providers/zai/adapter.js +18 -5
- package/dist/providers/zai/adapter.js.map +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -50,6 +50,33 @@ npx scoutline --provider brave search "AI policy news" --topic news
|
|
|
50
50
|
npx scoutline --provider brave search "rust async" --type video
|
|
51
51
|
```
|
|
52
52
|
|
|
53
|
+
### Interactive Onboarding (`scoutline init`)
|
|
54
|
+
|
|
55
|
+
Instead of exporting environment variables, run the interactive wizard to
|
|
56
|
+
record API keys in `~/.scoutline/config.json` (mode 0600):
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
scoutline init
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
The wizard walks you through a provider checklist (Z.AI, MiniMax, Tavily,
|
|
63
|
+
Exa, Brave, Firecrawl — equal weight, none pre-checked), takes each key via
|
|
64
|
+
hidden input, and performs a single inline validation probe against an
|
|
65
|
+
ephemeral in-memory environment (the candidate key is never persisted or
|
|
66
|
+
written to `process.env` until the final atomic write). It also asks your
|
|
67
|
+
fallback preference and discloses credit costs before any paid probe.
|
|
68
|
+
|
|
69
|
+
If you already have a config, `init` opens a re-config menu (edit a key, add
|
|
70
|
+
or remove a provider, change the fallback preference, re-run the full
|
|
71
|
+
wizard, or cancel). For a corrupt `config.json`, `init` offers to back up
|
|
72
|
+
the live file and rewrite a fresh one — it is the recovery path.
|
|
73
|
+
|
|
74
|
+
Environment variables always take precedence over file keys at runtime
|
|
75
|
+
(`Z_AI_API_KEY` > `ZAI_API_KEY` > file key), so the wizard notes when an
|
|
76
|
+
imported env key will keep overriding the saved key.
|
|
77
|
+
|
|
78
|
+
Run `scoutline init --help` for the full lifecycle and exit-code reference.
|
|
79
|
+
|
|
53
80
|
## Installation
|
|
54
81
|
|
|
55
82
|
### As an Agent Skill
|
|
@@ -111,34 +138,50 @@ fast with `VALIDATION_ERROR`.
|
|
|
111
138
|
**`scoutline repo`**, and **`scoutline read`** participate in Provider
|
|
112
139
|
selection. `scoutline tools`, `scoutline tool`, `scoutline call`, and
|
|
113
140
|
`scoutline code` accept the flag but ignore it; they remain Z.AI-only.
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
141
|
+
|
|
142
|
+
**Provider fallback is always-on by default** (0.11.0+). When the
|
|
143
|
+
selected provider does not advertise the capability (for example,
|
|
144
|
+
MiniMax does not advertise `repository-exploration` or `reader`) or
|
|
145
|
+
fails at runtime, Scoutline emits a stderr notice and silently
|
|
146
|
+
reroutes to the next eligible configured provider in registry order
|
|
147
|
+
`[zai, minimax, tavily, exa, brave, firecrawl]`. Pass `--no-fallback`
|
|
148
|
+
(or set `SCOUTLINE_NO_FALLBACK=1`) to restore the previous strict
|
|
149
|
+
single-provider, fail-loud behavior for scripting or cost-sensitive
|
|
150
|
+
workflows. See
|
|
151
|
+
[`docs/adr/0002-provider-fallback.md`](https://github.com/vikasagarwal101/scoutline/blob/main/docs/adr/0002-provider-fallback.md)
|
|
152
|
+
for the rationale
|
|
153
|
+
and the accepted async double-charge risk on `crawl` / `map` /
|
|
154
|
+
`research`.
|
|
119
155
|
|
|
120
156
|
## Capability Matrix
|
|
121
157
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
|
130
|
-
|
|
|
131
|
-
| `
|
|
132
|
-
| `vision.
|
|
133
|
-
| `
|
|
134
|
-
| `
|
|
135
|
-
| `
|
|
136
|
-
| `
|
|
137
|
-
| `
|
|
138
|
-
| `
|
|
139
|
-
| `
|
|
140
|
-
| `
|
|
141
|
-
| `
|
|
158
|
+
The matrix below is generated from the production provider registry
|
|
159
|
+
(`packages/scoutline/src/providers/registry.ts`) and reflects the
|
|
160
|
+
release-shipped capability advertisements for every built-in provider
|
|
161
|
+
in registry order `[zai, minimax, tavily, exa, brave, firecrawl]`. The
|
|
162
|
+
exact same `descriptor.capabilities()` set drives executor preflight,
|
|
163
|
+
Provider selection, and `doctor`.
|
|
164
|
+
|
|
165
|
+
| Capability | Z.AI | MiniMax | Tavily | Exa | Brave | Firecrawl | Notes |
|
|
166
|
+
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
167
|
+
| `search` | Yes | Yes | Yes | Yes | Yes (incl. `type: "video"`) | Yes | MiniMax rejects domain/recency/content-size/location; only Brave accepts `controls.type` |
|
|
168
|
+
| `vision.interpret-image` (analyze) | Yes | Yes | No | No | No | No | Provider-specific media limits; uncached |
|
|
169
|
+
| `vision.ui-artifact` (ui-to-code) | Yes | Available | No | No | No | No | Live-attested; conformance-gated |
|
|
170
|
+
| `vision.extract-text` | Yes | Pending | No | No | No | No | Implemented, pending live conformance |
|
|
171
|
+
| `vision.diagnose-error` | Yes | Available | No | No | No | No | Live-attested; conformance-gated |
|
|
172
|
+
| `vision.diagram` | Yes | Pending | No | No | No | No | Implemented, pending live conformance |
|
|
173
|
+
| `vision.chart` | Yes | Pending | No | No | No | No | Implemented, pending live conformance |
|
|
174
|
+
| `vision.diff` (image diff) | Yes | No | No | No | No | No | Z.AI-only (never MiniMax-claimable) |
|
|
175
|
+
| `vision.video` | Yes | No | No | No | No | No | Z.AI-only (never MiniMax-claimable) |
|
|
176
|
+
| `quota` | Yes | Yes | Yes | No | Yes | Yes (credits) | Normalized `QuotaDashboard` (ADR-0001) |
|
|
177
|
+
| `diagnostics` (`doctor`) | Yes | Yes | Yes | Yes | Yes | Yes | Lists every Provider; probes configured |
|
|
178
|
+
| `read` (Reader) | Yes | **No** | Yes | Yes | No | Yes | Exa/Brave add Reader; Z.AI-only options rejected per provider |
|
|
179
|
+
| `crawl` | **No** | **No** | Yes | No | No | Yes (async) | Tavily sync; Firecrawl async (resumable after Ctrl-C) |
|
|
180
|
+
| `map` | **No** | **No** | Yes | No | No | Yes | URL-set discovery; no per-page content |
|
|
181
|
+
| `research` | **No** | **No** | Yes | Yes | **No** | **No** | Tavily + Exa only (Firecrawl `/deep-research` deprecated); 4-250 credits |
|
|
182
|
+
| `repo search` / `repo read` / `repo tree` | Yes | **No** | **No** | **No** | **No** | **No** | Participates in selection; only Z.AI supplies `repository-exploration` |
|
|
183
|
+
| `tools`, `tool`, `call` (Raw tools) | Yes | No | No | No | No | No | Z.AI-only; accepts but ignores `--provider` |
|
|
184
|
+
| `code` (Code Mode) | Yes | No | No | No | No | No | Z.AI-only; accepts but ignores `--provider` |
|
|
142
185
|
|
|
143
186
|
Media limits for general single-image interpretation:
|
|
144
187
|
|
|
@@ -172,12 +215,13 @@ they are **supported at runtime** through MiniMax. The remaining operation
|
|
|
172
215
|
(`chart`) has offline `pass` and live `pending`; it is **unsupported at
|
|
173
216
|
runtime** through MiniMax (its fixture image has a rotated, low-resolution
|
|
174
217
|
Y-axis label that VLMs read inconsistently — a fixture-image-quality
|
|
175
|
-
blocker, not an evaluator issue).
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
218
|
+
blocker, not an evaluator issue). By default (0.11.0+), an explicit
|
|
219
|
+
MiniMax selection for `chart` emits a stderr notice and auto-reroutes
|
|
220
|
+
to Z.AI, which supports every specialized operation. Under
|
|
221
|
+
`--no-fallback` the preflight surfaces `UNSUPPORTED_CAPABILITY` for
|
|
222
|
+
MiniMax before credentials, media, transport, cache, or any other
|
|
223
|
+
Provider is touched (FR-023, FR-024). Pass `--no-fallback` to restore
|
|
224
|
+
the previous strict single-provider behavior.
|
|
181
225
|
|
|
182
226
|
No environment variable, flag, or configuration value can promote a
|
|
183
227
|
mapping to supported. Support is driven exclusively by the compiled
|
|
@@ -321,10 +365,13 @@ one-line cache summary under the `cache` field.
|
|
|
321
365
|
`scoutline repo search`, `scoutline repo read`, and `scoutline repo tree`
|
|
322
366
|
participate in `--provider` selection. Z.AI advertises the
|
|
323
367
|
`repository-exploration` Capability and supplies it through the Z.AI
|
|
324
|
-
Repository Adapter. MiniMax
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
368
|
+
Repository Adapter. MiniMax and the other built-in Providers do not
|
|
369
|
+
advertise it; by default (0.11.0+) Scoutline emits a stderr notice and
|
|
370
|
+
auto-reroutes to Z.AI. Under `--no-fallback` the preflight surfaces
|
|
371
|
+
`UNSUPPORTED_CAPABILITY` for the selected non-supplier before descriptor
|
|
372
|
+
configuration, Adapter creation, credential resolution for use, cache
|
|
373
|
+
identity, or transport construction. Pass `--no-fallback` to restore
|
|
374
|
+
the previous strict single-provider behavior.
|
|
328
375
|
|
|
329
376
|
### Breaking data-mode migration (v0.2 → v1)
|
|
330
377
|
|
|
@@ -416,18 +463,26 @@ in Provider selection. Doctor help names MiniMax as unsupported for `repo`.
|
|
|
416
463
|
|
|
417
464
|
### Non-goals
|
|
418
465
|
|
|
419
|
-
This release does not add MiniMax repository exploration,
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
466
|
+
This release does not add MiniMax repository exploration, automatic
|
|
467
|
+
summarization, or dynamic Provider loading. The P5 specialized
|
|
468
|
+
Vision mappings remain independent and are not claimed complete
|
|
469
|
+
here. Provider fallback is always-on by default in this release
|
|
470
|
+
(see `Capability Matrix` above) — passing `--no-fallback` restores
|
|
471
|
+
the previous strict single-provider behavior for scripting or
|
|
472
|
+
cost-sensitive workflows.
|
|
423
473
|
|
|
424
474
|
## Reader (P7)
|
|
425
475
|
|
|
426
|
-
`scoutline read` participates in `--provider` selection. Z.AI
|
|
427
|
-
`reader` Capability and
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
476
|
+
`scoutline read` participates in `--provider` selection. Z.AI, Tavily,
|
|
477
|
+
Exa, and Firecrawl advertise the `reader` Capability and supply it
|
|
478
|
+
through their respective Reader Adapters. MiniMax and Brave do not
|
|
479
|
+
advertise it; by default (0.11.0+) Scoutline emits a stderr notice and
|
|
480
|
+
auto-reroutes to the next eligible configured supplier. Under
|
|
481
|
+
`--no-fallback` the preflight surfaces `UNSUPPORTED_CAPABILITY` for the
|
|
482
|
+
selected non-supplier before descriptor configuration, Adapter
|
|
483
|
+
creation, credential resolution for use, cache identity, or transport
|
|
484
|
+
construction. Pass `--no-fallback` to restore the previous strict
|
|
485
|
+
single-provider behavior.
|
|
431
486
|
|
|
432
487
|
### Breaking data-mode migration (v0.2 → v1)
|
|
433
488
|
|
|
@@ -52,6 +52,81 @@ export interface ProviderDiagnostic {
|
|
|
52
52
|
message: string;
|
|
53
53
|
help?: string;
|
|
54
54
|
};
|
|
55
|
+
/**
|
|
56
|
+
* Quota snapshot summary for this Provider (PB-T5 — Plan B).
|
|
57
|
+
* Optional: present when the dispatcher threads a quota snapshot
|
|
58
|
+
* through `DoctorDiagnosticsDependencies.quotaSnapshot`. Doctor
|
|
59
|
+
* reports each Provider's quota source (snapshot vs none) +
|
|
60
|
+
* freshness (`observedAt` age; stale → flagged non-authoritative)
|
|
61
|
+
* so a user can correlate a selection pick with the data that drove
|
|
62
|
+
* it. Under `--no-tools` the field still appears when a snapshot is
|
|
63
|
+
* available (a snapshot read is a local state read, not transport).
|
|
64
|
+
*
|
|
65
|
+
* Doctor NEVER live-probes quota — it only reads the snapshot. The
|
|
66
|
+
* `source` is therefore always `"snapshot"` when an entry exists, or
|
|
67
|
+
* `"none"` when the snapshot has no entry for this Provider.
|
|
68
|
+
* Additive under schema version 2: pre-PB-T5 callers that omit the
|
|
69
|
+
* dependency produce entries without this field.
|
|
70
|
+
*/
|
|
71
|
+
readonly quota?: ProviderDiagnosticQuota;
|
|
72
|
+
/**
|
|
73
|
+
* Verification summary mirroring the Provider's Plan A
|
|
74
|
+
* `config.providers[id].verification` record (PB-T5). Optional:
|
|
75
|
+
* present when the dispatcher threads the configured providers'
|
|
76
|
+
* verification records through
|
|
77
|
+
* `DoctorDiagnosticsDependencies.verificationRecords`. Additive under
|
|
78
|
+
* schema version 2: pre-PB-T5 callers produce entries without it.
|
|
79
|
+
*/
|
|
80
|
+
readonly verification?: ProviderVerificationSummary;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Quota summary embedded in a {@link ProviderDiagnostic} (PB-T5 —
|
|
84
|
+
* Plan B). A structural view of PB-T1's snapshot entry for this
|
|
85
|
+
* Provider: never carries categories (Doctor is observational; full
|
|
86
|
+
* categories belong to the `quota` command). Doctor never live-probes
|
|
87
|
+
* quota, so the source is always `"snapshot"` (when an entry exists)
|
|
88
|
+
* or `"none"` (when it does not).
|
|
89
|
+
*/
|
|
90
|
+
export interface ProviderDiagnosticQuota {
|
|
91
|
+
/**
|
|
92
|
+
* `"snapshot"` — read from PB-T1's `state.json`. `"none"` — the
|
|
93
|
+
* snapshot has no entry for this Provider (it may be unconfigured,
|
|
94
|
+
* may not advertise `quota`, or may simply have never been
|
|
95
|
+
* refreshed). Doctor never emits `"live"`; the live probe belongs
|
|
96
|
+
* to the `quota` command, not Doctor.
|
|
97
|
+
*/
|
|
98
|
+
readonly source: "snapshot" | "none";
|
|
99
|
+
/**
|
|
100
|
+
* Epoch-ms the snapshot was observed. Omitted when `source` is
|
|
101
|
+
* `"none"`. Freshness is judged solely from `observedAt` — never
|
|
102
|
+
* from `locallyUpdatedAt` (PB-T2's local decrement never resets the
|
|
103
|
+
* staleness clock).
|
|
104
|
+
*/
|
|
105
|
+
readonly observedAt?: number;
|
|
106
|
+
/**
|
|
107
|
+
* Whether `observedAt` is within the authoritative staleness
|
|
108
|
+
* threshold (`DEFAULT_QUOTA_STALE_THRESHOLD_MS`, 10 min). Always
|
|
109
|
+
* `false` when `source` is `"none"`. Matches the same flag the
|
|
110
|
+
* `quota` command and PB-T4's selection resolver use, so a user can
|
|
111
|
+
* correlate Doctor's "stale" label with a selection pick that was
|
|
112
|
+
* made against the same snapshot.
|
|
113
|
+
*/
|
|
114
|
+
readonly authoritative: boolean;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Verification summary mirroring Plan A's
|
|
118
|
+
* `ProviderVerification` shape (PB-T5). Defined as a structural twin
|
|
119
|
+
* in the capability contract so `capabilities/diagnostics.ts` does
|
|
120
|
+
* not import from `lib/config-store.ts` (the capability contract
|
|
121
|
+
* imports only Provider identity and metadata types and shared
|
|
122
|
+
* errors — see the boundary rules at the top of this module). The
|
|
123
|
+
* dispatcher maps `ProviderVerification → ProviderVerificationSummary`
|
|
124
|
+
* at the report-dependency boundary.
|
|
125
|
+
*/
|
|
126
|
+
export interface ProviderVerificationSummary {
|
|
127
|
+
readonly status: "verified" | "unverified";
|
|
128
|
+
readonly checkedAt: number;
|
|
129
|
+
readonly reason?: string;
|
|
55
130
|
}
|
|
56
131
|
/**
|
|
57
132
|
* One row of the schema-version-2 capability matrix: a capability and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/capabilities/diagnostics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAChG,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAM3E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACrD,QAAQ,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;IACtD,QAAQ,CAAC,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,kBAAkB,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/capabilities/diagnostics.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../src/capabilities/diagnostics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAGH,OAAO,EAAE,cAAc,EAA2B,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../src/capabilities/diagnostics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAGH,OAAO,EAAE,cAAc,EAA2B,MAAM,kBAAkB,CAAC;AA6I3E,8EAA8E;AAC9E,wCAAwC;AACxC,EAAE;AACF,6DAA6D;AAC7D,qEAAqE;AACrE,iEAAiE;AACjE,gEAAgE;AAChE,sBAAsB;AACtB,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,sBAAsB,CACpC,WAA0C;IAE1C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAEvD,qEAAqE;IACrE,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAEhE,+DAA+D;IAC/D,qEAAqE;IACrE,uBAAuB;IACvB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC3C,MAAM,OAAO,GAAyB,EAAE,CAAC;IACzC,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;QACjC,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACd,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC;IAED,gEAAgE;IAChE,oBAAoB;IACpB,MAAM,GAAG,GAA8B,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACzD,MAAM,SAAS,GAAiB,EAAE,CAAC;QACnC,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACpC,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjB,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAA0B,EAAE,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC;AAED,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAc;IAKrD,MAAM,IAAI,GACR,KAAK,YAAY,cAAc,CAAC,CAAC,CAAE,KAAK,CAAC,IAA2B,CAAC,CAAC,CAAC,eAAe,CAAC;IACzF,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,MAAM,MAAM,GAAiE;QAC3E,IAAI;QACJ,OAAO;KACR,CAAC;IACF,IAAI,KAAK,YAAY,cAAc,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QAClD,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IAC3B,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -52,6 +52,21 @@ export interface ProviderQuotaSuccess {
|
|
|
52
52
|
* caveat simply omit the field.
|
|
53
53
|
*/
|
|
54
54
|
warnings?: readonly string[];
|
|
55
|
+
/**
|
|
56
|
+
* Source + freshness label (PB-T5 — Plan B). Additive under schema
|
|
57
|
+
* version 1: when omitted (the pre-PB-T5 caller path), the row is a
|
|
58
|
+
* direct live probe whose freshness is implicit (the dashboard was
|
|
59
|
+
* just built). When the dashboard reads PB-T1's snapshot, this field
|
|
60
|
+
* carries the source ("snapshot" vs "live" fallback) and the
|
|
61
|
+
* authoritative flag so a user can correlate a selection pick with
|
|
62
|
+
* the data that drove it without misattributing it to fresher data
|
|
63
|
+
* than it is.
|
|
64
|
+
*
|
|
65
|
+
* Freshness is judged solely from `observedAt` — the snapshot's
|
|
66
|
+
* ground-truth clock — never from `locallyUpdatedAt` (PB-T2's local
|
|
67
|
+
* decrement never resets the staleness clock).
|
|
68
|
+
*/
|
|
69
|
+
readonly quotaSource?: QuotaSourceLabel;
|
|
55
70
|
}
|
|
56
71
|
export interface ProviderQuotaFailure {
|
|
57
72
|
provider: ProviderId;
|
|
@@ -62,10 +77,58 @@ export interface ProviderQuotaFailure {
|
|
|
62
77
|
help?: string;
|
|
63
78
|
};
|
|
64
79
|
}
|
|
80
|
+
/**
|
|
81
|
+
* A configured Provider that advertises no `quota` Capability (PB-T5 —
|
|
82
|
+
* Plan B). Today only Exa matches this row in `all-providers` mode: it
|
|
83
|
+
* is configured and capable inventory, but has no quota endpoint to
|
|
84
|
+
* probe. The dashboard emits this variant with **zero adapter/transport
|
|
85
|
+
* calls** — no descriptor.create(), no quota.invoke(), no fallback to a
|
|
86
|
+
* live probe. The variant is additive under schema version 1: every
|
|
87
|
+
* existing consumer (TTY renderer, exit-code computation, warnings
|
|
88
|
+
* loop) handles `status` via fall-through, so the new `"none"` value
|
|
89
|
+
* cannot break a pre-PB-T5 caller.
|
|
90
|
+
*
|
|
91
|
+
* Single-Provider (`--provider <id>`) mode still throws
|
|
92
|
+
* `UnsupportedCapabilityError` when the pinned Provider lacks `quota` —
|
|
93
|
+
* the user explicitly asked for one Provider's quota, so emitting a
|
|
94
|
+
* no-signal row would hide the user error. The no-signal row appears
|
|
95
|
+
* only in `all-providers` mode (the default).
|
|
96
|
+
*/
|
|
97
|
+
export interface ProviderQuotaNone {
|
|
98
|
+
readonly provider: ProviderId;
|
|
99
|
+
readonly status: "none";
|
|
100
|
+
readonly reason: "no-capability";
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Where a {@link ProviderQuotaSuccess} row's data came from (PB-T5).
|
|
104
|
+
* Carried as a flat sub-object so consumers that don't read it pay
|
|
105
|
+
* nothing. See {@link ProviderQuotaSuccess.quotaSource}.
|
|
106
|
+
*/
|
|
107
|
+
export interface QuotaSourceLabel {
|
|
108
|
+
/**
|
|
109
|
+
* `"snapshot"` — read from PB-T1's `state.json` and judged fresh.
|
|
110
|
+
* `"live"` — the snapshot was stale/missing/corrupt, so the
|
|
111
|
+
* dashboard fell back to a live probe (and awaited the write-through
|
|
112
|
+
* to the snapshot before returning).
|
|
113
|
+
*/
|
|
114
|
+
readonly source: "snapshot" | "live";
|
|
115
|
+
/** Epoch-ms the underlying observation was made (`observedAt`). */
|
|
116
|
+
readonly observedAt: number;
|
|
117
|
+
/**
|
|
118
|
+
* Whether `observedAt` is within the authoritative staleness
|
|
119
|
+
* threshold (`DEFAULT_QUOTA_STALE_THRESHOLD_MS`, 10 min). Selection
|
|
120
|
+
* (PB-T4) treats non-authoritative rows as eligible-but-neutral; the
|
|
121
|
+
* dashboard surfaces the same flag so a user can correlate a
|
|
122
|
+
* selection pick with the data that drove it. A `"live"` row is
|
|
123
|
+
* always authoritative (just observed); a `"snapshot"` row is
|
|
124
|
+
* authoritative iff `observedAt` is within the threshold.
|
|
125
|
+
*/
|
|
126
|
+
readonly authoritative: boolean;
|
|
127
|
+
}
|
|
65
128
|
export interface QuotaDashboard {
|
|
66
129
|
schemaVersion: 1;
|
|
67
130
|
effectiveProvider: ProviderId;
|
|
68
|
-
providers: Array<ProviderQuotaSuccess | ProviderQuotaFailure>;
|
|
131
|
+
providers: Array<ProviderQuotaSuccess | ProviderQuotaFailure | ProviderQuotaNone>;
|
|
69
132
|
}
|
|
70
133
|
export interface QuotaCapability {
|
|
71
134
|
invoke(): Promise<ProviderQuotaSuccess>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quota.d.ts","sourceRoot":"","sources":["../../src/capabilities/quota.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAM3E,MAAM,WAAW,WAAW;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;IACxC,OAAO,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,EAAE,IAAI,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"quota.d.ts","sourceRoot":"","sources":["../../src/capabilities/quota.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAM3E,MAAM,WAAW,WAAW;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;IACxC,OAAO,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,EAAE,IAAI,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;CACzC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE;QAAE,IAAI,EAAE,kBAAkB,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACrE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC;IACrC,mEAAmE;IACnE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B;;;;;;;;OAQG;IACH,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,CAAC,CAAC;IACjB,iBAAiB,EAAE,UAAU,CAAC;IAC9B,SAAS,EAAE,KAAK,CAAC,oBAAoB,GAAG,oBAAoB,GAAG,iBAAiB,CAAC,CAAC;CACnF;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC;CACzC;AAMD;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAkDD;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,WAAW,CAoCvE;AAMD;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,GAAG,oBAAoB,CAahG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quota.js","sourceRoot":"","sources":["../../src/capabilities/quota.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,cAAc,EAA2B,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"quota.js","sourceRoot":"","sources":["../../src/capabilities/quota.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,13 +12,14 @@
|
|
|
12
12
|
* construction). If the descriptor does not advertise the
|
|
13
13
|
* Capability, throws `UnsupportedCapabilityError(provider, ...)`
|
|
14
14
|
* BEFORE `descriptor.create()` is called. No credentials, no media,
|
|
15
|
-
* no transport, no cache
|
|
15
|
+
* no transport, no cache are observed.
|
|
16
16
|
* 3. Calls `descriptor.create(context)` and defensively double-checks
|
|
17
17
|
* the Adapter's `supports(operation)`. If the Adapter says no,
|
|
18
18
|
* throws the same error before `invoke` runs.
|
|
19
19
|
* 4. Calls `adapter.vision.invoke(request)` and returns the normalized
|
|
20
|
-
* text. Vision never uses the response cache
|
|
21
|
-
*
|
|
20
|
+
* text. Vision never uses the response cache. Cross-Provider
|
|
21
|
+
* fallback is owned by the executor (executeWithFallback), not by
|
|
22
|
+
* this module.
|
|
22
23
|
*
|
|
23
24
|
* This module imports no Provider transport and no Provider Adapter.
|
|
24
25
|
* The error class import below is from `lib/errors.ts` (a shared error
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vision.d.ts","sourceRoot":"","sources":["../../src/capabilities/vision.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"vision.d.ts","sourceRoot":"","sources":["../../src/capabilities/vision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAQH;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GACrB;IACE,SAAS,EAAE,iBAAiB,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB,GACD;IACE,SAAS,EAAE,aAAa,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,aAAa,CAAC;CACxD,GACD;IACE,SAAS,EAAE,cAAc,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,GACD;IACE,SAAS,EAAE,gBAAgB,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GACD;IACE,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GACD;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB,GACD;IACE,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEN,yDAAyD;AACzD,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;AAEzD,8DAA8D;AAC9D,eAAO,MAAM,qBAAqB,EAAE,WAAW,CAAC,eAAe,CAS7D,CAAC;AAMH;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,eAAe,GAExB,wBAAwB,GACxB,oBAAoB,GACpB,qBAAqB,GACrB,uBAAuB,GACvB,gBAAgB,GAChB,cAAc,GACd,aAAa,GACb,cAAc,CAmBjB;AAMD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,eAAe,GAAG,OAAO,CAAC;IAE9C;;;;;OAKG;IACH,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACjD;AAMD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,YAAY,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;KAAE,GAAG;QACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;KACpC,CAAC;CACH;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,0BAA0B,EACtC,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE,GAC3C,OAAO,CAAC,MAAM,CAAC,CAwBjB"}
|
|
@@ -12,13 +12,14 @@
|
|
|
12
12
|
* construction). If the descriptor does not advertise the
|
|
13
13
|
* Capability, throws `UnsupportedCapabilityError(provider, ...)`
|
|
14
14
|
* BEFORE `descriptor.create()` is called. No credentials, no media,
|
|
15
|
-
* no transport, no cache
|
|
15
|
+
* no transport, no cache are observed.
|
|
16
16
|
* 3. Calls `descriptor.create(context)` and defensively double-checks
|
|
17
17
|
* the Adapter's `supports(operation)`. If the Adapter says no,
|
|
18
18
|
* throws the same error before `invoke` runs.
|
|
19
19
|
* 4. Calls `adapter.vision.invoke(request)` and returns the normalized
|
|
20
|
-
* text. Vision never uses the response cache
|
|
21
|
-
*
|
|
20
|
+
* text. Vision never uses the response cache. Cross-Provider
|
|
21
|
+
* fallback is owned by the executor (executeWithFallback), not by
|
|
22
|
+
* this module.
|
|
22
23
|
*
|
|
23
24
|
* This module imports no Provider transport and no Provider Adapter.
|
|
24
25
|
* The error class import below is from `lib/errors.ts` (a shared error
|
|
@@ -104,8 +105,9 @@ export async function invokeVision(descriptor, request, context) {
|
|
|
104
105
|
if (!vision || !vision.supports(request.operation)) {
|
|
105
106
|
throw new UnsupportedCapabilityError(descriptor.id, capabilityId);
|
|
106
107
|
}
|
|
107
|
-
// Step 4: invoke. No cache lookup
|
|
108
|
-
//
|
|
108
|
+
// Step 4: invoke. No cache lookup. Retries live above this call in
|
|
109
|
+
// `executeProviderOperation("vision", ...)`. Cross-Provider fallback
|
|
110
|
+
// is owned by the executor (executeWithFallback), not by this module.
|
|
109
111
|
return vision.invoke(request);
|
|
110
112
|
}
|
|
111
113
|
//# sourceMappingURL=vision.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vision.js","sourceRoot":"","sources":["../../src/capabilities/vision.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"vision.js","sourceRoot":"","sources":["../../src/capabilities/vision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAgE9D,8DAA8D;AAC9D,MAAM,CAAC,MAAM,qBAAqB,GAAiC,IAAI,GAAG,CAAC;IACzE,iBAAiB;IACjB,aAAa;IACb,cAAc;IACd,gBAAgB;IAChB,SAAS;IACT,OAAO;IACP,MAAM;IACN,OAAO;CACR,CAAC,CAAC;AAEH,8EAA8E;AAC9E,0DAA0D;AAC1D,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CACzC,SAA0B;IAU1B,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,iBAAiB;YACpB,OAAO,wBAAwB,CAAC;QAClC,KAAK,aAAa;YAChB,OAAO,oBAAoB,CAAC;QAC9B,KAAK,cAAc;YACjB,OAAO,qBAAqB,CAAC;QAC/B,KAAK,gBAAgB;YACnB,OAAO,uBAAuB,CAAC;QACjC,KAAK,SAAS;YACZ,OAAO,gBAAgB,CAAC;QAC1B,KAAK,OAAO;YACV,OAAO,cAAc,CAAC;QACxB,KAAK,MAAM;YACT,OAAO,aAAa,CAAC;QACvB,KAAK,OAAO;YACV,OAAO,cAAc,CAAC;IAC1B,CAAC;AACH,CAAC;AAyDD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,UAAsC,EACtC,OAAsB,EACtB,OAA4C;IAE5C,MAAM,YAAY,GAAG,2BAA2B,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEpE,mEAAmE;IACnE,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,0BAA0B,CAAC,UAAU,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IACpE,CAAC;IAED,iEAAiE;IACjE,iEAAiE;IACjE,6CAA6C;IAC7C,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE3C,qEAAqE;IACrE,0DAA0D;IAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,0BAA0B,CAAC,UAAU,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IACpE,CAAC;IAED,mEAAmE;IACnE,qEAAqE;IACrE,sEAAsE;IACtE,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAChC,CAAC"}
|
package/dist/commands/code.d.ts
CHANGED
|
@@ -11,10 +11,18 @@ import type { CommandContext, CommandResult } from "../command-invocation.js";
|
|
|
11
11
|
export interface CodeRunOptions {
|
|
12
12
|
timeout?: number;
|
|
13
13
|
includeLogs?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* T2b — Credential view: resolved env (injected env + file keys)
|
|
16
|
+
* forwarded to the Code Mode client so a wizard-written key
|
|
17
|
+
* authorises transport without ambient state.
|
|
18
|
+
*/
|
|
19
|
+
env?: NodeJS.ProcessEnv;
|
|
14
20
|
}
|
|
15
21
|
export declare function runCodeFile(filePath: string, options?: CodeRunOptions, context?: CommandContext): Promise<CommandResult>;
|
|
16
22
|
export declare function evalCode(code: string, options?: CodeRunOptions, context?: CommandContext): Promise<CommandResult>;
|
|
17
|
-
export declare function printInterfaces(
|
|
23
|
+
export declare function printInterfaces(options?: {
|
|
24
|
+
env?: NodeJS.ProcessEnv;
|
|
25
|
+
}, context?: CommandContext): Promise<CommandResult>;
|
|
18
26
|
export declare function printPromptTemplate(context?: CommandContext): CommandResult;
|
|
19
27
|
export declare const CODE_HELP: string;
|
|
20
28
|
//# sourceMappingURL=code.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../src/commands/code.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9E,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../src/commands/code.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9E,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACzB;AAED,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,cAAmB,EAC5B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,aAAa,CAAC,CAWxB;AAED,wBAAsB,QAAQ,CAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,cAAmB,EAC5B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,aAAa,CAAC,CASxB;AAED,wBAAsB,eAAe,CACnC,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CAAO,EACzC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,aAAa,CAAC,CAQxB;AAED,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,aAAa,CAE3E;AAGD,eAAO,MAAM,SAAS,QAkBd,CAAC"}
|
package/dist/commands/code.js
CHANGED
|
@@ -11,7 +11,7 @@ import * as fs from "node:fs/promises";
|
|
|
11
11
|
import { ZaiCodeModeClient } from "../lib/code-mode.js";
|
|
12
12
|
export async function runCodeFile(filePath, options = {}, context) {
|
|
13
13
|
const code = await fs.readFile(filePath, "utf8");
|
|
14
|
-
const codeClient = new ZaiCodeModeClient();
|
|
14
|
+
const codeClient = new ZaiCodeModeClient({ env: options.env });
|
|
15
15
|
try {
|
|
16
16
|
const result = await codeClient.callToolChain(code, options.timeout);
|
|
17
17
|
const data = options.includeLogs ? result : result.result;
|
|
@@ -22,7 +22,7 @@ export async function runCodeFile(filePath, options = {}, context) {
|
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
export async function evalCode(code, options = {}, context) {
|
|
25
|
-
const codeClient = new ZaiCodeModeClient();
|
|
25
|
+
const codeClient = new ZaiCodeModeClient({ env: options.env });
|
|
26
26
|
try {
|
|
27
27
|
const result = await codeClient.callToolChain(code, options.timeout);
|
|
28
28
|
const data = options.includeLogs ? result : result.result;
|
|
@@ -32,8 +32,8 @@ export async function evalCode(code, options = {}, context) {
|
|
|
32
32
|
await codeClient.close().catch(() => { });
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
|
-
export async function printInterfaces(context) {
|
|
36
|
-
const codeClient = new ZaiCodeModeClient();
|
|
35
|
+
export async function printInterfaces(options = {}, context) {
|
|
36
|
+
const codeClient = new ZaiCodeModeClient({ env: options.env });
|
|
37
37
|
try {
|
|
38
38
|
const interfaces = await codeClient.getAllInterfaces();
|
|
39
39
|
return { kind: "data", data: interfaces };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code.js","sourceRoot":"","sources":["../../src/commands/code.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"code.js","sourceRoot":"","sources":["../../src/commands/code.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAcxD,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,QAAgB,EAChB,OAAO,GAAmB,EAAE,EAC5B,OAAwB;IAExB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAEjD,MAAM,UAAU,GAAG,IAAI,iBAAiB,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAChC,CAAC;YAAS,CAAC;QACT,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,IAAY,EACZ,OAAO,GAAmB,EAAE,EAC5B,OAAwB;IAExB,MAAM,UAAU,GAAG,IAAI,iBAAiB,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAChC,CAAC;YAAS,CAAC;QACT,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAAO,GAAgC,EAAE,EACzC,OAAwB;IAExB,MAAM,UAAU,GAAG,IAAI,iBAAiB,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/D,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,gBAAgB,EAAE,CAAC;QACvD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAC5C,CAAC;YAAS,CAAC;QACT,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAwB;IAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,EAAE,CAAC;AACvE,CAAC;AAED,YAAY;AACZ,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;CAkBxB,CAAC,IAAI,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crawl.d.ts","sourceRoot":"","sources":["../../src/commands/crawl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,KAAK,EACV,eAAe,EAIhB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AASjE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;CAC3C;AA0FD,wBAAsB,KAAK,CACzB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,YAAY,YAAK,EAC1B,IAAI,EAAE,wBAAwB,EAC9B,QAAQ,CAAC,EAAE,cAAc,GACxB,OAAO,CAAC,aAAa,CAAC,CAwBxB;AAQD,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"crawl.d.ts","sourceRoot":"","sources":["../../src/commands/crawl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,KAAK,EACV,eAAe,EAIhB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AASjE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;CAC3C;AA0FD,wBAAsB,KAAK,CACzB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,YAAY,YAAK,EAC1B,IAAI,EAAE,wBAAwB,EAC9B,QAAQ,CAAC,EAAE,cAAc,GACxB,OAAO,CAAC,aAAa,CAAC,CAwBxB;AAQD,eAAO,MAAM,UAAU,QAkEf,CAAC"}
|
package/dist/commands/crawl.js
CHANGED
|
@@ -121,9 +121,20 @@ depth and breadth. Returns a structured result with an array of pages.
|
|
|
121
121
|
|
|
122
122
|
Provider selection (precedence: --provider, then SCOUTLINE_PROVIDER,
|
|
123
123
|
then the configured default):
|
|
124
|
-
- Tavily
|
|
125
|
-
- Z.AI and MiniMax do NOT advertise crawl.
|
|
126
|
-
|
|
124
|
+
- Tavily and Firecrawl advertise the crawl Capability and supply the Adapter.
|
|
125
|
+
- Z.AI and MiniMax do NOT advertise crawl. By default (0.11.0+) Provider
|
|
126
|
+
fallback emits a stderr notice and silently reroutes to the next
|
|
127
|
+
eligible configured supplier (Tavily or Firecrawl). Under
|
|
128
|
+
--no-fallback (or SCOUTLINE_NO_FALLBACK=1) the preflight surfaces
|
|
129
|
+
UNSUPPORTED_CAPABILITY for the selected non-supplier.
|
|
130
|
+
|
|
131
|
+
> Accepted async risk: for \`crawl\`, a runtime failure on the effective
|
|
132
|
+
> Provider may fall back to another Provider even if the failed Provider
|
|
133
|
+
> had already accepted or charged a job (Firecrawl/Tavily do not offer
|
|
134
|
+
> idempotency or refunds). Pass --no-fallback for cost-sensitive
|
|
135
|
+
> workflows. See
|
|
136
|
+
> https://github.com/vikasagarwal101/scoutline/blob/main/docs/adr/0002-provider-fallback.md
|
|
137
|
+
> (the ADR is not packaged with the npm tarball; follow the link).
|
|
127
138
|
|
|
128
139
|
Options:
|
|
129
140
|
--depth <n> Crawl depth, 1-5 (default: 1)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crawl.js","sourceRoot":"","sources":["../../src/commands/crawl.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"crawl.js","sourceRoot":"","sources":["../../src/commands/crawl.ts"],"names":[],"mappings":"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"}
|