@tiangong-ai/cli 0.0.30 → 0.0.31
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/AGENTS.md +1 -1
- package/README.md +36 -14
- package/dist/edge-search.js +57 -16
- package/dist/edge-search.js.map +1 -1
- package/dist/http.js +17 -1
- package/dist/http.js.map +1 -1
- package/dist/research/orchestration.js +9 -1
- package/dist/research/orchestration.js.map +1 -1
- package/dist/research/workspace/broker.js +60 -15
- package/dist/research/workspace/broker.js.map +1 -1
- package/dist/research/workspace/external-skills.d.ts +95 -0
- package/dist/research/workspace/external-skills.js +79 -25
- package/dist/research/workspace/external-skills.js.map +1 -1
- package/dist/research/workspace/preflight.d.ts +9 -0
- package/dist/research/workspace/preflight.js +44 -2
- package/dist/research/workspace/preflight.js.map +1 -1
- package/dist/research/workspace/projects.js +16 -0
- package/dist/research/workspace/projects.js.map +1 -1
- package/dist/research/workspace/setup-catalog.d.ts +20 -2
- package/dist/research/workspace/setup-catalog.js +202 -5
- package/dist/research/workspace/setup-catalog.js.map +1 -1
- package/dist/research/workspace/setup.d.ts +7 -1
- package/dist/research/workspace/setup.js +166 -45
- package/dist/research/workspace/setup.js.map +1 -1
- package/dist/research/workspace/types.d.ts +2 -0
- package/package.json +2 -1
package/AGENTS.md
CHANGED
package/README.md
CHANGED
|
@@ -12,8 +12,8 @@ checkPaths:
|
|
|
12
12
|
- package.json
|
|
13
13
|
- bin/**
|
|
14
14
|
- src/**
|
|
15
|
-
lastReviewedAt: 2026-08-
|
|
16
|
-
lastReviewedCommit:
|
|
15
|
+
lastReviewedAt: 2026-08-09
|
|
16
|
+
lastReviewedCommit: 14c804e61b3768489253533ee754b6f7e75460ea
|
|
17
17
|
---
|
|
18
18
|
|
|
19
19
|
# Tiangong AI CLI
|
|
@@ -252,7 +252,12 @@ hash mismatch remains fail-closed before `npx skills add`; its structured error
|
|
|
252
252
|
reports only the Skill/source IDs, hash algorithm, and expected/observed hashes.
|
|
253
253
|
It never treats file existence as installation success or silently rewrites an
|
|
254
254
|
immutable plan. Plans created by an earlier CLI release are rejected at the
|
|
255
|
-
execution boundary; create and review a new plan with the active release.
|
|
255
|
+
execution boundary; create and review a new plan with the active release. The
|
|
256
|
+
orchestrator additionally declares a `workspace-lock` runtime contract: every
|
|
257
|
+
workspace command goes through its bundled resolver, which accepts only the
|
|
258
|
+
regular non-symlink `runtime-lock.json` exact stable CLI version. Setup and
|
|
259
|
+
release CI reject a missing resolver or any stale exact CLI version in the
|
|
260
|
+
orchestrator's `SKILL.md` or `references/*.md`.
|
|
256
261
|
|
|
257
262
|
The default `internet-research` profile selects Brave Web Search and News
|
|
258
263
|
Search. `internet-research-with-context` additionally selects the
|
|
@@ -276,9 +281,10 @@ op read 'op://Research/Brave/api-key' | \
|
|
|
276
281
|
|
|
277
282
|
The pinned Brave checkout is verified at `skills/<skill-name>` before install.
|
|
278
283
|
An explicitly reviewed replacement plan reconciles the complete setup-managed
|
|
279
|
-
capability set and both owner-only credential stores: deselected Brave
|
|
280
|
-
declarations and lock records are removed, custom capability
|
|
281
|
-
preserved, and installed Skill directories are never deleted
|
|
284
|
+
capability set and both owner-only credential stores: deselected Brave, SCI,
|
|
285
|
+
report, or patent declarations and lock records are removed, custom capability
|
|
286
|
+
declarations are preserved, and installed Skill directories are never deleted
|
|
287
|
+
implicitly.
|
|
282
288
|
Provider-dependent context/media choices never fall back silently; select the
|
|
283
289
|
baseline in a replacement plan when that is the intended operator decision.
|
|
284
290
|
|
|
@@ -290,9 +296,11 @@ managers may preload one line per logical ID with
|
|
|
290
296
|
`--credential-stdin <id[,id...]>`; the remaining Wizard questions use the
|
|
291
297
|
controlling terminal.
|
|
292
298
|
|
|
293
|
-
Optional setup entries have explicit roles. Tiangong SCI
|
|
294
|
-
owner-whitelisted POST evidence
|
|
295
|
-
|
|
299
|
+
Optional setup entries have explicit roles. Tiangong SCI, report, and patent
|
|
300
|
+
search are distinct owner-whitelisted POST evidence capabilities with separate
|
|
301
|
+
logical credentials and discovery scopes; one cannot substitute for another.
|
|
302
|
+
Document decomposition is an input preprocessor; academic paper download is an
|
|
303
|
+
acquisition adapter; document and
|
|
296
304
|
presentation Skills are post-closure authoring only. Run selected preprocessors
|
|
297
305
|
and acquisition adapters with `research setup companion run`, then admit their
|
|
298
306
|
exact hash-bound output separately. Automatic paper OA exhaustion returns an
|
|
@@ -305,10 +313,15 @@ Every leaf command accepts `--help` before workspace resolution, so operators
|
|
|
305
313
|
can inspect `capability doctor`, `project preflight`, `project init`, and `run`
|
|
306
314
|
syntax safely from an empty or unrelated directory.
|
|
307
315
|
|
|
308
|
-
The requirements object declares `dimensions`, `sourceTypes`,
|
|
316
|
+
The requirements object declares `dimensions`, `sourceTypes`, optional
|
|
317
|
+
`requiredCapabilityIds` and `requiredDiscoveryScopes`, `minSources`,
|
|
309
318
|
`minFullTextSources`, `minDatedSources`, and optional inclusive
|
|
310
319
|
`publicationDateFrom` / `publicationDateTo` boundaries (`YYYY-MM-DD` or
|
|
311
|
-
`null`).
|
|
320
|
+
`null`). Explicit capability/scope requirements are exact: wildcard web or SCI
|
|
321
|
+
coverage cannot satisfy a required report database. Preflight returns both
|
|
322
|
+
stable string gaps and structured `coverageGaps` with the affected dimensions,
|
|
323
|
+
source types, alternative-coverage decision, and minimum owner action. After
|
|
324
|
+
discovery, a mechanical coverage gate verifies the declared
|
|
312
325
|
source, full-text, publication-date, and dimension summary before analysis.
|
|
313
326
|
For large local sources, pass an immutable `--input-plan` to both preflight and
|
|
314
327
|
project initialization. Each plan entry may expose either a separate
|
|
@@ -488,8 +501,8 @@ must be exact versions; local references must equal
|
|
|
488
501
|
`sha256:<expectedTreeSha256>`. Every source type must match the installed whole
|
|
489
502
|
tree before a lock can be written. Skill trees reject symlinks and excessive
|
|
490
503
|
file counts/sizes. Project-owned Tiangong Skills are rejected through this
|
|
491
|
-
generic import path; the setup catalog has
|
|
492
|
-
|
|
504
|
+
generic import path; the setup catalog has separate reviewed first-party
|
|
505
|
+
adapters for Tiangong SCI, report, and patent search. Configure/import refuses to rewrite the lock if any
|
|
493
506
|
existing capability has drifted; restore it or explicitly update its source
|
|
494
507
|
identity and expected hash first.
|
|
495
508
|
|
|
@@ -542,6 +555,13 @@ content-type failures stop explicitly. It retains only a bounded sanitized
|
|
|
542
555
|
provider code/detail and safe request ID, with an actionable baseline-or-
|
|
543
556
|
subscription decision for `OPTION_NOT_IN_PLAN`. An explicitly requested agent
|
|
544
557
|
or capability smoke failure makes setup readiness `BLOCKED`, never a warning.
|
|
558
|
+
Credential diagnostics distinguish standalone ambient absence,
|
|
559
|
+
broker-store absence, policy-rejected injection, and provider 401/403. Every
|
|
560
|
+
such diagnostic identifies the execution mode, credential scope, whether a
|
|
561
|
+
network request occurred, and a minimum action without returning credentials
|
|
562
|
+
or raw authentication responses. The optional Semantic Scholar live check also
|
|
563
|
+
performs only one bounded 429 retry; a second 429 remains an explicit setup
|
|
564
|
+
blocker and never triggers a standalone fallback.
|
|
545
565
|
The broker preserves a sanitized non-2xx excerpt, safe request ID, and
|
|
546
566
|
`Retry-After`. It performs at most one inline 429 retry when the declared or
|
|
547
567
|
default delay is at most five seconds; longer throttles return an actionable
|
|
@@ -654,6 +674,7 @@ transitions.
|
|
|
654
674
|
npm run lint
|
|
655
675
|
npm test
|
|
656
676
|
npm run test:coverage
|
|
677
|
+
npm run audit:research-setup-pins
|
|
657
678
|
docpact validate-config --root . --strict
|
|
658
679
|
```
|
|
659
680
|
|
|
@@ -662,4 +683,5 @@ docpact validate-config --root . --strict
|
|
|
662
683
|
Publishing is handled by GitHub Actions in `.github/workflows/publish.yml`.
|
|
663
684
|
Push a `v*` tag that matches `package.json` version. The workflow publishes
|
|
664
685
|
`@tiangong-ai/cli` to npm through npm Trusted Publishing after lint, tests,
|
|
665
|
-
coverage,
|
|
686
|
+
coverage, immutable remote Skill pin/runtime-contract audit, version
|
|
687
|
+
availability, and a package dry run pass.
|
package/dist/edge-search.js
CHANGED
|
@@ -49,16 +49,45 @@ export async function runEdgeSearch(input) {
|
|
|
49
49
|
}
|
|
50
50
|
const responses = [];
|
|
51
51
|
for (const plan of plans) {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
52
|
+
try {
|
|
53
|
+
responses.push({
|
|
54
|
+
source: plan.source,
|
|
55
|
+
response: await postJson({
|
|
56
|
+
url: plan.request.url,
|
|
57
|
+
headers: plan.request.headers,
|
|
58
|
+
body: plan.request.body,
|
|
59
|
+
timeoutMs: input.timeoutMs,
|
|
60
|
+
fetchImpl: input.fetchImpl ?? fetch,
|
|
61
|
+
}),
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
if (error instanceof CliError && error.code === "REMOTE_REQUEST_FAILED") {
|
|
66
|
+
const status = error.details && typeof error.details === "object" && "status" in error.details
|
|
67
|
+
? Number(error.details.status)
|
|
68
|
+
: null;
|
|
69
|
+
const authenticationFailed = status === 401 || status === 403;
|
|
70
|
+
throw new CliError(authenticationFailed
|
|
71
|
+
? `The ${plan.source} provider rejected the standalone credential.`
|
|
72
|
+
: `The ${plan.source} standalone provider request failed.`, {
|
|
73
|
+
code: authenticationFailed
|
|
74
|
+
? "PROVIDER_AUTHENTICATION_FAILED"
|
|
75
|
+
: "STANDALONE_PROVIDER_REQUEST_FAILED",
|
|
76
|
+
exitCode: 1,
|
|
77
|
+
details: {
|
|
78
|
+
source: plan.source,
|
|
79
|
+
executionMode: "standalone",
|
|
80
|
+
credentialScope: "ambient-or-explicit-owner-env",
|
|
81
|
+
networkAttempted: true,
|
|
82
|
+
...(status === null ? {} : { status }),
|
|
83
|
+
minimumAction: authenticationFailed
|
|
84
|
+
? "Verify the owner-provided standalone credential and provider entitlement, then retry the isolated query."
|
|
85
|
+
: "Verify the exact endpoint, provider availability, and quota before retrying the isolated query.",
|
|
86
|
+
},
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
throw error;
|
|
90
|
+
}
|
|
62
91
|
}
|
|
63
92
|
return { dryRun: false, responses };
|
|
64
93
|
}
|
|
@@ -78,17 +107,29 @@ function edgeSearchRequestPlan(input) {
|
|
|
78
107
|
}
|
|
79
108
|
function edgeSearchHeaders(source, masked, missingCredentialHelp) {
|
|
80
109
|
if (source.authStrategy === "apiKey" && !source.apiKey) {
|
|
81
|
-
throw new CliError(`
|
|
82
|
-
code: "
|
|
110
|
+
throw new CliError(`Standalone ambient credential not found for ${source.source} search.`, {
|
|
111
|
+
code: "STANDALONE_AMBIENT_CREDENTIAL_MISSING",
|
|
83
112
|
exitCode: 2,
|
|
84
|
-
details: {
|
|
113
|
+
details: {
|
|
114
|
+
source: source.source,
|
|
115
|
+
executionMode: "standalone",
|
|
116
|
+
credentialScope: "ambient-or-explicit-owner-env",
|
|
117
|
+
networkAttempted: false,
|
|
118
|
+
minimumAction: missingCredentialHelp,
|
|
119
|
+
},
|
|
85
120
|
});
|
|
86
121
|
}
|
|
87
122
|
if (source.authStrategy === "bearerOrApiKey" && !source.apiKey && !source.bearerToken) {
|
|
88
|
-
throw new CliError(`
|
|
89
|
-
code: "
|
|
123
|
+
throw new CliError(`Standalone ambient credential not found for ${source.source} search.`, {
|
|
124
|
+
code: "STANDALONE_AMBIENT_CREDENTIAL_MISSING",
|
|
90
125
|
exitCode: 2,
|
|
91
|
-
details: {
|
|
126
|
+
details: {
|
|
127
|
+
source: source.source,
|
|
128
|
+
executionMode: "standalone",
|
|
129
|
+
credentialScope: "ambient-or-explicit-owner-env",
|
|
130
|
+
networkAttempted: false,
|
|
131
|
+
minimumAction: missingCredentialHelp,
|
|
132
|
+
},
|
|
92
133
|
});
|
|
93
134
|
}
|
|
94
135
|
const headers = {
|
package/dist/edge-search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edge-search.js","sourceRoot":"","sources":["../src/edge-search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAkB,MAAM,WAAW,CAAC;AAErD,MAAM,CAAC,MAAM,gCAAgC,GAC3C,uDAAuD,CAAC;AAmD1D,SAAS,gBAAgB,CAAC,UAAkB;IAC1C,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC1D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,QAAQ,CAAC,yDAAyD,EAAE;YAC5E,IAAI,EAAE,kCAAkC;YACxC,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,UAAkB;IAC7D,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAEhD,IAAI,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QACzC,OAAO,UAAU,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACpC,OAAO,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3C,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,IAAI,QAAQ,CAChB,6JAA6J,EAC7J;QACE,IAAI,EAAE,kCAAkC;QACxC,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,UAAU;KACpB,CACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,UAAkB;IAC1D,OAAO,GAAG,4BAA4B,CAAC,UAAU,CAAC,UAAU,CAAC;AAC/D,CAAC;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,UAAkB,EAAU,EAAE,CAC3E,GAAG,4BAA4B,CAAC,UAAU,CAAC,eAAe,CAAC;AAE7D,MAAM,UAAU,eAAe,CAAC,UAAkB,EAAE,QAAgB;IAClE,OAAO,GAAG,8BAA8B,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC;AAC1F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAA0B,KAQ5D;IACC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACzC,qBAAqB,CAAC;QACpB,MAAM;QACN,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;KACnD,CAAC,CACH,CAAC;IAEF,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC3C,CAAC;IAED,MAAM,SAAS,GAAwC,EAAE,CAAC;IAC1D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,SAAS,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"edge-search.js","sourceRoot":"","sources":["../src/edge-search.ts"],"names":[],"mappings":"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"}
|
package/dist/http.js
CHANGED
|
@@ -43,7 +43,11 @@ async function parseResponse(response, url) {
|
|
|
43
43
|
throw new CliError(`HTTP ${response.status} returned from ${url}`, {
|
|
44
44
|
code: "REMOTE_REQUEST_FAILED",
|
|
45
45
|
exitCode: 1,
|
|
46
|
-
details:
|
|
46
|
+
details: {
|
|
47
|
+
status: response.status,
|
|
48
|
+
retryAfterSeconds: responseRetryAfterSeconds(response.headers),
|
|
49
|
+
networkAttempted: true,
|
|
50
|
+
},
|
|
47
51
|
});
|
|
48
52
|
}
|
|
49
53
|
if (contentType.includes("application/json")) {
|
|
@@ -60,6 +64,18 @@ async function parseResponse(response, url) {
|
|
|
60
64
|
}
|
|
61
65
|
return rawText;
|
|
62
66
|
}
|
|
67
|
+
function responseRetryAfterSeconds(headers) {
|
|
68
|
+
const value = headers.get("retry-after");
|
|
69
|
+
if (!value)
|
|
70
|
+
return null;
|
|
71
|
+
const seconds = Number(value);
|
|
72
|
+
if (Number.isFinite(seconds) && seconds >= 0)
|
|
73
|
+
return Math.ceil(seconds);
|
|
74
|
+
const timestamp = Date.parse(value);
|
|
75
|
+
if (!Number.isFinite(timestamp))
|
|
76
|
+
return null;
|
|
77
|
+
return Math.max(0, Math.ceil((timestamp - Date.now()) / 1_000));
|
|
78
|
+
}
|
|
63
79
|
export async function postJson(options) {
|
|
64
80
|
const signal = AbortSignal.timeout(options.timeoutMs);
|
|
65
81
|
const response = await options.fetchImpl(options.url, {
|
package/dist/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -455,6 +455,10 @@ async function readEvidenceRequirements(path) {
|
|
|
455
455
|
Array.isArray(value) ||
|
|
456
456
|
!Array.isArray(value.dimensions) ||
|
|
457
457
|
!Array.isArray(value.sourceTypes) ||
|
|
458
|
+
(value.requiredCapabilityIds !== undefined &&
|
|
459
|
+
!Array.isArray(value.requiredCapabilityIds)) ||
|
|
460
|
+
(value.requiredDiscoveryScopes !== undefined &&
|
|
461
|
+
!Array.isArray(value.requiredDiscoveryScopes)) ||
|
|
458
462
|
typeof value.minSources !== "number" ||
|
|
459
463
|
typeof value.minFullTextSources !== "number" ||
|
|
460
464
|
typeof value.minDatedSources !== "number" ||
|
|
@@ -467,7 +471,11 @@ async function readEvidenceRequirements(path) {
|
|
|
467
471
|
exitCode: 2,
|
|
468
472
|
});
|
|
469
473
|
}
|
|
470
|
-
return normalizeEvidenceRequirements(
|
|
474
|
+
return normalizeEvidenceRequirements({
|
|
475
|
+
...value,
|
|
476
|
+
requiredCapabilityIds: value.requiredCapabilityIds ?? [],
|
|
477
|
+
requiredDiscoveryScopes: value.requiredDiscoveryScopes ?? [],
|
|
478
|
+
});
|
|
471
479
|
}
|
|
472
480
|
function researchMode(value) {
|
|
473
481
|
if (!value || value === "smoke-test")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestration.js","sourceRoot":"","sources":["../../src/research/orchestration.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"orchestration.js","sourceRoot":"","sources":["../../src/research/orchestration.ts"],"names":[],"mappings":"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"}
|
|
@@ -239,32 +239,46 @@ async function fetchCandidateSource(input) {
|
|
|
239
239
|
throw new Error('cache_mode must be "prefer" or "bypass"');
|
|
240
240
|
}
|
|
241
241
|
const capability = input.capabilities.find((candidate) => candidate.id === capabilityId);
|
|
242
|
-
if (!capability)
|
|
243
|
-
throw
|
|
244
|
-
|
|
245
|
-
if (!capability.http)
|
|
246
|
-
throw
|
|
247
|
-
|
|
248
|
-
|
|
242
|
+
if (!capability) {
|
|
243
|
+
throw brokerDiagnosticError("CAPABILITY_NOT_DECLARED", "The requested evidence capability is not present in the locked manifest.", false, "Have the workspace owner select or import the exact reviewed capability, configure it, rebuild the capability lock, and pass doctor before retrying.", { capabilityId });
|
|
244
|
+
}
|
|
245
|
+
if (!capability.http) {
|
|
246
|
+
throw brokerDiagnosticError("CAPABILITY_NOT_DECLARED", "The requested capability has no locked broker HTTP policy.", false, "Replace the capability declaration with a reviewed brokered-network capability and rebuild the lock.", { capabilityId });
|
|
247
|
+
}
|
|
248
|
+
let target;
|
|
249
|
+
let encodedRequestBody;
|
|
250
|
+
try {
|
|
251
|
+
target = validateHttpsUrl(rawUrl);
|
|
252
|
+
assertEndpointScope(target, capability.http.endpoint);
|
|
253
|
+
encodedRequestBody = validateBrokerRequestBody(capability.http.method, requestBody, capability.http.maxRequestBytes);
|
|
254
|
+
}
|
|
255
|
+
catch {
|
|
256
|
+
throw brokerDiagnosticError("BROKER_CREDENTIAL_INJECTION_REJECTED", "The broker rejected the request before credential injection because it does not match the locked endpoint or method policy.", false, "Use only the exact locked capability ID, endpoint, HTTP method, and non-secret request shape.", { capabilityId });
|
|
257
|
+
}
|
|
249
258
|
const credential = credentialId
|
|
250
259
|
? capability.credentials.find((candidate) => candidate.id === credentialId)
|
|
251
260
|
: capability.credentials.length === 1
|
|
252
261
|
? capability.credentials[0]
|
|
253
262
|
: undefined;
|
|
254
263
|
if (credentialId && !credential) {
|
|
255
|
-
throw
|
|
264
|
+
throw brokerDiagnosticError("BROKER_CREDENTIAL_INJECTION_REJECTED", "The requested logical credential is not declared by the locked capability.", false, "Use the logical credential ID declared by the capability manifest; never pass credential values through tool arguments.", { capabilityId, credentialId });
|
|
256
265
|
}
|
|
257
266
|
if (!credentialId && capability.credentials.length > 1) {
|
|
258
|
-
throw
|
|
267
|
+
throw brokerDiagnosticError("BROKER_CREDENTIAL_INJECTION_REJECTED", "The capability declares multiple logical credentials and requires an explicit credential ID.", false, "Select one logical credential ID from the locked capability declaration without including its value.", { capabilityId });
|
|
259
268
|
}
|
|
260
269
|
const effectiveCredentialId = credential?.id ?? null;
|
|
261
270
|
const cacheMode = requestedCacheMode ?? (credential ? "bypass" : "prefer");
|
|
262
271
|
if (credential && cacheMode === "prefer") {
|
|
263
|
-
throw
|
|
272
|
+
throw brokerDiagnosticError("BROKER_CREDENTIAL_INJECTION_REJECTED", "Credentialed broker requests cannot use the shared response cache.", false, "Retry the locked capability request with cache_mode=bypass.", { capabilityId, credentialId: credential.id });
|
|
273
|
+
}
|
|
274
|
+
try {
|
|
275
|
+
assertAllowedHost(target, capability.allowedHosts, "capability");
|
|
276
|
+
if (credential)
|
|
277
|
+
assertAllowedHost(target, credential.allowedHosts, "credential");
|
|
278
|
+
}
|
|
279
|
+
catch {
|
|
280
|
+
throw brokerDiagnosticError("BROKER_CREDENTIAL_INJECTION_REJECTED", "The broker refused credential injection because the target host is outside the locked policy.", false, "Use the exact credential-free HTTPS endpoint and host declared by the locked capability.", { capabilityId, credentialId: credential?.id ?? null });
|
|
264
281
|
}
|
|
265
|
-
assertAllowedHost(target, capability.allowedHosts, "capability");
|
|
266
|
-
if (credential)
|
|
267
|
-
assertAllowedHost(target, credential.allowedHosts, "credential");
|
|
268
282
|
const attemptId = randomUUID();
|
|
269
283
|
const maxItems = Math.min(requestedMaxItems ?? capability.http.maxItems, capability.http.maxItems, input.workspaceMaxItems);
|
|
270
284
|
const cacheKeySha256 = sha256Text(canonicalJson({
|
|
@@ -318,8 +332,9 @@ async function fetchCandidateSource(input) {
|
|
|
318
332
|
headers.set("Content-Type", "application/json");
|
|
319
333
|
if (credential) {
|
|
320
334
|
const value = input.credentialMap.get(credential.id);
|
|
321
|
-
if (!value)
|
|
322
|
-
throw
|
|
335
|
+
if (!value) {
|
|
336
|
+
throw brokerDiagnosticError("BROKER_CREDENTIAL_NOT_CONFIGURED", "The locked capability's logical credential is not configured in the broker store.", false, "Use research setup credential set with hidden input, stdin, or an owner environment variable, then rerun capability doctor.", { capabilityId, credentialId: credential.id });
|
|
337
|
+
}
|
|
323
338
|
headers.set(credential.headerName, `${credential.prefix}${value}`);
|
|
324
339
|
}
|
|
325
340
|
const responseLimit = Math.min(capability.http.maxResponseBytes, input.workspaceResponseBytes);
|
|
@@ -366,10 +381,24 @@ async function fetchCandidateSource(input) {
|
|
|
366
381
|
if (!response.ok) {
|
|
367
382
|
const retryAfterSeconds = parseRetryAfter(response.headers.get("retry-after"));
|
|
368
383
|
const excerpt = safeResponseExcerpt(bytes, contentType, [...input.credentialMap.values()]);
|
|
384
|
+
if (response.status === 401 || response.status === 403) {
|
|
385
|
+
throw brokerDiagnosticError("PROVIDER_AUTHENTICATION_FAILED", "The provider rejected the broker-injected logical credential or entitlement.", true, "Verify the configured logical credential and provider entitlement, then rerun capability doctor before retrying research.", {
|
|
386
|
+
capabilityId,
|
|
387
|
+
credentialId: effectiveCredentialId,
|
|
388
|
+
status: response.status,
|
|
389
|
+
requestId: safeResponseId(response.headers),
|
|
390
|
+
});
|
|
391
|
+
}
|
|
369
392
|
throw new CliError(`HTTPS source returned status ${response.status}.`, {
|
|
370
393
|
code: "RESEARCH_BROKER_HTTP_ERROR",
|
|
371
394
|
exitCode: 3,
|
|
372
395
|
details: {
|
|
396
|
+
executionMode: "broker",
|
|
397
|
+
credentialScope: "broker",
|
|
398
|
+
networkAttempted: true,
|
|
399
|
+
minimumAction: response.status === 429
|
|
400
|
+
? "Honor Retry-After or the provider quota reset, then retry through the same locked broker capability."
|
|
401
|
+
: "Resolve the provider response or capability contract, then retry through the same locked broker capability.",
|
|
373
402
|
status: response.status,
|
|
374
403
|
retryAfterSeconds,
|
|
375
404
|
responseExcerpt: excerpt,
|
|
@@ -786,7 +815,23 @@ function parseRetryAfter(value) {
|
|
|
786
815
|
const date = Date.parse(value);
|
|
787
816
|
return Number.isFinite(date) ? Math.max(0, Math.ceil((date - Date.now()) / 1000)) : null;
|
|
788
817
|
}
|
|
818
|
+
function brokerDiagnosticError(code, message, networkAttempted, minimumAction, extra = {}) {
|
|
819
|
+
return new CliError(message, {
|
|
820
|
+
code,
|
|
821
|
+
exitCode: 3,
|
|
822
|
+
details: {
|
|
823
|
+
executionMode: "broker",
|
|
824
|
+
credentialScope: "broker",
|
|
825
|
+
networkAttempted,
|
|
826
|
+
minimumAction,
|
|
827
|
+
...extra,
|
|
828
|
+
},
|
|
829
|
+
});
|
|
830
|
+
}
|
|
789
831
|
function brokerFailureKind(error) {
|
|
832
|
+
if (error instanceof CliError && error.code === "PROVIDER_AUTHENTICATION_FAILED") {
|
|
833
|
+
return "deterministic";
|
|
834
|
+
}
|
|
790
835
|
if (error instanceof CliError && error.code === "RESEARCH_BROKER_HTTP_ERROR") {
|
|
791
836
|
const status = isObject(error.details) ? error.details.status : undefined;
|
|
792
837
|
if (status === 429)
|