@agenticprimitives/orchestration 0.0.0-alpha.1 → 0.0.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admission.d.ts +87 -0
- package/dist/admission.d.ts.map +1 -0
- package/dist/admission.js +193 -0
- package/dist/admission.js.map +1 -0
- package/dist/artifacts.d.ts +137 -0
- package/dist/artifacts.d.ts.map +1 -0
- package/dist/artifacts.js +232 -0
- package/dist/artifacts.js.map +1 -0
- package/dist/authority.d.ts +431 -0
- package/dist/authority.d.ts.map +1 -0
- package/dist/authority.js +2 -0
- package/dist/authority.js.map +1 -0
- package/dist/durable.d.ts +44 -0
- package/dist/durable.d.ts.map +1 -0
- package/dist/durable.js +15 -0
- package/dist/durable.js.map +1 -0
- package/dist/flow-trace.d.ts +105 -0
- package/dist/flow-trace.d.ts.map +1 -0
- package/dist/flow-trace.js +60 -0
- package/dist/flow-trace.js.map +1 -0
- package/dist/index.d.ts +20 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -1
- package/dist/index.js.map +1 -1
- package/dist/input.d.ts +165 -0
- package/dist/input.d.ts.map +1 -0
- package/dist/input.js +33 -0
- package/dist/input.js.map +1 -0
- package/dist/loop.d.ts +115 -3
- package/dist/loop.d.ts.map +1 -1
- package/dist/loop.js +656 -30
- package/dist/loop.js.map +1 -1
- package/dist/metrics.d.ts +35 -0
- package/dist/metrics.d.ts.map +1 -0
- package/dist/metrics.js +98 -0
- package/dist/metrics.js.map +1 -0
- package/dist/planner-wire.d.ts +11 -0
- package/dist/planner-wire.d.ts.map +1 -0
- package/dist/planner-wire.js +53 -0
- package/dist/planner-wire.js.map +1 -0
- package/dist/planner.d.ts +33 -0
- package/dist/planner.d.ts.map +1 -1
- package/dist/planner.js.map +1 -1
- package/dist/record.d.ts +161 -0
- package/dist/record.d.ts.map +1 -0
- package/dist/record.js +72 -0
- package/dist/record.js.map +1 -0
- package/dist/spans.d.ts +200 -0
- package/dist/spans.d.ts.map +1 -0
- package/dist/spans.js +522 -0
- package/dist/spans.js.map +1 -0
- package/dist/tool-invoker.d.ts +7 -0
- package/dist/tool-invoker.d.ts.map +1 -1
- package/dist/trace-context.d.ts +26 -0
- package/dist/trace-context.d.ts.map +1 -0
- package/dist/trace-context.js +59 -0
- package/dist/trace-context.js.map +1 -0
- package/dist/types.d.ts +180 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +4 -1
package/dist/loop.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../src/loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { RunRecordV1 } from './record.js';
|
|
2
|
+
export type MetricAttributes = Record<string, string | number | boolean>;
|
|
3
|
+
export interface CounterPointV1 {
|
|
4
|
+
attributes: MetricAttributes;
|
|
5
|
+
value: number;
|
|
6
|
+
}
|
|
7
|
+
export interface HistogramPointV1 {
|
|
8
|
+
attributes: MetricAttributes;
|
|
9
|
+
count: number;
|
|
10
|
+
sum: number; /** Explicit bounds (ms) and the counts per bucket (bounds.length + 1). */
|
|
11
|
+
bounds: number[];
|
|
12
|
+
bucketCounts: number[];
|
|
13
|
+
}
|
|
14
|
+
export interface RunMetricsV1 {
|
|
15
|
+
/** The record's time (ms) — the data points' end; the start is the run's first stamp when one exists. */
|
|
16
|
+
startMs: number;
|
|
17
|
+
endMs: number;
|
|
18
|
+
runs: CounterPointV1[];
|
|
19
|
+
verdicts: CounterPointV1[];
|
|
20
|
+
stepDuration: HistogramPointV1[];
|
|
21
|
+
modelCalls: CounterPointV1[];
|
|
22
|
+
/** Spec 396 W3 — vault calls the run made, by the step that made them (the planner's reads as `plan`). */
|
|
23
|
+
vaultCalls: CounterPointV1[];
|
|
24
|
+
}
|
|
25
|
+
/** Bounds in ms — sub-second reads through minute-long approvals. */
|
|
26
|
+
export declare const STEP_DURATION_BOUNDS_MS: readonly [100, 250, 500, 1000, 2500, 5000, 10000, 30000, 60000, 300000];
|
|
27
|
+
/** The four instruments for one record. Pure. */
|
|
28
|
+
export declare function metricsOf(record: RunRecordV1): RunMetricsV1;
|
|
29
|
+
/** The OTLP/HTTP JSON `ExportMetricsServiceRequest` body — delta temporality, one data point per instrument
|
|
30
|
+
* and attribute set, from one record. */
|
|
31
|
+
export declare function otlpMetricsOf(m: RunMetricsV1, resource: {
|
|
32
|
+
serviceName: string;
|
|
33
|
+
version?: string;
|
|
34
|
+
}): unknown;
|
|
35
|
+
//# sourceMappingURL=metrics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;AAEzE,MAAM,WAAW,cAAc;IAAG,UAAU,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE;AAC/E,MAAM,WAAW,gBAAgB;IAAG,UAAU,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,CAAC,0EAA0E;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE;AAEnN,MAAM,WAAW,YAAY;IAC3B,yGAAyG;IACzG,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,0GAA0G;IAC1G,UAAU,EAAE,cAAc,EAAE,CAAC;CAC9B;AAED,qEAAqE;AACrE,eAAO,MAAM,uBAAuB,yEAAiF,CAAC;AAatH,iDAAiD;AACjD,wBAAgB,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,YAAY,CAsD3D;AAED;0CAC0C;AAC1C,wBAAgB,aAAa,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CA2B3G"}
|
package/dist/metrics.js
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/** Bounds in ms — sub-second reads through minute-long approvals. */
|
|
2
|
+
export const STEP_DURATION_BOUNDS_MS = [100, 250, 500, 1_000, 2_500, 5_000, 10_000, 30_000, 60_000, 300_000];
|
|
3
|
+
const histogram = (attributes, values) => {
|
|
4
|
+
const bounds = [...STEP_DURATION_BOUNDS_MS];
|
|
5
|
+
const bucketCounts = new Array(bounds.length + 1).fill(0);
|
|
6
|
+
for (const v of values) {
|
|
7
|
+
let i = bounds.findIndex((b) => v <= b);
|
|
8
|
+
if (i === -1)
|
|
9
|
+
i = bounds.length;
|
|
10
|
+
bucketCounts[i] += 1;
|
|
11
|
+
}
|
|
12
|
+
return { attributes, count: values.length, sum: values.reduce((a, b) => a + b, 0), bounds, bucketCounts };
|
|
13
|
+
};
|
|
14
|
+
/** The four instruments for one record. Pure. */
|
|
15
|
+
export function metricsOf(record) {
|
|
16
|
+
const stamps = record.events.map((e) => (typeof e.at === 'number' && e.at > 0 ? e.at : Number.POSITIVE_INFINITY));
|
|
17
|
+
const first = Math.min(...stamps, record.receivedAt ?? Number.POSITIVE_INFINITY, ...record.receipts.map((r) => r.startedAt * 1000));
|
|
18
|
+
const startMs = Number.isFinite(first) ? first : record.at;
|
|
19
|
+
const runs = [{ attributes: { 'ap.run.outcome': record.outcome }, value: 1 }];
|
|
20
|
+
const verdicts = new Map();
|
|
21
|
+
for (const r of record.receipts) {
|
|
22
|
+
if (!r.authority)
|
|
23
|
+
continue;
|
|
24
|
+
const key = `${r.authority.decision.decision}|${r.authority.afterApproval}`;
|
|
25
|
+
const p = verdicts.get(key) ?? { attributes: { 'ap.authority.verdict': r.authority.decision.decision, 'ap.authority.after_approval': r.authority.afterApproval }, value: 0 };
|
|
26
|
+
p.value += 1;
|
|
27
|
+
verdicts.set(key, p);
|
|
28
|
+
}
|
|
29
|
+
const durations = new Map();
|
|
30
|
+
for (const r of record.receipts) {
|
|
31
|
+
if (r.stepRef.endsWith(':compensate'))
|
|
32
|
+
continue;
|
|
33
|
+
const attributes = r.capability ? { 'ap.capability.id': r.capability.id, 'ap.risk': r.risk } : { 'gen_ai.tool.name': r.toolId, 'ap.risk': r.risk };
|
|
34
|
+
const key = JSON.stringify(attributes);
|
|
35
|
+
const d = durations.get(key) ?? { attributes, values: [] };
|
|
36
|
+
d.values.push(Math.max(0, (r.completedAt - r.startedAt) * 1000));
|
|
37
|
+
durations.set(key, d);
|
|
38
|
+
}
|
|
39
|
+
const modelCalls = [];
|
|
40
|
+
const route = record.planner?.route;
|
|
41
|
+
const call = (which, d) => {
|
|
42
|
+
if (!d?.provider)
|
|
43
|
+
return;
|
|
44
|
+
modelCalls.push({ attributes: { 'gen_ai.provider.name': d.provider, 'ap.model.call': which, ...(route?.policy ? { 'ap.route.policy': route.policy } : {}) }, value: 1 });
|
|
45
|
+
};
|
|
46
|
+
call('planner', route?.planner);
|
|
47
|
+
call('composer', route?.composer);
|
|
48
|
+
// Spec 396 W3 — the bill, by step: a step's calls carry its capability (or tool) and risk; the planner's carry the call.
|
|
49
|
+
const vaultCalls = [];
|
|
50
|
+
for (const [key, b] of Object.entries(record.bill?.byStep ?? {})) {
|
|
51
|
+
if (b.vaultCalls <= 0)
|
|
52
|
+
continue;
|
|
53
|
+
const r = record.receipts.find((x) => x.stepRef === key);
|
|
54
|
+
const attributes = r
|
|
55
|
+
? (r.capability ? { 'ap.capability.id': r.capability.id, 'ap.risk': r.risk } : { 'gen_ai.tool.name': r.toolId, 'ap.risk': r.risk })
|
|
56
|
+
: { 'ap.model.call': 'planner' };
|
|
57
|
+
vaultCalls.push({ attributes, value: b.vaultCalls });
|
|
58
|
+
}
|
|
59
|
+
return {
|
|
60
|
+
startMs, endMs: record.at,
|
|
61
|
+
runs,
|
|
62
|
+
verdicts: [...verdicts.values()],
|
|
63
|
+
stepDuration: [...durations.values()].map((d) => histogram(d.attributes, d.values)),
|
|
64
|
+
modelCalls,
|
|
65
|
+
vaultCalls,
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
/** The OTLP/HTTP JSON `ExportMetricsServiceRequest` body — delta temporality, one data point per instrument
|
|
69
|
+
* and attribute set, from one record. */
|
|
70
|
+
export function otlpMetricsOf(m, resource) {
|
|
71
|
+
const attr = (k, v) => ({ key: k, value: typeof v === 'string' ? { stringValue: v } : typeof v === 'boolean' ? { boolValue: v } : Number.isInteger(v) ? { intValue: String(v) } : { doubleValue: v } });
|
|
72
|
+
const attrs = (a) => Object.entries(a).map(([k, v]) => attr(k, v));
|
|
73
|
+
const nanos = (ms) => String(BigInt(Math.round(ms)) * 1000000n);
|
|
74
|
+
const DELTA = 1;
|
|
75
|
+
const sum = (name, description, unit, points) => ({
|
|
76
|
+
name, description, unit,
|
|
77
|
+
sum: { aggregationTemporality: DELTA, isMonotonic: true, dataPoints: points.map((p) => ({ attributes: attrs(p.attributes), startTimeUnixNano: nanos(m.startMs), timeUnixNano: nanos(m.endMs), asInt: String(p.value) })) },
|
|
78
|
+
});
|
|
79
|
+
return {
|
|
80
|
+
resourceMetrics: [{
|
|
81
|
+
resource: { attributes: [attr('service.name', resource.serviceName), ...(resource.version ? [attr('service.version', resource.version)] : [])] },
|
|
82
|
+
scopeMetrics: [{
|
|
83
|
+
scope: { name: '@agenticprimitives/orchestration', version: '1' },
|
|
84
|
+
metrics: [
|
|
85
|
+
sum('ap.harness.runs', 'Harness runs, by outcome', '{run}', m.runs),
|
|
86
|
+
sum('ap.harness.verdicts', 'Authority verdicts, by decision and whether an approval preceded them', '{verdict}', m.verdicts),
|
|
87
|
+
{
|
|
88
|
+
name: 'ap.harness.step.duration', description: 'Step duration, by capability and risk', unit: 'ms',
|
|
89
|
+
histogram: { aggregationTemporality: DELTA, dataPoints: m.stepDuration.map((p) => ({ attributes: attrs(p.attributes), startTimeUnixNano: nanos(m.startMs), timeUnixNano: nanos(m.endMs), count: String(p.count), sum: p.sum, bucketCounts: p.bucketCounts.map(String), explicitBounds: p.bounds })) },
|
|
90
|
+
},
|
|
91
|
+
sum('ap.model.calls', 'Model calls, by provider, call and route policy', '{call}', m.modelCalls),
|
|
92
|
+
sum('ap.vault.calls', 'Vault calls the run made, by step (the planner\'s reads as the planner call)', '{call}', m.vaultCalls),
|
|
93
|
+
],
|
|
94
|
+
}],
|
|
95
|
+
}],
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=metrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type PlanStep, type ToolSpec } from './types.js';
|
|
2
|
+
/** The API-safe name for a tool id. Deterministic; not unique on its own — see `toolNameMap`. */
|
|
3
|
+
export declare function wireNameFor(id: string): string;
|
|
4
|
+
/** Both directions of the id ↔ wire-name map for one tool set. Throws `planner_failed` on a collision. */
|
|
5
|
+
export declare function toolNameMap(tools: ToolSpec[]): {
|
|
6
|
+
toWire: Map<string, string>;
|
|
7
|
+
fromWire: Map<string, string>;
|
|
8
|
+
};
|
|
9
|
+
/** One `PlanStep` from a tool call's raw arguments: the convention keys lifted out, the rest kept as args. */
|
|
10
|
+
export declare function planStepFromToolArgs(toolId: string, raw: Record<string, unknown>): PlanStep;
|
|
11
|
+
//# sourceMappingURL=planner-wire.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"planner-wire.d.ts","sourceRoot":"","sources":["../src/planner-wire.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAsB,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE9E,iGAAiG;AACjG,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED,0GAA0G;AAC1G,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG;IAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAW7G;AAED,8GAA8G;AAC9G,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,CAe3F"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
// THE PLAN-SHAPE CONVENTION ON A VENDOR'S WIRE — shared by every LLM adapter (spec 377 §2).
|
|
2
|
+
//
|
|
3
|
+
// Two things every tool-calling API forces on a planner, neither of which is a vendor detail:
|
|
4
|
+
//
|
|
5
|
+
// 1. Tool NAMES on the wire are restricted (`^[a-zA-Z0-9_-]{1,128}$` on every serious API), while capability
|
|
6
|
+
// ids are DOTTED by vocabulary (`treasury.payment.execute`, ADR-0051). The wire name is derived here and
|
|
7
|
+
// mapped BACK on the way out, so the plan still names the tool by its id. Bijective by construction: two
|
|
8
|
+
// ids that derive the same wire name are refused rather than silently merged.
|
|
9
|
+
// 2. A tool call carries ONLY arguments, so the plan-shape fields the loop reads — `$ref` (bind this result
|
|
10
|
+
// under a name), `$forEach` (fan out over a prior result's array), `$after` (ids of steps this one waits
|
|
11
|
+
// for), `$when` (a declared branch on a prior result) — ride INSIDE the args (spec 358 W4, spec 370 P3).
|
|
12
|
+
// They are lifted into the `PlanStep` fields here; `$item` placeholders stay in args for the loop's
|
|
13
|
+
// per-item substitution. A malformed form is ignored, and admission then refuses the undecidable step.
|
|
14
|
+
//
|
|
15
|
+
// This lived in the Anthropic adapter first. It moved here the day a second adapter needed it verbatim: the
|
|
16
|
+
// convention belongs to the loop that reads it, not to whichever vendor shipped first.
|
|
17
|
+
import { OrchestrationError } from './types.js';
|
|
18
|
+
/** The API-safe name for a tool id. Deterministic; not unique on its own — see `toolNameMap`. */
|
|
19
|
+
export function wireNameFor(id) {
|
|
20
|
+
return id.replace(/[^a-zA-Z0-9_-]/g, '_').slice(0, 128) || '_';
|
|
21
|
+
}
|
|
22
|
+
/** Both directions of the id ↔ wire-name map for one tool set. Throws `planner_failed` on a collision. */
|
|
23
|
+
export function toolNameMap(tools) {
|
|
24
|
+
const toWire = new Map();
|
|
25
|
+
const fromWire = new Map();
|
|
26
|
+
for (const t of tools) {
|
|
27
|
+
const w = wireNameFor(t.id);
|
|
28
|
+
const prior = fromWire.get(w);
|
|
29
|
+
if (prior && prior !== t.id)
|
|
30
|
+
throw new OrchestrationError('planner_failed', `tool ids "${prior}" and "${t.id}" collide on the API tool name "${w}"`);
|
|
31
|
+
toWire.set(t.id, w);
|
|
32
|
+
fromWire.set(w, t.id);
|
|
33
|
+
}
|
|
34
|
+
return { toWire, fromWire };
|
|
35
|
+
}
|
|
36
|
+
/** One `PlanStep` from a tool call's raw arguments: the convention keys lifted out, the rest kept as args. */
|
|
37
|
+
export function planStepFromToolArgs(toolId, raw) {
|
|
38
|
+
const { $ref, $forEach, $after, $when, $executor, ...args } = raw;
|
|
39
|
+
const after = Array.isArray($after) ? $after.filter((x) => typeof x === 'string') : typeof $after === 'string' ? [$after] : [];
|
|
40
|
+
const when = $when && typeof $when === 'object' && typeof $when.ref === 'string' ? $when : undefined;
|
|
41
|
+
return {
|
|
42
|
+
toolId,
|
|
43
|
+
args,
|
|
44
|
+
...(typeof $ref === 'string' && $ref ? { ref: $ref } : {}),
|
|
45
|
+
...(typeof $forEach === 'string' && $forEach ? { forEach: { ref: $forEach } } : {}),
|
|
46
|
+
...(after.length ? { after } : {}),
|
|
47
|
+
// Spec 376 W2 — WHO IS TO DO IT, as the person said it ("have runtime-c3s0.svc pay …"): the words, which
|
|
48
|
+
// the harness resolves in the asker's own tier before the step runs, never an address the model chose.
|
|
49
|
+
...(typeof $executor === 'string' && $executor.trim() ? { executor: $executor.trim() } : {}),
|
|
50
|
+
...(when ? { when: { ref: when.ref, ...(when.exists !== undefined ? { exists: !!when.exists } : {}), ...(when.equals !== undefined ? { equals: when.equals } : {}) } } : {}),
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=planner-wire.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"planner-wire.js","sourceRoot":"","sources":["../src/planner-wire.ts"],"names":[],"mappings":"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"}
|
package/dist/planner.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { EvidenceItemV1 } from './artifacts.js';
|
|
1
2
|
import type { Intent, Plan, PlanStep, ToolSpec, StepObservation } from './types.js';
|
|
2
3
|
/** What a planner is given to produce (or re-produce) a plan. */
|
|
3
4
|
export interface PlanInput {
|
|
@@ -11,6 +12,38 @@ export interface PlanInput {
|
|
|
11
12
|
export interface Planner {
|
|
12
13
|
plan(input: PlanInput): Promise<Plan>;
|
|
13
14
|
}
|
|
15
|
+
/** What an answer is composed FROM. Deliberately only the ask and what the tools actually returned: an
|
|
16
|
+
* answer that cannot be traced to an observation is a guess wearing a sentence. */
|
|
17
|
+
export interface ComposeInput {
|
|
18
|
+
intent: Intent;
|
|
19
|
+
observations: StepObservation[];
|
|
20
|
+
/** Spec 358 W3 — a prior composition's claims exceeded its evidence, and these say exactly how. A
|
|
21
|
+
* composer given corrections is being asked AGAIN, once; what it returns is re-checked, and the caller
|
|
22
|
+
* falls back to stating the evidence rather than asking a third time. */
|
|
23
|
+
corrections?: string[];
|
|
24
|
+
/** Spec 391 — the evidence ALREADY FITTED to the composer's budget by the caller (`fitEvidence`), so the drops
|
|
25
|
+
* are on the trace and the governor knows what the model saw. Absent ⇒ the composer fits the observations
|
|
26
|
+
* itself (never slices). */
|
|
27
|
+
evidence?: EvidenceItemV1[];
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* The injected ANSWERING port — the other half of the loop's model use. `Planner` decides what to do;
|
|
31
|
+
* this turns what came back into something a person can read.
|
|
32
|
+
*
|
|
33
|
+
* Three rules it exists to enforce, none of which the loop can check for the implementer:
|
|
34
|
+
* • GROUNDED — only what the observations contain. No recalled facts, no plausible filler; "the
|
|
35
|
+
* directory does not say" is a correct answer and the expected one when the rows are empty.
|
|
36
|
+
* • NOT EVIDENCE — the receipts are the evidence and the observations are the record. This produces a
|
|
37
|
+
* RENDERING of them; nothing downstream may treat the prose as a fact that happened.
|
|
38
|
+
* • ANSWERS ONLY — it never runs over an action's result. What an action did is stated from the
|
|
39
|
+
* receipt (what was created, at what address, in which transaction), where precision is the point
|
|
40
|
+
* and a paraphrase is a liability.
|
|
41
|
+
*/
|
|
42
|
+
export interface AnswerComposer {
|
|
43
|
+
compose(input: ComposeInput): Promise<string>;
|
|
44
|
+
/** Spec 391 — how many characters of evidence this composer will carry, so the caller can fit to it. */
|
|
45
|
+
evidenceBudget?: number;
|
|
46
|
+
}
|
|
14
47
|
/** One deterministic rule. When the goal matches, emit either a single step (`toolId` + `args`) OR a
|
|
15
48
|
* multi-step plan (`steps`) — later steps may reference earlier results via `{ $ref: 'name.path' }`. A rule
|
|
16
49
|
* is SKIPPED if any tool it names is not in the provided `tools` (fail-closed; the next rule is tried). */
|
package/dist/planner.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../src/planner.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGpF,iEAAiE;AACjE,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,8FAA8F;IAC9F,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,gGAAgG;IAChG,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;CAClC;AAED,sGAAsG;AACtG,MAAM,WAAW,OAAO;IACtB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAED;;4GAE4G;AAC5G,MAAM,WAAW,QAAQ;IACvB,kFAAkF;IAClF,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC;IAC5C,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wFAAwF;IACxF,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7E,sFAAsF;IACtF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qGAAqG;IACrG,KAAK,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC,CAAC;CACrD;AAKD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,CAqBjE"}
|
|
1
|
+
{"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../src/planner.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGpF,iEAAiE;AACjE,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,8FAA8F;IAC9F,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,gGAAgG;IAChG,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;CAClC;AAED,sGAAsG;AACtG,MAAM,WAAW,OAAO;IACtB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAED;oFACoF;AACpF,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC;;8EAE0E;IAC1E,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB;;iCAE6B;IAC7B,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,wGAAwG;IACxG,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;4GAE4G;AAC5G,MAAM,WAAW,QAAQ;IACvB,kFAAkF;IAClF,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC;IAC5C,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wFAAwF;IACxF,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7E,sFAAsF;IACtF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qGAAqG;IACrG,KAAK,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC,CAAC;CACrD;AAKD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,CAqBjE"}
|
package/dist/planner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planner.js","sourceRoot":"","sources":["../src/planner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"planner.js","sourceRoot":"","sources":["../src/planner.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAkEhD,MAAM,OAAO,GAAG,CAAC,IAAc,EAAE,IAAY,EAAW,EAAE,CACxD,OAAO,IAAI,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;AAE5F;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAiB;IACtD,OAAO;QACL,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAa;YACrC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAClD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;oBAAE,SAAS;gBAC1C,qFAAqF;gBACrF,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;oBACtF,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;wBAAE,SAAS;oBAC3D,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,wBAAwB,MAAM,CAAC,IAAI,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;gBAClH,CAAC;gBACD,oBAAoB;gBACpB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;oBAAE,SAAS,CAAC,iCAAiC;gBAC5F,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;gBAC1F,MAAM,IAAI,GAAa,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;gBAC/G,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,wBAAwB,MAAM,CAAC,IAAI,OAAO,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YAC/F,CAAC;YACD,MAAM,IAAI,kBAAkB,CAAC,SAAS,EAAE,gCAAgC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;QAC1F,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/record.d.ts
ADDED
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import type { Intent, Plan, RunResult } from './types.js';
|
|
2
|
+
import type { MandateDecision, MandatePresentation, RunEvent, StepReceipt } from './authority.js';
|
|
3
|
+
import { type RunIntentOpts } from './loop.js';
|
|
4
|
+
import type { ToolInvoker } from './tool-invoker.js';
|
|
5
|
+
import type { TraceContextV1 } from './trace-context.js';
|
|
6
|
+
import type { OffloadReport } from './artifacts.js';
|
|
7
|
+
export interface RunRecordV1 {
|
|
8
|
+
type: 'ap.run-record.v1';
|
|
9
|
+
runRef: string;
|
|
10
|
+
/** When the run finished (ms). */
|
|
11
|
+
at: number;
|
|
12
|
+
intent: Intent;
|
|
13
|
+
/** The plan the executor received — fan-out expanded, arguments as the planner wrote them. */
|
|
14
|
+
plan: Plan;
|
|
15
|
+
/** What each step observed, by its stable reference. A replay answers from these. */
|
|
16
|
+
steps: Array<{
|
|
17
|
+
stepRef: string;
|
|
18
|
+
toolId: string;
|
|
19
|
+
args: Record<string, unknown>;
|
|
20
|
+
ok: boolean;
|
|
21
|
+
result?: unknown;
|
|
22
|
+
error?: string;
|
|
23
|
+
skipped?: boolean;
|
|
24
|
+
replayed?: boolean;
|
|
25
|
+
}>;
|
|
26
|
+
receipts: StepReceipt[];
|
|
27
|
+
events: RunEvent[];
|
|
28
|
+
outcome: RunResult['outcome'];
|
|
29
|
+
/** The mandates the run presented, so a replay can re-verify them — kept where the record is kept
|
|
30
|
+
* (the agent's own task object), never served out of it: a listing strips this. */
|
|
31
|
+
presented?: MandatePresentation[];
|
|
32
|
+
/** Spec 381 — what became of the record after it landed: whether its provenance reached the acting agent's
|
|
33
|
+
* vault and whether its spans were sent. Written back by the exporter, so "did it export?" is answered
|
|
34
|
+
* from the record and never inferred (evidence before diagnosis). */
|
|
35
|
+
export?: RunExportReportV1;
|
|
36
|
+
/** Spec 390 W2 — the W3C Trace Context the request ARRIVED with, when one did: the run's spans join that
|
|
37
|
+
* trace (its id, parented to the caller's span) instead of deriving one. Correlation, never trust: no
|
|
38
|
+
* gate reads it, and a forged one changes no verdict (the authority twin). */
|
|
39
|
+
traceContext?: TraceContextV1;
|
|
40
|
+
/** Spec 390 W3 — WHO PROPOSED THE PLAN AND WHO COMPOSED THE REPLY, as names and numbers only: the planner
|
|
41
|
+
* kind (a screen, a compiled shape, a model), the model and provider, and the route's reasons (spec 388 —
|
|
42
|
+
* provider names and token counts, never words). Read by the span projection for the `plan` and
|
|
43
|
+
* `issue_outcome` spans; consulted by no verifier. */
|
|
44
|
+
planner?: RunPlannerSummaryV1;
|
|
45
|
+
/** Spec 390 W3 — when the REQUEST arrived (ms), before the loop started: the gap to `RunStarted` is the
|
|
46
|
+
* admission and preparation the record itself does not itemise (the session, the standing, the playbook),
|
|
47
|
+
* shown as one `receive_request` span rather than hidden. */
|
|
48
|
+
receivedAt?: number;
|
|
49
|
+
/** Spec 391 — which steps' results were offloaded to the acting agent's vault (and which write was refused). */
|
|
50
|
+
offloaded?: OffloadReport[];
|
|
51
|
+
/** Spec 398 §5.3 — CANCELED by the person who could resume it: the run stops; what already happened stands
|
|
52
|
+
* (`afterSteps` completed steps, their receipts above). Distinct from `failed` (nothing went wrong) and from a
|
|
53
|
+
* revoked mandate (authority withdrawn — the next step would be refused; the run itself is not stopped). A
|
|
54
|
+
* canceled run reads `canceled` wherever a state is shown, never `failed`. */
|
|
55
|
+
canceled?: {
|
|
56
|
+
at: number;
|
|
57
|
+
by: string;
|
|
58
|
+
afterSteps: number;
|
|
59
|
+
note?: string;
|
|
60
|
+
};
|
|
61
|
+
/** Spec 396 W3 — what the run COST its agent's storage: vault calls and serving-plane (DO) requests, by the step
|
|
62
|
+
* that made them (`plan` for the planner's reads). Numbers only; exported as the `ap.vault.calls` metric. */
|
|
63
|
+
bill?: RunBillV1;
|
|
64
|
+
}
|
|
65
|
+
/** Spec 390 W3 — the run's model calls, summarised for the trace. Vendor-neutral: strings the app supplies. */
|
|
66
|
+
export interface RunPlannerSummaryV1 {
|
|
67
|
+
kind: string;
|
|
68
|
+
model?: string;
|
|
69
|
+
provider?: string;
|
|
70
|
+
route?: {
|
|
71
|
+
policy?: string;
|
|
72
|
+
planner?: {
|
|
73
|
+
provider: string | null;
|
|
74
|
+
because: string;
|
|
75
|
+
};
|
|
76
|
+
composer?: {
|
|
77
|
+
provider: string | null;
|
|
78
|
+
because: string;
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
/** Spec 381 — the exporter's report, kept on the record. */
|
|
83
|
+
export interface RunExportReportV1 {
|
|
84
|
+
at: number;
|
|
85
|
+
provenance: {
|
|
86
|
+
written: boolean;
|
|
87
|
+
recordType: string;
|
|
88
|
+
error?: string;
|
|
89
|
+
};
|
|
90
|
+
spans: {
|
|
91
|
+
count: number;
|
|
92
|
+
sent: boolean;
|
|
93
|
+
error?: string;
|
|
94
|
+
};
|
|
95
|
+
/** Spec 390 W4 — the metrics body: how many data points, whether a collector took them. */
|
|
96
|
+
metrics?: {
|
|
97
|
+
points: number;
|
|
98
|
+
sent: boolean;
|
|
99
|
+
error?: string;
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
/** Build the record of a finished (or stopped) run. */
|
|
103
|
+
/** Spec 396 W3 — the run's bill: vault calls and DO requests, by step. */
|
|
104
|
+
export interface RunBillV1 {
|
|
105
|
+
vaultCalls: number;
|
|
106
|
+
doRequests: number;
|
|
107
|
+
byStep: Record<string, {
|
|
108
|
+
vaultCalls: number;
|
|
109
|
+
doRequests: number;
|
|
110
|
+
}>;
|
|
111
|
+
/** Vault reads by RECORD TYPE (a name, never a record) — what a turn keeps re-reading is the next thing to cache. */
|
|
112
|
+
byRecord?: Record<string, number>;
|
|
113
|
+
/** DO requests by op (an op id, never a payload) — which serving-plane calls a turn makes, and how often. */
|
|
114
|
+
byOp?: Record<string, number>;
|
|
115
|
+
}
|
|
116
|
+
export declare function recordOf(input: {
|
|
117
|
+
runRef: string;
|
|
118
|
+
intent: Intent;
|
|
119
|
+
result: RunResult;
|
|
120
|
+
events: readonly RunEvent[];
|
|
121
|
+
presented?: readonly MandatePresentation[];
|
|
122
|
+
now?: number;
|
|
123
|
+
traceContext?: TraceContextV1 | null;
|
|
124
|
+
planner?: RunPlannerSummaryV1 | null;
|
|
125
|
+
receivedAt?: number;
|
|
126
|
+
offloaded?: OffloadReport[];
|
|
127
|
+
bill?: RunBillV1 | null;
|
|
128
|
+
}): RunRecordV1;
|
|
129
|
+
/** An invoker that answers each step from the record and runs nothing. A step the record does not hold
|
|
130
|
+
* is refused, never executed: a replay may not do new work under an old name. */
|
|
131
|
+
export declare function replayingInvoker(record: RunRecordV1): ToolInvoker;
|
|
132
|
+
export interface ReplayVerdict {
|
|
133
|
+
stepRef: string;
|
|
134
|
+
toolId: string;
|
|
135
|
+
/** The verdict the record holds for this step (`allow` | `deny` | null for an informational step). */
|
|
136
|
+
recorded: MandateDecision['decision'] | null;
|
|
137
|
+
/** The verdict re-derived now. */
|
|
138
|
+
replayed: MandateDecision['decision'] | null;
|
|
139
|
+
changed: boolean;
|
|
140
|
+
/** Why the replay decided differently, in the verifier's words. */
|
|
141
|
+
because?: string;
|
|
142
|
+
}
|
|
143
|
+
export interface ReplayReport {
|
|
144
|
+
runRef: string;
|
|
145
|
+
outcome: RunResult['outcome'];
|
|
146
|
+
recordedOutcome: RunResult['outcome'];
|
|
147
|
+
verdicts: ReplayVerdict[];
|
|
148
|
+
/** The replay's own result: receipts, steps (every observation replayed), any refusal. */
|
|
149
|
+
result: RunResult;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Replay a record: the SAME plan (the planner is not asked), the SAME observations (the tools are not
|
|
153
|
+
* run), and a FRESH pass through every gate the caller provides. Compare per step what was decided then
|
|
154
|
+
* with what is decided now. `opts` carries the live ports, tools and — when the caller can present them —
|
|
155
|
+
* the record's own mandates (a replay presenting nothing reports authority-required for every act, which
|
|
156
|
+
* is also a true statement about now).
|
|
157
|
+
*/
|
|
158
|
+
export declare function replayRun(record: RunRecordV1, opts: Omit<RunIntentOpts, 'planner' | 'invoke' | 'resume' | 'runRef'> & {
|
|
159
|
+
presented?: RunIntentOpts['presented'];
|
|
160
|
+
}): Promise<ReplayReport>;
|
|
161
|
+
//# sourceMappingURL=record.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../src/record.ts"],"names":[],"mappings":"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"}
|