@abloatai/transaction 0.37.1 → 0.39.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.
Files changed (181) hide show
  1. package/dist/ai-sdk/index.d.ts +3 -1
  2. package/dist/ai-sdk/index.d.ts.map +1 -1
  3. package/dist/ai-sdk/index.js +2 -1
  4. package/dist/ai-sdk/index.js.map +1 -1
  5. package/dist/ai-sdk/modelTools.d.ts +67 -0
  6. package/dist/ai-sdk/modelTools.d.ts.map +1 -0
  7. package/dist/ai-sdk/modelTools.js +89 -0
  8. package/dist/ai-sdk/modelTools.js.map +1 -0
  9. package/dist/ai-sdk/toolOptions.d.ts +8 -0
  10. package/dist/ai-sdk/toolOptions.d.ts.map +1 -0
  11. package/dist/ai-sdk/toolOptions.js +2 -0
  12. package/dist/ai-sdk/toolOptions.js.map +1 -0
  13. package/dist/ai-sdk/{coordinatedTool.d.ts → updateTool.d.ts} +21 -28
  14. package/dist/ai-sdk/updateTool.d.ts.map +1 -0
  15. package/dist/ai-sdk/{coordinatedTool.js → updateTool.js} +39 -50
  16. package/dist/ai-sdk/updateTool.js.map +1 -0
  17. package/dist/auth/capability.d.ts +6 -0
  18. package/dist/auth/capability.d.ts.map +1 -1
  19. package/dist/auth/capability.js +4 -0
  20. package/dist/auth/capability.js.map +1 -1
  21. package/dist/auth/capabilityLifecycle.d.ts +3 -0
  22. package/dist/auth/capabilityLifecycle.d.ts.map +1 -1
  23. package/dist/auth/identity.d.ts +6 -4
  24. package/dist/auth/identity.d.ts.map +1 -1
  25. package/dist/auth/identity.js +7 -11
  26. package/dist/auth/identity.js.map +1 -1
  27. package/dist/auth/index.d.ts +16 -2
  28. package/dist/auth/index.d.ts.map +1 -1
  29. package/dist/auth/index.js +10 -1
  30. package/dist/auth/index.js.map +1 -1
  31. package/dist/auth/schemas.d.ts +5 -5
  32. package/dist/auth/schemas.d.ts.map +1 -1
  33. package/dist/auth/schemas.js +5 -2
  34. package/dist/auth/schemas.js.map +1 -1
  35. package/dist/auth/sessionMint.d.ts.map +1 -1
  36. package/dist/auth/sessionMint.js +3 -0
  37. package/dist/auth/sessionMint.js.map +1 -1
  38. package/dist/branches.d.ts +251 -0
  39. package/dist/branches.d.ts.map +1 -0
  40. package/dist/branches.js +108 -0
  41. package/dist/branches.js.map +1 -0
  42. package/dist/coordination/awaitClaimGrant.d.ts +2 -0
  43. package/dist/coordination/awaitClaimGrant.d.ts.map +1 -1
  44. package/dist/coordination/awaitClaimGrant.js +15 -2
  45. package/dist/coordination/awaitClaimGrant.js.map +1 -1
  46. package/dist/coordination/schema.d.ts +2 -0
  47. package/dist/coordination/schema.d.ts.map +1 -1
  48. package/dist/coordination/schema.js +2 -0
  49. package/dist/coordination/schema.js.map +1 -1
  50. package/dist/docs/catalog.d.ts +5 -5
  51. package/dist/docs/catalog.d.ts.map +1 -1
  52. package/dist/docs/catalog.js +12 -12
  53. package/dist/docs/catalog.js.map +1 -1
  54. package/dist/errorCodes.d.ts +1 -0
  55. package/dist/errorCodes.d.ts.map +1 -1
  56. package/dist/errorCodes.js +1 -0
  57. package/dist/errorCodes.js.map +1 -1
  58. package/dist/footprint.d.ts +3 -5
  59. package/dist/footprint.d.ts.map +1 -1
  60. package/dist/footprint.js +0 -0
  61. package/dist/footprint.js.map +1 -1
  62. package/dist/index.d.ts +1 -0
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +1 -0
  65. package/dist/index.js.map +1 -1
  66. package/dist/keys/index.d.ts +15 -7
  67. package/dist/keys/index.d.ts.map +1 -1
  68. package/dist/keys/index.js +45 -14
  69. package/dist/keys/index.js.map +1 -1
  70. package/dist/schema/index.d.ts +1 -1
  71. package/dist/schema/index.d.ts.map +1 -1
  72. package/dist/schema/index.js +1 -1
  73. package/dist/schema/index.js.map +1 -1
  74. package/dist/schema/openapi.d.ts +1 -1
  75. package/dist/schema/openapi.d.ts.map +1 -1
  76. package/dist/schema/openapi.js +308 -29
  77. package/dist/schema/openapi.js.map +1 -1
  78. package/dist/schema/schema.d.ts +12 -0
  79. package/dist/schema/schema.d.ts.map +1 -1
  80. package/dist/schema/schema.js.map +1 -1
  81. package/dist/schema/select.d.ts +13 -0
  82. package/dist/schema/select.d.ts.map +1 -1
  83. package/dist/schema/select.js +26 -0
  84. package/dist/schema/select.js.map +1 -1
  85. package/dist/server/commit.d.ts +2 -15
  86. package/dist/server/commit.d.ts.map +1 -1
  87. package/dist/source/adapter.d.ts +7 -2
  88. package/dist/source/adapter.d.ts.map +1 -1
  89. package/dist/source/adapter.js +4 -2
  90. package/dist/source/adapter.js.map +1 -1
  91. package/dist/source/adapterFactory.d.ts +10 -0
  92. package/dist/source/adapterFactory.d.ts.map +1 -0
  93. package/dist/source/adapterFactory.js +33 -0
  94. package/dist/source/adapterFactory.js.map +1 -0
  95. package/dist/source/adapterProfile.d.ts +55 -0
  96. package/dist/source/adapterProfile.d.ts.map +1 -0
  97. package/dist/source/adapterProfile.js +54 -0
  98. package/dist/source/adapterProfile.js.map +1 -0
  99. package/dist/source/adapters/drizzle.d.ts.map +1 -1
  100. package/dist/source/adapters/drizzle.js +5 -2
  101. package/dist/source/adapters/drizzle.js.map +1 -1
  102. package/dist/source/adapters/kysely.d.ts.map +1 -1
  103. package/dist/source/adapters/kysely.js +7 -4
  104. package/dist/source/adapters/kysely.js.map +1 -1
  105. package/dist/source/adapters/memory.d.ts.map +1 -1
  106. package/dist/source/adapters/memory.js +5 -2
  107. package/dist/source/adapters/memory.js.map +1 -1
  108. package/dist/source/adapters/prisma.d.ts.map +1 -1
  109. package/dist/source/adapters/prisma.js +5 -2
  110. package/dist/source/adapters/prisma.js.map +1 -1
  111. package/dist/source/conformance.d.ts.map +1 -1
  112. package/dist/source/conformance.js +18 -0
  113. package/dist/source/conformance.js.map +1 -1
  114. package/dist/source/index.d.ts +2 -0
  115. package/dist/source/index.d.ts.map +1 -1
  116. package/dist/source/index.js +2 -0
  117. package/dist/source/index.js.map +1 -1
  118. package/dist/source/types.d.ts +3 -14
  119. package/dist/source/types.d.ts.map +1 -1
  120. package/dist/source/types.js.map +1 -1
  121. package/dist/syncLog/contract.d.ts +1 -1
  122. package/dist/syncLog/contract.d.ts.map +1 -1
  123. package/dist/syncLog/contract.js +1 -2
  124. package/dist/syncLog/contract.js.map +1 -1
  125. package/dist/transport/httpClient.d.ts.map +1 -1
  126. package/dist/transport/httpClient.js +10 -1
  127. package/dist/transport/httpClient.js.map +1 -1
  128. package/dist/wire/accountResponses.d.ts +5 -9
  129. package/dist/wire/accountResponses.d.ts.map +1 -1
  130. package/dist/wire/accountResponses.js +5 -6
  131. package/dist/wire/accountResponses.js.map +1 -1
  132. package/dist/wire/auth.d.ts +7 -1
  133. package/dist/wire/auth.d.ts.map +1 -1
  134. package/dist/wire/auth.js +26 -3
  135. package/dist/wire/auth.js.map +1 -1
  136. package/dist/wire/delta.d.ts +11 -0
  137. package/dist/wire/delta.d.ts.map +1 -1
  138. package/dist/wire/delta.js +11 -0
  139. package/dist/wire/delta.js.map +1 -1
  140. package/dist/wire/inboundFrames.d.ts +2 -0
  141. package/dist/wire/inboundFrames.d.ts.map +1 -1
  142. package/package.json +8 -2
  143. package/src/ai-sdk/index.ts +19 -6
  144. package/src/ai-sdk/modelTools.ts +165 -0
  145. package/src/ai-sdk/toolOptions.ts +18 -0
  146. package/src/ai-sdk/{coordinatedTool.ts → updateTool.ts} +59 -69
  147. package/src/auth/capability.ts +4 -0
  148. package/src/auth/identity.ts +16 -16
  149. package/src/auth/index.ts +31 -3
  150. package/src/auth/schemas.ts +5 -2
  151. package/src/auth/sessionMint.ts +3 -0
  152. package/src/branches.ts +134 -0
  153. package/src/coordination/awaitClaimGrant.ts +18 -2
  154. package/src/coordination/schema.ts +2 -0
  155. package/src/docs/catalog.ts +24 -12
  156. package/src/errorCodes.ts +4 -0
  157. package/src/footprint.ts +0 -0
  158. package/src/index.ts +1 -0
  159. package/src/keys/index.ts +56 -17
  160. package/src/schema/index.ts +1 -1
  161. package/src/schema/openapi.ts +366 -38
  162. package/src/schema/schema.ts +13 -0
  163. package/src/schema/select.ts +30 -0
  164. package/src/server/commit.ts +2 -15
  165. package/src/source/adapter.ts +7 -2
  166. package/src/source/adapterFactory.ts +60 -0
  167. package/src/source/adapterProfile.ts +75 -0
  168. package/src/source/adapters/drizzle.ts +5 -2
  169. package/src/source/adapters/kysely.ts +10 -4
  170. package/src/source/adapters/memory.ts +5 -2
  171. package/src/source/adapters/prisma.ts +5 -2
  172. package/src/source/conformance.ts +18 -0
  173. package/src/source/index.ts +14 -0
  174. package/src/source/types.ts +3 -14
  175. package/src/syncLog/contract.ts +1 -2
  176. package/src/transport/httpClient.ts +8 -1
  177. package/src/wire/accountResponses.ts +5 -6
  178. package/src/wire/auth.ts +30 -3
  179. package/src/wire/delta.ts +11 -0
  180. package/dist/ai-sdk/coordinatedTool.d.ts.map +0 -1
  181. package/dist/ai-sdk/coordinatedTool.js.map +0 -1
