@capxul/sdk 4.2.0-rc.13 → 4.2.0-rc.15

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.
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "source": {
3
- "commit": "887920e1ba54e17bd8465975fcbc6e1537dfb6b8",
4
- "tree": "deed16dc942ed9d6b587ceead4dbf8b0b4174e2c",
3
+ "commit": "b2dff9052ea3f3a55dfca98530c02b4ac3bcfa96",
4
+ "tree": "9fc0a21bc2cb477c62dd9f5c44c4977d74548d94",
5
5
  "branch": "codex/programme-rc",
6
6
  "repository": "https://github.com/Xelmar-tech/infrastructure",
7
7
  "lockfileSha256": "5870f53b72706d103220c1bcf733cb4fb71196aea32a9cfbdc277d73cc959264"
8
8
  },
9
9
  "name": "@capxul/sdk",
10
- "version": "4.2.0-rc.13"
10
+ "version": "4.2.0-rc.15"
11
11
  }
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { $ as PayrollGroupId, B as ChainId, Ct as ChainCause, D as Account, Dt as RevertSummary, E as CAPXUL_PAYMENTS_V2_ADDRESS, Et as FailureMode, F as AssetId, G as EVM_ADDRESS_RE, H as CurrencyCode, I as AuthSession, J as Handle, L as AuthUserId, O as AccountId, P as AssetAmount, St as CHAIN_UPSTREAMS, Tt as FAILURE_MODES, V as CountryCode, X as OrgId, Y as Money, Z as PartyId, _ as Session, _t as CapxulErrorCode, a as Eip1193RequestProvider, at as RoleKey, c as injectedWalletSigner, ct as TesterKind, d as AccountRequirement, dt as toAddress, et as PayrollRunId, f as Eip1193Provider, ft as toCountryCode, g as Profile, gt as CapxulError, h as CapxulResult, ht as CAPXUL_ERROR_CODES, i as CapxulSigner, k as Address, l as AccountProvider, m as localPrivateKeyAccountProvider, mt as toPartyId, o as SignerStatus, p as eip1193AccountProvider, pt as toHandle, r as CapxulDigestSigner, s as SignerStatusStore, u as AccountProviderSource, v as SmartAccount, vt as CapxulErrorDetails, wt as ChainUpstream, xt as isCapxulError, yt as Errors, z as BudgetId } from "./OAuthBearerAuthClient-C-ip-z8M.mjs";
2
- import { $ as OrganizationPaymentBatchInput, $n as RequestStatus, $t as Destination, A as OrgScopedMethods, An as Ref, At as AddressBookAddInput, B as AuthorizeRunOptions, Bn as SmartAccountMethods, Bt as ActivityFilter, C as CurrentUserMethods, Cn as PaymentMoney, Ct as AccountMethods, D as MemberStatus, Dn as PaymentsMethods, Dt as ActorRequest, E as InviteMemberInput, En as PaymentType, Et as ActorRelationshipMethods, F as ResendInviteTokenInput, Fn as AccountLifecycle, Ft as InboxItem, G as PayrollGroupsMethods, Gn as ActorRef, Gt as ActivityPage, H as PayrollGroup, Hn as OrgLifecycle, Ht as ActivityKind, I as RoleDefinition, In as AccountSetupStep, It as InboxMethods, J as PayrollRun, Jn as SubmittedPermissionExecution, Jt as ActivitySummary, K as PayrollMethods, Kn as CurrentHoldings, Kt as ActivityRange, L as RoleSpendCap, Ln as isSettingUpLifecycle, Lt as ActivityAnnotation, M as OrgView, Mn as TargetReference, Mt as AddressBookLabelInput, N as OrganizationAccount, Nn as TargetsMethods, Nt as AddressBookMethods, O as MemberView, On as PaymentsPayInput, Ot as ActorRequestIssueInput, P as OrganizationAuditLogItem, Pn as fingerprintPaymentIntent, Pt as InboxApproveInput, Q as PayrollTermsUnit, Qn as PaymentStatus$1, Qt as DepositInstructions, R as RoleView, Rn as CompleteProfileInput, Rt as ActivityAnnotationInput, S as CurrentUserContext, Sn as PaymentDocumentsMethods, St as ReadyAccountLifecycle, T as DetectPendingOrgInvitationsResult, Tn as PaymentTiming, Tt as ActorProfileMethods, U as PayrollGroupInput, Un as OrgSetupStep, Ut as ActivityListParams, V as PayrollEngagementTerms, Vn as AuthMethods, Vt as ActivityItem, W as PayrollGroupMember, Wn as PayoutAddress, Wt as ActivityMethods, X as PayrollRunStatus, Xn as PAYMENT_DIRECTIONS, Xt as ActivitySummaryTotal, Y as PayrollRunItemInput, Yn as InboxStatus, Yt as ActivitySummaryParams, Z as PayrollRuns, Zn as PAYMENT_STATUSES, Zt as ActorReference, _ as HoldingsMethods, _n as PaymentDirection, _t as OnboardingMethods, a as ObservationContext, an as DestinationRemoveInput, ar as IdentityEvent, at as PermissionCreateInput, b as SystemHealth, bn as PaymentDocumentRender, bt as PersonOnboarding, c as HostObservability, cn as MeMethods, cr as Readiness, ct as PermissionReplaceInput, d as postHogObservability, dn as OfframpMethods, dr as isClaimed, dt as Budget, en as DestinationAddInput, et as OrganizationPaymentInput, f as CapxulClient, fn as OfframpQuote, fr as isRestoring, ft as OrgMe, g as IdentityRuntimeSendResult, gn as PaymentActivityEvidence, gt as CompletedPersonProfile, h as IdentityRuntime, hn as Payment, ht as AccountsMethods, i as ObservationAdapter, in as DestinationRail, ir as Destination$1, it as PermissionChangeInput, j as OrgTemplate, jn as ResolvedTarget, jt as AddressBookEntry, k as OrgMethods, kn as RecipientResolution, kt as ActorRequestsMethods, l as PostHogObservabilityClient, ln as MeProfile, lr as StateLabel, lt as PermissionRevokeInput, m as IdentityProfileDetails, mn as OfframpStatus, mr as InvocationControls, mt as OrgMeOptions, nn as DestinationListInput, nt as OrganizationPaymentsMethods, o as ObservationDelivery, on as DestinationsMethods, or as IdentityState, ot as PermissionMethods, p as CreateCapxulClientInput, pn as OfframpQuoteInput, pr as IdentityTransition, pt as OrgMeMethod, q as PayrollOptions, qn as Permission, qt as ActivityReference, r as CAPXUL_SDK_EXPECTED_OUTCOME_EVENT, rn as DestinationPayload, rr as TelemetryPort, rt as PermissionAssignInput, s as SdkFailureObservation, sn as FinancialOpsMethods, sr as OrgLane, st as PermissionOptions, t as CapxulClientInput, tn as DestinationKind, tt as OrganizationPaymentItemInput, u as PostHogObservabilityOptions, un as MovementActivityEvidence, ur as destination, ut as PermissionReadResult, v as Holding, vn as PaymentDocumentKind, vt as OrganizationOnboarding, w as CreateOrgInput, wn as PaymentStatus, wt as ActorProfile, x as MediaMethods, xn as PaymentDocumentVerification, xt as PersonOnboardingInput, y as SystemMethods, yn as PaymentDocumentRef, yt as OrganizationOnboardingInput, z as AuthorizeRunInput, zn as IdentityMethods, zt as ActivityDetail } from "./production-Db4fBqSk.mjs";
2
+ import { $ as OrganizationPaymentBatchInput, $n as RequestStatus, $t as Destination, A as OrgScopedMethods, An as Ref, At as AddressBookAddInput, B as AuthorizeRunOptions, Bn as SmartAccountMethods, Bt as ActivityFilter, C as CurrentUserMethods, Cn as PaymentMoney, Ct as AccountMethods, D as MemberStatus, Dn as PaymentsMethods, Dt as ActorRequest, E as InviteMemberInput, En as PaymentType, Et as ActorRelationshipMethods, F as ResendInviteTokenInput, Fn as AccountLifecycle, Ft as InboxItem, G as PayrollGroupsMethods, Gn as ActorRef, Gt as ActivityPage, H as PayrollGroup, Hn as OrgLifecycle, Ht as ActivityKind, I as RoleDefinition, In as AccountSetupStep, It as InboxMethods, J as PayrollRun, Jn as SubmittedPermissionExecution, Jt as ActivitySummary, K as PayrollMethods, Kn as CurrentHoldings, Kt as ActivityRange, L as RoleSpendCap, Ln as isSettingUpLifecycle, Lt as ActivityAnnotation, M as OrgView, Mn as TargetReference, Mt as AddressBookLabelInput, N as OrganizationAccount, Nn as TargetsMethods, Nt as AddressBookMethods, O as MemberView, On as PaymentsPayInput, Ot as ActorRequestIssueInput, P as OrganizationAuditLogItem, Pn as fingerprintPaymentIntent, Pt as InboxApproveInput, Q as PayrollTermsUnit, Qn as PaymentStatus$1, Qt as DepositInstructions, R as RoleView, Rn as CompleteProfileInput, Rt as ActivityAnnotationInput, S as CurrentUserContext, Sn as PaymentDocumentsMethods, St as ReadyAccountLifecycle, T as DetectPendingOrgInvitationsResult, Tn as PaymentTiming, Tt as ActorProfileMethods, U as PayrollGroupInput, Un as OrgSetupStep, Ut as ActivityListParams, V as PayrollEngagementTerms, Vn as AuthMethods, Vt as ActivityItem, W as PayrollGroupMember, Wn as PayoutAddress, Wt as ActivityMethods, X as PayrollRunStatus, Xn as PAYMENT_DIRECTIONS, Xt as ActivitySummaryTotal, Y as PayrollRunItemInput, Yn as InboxStatus, Yt as ActivitySummaryParams, Z as PayrollRuns, Zn as PAYMENT_STATUSES, Zt as ActorReference, _ as HoldingsMethods, _n as PaymentDirection, _t as OnboardingMethods, a as ObservationContext, an as DestinationRemoveInput, ar as IdentityEvent, at as PermissionCreateInput, b as SystemHealth, bn as PaymentDocumentRender, bt as PersonOnboarding, c as HostObservability, cn as MeMethods, cr as Readiness, ct as PermissionReplaceInput, d as postHogObservability, dn as OfframpMethods, dr as isClaimed, dt as Budget, en as DestinationAddInput, et as OrganizationPaymentInput, f as CapxulClient, fn as OfframpQuote, fr as isRestoring, ft as OrgMe, g as IdentityRuntimeSendResult, gn as PaymentActivityEvidence, gt as CompletedPersonProfile, h as IdentityRuntime, hn as Payment, ht as AccountsMethods, i as ObservationAdapter, in as DestinationRail, ir as Destination$1, it as PermissionChangeInput, j as OrgTemplate, jn as ResolvedTarget, jt as AddressBookEntry, k as OrgMethods, kn as RecipientResolution, kt as ActorRequestsMethods, l as PostHogObservabilityClient, ln as MeProfile, lr as StateLabel, lt as PermissionRevokeInput, m as IdentityProfileDetails, mn as OfframpStatus, mr as InvocationControls, mt as OrgMeOptions, nn as DestinationListInput, nt as OrganizationPaymentsMethods, o as ObservationDelivery, on as DestinationsMethods, or as IdentityState, ot as PermissionMethods, p as CreateCapxulClientInput, pn as OfframpQuoteInput, pr as IdentityTransition, pt as OrgMeMethod, q as PayrollOptions, qn as Permission, qt as ActivityReference, r as CAPXUL_SDK_EXPECTED_OUTCOME_EVENT, rn as DestinationPayload, rr as TelemetryPort, rt as PermissionAssignInput, s as SdkFailureObservation, sn as FinancialOpsMethods, sr as OrgLane, st as PermissionOptions, t as CapxulClientInput, tn as DestinationKind, tt as OrganizationPaymentItemInput, u as PostHogObservabilityOptions, un as MovementActivityEvidence, ur as destination, ut as PermissionReadResult, v as Holding, vn as PaymentDocumentKind, vt as OrganizationOnboarding, w as CreateOrgInput, wn as PaymentStatus, wt as ActorProfile, x as MediaMethods, xn as PaymentDocumentVerification, xt as PersonOnboardingInput, y as SystemMethods, yn as PaymentDocumentRef, yt as OrganizationOnboardingInput, z as AuthorizeRunInput, zn as IdentityMethods, zt as ActivityDetail } from "./production-CJ42VSls.mjs";
3
3
  import { Hex } from "viem";
