@superdurable/dex 1.10.1 → 1.11.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/README.md +41 -3
- package/dist/src/attribute-hard-delete.d.ts +16 -0
- package/dist/src/attribute-hard-delete.js +59 -0
- package/dist/src/attribute-hard-delete.js.map +1 -0
- package/dist/src/attribute-store-sync.d.ts +1 -0
- package/dist/src/attribute-store-sync.js +3 -0
- package/dist/src/attribute-store-sync.js.map +1 -1
- package/dist/src/client.d.ts +9 -0
- package/dist/src/client.js +55 -6
- package/dist/src/client.js.map +1 -1
- package/dist/src/gen/dex.d.ts +8 -0
- package/dist/src/gen/dex.js +12 -1
- package/dist/src/gen/dex.js.map +1 -1
- package/dist/src/invocation-context.js +4 -1
- package/dist/src/invocation-context.js.map +1 -1
- package/dist/src/persistence.d.ts +182 -0
- package/dist/src/persistence.js +191 -0
- package/dist/src/persistence.js.map +1 -1
- package/dist/src/sdk-version.generated.d.ts +1 -1
- package/dist/src/sdk-version.generated.js +1 -1
- package/dist/src/server-protocol.js +1 -1
- package/dist/src/worker-dispatcher.d.ts +3 -1
- package/dist/src/worker-dispatcher.js +20 -3
- package/dist/src/worker-dispatcher.js.map +1 -1
- package/dist/src/worker.js +1 -1
- package/dist/src/worker.js.map +1 -1
- package/native/windows-x86_64/dex_blob_cache_node.node +0 -0
- package/package.json +1 -1
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
// See the LICENSE file in the repository root.
|
|
6
6
|
//
|
|
7
7
|
// SPDX-License-Identifier: LicenseRef-Sustainable-Use-1.0
|
|
8
|
+
import { isHardDeleteOnNullDefinition, requireHardDeleteOnNullValueKind, } from "./attribute-hard-delete.js";
|
|
8
9
|
import { mapAttributeStoreSync } from "./attribute-store-sync.js";
|
|
9
10
|
import { ConditionStatus, IndexType as ProtoIndexType, } from "./gen/dex.js";
|
|
10
11
|
import { requireFlowStream } from "./flow.js";
|
|
@@ -205,9 +206,10 @@ export class InvocationContext {
|
|
|
205
206
|
const key = definitionName(attribute, instance);
|
|
206
207
|
this.attributeWrites.set(key, {
|
|
207
208
|
key,
|
|
208
|
-
value: encodeValue(attribute.codec, value),
|
|
209
|
+
value: requireHardDeleteOnNullValueKind(attribute, key, encodeValue(attribute.codec, value)),
|
|
209
210
|
indexConfig: mapIndex(attribute.index),
|
|
210
211
|
syncConfig: mapAttributeStoreSync(attribute),
|
|
212
|
+
isHardDeleteOnNull: isHardDeleteOnNullDefinition(attribute),
|
|
211
213
|
});
|
|
212
214
|
}
|
|
213
215
|
deleteAttribute(attribute, instance) {
|
|
@@ -218,6 +220,7 @@ export class InvocationContext {
|
|
|
218
220
|
value: deletionValue(),
|
|
219
221
|
indexConfig: mapIndex(attribute.index),
|
|
220
222
|
syncConfig: mapAttributeStoreSync(attribute),
|
|
223
|
+
isHardDeleteOnNull: isHardDeleteOnNullDefinition(attribute),
|
|
221
224
|
});
|
|
222
225
|
}
|
|
223
226
|
attributeMapKeys(attribute) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invocation-context.js","sourceRoot":"","sources":["../../src/invocation-context.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"invocation-context.js","sourceRoot":"","sources":["../../src/invocation-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -88,8 +88,96 @@ export declare class Attribute<T> {
|
|
|
88
88
|
* Projection is asynchronous and latest-state only. Deletion writes SQL `NULL`, projection failures do
|
|
89
89
|
* not roll back Flow Attribute writes, and the Flow must select a configured Attribute Store name.
|
|
90
90
|
* @returns A new synced definition; this definition remains unchanged.
|
|
91
|
+
* @throws {TypeError} When this definition uses {@link Attribute.hardDeleteOnNull}.
|
|
91
92
|
*/
|
|
92
93
|
syncToAttributeStore(): Attribute<T>;
|
|
94
|
+
/**
|
|
95
|
+
* Returns an immutable Attribute definition for short-lived secrets that Dex can permanently delete.
|
|
96
|
+
*
|
|
97
|
+
* Use this option for values such as API keys that must not remain in Flow history. Dex stores
|
|
98
|
+
* each value of a hard-delete Attribute only in the Dex blob store, never in Flow history.
|
|
99
|
+
* Deleting the Attribute or setting it to `null` or `undefined` permanently deletes the stored value.
|
|
100
|
+
* Register the returned definition in the Flow's PersistenceSchema. Use that same definition for
|
|
101
|
+
* handler reads and writes, InitialAttribute values, and SubFlow initial Attributes.
|
|
102
|
+
*
|
|
103
|
+
* Only string and object values are supported. Object values include JSON values and byte arrays.
|
|
104
|
+
* Numeric and Boolean values are rejected. A built-in numeric or Boolean codec fails here. A custom
|
|
105
|
+
* codec that encodes a number or Boolean fails when the value is written. Deletion is always allowed.
|
|
106
|
+
* A hard-delete Attribute cannot have an index and cannot use {@link Attribute.syncToAttributeStore}.
|
|
107
|
+
* {@link Client.waitForAttributeMatch} rejects a hard-delete Attribute before contacting Dex.
|
|
108
|
+
*
|
|
109
|
+
* Writes require a Dex Server with an enabled blob store and Server protocol version 3 or later.
|
|
110
|
+
* Otherwise, the write fails. The Client checks the Server protocol version once before its first
|
|
111
|
+
* hard-delete write. The Worker checks it at startup and fails any handler result that writes a
|
|
112
|
+
* hard-delete Attribute to an older Server. Step and RPC handlers receive the value inline. The SDK
|
|
113
|
+
* never stores it in the local blob cache.
|
|
114
|
+
*
|
|
115
|
+
* Limitations:
|
|
116
|
+
* - Each Flow keeps one stored copy per Attribute key and overwrites it in place.
|
|
117
|
+
* - A Step or RPC attempt writes or deletes the stored value before Dex commits its result.
|
|
118
|
+
* A retried attempt, other Steps and RPCs, and Client reads can therefore observe a write or
|
|
119
|
+
* deletion from an attempt that later failed.
|
|
120
|
+
* - When concurrent Steps or RPCs write the same key, the final stored value may not be the value
|
|
121
|
+
* of the last committed write.
|
|
122
|
+
* - A failed `startFlow` or SubFlow start for a Flow ID that is already running still overwrites
|
|
123
|
+
* the running Flow's stored value. A null initial value deletes it.
|
|
124
|
+
* - Executions that reuse a Flow ID share the stored value.
|
|
125
|
+
* - {@link Client.timeTravel} does not restore a deleted value. A deleted value reads as absent.
|
|
126
|
+
* - A Flow retry or a restarted SubFlow starts from the original initial value. If an
|
|
127
|
+
* earlier run deleted that value, the new run reads it as absent.
|
|
128
|
+
* - Removing {@link Attribute.hardDeleteOnNull} from a definition leaves the stored value in place
|
|
129
|
+
* until Dex removes the Flow. Delete the value with the hard-delete definition first.
|
|
130
|
+
* - Values remain until they are deleted, or until Dex removes the Flow through retention and
|
|
131
|
+
* blob cleanup.
|
|
132
|
+
* - Blob store backups or bucket versioning can retain copies outside Dex's control.
|
|
133
|
+
*
|
|
134
|
+
* @example
|
|
135
|
+
* ```ts
|
|
136
|
+
* const apiKey = new Attribute("api-key", stringCodec).hardDeleteOnNull();
|
|
137
|
+
*
|
|
138
|
+
* class CallVendorStep implements Step<string> {
|
|
139
|
+
* public readonly inputCodec = stringCodec;
|
|
140
|
+
*
|
|
141
|
+
* public getStepType(): string {
|
|
142
|
+
* return "CallVendorStep";
|
|
143
|
+
* }
|
|
144
|
+
*
|
|
145
|
+
* public async execute(context: Context, vendorUrl: string): Promise<StepDecision> {
|
|
146
|
+
* const response = await fetch(vendorUrl, {
|
|
147
|
+
* headers: { authorization: `Bearer ${apiKey.get(context)}` },
|
|
148
|
+
* });
|
|
149
|
+
* apiKey.delete(context);
|
|
150
|
+
* return gracefulComplete(response.status);
|
|
151
|
+
* }
|
|
152
|
+
* }
|
|
153
|
+
*
|
|
154
|
+
* class VendorCallFlow implements Flow<string> {
|
|
155
|
+
* private readonly callVendor = new CallVendorStep();
|
|
156
|
+
*
|
|
157
|
+
* public getFlowType(): string {
|
|
158
|
+
* return "VendorCallFlow";
|
|
159
|
+
* }
|
|
160
|
+
*
|
|
161
|
+
* public getSteps() {
|
|
162
|
+
* return StepList.startStep(this.callVendor);
|
|
163
|
+
* }
|
|
164
|
+
*
|
|
165
|
+
* public getPersistenceSchema(): PersistenceSchema {
|
|
166
|
+
* return { attributes: [apiKey] };
|
|
167
|
+
* }
|
|
168
|
+
* }
|
|
169
|
+
*
|
|
170
|
+
* const flow = new VendorCallFlow();
|
|
171
|
+
* const client = new Client(new Registry([flow]), cache);
|
|
172
|
+
* await client.startFlow(flow, "vendor-call-42", "https://vendor.example/report", {
|
|
173
|
+
* attributes: [InitialAttribute.of(apiKey, process.env.VENDOR_API_KEY ?? "")],
|
|
174
|
+
* });
|
|
175
|
+
* ```
|
|
176
|
+
* @returns A new hard-delete definition; this definition remains unchanged.
|
|
177
|
+
* @throws {TypeError} When this definition has an index, uses Attribute Store synchronization, or
|
|
178
|
+
* uses a built-in numeric or Boolean codec.
|
|
179
|
+
*/
|
|
180
|
+
hardDeleteOnNull(): Attribute<T>;
|
|
93
181
|
/**
|
|
94
182
|
* Creates a lock request for this Attribute.
|
|
95
183
|
* @returns A lock for this singleton Attribute.
|
|
@@ -157,8 +245,102 @@ export declare class AttributeMap<T> {
|
|
|
157
245
|
* Deletion writes SQL `NULL`, projection failures do not roll back Flow Attribute writes, and the Flow
|
|
158
246
|
* must select a configured Attribute Store name.
|
|
159
247
|
* @returns A new synced definition; this definition remains unchanged.
|
|
248
|
+
* @throws {TypeError} When this definition uses {@link AttributeMap.hardDeleteOnNull}.
|
|
160
249
|
*/
|
|
161
250
|
syncToAttributeStore(): AttributeMap<T>;
|
|
251
|
+
/**
|
|
252
|
+
* Returns an immutable AttributeMap definition for short-lived secrets that Dex can permanently delete.
|
|
253
|
+
*
|
|
254
|
+
* Use this option for per-instance values such as API keys or access tokens that must not remain
|
|
255
|
+
* in Flow history. Dex stores each instance value only in the Dex blob store, never in Flow history.
|
|
256
|
+
* Deleting an instance or setting it to `null` or `undefined` permanently deletes its stored value.
|
|
257
|
+
* Register the returned definition in the Flow's PersistenceSchema. Use that same definition for
|
|
258
|
+
* handler reads and writes, InitialAttribute values, and SubFlow initial Attributes.
|
|
259
|
+
*
|
|
260
|
+
* Only string and object values are supported. Object values include JSON values and byte arrays.
|
|
261
|
+
* Numeric and Boolean values are rejected. A built-in numeric or Boolean codec fails here. A custom
|
|
262
|
+
* codec that encodes a number or Boolean fails when the value is written. Deletion is always allowed.
|
|
263
|
+
* A hard-delete AttributeMap cannot have an index and cannot use
|
|
264
|
+
* {@link AttributeMap.syncToAttributeStore}. {@link Client.waitForAttributeMatch} rejects a
|
|
265
|
+
* hard-delete AttributeMap before contacting Dex.
|
|
266
|
+
*
|
|
267
|
+
* Writes require a Dex Server with an enabled blob store and Server protocol version 3 or later.
|
|
268
|
+
* Otherwise, the write fails. The Client checks the Server protocol version once before its first
|
|
269
|
+
* hard-delete write. The Worker checks it at startup and fails any handler result that writes a
|
|
270
|
+
* hard-delete AttributeMap instance to an older Server. Step and RPC handlers receive instance
|
|
271
|
+
* values inline. The SDK never stores them in the local blob cache.
|
|
272
|
+
*
|
|
273
|
+
* Limitations:
|
|
274
|
+
* - Each Flow keeps one stored copy per map instance and overwrites it in place.
|
|
275
|
+
* - A Step or RPC attempt writes or deletes the stored value before Dex commits its result.
|
|
276
|
+
* A retried attempt, other Steps and RPCs, and Client reads can therefore observe a write or
|
|
277
|
+
* deletion from an attempt that later failed.
|
|
278
|
+
* - When concurrent Steps or RPCs write the same instance, the final stored value may not be the
|
|
279
|
+
* value of the last committed write.
|
|
280
|
+
* - A failed `startFlow` or SubFlow start for a Flow ID that is already running still overwrites
|
|
281
|
+
* the running Flow's stored value. A null initial value deletes it.
|
|
282
|
+
* - Executions that reuse a Flow ID share the stored values.
|
|
283
|
+
* - {@link Client.timeTravel} does not restore a deleted value. A deleted instance reads as absent.
|
|
284
|
+
* - A Flow retry or a restarted SubFlow starts from the original initial value. If an
|
|
285
|
+
* earlier run deleted that value, the new run reads it as absent.
|
|
286
|
+
* - Removing {@link AttributeMap.hardDeleteOnNull} from a definition leaves the stored value in place
|
|
287
|
+
* until Dex removes the Flow. Delete the value with the hard-delete definition first.
|
|
288
|
+
* - Values remain until they are deleted, or until Dex removes the Flow through retention and
|
|
289
|
+
* blob cleanup.
|
|
290
|
+
* - Blob store backups or bucket versioning can retain copies outside Dex's control.
|
|
291
|
+
*
|
|
292
|
+
* @example
|
|
293
|
+
* ```ts
|
|
294
|
+
* type VendorToken = { readonly token: string };
|
|
295
|
+
* const vendorTokens = new AttributeMap("vendor-tokens", jsonCodec<VendorToken>())
|
|
296
|
+
* .hardDeleteOnNull();
|
|
297
|
+
*
|
|
298
|
+
* class RevokeTokenStep implements Step<string> {
|
|
299
|
+
* public readonly inputCodec = stringCodec;
|
|
300
|
+
*
|
|
301
|
+
* public getStepType(): string {
|
|
302
|
+
* return "RevokeTokenStep";
|
|
303
|
+
* }
|
|
304
|
+
*
|
|
305
|
+
* public getStepOptions(): StepOptions {
|
|
306
|
+
* return { executeLoadAttributeMapInstances: [vendorTokens.load("billing")] };
|
|
307
|
+
* }
|
|
308
|
+
*
|
|
309
|
+
* public async execute(context: Context, revokeUrl: string): Promise<StepDecision> {
|
|
310
|
+
* const { token } = vendorTokens.get(context, "billing");
|
|
311
|
+
* await fetch(revokeUrl, { method: "POST", body: token });
|
|
312
|
+
* vendorTokens.delete(context, "billing");
|
|
313
|
+
* return gracefulComplete("revoked");
|
|
314
|
+
* }
|
|
315
|
+
* }
|
|
316
|
+
*
|
|
317
|
+
* class TokenRevocationFlow implements Flow<string> {
|
|
318
|
+
* private readonly revokeToken = new RevokeTokenStep();
|
|
319
|
+
*
|
|
320
|
+
* public getFlowType(): string {
|
|
321
|
+
* return "TokenRevocationFlow";
|
|
322
|
+
* }
|
|
323
|
+
*
|
|
324
|
+
* public getSteps() {
|
|
325
|
+
* return StepList.startStep(this.revokeToken);
|
|
326
|
+
* }
|
|
327
|
+
*
|
|
328
|
+
* public getPersistenceSchema(): PersistenceSchema {
|
|
329
|
+
* return { attributes: [vendorTokens] };
|
|
330
|
+
* }
|
|
331
|
+
* }
|
|
332
|
+
*
|
|
333
|
+
* const flow = new TokenRevocationFlow();
|
|
334
|
+
* const client = new Client(new Registry([flow]), cache);
|
|
335
|
+
* await client.startFlow(flow, "revoke-42", "https://vendor.example/revoke", {
|
|
336
|
+
* attributes: [InitialAttribute.mapValue(vendorTokens, "billing", { token: "token-value" })],
|
|
337
|
+
* });
|
|
338
|
+
* ```
|
|
339
|
+
* @returns A new hard-delete definition; this definition remains unchanged.
|
|
340
|
+
* @throws {TypeError} When this definition has an index, uses Attribute Store synchronization, or
|
|
341
|
+
* uses a built-in numeric or Boolean codec.
|
|
342
|
+
*/
|
|
343
|
+
hardDeleteOnNull(): AttributeMap<T>;
|
|
162
344
|
/**
|
|
163
345
|
* Creates a lock request scoped to one map instance.
|
|
164
346
|
* @param instance - The map instance. Slash is prohibited because it is a reserved character.
|
package/dist/src/persistence.js
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
// See the LICENSE file in the repository root.
|
|
6
6
|
//
|
|
7
7
|
// SPDX-License-Identifier: LicenseRef-Sustainable-Use-1.0
|
|
8
|
+
import { markHardDeleteOnNull, requireHardDeleteOnNullCompatible, requireNotHardDeleteOnNull, } from "./attribute-hard-delete.js";
|
|
8
9
|
import { markAttributeStoreSynced } from "./attribute-store-sync.js";
|
|
9
10
|
import { requireMapInstance, requirePersistenceDefinitionName } from "./validation.js";
|
|
10
11
|
/** Selects how Dex indexes an Attribute for Flow search. */
|
|
@@ -81,10 +82,102 @@ export class Attribute {
|
|
|
81
82
|
* Projection is asynchronous and latest-state only. Deletion writes SQL `NULL`, projection failures do
|
|
82
83
|
* not roll back Flow Attribute writes, and the Flow must select a configured Attribute Store name.
|
|
83
84
|
* @returns A new synced definition; this definition remains unchanged.
|
|
85
|
+
* @throws {TypeError} When this definition uses {@link Attribute.hardDeleteOnNull}.
|
|
84
86
|
*/
|
|
85
87
|
syncToAttributeStore() {
|
|
88
|
+
requireNotHardDeleteOnNull(this, "syncToAttributeStore");
|
|
86
89
|
return markAttributeStoreSynced(new Attribute(this.name, this.codec, this.index));
|
|
87
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Returns an immutable Attribute definition for short-lived secrets that Dex can permanently delete.
|
|
93
|
+
*
|
|
94
|
+
* Use this option for values such as API keys that must not remain in Flow history. Dex stores
|
|
95
|
+
* each value of a hard-delete Attribute only in the Dex blob store, never in Flow history.
|
|
96
|
+
* Deleting the Attribute or setting it to `null` or `undefined` permanently deletes the stored value.
|
|
97
|
+
* Register the returned definition in the Flow's PersistenceSchema. Use that same definition for
|
|
98
|
+
* handler reads and writes, InitialAttribute values, and SubFlow initial Attributes.
|
|
99
|
+
*
|
|
100
|
+
* Only string and object values are supported. Object values include JSON values and byte arrays.
|
|
101
|
+
* Numeric and Boolean values are rejected. A built-in numeric or Boolean codec fails here. A custom
|
|
102
|
+
* codec that encodes a number or Boolean fails when the value is written. Deletion is always allowed.
|
|
103
|
+
* A hard-delete Attribute cannot have an index and cannot use {@link Attribute.syncToAttributeStore}.
|
|
104
|
+
* {@link Client.waitForAttributeMatch} rejects a hard-delete Attribute before contacting Dex.
|
|
105
|
+
*
|
|
106
|
+
* Writes require a Dex Server with an enabled blob store and Server protocol version 3 or later.
|
|
107
|
+
* Otherwise, the write fails. The Client checks the Server protocol version once before its first
|
|
108
|
+
* hard-delete write. The Worker checks it at startup and fails any handler result that writes a
|
|
109
|
+
* hard-delete Attribute to an older Server. Step and RPC handlers receive the value inline. The SDK
|
|
110
|
+
* never stores it in the local blob cache.
|
|
111
|
+
*
|
|
112
|
+
* Limitations:
|
|
113
|
+
* - Each Flow keeps one stored copy per Attribute key and overwrites it in place.
|
|
114
|
+
* - A Step or RPC attempt writes or deletes the stored value before Dex commits its result.
|
|
115
|
+
* A retried attempt, other Steps and RPCs, and Client reads can therefore observe a write or
|
|
116
|
+
* deletion from an attempt that later failed.
|
|
117
|
+
* - When concurrent Steps or RPCs write the same key, the final stored value may not be the value
|
|
118
|
+
* of the last committed write.
|
|
119
|
+
* - A failed `startFlow` or SubFlow start for a Flow ID that is already running still overwrites
|
|
120
|
+
* the running Flow's stored value. A null initial value deletes it.
|
|
121
|
+
* - Executions that reuse a Flow ID share the stored value.
|
|
122
|
+
* - {@link Client.timeTravel} does not restore a deleted value. A deleted value reads as absent.
|
|
123
|
+
* - A Flow retry or a restarted SubFlow starts from the original initial value. If an
|
|
124
|
+
* earlier run deleted that value, the new run reads it as absent.
|
|
125
|
+
* - Removing {@link Attribute.hardDeleteOnNull} from a definition leaves the stored value in place
|
|
126
|
+
* until Dex removes the Flow. Delete the value with the hard-delete definition first.
|
|
127
|
+
* - Values remain until they are deleted, or until Dex removes the Flow through retention and
|
|
128
|
+
* blob cleanup.
|
|
129
|
+
* - Blob store backups or bucket versioning can retain copies outside Dex's control.
|
|
130
|
+
*
|
|
131
|
+
* @example
|
|
132
|
+
* ```ts
|
|
133
|
+
* const apiKey = new Attribute("api-key", stringCodec).hardDeleteOnNull();
|
|
134
|
+
*
|
|
135
|
+
* class CallVendorStep implements Step<string> {
|
|
136
|
+
* public readonly inputCodec = stringCodec;
|
|
137
|
+
*
|
|
138
|
+
* public getStepType(): string {
|
|
139
|
+
* return "CallVendorStep";
|
|
140
|
+
* }
|
|
141
|
+
*
|
|
142
|
+
* public async execute(context: Context, vendorUrl: string): Promise<StepDecision> {
|
|
143
|
+
* const response = await fetch(vendorUrl, {
|
|
144
|
+
* headers: { authorization: `Bearer ${apiKey.get(context)}` },
|
|
145
|
+
* });
|
|
146
|
+
* apiKey.delete(context);
|
|
147
|
+
* return gracefulComplete(response.status);
|
|
148
|
+
* }
|
|
149
|
+
* }
|
|
150
|
+
*
|
|
151
|
+
* class VendorCallFlow implements Flow<string> {
|
|
152
|
+
* private readonly callVendor = new CallVendorStep();
|
|
153
|
+
*
|
|
154
|
+
* public getFlowType(): string {
|
|
155
|
+
* return "VendorCallFlow";
|
|
156
|
+
* }
|
|
157
|
+
*
|
|
158
|
+
* public getSteps() {
|
|
159
|
+
* return StepList.startStep(this.callVendor);
|
|
160
|
+
* }
|
|
161
|
+
*
|
|
162
|
+
* public getPersistenceSchema(): PersistenceSchema {
|
|
163
|
+
* return { attributes: [apiKey] };
|
|
164
|
+
* }
|
|
165
|
+
* }
|
|
166
|
+
*
|
|
167
|
+
* const flow = new VendorCallFlow();
|
|
168
|
+
* const client = new Client(new Registry([flow]), cache);
|
|
169
|
+
* await client.startFlow(flow, "vendor-call-42", "https://vendor.example/report", {
|
|
170
|
+
* attributes: [InitialAttribute.of(apiKey, process.env.VENDOR_API_KEY ?? "")],
|
|
171
|
+
* });
|
|
172
|
+
* ```
|
|
173
|
+
* @returns A new hard-delete definition; this definition remains unchanged.
|
|
174
|
+
* @throws {TypeError} When this definition has an index, uses Attribute Store synchronization, or
|
|
175
|
+
* uses a built-in numeric or Boolean codec.
|
|
176
|
+
*/
|
|
177
|
+
hardDeleteOnNull() {
|
|
178
|
+
requireHardDeleteOnNullCompatible(this);
|
|
179
|
+
return markHardDeleteOnNull(new Attribute(this.name, this.codec, this.index));
|
|
180
|
+
}
|
|
88
181
|
/**
|
|
89
182
|
* Creates a lock request for this Attribute.
|
|
90
183
|
* @returns A lock for this singleton Attribute.
|
|
@@ -172,10 +265,108 @@ export class AttributeMap {
|
|
|
172
265
|
* Deletion writes SQL `NULL`, projection failures do not roll back Flow Attribute writes, and the Flow
|
|
173
266
|
* must select a configured Attribute Store name.
|
|
174
267
|
* @returns A new synced definition; this definition remains unchanged.
|
|
268
|
+
* @throws {TypeError} When this definition uses {@link AttributeMap.hardDeleteOnNull}.
|
|
175
269
|
*/
|
|
176
270
|
syncToAttributeStore() {
|
|
271
|
+
requireNotHardDeleteOnNull(this, "syncToAttributeStore");
|
|
177
272
|
return markAttributeStoreSynced(new AttributeMap(this.name, this.codec, this.index));
|
|
178
273
|
}
|
|
274
|
+
/**
|
|
275
|
+
* Returns an immutable AttributeMap definition for short-lived secrets that Dex can permanently delete.
|
|
276
|
+
*
|
|
277
|
+
* Use this option for per-instance values such as API keys or access tokens that must not remain
|
|
278
|
+
* in Flow history. Dex stores each instance value only in the Dex blob store, never in Flow history.
|
|
279
|
+
* Deleting an instance or setting it to `null` or `undefined` permanently deletes its stored value.
|
|
280
|
+
* Register the returned definition in the Flow's PersistenceSchema. Use that same definition for
|
|
281
|
+
* handler reads and writes, InitialAttribute values, and SubFlow initial Attributes.
|
|
282
|
+
*
|
|
283
|
+
* Only string and object values are supported. Object values include JSON values and byte arrays.
|
|
284
|
+
* Numeric and Boolean values are rejected. A built-in numeric or Boolean codec fails here. A custom
|
|
285
|
+
* codec that encodes a number or Boolean fails when the value is written. Deletion is always allowed.
|
|
286
|
+
* A hard-delete AttributeMap cannot have an index and cannot use
|
|
287
|
+
* {@link AttributeMap.syncToAttributeStore}. {@link Client.waitForAttributeMatch} rejects a
|
|
288
|
+
* hard-delete AttributeMap before contacting Dex.
|
|
289
|
+
*
|
|
290
|
+
* Writes require a Dex Server with an enabled blob store and Server protocol version 3 or later.
|
|
291
|
+
* Otherwise, the write fails. The Client checks the Server protocol version once before its first
|
|
292
|
+
* hard-delete write. The Worker checks it at startup and fails any handler result that writes a
|
|
293
|
+
* hard-delete AttributeMap instance to an older Server. Step and RPC handlers receive instance
|
|
294
|
+
* values inline. The SDK never stores them in the local blob cache.
|
|
295
|
+
*
|
|
296
|
+
* Limitations:
|
|
297
|
+
* - Each Flow keeps one stored copy per map instance and overwrites it in place.
|
|
298
|
+
* - A Step or RPC attempt writes or deletes the stored value before Dex commits its result.
|
|
299
|
+
* A retried attempt, other Steps and RPCs, and Client reads can therefore observe a write or
|
|
300
|
+
* deletion from an attempt that later failed.
|
|
301
|
+
* - When concurrent Steps or RPCs write the same instance, the final stored value may not be the
|
|
302
|
+
* value of the last committed write.
|
|
303
|
+
* - A failed `startFlow` or SubFlow start for a Flow ID that is already running still overwrites
|
|
304
|
+
* the running Flow's stored value. A null initial value deletes it.
|
|
305
|
+
* - Executions that reuse a Flow ID share the stored values.
|
|
306
|
+
* - {@link Client.timeTravel} does not restore a deleted value. A deleted instance reads as absent.
|
|
307
|
+
* - A Flow retry or a restarted SubFlow starts from the original initial value. If an
|
|
308
|
+
* earlier run deleted that value, the new run reads it as absent.
|
|
309
|
+
* - Removing {@link AttributeMap.hardDeleteOnNull} from a definition leaves the stored value in place
|
|
310
|
+
* until Dex removes the Flow. Delete the value with the hard-delete definition first.
|
|
311
|
+
* - Values remain until they are deleted, or until Dex removes the Flow through retention and
|
|
312
|
+
* blob cleanup.
|
|
313
|
+
* - Blob store backups or bucket versioning can retain copies outside Dex's control.
|
|
314
|
+
*
|
|
315
|
+
* @example
|
|
316
|
+
* ```ts
|
|
317
|
+
* type VendorToken = { readonly token: string };
|
|
318
|
+
* const vendorTokens = new AttributeMap("vendor-tokens", jsonCodec<VendorToken>())
|
|
319
|
+
* .hardDeleteOnNull();
|
|
320
|
+
*
|
|
321
|
+
* class RevokeTokenStep implements Step<string> {
|
|
322
|
+
* public readonly inputCodec = stringCodec;
|
|
323
|
+
*
|
|
324
|
+
* public getStepType(): string {
|
|
325
|
+
* return "RevokeTokenStep";
|
|
326
|
+
* }
|
|
327
|
+
*
|
|
328
|
+
* public getStepOptions(): StepOptions {
|
|
329
|
+
* return { executeLoadAttributeMapInstances: [vendorTokens.load("billing")] };
|
|
330
|
+
* }
|
|
331
|
+
*
|
|
332
|
+
* public async execute(context: Context, revokeUrl: string): Promise<StepDecision> {
|
|
333
|
+
* const { token } = vendorTokens.get(context, "billing");
|
|
334
|
+
* await fetch(revokeUrl, { method: "POST", body: token });
|
|
335
|
+
* vendorTokens.delete(context, "billing");
|
|
336
|
+
* return gracefulComplete("revoked");
|
|
337
|
+
* }
|
|
338
|
+
* }
|
|
339
|
+
*
|
|
340
|
+
* class TokenRevocationFlow implements Flow<string> {
|
|
341
|
+
* private readonly revokeToken = new RevokeTokenStep();
|
|
342
|
+
*
|
|
343
|
+
* public getFlowType(): string {
|
|
344
|
+
* return "TokenRevocationFlow";
|
|
345
|
+
* }
|
|
346
|
+
*
|
|
347
|
+
* public getSteps() {
|
|
348
|
+
* return StepList.startStep(this.revokeToken);
|
|
349
|
+
* }
|
|
350
|
+
*
|
|
351
|
+
* public getPersistenceSchema(): PersistenceSchema {
|
|
352
|
+
* return { attributes: [vendorTokens] };
|
|
353
|
+
* }
|
|
354
|
+
* }
|
|
355
|
+
*
|
|
356
|
+
* const flow = new TokenRevocationFlow();
|
|
357
|
+
* const client = new Client(new Registry([flow]), cache);
|
|
358
|
+
* await client.startFlow(flow, "revoke-42", "https://vendor.example/revoke", {
|
|
359
|
+
* attributes: [InitialAttribute.mapValue(vendorTokens, "billing", { token: "token-value" })],
|
|
360
|
+
* });
|
|
361
|
+
* ```
|
|
362
|
+
* @returns A new hard-delete definition; this definition remains unchanged.
|
|
363
|
+
* @throws {TypeError} When this definition has an index, uses Attribute Store synchronization, or
|
|
364
|
+
* uses a built-in numeric or Boolean codec.
|
|
365
|
+
*/
|
|
366
|
+
hardDeleteOnNull() {
|
|
367
|
+
requireHardDeleteOnNullCompatible(this);
|
|
368
|
+
return markHardDeleteOnNull(new AttributeMap(this.name, this.codec, this.index));
|
|
369
|
+
}
|
|
179
370
|
/**
|
|
180
371
|
* Creates a lock request scoped to one map instance.
|
|
181
372
|
* @param instance - The map instance. Slash is prohibited because it is a reserved character.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../src/persistence.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,kDAAkD;AAClD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,0DAA0D;AAG1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAIrE,OAAO,EAAE,kBAAkB,EAAE,gCAAgC,EAAE,MAAM,iBAAiB,CAAC;AAUvF,4DAA4D;AAC5D,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,qCAAqC;IACrC,OAAO,EAAE,SAAS;IAClB,yDAAyD;IACzD,SAAS,EAAE,UAAU;IACrB,qDAAqD;IACrD,aAAa,EAAE,cAAc;IAC7B,uCAAuC;IACvC,GAAG,EAAE,KAAK;IACV,8CAA8C;IAC9C,MAAM,EAAE,QAAQ;IAChB,+BAA+B;IAC/B,IAAI,EAAE,MAAM;IACZ,uCAAuC;IACvC,QAAQ,EAAE,UAAU;CACZ,CAAC,CAAC;AAqBZ;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,SAAS;IAQF;IACA;IACA;IATlB;;;;;OAKG;IACH,YACkB,IAAY,EACZ,KAAe,EACf,KAAsB;QAFtB,SAAI,GAAJ,IAAI,CAAQ;QACZ,UAAK,GAAL,KAAK,CAAU;QACf,UAAK,GAAL,KAAK,CAAiB;QAEtC,gCAAgC,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACI,GAAG,CAAC,OAAgB;QACzB,OAAO,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACI,GAAG,CAAC,OAAgB,EAAE,KAAQ;QACnC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,OAAgB;QAC5B,OAAO,CAAC,eAAe,CAAC,IAA0B,CAAC,CAAC;IACtD,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../src/persistence.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const sdkVersion = "1.
|
|
1
|
+
export declare const sdkVersion = "1.11.0";
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
//
|
|
7
7
|
// SPDX-License-Identifier: LicenseRef-Sustainable-Use-1.0
|
|
8
8
|
export const minimumSupportedServerProtocolVersion = 1;
|
|
9
|
-
export const maximumSupportedServerProtocolVersion =
|
|
9
|
+
export const maximumSupportedServerProtocolVersion = 3;
|
|
10
10
|
export function negotiateServerProtocol(serverInfo, sdkVersion) {
|
|
11
11
|
const serverMinimum = serverInfo.minimumSupportedProtocolVersion;
|
|
12
12
|
const serverCurrent = serverInfo.currentProtocolVersion;
|
|
@@ -5,11 +5,13 @@ import { type ValueHydrator } from "./value-mapper.js";
|
|
|
5
5
|
export declare class WorkerDispatcher {
|
|
6
6
|
private readonly registry;
|
|
7
7
|
private readonly hydrator;
|
|
8
|
-
|
|
8
|
+
private readonly negotiatedServerProtocolVersion;
|
|
9
|
+
constructor(registry: Registry, hydrator: ValueHydrator, negotiatedServerProtocolVersion: () => number);
|
|
9
10
|
invokeWaitFor(original: InvokeWaitForMethodRequest, cancellationSignal?: AbortSignal, stepOutput?: StepOutputEmitter): Promise<InvokeWaitForMethodResponse>;
|
|
10
11
|
invokeExecute(original: InvokeExecuteMethodRequest, cancellationSignal?: AbortSignal, stepOutput?: StepOutputEmitter): Promise<InvokeExecuteMethodResponse>;
|
|
11
12
|
private invokeTimeoutHandler;
|
|
12
13
|
invokeRPC(original: InvokeWorkerRPCRequest, cancellationSignal?: AbortSignal): Promise<InvokeWorkerRPCResponse>;
|
|
14
|
+
private requireHardDeleteAttributeWriteSupport;
|
|
13
15
|
private hydrateWaitFor;
|
|
14
16
|
private hydrateExecute;
|
|
15
17
|
private hydrateRPC;
|