@@ -1,2 +1,4 @@
1
- export { coordinatedTool, type CoordinationStrategy, type CoordinatedModel, type CoordinatedToolOptions, type CoordinatedWriteResult, } from './coordinatedTool.js';
1
+ export { updateTool, type UpdateStrategy, type UpdateToolModel, type UpdateToolOptions, type UpdateToolResult, } from './updateTool.js';
2
+ export { createTool, deleteTool, readTool, type CreateToolOptions, type CreateToolResult, type DeleteToolOptions, type DeleteToolResult, type ReadToolOptions, type ReadToolResult, type ToolModel, } from './modelTools.js';
3
+ export type { ModelToolOptions } from './toolOptions.js';
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ai-sdk/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,GAC5B,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ai-sdk/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,SAAS,GACf,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1,2 +1,3 @@
1
- export { coordinatedTool, } from './coordinatedTool.js';
1
+ export { updateTool, } from './updateTool.js';
2
+ export { createTool, deleteTool, readTool, } from './modelTools.js';
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ai-sdk/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,GAKhB,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ai-sdk/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,GAKX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,UAAU,EACV,UAAU,EACV,QAAQ,GAQT,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Small AI SDK adapters for Ablo model resources.
3
+ *
4
+ * The AI SDK owns the agent loop. These helpers only expose Ablo's
5
+ * authoritative model operations as tools, preserving the same credential,
6
+ * validation, idempotency, claims, and settlement behavior as direct SDK use.
7
+ */
8
+ import type { z } from 'zod';
9
+ import type { ClaimParams, ModelCreateParams, ModelDeleteParams, ModelRetrieveParams } from '../resources/modelOperations.js';
10
+ import type { HeldClaim } from '../types/streams.js';
11
+ import type { ModelToolOptions } from './toolOptions.js';
12
+ export interface ToolModel<T, CreateInput = Partial<T>, Fields = T> {
13
+ get(params: ModelRetrieveParams): Promise<T | undefined>;
14
+ create(params: ModelCreateParams<T, CreateInput>): Promise<T>;
15
+ delete(params: ModelDeleteParams<T, Fields>): Promise<void>;
16
+ claim(params: ClaimParams<Fields> & {
17
+ queue: false;
18
+ }): Promise<HeldClaim<T> | null>;
19
+ claim(params: ClaimParams<Fields>): Promise<HeldClaim<T>>;
20
+ }
21
+ export interface ReadToolOptions<TInput, T> extends ModelToolOptions<TInput, ReadToolResult<T>> {
22
+ readonly description: string;
23
+ readonly inputSchema: z.ZodType<TInput>;
24
+ readonly id: (input: TInput) => string;
25
+ }
26
+ export type ReadToolResult<T> = {
27
+ readonly status: 'found';
28
+ readonly row: T;
29
+ } | {
30
+ readonly status: 'not_found';
31
+ readonly message: string;
32
+ };
33
+ export declare function readTool<TInput, T>(model: Pick<ToolModel<T>, 'get'>, options: ReadToolOptions<TInput, T>): import("ai").Tool<TInput, ReadToolResult<T>>;
34
+ export interface CreateToolOptions<TInput, CreateInput, T> extends ModelToolOptions<TInput, CreateToolResult<T>> {
35
+ readonly description: string;
36
+ readonly inputSchema: z.ZodType<TInput>;
37
+ readonly data: (input: TInput) => CreateInput;
38
+ /**
39
+ * Stable ids make retries idempotent. Omit only when the model or server
40
+ * generates the id and duplicate creation is acceptable to the application.
41
+ */
42
+ readonly id?: (input: TInput) => string | undefined;
43
+ }
44
+ export interface CreateToolResult<T> {
45
+ readonly status: 'created';
46
+ readonly row: T;
47
+ }
48
+ export declare function createTool<TInput, T, CreateInput>(model: Pick<ToolModel<T, CreateInput>, 'create'>, options: CreateToolOptions<TInput, CreateInput, T>): import("ai").Tool<TInput, CreateToolResult<T>>;
49
+ export interface DeleteToolOptions<TInput> extends ModelToolOptions<TInput, DeleteToolResult> {
50
+ readonly description: string;
51
+ readonly inputSchema: z.ZodType<TInput>;
52
+ readonly id: (input: TInput) => string;
53
+ /** Defaults to waiting in the server-owned FIFO claim queue. */
54
+ readonly strategy?: 'claim' | 'queue';
55
+ readonly claim?: {
56
+ readonly description?: string;
57
+ };
58
+ }
59
+ export type DeleteToolResult = {
60
+ readonly status: 'deleted';
61
+ readonly id: string;
62
+ } | {
63
+ readonly status: 'claimed';
64
+ readonly message: string;
65
+ };
66
+ export declare function deleteTool<TInput, T, Fields = T>(model: Pick<ToolModel<T, Partial<T>, Fields>, 'claim' | 'delete'>, options: DeleteToolOptions<TInput>): import("ai").Tool<TInput, DeleteToolResult>;
67
+ //# sourceMappingURL=modelTools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modelTools.d.ts","sourceRoot":"","sources":["../../src/ai-sdk/modelTools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Small AI SDK adapters for Ablo model resources.
3
+ *
4
+ * The AI SDK owns the agent loop. These helpers only expose Ablo's
5
+ * authoritative model operations as tools, preserving the same credential,
6
+ * validation, idempotency, claims, and settlement behavior as direct SDK use.
7
+ */
8
+ import { tool } from 'ai';
9
+ export function readTool(model, options) {
10
+ return tool({
11
+ description: options.description,
12
+ title: options.title,
13
+ inputSchema: options.inputSchema,
14
+ inputExamples: options.inputExamples,
15
+ needsApproval: options.needsApproval,
16
+ strict: options.strict,
17
+ outputSchema: options.outputSchema,
18
+ toModelOutput: options.toModelOutput,
19
+ execute: async (input) => {
20
+ const id = options.id(input);
21
+ const row = await model.get({ id });
22
+ return row === undefined
23
+ ? {
24
+ status: 'not_found',
25
+ message: `No accessible row exists with id ${id}.`,
26
+ }
27
+ : { status: 'found', row };
28
+ },
29
+ });
30
+ }
31
+ export function createTool(model, options) {
32
+ return tool({
33
+ description: options.description,
34
+ title: options.title,
35
+ inputSchema: options.inputSchema,
36
+ inputExamples: options.inputExamples,
37
+ needsApproval: options.needsApproval,
38
+ strict: options.strict,
39
+ outputSchema: options.outputSchema,
40
+ toModelOutput: options.toModelOutput,
41
+ execute: async (input) => {
42
+ const id = options.id?.(input);
43
+ const row = await model.create({
44
+ data: options.data(input),
45
+ ...(id !== undefined ? { id } : {}),
46
+ wait: 'confirmed',
47
+ });
48
+ return { status: 'created', row };
49
+ },
50
+ });
51
+ }
52
+ export function deleteTool(model, options) {
53
+ return tool({
54
+ description: options.description,
55
+ title: options.title,
56
+ inputSchema: options.inputSchema,
57
+ inputExamples: options.inputExamples,
58
+ // Destructive tools require approval unless an application deliberately
59
+ // opts into autonomous deletion.
60
+ needsApproval: options.needsApproval ?? true,
61
+ strict: options.strict,
62
+ outputSchema: options.outputSchema,
63
+ toModelOutput: options.toModelOutput,
64
+ execute: async (input, execution) => {
65
+ const id = options.id(input);
66
+ const queue = options.strategy !== 'claim';
67
+ const claim = await model.claim({
68
+ id,
69
+ queue,
70
+ description: options.claim?.description,
71
+ signal: execution.abortSignal,
72
+ });
73
+ if (!claim) {
74
+ return {
75
+ status: 'claimed',
76
+ message: 'Another participant holds this row right now — it was not deleted.',
77
+ };
78
+ }
79
+ try {
80
+ await model.delete({ id, claim, wait: 'confirmed' });
81
+ return { status: 'deleted', id };
82
+ }
83
+ finally {
84
+ await claim.release();
85
+ }
86
+ },
87
+ });
88
+ }
89
+ //# sourceMappingURL=modelTools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modelTools.js","sourceRoot":"","sources":["../../src/ai-sdk/modelTools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { Tool } from 'ai';
2
+ /**
3
+ * AI SDK-native presentation and execution policy shared by Ablo model tools.
4
+ * Ablo owns the data operation; AI SDK owns how the tool is presented,
5
+ * validated, approved, and returned to the model.
6
+ */
7
+ export type ModelToolOptions<TInput, TResult> = Partial<Pick<Tool<TInput, TResult>, 'title' | 'inputExamples' | 'needsApproval' | 'strict' | 'outputSchema' | 'toModelOutput'>>;
8
+ //# sourceMappingURL=toolOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolOptions.d.ts","sourceRoot":"","sources":["../../src/ai-sdk/toolOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAE/B;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,CAAC,MAAM,EAAE,OAAO,IAAI,OAAO,CACrD,IAAI,CACF,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EACnB,OAAO,GACP,eAAe,GACf,eAAe,GACf,QAAQ,GACR,cAAc,GACd,eAAe,CAClB,CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=toolOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolOptions.js","sourceRoot":"","sources":["../../src/ai-sdk/toolOptions.ts"],"names":[],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Turns a write to one of your models into a Vercel AI SDK tool that handles
2
+ * Turns a write to one of your models into an AI SDK tool that handles
3
3
  * multi-agent coordination for you, so an agent can contribute to shared state