4
4
  import { Effect, Layer } from "effect";
5
5
  //#region ../errors/src/index.d.ts
@@ -125,6 +125,8 @@ declare const CAPXUL_OPERATIONS: {
125
125
  readonly cancelRequest: "financialOps.cancelRequest";
126
126
  readonly createPayee: "financialOps.createPayee";
127
127
  readonly declineRequest: "financialOps.declineRequest";
128
+ readonly emitInvoiceIssued: "financialOps.emitInvoiceIssued";
129
+ readonly emitInvoiceRequestTransitioned: "financialOps.emitInvoiceRequestTransitioned";
128
130
  readonly emitPaymentWriterTelemetry: "financialOps.emitPaymentWriterTelemetry";
129
131
  readonly issueRequest: "financialOps.issueRequest";
130
132
  readonly recoverSettlementVerification: "financialOps.recoverSettlementVerification";
@@ -135,6 +137,9 @@ declare const CAPXUL_OPERATIONS: {
135
137
  readonly current: "holdings.current";
136
138
  readonly primary: "holdings.primary";
137
139
  };
140
+ readonly indexer: {
141
+ readonly reconcile: "indexer.reconcile";
142
+ };
138
143
  readonly identity: {
139
144
  readonly accountAt: "identity.AccountAt";
140
145
  readonly accountClaimed: "identity.AccountClaimed";
@@ -226,6 +231,7 @@ declare const CAPXUL_OPERATIONS: {
226
231
  readonly createOrg: "org.createOrg";
227
232
  readonly create: "org.create";
228
233
  readonly detectAndAcceptPendingInvitations: "org.detectAndAcceptPendingInvitations";
234
+ readonly emitInviteProgressed: "org.emitInviteProgressed";
229
235
  readonly expireInvitations: "org.expireInvitations";
230
236
  readonly getLifecycle: "org.getLifecycle";
231
237
  readonly getProofReceipt: "org.getProofReceipt";
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { A as signerFailure, B as isRestoring, C as normalizeExceptionErrorKind, E as safeExceptionLabel, F as CAPXUL_OPERATIONS, I as isCapxulOperation, L as normalizeCapxulOperation, M as PAYMENT_DIRECTIONS, N as PAYMENT_STATUSES, O as isSettingUpLifecycle, R as destination, S as SDK_VERSION, T as projectSdkException, _ as fingerprintPaymentIntent, b as failureDetail, d as embeddedSigner, f as openfortEmbeddedSigner, g as devPrivateKeySigner, h as deriveDevPrivateKey, j as resolveFailureMode, k as injectedWalletSigner, m as openfortEmbeddedWalletPort, p as openfortEmbeddedSignerFromWallet, r as postHogObservability, t as createCapxulClient$1, w as normalizeExceptionOperation, x as EXCEPTION_MESSAGE, y as CAPXUL_SDK_EXPECTED_OUTCOME_EVENT, z as isClaimed } from "./production-CrW_sxwv.mjs";
1
+ import { A as signerFailure, B as isRestoring, C as normalizeExceptionErrorKind, E as safeExceptionLabel, F as CAPXUL_OPERATIONS, I as isCapxulOperation, L as normalizeCapxulOperation, M as PAYMENT_DIRECTIONS, N as PAYMENT_STATUSES, O as isSettingUpLifecycle, R as destination, S as SDK_VERSION, T as projectSdkException, _ as fingerprintPaymentIntent, b as failureDetail, d as embeddedSigner, f as openfortEmbeddedSigner, g as devPrivateKeySigner, h as deriveDevPrivateKey, j as resolveFailureMode, k as injectedWalletSigner, m as openfortEmbeddedWalletPort, p as openfortEmbeddedSignerFromWallet, r as postHogObservability, t as createCapxulClient$1, w as normalizeExceptionOperation, x as EXCEPTION_MESSAGE, y as CAPXUL_SDK_EXPECTED_OUTCOME_EVENT, z as isClaimed } from "./production-Bw1sledP.mjs";
2
2
  import { A as currencySymbolFor, B as toCurrencyCode, G as toHandle, M as toAddress, T as EVM_ADDRESS_RE, Y as toPartyId, at as HANDLE_RE, b as configuredMoneyAssetById, ct as CapxulError, dt as isCapxulError, ft as CHAIN_UPSTREAMS, g as CAPXUL_PAYMENTS_V2_ADDRESS, k as assetIdFor, pt as FAILURE_MODES, st as CAPXUL_ERROR_CODES, ut as Errors, z as toCountryCode } from "./OAuthBearerAuthClient-CbU_W9Sp.mjs";
3
3
  import { formatUnits } from "viem";
4
4
  import { Effect } from "effect";
@@ -493,6 +493,8 @@ const CAPXUL_OPERATIONS = {
493
493
  cancelRequest: "financialOps.cancelRequest",
494
494
  createPayee: "financialOps.createPayee",
495
495
  declineRequest: "financialOps.declineRequest",
496
+ emitInvoiceIssued: "financialOps.emitInvoiceIssued",
497
+ emitInvoiceRequestTransitioned: "financialOps.emitInvoiceRequestTransitioned",
496
498
  emitPaymentWriterTelemetry: "financialOps.emitPaymentWriterTelemetry",
497
499
  issueRequest: "financialOps.issueRequest",
498
500
  recoverSettlementVerification: "financialOps.recoverSettlementVerification",
@@ -503,6 +505,7 @@ const CAPXUL_OPERATIONS = {
503
505
  current: "holdings.current",
504
506
  primary: "holdings.primary"
505
507
  },
508
+ indexer: { reconcile: "indexer.reconcile" },
506
509
  identity: {
507
510
  accountAt: "identity.AccountAt",
508
511
  accountClaimed: "identity.AccountClaimed",
@@ -592,6 +595,7 @@ const CAPXUL_OPERATIONS = {
592
595
  createOrg: "org.createOrg",
593
596
  create: "org.create",
594
597
  detectAndAcceptPendingInvitations: "org.detectAndAcceptPendingInvitations",
598
+ emitInviteProgressed: "org.emitInviteProgressed",
595
599
  expireInvitations: "org.expireInvitations",
596
600
  getLifecycle: "org.getLifecycle",
597
601
  getProofReceipt: "org.getProofReceipt",
@@ -828,6 +832,10 @@ const OptionalAccountId = Schema.optional(AccountIdSchema$1);
828
832
  const OptionalWeiAmount = Schema.optional(WeiAmountSchema$1);
829
833
  const OptionalCurrencyCode = Schema.optional(CurrencyCodeSchema$1);
830
834
  const OptionalBalanceBucket = Schema.optional(BalanceBucketSchema);
835
+ /** Which Safe a money record is about. Declared here so the money-domain
836
+ * props below can name it as well as the UI-step props further down. */
837
+ const AccountKindSchema = Schema.Literals(["personalSafe", "orgTreasury"]);
838
+ const OptionalAccountKind = Schema.optional(AccountKindSchema);
831
839
  const OptionalAddress = Schema.optional(AddressSchema$1);
832
840
  const OptionalAppId = Schema.optional(AppIdSchema$1);
833
841
  const OptionalBlockNumber = Schema.optional(BlockNumberSchema$1);
@@ -995,9 +1003,22 @@ const BootstrapFailedProps = Schema.Struct({
995
1003
  reason: OptionalString,
996
1004
  target_host: OptionalString
997
1005
  });
1006
+ /**
1007
+ * R08 (#1966): which Safe was read, on which chain, of which token. `currency`
1008
+ * is the DISPLAY code the surface shows ("USD"); it never says which ERC-20 the
1009
+ * `balanceOf` actually hit, so a reader could not tell a treasury read from a
1010
+ * personal one, nor USDX from any other dollar-labelled token. The producer
1011
+ * takes each of these from the authority that already decided it — the verified
1012
+ * Organization row's chain, the configured token address — never from a label.
1013
+ * The verified `organization_id` and its group arrive from the backend
1014
+ * attribution, so they are not repeated here.
1015
+ */
998
1016
  const AccountBalanceReadProps = Schema.Struct({
999
1017
  ...TelemetryEnvelopeProps,
1000
1018
  account_id: OptionalAccountId,
1019
+ account_kind: OptionalAccountKind,
1020
+ chain_id: OptionalChainId,
1021
+ token_address: OptionalAddress,
1001
1022
  currency: OptionalCurrencyCode,
1002
1023
  balance_bucket: OptionalBalanceBucket,
1003
1024
  durationMs: OptionalDurationMs
@@ -1411,6 +1432,26 @@ const MovementScanIncidentProps = Schema.Struct({
1411
1432
  incident_kind: Schema.String,
1412
1433
  anchor_block_number: Schema.Number
1413
1434
  });
1435
+ /**
1436
+ * One durable row the reconciliation job corrected against Ponder (SPEC D9).
1437
+ *
1438
+ * Both block fields are optional and for the same reason: a correction INTO
1439
+ * drift (a Payment settled in Convex whose Ponder fact a reorg removed) has no
1440
+ * current block, and a correction that confirms a later fact has one.
1441
+ *
1442
+ * `projection_kind` is closed. A later ticket that reconciles a deploy, a
1443
+ * bootstrap or a grant outcome adds its kind here in the same change; an
1444
+ * unknown kind must not decode.
1445
+ */
1446
+ const IndexerDriftCorrectedProps = Schema.Struct({
1447
+ ...TelemetryEnvelopeProps,
1448
+ projection_kind: Schema.Literals(["member_authority", "payment_settlement"]),
1449
+ previous_state: Schema.String,
1450
+ current_state: Schema.String,
1451
+ previous_block: Schema.optional(Schema.Number),
1452
+ current_block: Schema.optional(Schema.Number),
1453
+ logical_event_id: Schema.optional(Schema.String)
1454
+ });
1414
1455
  Schema.Struct({
1415
1456
  name: Schema.Literal("auth_otp_requested"),
1416
1457
  props: AuthOtpRequestedProps
@@ -1615,9 +1656,12 @@ Schema.Struct({
1615
1656
  name: Schema.Literal("movement_scan_incident"),
1616
1657
  props: MovementScanIncidentProps
1617
1658
  });
1659
+ Schema.Struct({
1660
+ name: Schema.Literal("indexer_drift_corrected"),
1661
+ props: IndexerDriftCorrectedProps
1662
+ });
1618
1663
  /** The one spelling of "whose scope did this happen in" across every surface. */
1619
1664
  const ScopeKindSchema = Schema.Literals(["account", "organization"]);
1620
- const AccountKindSchema = Schema.Literals(["personalSafe", "orgTreasury"]);
1621
1665
  const OptionalReasonCode = Schema.optional(Schema.Literals(CAPXUL_ERROR_CODES));
1622
1666
  const ActivityReferenceProps = {
1623
1667
  reference_kind: Schema.Literals(["payment", "movement"]),
@@ -5192,31 +5236,31 @@ function makeActorRelationshipMethods(deps) {
5192
5236
  reference: input.reference,
5193
5237
  ...input.memo === void 0 ? {} : { memo: input.memo },
5194
5238
  ...input.expiresAt === void 0 ? {} : { expiresAt: input.expiresAt }
5195
- }))), (request) => mapActorRequest(request, input.payer)), controls, CAPXUL_OPERATIONS.requests.issue, deps.runPromise);
5239
+ }))), (request) => mapActorRequest(request, input.payer)).pipe(Effect.tap(() => observeContactScope)), controls, CAPXUL_OPERATIONS.requests.issue, deps.runPromise);
5196
5240
  },
