@oneshot-agent/sdk 0.34.0 → 0.35.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 CHANGED
@@ -317,6 +317,41 @@ The `maxCost` option is a client-side guard — the SDK compares the quoted pric
317
317
  | `browser()` | Supported |
318
318
  | All other tools | Not applicable (fixed low-cost pricing) |
319
319
 
320
+ ## Verifying Receipts
321
+
322
+ Signed receipts use Ed25519 over the canonical public receipt fields, the `revision` counter and a SHA-256 digest of `metadata` — nothing private. The response also carries the `signature`, `digest`, `key_id` and `alg` needed to verify; those are not part of the signed bytes, and neither is the caller-supplied `value_tag`. Unsigned receipts return `malformed_receipt`. `verifyReceipt` works offline after fetching the public keys:
323
+
324
+ ```typescript
325
+ import { verifyReceipt, receiptFromWire } from '@oneshot-agent/sdk/receipt';
326
+
327
+ // `wireReceipt` is whatever GET /v1/analytics/receipts (or the audit export)
328
+ // returned for one receipt — snake_case field names.
329
+ const receipt = receiptFromWire(wireReceipt);
330
+ const jwks = await fetch('https://win.oneshotagent.com/.well-known/oneshot-receipts.json').then(r => r.json());
331
+
332
+ const result = verifyReceipt(receipt, jwks);
333
+ if (result.valid) {
334
+ console.log(`Verified against key ${result.keyId}`);
335
+ } else {
336
+ // reason is one of: 'malformed_receipt' | 'key_not_found' | 'digest_mismatch' | 'signature_invalid'
337
+ console.log(`Verification failed (${result.reason}): ${result.message}`);
338
+ }
339
+ ```
340
+
341
+ `verifyReceipt` recomputes the canonical payload with the same `canonicalizeReceipt` function the API uses to sign — the two can never drift apart because they're literally the same function, imported on both sides. It matches the receipt's `key_id` against the JWKS's `kid`s, so a receipt signed with a rotated-out key still verifies as long as the JWKS retains it (which it does — see `RECEIPT_SIGNING_HISTORICAL_PUBLIC_KEYS`).
342
+
343
+ There is one canonical payload and no version field. `revision` starts at 1 and increments on every re-sign under the same row lock that protects the signature, so two signed copies of the same receipt order from the signed bytes alone. `metadata_digest` is a key-order-independent SHA-256 of the receipt's `metadata` (`memo`, `decisionContext`, …), stable for `metadata: null`; the metadata value itself is never placed in the signed bytes, so altering it after signing invalidates the signature without embedding unbounded agent-supplied data in the canonical payload. If the format ever changes, OneShot re-signs every stored receipt rather than versioning the payload — see `docs/architecture/receipt-signatures.md`.
344
+
345
+ ### CLI
346
+
347
+ ```bash
348
+ npx @oneshot-agent/sdk receipt.json
349
+ # or, after installing the package:
350
+ oneshot-verify-receipt receipt.json [jwksUrlOrPath]
351
+ ```
352
+
353
+ `npx <package> <args...>` runs that package's single bin directly, passing the trailing args straight to it — so the package name itself is never one of `argv`. `receipt.json` is a receipt object as returned by the API. `jwksUrlOrPath` is an http(s) URL (fetched) or a local file path; it defaults to the production well-known path. Exit code `0` on a valid signature (with version and key printed), `1` on a verification failure (with the reason printed), `2` on a usage/IO or input-shape error. The audit export uses separate `receipt_signature*` fields; the adapter distinguishes those from its settlement-proof `signature`.
354
+
320
355
  ## Error Handling
321
356
 
322
357
  ```typescript
@@ -641,7 +676,7 @@ The signal **cannot** cancel:
641
676
 
642
677
  - [Documentation](https://docs.oneshotagent.com)
643
678
  - [MCP Server](https://www.npmjs.com/package/@oneshot-agent/mcp-server) — Claude Desktop, Cursor, Claude Code (local), or the hosted endpoint at `https://win.oneshotagent.com/mcp` with an access token
