@relayfile/relay-helpers 0.4.1 → 0.4.2
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/generated/clients.d.ts +0 -1
- package/dist/generated/clients.d.ts.map +1 -1
- package/dist/generated/clients.js +1 -2
- package/dist/generated/clients.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/relay-helpers.test.js +116 -1
- package/dist/relay-helpers.test.js.map +1 -1
- package/dist/slack.d.ts +1 -23
- package/dist/slack.d.ts.map +1 -1
- package/dist/slack.js +3 -36
- package/dist/slack.js.map +1 -1
- package/dist/telegram.d.ts +57 -0
- package/dist/telegram.d.ts.map +1 -0
- package/dist/telegram.js +83 -0
- package/dist/telegram.js.map +1 -0
- package/dist/writeback-idempotency.d.ts +15 -0
- package/dist/writeback-idempotency.d.ts.map +1 -0
- package/dist/writeback-idempotency.js +30 -0
- package/dist/writeback-idempotency.js.map +1 -0
- package/package.json +3 -3
|
@@ -32,6 +32,5 @@ export declare const salesforceClient: (opts?: IntegrationClientOptions) => Prov
|
|
|
32
32
|
export declare const sendgridClient: (opts?: IntegrationClientOptions) => ProviderClient<"sendgrid">;
|
|
33
33
|
export declare const sharepointClient: (opts?: IntegrationClientOptions) => ProviderClient<"sharepoint">;
|
|
34
34
|
export declare const teamsClient: (opts?: IntegrationClientOptions) => ProviderClient<"teams">;
|
|
35
|
-
export declare const telegramClient: (opts?: IntegrationClientOptions) => ProviderClient<"telegram">;
|
|
36
35
|
export declare const zendeskClient: (opts?: IntegrationClientOptions) => ProviderClient<"zendesk">;
|
|
37
36
|
//# sourceMappingURL=clients.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../src/generated/clients.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../src/generated/clients.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// @relayfile/adapter-core/writeback-paths — do not edit by hand.
|
|
3
3
|
// Run `npm run gen -w @relayfile/relay-helpers` after bumping adapter-core.
|
|
4
4
|
//
|
|
5
|
-
// linear / github / slack have bespoke ergonomic clients in their own modules;
|
|
5
|
+
// linear / github / slack / telegram have bespoke ergonomic clients in their own modules;
|
|
6
6
|
// every other catalog provider gets a uniform resource-keyed client here.
|
|
7
7
|
import { providerClient } from '../provider-client.js';
|
|
8
8
|
export const asanaClient = (opts) => providerClient('asana', opts);
|
|
@@ -37,6 +37,5 @@ export const salesforceClient = (opts) => providerClient('salesforce', opts);
|
|
|
37
37
|
export const sendgridClient = (opts) => providerClient('sendgrid', opts);
|
|
38
38
|
export const sharepointClient = (opts) => providerClient('sharepoint', opts);
|
|
39
39
|
export const teamsClient = (opts) => providerClient('teams', opts);
|
|
40
|
-
export const telegramClient = (opts) => providerClient('telegram', opts);
|
|
41
40
|
export const zendeskClient = (opts) => providerClient('zendesk', opts);
|
|
42
41
|
//# sourceMappingURL=clients.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clients.js","sourceRoot":"","sources":["../../src/generated/clients.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,iEAAiE;AACjE,4EAA4E;AAC5E,EAAE;AACF
|
|
1
|
+
{"version":3,"file":"clients.js","sourceRoot":"","sources":["../../src/generated/clients.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
*
|
|
17
17
|
* Every provider in the catalog has a named client (`asanaClient`,
|
|
18
18
|
* `notionClient`, … through all 29), exposing its resources as
|
|
19
|
-
* `.{resource}.{path,write,read,list}`. `linear` / `github` / `slack`
|
|
20
|
-
* named ergonomic methods on top. `relayClient(provider)` is the dynamic,
|
|
19
|
+
* `.{resource}.{path,write,read,list}`. `linear` / `github` / `slack` /
|
|
20
|
+
* `telegram` add named ergonomic methods on top. `relayClient(provider)` is the dynamic,
|
|
21
21
|
* string-keyed escape hatch when the provider isn't known at author time.
|
|
22
22
|
*/
|
|
23
23
|
export { relayClient, encodeSegment, type RelayClient, type RelayParams } from './generic.js';
|
|
@@ -26,6 +26,7 @@ export { created } from './receipt.js';
|
|
|
26
26
|
export { linearClient, type LinearClient, type LinearCreateIssueArgs } from './linear.js';
|
|
27
27
|
export { githubClient, type GithubClient, type GithubTarget } from './github.js';
|
|
28
28
|
export { slackClient, type SlackClient } from './slack.js';
|
|
29
|
+
export { telegramClient, telegramReceiptMessageId, telegramReceiptTs, type TelegramChatId, type TelegramClient, type TelegramEditMessageOptions, type TelegramMessageId, type TelegramMessageResult, type TelegramParseMode, type TelegramReactionResult, type TelegramSendMessageOptions, } from './telegram.js';
|
|
29
30
|
export * from './generated/clients.js';
|
|
30
31
|
export type { IntegrationClientOptions, WritebackResult } from '@relayfile/adapter-core/vfs-client';
|
|
31
32
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAC9F,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAChG,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAC9F,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAChG,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,0BAA0B,EAC/B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,GAChC,MAAM,eAAe,CAAC;AAKvB,cAAc,wBAAwB,CAAC;AAEvC,YAAY,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
*
|
|
17
17
|
* Every provider in the catalog has a named client (`asanaClient`,
|
|
18
18
|
* `notionClient`, … through all 29), exposing its resources as
|
|
19
|
-
* `.{resource}.{path,write,read,list}`. `linear` / `github` / `slack`
|
|
20
|
-
* named ergonomic methods on top. `relayClient(provider)` is the dynamic,
|
|
19
|
+
* `.{resource}.{path,write,read,list}`. `linear` / `github` / `slack` /
|
|
20
|
+
* `telegram` add named ergonomic methods on top. `relayClient(provider)` is the dynamic,
|
|
21
21
|
* string-keyed escape hatch when the provider isn't known at author time.
|
|
22
22
|
*/
|
|
23
23
|
export { relayClient, encodeSegment } from './generic.js';
|
|
@@ -27,6 +27,7 @@ export { created } from './receipt.js';
|
|
|
27
27
|
export { linearClient } from './linear.js';
|
|
28
28
|
export { githubClient } from './github.js';
|
|
29
29
|
export { slackClient } from './slack.js';
|
|
30
|
+
export { telegramClient, telegramReceiptMessageId, telegramReceiptTs, } from './telegram.js';
|
|
30
31
|
// Named resource-keyed clients for the remaining catalog providers
|
|
31
32
|
// (generated from the catalog — see scripts/generate-clients.mjs).
|
|
32
33
|
// `export *` so a newly-added provider needs only a re-`gen`, no edit here.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAsC,MAAM,cAAc,CAAC;AAC9F,OAAO,EAAE,cAAc,EAA4C,MAAM,sBAAsB,CAAC;AAChG,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,6DAA6D;AAC7D,OAAO,EAAE,YAAY,EAAiD,MAAM,aAAa,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAwC,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,WAAW,EAAoB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAsC,MAAM,cAAc,CAAC;AAC9F,OAAO,EAAE,cAAc,EAA4C,MAAM,sBAAsB,CAAC;AAChG,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,6DAA6D;AAC7D,OAAO,EAAE,YAAY,EAAiD,MAAM,aAAa,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAwC,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,WAAW,EAAoB,MAAM,YAAY,CAAC;AAC3D,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,iBAAiB,GASlB,MAAM,eAAe,CAAC;AAEvB,mEAAmE;AACnE,mEAAmE;AACnE,4EAA4E;AAC5E,cAAc,wBAAwB,CAAC"}
|
|
@@ -8,7 +8,7 @@ import { RelayfileWritebackPendingError, RelayfileWritebackReceiptError } from '
|
|
|
8
8
|
import { WRITEBACK_PATH_CATALOG } from '@relayfile/adapter-core/writeback-paths';
|
|
9
9
|
import { linearByUuidAliasPath } from '@relayfile/adapter-linear/path-mapper';
|
|
10
10
|
import * as helpers from './index.js';
|
|
11
|
-
import { githubClient, linearClient, notionClient, providerClient, relayClient, slackClient } from './index.js';
|
|
11
|
+
import { githubClient, linearClient, notionClient, providerClient, relayClient, slackClient, telegramClient, telegramReceiptTs, } from './index.js';
|
|
12
12
|
const clientExportName = (provider) => `${provider.replace(/-([a-z])/g, (_m, c) => c.toUpperCase())}Client`;
|
|
13
13
|
/** Fire-and-forget client bound to a throwaway mount; no writeback worker runs. */
|
|
14
14
|
async function mount() {
|
|
@@ -136,6 +136,58 @@ test('githubClient.comment and slackClient.post target the canonical paths', asy
|
|
|
136
136
|
const msg = await onlyJsonIn(path.join(root, 'slack/channels/C123/messages'));
|
|
137
137
|
assert.deepEqual(msg.body, { text: 'shipped' });
|
|
138
138
|
});
|
|
139
|
+
test('telegramClient sends, edits, and reacts through canonical Telegram paths', async () => {
|
|
140
|
+
const { root, opts } = await mount();
|
|
141
|
+
const oldDeliveryId = process.env.WORKFORCE_TICK_DELIVERY_ID;
|
|
142
|
+
process.env.WORKFORCE_TICK_DELIVERY_ID = 'telegram-delivery-1';
|
|
143
|
+
try {
|
|
144
|
+
const sent = await telegramClient(opts).sendMessage('C123', 'hello', {
|
|
145
|
+
replyToMessageId: 41,
|
|
146
|
+
threadId: 7,
|
|
147
|
+
parseMode: 'MarkdownV2',
|
|
148
|
+
});
|
|
149
|
+
assert.equal(sent.ok, false);
|
|
150
|
+
assert.equal(sent.chatId, 'C123');
|
|
151
|
+
assert.equal(sent.messageId, '');
|
|
152
|
+
assert.ok(sent.ref.startsWith('/telegram/chats/C123/messages/'));
|
|
153
|
+
const msg = await onlyJsonIn(path.join(root, 'telegram/chats/C123/messages'));
|
|
154
|
+
assert.deepEqual(msg.body, {
|
|
155
|
+
text: 'hello',
|
|
156
|
+
reply_to_message_id: 41,
|
|
157
|
+
message_thread_id: 7,
|
|
158
|
+
parse_mode: 'MarkdownV2',
|
|
159
|
+
idempotencyKey: 'tick:telegram-delivery-1:1',
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
finally {
|
|
163
|
+
if (oldDeliveryId === undefined)
|
|
164
|
+
delete process.env.WORKFORCE_TICK_DELIVERY_ID;
|
|
165
|
+
else
|
|
166
|
+
process.env.WORKFORCE_TICK_DELIVERY_ID = oldDeliveryId;
|
|
167
|
+
}
|
|
168
|
+
const edited = await telegramClient(opts).editMessage('C123', 42, 'edited', {
|
|
169
|
+
disableWebPagePreview: true,
|
|
170
|
+
});
|
|
171
|
+
assert.deepEqual(edited, {
|
|
172
|
+
ok: true,
|
|
173
|
+
chatId: 'C123',
|
|
174
|
+
messageId: '42',
|
|
175
|
+
ref: '/telegram/chats/C123/messages/42.json',
|
|
176
|
+
});
|
|
177
|
+
const editBody = JSON.parse(await readFile(path.join(root, 'telegram/chats/C123/messages/42.json'), 'utf8'));
|
|
178
|
+
assert.deepEqual(editBody, { text: 'edited', disable_web_page_preview: true });
|
|
179
|
+
const reaction = await telegramClient(opts).react('C123', 42, '\u{1F44D}');
|
|
180
|
+
assert.deepEqual(reaction, { ok: true, chatId: 'C123', messageId: '42' });
|
|
181
|
+
const reactionDraft = await onlyJsonIn(path.join(root, 'telegram/chats/C123/messages/42/reactions'));
|
|
182
|
+
assert.deepEqual(reactionDraft.body, { reaction: [{ type: 'emoji', emoji: '\u{1F44D}' }] });
|
|
183
|
+
});
|
|
184
|
+
test('telegramReceiptTs extracts the delivered message id from common receipt shapes', () => {
|
|
185
|
+
assert.equal(telegramReceiptTs({ externalId: '42', created: 'fallback' }), '42');
|
|
186
|
+
assert.equal(telegramReceiptTs({ messageId: 43 }), '43');
|
|
187
|
+
assert.equal(telegramReceiptTs({ message_id: '44' }), '44');
|
|
188
|
+
assert.equal(telegramReceiptTs({ id: '45' }), '45');
|
|
189
|
+
assert.equal(telegramReceiptTs(undefined), '');
|
|
190
|
+
});
|
|
139
191
|
test('slackClient.post can return ts from direct Relayfile op providerResult', async () => {
|
|
140
192
|
const requests = [];
|
|
141
193
|
const fetchImpl = async (input, init = {}) => {
|
|
@@ -181,6 +233,69 @@ test('slackClient.post can return ts from direct Relayfile op providerResult', a
|
|
|
181
233
|
assert.match(requests[0].url, /\/v1\/workspaces\/rw_7ccfea89\/fs\/file\?/);
|
|
182
234
|
assert.match(requests[1].url, /\/v1\/workspaces\/rw_7ccfea89\/ops\/op_slack_direct$/);
|
|
183
235
|
});
|
|
236
|
+
test('slackClient.post routes over HTTP via RELAYFILE_URL/TOKEN/WORKSPACE_ID env when no mount is present (sandbox:false)', async () => {
|
|
237
|
+
// Exact sandbox:false reply-bot surface: no mount root, only the env vars the
|
|
238
|
+
// cloud injects. slackClient().post() must transparently go over HTTP.
|
|
239
|
+
const envKeys = [
|
|
240
|
+
'RELAYFILE_MOUNT_PATH',
|
|
241
|
+
'WORKSPACE_ROOT',
|
|
242
|
+
'WORKFORCE_SANDBOX_ROOT',
|
|
243
|
+
'RELAYFILE_MOUNT_ROOT',
|
|
244
|
+
'RELAYFILE_ROOT',
|
|
245
|
+
'RELAYFILE_BASE_URL',
|
|
246
|
+
'RELAYFILE_URL',
|
|
247
|
+
'RELAYFILE_TOKEN',
|
|
248
|
+
'RELAYFILE_WORKSPACE_ID',
|
|
249
|
+
'RELAYFILE_WORKSPACE',
|
|
250
|
+
'RELAY_WORKSPACE_ID',
|
|
251
|
+
];
|
|
252
|
+
const saved = new Map();
|
|
253
|
+
for (const key of envKeys) {
|
|
254
|
+
saved.set(key, process.env[key]);
|
|
255
|
+
delete process.env[key];
|
|
256
|
+
}
|
|
257
|
+
process.env.RELAYFILE_URL = 'https://relayfile.example.test';
|
|
258
|
+
process.env.RELAYFILE_TOKEN = 'env-token';
|
|
259
|
+
process.env.RELAYFILE_WORKSPACE_ID = 'rw_env';
|
|
260
|
+
const requests = [];
|
|
261
|
+
const fetchImpl = async (input) => {
|
|
262
|
+
const url = String(input);
|
|
263
|
+
requests.push(url);
|
|
264
|
+
if (url.includes('/fs/file')) {
|
|
265
|
+
return Response.json({
|
|
266
|
+
opId: 'op_env_post',
|
|
267
|
+
status: 'queued',
|
|
268
|
+
targetRevision: 'rev_1',
|
|
269
|
+
writeback: { provider: 'slack', state: 'pending' },
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
if (url.includes('/ops/op_env_post')) {
|
|
273
|
+
return Response.json({
|
|
274
|
+
opId: 'op_env_post',
|
|
275
|
+
status: 'succeeded',
|
|
276
|
+
attemptCount: 1,
|
|
277
|
+
providerResult: { provider: 'slack', externalId: '1781870464.999999', ts: '1781870464.999999', channel: 'C9' },
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
return Response.json({ code: 'not_found' }, { status: 404 });
|
|
281
|
+
};
|
|
282
|
+
try {
|
|
283
|
+
const result = await slackClient({ fetchImpl, writebackTimeoutMs: 100, writebackPollMs: 5 }).post('C9', 'shipped');
|
|
284
|
+
assert.equal(result.channel, 'C9');
|
|
285
|
+
assert.equal(result.ts, '1781870464.999999');
|
|
286
|
+
assert.ok(result.ref, 'post still returns a draft-handle ref over HTTP');
|
|
287
|
+
assert.equal(requests.length, 2);
|
|
288
|
+
assert.match(requests[0], /\/v1\/workspaces\/rw_env\/fs\/file\?/);
|
|
289
|
+
}
|
|
290
|
+
finally {
|
|
291
|
+
for (const [key, value] of saved) {
|
|
292
|
+
if (value === undefined)
|
|
293
|
+
delete process.env[key];
|
|
294
|
+
else
|
|
295
|
+
process.env[key] = value;
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
});
|
|
184
299
|
test('slackClient.post rejects a terminal op without Slack ts instead of returning an empty ts', async () => {
|
|
185
300
|
const fetchImpl = async (input) => {
|
|
186
301
|
const url = String(input);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-helpers.test.js","sourceRoot":"","sources":["../src/relay-helpers.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"relay-helpers.test.js","sourceRoot":"","sources":["../src/relay-helpers.test.ts"],"names":[],"mappings":"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"}
|
package/dist/slack.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { IntegrationClientOptions } from '@relayfile/adapter-core/vfs-client';
|
|
2
2
|
import { type ProviderClient } from './provider-client.js';
|
|
3
|
+
export { createWritebackIdempotency } from './writeback-idempotency.js';
|
|
3
4
|
/**
|
|
4
5
|
* The delivered Slack message ts off a writeback receipt. The writeback worker
|
|
5
6
|
* records the real `chat.postMessage` ts as the receipt's `externalId` (the
|
|
@@ -14,29 +15,6 @@ export declare function slackReceiptTs(receipt: {
|
|
|
14
15
|
created?: string;
|
|
15
16
|
id?: string;
|
|
16
17
|
} | undefined): string;
|
|
17
|
-
/**
|
|
18
|
-
* Build the stamper of per-message idempotency tokens for scheduled (clock)
|
|
19
|
-
* deliveries, so a re-run of the same tick — e.g. a duplicate sandbox spawned
|
|
20
|
-
* when a delivery is re-claimed — can't post the same message twice even if the
|
|
21
|
-
* regenerated content differs slightly (drifting counts, reordered links).
|
|
22
|
-
* Token format: `tick:<deliveryId>:<ordinal>`.
|
|
23
|
-
*
|
|
24
|
-
* The ordinal is a counter incremented in call order across post/dm/reply. Each
|
|
25
|
-
* scheduled `runner.mjs` invocation is exactly one delivery and gets its own
|
|
26
|
-
* stamper, so the counter starts at 1 every run and a re-delivery (a fresh
|
|
27
|
-
* process) reproduces the same ordinals — aligning the keys across the original
|
|
28
|
-
* and duplicate runs. A token is emitted only when a delivery id is present
|
|
29
|
-
* (`WORKFORCE_TICK_DELIVERY_ID`, which the cloud sets for scheduled ticks);
|
|
30
|
-
* otherwise it returns undefined and the cloud worker falls back to its
|
|
31
|
-
* content-hash idempotency, and the ordinal does not advance.
|
|
32
|
-
*
|
|
33
|
-
* Alignment assumes the handler issues its posts in a deterministic order across
|
|
34
|
-
* runs (sequential post → reply, as the digest agents do). Concurrent/unordered
|
|
35
|
-
* posting would not line the ordinals up.
|
|
36
|
-
*
|
|
37
|
-
* Exported (with an injectable delivery-id source) for unit testing.
|
|
38
|
-
*/
|
|
39
|
-
export declare function createWritebackIdempotency(getDeliveryId?: () => string | undefined): () => string | undefined;
|
|
40
18
|
export interface SlackClient extends ProviderClient<'slack'> {
|
|
41
19
|
/**
|
|
42
20
|
* Post a message to a channel.
|
package/dist/slack.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slack.d.ts","sourceRoot":"","sources":["../src/slack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"slack.d.ts","sourceRoot":"","sources":["../src/slack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAOxE;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,GACxF,MAAM,CAIR;AAOD,MAAM,WAAW,WAAY,SAAQ,cAAc,CAAC,OAAO,CAAC;IAC1D;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CACF,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAC1B,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,6BAA6B;IAC7B,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtE,sDAAsD;IACtD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjG,0BAA0B;IAC1B,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,GAAE,wBAA6B,GAAG,WAAW,CA0B5E"}
|
package/dist/slack.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { providerClient } from './provider-client.js';
|
|
2
|
+
import { withProcessWritebackIdempotency } from './writeback-idempotency.js';
|
|
3
|
+
export { createWritebackIdempotency } from './writeback-idempotency.js';
|
|
2
4
|
/** Slack message timestamps contain `.`; the mount path encodes it as `_`. */
|
|
3
5
|
function tsParam(ts) {
|
|
4
6
|
return ts.replace(/\./g, '_');
|
|
@@ -17,44 +19,9 @@ export function slackReceiptTs(receipt) {
|
|
|
17
19
|
const replayTs = typeof receipt.ts === 'string' ? receipt.ts : undefined;
|
|
18
20
|
return receipt.externalId ?? replayTs ?? receipt.created ?? receipt.id ?? '';
|
|
19
21
|
}
|
|
20
|
-
/**
|
|
21
|
-
* Build the stamper of per-message idempotency tokens for scheduled (clock)
|
|
22
|
-
* deliveries, so a re-run of the same tick — e.g. a duplicate sandbox spawned
|
|
23
|
-
* when a delivery is re-claimed — can't post the same message twice even if the
|
|
24
|
-
* regenerated content differs slightly (drifting counts, reordered links).
|
|
25
|
-
* Token format: `tick:<deliveryId>:<ordinal>`.
|
|
26
|
-
*
|
|
27
|
-
* The ordinal is a counter incremented in call order across post/dm/reply. Each
|
|
28
|
-
* scheduled `runner.mjs` invocation is exactly one delivery and gets its own
|
|
29
|
-
* stamper, so the counter starts at 1 every run and a re-delivery (a fresh
|
|
30
|
-
* process) reproduces the same ordinals — aligning the keys across the original
|
|
31
|
-
* and duplicate runs. A token is emitted only when a delivery id is present
|
|
32
|
-
* (`WORKFORCE_TICK_DELIVERY_ID`, which the cloud sets for scheduled ticks);
|
|
33
|
-
* otherwise it returns undefined and the cloud worker falls back to its
|
|
34
|
-
* content-hash idempotency, and the ordinal does not advance.
|
|
35
|
-
*
|
|
36
|
-
* Alignment assumes the handler issues its posts in a deterministic order across
|
|
37
|
-
* runs (sequential post → reply, as the digest agents do). Concurrent/unordered
|
|
38
|
-
* posting would not line the ordinals up.
|
|
39
|
-
*
|
|
40
|
-
* Exported (with an injectable delivery-id source) for unit testing.
|
|
41
|
-
*/
|
|
42
|
-
export function createWritebackIdempotency(getDeliveryId = () => process.env.WORKFORCE_TICK_DELIVERY_ID) {
|
|
43
|
-
let ordinal = 0;
|
|
44
|
-
return () => {
|
|
45
|
-
const deliveryId = getDeliveryId();
|
|
46
|
-
if (!deliveryId)
|
|
47
|
-
return undefined;
|
|
48
|
-
ordinal += 1;
|
|
49
|
-
return `tick:${deliveryId}:${ordinal}`;
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
/** Process-wide stamper shared across every slackClient instance in this run. */
|
|
53
|
-
const nextWritebackIdempotencyKey = createWritebackIdempotency();
|
|
54
22
|
/** Attach the per-message idempotency token to a writeback body when one applies. */
|
|
55
23
|
function withIdempotency(body) {
|
|
56
|
-
|
|
57
|
-
return idempotencyKey ? { ...body, idempotencyKey } : body;
|
|
24
|
+
return withProcessWritebackIdempotency(body);
|
|
58
25
|
}
|
|
59
26
|
/**
|
|
60
27
|
* Ergonomic Slack client over the writeback-path catalog, plus the uniform
|
package/dist/slack.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slack.js","sourceRoot":"","sources":["../src/slack.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAuB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"slack.js","sourceRoot":"","sources":["../src/slack.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { IntegrationClientOptions, WritebackReceipt } from '@relayfile/adapter-core/vfs-client';
|
|
2
|
+
import { type ProviderClient } from './provider-client.js';
|
|
3
|
+
export type TelegramChatId = string | number;
|
|
4
|
+
export type TelegramMessageId = string | number;
|
|
5
|
+
export type TelegramParseMode = 'Markdown' | 'MarkdownV2' | 'HTML';
|
|
6
|
+
export interface TelegramSendMessageOptions {
|
|
7
|
+
replyToMessageId?: TelegramMessageId;
|
|
8
|
+
threadId?: TelegramMessageId;
|
|
9
|
+
parseMode?: TelegramParseMode;
|
|
10
|
+
disableWebPagePreview?: boolean;
|
|
11
|
+
disableNotification?: boolean;
|
|
12
|
+
replyMarkup?: Record<string, unknown>;
|
|
13
|
+
businessConnectionId?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface TelegramEditMessageOptions {
|
|
16
|
+
parseMode?: TelegramParseMode;
|
|
17
|
+
disableWebPagePreview?: boolean;
|
|
18
|
+
replyMarkup?: Record<string, unknown>;
|
|
19
|
+
businessConnectionId?: string;
|
|
20
|
+
}
|
|
21
|
+
export interface TelegramMessageResult {
|
|
22
|
+
ok: boolean;
|
|
23
|
+
chatId: TelegramChatId;
|
|
24
|
+
messageId: string;
|
|
25
|
+
ref: string;
|
|
26
|
+
}
|
|
27
|
+
export interface TelegramReactionResult {
|
|
28
|
+
ok: boolean;
|
|
29
|
+
chatId: TelegramChatId;
|
|
30
|
+
messageId: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* The delivered Telegram message id off a writeback receipt.
|
|
34
|
+
*
|
|
35
|
+
* Kept as `telegramReceiptTs` to mirror `slackReceiptTs` for callers moving
|
|
36
|
+
* between Slack and Telegram helpers.
|
|
37
|
+
*/
|
|
38
|
+
export declare function telegramReceiptTs(receipt: (WritebackReceipt & {
|
|
39
|
+
ok?: unknown;
|
|
40
|
+
messageId?: unknown;
|
|
41
|
+
message_id?: unknown;
|
|
42
|
+
}) | undefined): string;
|
|
43
|
+
export declare const telegramReceiptMessageId: typeof telegramReceiptTs;
|
|
44
|
+
export interface TelegramClient extends ProviderClient<'telegram'> {
|
|
45
|
+
/** Send a message to a chat. */
|
|
46
|
+
sendMessage(chatId: TelegramChatId, text: string, opts?: TelegramSendMessageOptions): Promise<TelegramMessageResult>;
|
|
47
|
+
/** Edit a delivered message. */
|
|
48
|
+
editMessage(chatId: TelegramChatId, messageId: TelegramMessageId, text: string, opts?: TelegramEditMessageOptions): Promise<TelegramMessageResult>;
|
|
49
|
+
/** Set an emoji reaction on a message. */
|
|
50
|
+
react(chatId: TelegramChatId, messageId: TelegramMessageId, emoji: string): Promise<TelegramReactionResult>;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Ergonomic Telegram client over the writeback-path catalog, plus the uniform
|
|
54
|
+
* resource-keyed access (`.messages`, `.reactions`, `.callback-queries`, ...).
|
|
55
|
+
*/
|
|
56
|
+
export declare function telegramClient(opts?: IntegrationClientOptions): TelegramClient;
|
|
57
|
+
//# sourceMappingURL=telegram.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../src/telegram.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACrG,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3E,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,CAAC;AAC7C,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,MAAM,CAAC;AAChD,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,CAAC;AAEnE,MAAM,WAAW,0BAA0B;IACzC,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAQD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EACH,CAAC,gBAAgB,GAAG;IAClB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC,GACF,SAAS,GACZ,MAAM,CASR;AAED,eAAO,MAAM,wBAAwB,0BAAoB,CAAC;AAkC1D,MAAM,WAAW,cAAe,SAAQ,cAAc,CAAC,UAAU,CAAC;IAChE,gCAAgC;IAChC,WAAW,CACT,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,0BAA0B,GAChC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAClC,gCAAgC;IAChC,WAAW,CACT,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,0BAA0B,GAChC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAClC,0CAA0C;IAC1C,KAAK,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;CAC7G;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,GAAE,wBAA6B,GAAG,cAAc,CA+BlF"}
|
package/dist/telegram.js
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { providerClient } from './provider-client.js';
|
|
2
|
+
import { withProcessWritebackIdempotency } from './writeback-idempotency.js';
|
|
3
|
+
function receiptValue(value) {
|
|
4
|
+
if (typeof value === 'string')
|
|
5
|
+
return value;
|
|
6
|
+
if (typeof value === 'number')
|
|
7
|
+
return String(value);
|
|
8
|
+
return undefined;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* The delivered Telegram message id off a writeback receipt.
|
|
12
|
+
*
|
|
13
|
+
* Kept as `telegramReceiptTs` to mirror `slackReceiptTs` for callers moving
|
|
14
|
+
* between Slack and Telegram helpers.
|
|
15
|
+
*/
|
|
16
|
+
export function telegramReceiptTs(receipt) {
|
|
17
|
+
if (!receipt)
|
|
18
|
+
return '';
|
|
19
|
+
return (receiptValue(receipt.externalId) ??
|
|
20
|
+
receiptValue(receipt.messageId) ??
|
|
21
|
+
receiptValue(receipt.message_id) ??
|
|
22
|
+
receiptValue(receipt.id) ??
|
|
23
|
+
'');
|
|
24
|
+
}
|
|
25
|
+
export const telegramReceiptMessageId = telegramReceiptTs;
|
|
26
|
+
function receiptOk(receipt, messageId) {
|
|
27
|
+
if (!receipt)
|
|
28
|
+
return false;
|
|
29
|
+
return typeof receipt.ok === 'boolean' ? receipt.ok : messageId.length > 0;
|
|
30
|
+
}
|
|
31
|
+
function sendBody(text, opts) {
|
|
32
|
+
return {
|
|
33
|
+
text,
|
|
34
|
+
...(opts.replyToMessageId !== undefined ? { reply_to_message_id: opts.replyToMessageId } : {}),
|
|
35
|
+
...(opts.threadId !== undefined ? { message_thread_id: opts.threadId } : {}),
|
|
36
|
+
...(opts.parseMode ? { parse_mode: opts.parseMode } : {}),
|
|
37
|
+
...(opts.disableWebPagePreview !== undefined ? { disable_web_page_preview: opts.disableWebPagePreview } : {}),
|
|
38
|
+
...(opts.disableNotification !== undefined ? { disable_notification: opts.disableNotification } : {}),
|
|
39
|
+
...(opts.replyMarkup ? { reply_markup: opts.replyMarkup } : {}),
|
|
40
|
+
...(opts.businessConnectionId ? { business_connection_id: opts.businessConnectionId } : {}),
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
function editBody(text, opts) {
|
|
44
|
+
return {
|
|
45
|
+
text,
|
|
46
|
+
...(opts.parseMode ? { parse_mode: opts.parseMode } : {}),
|
|
47
|
+
...(opts.disableWebPagePreview !== undefined ? { disable_web_page_preview: opts.disableWebPagePreview } : {}),
|
|
48
|
+
...(opts.replyMarkup ? { reply_markup: opts.replyMarkup } : {}),
|
|
49
|
+
...(opts.businessConnectionId ? { business_connection_id: opts.businessConnectionId } : {}),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
function withIdempotency(body) {
|
|
53
|
+
return withProcessWritebackIdempotency(body);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Ergonomic Telegram client over the writeback-path catalog, plus the uniform
|
|
57
|
+
* resource-keyed access (`.messages`, `.reactions`, `.callback-queries`, ...).
|
|
58
|
+
*/
|
|
59
|
+
export function telegramClient(opts = {}) {
|
|
60
|
+
const base = providerClient('telegram', opts);
|
|
61
|
+
return Object.assign(base, {
|
|
62
|
+
async sendMessage(chatId, text, opts = {}) {
|
|
63
|
+
const result = await base.messages.write({ chatId }, withIdempotency(sendBody(text, opts)));
|
|
64
|
+
const messageId = telegramReceiptTs(result.receipt);
|
|
65
|
+
return { ok: receiptOk(result.receipt, messageId), chatId, messageId, ref: result.path };
|
|
66
|
+
},
|
|
67
|
+
async editMessage(chatId, messageId, text, opts = {}) {
|
|
68
|
+
const result = await base.messages.write({ chatId, messageId }, editBody(text, opts));
|
|
69
|
+
const receiptMessageId = telegramReceiptTs(result.receipt) || String(messageId);
|
|
70
|
+
return {
|
|
71
|
+
ok: result.receipt ? receiptOk(result.receipt, receiptMessageId) : true,
|
|
72
|
+
chatId,
|
|
73
|
+
messageId: receiptMessageId,
|
|
74
|
+
ref: result.path,
|
|
75
|
+
};
|
|
76
|
+
},
|
|
77
|
+
async react(chatId, messageId, emoji) {
|
|
78
|
+
await base.reactions.write({ chatId, messageId }, { reaction: [{ type: 'emoji', emoji }] });
|
|
79
|
+
return { ok: true, chatId, messageId: String(messageId) };
|
|
80
|
+
},
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=telegram.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telegram.js","sourceRoot":"","sources":["../src/telegram.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build the stamper of per-message idempotency tokens for scheduled (clock)
|
|
3
|
+
* deliveries, so a re-run of the same tick cannot post the same message twice.
|
|
4
|
+
* Token format: `tick:<deliveryId>:<ordinal>`.
|
|
5
|
+
*/
|
|
6
|
+
export declare function createWritebackIdempotency(getDeliveryId?: () => string | undefined): () => string | undefined;
|
|
7
|
+
/** Attach the per-message idempotency token to a writeback body when one applies. */
|
|
8
|
+
export declare function withWritebackIdempotency(body: Record<string, unknown>, nextIdempotencyKey: () => string | undefined): Record<string, unknown>;
|
|
9
|
+
/**
|
|
10
|
+
* Process-wide stamper shared by all ergonomic helper clients in this run.
|
|
11
|
+
* Keeping one ordinal sequence avoids duplicate keys when a scheduled handler
|
|
12
|
+
* writes to multiple providers during the same delivery.
|
|
13
|
+
*/
|
|
14
|
+
export declare function withProcessWritebackIdempotency(body: Record<string, unknown>): Record<string, unknown>;
|
|
15
|
+
//# sourceMappingURL=writeback-idempotency.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writeback-idempotency.d.ts","sourceRoot":"","sources":["../src/writeback-idempotency.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,aAAa,GAAE,MAAM,MAAM,GAAG,SAAwD,GACrF,MAAM,MAAM,GAAG,SAAS,CAQ1B;AAED,qFAAqF;AACrF,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,kBAAkB,EAAE,MAAM,MAAM,GAAG,SAAS,GAC3C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGzB;AAID;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEtG"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build the stamper of per-message idempotency tokens for scheduled (clock)
|
|
3
|
+
* deliveries, so a re-run of the same tick cannot post the same message twice.
|
|
4
|
+
* Token format: `tick:<deliveryId>:<ordinal>`.
|
|
5
|
+
*/
|
|
6
|
+
export function createWritebackIdempotency(getDeliveryId = () => process.env.WORKFORCE_TICK_DELIVERY_ID) {
|
|
7
|
+
let ordinal = 0;
|
|
8
|
+
return () => {
|
|
9
|
+
const deliveryId = getDeliveryId();
|
|
10
|
+
if (!deliveryId)
|
|
11
|
+
return undefined;
|
|
12
|
+
ordinal += 1;
|
|
13
|
+
return `tick:${deliveryId}:${ordinal}`;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
/** Attach the per-message idempotency token to a writeback body when one applies. */
|
|
17
|
+
export function withWritebackIdempotency(body, nextIdempotencyKey) {
|
|
18
|
+
const idempotencyKey = nextIdempotencyKey();
|
|
19
|
+
return idempotencyKey ? { ...body, idempotencyKey } : body;
|
|
20
|
+
}
|
|
21
|
+
const nextProcessWritebackIdempotencyKey = createWritebackIdempotency();
|
|
22
|
+
/**
|
|
23
|
+
* Process-wide stamper shared by all ergonomic helper clients in this run.
|
|
24
|
+
* Keeping one ordinal sequence avoids duplicate keys when a scheduled handler
|
|
25
|
+
* writes to multiple providers during the same delivery.
|
|
26
|
+
*/
|
|
27
|
+
export function withProcessWritebackIdempotency(body) {
|
|
28
|
+
return withWritebackIdempotency(body, nextProcessWritebackIdempotencyKey);
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=writeback-idempotency.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writeback-idempotency.js","sourceRoot":"","sources":["../src/writeback-idempotency.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CACxC,gBAA0C,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B;IAEtF,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,OAAO,GAAG,EAAE;QACV,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAClC,OAAO,IAAI,CAAC,CAAC;QACb,OAAO,QAAQ,UAAU,IAAI,OAAO,EAAE,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,wBAAwB,CACtC,IAA6B,EAC7B,kBAA4C;IAE5C,MAAM,cAAc,GAAG,kBAAkB,EAAE,CAAC;IAC5C,OAAO,cAAc,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED,MAAM,kCAAkC,GAAG,0BAA0B,EAAE,CAAC;AAExE;;;;GAIG;AACH,MAAM,UAAU,+BAA+B,CAAC,IAA6B;IAC3E,OAAO,wBAAwB,CAAC,IAAI,EAAE,kCAAkC,CAAC,CAAC;AAC5E,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@relayfile/relay-helpers",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.2",
|
|
4
4
|
"description": "Ergonomic, catalog-backed provider clients for Relayfile integration handlers",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"prepublishOnly": "npm run build"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@relayfile/adapter-core": "^0.4.
|
|
35
|
-
"@relayfile/adapter-linear": "^0.4.
|
|
34
|
+
"@relayfile/adapter-core": "^0.4.3",
|
|
35
|
+
"@relayfile/adapter-linear": "^0.4.2"
|
|
36
36
|
}
|
|
37
37
|
}
|