5197
5241
  list: (options) => {
5198
5242
  const controls = deps.invocationControls?.(options) ?? options;
5199
- return runPortEffect(mapReply(CAPXUL_OPERATIONS.requests.list, Effect.suspend(() => convexCall.query(fns.requestsList, copyInvocationObservation(controls, { actor }))), (requests) => requests.map((request) => mapActorRequest(request))), controls, CAPXUL_OPERATIONS.requests.list, deps.runPromise);
5243
+ return runPortEffect(mapReply(CAPXUL_OPERATIONS.requests.list, Effect.suspend(() => convexCall.query(fns.requestsList, copyInvocationObservation(controls, { actor }))), (requests) => requests.map((request) => mapActorRequest(request))).pipe(Effect.tap(() => observeContactScope)), controls, CAPXUL_OPERATIONS.requests.list, deps.runPromise);
5200
5244
  },
5201
5245
  get: (requestId, options) => {
5202
5246
  const controls = deps.invocationControls?.(options) ?? options;
5203
5247
  return runPortEffect(mapReply(CAPXUL_OPERATIONS.requests.get, Effect.suspend(() => convexCall.query(fns.requestsGet, copyInvocationObservation(controls, {
5204
5248
  actor,
5205
5249
  paymentRequestId: requestId
5206
- }))), (request) => request === null ? null : mapActorRequest(request)), controls, CAPXUL_OPERATIONS.requests.get, deps.runPromise);
5250
+ }))), (request) => request === null ? null : mapActorRequest(request)).pipe(Effect.tap(() => observeContactScope)), controls, CAPXUL_OPERATIONS.requests.get, deps.runPromise);
5207
5251
  },