4
4
  * without silently overwriting another writer's concurrent change.
5
5
  *
@@ -11,10 +11,10 @@
11
11
  * write:
12
12
  *
13
13
  * ```ts
14
- * import { coordinatedTool } from '@abloatai/transaction/ai-sdk';
14
+ * import { updateTool } from '@abloatai/ablo/ai-sdk';
15
15
  * import { z } from 'zod';
16
16
  *
17
- * const saveSection = coordinatedTool(ablo.documents, {
17
+ * const saveSection = updateTool(ablo.documents, {
18
18
  * description: 'Save your section into the shared document.',
19
19
  * inputSchema: z.object({ text: z.string() }),
20
20
  * id: () => DOC_ID,
@@ -25,7 +25,7 @@
25
25
  * await streamText({ model, messages, tools: { saveSection } });
26
26
  * ```
27
27
  *
28
- * The {@link CoordinatedToolOptions.apply} function is the whole API: a pure
28
+ * The {@link UpdateToolOptions.apply} function is the whole API: a pure
29
29
  * function from the freshest row and the tool input to a patch, in the same
30
30
  * spirit as a functional state update. Everything beneath it — reading the latest
31
31
  * row, the compare-and-swap, backing off between retries, and releasing claims —
@@ -52,32 +52,30 @@
52
52
  * than a hidden wait when it might spend its turn on something else. Works under