644
- - [Python SDK (LangChain)](https://pypi.org/project/langchain-oneshot/) — 35 tools as LangChain BaseTool
679
+ - [Python SDK (LangChain)](https://pypi.org/project/langchain-oneshot/) — 43 tools as LangChain BaseTool
645
680
  - [Python SDK (Core)](https://pypi.org/project/oneshot-python/) — HTTP client with x402 payments
646
681
  - [Pricing](https://docs.oneshotagent.com/pricing)
647
682
  - [GitHub](https://github.com/oneshot-agent/sdk)
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=verify-receipt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-receipt.d.ts","sourceRoot":"","sources":["../../src/bin/verify-receipt.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ /**
5
+ * Runnable entrypoint for `verifyReceiptCli` (issue #745). Kept separate from
6
+ * `receipt-verify-cli.ts` so that file stays a pure, testable function with
7
+ * no top-level side effects — this file is the only place that touches
8
+ * `process.argv` / `process.exit` / stdio directly.
9
+ */
10
+ const receipt_verify_cli_1 = require("../receipt-verify-cli");
11
+ async function run() {
12
+ const { exitCode, output } = await (0, receipt_verify_cli_1.verifyReceiptCli)(process.argv.slice(2));
13
+ if (exitCode === 0)
14
+ console.log(output);
15
+ else
16
+ console.error(output);
17
+ process.exit(exitCode);
18
+ }
19
+ run();
20
+ //# sourceMappingURL=verify-receipt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-receipt.js","sourceRoot":"","sources":["../../src/bin/verify-receipt.ts"],"names":[],"mappings":";;;AACA;;;;;GAKG;AACH,8DAAyD;AAEzD,KAAK,UAAU,GAAG;IAChB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,qCAAgB,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;;QACnC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3B,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACzB,CAAC;AAED,GAAG,EAAE,CAAC"}
package/dist/index.d.ts CHANGED
@@ -9,7 +9,7 @@ export { getSwapQuote, executeSwap } from './swap';
9
9
  export type { SwapQuote, SwapResult, UniswapAddresses } from './swap';
10
10
  export * from './errors';
11
11
  export * from './types';
12
- import type { StatusUpdateFn, OneShotConfig, ToolOptions, EmailToolOptions, ResearchToolOptions, PeopleSearchOptions, EnrichProfileOptions, FindEmailOptions, VerifyEmailOptions, CompanySearchOptions, CompanySearchResult, EnrichCompanyOptions, EnrichCompanyResult, LocalSearchOptions, LocalSearchResult, LocalResolveOptions, LocalResolveResult, GovSolicitationsOptions, GovSolicitationsResult, DeepResearchPersonOptions, SocialProfilesOptions, ArticleSearchOptions, PersonNewsfeedOptions, PersonInterestsOptions, PersonInteractionsOptions, InboxListOptions, CommerceBuyOptions, CommerceSearchOptions, WebSearchOptions, WebSearchResult, WebReadOptions, WebReadResult, VoiceCallOptions, SmsOptions, SmsInboxOptions, PeopleSearchResult, ResearchResult, EmailResult, EnrichProfileResult, FindEmailResult, DeepResearchPersonResult, SocialProfilesResult, ArticleSearchResult, PersonNewsfeedResult, PersonInterestsResult, PersonInteractionsResult, VerifyEmailResult, InboxEmail, InboxListResult, CommerceBuyResult, CommerceSearchResult, VoiceCallResult, SmsSendResult, SmsInboxMessage, SmsInboxResult, NotificationsListOptions, NotificationsResult, BuildOptions, BuildResult, BrowserTaskOptions, BrowserProfile, BrowserProfileCreateOptions, BrowserProfileSetup, BrowserResult, UpdateBuildOptions, SpendBreakdown, RoCSResult, RoCSByGoalResult, ReceiptsListResult, UnifiedBalance, ComputeOptions, ComputeGoalResult, ComputeGoalStatus, ComputeTask, ComputeBudgetStatus, DomainPoolListResult, DomainPoolStatusResult, AgentBudgetConfig, AgentBudgetStatus, AccessTokenCreated, AccessTokenInfo } from './types';
12
+ import type { StatusUpdateFn, OneShotConfig, ToolOptions, EmailToolOptions, ResearchToolOptions, PeopleSearchOptions, EnrichProfileOptions, FindEmailOptions, VerifyEmailOptions, CompanySearchOptions, CompanySearchResult, EnrichCompanyOptions, EnrichCompanyResult, LocalSearchOptions, LocalSearchResult, LocalResolveOptions, LocalResolveResult, GovSolicitationsOptions, GovSolicitationsResult, DeepResearchPersonOptions, SocialProfilesOptions, ArticleSearchOptions, PersonNewsfeedOptions, PersonInterestsOptions, PersonInteractionsOptions, InboxListOptions, CommerceBuyOptions, CommerceSearchOptions, WebSearchOptions, WebSearchResult, WebReadOptions, WebReadResult, VoiceCallOptions, SmsOptions, SmsInboxOptions, PeopleSearchResult, ResearchResult, EmailResult, EnrichProfileResult, FindEmailResult, DeepResearchPersonResult, SocialProfilesResult, ArticleSearchResult, PersonNewsfeedResult, PersonInterestsResult, PersonInteractionsResult, VerifyEmailResult, InboxEmail, InboxListResult, CommerceBuyResult, CommerceSearchResult, VoiceCallResult, SmsSendResult, SmsInboxMessage, SmsInboxResult, NotificationsListOptions, NotificationsResult, BuildOptions, BuildResult, BrowserTaskOptions, BrowserProfile, BrowserProfileCreateOptions, BrowserProfileSetup, BrowserResult, UpdateBuildOptions, SpendBreakdown, RoCSResult, RoCSByGoalResult, ReceiptsListResult, UnifiedBalance, ComputeOptions, ComputeGoalResult, ComputeGoalStatus, ComputeTask, ComputeBudgetStatus, DomainPoolListResult, DomainPoolStatusResult, AgentBudgetConfig, AgentBudgetStatus, AccessTokenCreated, AccessTokenInfo, LinkedInConnectOptions, LinkedInReconnectOptions, LinkedInConnectIntentIssued, LinkedInConnectIntent, LinkedInAccount, LinkedInRevokeResult, LinkedInSyncStatus, LinkedInSyncOptions, LinkedInSyncRunResult, LinkedInConversationsOptions, LinkedInConversationsPage, LinkedInMessagesOptions, LinkedInMessagesPage, LinkedInReplyOptions, LinkedInViewProfileOptions, LinkedInReactOptions, LinkedInWriteResult, LinkedInProfileViewResult } from './types';
13
13
  export declare class OneShot {
14
14
  readonly physicalMail: PhysicalMail;
15
15
  private readonly provider;
@@ -207,6 +207,39 @@ export declare class OneShot {
207
207
  * ```
208
208
  */
209
209
  deleteBrowserProfile(profileId: string): Promise<void>;
210
+ private linkedinFree;
211
+ /**
212
+ * Create a hosted LinkedIn login link. Show `url` to the human once; it
213
+ * expires in 30 minutes and must be opened top-level (never in an iframe).
214
+ * Poll `getLinkedInConnection(intent_id)` until `completed`.
215
+ */
216
+ linkedinConnect(options: LinkedInConnectOptions): Promise<LinkedInConnectIntentIssued>;
217
+ getLinkedInConnection(intentId: string): Promise<LinkedInConnectIntent>;
218
+ listLinkedInAccounts(options?: {
219
+ includeRevoked?: boolean;
220
+ }): Promise<{
221
+ accounts: LinkedInAccount[];
222
+ }>;
223
+ getLinkedInAccount(accountId: string): Promise<LinkedInAccount>;
224
+ /** Reconnect an existing account (keeps ownership; may narrow, never widen, the grant). */
225
+ reconnectLinkedInAccount(accountId: string, options?: LinkedInReconnectOptions): Promise<LinkedInConnectIntentIssued>;
226
+ /** End the grant, cancel queued writes, delete the upstream connection. */
227
+ revokeLinkedInAccount(accountId: string): Promise<LinkedInRevokeResult>;
228
+ getLinkedInSync(accountId: string): Promise<LinkedInSyncStatus>;
229
+ linkedinConversations(options: LinkedInConversationsOptions): Promise<LinkedInConversationsPage>;
230
+ linkedinMessages(options: LinkedInMessagesOptions): Promise<LinkedInMessagesPage>;
231
+ /**
232
+ * One bounded, paid history-sync run (up to maxPages × 250 messages). A
233
+ * run that hits the bound is paused with a cursor; the next `continue`
234
+ * call resumes it. Check `coverage.complete` before buying another run.
235
+ */
236
+ linkedinSync(options: LinkedInSyncOptions): Promise<LinkedInSyncRunResult>;
237
+ /** Send a reply in an existing conversation through the connected account. Paced; per-account daily cap. */
238
+ linkedinReply(options: LinkedInReplyOptions): Promise<LinkedInWriteResult>;
239
+ /** View a profile through the connected account. `notify: true` is visible to the target and cannot be undone. */
240
+ linkedinViewProfile(options: LinkedInViewProfileOptions): Promise<LinkedInProfileViewResult>;
241
+ /** React to a post through the connected account. */
242
+ linkedinReact(options: LinkedInReactOptions): Promise<LinkedInWriteResult>;
210
243
  /**
211
244
  * Update an existing website build
212
245
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -55,8 +55,32 @@ var swap_1 = require("./swap");
55
55
  Object.defineProperty(exports, "getSwapQuote", { enumerable: true, get: function () { return swap_1.getSwapQuote; } });
56
56
  Object.defineProperty(exports, "executeSwap", { enumerable: true, get: function () { return swap_1.executeSwap; } });
57
57
  __exportStar(require("./errors"), exports);
58
+ // Receipt verification (`canonicalizeReceipt`, `verifyReceipt`,
59
+ // `receiptFromWire`, and their supporting types `SignableReceipt`,
60
+ // `ReceiptSignatureFields`, `ReceiptJwk`, `ReceiptJwks`,
61
+ // `ReceiptVerificationResult`, `ReceiptVerificationFailureReason`) is
62
+ // intentionally NOT re-exported here, values OR types. `./receipt`
63
+ // statically imports `node:crypto`, and this file is the SDK's main entry —
64
+ // re-exporting its values would give every consumer (including browser/edge
65
+ // bundles, which this file otherwise avoids requiring Node builtins for;
66
+ // see the deliberate `btoa` fallback below) a hard Node-only dependency
67
+ // with no way to opt out. Import from the `@oneshot-agent/sdk/receipt`
68
+ // subpath instead (see package.json `exports` and the README's
69
+ // "Verifying Receipts" section).
70
+ //
71
+ // Types alone erase at compile time and carry no runtime import, so a
72
+ // type-only re-export here would be runtime-safe — but `SignableReceipt`
73
+ // declares `providerCost` (libs/agent-sdk/src/receipt.ts), the field whose
74
+ // removal from the public SDK surface `tests/unit/sdk-provider-cost-removed
75
+ // .test.ts` guards. Re-exporting it from the main entry would put it back
76
+ // on the surface that guard exists to keep clean, just via the type system
77
+ // instead of a runtime value. `providerCost` must stay inside
78
+ // `SignableReceipt` itself (it's part of what the signer actually signs —
79
+ // see `canonicalizeReceipt`), so the fix is not exposing that type here,
80
+ // not removing the field. Import `SignableReceipt` from the `./receipt`
81
+ // subpath directly if you need it.
58
82
  // Keep in sync with package.json `version`. Guarded by version.test.ts.
59
- const SDK_VERSION = '0.34.0';
83
+ const SDK_VERSION = '0.35.0';
60
84
  /** HTTP poll cadence while push is unconfirmed: fast first checks, settling at 2s. */
61
85
  const HTTP_POLL_BACKOFF_MS = [300, 600, 1000, 2000];
62
86
  /** HTTP poll cadence once the WebSocket has delivered for this request. */
@@ -926,6 +950,119 @@ class OneShot {
926
950
  throw new errors_2.ToolError('Failed to delete browser profile', response.status, await response.text());
927
951
  }
928
952
  }
953
+ // ── LinkedIn — messaging through a human-connected account (issue #756) ──
954
+ //
955
+ // The human connects THEIR OWN LinkedIn account through a hosted login link
956
+ // and grants specific actions. Connection/reads are free (signed proof);
957
+ // sync, reply, profile view and react are paid fixed-price tools. Every
958
+ // write is idempotency-keyed automatically — a message LinkedIn accepted
959
+ // cannot be recalled.
960
+ async linkedinFree(method, path, opts) {
961
+ const url = new URL(`${this.baseUrl}/v1/tools/linkedin${path}`);
962
+ for (const [k, v] of Object.entries(opts.query ?? {}))
963
+ if (v !== undefined)
964
+ url.searchParams.set(k, v);
965
+ const response = await fetch(url.toString(), {
966
+ method,
967
+ headers: { 'Content-Type': 'application/json', ...(await this.signedReadHeaders(opts.scope ?? 'read')) },
968
+ ...(opts.body !== undefined ? { body: JSON.stringify(opts.body) } : {}),
969
+ signal: AbortSignal.timeout(60000),
970
+ });
971
+ if (!response.ok)
972
+ throw new errors_2.ToolError(`LinkedIn ${opts.what} failed`, response.status, await response.text());
973
+ return response.json();
974
+ }
975
+ /**
976
+ * Create a hosted LinkedIn login link. Show `url` to the human once; it
977
+ * expires in 30 minutes and must be opened top-level (never in an iframe).
978
+ * Poll `getLinkedInConnection(intent_id)` until `completed`.
979
+ */
980
+ async linkedinConnect(options) {
981
+ if (!Array.isArray(options.requestedActions) || options.requestedActions.length === 0) {
982
+ throw new errors_2.ValidationError('requestedActions must list at least one action (read, reply, view_profile, react)', 'requestedActions');
983
+ }
984
+ return this.linkedinFree('POST', '/connect', {
985
+ scope: 'write', what: 'connect',
986
+ body: { requested_actions: options.requestedActions, success_redirect_url: options.successRedirectUrl, failure_redirect_url: options.failureRedirectUrl },
987
+ });
988
+ }
989
+ async getLinkedInConnection(intentId) {
990
+ this.validate(intentId, 'intentId');
991
+ return this.linkedinFree('GET', `/connect/${encodeURIComponent(intentId)}`, { what: 'connection status' });
992
+ }
993
+ async listLinkedInAccounts(options = {}) {
994
+ return this.linkedinFree('GET', '/accounts', { what: 'accounts', query: { include_revoked: options.includeRevoked ? 'true' : undefined } });
995
+ }
996
+ async getLinkedInAccount(accountId) {
997
+ this.validate(accountId, 'accountId');
998
+ return this.linkedinFree('GET', `/accounts/${encodeURIComponent(accountId)}`, { what: 'account' });
999
+ }
1000
+ /** Reconnect an existing account (keeps ownership; may narrow, never widen, the grant). */
1001
+ async reconnectLinkedInAccount(accountId, options = {}) {
1002
+ this.validate(accountId, 'accountId');
1003
+ return this.linkedinFree('POST', `/accounts/${encodeURIComponent(accountId)}/reconnect`, {
1004
+ scope: 'write', what: 'reconnect',
1005
+ body: { requested_actions: options.requestedActions, success_redirect_url: options.successRedirectUrl, failure_redirect_url: options.failureRedirectUrl },
1006
+ });
1007
+ }
1008
+ /** End the grant, cancel queued writes, delete the upstream connection. */
1009
+ async revokeLinkedInAccount(accountId) {
1010
+ this.validate(accountId, 'accountId');
1011
+ return this.linkedinFree('DELETE', `/accounts/${encodeURIComponent(accountId)}`, { scope: 'write', what: 'revoke' });
1012
+ }
1013
+ async getLinkedInSync(accountId) {
1014
+ this.validate(accountId, 'accountId');
1015
+ return this.linkedinFree('GET', `/accounts/${encodeURIComponent(accountId)}/sync`, { what: 'sync status' });
1016
+ }
1017
+ async linkedinConversations(options) {
1018
+ this.validate(options.accountId, 'accountId');
1019
+ return this.linkedinFree('GET', `/accounts/${encodeURIComponent(options.accountId)}/conversations`, {
1020
+ what: 'conversations',
1021
+ query: { cursor: options.cursor, limit: options.limit?.toString(), since: options.since, unread: options.unread ? 'true' : undefined, archived: options.archived ? 'true' : undefined },
1022
+ });
1023
+ }
1024
+ async linkedinMessages(options) {
1025
+ this.validate(options.accountId, 'accountId');
1026
+ return this.linkedinFree('GET', `/accounts/${encodeURIComponent(options.accountId)}/messages`, {
1027
+ what: 'messages',
1028
+ query: {
1029
+ conversation_id: options.conversationId, direction: options.direction, since: options.since, changed_since: options.changedSince,
1030
+ cursor: options.cursor, limit: options.limit?.toString(), include_deleted: options.includeDeleted ? 'true' : undefined,
1031
+ },
1032
+ });
1033
+ }
1034
+ /**
1035
+ * One bounded, paid history-sync run (up to maxPages × 250 messages). A
1036
+ * run that hits the bound is paused with a cursor; the next `continue`
1037
+ * call resumes it. Check `coverage.complete` before buying another run.
1038
+ */
1039
+ async linkedinSync(options) {
1040
+ this.validate(options.accountId, 'accountId');
1041
+ const { accountId, mode, maxPages, ...rest } = options;
1042
+ return this.tool('linkedin/sync', { ...rest, account_id: accountId, ...(mode ? { mode } : {}), ...(maxPages ? { max_pages: maxPages } : {}), timeout: options.timeout ?? 600 });
1043
+ }
1044
+ /** Send a reply in an existing conversation through the connected account. Paced; per-account daily cap. */
1045
+ async linkedinReply(options) {
1046
+ this.validate(options.accountId, 'accountId');
1047
+ this.validate(options.conversationId, 'conversationId');
1048
+ this.validate(options.text, 'text');
1049
+ const { accountId, conversationId, text, ...rest } = options;
1050
+ return this.tool('linkedin/reply', { ...rest, account_id: accountId, conversation_id: conversationId, text, timeout: options.timeout ?? 180 });
1051
+ }
1052
+ /** View a profile through the connected account. `notify: true` is visible to the target and cannot be undone. */
1053
+ async linkedinViewProfile(options) {
1054
+ this.validate(options.accountId, 'accountId');
1055
+ this.validate(options.identifier, 'identifier');
1056
+ const { accountId, identifier, notify, ...rest } = options;
1057
+ return this.tool('linkedin/profile-view', { ...rest, account_id: accountId, identifier, notify: !!notify, timeout: options.timeout ?? 180 });
1058
+ }
1059
+ /** React to a post through the connected account. */
1060
+ async linkedinReact(options) {
1061
+ this.validate(options.accountId, 'accountId');
1062
+ this.validate(options.postId, 'postId');
1063
+ const { accountId, postId, reactionType, ...rest } = options;
1064
+ return this.tool('linkedin/react', { ...rest, account_id: accountId, post_id: postId, reaction_type: reactionType ?? 'like', timeout: options.timeout ?? 180 });
1065
+ }
929
1066
  /**
930
1067
  * Update an existing website build
931
1068
  *
@@ -1977,7 +2114,8 @@ class OneShot {
1977
2114
  return this.readReliabilityJson('/v1/status', false, true);
1978
2115
  }
1979
2116
  async executeToolRequest(endpoint, options, quoteId) {
1980
- const reliable = /(?:^|\/)(enrich\/(profile|email)|verify\/email)$/.test(endpoint);
2117
+ // LinkedIn writes act through a human's account and cannot be recalled: always keyed.
2118
+ const reliable = /(?:^|\/)(enrich\/(profile|email)|verify\/email|linkedin\/(reply|profile-view|react))$/.test(endpoint);
1981
2119
  const key = options.idempotencyKey ?? (reliable ? ethers_1.ethers.hexlify(ethers_1.ethers.randomBytes(16)) : undefined);
1982
2120
  if (options.totalTimeoutMs !== undefined && (!Number.isFinite(options.totalTimeoutMs) || options.totalTimeoutMs <= 0)) {
1983
2121
  throw new errors_2.ValidationError('totalTimeoutMs must be positive', 'totalTimeoutMs');
@@ -2669,7 +2807,8 @@ class OneShot {
2669
2807
  resp = await this.makeRequest(endpoint, data, signed.auth, quoteId, signal, timeoutMs, extraHeaders);
2670
2808
  }
2671
2809
  catch (err) {
2672
- if (!/(enrich\/(profile|email)|verify\/email|physical-mail\/send)$/.test(endpoint))
2810
+ // Keyed writes may already be queued server-side after a transport failure: keep the reservation.
2811
+ if (!/(enrich\/(profile|email)|verify\/email|physical-mail\/send|linkedin\/(reply|profile-view|react))$/.test(endpoint))
2673
2812
  this.releaseUsdcReservation(signed.reservation);
2674
2813
  throw err;
2675
2814
  }