5208
5252
  cancel: (requestId, options) => {
5209
5253
  const controls = deps.invocationControls?.(options) ?? options;
5210
5254
  return runPortEffect(mapReply(CAPXUL_OPERATIONS.requests.cancel, Effect.suspend(() => convexCall.mutation(fns.requestsCancel, copyInvocationObservation(controls, {
5211
5255
  actor,
5212
5256
  paymentRequestId: requestId
5213
- }))), (request) => mapActorRequest(request)), controls, CAPXUL_OPERATIONS.requests.cancel, deps.runPromise);
5257
+ }))), (request) => mapActorRequest(request)).pipe(Effect.tap(() => observeContactScope)), controls, CAPXUL_OPERATIONS.requests.cancel, deps.runPromise);
5214
5258
  }
5215
5259
  },
5216
5260
  inbox: {
5217
5261
  list: (options) => {
5218
5262
  const controls = deps.invocationControls?.(options) ?? options;
5219
- return runPortEffect(mapReply(CAPXUL_OPERATIONS.inbox.list, Effect.suspend(() => convexCall.query(fns.inboxList, copyInvocationObservation(controls, { actor }))), (items) => items.map(mapInboxItem)), controls, CAPXUL_OPERATIONS.inbox.list, deps.runPromise);
5263
+ return runPortEffect(mapReply(CAPXUL_OPERATIONS.inbox.list, Effect.suspend(() => convexCall.query(fns.inboxList, copyInvocationObservation(controls, { actor }))), (items) => items.map(mapInboxItem)).pipe(Effect.tap(() => observeContactScope)), controls, CAPXUL_OPERATIONS.inbox.list, deps.runPromise);
5220
5264
  },
5221
5265
  approve: (input, options) => {
5222
5266
  const controls = deps.invocationControls?.(options) ?? options;
@@ -5228,14 +5272,14 @@ function makeActorRelationshipMethods(deps) {
5228
5272
  }))).pipe(Effect.flatMap((prepared) => {
5229
5273
  const result = mapApprovedInboxPayment(prepared, input);
5230
5274
  return result.ok ? Effect.succeed(result.value) : Effect.fail({ publicError: result.error });
5231
- })), controls, CAPXUL_OPERATIONS.inbox.approve, deps.runPromise);
5275
+ }), Effect.tap(() => observeContactScope)), controls, CAPXUL_OPERATIONS.inbox.approve, deps.runPromise);
5232
5276
  },