53
53
  * any conflict policy.
54
54
  *
55
- * - `'queue'` serializes writers over stateless HTTP. The tool polls to acquire
56
- * the claim until it is granted or `poll.timeoutMs` elapses, so the model calls
57
- * once and the tool waits its turn. Ordering is approximate rather than strict
58
- * first-in-first-out, which would require a persistent connection.
55
+ * - `'queue'` joins Ablo's server-owned FIFO queue. The model calls once and
56
+ * the tool waits for the canonical claim grant; it does not recreate queueing
57
+ * with client-side polling.
59
58
  */
60
59
  import type { z } from 'zod';
61
- import type { ClaimParams, ModelRetrieveParams, ModelUpdateParams } from '../resources/modelOperations.js';
60
+ import type { ClaimParams, ModelUpdateParams } from '../resources/modelOperations.js';
62
61
  import type { ModelUpdater, ContentionOptions } from '../resources/functionalUpdate.js';
63
62
  import type { HeldClaim } from '../types/streams.js';
64
- export type CoordinationStrategy = 'merge' | 'claim' | 'queue';
63
+ import type { ModelToolOptions } from './toolOptions.js';
64
+ export type UpdateStrategy = 'merge' | 'claim' | 'queue';
65
65
  /** The structured result the tool hands back to the model (or the caller). */
