dyadic 1.7.1 → 1.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/dist/index.d.ts +9 -3
- package/dist/index.js +9 -3
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.8.1 (2026-10-17)
|
|
4
|
+
|
|
5
|
+
- `client.blackbox.overview(7 | 30)`: the Black Box overview of the last 7 days (the default) or 30. Each count is what `runs.list` gives with
|
|
6
|
+
the same filter and range.
|
|
7
|
+
- `runs.list` documents the `gaps` filter (`"1"`: only runs whose record has a gap).
|
|
8
|
+
|
|
9
|
+
## 1.8.0 (2026-10-17)
|
|
10
|
+
|
|
11
|
+
The Black Box as an execution record.
|
|
12
|
+
|
|
13
|
+
- `client.blackbox.runs.lineage(id)`: the file versions a run made (`path`, `sha256`, `previous`, the tool call), each with the plan steps under
|
|
14
|
+
way when it was made (observed, never a claim that the step caused it), and the steps the run moved. A key needs its
|
|
15
|
+
Black Box content switch.
|
|
16
|
+
- A run (`runs.retrieve`) now carries `actor` (who started it, beside its owner), `costs` (from the usage ledger:
|
|
17
|
+
credits charged and held, the provider's cost as reported or estimated, cache use; for the key that made it) and
|
|
18
|
+
`links` (its batch, the plans and steps it moved, re-runs, simulations); its `outcome` is verification alone
|
|
19
|
+
(`verified`, `contradicted`, `unverified`, `blocked`, `not_applicable`), apart from how it ended (`status`).
|
|
20
|
+
|
|
3
21
|
## 1.7.1 (2026-10-17)
|
|
4
22
|
|
|
5
23
|
- Corrected: `anthropic.messages.batches.create` described message batches as running at half price. Dyadic runs them in the
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const VERSION = "1.
|
|
1
|
+
export declare const VERSION = "1.8.1";
|
|
2
2
|
export declare const DEFAULT_BASE_URL = "https://dyadic.app/api/openai/v1";
|
|
3
3
|
/** The Anthropic API version the `anthropic` calls speak (sent as anthropic-version, as Anthropic's SDKs do). */
|
|
4
4
|
export declare const ANTHROPIC_VERSION = "2023-06-01";
|
|
@@ -1547,11 +1547,14 @@ export declare class Dyadic {
|
|
|
1547
1547
|
/** OTLP/HTTP traces: an object is sent as OTLP/JSON, bytes as OTLP protobuf (application/x-protobuf; the answer is then
|
|
1548
1548
|
* the protobuf ExportTraceServiceResponse, as Binary). */
|
|
1549
1549
|
sendOtlp: (request: Record<string, unknown> | Uint8Array | ArrayBuffer) => Promise<Record<string, unknown>> | Promise<Binary>;
|
|
1550
|
-
/** Counts for this key's runs: by status and outcome, open findings, recording gaps.
|
|
1551
|
-
|
|
1550
|
+
/** Counts for this key's runs of the last `days` (7 or 30): by status and outcome, open findings, recording gaps. Each
|
|
1551
|
+
* count is what `runs.list` gives with the same filter and range. */
|
|
1552
|
+
overview: (days?: 7 | 30) => Promise<Record<string, unknown>>;
|
|
1552
1553
|
/** What the account keeps (recording, capture by kind) and for how long. */
|
|
1553
1554
|
settings: () => Promise<Record<string, unknown>>;
|
|
1554
1555
|
runs: {
|
|
1556
|
+
/** Newest first. Filters: q, status, outcome, agent, model, tool, environment, source, since, until, severity, gaps ("1":
|
|
1557
|
+
* runs whose record has a gap), cursor, limit; `next` in the result pages on. */
|
|
1555
1558
|
list: (query?: Record<string, string | number | undefined>) => Promise<{
|
|
1556
1559
|
runs: BlackBoxRunSummary[];
|
|
1557
1560
|
next: string | null;
|
|
@@ -1568,6 +1571,9 @@ export declare class Dyadic {
|
|
|
1568
1571
|
has_more: boolean;
|
|
1569
1572
|
}>;
|
|
1570
1573
|
graph: (id: string) => Promise<Record<string, unknown>>;
|
|
1574
|
+
/** The file versions the run made, each with the plan steps under way when it was made (observed, never a claim that
|
|
1575
|
+
* the step caused it), and the plan steps it moved. A key needs its Black Box content switch. */
|
|
1576
|
+
lineage: (id: string) => Promise<Record<string, unknown>>;
|
|
1571
1577
|
verify: (id: string) => Promise<VerifyReport>;
|
|
1572
1578
|
/** The run's signed checkpoints and the anchor (an RFC 3161 timestamp over a Merkle root) that fixes them in time. */
|
|
1573
1579
|
checkpoints: (id: string) => Promise<{
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// The official TypeScript SDK for the Dyadic API: Iris
|
|
2
2
|
// through the OpenAI-compatible endpoints at https://dyadic.app/api/openai/v1, and beside them the Anthropic API
|
|
3
3
|
// (/api/anthropic/v1) and OpenRouter's API through the AI gateway (/api/openrouter/v1).
|
|
4
|
-
export const VERSION = "1.
|
|
4
|
+
export const VERSION = "1.8.1";
|
|
5
5
|
export const DEFAULT_BASE_URL = "https://dyadic.app/api/openai/v1";
|
|
6
6
|
/** The Anthropic API version the `anthropic` calls speak (sent as anthropic-version, as Anthropic's SDKs do). */
|
|
7
7
|
export const ANTHROPIC_VERSION = "2023-06-01";
|
|
@@ -560,16 +560,22 @@ export class Dyadic {
|
|
|
560
560
|
? this.request("POST", this.platformURL("/blackbox/otlp/v1/traces"), undefined, false, { idempotent: true, content: request,
|
|
561
561
|
headers: { "Content-Type": "application/x-protobuf", Accept: "application/x-protobuf" } })
|
|
562
562
|
: this.request("POST", this.platformURL("/blackbox/otlp/v1/traces"), request, false, { idempotent: true }),
|
|
563
|
-
/** Counts for this key's runs: by status and outcome, open findings, recording gaps.
|
|
564
|
-
|
|
563
|
+
/** Counts for this key's runs of the last `days` (7 or 30): by status and outcome, open findings, recording gaps. Each
|
|
564
|
+
* count is what `runs.list` gives with the same filter and range. */
|
|
565
|
+
overview: (days = 7) => this.request("GET", this.platformURL("/blackbox/overview"), undefined, false, { query: { days } }),
|
|
565
566
|
/** What the account keeps (recording, capture by kind) and for how long. */
|
|
566
567
|
settings: () => this.request("GET", this.platformURL("/blackbox/settings")),
|
|
567
568
|
runs: {
|
|
569
|
+
/** Newest first. Filters: q, status, outcome, agent, model, tool, environment, source, since, until, severity, gaps ("1":
|
|
570
|
+
* runs whose record has a gap), cursor, limit; `next` in the result pages on. */
|
|
568
571
|
list: (query = {}) => this.request("GET", this.platformURL("/blackbox/runs"), undefined, false, { query }),
|
|
569
572
|
retrieve: (id) => this.request("GET", this.platformURL(`/blackbox/runs/${id}`)),
|
|
570
573
|
/** The run's events in chain order; `types` keeps only those types (up to 20). */
|
|
571
574
|
events: (id, query = {}) => this.request("GET", this.platformURL(`/blackbox/runs/${id}/events`), undefined, false, { query: { after: query.after, limit: query.limit, types: Array.isArray(query.types) ? query.types.join(",") || undefined : query.types } }),
|
|
572
575
|
graph: (id) => this.request("GET", this.platformURL(`/blackbox/runs/${id}/graph`)),
|
|
576
|
+
/** The file versions the run made, each with the plan steps under way when it was made (observed, never a claim that
|
|
577
|
+
* the step caused it), and the plan steps it moved. A key needs its Black Box content switch. */
|
|
578
|
+
lineage: (id) => this.request("GET", this.platformURL(`/blackbox/runs/${id}/lineage`)),
|
|
573
579
|
verify: (id) => this.request("GET", this.platformURL(`/blackbox/runs/${id}/verify`)),
|
|
574
580
|
/** The run's signed checkpoints and the anchor (an RFC 3161 timestamp over a Merkle root) that fixes them in time. */
|
|
575
581
|
checkpoints: (id) => this.request("GET", this.platformURL(`/blackbox/runs/${id}/checkpoints`)),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dyadic",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.8.1",
|
|
4
4
|
"description": "The official TypeScript and JavaScript SDK for the Dyadic API: runs with your own agents and functions, plus the OpenAI-, Anthropic- and OpenRouter-compatible APIs.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|