@arbiterhq/sdk 0.2.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/CHANGELOG.md +25 -0
- package/README.md +563 -0
- package/dist/approvalMapping.d.ts +26 -0
- package/dist/approvalMapping.d.ts.map +1 -0
- package/dist/approvalMapping.js +27 -0
- package/dist/approvalMapping.js.map +1 -0
- package/dist/arbiter.d.ts +23 -0
- package/dist/arbiter.d.ts.map +1 -0
- package/dist/arbiter.js +58 -0
- package/dist/arbiter.js.map +1 -0
- package/dist/arbiterAdmin.d.ts +32 -0
- package/dist/arbiterAdmin.d.ts.map +1 -0
- package/dist/arbiterAdmin.js +125 -0
- package/dist/arbiterAdmin.js.map +1 -0
- package/dist/errors.d.ts +15 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +36 -0
- package/dist/errors.js.map +1 -0
- package/dist/httpClient.d.ts +16 -0
- package/dist/httpClient.d.ts.map +1 -0
- package/dist/httpClient.js +45 -0
- package/dist/httpClient.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/manifest.d.ts +11 -0
- package/dist/manifest.d.ts.map +1 -0
- package/dist/manifest.js +51 -0
- package/dist/manifest.js.map +1 -0
- package/dist/manifestValidation.d.ts +9 -0
- package/dist/manifestValidation.d.ts.map +1 -0
- package/dist/manifestValidation.js +456 -0
- package/dist/manifestValidation.js.map +1 -0
- package/dist/resolveBaseUrl.d.ts +3 -0
- package/dist/resolveBaseUrl.d.ts.map +1 -0
- package/dist/resolveBaseUrl.js +12 -0
- package/dist/resolveBaseUrl.js.map +1 -0
- package/dist/runtime/ArbiterRuntime.d.ts +30 -0
- package/dist/runtime/ArbiterRuntime.d.ts.map +1 -0
- package/dist/runtime/ArbiterRuntime.js +163 -0
- package/dist/runtime/ArbiterRuntime.js.map +1 -0
- package/dist/runtime/credentialKind.d.ts +5 -0
- package/dist/runtime/credentialKind.d.ts.map +1 -0
- package/dist/runtime/credentialKind.js +9 -0
- package/dist/runtime/credentialKind.js.map +1 -0
- package/dist/runtime/resolveRuntimeAgentExternalId.d.ts +9 -0
- package/dist/runtime/resolveRuntimeAgentExternalId.d.ts.map +1 -0
- package/dist/runtime/resolveRuntimeAgentExternalId.js +38 -0
- package/dist/runtime/resolveRuntimeAgentExternalId.js.map +1 -0
- package/dist/types.d.ts +382 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +2 -0
- package/dist/version.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1,456 @@
|
|
|
1
|
+
import { ArbiterValidationError } from './errors.js';
|
|
2
|
+
const SNAKE_CASE_ACTION = /^[a-z][a-z0-9_]*$/;
|
|
3
|
+
const RESOURCE_SOURCES = new Set(['dashboard', 'sdk', 'discovered']);
|
|
4
|
+
const RESOURCE_MANAGEMENTS = new Set(['dashboard', 'sdk', 'manifest', 'discovered']);
|
|
5
|
+
const PERMISSION_STATUSES = new Set([
|
|
6
|
+
'pending_review',
|
|
7
|
+
'allowed',
|
|
8
|
+
'denied',
|
|
9
|
+
'approval_required',
|
|
10
|
+
]);
|
|
11
|
+
const AGENT_STATUSES = new Set([
|
|
12
|
+
'pending_review',
|
|
13
|
+
'active',
|
|
14
|
+
'disabled',
|
|
15
|
+
'expired',
|
|
16
|
+
'archived',
|
|
17
|
+
]);
|
|
18
|
+
const RISK_TIERS = new Set(['low', 'medium', 'high', 'critical']);
|
|
19
|
+
const OWNER_TYPES = new Set(['user', 'team', 'service_account']);
|
|
20
|
+
const POLICY_DECISIONS = new Set(['allow', 'deny', 'hold']);
|
|
21
|
+
const POLICY_CONDITION_OPERATORS = new Set(['AND', 'OR']);
|
|
22
|
+
const POLICY_OPERATORS = new Set([
|
|
23
|
+
'>',
|
|
24
|
+
'>=',
|
|
25
|
+
'<',
|
|
26
|
+
'<=',
|
|
27
|
+
'=',
|
|
28
|
+
'==',
|
|
29
|
+
'!=',
|
|
30
|
+
'contains',
|
|
31
|
+
'not_contains',
|
|
32
|
+
'starts_with',
|
|
33
|
+
'ends_with',
|
|
34
|
+
'in',
|
|
35
|
+
'not_in',
|
|
36
|
+
'exists',
|
|
37
|
+
'not_exists',
|
|
38
|
+
'is_null',
|
|
39
|
+
'is_not_null',
|
|
40
|
+
'between',
|
|
41
|
+
'not_between',
|
|
42
|
+
]);
|
|
43
|
+
const VALUELESS_OPERATORS = new Set([
|
|
44
|
+
'exists',
|
|
45
|
+
'not_exists',
|
|
46
|
+
'is_null',
|
|
47
|
+
'is_not_null',
|
|
48
|
+
]);
|
|
49
|
+
const WORKSPACE_KEYS = new Set(['agents', 'permissions', 'policies']);
|
|
50
|
+
const AGENT_KEYS = new Set([
|
|
51
|
+
'externalId',
|
|
52
|
+
'name',
|
|
53
|
+
'description',
|
|
54
|
+
'source',
|
|
55
|
+
'management',
|
|
56
|
+
'owner',
|
|
57
|
+
'ownerSlug',
|
|
58
|
+
'ownerType',
|
|
59
|
+
'riskTier',
|
|
60
|
+
'status',
|
|
61
|
+
'expiresAt',
|
|
62
|
+
'approvedBy',
|
|
63
|
+
'grants',
|
|
64
|
+
]);
|
|
65
|
+
const PERMISSION_KEYS = new Set([
|
|
66
|
+
'action',
|
|
67
|
+
'description',
|
|
68
|
+
'status',
|
|
69
|
+
'source',
|
|
70
|
+
'management',
|
|
71
|
+
'assignedAgents',
|
|
72
|
+
'displayName',
|
|
73
|
+
'category',
|
|
74
|
+
'documentation',
|
|
75
|
+
'tags',
|
|
76
|
+
'metadata',
|
|
77
|
+
]);
|
|
78
|
+
const POLICY_KEYS = new Set([
|
|
79
|
+
'id',
|
|
80
|
+
'action',
|
|
81
|
+
'field',
|
|
82
|
+
'operator',
|
|
83
|
+
'value',
|
|
84
|
+
'conditions',
|
|
85
|
+
'conditionOperator',
|
|
86
|
+
'priority',
|
|
87
|
+
'displayName',
|
|
88
|
+
'decision',
|
|
89
|
+
'source',
|
|
90
|
+
'management',
|
|
91
|
+
]);
|
|
92
|
+
const GRANT_KEYS = new Set(['action', 'grantedBy', 'grantedReason']);
|
|
93
|
+
const OWNER_KEYS = new Set(['slug', 'type']);
|
|
94
|
+
const CONDITION_KEYS = new Set(['field', 'operator', 'value', 'type']);
|
|
95
|
+
function describeReceived(value) {
|
|
96
|
+
if (value === null) {
|
|
97
|
+
return 'null';
|
|
98
|
+
}
|
|
99
|
+
if (Array.isArray(value)) {
|
|
100
|
+
return 'array';
|
|
101
|
+
}
|
|
102
|
+
return typeof value;
|
|
103
|
+
}
|
|
104
|
+
function assertUnknownFields(record, allowedKeys, context) {
|
|
105
|
+
for (const key of Object.keys(record)) {
|
|
106
|
+
if (!allowedKeys.has(key)) {
|
|
107
|
+
throw new ArbiterValidationError(`Unknown field "${key}" on ${context}.`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
function assertSnakeCaseAction(action, context) {
|
|
112
|
+
if (!SNAKE_CASE_ACTION.test(action)) {
|
|
113
|
+
throw new ArbiterValidationError(`${context}: action must be snake_case (received "${action}").`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
function assertEnumValue(value, allowed, context, field) {
|
|
117
|
+
if (typeof value !== 'string' || !allowed.has(value)) {
|
|
118
|
+
throw new ArbiterValidationError(`${context}: invalid ${field} (received ${describeReceived(value)}).`);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
function assertNonEmptyString(value, context, field) {
|
|
122
|
+
if (typeof value !== 'string' || value.length === 0) {
|
|
123
|
+
throw new ArbiterValidationError(`${context}: ${field} must be a non-empty string.`);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
function assertOptionalIsoDateTime(value, context, field) {
|
|
127
|
+
if (value === undefined) {
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
if (typeof value !== 'string' || Number.isNaN(Date.parse(value))) {
|
|
131
|
+
throw new ArbiterValidationError(`${context}: ${field} must be an ISO 8601 datetime string.`);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
function isPolicyValue(value) {
|
|
135
|
+
if (value === null) {
|
|
136
|
+
return true;
|
|
137
|
+
}
|
|
138
|
+
if (typeof value === 'number' || typeof value === 'string' || typeof value === 'boolean') {
|
|
139
|
+
return true;
|
|
140
|
+
}
|
|
141
|
+
if (Array.isArray(value)) {
|
|
142
|
+
return value.length <= 100 && value.every((entry) => isPolicyValue(entry) && !Array.isArray(entry));
|
|
143
|
+
}
|
|
144
|
+
return false;
|
|
145
|
+
}
|
|
146
|
+
function validateGrantMutation(grant, context) {
|
|
147
|
+
if (typeof grant !== 'object' || grant === null || Array.isArray(grant)) {
|
|
148
|
+
throw new ArbiterValidationError(`${context}: grant must be an object.`);
|
|
149
|
+
}
|
|
150
|
+
const record = grant;
|
|
151
|
+
assertUnknownFields(record, GRANT_KEYS, context);
|
|
152
|
+
assertNonEmptyString(record.action, context, 'action');
|
|
153
|
+
assertSnakeCaseAction(record.action, context);
|
|
154
|
+
if (record.grantedBy !== undefined) {
|
|
155
|
+
assertNonEmptyString(record.grantedBy, context, 'grantedBy');
|
|
156
|
+
}
|
|
157
|
+
if (record.grantedReason !== undefined && typeof record.grantedReason !== 'string') {
|
|
158
|
+
throw new ArbiterValidationError(`${context}: grantedReason must be a string.`);
|
|
159
|
+
}
|
|
160
|
+
if (typeof record.grantedReason === 'string' &&
|
|
161
|
+
record.grantedReason.length > 500) {
|
|
162
|
+
throw new ArbiterValidationError(`${context}: grantedReason must be at most 500 characters.`);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
function validateManifestOwner(owner, context) {
|
|
166
|
+
if (typeof owner !== 'object' || owner === null || Array.isArray(owner)) {
|
|
167
|
+
throw new ArbiterValidationError(`${context}: owner must be an object.`);
|
|
168
|
+
}
|
|
169
|
+
const record = owner;
|
|
170
|
+
assertUnknownFields(record, OWNER_KEYS, context);
|
|
171
|
+
assertNonEmptyString(record.slug, context, 'owner.slug');
|
|
172
|
+
assertEnumValue(record.type, OWNER_TYPES, context, 'owner.type');
|
|
173
|
+
}
|
|
174
|
+
function validatePolicyCondition(condition, context) {
|
|
175
|
+
if (typeof condition !== 'object' || condition === null || Array.isArray(condition)) {
|
|
176
|
+
throw new ArbiterValidationError(`${context}: condition must be an object.`);
|
|
177
|
+
}
|
|
178
|
+
const record = condition;
|
|
179
|
+
assertUnknownFields(record, CONDITION_KEYS, context);
|
|
180
|
+
assertNonEmptyString(record.field, context, 'field');
|
|
181
|
+
if (typeof record.field === 'string' && record.field.length > 256) {
|
|
182
|
+
throw new ArbiterValidationError(`${context}: field is too long (max 256 characters).`);
|
|
183
|
+
}
|
|
184
|
+
assertEnumValue(record.operator, POLICY_OPERATORS, context, 'operator');
|
|
185
|
+
const operator = record.operator;
|
|
186
|
+
if (!VALUELESS_OPERATORS.has(operator) && record.value === undefined) {
|
|
187
|
+
throw new ArbiterValidationError(`${context}: operator "${operator}" requires a value.`);
|
|
188
|
+
}
|
|
189
|
+
if (record.value !== undefined && !isPolicyValue(record.value)) {
|
|
190
|
+
throw new ArbiterValidationError(`${context}: value must be a scalar or array of scalars.`);
|
|
191
|
+
}
|
|
192
|
+
if ((operator === 'in' || operator === 'not_in') &&
|
|
193
|
+
record.value !== undefined &&
|
|
194
|
+
!Array.isArray(record.value)) {
|
|
195
|
+
throw new ArbiterValidationError(`${context}: operator "${operator}" requires an array value.`);
|
|
196
|
+
}
|
|
197
|
+
if (record.type !== undefined && record.type !== null && typeof record.type !== 'string') {
|
|
198
|
+
throw new ArbiterValidationError(`${context}: type must be a string or null.`);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
export function validateManifestAgent(agent, index) {
|
|
202
|
+
const context = `agents[${index}]`;
|
|
203
|
+
if (typeof agent !== 'object' || agent === null || Array.isArray(agent)) {
|
|
204
|
+
throw new ArbiterValidationError(`${context}: agent must be an object.`);
|
|
205
|
+
}
|
|
206
|
+
const record = agent;
|
|
207
|
+
assertUnknownFields(record, AGENT_KEYS, context);
|
|
208
|
+
assertNonEmptyString(record.name, context, 'name');
|
|
209
|
+
if (record.externalId !== undefined) {
|
|
210
|
+
assertNonEmptyString(record.externalId, context, 'externalId');
|
|
211
|
+
}
|
|
212
|
+
if (record.description !== undefined && typeof record.description !== 'string') {
|
|
213
|
+
throw new ArbiterValidationError(`${context}: description must be a string.`);
|
|
214
|
+
}
|
|
215
|
+
if (record.source !== undefined) {
|
|
216
|
+
assertEnumValue(record.source, RESOURCE_SOURCES, context, 'source');
|
|
217
|
+
}
|
|
218
|
+
if (record.management !== undefined) {
|
|
219
|
+
assertEnumValue(record.management, RESOURCE_MANAGEMENTS, context, 'management');
|
|
220
|
+
}
|
|
221
|
+
if (record.owner !== undefined) {
|
|
222
|
+
validateManifestOwner(record.owner, context);
|
|
223
|
+
}
|
|
224
|
+
if (record.ownerSlug !== undefined) {
|
|
225
|
+
assertNonEmptyString(record.ownerSlug, context, 'ownerSlug');
|
|
226
|
+
}
|
|
227
|
+
if (record.ownerType !== undefined) {
|
|
228
|
+
assertEnumValue(record.ownerType, OWNER_TYPES, context, 'ownerType');
|
|
229
|
+
}
|
|
230
|
+
if (record.riskTier !== undefined) {
|
|
231
|
+
assertEnumValue(record.riskTier, RISK_TIERS, context, 'riskTier');
|
|
232
|
+
}
|
|
233
|
+
if (record.status !== undefined) {
|
|
234
|
+
assertEnumValue(record.status, AGENT_STATUSES, context, 'status');
|
|
235
|
+
}
|
|
236
|
+
assertOptionalIsoDateTime(record.expiresAt, context, 'expiresAt');
|
|
237
|
+
if (record.approvedBy !== undefined && typeof record.approvedBy !== 'string') {
|
|
238
|
+
throw new ArbiterValidationError(`${context}: approvedBy must be a string.`);
|
|
239
|
+
}
|
|
240
|
+
if (record.grants !== undefined) {
|
|
241
|
+
if (!Array.isArray(record.grants)) {
|
|
242
|
+
throw new ArbiterValidationError(`${context}: grants must be an array.`);
|
|
243
|
+
}
|
|
244
|
+
record.grants.forEach((grant, grantIndex) => {
|
|
245
|
+
validateGrantMutation(grant, `${context}.grants[${grantIndex}]`);
|
|
246
|
+
});
|
|
247
|
+
}
|
|
248
|
+
return agent;
|
|
249
|
+
}
|
|
250
|
+
export function validateManifestPermission(permission, index) {
|
|
251
|
+
const context = `permissions[${index}]`;
|
|
252
|
+
if (typeof permission !== 'object' || permission === null || Array.isArray(permission)) {
|
|
253
|
+
throw new ArbiterValidationError(`${context}: permission must be an object.`);
|
|
254
|
+
}
|
|
255
|
+
const record = permission;
|
|
256
|
+
assertUnknownFields(record, PERMISSION_KEYS, context);
|
|
257
|
+
assertNonEmptyString(record.action, context, 'action');
|
|
258
|
+
assertSnakeCaseAction(record.action, context);
|
|
259
|
+
if (record.description !== undefined && typeof record.description !== 'string') {
|
|
260
|
+
throw new ArbiterValidationError(`${context}: description must be a string.`);
|
|
261
|
+
}
|
|
262
|
+
if (record.status !== undefined) {
|
|
263
|
+
assertEnumValue(record.status, PERMISSION_STATUSES, context, 'status');
|
|
264
|
+
}
|
|
265
|
+
if (record.source !== undefined) {
|
|
266
|
+
assertEnumValue(record.source, RESOURCE_SOURCES, context, 'source');
|
|
267
|
+
}
|
|
268
|
+
if (record.management !== undefined) {
|
|
269
|
+
assertEnumValue(record.management, RESOURCE_MANAGEMENTS, context, 'management');
|
|
270
|
+
}
|
|
271
|
+
if (record.assignedAgents !== undefined) {
|
|
272
|
+
if (!Array.isArray(record.assignedAgents)) {
|
|
273
|
+
throw new ArbiterValidationError(`${context}: assignedAgents must be an array.`);
|
|
274
|
+
}
|
|
275
|
+
record.assignedAgents.forEach((assignedAgent, agentIndex) => {
|
|
276
|
+
assertNonEmptyString(assignedAgent, `${context}.assignedAgents[${agentIndex}]`, 'assigned agent id');
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
for (const field of ['displayName', 'category', 'documentation']) {
|
|
280
|
+
const value = record[field];
|
|
281
|
+
if (value !== undefined && value !== null && typeof value !== 'string') {
|
|
282
|
+
throw new ArbiterValidationError(`${context}: ${field} must be a string or null.`);
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
if (record.tags !== undefined && record.tags !== null) {
|
|
286
|
+
if (!Array.isArray(record.tags)) {
|
|
287
|
+
throw new ArbiterValidationError(`${context}: tags must be an array or null.`);
|
|
288
|
+
}
|
|
289
|
+
record.tags.forEach((tag, tagIndex) => {
|
|
290
|
+
if (typeof tag !== 'string') {
|
|
291
|
+
throw new ArbiterValidationError(`${context}.tags[${tagIndex}] must be a string.`);
|
|
292
|
+
}
|
|
293
|
+
});
|
|
294
|
+
}
|
|
295
|
+
if (record.metadata !== undefined &&
|
|
296
|
+
record.metadata !== null &&
|
|
297
|
+
(typeof record.metadata !== 'object' || Array.isArray(record.metadata))) {
|
|
298
|
+
throw new ArbiterValidationError(`${context}: metadata must be an object or null.`);
|
|
299
|
+
}
|
|
300
|
+
return permission;
|
|
301
|
+
}
|
|
302
|
+
export function validateManifestPolicy(policy, index) {
|
|
303
|
+
const context = `policies[${index}]`;
|
|
304
|
+
if (typeof policy !== 'object' || policy === null || Array.isArray(policy)) {
|
|
305
|
+
throw new ArbiterValidationError(`${context}: policy must be an object.`);
|
|
306
|
+
}
|
|
307
|
+
const record = policy;
|
|
308
|
+
assertUnknownFields(record, POLICY_KEYS, context);
|
|
309
|
+
if (record.id !== undefined) {
|
|
310
|
+
assertNonEmptyString(record.id, context, 'id');
|
|
311
|
+
}
|
|
312
|
+
assertNonEmptyString(record.action, context, 'action');
|
|
313
|
+
assertSnakeCaseAction(record.action, context);
|
|
314
|
+
const hasLegacy = record.field !== undefined &&
|
|
315
|
+
record.operator !== undefined &&
|
|
316
|
+
record.value !== undefined;
|
|
317
|
+
const hasConditions = Array.isArray(record.conditions) && record.conditions.length > 0;
|
|
318
|
+
if (!hasLegacy && !hasConditions) {
|
|
319
|
+
throw new ArbiterValidationError(`${context}: policy requires either field + operator + value OR conditions[].`);
|
|
320
|
+
}
|
|
321
|
+
if (record.field !== undefined) {
|
|
322
|
+
assertNonEmptyString(record.field, context, 'field');
|
|
323
|
+
}
|
|
324
|
+
if (record.operator !== undefined) {
|
|
325
|
+
assertEnumValue(record.operator, POLICY_OPERATORS, context, 'operator');
|
|
326
|
+
}
|
|
327
|
+
if (record.value !== undefined && !isPolicyValue(record.value)) {
|
|
328
|
+
throw new ArbiterValidationError(`${context}: value must be a scalar or array of scalars.`);
|
|
329
|
+
}
|
|
330
|
+
if (record.conditions !== undefined) {
|
|
331
|
+
if (!Array.isArray(record.conditions) || record.conditions.length === 0) {
|
|
332
|
+
throw new ArbiterValidationError(`${context}: conditions must be a non-empty array.`);
|
|
333
|
+
}
|
|
334
|
+
record.conditions.forEach((condition, conditionIndex) => {
|
|
335
|
+
validatePolicyCondition(condition, `${context}.conditions[${conditionIndex}]`);
|
|
336
|
+
});
|
|
337
|
+
}
|
|
338
|
+
if (record.conditionOperator !== undefined) {
|
|
339
|
+
assertEnumValue(record.conditionOperator, POLICY_CONDITION_OPERATORS, context, 'conditionOperator');
|
|
340
|
+
}
|
|
341
|
+
if (record.priority !== undefined) {
|
|
342
|
+
if (typeof record.priority !== 'number' || !Number.isInteger(record.priority)) {
|
|
343
|
+
throw new ArbiterValidationError(`${context}: priority must be an integer.`);
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
if (record.displayName !== undefined) {
|
|
347
|
+
assertNonEmptyString(record.displayName, context, 'displayName');
|
|
348
|
+
}
|
|
349
|
+
assertEnumValue(record.decision, POLICY_DECISIONS, context, 'decision');
|
|
350
|
+
if (record.source !== undefined) {
|
|
351
|
+
assertEnumValue(record.source, RESOURCE_SOURCES, context, 'source');
|
|
352
|
+
}
|
|
353
|
+
if (record.management !== undefined) {
|
|
354
|
+
assertEnumValue(record.management, RESOURCE_MANAGEMENTS, context, 'management');
|
|
355
|
+
}
|
|
356
|
+
return policy;
|
|
357
|
+
}
|
|
358
|
+
export function validateManifestWorkspace(input) {
|
|
359
|
+
if (input === null || input === undefined) {
|
|
360
|
+
throw buildManifestWorkspaceError('validateManifestWorkspace', input);
|
|
361
|
+
}
|
|
362
|
+
if (typeof input === 'string') {
|
|
363
|
+
throw buildManifestWorkspaceError('validateManifestWorkspace', input);
|
|
364
|
+
}
|
|
365
|
+
if (typeof input !== 'object' || Array.isArray(input)) {
|
|
366
|
+
throw buildManifestWorkspaceError('validateManifestWorkspace', input);
|
|
367
|
+
}
|
|
368
|
+
const manifest = input;
|
|
369
|
+
if (isFullManifestDocument(manifest)) {
|
|
370
|
+
throw new ArbiterValidationError('You passed a full arbiter.yaml document. Extract doc.spec before calling SDK manifest methods.');
|
|
371
|
+
}
|
|
372
|
+
assertUnknownFields(manifest, WORKSPACE_KEYS, 'ManifestWorkspace');
|
|
373
|
+
if (!Array.isArray(manifest.agents) ||
|
|
374
|
+
!Array.isArray(manifest.permissions) ||
|
|
375
|
+
!Array.isArray(manifest.policies)) {
|
|
376
|
+
throw buildManifestWorkspaceError('validateManifestWorkspace', input);
|
|
377
|
+
}
|
|
378
|
+
const agents = manifest.agents.map((agent, index) => validateManifestAgent(agent, index));
|
|
379
|
+
const permissions = manifest.permissions.map((permission, index) => validateManifestPermission(permission, index));
|
|
380
|
+
const policies = manifest.policies.map((policy, index) => validateManifestPolicy(policy, index));
|
|
381
|
+
return {
|
|
382
|
+
agents,
|
|
383
|
+
permissions,
|
|
384
|
+
policies,
|
|
385
|
+
};
|
|
386
|
+
}
|
|
387
|
+
function isFullManifestDocument(record) {
|
|
388
|
+
const hasDocumentEnvelope = 'apiVersion' in record || 'kind' in record || 'metadata' in record;
|
|
389
|
+
const hasSpec = 'spec' in record;
|
|
390
|
+
const missingWorkspaceArrays = !Array.isArray(record.agents) ||
|
|
391
|
+
!Array.isArray(record.permissions) ||
|
|
392
|
+
!Array.isArray(record.policies);
|
|
393
|
+
return hasDocumentEnvelope && hasSpec && missingWorkspaceArrays;
|
|
394
|
+
}
|
|
395
|
+
function buildManifestWorkspaceError(methodName, received) {
|
|
396
|
+
const receivedLabel = describeReceived(received);
|
|
397
|
+
let message = `Expected ManifestWorkspace.\n\n` +
|
|
398
|
+
`${methodName}() expects:\n` +
|
|
399
|
+
`{\n` +
|
|
400
|
+
` agents: [...],\n` +
|
|
401
|
+
` permissions: [...],\n` +
|
|
402
|
+
` policies: [...]\n` +
|
|
403
|
+
`}\n\n` +
|
|
404
|
+
`Received: ${receivedLabel}`;
|
|
405
|
+
if (typeof received === 'string') {
|
|
406
|
+
message +=
|
|
407
|
+
'\n\nIf you are loading arbiter.yaml, parse the YAML first and pass doc.spec — not the raw file contents.';
|
|
408
|
+
}
|
|
409
|
+
else if (typeof received === 'object' &&
|
|
410
|
+
received !== null &&
|
|
411
|
+
!Array.isArray(received) &&
|
|
412
|
+
('spec' in received || 'apiVersion' in received || 'kind' in received)) {
|
|
413
|
+
message +=
|
|
414
|
+
'\n\nYou passed a full arbiter.yaml document. Extract doc.spec before calling SDK manifest methods.';
|
|
415
|
+
}
|
|
416
|
+
else if (typeof received === 'object' && received !== null && !Array.isArray(received)) {
|
|
417
|
+
const record = received;
|
|
418
|
+
if (!Array.isArray(record.agents)) {
|
|
419
|
+
message += '\n\nMissing or invalid agents array.';
|
|
420
|
+
}
|
|
421
|
+
if (!Array.isArray(record.permissions)) {
|
|
422
|
+
message += '\n\nMissing or invalid permissions array.';
|
|
423
|
+
}
|
|
424
|
+
if (!Array.isArray(record.policies)) {
|
|
425
|
+
message += '\n\nMissing or invalid policies array.';
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
return new ArbiterValidationError(message);
|
|
429
|
+
}
|
|
430
|
+
export function assertManifestWorkspace(input, methodName) {
|
|
431
|
+
try {
|
|
432
|
+
return validateManifestWorkspace(input);
|
|
433
|
+
}
|
|
434
|
+
catch (error) {
|
|
435
|
+
if (error instanceof ArbiterValidationError) {
|
|
436
|
+
if (error.message.startsWith('Expected ManifestWorkspace')) {
|
|
437
|
+
throw buildManifestWorkspaceError(methodName, input);
|
|
438
|
+
}
|
|
439
|
+
throw error;
|
|
440
|
+
}
|
|
441
|
+
throw error;
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
export function assertSyncManifestAgent(agent, index) {
|
|
445
|
+
validateManifestAgent(agent, index);
|
|
446
|
+
if (!agent.externalId?.length) {
|
|
447
|
+
throw new ArbiterValidationError(`agents[${index}] ("${agent.name}") requires externalId for sync/plan.`);
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
export function assertSyncManifestPolicy(policy, index) {
|
|
451
|
+
validateManifestPolicy(policy, index);
|
|
452
|
+
if (!policy.id?.length) {
|
|
453
|
+
throw new ArbiterValidationError(`policies[${index}] (action "${policy.action}") requires id for sync/plan.`);
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
//# sourceMappingURL=manifestValidation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifestValidation.js","sourceRoot":"","sources":["../src/manifestValidation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveBaseUrl.d.ts","sourceRoot":"","sources":["../src/resolveBaseUrl.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,iCAAiC,CAAC;AAElE,wBAAgB,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAYxD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export const PRODUCTION_BASE_URL = 'https://api.arbitertrust.com';
|
|
2
|
+
export function resolveBaseUrl(explicit) {
|
|
3
|
+
if (explicit !== undefined && explicit.trim().length > 0) {
|
|
4
|
+
return explicit.replace(/\/$/, '');
|
|
5
|
+
}
|
|
6
|
+
const fromEnv = process.env.ARBITER_BASE_URL?.trim();
|
|
7
|
+
if (fromEnv !== undefined && fromEnv.length > 0) {
|
|
8
|
+
return fromEnv.replace(/\/$/, '');
|
|
9
|
+
}
|
|
10
|
+
return PRODUCTION_BASE_URL;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=resolveBaseUrl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveBaseUrl.js","sourceRoot":"","sources":["../src/resolveBaseUrl.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG,8BAA8B,CAAC;AAElE,MAAM,UAAU,cAAc,CAAC,QAAiB;IAC9C,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,OAAO,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC;IAErD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChD,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,mBAAmB,CAAC;AAC7B,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { ApprovalResult, ArbiterRuntimeOptions, ConnectInput, ConnectResult, ConsumeReleaseResult, EvaluateResult, HeartbeatResult, PollApprovalOptions, ReceiptResult, RuntimeConsumeReleaseInput, RuntimeEvaluateInput } from '../types.js';
|
|
2
|
+
export declare class ArbiterRuntime {
|
|
3
|
+
private readonly client;
|
|
4
|
+
private readonly autoHeartbeat;
|
|
5
|
+
private readonly heartbeatIntervalMs;
|
|
6
|
+
private readonly environment;
|
|
7
|
+
private readonly usesWorkspaceApiKey;
|
|
8
|
+
private runtimeAgentExternalId;
|
|
9
|
+
private heartbeatTimer;
|
|
10
|
+
constructor(options: ArbiterRuntimeOptions);
|
|
11
|
+
connect(input?: ConnectInput): Promise<ConnectResult>;
|
|
12
|
+
heartbeat(): Promise<HeartbeatResult>;
|
|
13
|
+
shutdown(): void;
|
|
14
|
+
disconnect(): Promise<{
|
|
15
|
+
status: 'offline';
|
|
16
|
+
}>;
|
|
17
|
+
private startAutoHeartbeat;
|
|
18
|
+
private stopAutoHeartbeat;
|
|
19
|
+
evaluate(input: RuntimeEvaluateInput): Promise<EvaluateResult>;
|
|
20
|
+
getApproval(approvalRequestId: string): Promise<ApprovalResult>;
|
|
21
|
+
pollApproval(approvalRequestId: string, options?: PollApprovalOptions): Promise<ApprovalResult>;
|
|
22
|
+
consumeRelease(input: RuntimeConsumeReleaseInput): Promise<ConsumeReleaseResult>;
|
|
23
|
+
getReceipt(evaluationId: string): Promise<ReceiptResult>;
|
|
24
|
+
private buildConnectPayload;
|
|
25
|
+
private buildRuntimeSessionPayload;
|
|
26
|
+
private buildEvaluatePayload;
|
|
27
|
+
private buildConsumeReleasePayload;
|
|
28
|
+
private requireRuntimeAgentExternalId;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=ArbiterRuntime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArbiterRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/ArbiterRuntime.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,0BAA0B,EAC1B,oBAAoB,EACrB,MAAM,aAAa,CAAC;AAsBrB,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAU;IACxC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA2B;IACvD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAU;IAC9C,OAAO,CAAC,sBAAsB,CAAuB;IACrD,OAAO,CAAC,cAAc,CAA+C;gBAElD,OAAO,EAAE,qBAAqB;IAcpC,OAAO,CAAC,KAAK,GAAE,YAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAOzD,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;IAO3C,QAAQ,IAAI,IAAI;IAIV,UAAU,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,SAAS,CAAA;KAAE,CAAC;IAazD,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,iBAAiB;IAOZ,QAAQ,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,cAAc,CAAC;IAO9D,WAAW,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAQ/D,YAAY,CACvB,iBAAiB,EAAE,MAAM,EACzB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,cAAc,CAAC;IA0Bb,cAAc,CACzB,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,oBAAoB,CAAC;IAOnB,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAIrE,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,0BAA0B;IAUlC,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,0BAA0B;IAgBlC,OAAO,CAAC,6BAA6B;CAUtC"}
|