@abloatai/transaction 0.37.0 → 0.38.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/dist/ai-sdk/index.d.ts +3 -1
- package/dist/ai-sdk/index.d.ts.map +1 -1
- package/dist/ai-sdk/index.js +2 -1
- package/dist/ai-sdk/index.js.map +1 -1
- package/dist/ai-sdk/modelTools.d.ts +67 -0
- package/dist/ai-sdk/modelTools.d.ts.map +1 -0
- package/dist/ai-sdk/modelTools.js +89 -0
- package/dist/ai-sdk/modelTools.js.map +1 -0
- package/dist/ai-sdk/toolOptions.d.ts +8 -0
- package/dist/ai-sdk/toolOptions.d.ts.map +1 -0
- package/dist/ai-sdk/toolOptions.js +2 -0
- package/dist/ai-sdk/toolOptions.js.map +1 -0
- package/dist/ai-sdk/{coordinatedTool.d.ts → updateTool.d.ts} +21 -28
- package/dist/ai-sdk/updateTool.d.ts.map +1 -0
- package/dist/ai-sdk/{coordinatedTool.js → updateTool.js} +39 -50
- package/dist/ai-sdk/updateTool.js.map +1 -0
- package/dist/auth/capability.d.ts +6 -0
- package/dist/auth/capability.d.ts.map +1 -1
- package/dist/auth/capability.js +4 -0
- package/dist/auth/capability.js.map +1 -1
- package/dist/auth/capabilityLifecycle.d.ts +3 -0
- package/dist/auth/capabilityLifecycle.d.ts.map +1 -1
- package/dist/auth/identity.d.ts +6 -4
- package/dist/auth/identity.d.ts.map +1 -1
- package/dist/auth/identity.js +7 -11
- package/dist/auth/identity.js.map +1 -1
- package/dist/auth/schemas.d.ts +5 -5
- package/dist/auth/schemas.d.ts.map +1 -1
- package/dist/auth/schemas.js +5 -2
- package/dist/auth/schemas.js.map +1 -1
- package/dist/auth/sessionMint.d.ts.map +1 -1
- package/dist/auth/sessionMint.js +3 -0
- package/dist/auth/sessionMint.js.map +1 -1
- package/dist/branches.d.ts +251 -0
- package/dist/branches.d.ts.map +1 -0
- package/dist/branches.js +108 -0
- package/dist/branches.js.map +1 -0
- package/dist/coordination/awaitClaimGrant.d.ts +2 -0
- package/dist/coordination/awaitClaimGrant.d.ts.map +1 -1
- package/dist/coordination/awaitClaimGrant.js +15 -2
- package/dist/coordination/awaitClaimGrant.js.map +1 -1
- package/dist/coordination/schema.d.ts +2 -0
- package/dist/coordination/schema.d.ts.map +1 -1
- package/dist/coordination/schema.js +2 -0
- package/dist/coordination/schema.js.map +1 -1
- package/dist/docs/catalog.d.ts +5 -5
- package/dist/docs/catalog.d.ts.map +1 -1
- package/dist/docs/catalog.js +12 -12
- package/dist/docs/catalog.js.map +1 -1
- package/dist/footprint.d.ts +3 -5
- package/dist/footprint.d.ts.map +1 -1
- package/dist/footprint.js +0 -0
- package/dist/footprint.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/keys/index.d.ts +15 -7
- package/dist/keys/index.d.ts.map +1 -1
- package/dist/keys/index.js +45 -14
- package/dist/keys/index.js.map +1 -1
- package/dist/schema/openapi.d.ts +1 -1
- package/dist/schema/openapi.d.ts.map +1 -1
- package/dist/schema/openapi.js +308 -29
- package/dist/schema/openapi.js.map +1 -1
- package/dist/server/commit.d.ts +2 -15
- package/dist/server/commit.d.ts.map +1 -1
- package/dist/source/adapter.d.ts +7 -2
- package/dist/source/adapter.d.ts.map +1 -1
- package/dist/source/adapter.js +4 -2
- package/dist/source/adapter.js.map +1 -1
- package/dist/source/adapterFactory.d.ts +10 -0
- package/dist/source/adapterFactory.d.ts.map +1 -0
- package/dist/source/adapterFactory.js +33 -0
- package/dist/source/adapterFactory.js.map +1 -0
- package/dist/source/adapterProfile.d.ts +55 -0
- package/dist/source/adapterProfile.d.ts.map +1 -0
- package/dist/source/adapterProfile.js +54 -0
- package/dist/source/adapterProfile.js.map +1 -0
- package/dist/source/adapters/drizzle.d.ts.map +1 -1
- package/dist/source/adapters/drizzle.js +5 -2
- package/dist/source/adapters/drizzle.js.map +1 -1
- package/dist/source/adapters/kysely.d.ts.map +1 -1
- package/dist/source/adapters/kysely.js +7 -4
- package/dist/source/adapters/kysely.js.map +1 -1
- package/dist/source/adapters/memory.d.ts.map +1 -1
- package/dist/source/adapters/memory.js +5 -2
- package/dist/source/adapters/memory.js.map +1 -1
- package/dist/source/adapters/prisma.d.ts.map +1 -1
- package/dist/source/adapters/prisma.js +5 -2
- package/dist/source/adapters/prisma.js.map +1 -1
- package/dist/source/conformance.d.ts.map +1 -1
- package/dist/source/conformance.js +18 -0
- package/dist/source/conformance.js.map +1 -1
- package/dist/source/index.d.ts +2 -0
- package/dist/source/index.d.ts.map +1 -1
- package/dist/source/index.js +2 -0
- package/dist/source/index.js.map +1 -1
- package/dist/source/types.d.ts +3 -14
- package/dist/source/types.d.ts.map +1 -1
- package/dist/source/types.js.map +1 -1
- package/dist/syncLog/contract.d.ts +1 -1
- package/dist/syncLog/contract.d.ts.map +1 -1
- package/dist/syncLog/contract.js +1 -2
- package/dist/syncLog/contract.js.map +1 -1
- package/dist/wire/accountResponses.d.ts +5 -9
- package/dist/wire/accountResponses.d.ts.map +1 -1
- package/dist/wire/accountResponses.js +5 -6
- package/dist/wire/accountResponses.js.map +1 -1
- package/dist/wire/delta.d.ts +11 -0
- package/dist/wire/delta.d.ts.map +1 -1
- package/dist/wire/delta.js +11 -0
- package/dist/wire/delta.js.map +1 -1
- package/dist/wire/inboundFrames.d.ts +2 -0
- package/dist/wire/inboundFrames.d.ts.map +1 -1
- package/package.json +8 -2
- package/src/ai-sdk/index.ts +19 -6
- package/src/ai-sdk/modelTools.ts +165 -0
- package/src/ai-sdk/toolOptions.ts +18 -0
- package/src/ai-sdk/{coordinatedTool.ts → updateTool.ts} +59 -69
- package/src/auth/capability.ts +4 -0
- package/src/auth/identity.ts +16 -16
- package/src/auth/schemas.ts +5 -2
- package/src/auth/sessionMint.ts +3 -0
- package/src/branches.ts +134 -0
- package/src/coordination/awaitClaimGrant.ts +18 -2
- package/src/coordination/schema.ts +2 -0
- package/src/docs/catalog.ts +24 -12
- package/src/footprint.ts +0 -0
- package/src/index.ts +1 -0
- package/src/keys/index.ts +56 -17
- package/src/schema/openapi.ts +366 -38
- package/src/server/commit.ts +2 -15
- package/src/source/adapter.ts +7 -2
- package/src/source/adapterFactory.ts +60 -0
- package/src/source/adapterProfile.ts +75 -0
- package/src/source/adapters/drizzle.ts +5 -2
- package/src/source/adapters/kysely.ts +10 -4
- package/src/source/adapters/memory.ts +5 -2
- package/src/source/adapters/prisma.ts +5 -2
- package/src/source/conformance.ts +18 -0
- package/src/source/index.ts +14 -0
- package/src/source/types.ts +3 -14
- package/src/syncLog/contract.ts +1 -2
- package/src/wire/accountResponses.ts +5 -6
- package/src/wire/delta.ts +11 -0
- package/dist/ai-sdk/coordinatedTool.d.ts.map +0 -1
- package/dist/ai-sdk/coordinatedTool.js.map +0 -1
package/dist/schema/openapi.js
CHANGED
|
@@ -7,6 +7,7 @@ import { ABLO_HOSTED_HTTP_BASE_URL } from '../auth/hostedEndpoints.js';
|
|
|
7
7
|
import { z } from 'zod';
|
|
8
8
|
import { commitRequestSchema, commitReceiptSchema } from '../wire/commit.js';
|
|
9
9
|
import { claimRequestSchema, claimHeartbeatRequestSchema, listQuerySchema, claimStateSchema, claimAcquiredResponseSchema, claimQueuedResponseSchema, claimHeartbeatReplySchema, claimHeartbeatBatchReplySchema, claimListQuerySchema, claimListResponseSchema, claimReorderRequestSchema, claimReorderReplySchema, claimReleaseReplySchema, } from '../wire/claims.js';
|
|
10
|
+
import { errorEnvelopeSchema } from '../wire/errorEnvelope.js';
|
|
10
11
|
import { modelReadResponseSchema, modelListResponseSchema } from '../wire/modelResponses.js';
|
|
11
12
|
import { modelMutationRequestSchema } from '../wire/modelMutations.js';
|
|
12
13
|
import { logListResponseSchema, logQuerySchema } from '../wire/feedEvent.js';
|
|
@@ -14,6 +15,73 @@ import { schemaReadResponseSchema } from '../wire/accountResponses.js';
|
|
|
14
15
|
import { ephemeralKeyRequestSchema, capabilityRequestSchema, capabilityMintResponseSchema, } from '../wire/auth.js';
|
|
15
16
|
import { EphemeralKeyResponseSchema } from '../auth/schemas.js';
|
|
16
17
|
import { capabilityRotationRequestSchema, capabilityRotationResponseSchema, sessionRevocationResponseSchema, } from '../auth/capabilityLifecycle.js';
|
|
18
|
+
import { branchCredentialRequestSchema, branchCredentialResponseSchema, branchListResponseSchema, branchResponseSchema, branchStatusResponseSchema, createBranchRequestSchema, } from '../branches.js';
|
|
19
|
+
import { modelClaimSchema } from '../coordination/schema.js';
|
|
20
|
+
const HTTP_METHODS = new Set(['get', 'post', 'put', 'patch', 'delete']);
|
|
21
|
+
/**
|
|
22
|
+
* Give generators a stable public name for every operation.
|
|
23
|
+
*
|
|
24
|
+
* The map is deliberately exhaustive: adding a route without naming it throws
|
|
25
|
+
* while rendering the document instead of letting each language generator
|
|
26
|
+
* invent a different method name.
|
|
27
|
+
*/
|
|
28
|
+
function applyOperationIds(paths, operationIds) {
|
|
29
|
+
const usedKeys = new Set();
|
|
30
|
+
const usedIds = new Set();
|
|
31
|
+
for (const [path, rawPathItem] of Object.entries(paths)) {
|
|
32
|
+
const pathItem = rawPathItem;
|
|
33
|
+
for (const [method, rawOperation] of Object.entries(pathItem)) {
|
|
34
|
+
if (!HTTP_METHODS.has(method))
|
|
35
|
+
continue;
|
|
36
|
+
const key = `${method.toUpperCase()} ${path}`;
|
|
37
|
+
const operationId = operationIds[key];
|
|
38
|
+
if (!operationId) {
|
|
39
|
+
throw new Error(`OpenAPI operation ${key} has no stable operationId`);
|
|
40
|
+
}
|
|
41
|
+
if (usedIds.has(operationId)) {
|
|
42
|
+
throw new Error(`OpenAPI operationId ${operationId} is not unique`);
|
|
43
|
+
}
|
|
44
|
+
pathItem[method] = { ...rawOperation, operationId };
|
|
45
|
+
usedKeys.add(key);
|
|
46
|
+
usedIds.add(operationId);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
const stale = Object.keys(operationIds).filter((key) => !usedKeys.has(key));
|
|
50
|
+
if (stale.length > 0) {
|
|
51
|
+
throw new Error(`OpenAPI operationId map names operations that do not exist: ${stale.join(', ')}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
const ABLO_OPERATION_IDS = {
|
|
55
|
+
'GET /v1/models/{model}': 'listModelRows',
|
|
56
|
+
'POST /v1/models/{model}': 'createModelRow',
|
|
57
|
+
'GET /v1/models/{model}/{id}': 'getModelRow',
|
|
58
|
+
'PATCH /v1/models/{model}/{id}': 'updateModelRow',
|
|
59
|
+
'DELETE /v1/models/{model}/{id}': 'deleteModelRow',
|
|
60
|
+
'POST /v1/models/{model}/{id}/claim': 'acquireModelClaim',
|
|
61
|
+
'DELETE /v1/models/{model}/{id}/claim': 'releaseModelClaim',
|
|
62
|
+
'POST /v1/models/{model}/{id}/claim/heartbeat': 'heartbeatModelClaim',
|
|
63
|
+
'POST /v1/models/{model}/{id}/claim/reorder': 'reorderModelClaimQueue',
|
|
64
|
+
'POST /v1/ephemeral_keys': 'mintEphemeralKey',
|
|
65
|
+
'GET /v1/branches': 'listBranches',
|
|
66
|
+
'POST /v1/branches': 'createBranch',
|
|
67
|
+
'GET /v1/branches/{id}': 'getBranch',
|
|
68
|
+
'DELETE /v1/branches/{id}': 'deleteBranch',
|
|
69
|
+
'POST /v1/branches/{id}/credentials': 'mintBranchCredential',
|
|
70
|
+
'GET /v1/branches/{id}/status': 'getBranchStatus',
|
|
71
|
+
'GET /v1/claims': 'listClaims',
|
|
72
|
+
'POST /v1/claims': 'acquireClaim',
|
|
73
|
+
'POST /v1/claims/heartbeat': 'heartbeatClaims',
|
|
74
|
+
'GET /v1/claims/{claimId}': 'getClaim',
|
|
75
|
+
'DELETE /v1/claims/{claimId}': 'releaseClaim',
|
|
76
|
+
'POST /v1/claims/{claimId}/heartbeat': 'heartbeatClaim',
|
|
77
|
+
'POST /v1/capabilities': 'mintCapability',
|
|
78
|
+
'GET /v1/capabilities/{id}': 'getCapability',
|
|
79
|
+
'DELETE /v1/capabilities/{id}': 'revokeCapability',
|
|
80
|
+
'POST /v1/capabilities/{id}/rotate': 'rotateCapability',
|
|
81
|
+
'GET /v1/schema': 'getSchema',
|
|
82
|
+
'GET /v1/logs': 'listLogEntries',
|
|
83
|
+
'POST /v1/commits': 'commit',
|
|
84
|
+
};
|
|
17
85
|
function fieldSchema(f) {
|
|
18
86
|
switch (f.type) {
|
|
19
87
|
case 'number':
|
|
@@ -46,6 +114,50 @@ const jsonResp = (description, schema) => ({
|
|
|
46
114
|
description,
|
|
47
115
|
content: { 'application/json': { schema } },
|
|
48
116
|
});
|
|
117
|
+
const schemaRef = (name) => ({ $ref: `#/components/schemas/${name}` });
|
|
118
|
+
const namedResp = (description, name) => jsonResp(description, schemaRef(name));
|
|
119
|
+
/**
|
|
120
|
+
* Zod emits JSON Schema 2020-12. OpenAPI 3.1 accepts it, but SDK generators
|
|
121
|
+
* intentionally support a narrower, portable subset:
|
|
122
|
+
*
|
|
123
|
+
* - `$schema` belongs on a standalone JSON Schema document, not every embedded
|
|
124
|
+
* OpenAPI Schema Object;
|
|
125
|
+
* - `propertyNames: { type: 'string' }` is redundant for JSON objects and is
|
|
126
|
+
* unsupported by Stainless;
|
|
127
|
+
* - `additionalProperties: {}` means "any JSON value", but Stainless requires
|
|
128
|
+
* the equivalent, explicit `true`.
|
|
129
|
+
*
|
|
130
|
+
* Keeping this normalization at the rendering boundary lets the Zod schemas
|
|
131
|
+
* remain the wire authority without publishing generator-hostile syntax.
|
|
132
|
+
*/
|
|
133
|
+
function portableSchema(value) {
|
|
134
|
+
if (Array.isArray(value))
|
|
135
|
+
return value.map(portableSchema);
|
|
136
|
+
if (typeof value !== 'object' || value === null)
|
|
137
|
+
return value;
|
|
138
|
+
const source = value;
|
|
139
|
+
const result = {};
|
|
140
|
+
for (const [key, child] of Object.entries(source)) {
|
|
141
|
+
if (key === '$schema')
|
|
142
|
+
continue;
|
|
143
|
+
if (key === 'propertyNames' &&
|
|
144
|
+
typeof child === 'object' &&
|
|
145
|
+
child !== null &&
|
|
146
|
+
Object.keys(child).length === 1 &&
|
|
147
|
+
child.type === 'string') {
|
|
148
|
+
continue;
|
|
149
|
+
}
|
|
150
|
+
if (key === 'additionalProperties' &&
|
|
151
|
+
typeof child === 'object' &&
|
|
152
|
+
child !== null &&
|
|
153
|
+
Object.keys(child).length === 0) {
|
|
154
|
+
result[key] = true;
|
|
155
|
+
continue;
|
|
156
|
+
}
|
|
157
|
+
result[key] = portableSchema(child);
|
|
158
|
+
}
|
|
159
|
+
return result;
|
|
160
|
+
}
|
|
49
161
|
/**
|
|
50
162
|
* Derive a JSON Schema from a wire schema.
|
|
51
163
|
*
|
|
@@ -55,8 +167,8 @@ const jsonResp = (description, schema) => ({
|
|
|
55
167
|
* looks like a working spec — which is why the direction is stated at every
|
|
56
168
|
* call site rather than defaulted.
|
|
57
169
|
*/
|
|
58
|
-
const derive = (schema, io) => z.toJSONSchema(schema, { io, unrepresentable: 'any' });
|
|
59
|
-
const commitReceipt = () =>
|
|
170
|
+
const derive = (schema, io) => portableSchema(z.toJSONSchema(schema, { io, unrepresentable: 'any' }));
|
|
171
|
+
const commitReceipt = () => namedResp('Commit receipt', 'CommitReceipt');
|
|
60
172
|
const modelParam = () => ({
|
|
61
173
|
name: 'model',
|
|
62
174
|
in: 'path',
|
|
@@ -105,14 +217,23 @@ function withGenericRows(derived) {
|
|
|
105
217
|
*/
|
|
106
218
|
function queryParams(schema) {
|
|
107
219
|
const props = (derive(schema, 'input').properties ?? {});
|
|
108
|
-
return Object.entries(props).map(([name, s]) => ({
|
|
220
|
+
return Object.entries(props).map(([name, s]) => ({
|
|
221
|
+
name,
|
|
222
|
+
in: 'query',
|
|
223
|
+
// Query strings arrive at the server as text, but OpenAPI describes the
|
|
224
|
+
// caller-facing value before serialization. Generated clients should take
|
|
225
|
+
// an integer here and encode it, not expose a stringly typed page size.
|
|
226
|
+
schema: name === 'limit'
|
|
227
|
+
? { type: 'integer', minimum: 1 }
|
|
228
|
+
: s,
|
|
229
|
+
}));
|
|
109
230
|
}
|
|
110
231
|
/**
|
|
111
232
|
* Both release routes answer in one shape. `released` distinguishes "this call
|
|
112
233
|
* ended your lease" from "there was nothing of yours to end" — both success,
|
|
113
234
|
* and a retry after a lost response deserves to know which it got.
|
|
114
235
|
*/
|
|
115
|
-
const releaseResp = () =>
|
|
236
|
+
const releaseResp = () => namedResp('Released', 'ClaimRelease');
|
|
116
237
|
const claimIdParam = () => ({
|
|
117
238
|
name: 'claimId',
|
|
118
239
|
in: 'path',
|
|
@@ -133,8 +254,12 @@ function envelope(options, description, paths, schemas) {
|
|
|
133
254
|
openapi: '3.1.0',
|
|
134
255
|
info: {
|
|
135
256
|
title: options.title ?? 'Ablo API',
|
|
136
|
-
version: options.version ?? '
|
|
257
|
+
version: options.version ?? 'development',
|
|
137
258
|
description,
|
|
259
|
+
license: {
|
|
260
|
+
name: 'Apache License 2.0',
|
|
261
|
+
identifier: 'Apache-2.0',
|
|
262
|
+
},
|
|
138
263
|
},
|
|
139
264
|
servers: [{ url: options.serverUrl ?? `${ABLO_HOSTED_HTTP_BASE_URL}/api` }],
|
|
140
265
|
security: [{ bearerAuth: [] }],
|
|
@@ -147,6 +272,80 @@ function envelope(options, description, paths, schemas) {
|
|
|
147
272
|
paths,
|
|
148
273
|
};
|
|
149
274
|
}
|
|
275
|
+
const ERROR_RESPONSES = {
|
|
276
|
+
'400': 'The request did not satisfy the published contract.',
|
|
277
|
+
'401': 'The Bearer credential is missing, malformed, or expired.',
|
|
278
|
+
'403': 'The credential does not authorize this operation.',
|
|
279
|
+
'404': 'The addressed resource does not exist in the credential scope.',
|
|
280
|
+
'409': 'The request conflicts with current claim, version, or idempotency state.',
|
|
281
|
+
'429': 'The caller exceeded an enforced rate limit.',
|
|
282
|
+
'500': 'The server could not complete the request.',
|
|
283
|
+
'503': 'A required service is temporarily unavailable.',
|
|
284
|
+
};
|
|
285
|
+
/**
|
|
286
|
+
* Every route passes failures through the same server error funnel. Publish
|
|
287
|
+
* that fact on every operation so generated transports decode all HTTP errors
|
|
288
|
+
* through `ErrorEnvelope`, rather than falling back to a language-specific raw
|
|
289
|
+
* response type.
|
|
290
|
+
*/
|
|
291
|
+
function attachCanonicalErrors(paths) {
|
|
292
|
+
for (const rawPathItem of Object.values(paths)) {
|
|
293
|
+
const pathItem = rawPathItem;
|
|
294
|
+
for (const [method, rawOperation] of Object.entries(pathItem)) {
|
|
295
|
+
if (!HTTP_METHODS.has(method))
|
|
296
|
+
continue;
|
|
297
|
+
const operation = rawOperation;
|
|
298
|
+
const responses = { ...operation.responses };
|
|
299
|
+
for (const [status, description] of Object.entries(ERROR_RESPONSES)) {
|
|
300
|
+
responses[status] = namedResp(description, 'ErrorEnvelope');
|
|
301
|
+
}
|
|
302
|
+
responses.default = namedResp('An HTTP error not otherwise listed; decoded through the canonical envelope.', 'ErrorEnvelope');
|
|
303
|
+
operation.responses = responses;
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
function abloComponentSchemas() {
|
|
308
|
+
const commitReceiptSchemaJson = derive(commitReceiptSchema, 'output');
|
|
309
|
+
commitReceiptSchemaJson.discriminator = { propertyName: 'status' };
|
|
310
|
+
const schemas = {
|
|
311
|
+
Cursor: {
|
|
312
|
+
type: 'string',
|
|
313
|
+
description: 'An opaque pagination position. Copy it unchanged into the next request.',
|
|
314
|
+
},
|
|
315
|
+
ErrorEnvelope: derive(errorEnvelopeSchema, 'output'),
|
|
316
|
+
Claim: derive(modelClaimSchema, 'output'),
|
|
317
|
+
ClaimAcquire: {
|
|
318
|
+
oneOf: [schemaRef('ClaimAcquired'), schemaRef('ClaimQueued')],
|
|
319
|
+
discriminator: { propertyName: 'status' },
|
|
320
|
+
},
|
|
321
|
+
ClaimAcquired: derive(claimAcquiredResponseSchema, 'output'),
|
|
322
|
+
ClaimQueued: derive(claimQueuedResponseSchema, 'output'),
|
|
323
|
+
ClaimState: derive(claimStateSchema, 'output'),
|
|
324
|
+
ClaimList: derive(claimListResponseSchema, 'output'),
|
|
325
|
+
ClaimHeartbeat: derive(claimHeartbeatReplySchema, 'output'),
|
|
326
|
+
ClaimHeartbeatBatch: derive(claimHeartbeatBatchReplySchema, 'output'),
|
|
327
|
+
ClaimRelease: derive(claimReleaseReplySchema, 'output'),
|
|
328
|
+
ClaimReorder: derive(claimReorderReplySchema, 'output'),
|
|
329
|
+
CommitReceipt: commitReceiptSchemaJson,
|
|
330
|
+
ModelRead: withGenericRows(derive(modelReadResponseSchema, 'output')),
|
|
331
|
+
ModelPage: withGenericRows(derive(modelListResponseSchema, 'output')),
|
|
332
|
+
LogPage: derive(logListResponseSchema, 'output'),
|
|
333
|
+
SchemaRead: derive(schemaReadResponseSchema, 'output'),
|
|
334
|
+
};
|
|
335
|
+
// Reuse protocol concepts inside the named envelopes too. Without these
|
|
336
|
+
// refs, generators invent separate anonymous Claim and cursor models for
|
|
337
|
+
// every operation even though the server validates one canonical shape.
|
|
338
|
+
const properties = (name) => (schemas[name]?.properties ?? {});
|
|
339
|
+
properties('ClaimAcquired').claim = schemaRef('Claim');
|
|
340
|
+
properties('ClaimList').data.items = schemaRef('Claim');
|
|
341
|
+
properties('ModelRead').claims.items = schemaRef('Claim');
|
|
342
|
+
for (const name of ['ClaimList', 'ModelPage', 'LogPage']) {
|
|
343
|
+
properties(name).next_cursor = {
|
|
344
|
+
oneOf: [schemaRef('Cursor'), { type: 'null' }],
|
|
345
|
+
};
|
|
346
|
+
}
|
|
347
|
+
return schemas;
|
|
348
|
+
}
|
|
150
349
|
/**
|
|
151
350
|
* The protocol reference: the route templates the server actually serves.
|
|
152
351
|
*
|
|
@@ -162,7 +361,7 @@ function envelope(options, description, paths, schemas) {
|
|
|
162
361
|
* {@link schemaToOpenApi}.
|
|
163
362
|
*/
|
|
164
363
|
export function abloOpenApi(options = {}) {
|
|
165
|
-
const rowResp =
|
|
364
|
+
const rowResp = namedResp('The row, with the watermark it was read at and who holds it.', 'ModelRead');
|
|
166
365
|
const tags = ['models'];
|
|
167
366
|
const paths = {
|
|
168
367
|
'/v1/models/{model}': {
|
|
@@ -171,8 +370,8 @@ export function abloOpenApi(options = {}) {
|
|
|
171
370
|
summary: 'List rows of a model',
|
|
172
371
|
parameters: [modelParam(), ...queryParams(listQuerySchema)],
|
|
173
372
|
responses: {
|
|
174
|
-
'200':
|
|
175
|
-
'call; `stamp` is the watermark the page was read at.',
|
|
373
|
+
'200': namedResp('A page of rows. `next_cursor` feeds `starting_after` on the next ' +
|
|
374
|
+
'call; `stamp` is the watermark the page was read at.', 'ModelPage'),
|
|
176
375
|
},
|
|
177
376
|
},
|
|
178
377
|
post: {
|
|
@@ -211,11 +410,11 @@ export function abloOpenApi(options = {}) {
|
|
|
211
410
|
parameters: [modelParam(), idParam()],
|
|
212
411
|
requestBody: optionalJsonBody(derive(claimRequestSchema, 'input')),
|
|
213
412
|
responses: {
|
|
214
|
-
'201':
|
|
215
|
-
'minted one; carry it on writes made under the lease.',
|
|
216
|
-
'202':
|
|
413
|
+
'201': namedResp('The lease is yours. `claim.fenceToken` is set when the coordinator ' +
|
|
414
|
+
'minted one; carry it on writes made under the lease.', 'ClaimAcquire'),
|
|
415
|
+
'202': namedResp('The row was already held and you asked to queue. You are in line at ' +
|
|
217
416
|
'`position` — heartbeat to keep the slot, and poll ' +
|
|
218
|
-
'`GET /v1/claims/{claimId}` for the grant.',
|
|
417
|
+
'`GET /v1/claims/{claimId}` for the grant.', 'ClaimAcquire'),
|
|
219
418
|
},
|
|
220
419
|
},
|
|
221
420
|
delete: {
|
|
@@ -232,7 +431,7 @@ export function abloOpenApi(options = {}) {
|
|
|
232
431
|
parameters: [modelParam(), idParam()],
|
|
233
432
|
requestBody: optionalJsonBody(derive(claimHeartbeatRequestSchema, 'input')),
|
|
234
433
|
responses: {
|
|
235
|
-
'200':
|
|
434
|
+
'200': namedResp('Lease extended (or queued slot refreshed)', 'ClaimHeartbeat'),
|
|
236
435
|
},
|
|
237
436
|
},
|
|
238
437
|
},
|
|
@@ -245,7 +444,7 @@ export function abloOpenApi(options = {}) {
|
|
|
245
444
|
parameters: [modelParam(), idParam()],
|
|
246
445
|
requestBody: optionalJsonBody(derive(claimReorderRequestSchema, 'input')),
|
|
247
446
|
responses: {
|
|
248
|
-
'200':
|
|
447
|
+
'200': namedResp('Reordered', 'ClaimReorder'),
|
|
249
448
|
},
|
|
250
449
|
},
|
|
251
450
|
},
|
|
@@ -262,6 +461,64 @@ export function abloOpenApi(options = {}) {
|
|
|
262
461
|
responses: { '201': jsonResp('The minted credential', derive(EphemeralKeyResponseSchema, 'output')) },
|
|
263
462
|
},
|
|
264
463
|
},
|
|
464
|
+
'/v1/branches': {
|
|
465
|
+
get: {
|
|
466
|
+
tags: ['branches'],
|
|
467
|
+
summary: 'List transaction branches for the credential project',
|
|
468
|
+
responses: {
|
|
469
|
+
'200': jsonResp('The root and every active child branch.', derive(branchListResponseSchema, 'output')),
|
|
470
|
+
},
|
|
471
|
+
},
|
|
472
|
+
post: {
|
|
473
|
+
tags: ['branches'],
|
|
474
|
+
summary: 'Create an isolated child branch',
|
|
475
|
+
description: 'The returned id is immutable; retain it for automation. The slug is a project-scoped human handle.',
|
|
476
|
+
requestBody: jsonBody(derive(createBranchRequestSchema, 'input')),
|
|
477
|
+
responses: {
|
|
478
|
+
'201': jsonResp('The ready branch.', derive(branchResponseSchema, 'output')),
|
|
479
|
+
},
|
|
480
|
+
},
|
|
481
|
+
},
|
|
482
|
+
'/v1/branches/{id}': {
|
|
483
|
+
get: {
|
|
484
|
+
tags: ['branches'],
|
|
485
|
+
summary: 'Retrieve a branch by immutable id',
|
|
486
|
+
parameters: [idParam()],
|
|
487
|
+
responses: {
|
|
488
|
+
'200': jsonResp('The branch.', derive(branchResponseSchema, 'output')),
|
|
489
|
+
},
|
|
490
|
+
},
|
|
491
|
+
delete: {
|
|
492
|
+
tags: ['branches'],
|
|
493
|
+
summary: 'Delete a non-root branch and revoke its credentials',
|
|
494
|
+
parameters: [idParam()],
|
|
495
|
+
responses: {
|
|
496
|
+
'200': jsonResp('The deleted branch.', derive(branchResponseSchema, 'output')),
|
|
497
|
+
},
|
|
498
|
+
},
|
|
499
|
+
},
|
|
500
|
+
'/v1/branches/{id}/credentials': {
|
|
501
|
+
post: {
|
|
502
|
+
tags: ['branches', 'credentials'],
|
|
503
|
+
summary: 'Mint an expiring branch-bound test credential',
|
|
504
|
+
parameters: [idParam()],
|
|
505
|
+
requestBody: optionalJsonBody(derive(branchCredentialRequestSchema, 'input')),
|
|
506
|
+
responses: {
|
|
507
|
+
'201': jsonResp('A one-time plaintext credential. Do not persist it in source control.', derive(branchCredentialResponseSchema, 'output')),
|
|
508
|
+
},
|
|
509
|
+
},
|
|
510
|
+
},
|
|
511
|
+
'/v1/branches/{id}/status': {
|
|
512
|
+
get: {
|
|
513
|
+
tags: ['branches'],
|
|
514
|
+
summary: 'Diagnose one branch plane',
|
|
515
|
+
description: 'Returns branch lifecycle, active schema, compatibility with the parent schema, safe datasource coordinates, and readiness blockers.',
|
|
516
|
+
parameters: [idParam()],
|
|
517
|
+
responses: {
|
|
518
|
+
'200': jsonResp('The complete branch readiness view.', derive(branchStatusResponseSchema, 'output')),
|
|
519
|
+
},
|
|
520
|
+
},
|
|
521
|
+
},
|
|
265
522
|
'/v1/claims': {
|
|
266
523
|
get: {
|
|
267
524
|
tags: ['claims'],
|
|
@@ -272,7 +529,7 @@ export function abloOpenApi(options = {}) {
|
|
|
272
529
|
'request names both `model` and `id` — a wait line belongs to one row.',
|
|
273
530
|
parameters: queryParams(claimListQuerySchema),
|
|
274
531
|
responses: {
|
|
275
|
-
'200':
|
|
532
|
+
'200': namedResp('Live claims, and the wait line behind the named row.', 'ClaimList'),
|
|
276
533
|
},
|
|
277
534
|
},
|
|
278
535
|
post: {
|
|
@@ -282,8 +539,8 @@ export function abloOpenApi(options = {}) {
|
|
|
282
539
|
'row in `target` instead of the URL. Answers identically.',
|
|
283
540
|
requestBody: jsonBody(derive(claimRequestSchema, 'input')),
|
|
284
541
|
responses: {
|
|
285
|
-
'201':
|
|
286
|
-
'202':
|
|
542
|
+
'201': namedResp('The lease is yours.', 'ClaimAcquire'),
|
|
543
|
+
'202': namedResp('Already held, and you asked to queue. You are in line at `position`.', 'ClaimAcquire'),
|
|
287
544
|
},
|
|
288
545
|
},
|
|
289
546
|
},
|
|
@@ -296,7 +553,7 @@ export function abloOpenApi(options = {}) {
|
|
|
296
553
|
'credential holds on this plane.',
|
|
297
554
|
requestBody: optionalJsonBody(derive(claimHeartbeatRequestSchema, 'input')),
|
|
298
555
|
responses: {
|
|
299
|
-
'200':
|
|
556
|
+
'200': namedResp('One ack per lease extended.', 'ClaimHeartbeatBatch'),
|
|
300
557
|
},
|
|
301
558
|
},
|
|
302
559
|
},
|
|
@@ -308,7 +565,7 @@ export function abloOpenApi(options = {}) {
|
|
|
308
565
|
'was granted. `position` is advisory — a privileged reorder can move it ' +
|
|
309
566
|
'up — so branch on `status`, never on position.',
|
|
310
567
|
parameters: [claimIdParam()],
|
|
311
|
-
responses: { '200':
|
|
568
|
+
responses: { '200': namedResp('The claim state', 'ClaimState') },
|
|
312
569
|
},
|
|
313
570
|
delete: {
|
|
314
571
|
tags: ['claims'],
|
|
@@ -332,7 +589,7 @@ export function abloOpenApi(options = {}) {
|
|
|
332
589
|
parameters: [claimIdParam()],
|
|
333
590
|
requestBody: optionalJsonBody(derive(claimHeartbeatRequestSchema, 'input')),
|
|
334
591
|
responses: {
|
|
335
|
-
'200':
|
|
592
|
+
'200': namedResp('Lease extended, or queued slot refreshed.', 'ClaimHeartbeat'),
|
|
336
593
|
},
|
|
337
594
|
},
|
|
338
595
|
},
|
|
@@ -392,7 +649,7 @@ export function abloOpenApi(options = {}) {
|
|
|
392
649
|
'the shape once and poll the hashes after: a refetch only ever answers ' +
|
|
393
650
|
'a push.',
|
|
394
651
|
responses: {
|
|
395
|
-
'200':
|
|
652
|
+
'200': namedResp('The deployed schema, or `active: false` when nothing is pushed.', 'SchemaRead'),
|
|
396
653
|
},
|
|
397
654
|
},
|
|
398
655
|
},
|
|
@@ -407,9 +664,9 @@ export function abloOpenApi(options = {}) {
|
|
|
407
664
|
'widen what it sees by asking.',
|
|
408
665
|
parameters: queryParams(logQuerySchema),
|
|
409
666
|
responses: {
|
|
410
|
-
'200':
|
|
667
|
+
'200': namedResp('A page of the feed, oldest first. Entries are discriminated on ' +
|
|
411
668
|
'`object`, so a reader that meets an entry kind it does not know ' +
|
|
412
|
-
'can skip it and keep paging.',
|
|
669
|
+
'can skip it and keep paging.', 'LogPage'),
|
|
413
670
|
},
|
|
414
671
|
},
|
|
415
672
|
},
|
|
@@ -423,9 +680,11 @@ export function abloOpenApi(options = {}) {
|
|
|
423
680
|
},
|
|
424
681
|
},
|
|
425
682
|
};
|
|
683
|
+
applyOperationIds(paths, ABLO_OPERATION_IDS);
|
|
684
|
+
attachCanonicalErrors(paths);
|
|
426
685
|
return envelope(options, 'The Ablo transaction layer: commit, read, and claim. `{model}` is any model ' +
|
|
427
686
|
'from your pushed schema — the routes are the same whichever it is. ' +
|
|
428
|
-
'Authenticate every request with your API key as a Bearer token.', paths,
|
|
687
|
+
'Authenticate every request with your API key as a Bearer token.', paths, abloComponentSchemas());
|
|
429
688
|
}
|
|
430
689
|
/**
|
|
431
690
|
* The per-tenant expansion: every model's routes written out with typed payloads.
|
|
@@ -439,6 +698,7 @@ export function schemaToOpenApi(schema, options = {}) {
|
|
|
439
698
|
const models = schema.models;
|
|
440
699
|
const paths = {};
|
|
441
700
|
const schemas = {};
|
|
701
|
+
const operationIds = {};
|
|
442
702
|
for (const [key, def] of Object.entries(models)) {
|
|
443
703
|
const ref = { $ref: `#/components/schemas/${pascal(key)}` };
|
|
444
704
|
const properties = { id: { type: 'string' } };
|
|
@@ -453,7 +713,22 @@ export function schemaToOpenApi(schema, options = {}) {
|
|
|
453
713
|
}
|
|
454
714
|
schemas[pascal(key)] = { type: 'object', properties, required };
|
|
455
715
|
const createBody = jsonBody({ type: 'object', properties: createProps });
|
|
456
|
-
|
|
716
|
+
const collectionPath = `/v1/models/${key}`;
|
|
717
|
+
const rowPath = `/v1/models/${key}/{id}`;
|
|
718
|
+
const claimPath = `/v1/models/${key}/{id}/claim`;
|
|
719
|
+
const heartbeatPath = `/v1/models/${key}/{id}/claim/heartbeat`;
|
|
720
|
+
const reorderPath = `/v1/models/${key}/{id}/claim/reorder`;
|
|
721
|
+
const modelName = pascal(key);
|
|
722
|
+
operationIds[`GET ${collectionPath}`] = `list${modelName}Rows`;
|
|
723
|
+
operationIds[`POST ${collectionPath}`] = `create${modelName}Row`;
|
|
724
|
+
operationIds[`GET ${rowPath}`] = `get${modelName}Row`;
|
|
725
|
+
operationIds[`PATCH ${rowPath}`] = `update${modelName}Row`;
|
|
726
|
+
operationIds[`DELETE ${rowPath}`] = `delete${modelName}Row`;
|
|
727
|
+
operationIds[`POST ${claimPath}`] = `acquire${modelName}Claim`;
|
|
728
|
+
operationIds[`DELETE ${claimPath}`] = `release${modelName}Claim`;
|
|
729
|
+
operationIds[`POST ${heartbeatPath}`] = `heartbeat${modelName}Claim`;
|
|
730
|
+
operationIds[`POST ${reorderPath}`] = `reorder${modelName}ClaimQueue`;
|
|
731
|
+
paths[collectionPath] = {
|
|
457
732
|
get: {
|
|
458
733
|
tags: [key],
|
|
459
734
|
summary: `List ${key}`,
|
|
@@ -467,7 +742,7 @@ export function schemaToOpenApi(schema, options = {}) {
|
|
|
467
742
|
},
|
|
468
743
|
post: { tags: [key], summary: `Create a ${key}`, requestBody: createBody, responses: { '200': commitReceipt() } },
|
|
469
744
|
};
|
|
470
|
-
paths[
|
|
745
|
+
paths[rowPath] = {
|
|
471
746
|
get: {
|
|
472
747
|
tags: [key],
|
|
473
748
|
summary: `Retrieve a ${key}`,
|
|
@@ -482,14 +757,14 @@ export function schemaToOpenApi(schema, options = {}) {
|
|
|
482
757
|
patch: { tags: [key], summary: `Update a ${key}`, parameters: [idParam()], requestBody: createBody, responses: { '200': commitReceipt() } },
|
|
483
758
|
delete: { tags: [key], summary: `Delete a ${key}`, parameters: [idParam()], responses: { '200': commitReceipt() } },
|
|
484
759
|
};
|
|
485
|
-
paths[
|
|
760
|
+
paths[claimPath] = {
|
|
486
761
|
post: { tags: [key], summary: `Claim a ${key} (acquire lease)`, parameters: [idParam()], responses: { '200': jsonResp('Claim acquired', { type: 'object' }) } },
|
|
487
762
|
delete: { tags: [key], summary: `Release a ${key} claim`, parameters: [idParam()], responses: { '200': jsonResp('Released', { type: 'object' }) } },
|
|
488
763
|
};
|
|
489
|
-
paths[
|
|
764
|
+
paths[heartbeatPath] = {
|
|
490
765
|
post: { tags: [key], summary: `Heartbeat a held ${key} claim (extend the lease for long-running work)`, parameters: [idParam()], responses: { '200': jsonResp('Lease extended (or queued slot refreshed)', derive(claimHeartbeatReplySchema, 'output')) } },
|
|
491
766
|
};
|
|
492
|
-
paths[
|
|
767
|
+
paths[reorderPath] = {
|
|
493
768
|
post: { tags: [key], summary: `Reorder the ${key} wait-line (privileged)`, parameters: [idParam()], responses: { '200': jsonResp('Reordered', { type: 'object' }) } },
|
|
494
769
|
};
|
|
495
770
|
}
|
|
@@ -502,6 +777,10 @@ export function schemaToOpenApi(schema, options = {}) {
|
|
|
502
777
|
responses: { '200': commitReceipt() },
|
|
503
778
|
},
|
|
504
779
|
};
|
|
780
|
+
operationIds['POST /v1/commits'] = 'commit';
|
|
781
|
+
applyOperationIds(paths, operationIds);
|
|
782
|
+
attachCanonicalErrors(paths);
|
|
783
|
+
Object.assign(schemas, abloComponentSchemas());
|
|
505
784
|
return envelope(options, 'Generated from your pushed Ablo schema — these routes are your models. ' +
|
|
506
785
|
'Authenticate every request with your API key as a Bearer token.', paths, schemas);
|
|
507
786
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/schema/openapi.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/schema/openapi.ts"],"names":[],"mappings":"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"}
|