5233
5277
  decline: (requestId, options) => {
5234
5278
  const controls = deps.invocationControls?.(options) ?? options;
5235
5279
  return runPortEffect(mapReply(CAPXUL_OPERATIONS.inbox.decline, Effect.suspend(() => convexCall.mutation(fns.inboxDecline, copyInvocationObservation(controls, {
5236
5280
  actor,
5237
5281
  paymentRequestId: requestId
5238
- }))), mapInboxItem), controls, CAPXUL_OPERATIONS.inbox.decline, deps.runPromise);
5282
+ }))), mapInboxItem).pipe(Effect.tap(() => observeContactScope)), controls, CAPXUL_OPERATIONS.inbox.decline, deps.runPromise);
5239
5283
  }
5240
5284
  },
5241
5285
  profile: {
@@ -6091,7 +6135,7 @@ function subscribeActivity(deps, actor, controls, onChange) {
6091
6135
  }
6092
6136
  //#endregion
6093
6137
  //#region package.json
6094
- var version = "4.2.0-rc.13";
6138
+ var version = "4.2.0-rc.15";
6095
6139
  //#endregion
6096
6140
  //#region src/telemetry/exception-projection.ts
6097
6141
  /** Fixed fallback for failures that have no safe message. */
@@ -10228,11 +10272,11 @@ var ConvexOrganizationAdapter = class {
10228
10272
  return this.listMembers(input).pipe(Effect.map((members) => members.filter((member) => member.status === "pending" || member.status === "pending_safe" || member.status === "pending_grant")));
10229
10273
  }
10230
10274
  inviteMember(input) {
10231
- return this.#convex.action(this.#fns.inviteMember, {
10275
+ return this.#convex.action(this.#fns.inviteMember, copyInvocationObservation(input, {
10232
10276
  orgId: input.orgId,
10233
10277
  email: input.input.email,
10234
10278
  role: input.input.role
10235
- }).pipe(Effect.mapError((error) => orgErrorFromCapxul("inviteMember", error.publicError, error)), Effect.map(brandOrgMember), Effect.catchDefect((cause) => Effect.fail(toOrgError("inviteMember", cause))));
10279
+ })).pipe(Effect.mapError((error) => orgErrorFromCapxul("inviteMember", error.publicError, error)), Effect.map(brandOrgMember), Effect.catchDefect((cause) => Effect.fail(toOrgError("inviteMember", cause))));
10236
10280
  }
10237
10281
  resendInviteToken(input) {
10238
10282
  return this.#convex.mutation(this.#fns.resendInvite, {
@@ -13244,18 +13288,6 @@ function emitOrgCreateFailed(telemetry, error) {
13244
13288
  }
13245
13289
  });
13246
13290
  }