66
- export interface CoordinatedWriteResult<T> {
66
+ export interface UpdateToolResult<T> {
67
67
  /**
68
68
  * `'written'` means the change was saved. `'claimed'` means another participant
69
69
  * holds the row, so nothing was saved and the model should try again.
70
- * `'timeout'` means the `'queue'` strategy could not acquire the row within
71
- * `poll.timeoutMs`.
72
70
  */
73
- status: 'written' | 'claimed' | 'timeout';
71
+ status: 'written' | 'claimed';
74
72
  /** The reconciled row, on `'written'`. */
75
73
  row?: T;
76
74
  message?: string;
77
- /** On `'written'` via the `queue` strategy, how long the tool waited in line. */
75
+ /** On `'written'` via the `queue` strategy, how long the tool waited. */
78
76
  waitedMs?: number;
79
77
  }
80
- export interface CoordinatedToolOptions<TInput, T> {
78
+ export interface UpdateToolOptions<TInput, T> extends ModelToolOptions<TInput, UpdateToolResult<T>> {
81
79
  /** Tool description shown to the model. */
82
80
  description: string;
83
81
  /** The schema of what the model may send, as a standard AI SDK / Zod input schema. */
@@ -93,31 +91,26 @@ export interface CoordinatedToolOptions<TInput, T> {
93
91
  */
94
92
  apply: (current: T, input: TInput) => Partial<T>;
95
93
  /** How concurrent writers relate. Defaults to `'merge'`. */
96
- strategy?: CoordinationStrategy;
94
+ strategy?: UpdateStrategy;
97
95
  /** Human-readable coordination metadata attached to the claim, used by the `'claim'` and `'queue'` strategies. */
98
96
  claim?: {
99
97
  description?: string;
100
98
  };
101
99
  /** How many reconcile rounds `'merge'` may take before it gives up with `AbloContentionError`. */
102
100
  retries?: number;
103
- /** Poll interval and overall timeout for `'queue'`. Defaults to 250ms and 30s. */
104
- poll?: {
105
- intervalMs?: number;
106
- timeoutMs?: number;
107
- };
108
101
  }
109
102
  /**
110
103
  * The small model port this helper needs. Both typed transports implement this
111
104
  * exact contract; local-cache methods, wire receipts, and transport lifecycle
112
105
  * deliberately stay out of an AI tool's dependency surface.
113
106
  */
114
- export interface CoordinatedModel<T> {
115
- get(params: ModelRetrieveParams): Promise<T | undefined>;
116
- /** @deprecated Use `get({ id })`. */
117
- retrieve?(params: ModelRetrieveParams): Promise<T | undefined>;
107
+ export interface UpdateToolModel<T> {
118
108
  update(params: ModelUpdateParams<T>): Promise<T>;
119
109
  update(id: string, updater: ModelUpdater<T>, options?: ContentionOptions): Promise<T | undefined>;
110
+ claim(params: ClaimParams<T> & {
111
+ queue: false;
112
+ }): Promise<HeldClaim<T> | null>;
120
113
  claim(params: ClaimParams<T>): Promise<HeldClaim<T>>;
121
114
  }
122
- export declare function coordinatedTool<TInput, T = Record<string, unknown>>(model: CoordinatedModel<T>, options: CoordinatedToolOptions<TInput, T>): import("ai").Tool<TInput, CoordinatedWriteResult<T>>;
123
- //# sourceMappingURL=coordinatedTool.d.ts.map
115
+ export declare function updateTool<TInput, T = Record<string, unknown>>(model: UpdateToolModel<T>, options: UpdateToolOptions<TInput, T>): import("ai").Tool<TInput, UpdateToolResult<T>>;
116
+ //# sourceMappingURL=updateTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateTool.d.ts","sourceRoot":"","sources":["../../src/ai-sdk/updateTool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AAGH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EACV,WAAW,EACX,iBAAiB,EAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACxF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;AAEzD,8EAA8E;AAC9E,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC;;;OAGG;IACH,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;IAC9B,0CAA0C;IAC1C,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAC1C,SAAQ,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACrD,2CAA2C;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,sFAAsF;IACtF,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,iEAAiE;IACjE,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9B;;;;;;OAMG;IACH,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IACjD,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,kHAAkH;IAClH,KAAK,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjC,kGAAkG;IAClG,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACjD,MAAM,CACJ,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAC1B,KAAK,CACH,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,GACxC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAChC,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;CACtD;AAED,wBAAgB,UAAU,CACxB,MAAM,EACN,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3B,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC,kDAyEjE"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Turns a write to one of your models into a Vercel AI SDK tool that handles
2
+ * Turns a write to one of your models into an AI SDK tool that handles
3
3
  * multi-agent coordination for you, so an agent can contribute to shared state
4
4
  * without silently overwriting another writer's concurrent change.
5
5
  *
@@ -11,10 +11,10 @@
11
11
  * write:
12
12
  *
13
13
  * ```ts
14
- * import { coordinatedTool } from '@abloatai/transaction/ai-sdk';
14
+ * import { updateTool } from '@abloatai/ablo/ai-sdk';
15
15
  * import { z } from 'zod';
16
16
  *
17
- * const saveSection = coordinatedTool(ablo.documents, {
17
+ * const saveSection = updateTool(ablo.documents, {
18
18
  * description: 'Save your section into the shared document.',
19
19
  * inputSchema: z.object({ text: z.string() }),
20
20
  * id: () => DOC_ID,
@@ -25,7 +25,7 @@
25
25
  * await streamText({ model, messages, tools: { saveSection } });
26
26
  * ```
27
27
  *
28
- * The {@link CoordinatedToolOptions.apply} function is the whole API: a pure
28
+ * The {@link UpdateToolOptions.apply} function is the whole API: a pure
29
29
  * function from the freshest row and the tool input to a patch, in the same
30
30
  * spirit as a functional state update. Everything beneath it — reading the latest
31
31
  * row, the compare-and-swap, backing off between retries, and releasing claims —
@@ -52,20 +52,23 @@
52
52
  * than a hidden wait when it might spend its turn on something else. Works under
53
53
  * any conflict policy.
54
54
  *
55
- * - `'queue'` serializes writers over stateless HTTP. The tool polls to acquire
56
- * the claim until it is granted or `poll.timeoutMs` elapses, so the model calls
57
- * once and the tool waits its turn. Ordering is approximate rather than strict
58
- * first-in-first-out, which would require a persistent connection.
55
+ * - `'queue'` joins Ablo's server-owned FIFO queue. The model calls once and
56
+ * the tool waits for the canonical claim grant; it does not recreate queueing
57
+ * with client-side polling.
59
58
  */
60
59
  import { tool } from 'ai';
61
- import { AbloClaimedError, AbloNotFoundError } from '@abloatai/transaction/errors';
62
- const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
63
- export function coordinatedTool(model, options) {
60
+ export function updateTool(model, options) {
64
61
  const strategy = options.strategy ?? 'merge';
65
62
  return tool({
66
63
  description: options.description,
64
+ title: options.title,
67
65
  inputSchema: options.inputSchema,
68
- execute: async (input) => {
66
+ inputExamples: options.inputExamples,
67
+ needsApproval: options.needsApproval,
68
+ strict: options.strict,
69
+ outputSchema: options.outputSchema,
70
+ toModelOutput: options.toModelOutput,
71
+ execute: async (input, execution) => {
69
72
  const id = options.id(input);
70
73
  if (strategy === 'merge') {
71
74
  // Read the freshest row, apply the patch, and commit it with a
@@ -73,25 +76,35 @@ export function coordinatedTool(model, options) {
73
76
  // backoff. The model never sees a conflict.
74
77
  const row = await model.update(id, (current) => options.apply(current, input), {
75
78
  retries: options.retries,
79
+ signal: execution.abortSignal,
76
80
  });
77
81
  return { status: 'written', row: row ?? undefined };
78
82
  }
79
83
  // The 'claim' and 'queue' strategies both acquire a claim, write under it,
80
84
  // and release it. They differ only in what they do when the row is already
81
- // held: 'claim' returns a signal to the model, while 'queue' waits and
82
- // retries by polling to acquire.
83
- const acquireWriteRelease = async () => {
85
+ // held: 'claim' returns a signal to the model, while 'queue' waits for
86
+ // the server-owned FIFO grant.
87
+ const acquireWriteRelease = async (queue) => {
84
88
  const claim = await model.claim({
85
89
  id,
86
- queue: false,
90
+ queue,
87
91
  description: options.claim?.description,
92
+ signal: execution.abortSignal,
88
93
  });
94
+ if (!claim) {
95
+ return {
96
+ status: 'claimed',
97
+ message: 'Another participant holds this row right now — it was not saved.',
98
+ };
99
+ }
89
100
  try {
90
- const current = await model.get({ id });
91
- if (current === undefined) {
92
- throw new AbloNotFoundError(`Cannot write ${id}: it does not exist (or is outside this credential's scope).`, [id]);
93
- }
94
- const row = await model.update({ id, data: options.apply(current, input), claim, wait: 'confirmed' });
101
+ const current = claim.data;
102
+ const row = await model.update({
103
+ id,
104
+ data: options.apply(current, input),
105
+ claim,
106
+ wait: 'confirmed',
107
+ });
95
108
  return { status: 'written', row };
96
109
  }
97
110
  finally {
@@ -99,37 +112,13 @@ export function coordinatedTool(model, options) {
99
112
  }
100
113
  };
101
114
  if (strategy === 'claim') {
102
- try {
103
- return await acquireWriteRelease();
104
- }
105
- catch (e) {
106
- if (e instanceof AbloClaimedError) {
107
- return { status: 'claimed', message: 'Another participant holds this row right now — it was NOT saved. Wait briefly and try again.' };
108
- }
109
- throw e;
110
- }
115
+ return acquireWriteRelease(false);
111
116
  }
112
- // strategy === 'queue': poll to acquire the claim over stateless HTTP.
113
- const interval = options.poll?.intervalMs ?? 250;
114
- const timeout = options.poll?.timeoutMs ?? 30_000;
117
+ // The transaction client owns the server FIFO and resolves once granted.
115
118
  const start = Date.now();
116
- for (;;) {
117
- try {
118
- const result = await acquireWriteRelease();
119
- return { ...result, waitedMs: Date.now() - start };
120
- }
121
- catch (e) {
122
- if (e instanceof AbloClaimedError) {
123
- if (Date.now() - start >= timeout) {
124
- return { status: 'timeout', message: `Could not acquire the row within ${timeout}ms.` };
125
- }
126
- await sleep(interval);
127
- continue;
128
- }
129
- throw e;
130
- }
131
- }
119
+ const result = await acquireWriteRelease(true);
120
+ return { ...result, waitedMs: Date.now() - start };
132
121
  },
133
122
  });
134
123
  }
135
- //# sourceMappingURL=coordinatedTool.js.map
124
+ //# sourceMappingURL=updateTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateTool.js","sourceRoot":"","sources":["../../src/ai-sdk/updateTool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AAEH,OAAO,EAAE,IAAI,EAA6B,MAAM,IAAI,CAAC;AAoErD,MAAM,UAAU,UAAU,CAGxB,KAAyB,EAAE,OAAqC;IAChE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC;IAE7C,OAAO,IAAI,CAA8B;QACvC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,OAAO,EAAE,KAAK,EACZ,KAAa,EACb,SAA+B,EACD,EAAE;YAChC,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;YAE7B,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;gBACzB,+DAA+D;gBAC/D,uEAAuE;gBACvE,4CAA4C;gBAC5C,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;oBAC7E,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,MAAM,EAAE,SAAS,CAAC,WAAW;iBAC9B,CAAC,CAAC;gBACH,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,IAAI,SAAS,EAAE,CAAC;YACtD,CAAC;YAED,2EAA2E;YAC3E,2EAA2E;YAC3E,uEAAuE;YACvE,+BAA+B;YAC/B,MAAM,mBAAmB,GAAG,KAAK,EAC/B,KAAc,EACgB,EAAE;gBAChC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC;oBAC9B,EAAE;oBACF,KAAK;oBACL,WAAW,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW;oBACvC,MAAM,EAAE,SAAS,CAAC,WAAW;iBAC9B,CAAC,CAAC;gBACH,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO;wBACL,MAAM,EAAE,SAAS;wBACjB,OAAO,EACL,kEAAkE;qBACrE,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;oBAC3B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;wBAC7B,EAAE;wBACF,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC;wBACnC,KAAK;wBACL,IAAI,EAAE,WAAW;qBAClB,CAAC,CAAC;oBACH,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;gBACpC,CAAC;wBAAS,CAAC;oBACT,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;gBACxB,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;gBACzB,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACpC,CAAC;YAED,yEAAyE;YACzE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC/C,OAAO,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;QACrD,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -165,6 +165,9 @@ export declare function grantedOperations(can: Readonly<Record<string, readonly
165
165
  */
166
166
  export declare const capabilityScopeSchema: z.ZodObject<{
167
167
  organizationId: z.ZodString;
168
+ projectId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
169
+ branchId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
170
+ branchRoot: z.ZodDefault<z.ZodBoolean>;
168
171
  syncGroups: z.ZodArray<z.ZodString>;
169
172
  operations: z.ZodArray<z.ZodTemplateLiteral<`${string}.update` | `${string}.create` | `${string}.delete` | `${string}.read`>>;
170
173
  participantKind: z.ZodEnum<{
@@ -198,6 +201,9 @@ export declare const capabilityMintResponseSchema: z.ZodObject<{
198
201
  organizationId: z.ZodString;
199
202
  scope: z.ZodObject<{
200
203
  organizationId: z.ZodString;
204
+ projectId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
205
+ branchId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
206
+ branchRoot: z.ZodDefault<z.ZodBoolean>;
201
207
  syncGroups: z.ZodArray<z.ZodString>;
202
208
  operations: z.ZodArray<z.ZodTemplateLiteral<`${string}.update` | `${string}.create` | `${string}.delete` | `${string}.read`>>;
203
209
  participantKind: z.ZodEnum<{
@@ -1 +1 @@
1
- {"version":3,"file":"capability.d.ts","sourceRoot":"","sources":["../../src/auth/capability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capability.d.ts","sourceRoot":"","sources":["../../src/auth/capability.ts"],"names":[],"mappings":"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"}
@@ -170,6 +170,10 @@ export function grantedOperations(can, wireNames) {
170
170
  */
171
171
  export const capabilityScopeSchema = z.object({
172
172
  organizationId: z.string().min(1),
173
+ /** Credential target. Branch id is authoritative; null supports self-hosted identities. */
174
+ projectId: z.string().min(1).nullable().default(null),
175
+ branchId: z.string().min(1).nullable().default(null),
176
+ branchRoot: z.boolean().default(false),
173
177
  /**
174
178
  * The ROW axis — which sync groups this credential may act within. Read back
175
179
  * as plain strings rather than the branded form the request enforces: this is
@@ -1 +1 @@
1
- {"version":3,"file":"capability.js","sourceRoot":"","sources":["../../src/auth/capability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capability.js","sourceRoot":"","sources":["../../src/auth/capability.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,9 @@ export declare const capabilityRotationResponseSchema: z.ZodObject<{
16
16
  organizationId: z.ZodString;
17
17
  scope: z.ZodObject<{
18
18
  organizationId: z.ZodString;
19
+ projectId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
20
+ branchId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
21
+ branchRoot: z.ZodDefault<z.ZodBoolean>;
19
22
  syncGroups: z.ZodArray<z.ZodString>;
20
23
  operations: z.ZodArray<z.ZodTemplateLiteral<`${string}.update` | `${string}.create` | `${string}.delete` | `${string}.read`>>;
21
24
  participantKind: z.ZodEnum<{
@@ -1 +1 @@
1
- {"version":3,"file":"capabilityLifecycle.d.ts","sourceRoot":"","sources":["../../src/auth/capabilityLifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EAChB,MAAM,+BAA+B,CAAC;AAEvC,eAAO,MAAM,+BAA+B;;;;iBAI1C,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;iBAG1C,CAAC;AAEH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;iBAU3C,CAAC;AAEH,UAAU,0BAA0B;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAwB,SAAQ,0BAA0B;IACzE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBACf,SAAQ,0BAA0B,EAChC,mBAAmB;CAAG;AAwE1B,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,iBAAiB,CAAC,CAa5B;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,eAAe,CAAC,CAiC1B"}
1
+ {"version":3,"file":"capabilityLifecycle.d.ts","sourceRoot":"","sources":["../../src/auth/capabilityLifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EAChB,MAAM,+BAA+B,CAAC;AAEvC,eAAO,MAAM,+BAA+B;;;;iBAI1C,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;iBAG1C,CAAC;AAEH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;iBAU3C,CAAC;AAEH,UAAU,0BAA0B;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAwB,SAAQ,0BAA0B;IACzE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBACf,SAAQ,0BAA0B,EAChC,mBAAmB;CAAG;AAwE1B,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,iBAAiB,CAAC,CAa5B;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,eAAe,CAAC,CAiC1B"}
@@ -33,6 +33,8 @@ export interface IdentityResolveInput {
33
33
  };
34
34
  readonly internalOptions: {
35
35
  readonly organizationId?: string;
36
+ readonly branchId?: string;
37
+ readonly branchRoot?: boolean;
36
38
  };
37
39
  readonly url: string;
38
40
  readonly kind: ParticipantKind;
@@ -47,10 +49,10 @@ export interface ResolvedIdentity {
47
49
  readonly accountScope: string;
48
50
  /** Concrete project selected by the credential. The org id is the default project. */
49
51
  readonly projectId: string | null;
50
- /** Data environment selected by the credential. Null for explicit/self-hosted identities. */
51
- readonly environment: 'sandbox' | 'production' | null;
52
- /** Concrete sandbox selected by the credential, when applicable. */
53
- readonly sandboxId: string | null;
52
+ /** Immutable transaction branch selected by the credential. */
53
+ readonly branchId: string | null;
54
+ /** True only when branchId is the project's production root. */
55
+ readonly branchRoot: boolean;
54
56
  readonly teamIds: string[] | undefined;
55
57
  readonly capabilityToken: string | undefined;
56
58
  readonly syncGroups: readonly string[] | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/auth/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAI/D,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAGhE,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE;QAChB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;QAClC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QACnC,QAAQ,CAAC,IAAI,CAAC,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC;QACnD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;KAChC,CAAC;IACF,QAAQ,CAAC,eAAe,EAAE;QAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/D,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI,CAAC;IAC9D,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,eAAe,EAAE,cAAc,CAAC;IACzC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,sFAAsF;IACtF,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,6FAA6F;IAC7F,QAAQ,CAAC,WAAW,EAAE,SAAS,GAAG,YAAY,GAAG,IAAI,CAAC;IACtD,oEAAoE;IACpE,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IACnD,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,4FAA4F;IAC5F,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACpD;AAED,wBAAsB,0BAA0B,CAC9C,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,CAyH3B"}
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/auth/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAI/D,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAGhE,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE;QAChB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;QAClC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QACnC,QAAQ,CAAC,IAAI,CAAC,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC;QACnD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;KAChC,CAAC;IACF,QAAQ,CAAC,eAAe,EAAE;QACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;KAC/B,CAAC;IACF,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI,CAAC;IAC9D,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,eAAe,EAAE,cAAc,CAAC;IACzC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,sFAAsF;IACtF,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,gEAAgE;IAChE,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IACnD,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,4FAA4F;IAC5F,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACpD;AAED,wBAAsB,0BAA0B,CAC9C,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,CAyH3B"}