@agentplat/inference-control 0.3.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.
Files changed (83) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +101 -0
  3. package/dist/assessments.d.ts +5 -0
  4. package/dist/assessments.d.ts.map +1 -0
  5. package/dist/assessments.js +216 -0
  6. package/dist/assessments.js.map +1 -0
  7. package/dist/boundary.d.ts +24 -0
  8. package/dist/boundary.d.ts.map +1 -0
  9. package/dist/boundary.js +46 -0
  10. package/dist/boundary.js.map +1 -0
  11. package/dist/canonical.d.ts +6 -0
  12. package/dist/canonical.d.ts.map +1 -0
  13. package/dist/canonical.js +74 -0
  14. package/dist/canonical.js.map +1 -0
  15. package/dist/capabilities.d.ts +43 -0
  16. package/dist/capabilities.d.ts.map +1 -0
  17. package/dist/capabilities.js +304 -0
  18. package/dist/capabilities.js.map +1 -0
  19. package/dist/context.d.ts +7 -0
  20. package/dist/context.d.ts.map +1 -0
  21. package/dist/context.js +191 -0
  22. package/dist/context.js.map +1 -0
  23. package/dist/index.d.ts +14 -0
  24. package/dist/index.d.ts.map +1 -0
  25. package/dist/index.js +14 -0
  26. package/dist/index.js.map +1 -0
  27. package/dist/messages.d.ts +124 -0
  28. package/dist/messages.d.ts.map +1 -0
  29. package/dist/messages.js +475 -0
  30. package/dist/messages.js.map +1 -0
  31. package/dist/model.d.ts +104 -0
  32. package/dist/model.d.ts.map +1 -0
  33. package/dist/model.js +437 -0
  34. package/dist/model.js.map +1 -0
  35. package/dist/policy.d.ts +11 -0
  36. package/dist/policy.d.ts.map +1 -0
  37. package/dist/policy.js +338 -0
  38. package/dist/policy.js.map +1 -0
  39. package/dist/reducer.d.ts +193 -0
  40. package/dist/reducer.d.ts.map +1 -0
  41. package/dist/reducer.js +1341 -0
  42. package/dist/reducer.js.map +1 -0
  43. package/dist/runtime.d.ts +132 -0
  44. package/dist/runtime.d.ts.map +1 -0
  45. package/dist/runtime.js +587 -0
  46. package/dist/runtime.js.map +1 -0
  47. package/dist/scopes.d.ts +3 -0
  48. package/dist/scopes.d.ts.map +1 -0
  49. package/dist/scopes.js +83 -0
  50. package/dist/scopes.js.map +1 -0
  51. package/dist/sha256.d.ts +2 -0
  52. package/dist/sha256.d.ts.map +1 -0
  53. package/dist/sha256.js +72 -0
  54. package/dist/sha256.js.map +1 -0
  55. package/dist/state-records.d.ts +8 -0
  56. package/dist/state-records.d.ts.map +1 -0
  57. package/dist/state-records.js +204 -0
  58. package/dist/state-records.js.map +1 -0
  59. package/dist/state.d.ts +19 -0
  60. package/dist/state.d.ts.map +1 -0
  61. package/dist/state.js +689 -0
  62. package/dist/state.js.map +1 -0
  63. package/dist/streams.d.ts +5 -0
  64. package/dist/streams.d.ts.map +1 -0
  65. package/dist/streams.js +93 -0
  66. package/dist/streams.js.map +1 -0
  67. package/dist/telemetry.d.ts +12 -0
  68. package/dist/telemetry.d.ts.map +1 -0
  69. package/dist/telemetry.js +20 -0
  70. package/dist/telemetry.js.map +1 -0
  71. package/dist/tools.d.ts +221 -0
  72. package/dist/tools.d.ts.map +1 -0
  73. package/dist/tools.js +755 -0
  74. package/dist/tools.js.map +1 -0
  75. package/dist/types.d.ts +474 -0
  76. package/dist/types.d.ts.map +1 -0
  77. package/dist/types.js +43 -0
  78. package/dist/types.js.map +1 -0
  79. package/dist/validation.d.ts +23 -0
  80. package/dist/validation.d.ts.map +1 -0
  81. package/dist/validation.js +154 -0
  82. package/dist/validation.js.map +1 -0
  83. package/package.json +56 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { ControlStreamChunkV1, ControlStreamV1, InferenceControlLimitsV1, StreamWindowV1 } from './types.js';