13247
- function emitOrgInviteSent(telemetry, input) {
13248
- const domain = emailDomain$1(input.email);
13249
- return emitOrgTelemetry(telemetry, {
13250
- name: "org_invite_sent",
13251
- props: {
13252
- org_id: input.orgId,
13253
- ...domain === void 0 ? {} : { email_domain: domain },
13254
- role: input.role,
13255
- status: input.status
13256
- }
13257
- });
13258
- }
13259
13291
  function reportOrgTelemetryFailure(kind, name, cause) {
13260
13292
  if (!isOrgTelemetryDebugEnabled()) return;
13261
13293
  globalThis.console?.warn?.("[capxul] org telemetry dropped", {
@@ -13431,25 +13463,26 @@ function listMembersProgram(orgId) {
13431
13463
  return [];
13432
13464
  });
13433
13465
  }
13466
+ /**
13467
+ * R06 (#1964): the SDK no longer emits `org_invite_sent`. The backend action
13468
+ * that writes the invitation is its ONE producer, so a hermetic call — which
13469
+ * writes nothing — can no longer report an invitation that never happened, and
13470
+ * a live call is counted once instead of twice. The captured attempt rides the
13471
+ * port input, so the durable event carries the correlation this call ran under.
13472
+ */
13434
13473
  function inviteMemberProgram(orgId, input) {
13435
13474
  return Effect.gen(function* () {
13436
13475
  const deps = yield* OrgDepsTag;
13437
- const member = deps.orgPort !== void 0 ? yield* deps.orgPort.inviteMember({
13438
- orgId,
13439
- input
13440
- }).pipe(Effect.mapError((error) => error.publicError)) : hermeticMember({
13476
+ if (deps.orgPort === void 0) return hermeticMember({
13441
13477
  orgId,
13442
13478
  email: input.email,
13443
13479
  role: input.role,
13444
13480
  status: "pending"
13445
13481
  });
13446
- yield* Effect.promise(() => emitOrgInviteSent(deps.telemetry, {
13482
+ return yield* deps.orgPort.inviteMember(copyInvocationObservation(deps.invocationSource, {
13447
13483
  orgId,
13448
- email: input.email,
13449
- role: member.role,
13450
- status: member.status
13451
- }));
13452
- return member;
13484
+ input
13485
+ })).pipe(Effect.mapError((error) => error.publicError));
13453
13486
  });
13454
13487
  }
13455
13488
  function detectAndAcceptPendingInvitationsProgram() {
@@ -13674,32 +13707,27 @@ function makeOrgMethods(deps) {
13674
13707
  });
13675
13708
  return treasury(orgId, deps.invocationControls?.(options) ?? options);
13676
13709
  },
13677
- account: { async get(options) {
13678
- if (options?.signal?.aborted) return {
13679
- ok: false,
13680
- error: Errors.cancelled({ operation: CAPXUL_OPERATIONS.org.account.get })
13681
- };
13710
+ account: { get(options) {
13682
13711
  const controls = deps.invocationControls?.(options) ?? options;
13683
- const treasuryResult = await treasury(orgId, controls);
13684
- if (!treasuryResult.ok) return {
13712
+ if (controls?.signal?.aborted) return Promise.resolve({
13685
13713
  ok: false,
13686
- error: treasuryResult.error
13687
- };
13688
- const orgList = await listOrganizations(controls);
13689
- if (!orgList.ok) return {
13690
- ok: false,
13691
- error: orgList.error
13692
- };
13693
- const org = orgList.value.find((candidate) => candidate.id === orgId);
13694
- return {
13695
- ok: true,
13696
- value: {
13714
+ error: Errors.cancelled({ operation: CAPXUL_OPERATIONS.org.account.get })
13715
+ });
13716
+ return runCapxulEffect(Effect.gen(function* () {
13717
+ const parent = yield* Effect.currentSpan.pipe(Effect.orDie);
13718
+ const captured = carryInvocationParentSpan(controls, parent);
13719
+ const treasuryResult = yield* Effect.promise(() => treasury(orgId, captured));
13720
+ if (!treasuryResult.ok) return yield* Effect.fail(treasuryResult.error);
13721
+ const orgList = yield* Effect.promise(() => listOrganizations(captured));
13722
+ if (!orgList.ok) return yield* Effect.fail(orgList.error);
13723
+ const org = orgList.value.find((candidate) => candidate.id === orgId);
13724
+ return {
13697
13725
  id: treasuryResult.value.id,
13698
13726
  address: org?.safeAddress ?? null,
13699
13727
  balance: treasuryResult.value.balance,
13700
13728
  available: treasuryResult.value.available
13701
- }
13702
- };
13729
+ };
13730
+ }), observationOnlyControls(controls), CAPXUL_OPERATIONS.org.account.get, deps.runPromise);
13703
13731
  } },
13704
13732
  members(_options) {
13705
13733
  if (_options?.signal?.aborted) return Promise.resolve({
@@ -13716,11 +13744,15 @@ function makeOrgMethods(deps) {
13716
13744
  return toCapxulResult(listRolesProgram(orgId), layer);
13717
13745
  },
13718
13746
  invite(_input, _options) {
13719
- if (_options?.signal?.aborted) return Promise.resolve({
13747
+ const controls = deps.invocationControls?.(_options) ?? _options;
13748
+ if (controls?.signal?.aborted) return Promise.resolve({
13720
13749
  ok: false,
13721
13750
  error: Errors.cancelled({ operation: CAPXUL_OPERATIONS.org.invite })
13722
13751
  });
13723
- return toCapxulResult(inviteMemberProgram(orgId, _input), layer);
13752
+ return runCapxulEffect(inviteMemberProgram(orgId, _input).pipe(Effect.provide(orgDepsLayer({
13753
+ ...orgDeps,
13754
+ ...controls === void 0 ? {} : { invocationSource: controls }
13755
+ }))), controls, CAPXUL_OPERATIONS.org.invite, deps.runPromise);
13724
13756
  },
13725
13757
  auditLog(_options) {
13726
13758
  if (_options?.signal?.aborted) return Promise.resolve({
@@ -284,7 +284,7 @@ interface TelemetryPort {
284
284
  }
285
285
  //#endregion
286
286
  //#region ../observability/src/index.d.ts
287
- declare const TELEMETRY_EVENT_NAMES: readonly ["auth_otp_requested", "auth_otp_delivered", "auth_otp_expired", "auth_verified", "auth_failed", "identity_refused", "auth_signed_out", "onboarding_intent_selected", "onboarding_profile_submitted", "onboarding_organization_submitted", "onboarding_dashboard_reached", "provisioning_safe_created", "provisioning_safe_confirmed", "bootstrap_resolved", "bootstrap_failed", "member_activation_started", "member_activation_ready", "member_activation_failed", "organization_creation_started", "organization_creation_ready", "organization_creation_failed", "chain_upstream_fallback", "bundler_error", "receipt_pending", "operation_retried", "account_balance_read", "account_balance_failed", "faucet_requested", "faucet_confirmed", "faucet_failed", "org_create_started", "org_safe_created", "org_safe_confirmed", "org_roles_seeded", "org_created", "org_create_failed", "org_invite_sent", "org_invite_accepted", "org_invite_expired", "payment_initiated", "payment_settled", "payment_failed", "payment_verification_retry", "payment_lifecycle_transition", "quick_pay_external_address_acknowledged", "deposit_initiated", "deposit_settled", "permission_mirror_verification", "movement_scan_window", "movement_scan_checkpoint", "movement_scan_incident", "activity_annotation_saved", "ui_activity_action_completed", "contact_relationship_changed", "ui_contact_action_completed", "access_recovery_completed", "ui_access_step_completed", "org_invite_progressed", "invoice_issued", "invoice_request_transitioned", "ui_invoice_step_completed", "ui_treasury_step_completed", "ui_receive_step_completed", "payroll_group_changed", "payroll_run_transitioned", "ui_payroll_action_completed"];
287
+ declare const TELEMETRY_EVENT_NAMES: readonly ["auth_otp_requested", "auth_otp_delivered", "auth_otp_expired", "auth_verified", "auth_failed", "identity_refused", "auth_signed_out", "onboarding_intent_selected", "onboarding_profile_submitted", "onboarding_organization_submitted", "onboarding_dashboard_reached", "provisioning_safe_created", "provisioning_safe_confirmed", "bootstrap_resolved", "bootstrap_failed", "member_activation_started", "member_activation_ready", "member_activation_failed", "organization_creation_started", "organization_creation_ready", "organization_creation_failed", "chain_upstream_fallback", "bundler_error", "receipt_pending", "operation_retried", "account_balance_read", "account_balance_failed", "faucet_requested", "faucet_confirmed", "faucet_failed", "org_create_started", "org_safe_created", "org_safe_confirmed", "org_roles_seeded", "org_created", "org_create_failed", "org_invite_sent", "org_invite_accepted", "org_invite_expired", "payment_initiated", "payment_settled", "payment_failed", "payment_verification_retry", "payment_lifecycle_transition", "quick_pay_external_address_acknowledged", "deposit_initiated", "deposit_settled", "permission_mirror_verification", "movement_scan_window", "movement_scan_checkpoint", "movement_scan_incident", "indexer_drift_corrected", "activity_annotation_saved", "ui_activity_action_completed", "contact_relationship_changed", "ui_contact_action_completed", "access_recovery_completed", "ui_access_step_completed", "org_invite_progressed", "invoice_issued", "invoice_request_transitioned", "ui_invoice_step_completed", "ui_treasury_step_completed", "ui_receive_step_completed", "payroll_group_changed", "payroll_run_transitioned", "ui_payroll_action_completed"];
288
288
  type TelemetryEventName = (typeof TELEMETRY_EVENT_NAMES)[number];
289
289
  type TelemetryProps = Record<string, unknown>;
290
290
  type TelemetryEvent = {
@@ -1337,9 +1337,8 @@ interface MeMethods {
1337
1337
  get(options?: {
1338
1338
  readonly signal?: AbortSignal;
1339
1339
  }): Promise<CapxulResult<MeProfile>>;
1340
- depositInstructions(options?: {
1341
- readonly signal?: AbortSignal;
1342
- }): Promise<CapxulResult<DepositInstructions>>;
1340
+ /** R08 (#1966): accepts a captured attempt, exactly as the treasury read does. */
1341
+ depositInstructions(options?: InvocationControls): Promise<CapxulResult<DepositInstructions>>;
1343
1342
  }
1344
1343
  interface PaymentMoney {
1345
1344
  readonly currency: string;
@@ -1887,19 +1886,17 @@ interface ActorRequestIssueInput {
1887
1886
  readonly memo?: string;
1888
1887
  readonly expiresAt?: number;
1889
1888
  }
1889
+ /**
1890
+ * The issuer's own requests. The options are the address book's
1891
+ * `InvocationControls` (R07 #1965), so a caller that captured one browser
1892
+ * attempt hands it to the operation that attempt started; `{ signal }` callers
1893
+ * are unaffected.
1894
+ */
1890
1895
  interface ActorRequestsMethods {
1891
- issue(input: ActorRequestIssueInput, options?: {
1892
- readonly signal?: AbortSignal;
1893
- }): Promise<CapxulResult<ActorRequest>>;
1894
- list(options?: {
1895
- readonly signal?: AbortSignal;
1896
- }): Promise<CapxulResult<readonly ActorRequest[]>>;
1897
- get(requestId: string, options?: {
1898
- readonly signal?: AbortSignal;
1899
- }): Promise<CapxulResult<ActorRequest | null>>;
1900
- cancel(requestId: string, options?: {
1901
- readonly signal?: AbortSignal;
1902
- }): Promise<CapxulResult<ActorRequest>>;
1896
+ issue(input: ActorRequestIssueInput, options?: InvocationControls): Promise<CapxulResult<ActorRequest>>;
1897
+ list(options?: InvocationControls): Promise<CapxulResult<readonly ActorRequest[]>>;
1898
+ get(requestId: string, options?: InvocationControls): Promise<CapxulResult<ActorRequest | null>>;
1899
+ cancel(requestId: string, options?: InvocationControls): Promise<CapxulResult<ActorRequest>>;
1903
1900
  }
1904
1901
  interface InboxItem {
1905
1902
  readonly id: string;
@@ -1913,24 +1910,18 @@ interface InboxApproveInput {
1913
1910
  readonly timing?: PaymentTiming;
1914
1911
  readonly permissionId?: string;
1915
1912
  }
1913
+ /** The payer's own inbox. Its scope is the payer's, never the issuer's. */
1916
1914
  interface InboxMethods {
1917
- list(options?: {
1918
- readonly signal?: AbortSignal;
1919
- }): Promise<CapxulResult<readonly InboxItem[]>>;
1920
- approve(input: InboxApproveInput, options?: {
1921
- readonly signal?: AbortSignal;
1922
- }): Promise<CapxulResult<Payment>>;
1923
- decline(requestId: string, options?: {
1924
- readonly signal?: AbortSignal;
1925
- }): Promise<CapxulResult<InboxItem>>;
1915
+ list(options?: InvocationControls): Promise<CapxulResult<readonly InboxItem[]>>;
1916
+ approve(input: InboxApproveInput, options?: InvocationControls): Promise<CapxulResult<Payment>>;
1917
+ decline(requestId: string, options?: InvocationControls): Promise<CapxulResult<InboxItem>>;
1926
1918
  }
1927
1919
  interface ActorProfileMethods {
1928
1920
  get(options?: {
1929
1921
  readonly signal?: AbortSignal;
1930
1922
  }): Promise<CapxulResult<ActorProfile>>;
1931
- depositInstructions(options?: {
1932
- readonly signal?: AbortSignal;
1933
- }): Promise<CapxulResult<DepositInstructions>>;
1923
+ /** R08 (#1966): accepts a captured attempt, exactly as the treasury read does. */
1924
+ depositInstructions(options?: InvocationControls): Promise<CapxulResult<DepositInstructions>>;
1934
1925
  }
1935
1926
  interface ActorRelationshipMethods {
1936
1927
  readonly addressBook: AddressBookMethods;
@@ -2091,6 +2082,12 @@ type ListOrgRolesInput = {
2091
2082
  type ListOrgMembersInput = {
2092
2083
  readonly orgId: OrgId;
2093
2084
  };
2085
+ /**
2086
+ * R06 (#1964): the program attaches the caller's captured attempt to this
2087
+ * record through `copyInvocationObservation`, so the adapter forwards one
2088
+ * observation context to the backend action that owns `org_invite_sent`. The
2089
+ * carrier is a non-enumerable symbol and never becomes a wire field.
2090
+ */
2094
2091
  type InviteOrgMemberInput = {
2095
2092
  readonly orgId: OrgId;
2096
2093
  readonly input: InviteMemberInput;
@@ -2510,14 +2507,15 @@ interface OrgScopedMethods extends ActorRelationshipMethods {
2510
2507
  retrySetup(options?: {
2511
2508
  readonly signal?: AbortSignal;
2512
2509
  }): Promise<CapxulResult<OrgLifecycle>>;
2513
- /** The Organization treasury Account. */
2514
- treasury(options?: {
2515
- readonly signal?: AbortSignal;
2516
- }): Promise<CapxulResult<Account$1>>;
2510
+ /**
2511
+ * The Organization treasury Account. R08 (#1966): the declared option type is
2512
+ * the `InvocationControls` this surface already forwards, so a screen that
2513
+ * captured one user attempt can hand the same `correlation_id`/`journey_id`
2514
+ * to the read it starts. `{ signal }` callers are unaffected.
2515
+ */
2516
+ treasury(options?: InvocationControls): Promise<CapxulResult<Account$1>>;
2517
2517
  readonly account: {
2518
- get(options?: {
2519
- readonly signal?: AbortSignal;
2520
- }): Promise<CapxulResult<OrganizationAccount>>;
2518
+ get(options?: InvocationControls): Promise<CapxulResult<OrganizationAccount>>;
2521
2519
  };
2522
2520
  members(options?: {
2523
2521
  readonly signal?: AbortSignal;
@@ -2525,9 +2523,14 @@ interface OrgScopedMethods extends ActorRelationshipMethods {
2525
2523
  roles(options?: {
2526
2524
  readonly signal?: AbortSignal;
2527
2525
  }): Promise<CapxulResult<readonly RoleView[]>>;
2528
- invite(input: InviteMemberInput, options?: {
2529
- readonly signal?: AbortSignal;
2530
- }): Promise<CapxulResult<MemberView>>;
2526
+ /**
2527
+ * Invite a member by email. `options` is the browser attempt the caller
2528
+ * captured before the person pressed the button (R06 #1964); it reaches the
2529
+ * backend action unchanged, so the durable `org_invite_sent` and the later
2530
+ * `org_invite_progressed` share the attempt's correlation. `{ signal }`
2531
+ * callers are unaffected.
2532
+ */
2533
+ invite(input: InviteMemberInput, options?: InvocationControls): Promise<CapxulResult<MemberView>>;
2531
2534
  /**
2532
2535
  * Leak-safe Organization payment: execute through the payments engine with
2533
2536
  * the selected receipt-verified Budget Permission
@@ -1,5 +1,5 @@
1
1
  import { h as CapxulResult } from "../OAuthBearerAuthClient-C-ip-z8M.mjs";
2
- import { er as TelemetryEvent, f as CapxulClient, i as ObservationAdapter, n as ProductionSignerControls, nr as TelemetryIdentifyInput, pr as IdentityTransition, t as CapxulClientInput, tr as TelemetryGroupInput } from "../production-Db4fBqSk.mjs";
2
+ import { er as TelemetryEvent, f as CapxulClient, i as ObservationAdapter, n as ProductionSignerControls, nr as TelemetryIdentifyInput, pr as IdentityTransition, t as CapxulClientInput, tr as TelemetryGroupInput } from "../production-CJ42VSls.mjs";
3
3
  import { Effect, Layer } from "effect";
4
4
  //#region src/testing/production-client.d.ts
5
5
  /** Create the one production client with per-client controls at its signing boundaries. */
@@ -1,4 +1,4 @@
1
- import { D as fromWei, P as redactTelemetryEvent, a as smartAccountErrorFromCapxul, c as identityErrorFromCapxul, i as assembleCapxulClient, l as convexCallErrorFromCapxul, n as createCapxulClientWithSignerControls, o as accountReadErrorFromCapxul, s as wireChainId, u as bootstrapErrorFromCapxul, v as toWei } from "../production-CrW_sxwv.mjs";
1
+ import { D as fromWei, P as redactTelemetryEvent, a as smartAccountErrorFromCapxul, c as identityErrorFromCapxul, i as assembleCapxulClient, l as convexCallErrorFromCapxul, n as createCapxulClientWithSignerControls, o as accountReadErrorFromCapxul, s as wireChainId, u as bootstrapErrorFromCapxul, v as toWei } from "../production-Bw1sledP.mjs";
2
2
  import { G as toHandle, H as toEmail, I as toAuthUserId, K as toJwtToken, M as toAddress, N as toAllowedOrigin, P as toAppId, Q as toPublishableKey, R as toChainId, U as toEpochMs, V as toDurationMs, W as toEpochSeconds, ct as CapxulError, d as authClientPortFromPromiseAdapter, et as toSessionToken, it as validateHandle, j as toAccountId, n as readClockNow, q as toKycTier, r as InMemoryAuthCacheAdapter, ut as Errors, y as deriveCapxulSafeAddress, z as toCountryCode } from "../OAuthBearerAuthClient-CbU_W9Sp.mjs";
3
3
  import { keccak256 } from "viem";
4
4
  import { Effect, Result, Semaphore } from "effect";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@capxul/sdk",
3
- "version": "4.2.0-rc.13",
3
+ "version": "4.2.0-rc.15",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/Xelmar-tech/infrastructure.git",
@@ -47,12 +47,12 @@
47
47
  "vite": "npm:@voidzero-dev/vite-plus-core@0.3.0",
48
48
  "vite-plus": "0.3.0",
49
49
  "vitest": "4.1.11",
50
- "@capxul/config": "0.3.0",
51
50
  "@capxul/errors": "0.3.0",
52
- "@capxul/types": "0.3.0",
53
- "@capxul/observability": "4.2.0-rc.13",
51
+ "@capxul/config": "0.3.0",
52
+ "@capxul/observability": "4.2.0-rc.15",
53
+ "@capxul/wire": "0.7.0",
54
54
  "@capxul/typescript-config": "0.0.0",
55
- "@capxul/wire": "0.7.0"
55
+ "@capxul/types": "0.3.0"
56
56
  },
57
57
  "_permissionlessPinReason": "permissionless.toSafeSmartAccount is pinned to 0.3.4 for live Safe deployment E2E. Counterfactual address fixtures captured 2026-05-17 in packages/backend/convex/_shared/__tests__/counterfactual.test.ts and packages/config/tests/safe.test.ts must be re-verified before upgrading.",
58
58
  "scripts": {