2
+ export declare function validateControlStreamV1(value: unknown): ControlStreamV1;
3
+ export declare function validateControlStreamChunkV1(value: unknown, limits: InferenceControlLimitsV1): ControlStreamChunkV1;
4
+ export declare function createStreamWindowV1(stream: ControlStreamV1, chunks: readonly ControlStreamChunkV1[]): StreamWindowV1;
5
+ //# sourceMappingURL=streams.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streams.d.ts","sourceRoot":"","sources":["../src/streams.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EACf,wBAAwB,EACxB,cAAc,EACf,MAAM,YAAY,CAAC;AAUpB,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,CAyCvE;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,wBAAwB,GAC/B,oBAAoB,CAsCtB;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,SAAS,oBAAoB,EAAE,GACtC,cAAc,CA8BhB"}
@@ -0,0 +1,93 @@
1
+ import { digestControlJsonV1, utf8ByteLength } from './canonical.js';
2
+ import { assertDigest, assertExactKeys, assertOneOf, assertSafeInteger, assertString, deepFreeze, } from './validation.js';
3
+ export function validateControlStreamV1(value) {
4
+ assertExactKeys(value, [
5
+ 'schemaVersion',
6
+ 'streamId',
7
+ 'runId',
8
+ 'generation',
9
+ 'nextSequence',
10
+ 'releasedThroughSequence',
11
+ 'receivedBytes',
12
+ 'releasedBytes',
13
+ 'finalDigest',
14
+ 'status',
15
+ ], 'control stream');
16
+ const stream = value;
17
+ if (stream.schemaVersion !== 1)
18
+ throw new TypeError('stream_sequence_invalid');
19
+ assertString(stream.streamId, 'streamId');
20
+ assertString(stream.runId, 'runId');
21
+ assertSafeInteger(stream.generation, 'generation', 1);
22
+ assertSafeInteger(stream.nextSequence, 'nextSequence');
23
+ assertSafeInteger(stream.releasedThroughSequence, 'releasedThroughSequence', -1);
24
+ assertSafeInteger(stream.receivedBytes, 'receivedBytes');
25
+ assertSafeInteger(stream.releasedBytes, 'releasedBytes');
26
+ if (stream.releasedBytes > stream.receivedBytes)
27
+ throw new TypeError('stream_sequence_invalid');
28
+ if (stream.finalDigest !== null)
29
+ assertDigest(stream.finalDigest, 'finalDigest');
30
+ assertOneOf(stream.status, ['open', 'completed', 'cancelled', 'failed'], 'stream status');
31
+ return deepFreeze(structuredClone(stream));
32
+ }
33
+ export function validateControlStreamChunkV1(value, limits) {
34
+ assertExactKeys(value, [
35
+ 'schemaVersion',
36
+ 'chunkId',
37
+ 'streamId',
38
+ 'generation',
39
+ 'sequence',
40
+ 'fromByte',
41
+ 'throughByteExclusive',
42
+ 'utf8Bytes',
43
+ 'content',
44
+ 'contentDigest',
45
+ ], 'control stream chunk');
46
+ const chunk = value;
47
+ if (chunk.schemaVersion !== 1)
48
+ throw new TypeError('stream_sequence_invalid');
49
+ assertString(chunk.chunkId, 'chunkId');
50
+ assertString(chunk.streamId, 'streamId');
51
+ assertSafeInteger(chunk.generation, 'generation', 1);
52
+ assertSafeInteger(chunk.sequence, 'sequence');
53
+ assertSafeInteger(chunk.fromByte, 'fromByte');
54
+ assertSafeInteger(chunk.throughByteExclusive, 'throughByteExclusive', 1);
55
+ assertSafeInteger(chunk.utf8Bytes, 'utf8Bytes', 1);
56
+ assertString(chunk.content, 'content');
57
+ assertDigest(chunk.contentDigest, 'contentDigest');
58
+ const bytes = utf8ByteLength(chunk.content);
59
+ if (bytes !== chunk.utf8Bytes ||
60
+ chunk.throughByteExclusive !== chunk.fromByte + bytes ||
61
+ bytes > limits.maxOutputChunkBytes ||
62
+ chunk.contentDigest !==
63
+ digestControlJsonV1('assessment-target', chunk.content))
64
+ throw new TypeError('stream_content_mismatch');
65
+ return deepFreeze(structuredClone(chunk));
66
+ }
67
+ export function createStreamWindowV1(stream, chunks) {
68
+ if (chunks.length < 1 ||
69
+ chunks.some((chunk, index) => chunk.streamId !== stream.streamId ||
70
+ chunk.generation !== stream.generation ||
71
+ (index > 0 &&
72
+ (chunk.sequence !== chunks[index - 1].sequence + 1 ||
73
+ chunk.fromByte !== chunks[index - 1].throughByteExclusive))))
74
+ throw new TypeError('stream_sequence_invalid');
75
+ const first = chunks[0];
76
+ const last = chunks[chunks.length - 1];
77
+ const material = {
78
+ schemaVersion: 1,
79
+ streamId: stream.streamId,
80
+ generation: stream.generation,
81
+ fromSequence: first.sequence,
82
+ throughSequence: last.sequence,
83
+ fromByte: first.fromByte,
84
+ throughByteExclusive: last.throughByteExclusive,
85
+ utf8Bytes: last.throughByteExclusive - first.fromByte,
86
+ chunkDigests: chunks.map((chunk) => chunk.contentDigest),
87
+ };
88
+ return deepFreeze({
89
+ ...material,
90
+ windowDigest: digestControlJsonV1('stream-window', material),
91
+ });
92
+ }
93
+ //# sourceMappingURL=streams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streams.js","sourceRoot":"","sources":["../src/streams.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { DiagnosticV1 } from './types.js';
2
+ export interface ControlDiagnosticSinkV1 {
3
+ emit(diagnostic: DiagnosticV1): Promise<void>;
4
+ }
5
+ export interface DiagnosticDeliverySummaryV1 {
6
+ readonly attempted: number;
7
+ readonly delivered: number;
8
+ readonly unavailable: number;
9
+ }
10
+ /** Diagnostics are already redacted; sink failure never changes a control decision. */
11
+ export declare function emitControlDiagnosticsBestEffortV1(diagnostics: readonly DiagnosticV1[], sink: ControlDiagnosticSinkV1): Promise<DiagnosticDeliverySummaryV1>;
12
+ //# sourceMappingURL=telemetry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG/C,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,UAAU,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,uFAAuF;AACvF,wBAAsB,kCAAkC,CACtD,WAAW,EAAE,SAAS,YAAY,EAAE,EACpC,IAAI,EAAE,uBAAuB,GAC5B,OAAO,CAAC,2BAA2B,CAAC,CAetC"}
@@ -0,0 +1,20 @@
1
+ import { deepFreeze } from './validation.js';
2
+ /** Diagnostics are already redacted; sink failure never changes a control decision. */
3
+ export async function emitControlDiagnosticsBestEffortV1(diagnostics, sink) {
4
+ let delivered = 0;
5
+ for (const diagnostic of diagnostics) {
6
+ try {
7
+ await sink.emit(deepFreeze(structuredClone(diagnostic)));
8
+ delivered += 1;
9
+ }
10
+ catch {
11
+ // Observability is deliberately non-authoritative.
12
+ }
13
+ }
14
+ return deepFreeze({
15
+ attempted: diagnostics.length,
16
+ delivered,
17
+ unavailable: diagnostics.length - delivered,
18
+ });
19
+ }
20
+ //# sourceMappingURL=telemetry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAY7C,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACtD,WAAoC,EACpC,IAA6B;IAE7B,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACzD,SAAS,IAAI,CAAC,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,mDAAmD;QACrD,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;QAChB,SAAS,EAAE,WAAW,CAAC,MAAM;QAC7B,SAAS;QACT,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,SAAS;KAC5C,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,221 @@
1
+ import type { ToolHandler, ToolInvocationContext, ToolInvocationResult, ToolRegistry } from '@agentplat/tools';
2
+ export declare const MAX_ACTION_INPUT_BYTES_V1 = 65536;
3
+ export declare const MAX_CONTROL_JSON_DEPTH_V1 = 64;
4
+ export declare const MAX_CONTROL_JSON_NODES_V1 = 65536;
5
+ export type ControlJson = null | boolean | number | string | readonly ControlJson[] | {
6
+ readonly [key: string]: ControlJson;
7
+ };
8
+ export type ControlJsonObject = {
9
+ readonly [key: string]: ControlJson;
10
+ };
11
+ export type GrantStatus = 'issued' | 'reserved' | 'dispatched' | 'failed' | 'indeterminate' | 'expired';
12
+ export interface StandaloneActionScope {
13
+ readonly schemaVersion: 1;
14
+ readonly kind: 'standalone';
15
+ readonly tenantId: string;
16
+ readonly runId: string;
17
+ readonly agentId: string;
18
+ readonly organizationId: string | null;
19
+ readonly workspaceId: string | null;
20
+ readonly policyId: string;
21
+ readonly policyVersion: number;
22
+ }
23
+ export interface CoordinatedActionScope {
24
+ readonly schemaVersion: 1;
25
+ readonly kind: 'coordinated';
26
+ readonly tenantId: string;
27
+ readonly runId: string;
28
+ readonly agentId: string;
29
+ readonly policyId: string;
30
+ readonly policyVersion: number;
31
+ readonly meshId: string;
32
+ readonly objectiveId: string;
33
+ readonly objectiveRevision: number;
34
+ readonly workItemId: string;
35
+ readonly workItemRevision: number;
36
+ readonly peerId: string;
37
+ readonly instanceId: string;
38
+ readonly assignmentAuthorityId: string;
39
+ readonly assignmentEpoch: number;
40
+ readonly fencingToken: string;
41
+ readonly leaseExpiresAtLogicalMs: number;
42
+ readonly authorityGeneration: number;
43
+ readonly objectiveTerminal: boolean;
44
+ readonly workTerminal: boolean;
45
+ }
46
+ export type ActionScope = StandaloneActionScope | CoordinatedActionScope;
47
+ export interface ActionBinding {
48
+ readonly schemaVersion: 1;
49
+ readonly actionBindingId: string;
50
+ readonly actionBindingVersion: number;
51
+ readonly namespace: string;
52
+ readonly toolId: string;
53
+ readonly operation: string;
54
+ readonly dispatcherId: string;
55
+ readonly dispatcherVersion: number;
56
+ readonly contextResolverId: string;
57
+ readonly contextResolverVersion: number;
58
+ readonly fencingMode: 'local_only' | 'downstream_atomic';
59
+ readonly handlerDigest: string;
60
+ }
61
+ export interface ActionReservation {
62
+ readonly schemaVersion: 1;
63
+ readonly reservationId: string;
64
+ readonly dispatchAttemptId: string;
65
+ readonly reservedByGatewayId: string;
66
+ readonly reservedStateGeneration: number;
67
+ readonly authorityGeneration: number | null;
68
+ readonly fencingToken: string | null;
69
+ readonly reservedAtLogicalMs: number;
70
+ }
71
+ export interface ActionGrant {
72
+ readonly schemaVersion: 1;
73
+ readonly grantId: string;
74
+ readonly stateGeneration: number;
75
+ readonly scope: ActionScope;
76
+ readonly scopeDigest: string;
77
+ readonly namespace: string;
78
+ readonly toolId: string;
79
+ readonly operation: string;
80
+ readonly actionBindingId: string;
81
+ readonly actionBindingVersion: number;
82
+ readonly handlerDigest: string;
83
+ readonly inputDigest: string;
84
+ readonly actionDigest: string;
85
+ readonly assessmentRequestId: string;
86
+ readonly assessmentId: string;
87
+ readonly assessmentTargetDigest: string;
88
+ readonly idempotencyKey: string;
89
+ readonly issuedAtLogicalMs: number;
90
+ readonly expiresAtLogicalMs: number;
91
+ readonly singleUse: true;
92
+ readonly status: GrantStatus;
93
+ readonly reservation: ActionReservation | null;
94
+ }
95
+ export interface ActionIdempotencyRecord {
96
+ readonly schemaVersion: 1;
97
+ readonly scopeDigest: string;
98
+ readonly idempotencyKey: string;
99
+ readonly actionDigest: string;
100
+ readonly grantId: string;
101
+ readonly retainedOutcome: GrantStatus;
102
+ }
103
+ export interface ActionDispatchPermit {
104
+ readonly schemaVersion: 1;
105
+ readonly grantId: string;
106
+ readonly reservationId: string;
107
+ readonly dispatchAttemptId: string;
108
+ readonly gatewayId: string;
109
+ readonly scopeDigest: string;
110
+ readonly actionDigest: string;
111
+ readonly idempotencyKey: string;
112
+ readonly authorityGeneration: number | null;
113
+ readonly fencingToken: string | null;
114
+ }
115
+ export type AuthorityResult = {
116
+ readonly schemaVersion: 1;
117
+ readonly status: 'current';
118
+ readonly resolverId: string;
119
+ readonly resolverVersion: number;
120
+ readonly scopeDigest: string;
121
+ readonly actionDigest: string;
122
+ readonly scope: ActionScope;
123
+ readonly authorityGeneration: number | null;
124
+ readonly fencingToken: string | null;
125
+ } | {
126
+ readonly schemaVersion: 1;
127
+ readonly status: 'stale' | 'unavailable';
128
+ readonly resolverId: string;
129
+ readonly resolverVersion: number;
130
+ readonly scopeDigest: string;
131
+ readonly actionDigest: string;
132
+ };
133
+ export interface ActionAuthorityResolver {
134
+ readonly resolverId: string;
135
+ readonly resolverVersion: number;
136
+ resolve(scope: ActionScope, actionDigest: string, logicalTimeMs: number): Promise<AuthorityResult>;
137
+ }
138
+ export interface ActionAssessmentResolver {
139
+ readonly assessorId: string;
140
+ readonly assessorVersion: number;
141
+ /**
142
+ * Atomically consumes the exact assessment on first use. Repeating the call
143
+ * for the same reserved grant is an idempotent currentness check and must
144
+ * return false after run cancellation, generation advance or revocation.
145
+ */
146
+ consumeCurrent(grant: ActionGrant, logicalTimeMs: number): Promise<boolean>;
147
+ }
148
+ export interface ActionInvocationContextResolver {
149
+ readonly contextResolverId: string;
150
+ readonly contextResolverVersion: number;
151
+ resolve(scope: ActionScope, binding: ActionBinding): Promise<ToolInvocationContext>;
152
+ }
153
+ export interface ActionDispatcher {
154
+ readonly dispatcherId: string;
155
+ readonly dispatcherVersion: number;
156
+ readonly fencingMode: 'local_only' | 'downstream_atomic';
157
+ dispatch(input: {
158
+ readonly binding: ActionBinding;
159
+ readonly input: ControlJsonObject;
160
+ readonly context: ToolInvocationContext;
161
+ readonly permit: ActionDispatchPermit;
162
+ }): Promise<ToolInvocationResult>;
163
+ }
164
+ export interface ActionGatewayLimitsV1 {
165
+ readonly maxActionInputBytes?: number;
166
+ }
167
+ export declare function canonicalControlJson(value: ControlJson): string;
168
+ export declare function controlDigest(domain: 'action' | 'action-input' | 'scope' | 'grant' | 'handler-binding' | 'message', value: ControlJson): string;
169
+ export declare function actionInputDigest(input: ControlJsonObject): string;
170
+ export declare function scopeDigest(scope: ActionScope): string;
171
+ export declare function actionDigest(grant: ActionGrant, binding: ActionBinding): string;
172
+ declare const grantReserveCapability: unique symbol;
173
+ declare const grantOutcomeCapability: unique symbol;
174
+ /** In-memory, single-process ledger. Reservation is synchronous and linearized. */
175
+ export declare class LocalGrantLedger {
176
+ readonly gatewayId: string;
177
+ private readonly grants;
178
+ private readonly idempotency;
179
+ private highWater;
180
+ constructor(gatewayId: string);
181
+ issue(grant: ActionGrant): ActionGrant;
182
+ [grantReserveCapability](grantId: string, gatewayId: string, time: number, authority: AuthorityResult): ActionGrant;
183
+ [grantOutcomeCapability](grantId: string, reservationId: string, dispatchAttemptId: string, status: Extract<GrantStatus, 'dispatched' | 'failed' | 'indeterminate'>): ActionGrant;
184
+ snapshot(): ActionGrantLedgerSnapshot;
185
+ restore(snapshot: ActionGrantLedgerSnapshot): void;
186
+ get(grantId: string): ActionGrant | undefined;
187
+ private replace;
188
+ private expire;
189
+ private require;
190
+ private time;
191
+ }
192
+ export interface ActionGrantLedgerSnapshot {
193
+ readonly schemaVersion: 1;
194
+ readonly highWaterLogicalMs: number;
195
+ readonly grants: readonly ActionGrant[];
196
+ }
197
+ export declare function normalizeAuthorityResultV1(resolver: Pick<ActionAuthorityResolver, 'resolverId' | 'resolverVersion'>, scope: ActionScope, actionDigestValue: string, value: unknown): AuthorityResult;
198
+ export declare function boundedCanonicalControlJsonV1(value: unknown, maximumBytes: number, reasonCode: 'action_not_permitted' | 'message_not_permitted'): string;
199
+ export declare function isActionScopeV1(value: unknown): value is ActionScope;
200
+ export declare class ActionGateway {
201
+ readonly ledger: LocalGrantLedger;
202
+ readonly binding: ActionBinding;
203
+ readonly dispatcher: ActionDispatcher;
204
+ readonly contextResolver: ActionInvocationContextResolver;
205
+ readonly authorityResolver: ActionAuthorityResolver;
206
+ readonly assessmentResolver: ActionAssessmentResolver;
207
+ readonly maxActionInputBytes: number;
208
+ constructor(ledger: LocalGrantLedger, binding: ActionBinding, dispatcher: ActionDispatcher, contextResolver: ActionInvocationContextResolver, authorityResolver: ActionAuthorityResolver, assessmentResolver: ActionAssessmentResolver, limits?: ActionGatewayLimitsV1);
209
+ invoke(input: {
210
+ readonly schemaVersion: 1;
211
+ readonly grantId: string;
212
+ readonly input?: ControlJsonObject;
213
+ readonly logicalTimeMs: number;
214
+ }): Promise<ToolInvocationResult>;
215
+ }
216
+ export declare function freezeToolRegistryBinding(registry: ToolRegistry, toolId: string, binding: Omit<ActionBinding, 'handlerDigest'>): Promise<{
217
+ readonly binding: ActionBinding;
218
+ readonly handler: ToolHandler;
219
+ }>;
220
+ export {};
221
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}