@tangle-network/hub-sdk 1.0.6 → 1.0.8

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.
@@ -641,6 +641,22 @@ interface HubApprovalListResponse {
641
641
  approvals: HubApproval[];
642
642
  }
643
643
  //#endregion
644
+ //#region src/condition-types.d.ts
645
+ type HubConditionOp = "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "in" | "contains" | "exists" | "truthy";
646
+ type HubConditionScalar = string | number | boolean | null;
647
+ /** Shared predicate grammar for event filters and workflow edge guards. */
648
+ type HubCondition = {
649
+ path: string;
650
+ op: HubConditionOp;
651
+ value?: HubConditionScalar | HubConditionScalar[];
652
+ } | {
653
+ all: HubCondition[];
654
+ } | {
655
+ any: HubCondition[];
656
+ } | {
657
+ not: HubCondition;
658
+ };
659
+ //#endregion
644
660
  //#region src/channel-types.d.ts
645
661
  interface HubEmailChannel {
646
662
  id: string;
@@ -674,18 +690,8 @@ interface HubChannelCreateResponse {
674
690
  interface HubChannelDeleteResponse {
675
691
  removed: true;
676
692
  }
677
- type HubEventConditionScalar = string | number | boolean | null;
678
- type HubEventCondition = {
679
- path: string;
680
- op: "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "in" | "contains" | "exists" | "truthy";
681
- value?: HubEventConditionScalar | HubEventConditionScalar[];
682
- } | {
683
- all: HubEventCondition[];
684
- } | {
685
- any: HubEventCondition[];
686
- } | {
687
- not: HubEventCondition;
688
- };
693
+ type HubEventConditionScalar = HubConditionScalar;
694
+ type HubEventCondition = HubCondition;
689
695
  interface HubEventSubscriptionFilter {
690
696
  action?: string;
691
697
  repo?: string;
@@ -1006,21 +1012,11 @@ interface HubGithubAppIsRepoInstalledResponse {
1006
1012
  /** How a node's incoming edges release it (default `"all"` — omitted on the
1007
1013
  * wire for it, so specs compiled before join rules existed round-trip). */
1008
1014
  type HubWorkflowGraphJoinRule = "all" | "any" | "any_failed" | "all_done";
1009
- type HubWorkflowConditionOp = "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "in" | "contains" | "exists" | "truthy";
1010
- type HubWorkflowConditionScalar = string | number | boolean | null;
1015
+ type HubWorkflowConditionOp = HubConditionOp;
1016
+ type HubWorkflowConditionScalar = HubConditionScalar;
1011
1017
  /** The predicate on a guarded edge (`needs: [{ id, when }]`), evaluated by the
1012
1018
  * runner against the steps context on the source node's completion. */
1013
- type HubWorkflowCondition = {
1014
- path: string;
1015
- op: HubWorkflowConditionOp;
1016
- value?: HubWorkflowConditionScalar | HubWorkflowConditionScalar[];
1017
- } | {
1018
- all: HubWorkflowCondition[];
1019
- } | {
1020
- any: HubWorkflowCondition[];
1021
- } | {
1022
- not: HubWorkflowCondition;
1023
- };
1019
+ type HubWorkflowCondition = HubCondition;
1024
1020
  interface HubWorkflowGraphNode {
1025
1021
  id: string;
1026
1022
  index: number;
@@ -2568,4 +2564,4 @@ declare class HubClient extends HubTransport {
2568
2564
  }
2569
2565
  //#endregion
2570
2566
  export { HubLineScheduledSendOptions as $, HubEventDelivery as $n, HubTool as $r, HubWorkflowRunDetail as $t, HubSdkError as A, HubConnectionDeleteResponse as An, HubPrincipal as Ar, workflowConnectionRequirementKey as At, HubLineApplicationDispatchCurrentInput as B, HubProvidersResponse as Bn, HubKnowledgeRetrievalResult as Br, HubWorkflowDistillationCandidate as Bt, HUB_URL_ENV_VAR as C, HubGithubAppMintInstallationTokenResponse as Cn, HubRevertWritesResponse as Cr, HubWorkflowTemplate as Ct, resolveHubBaseUrl as D, HubApiKeyConnectResponse as Dn, HubErrorBody as Dr, HubWorkflowTrigger as Dt, resolveHubAuth as E, HubApiKeyConnectRequest as En, HubTokensListResponse as Er, HubWorkflowTemplateParameter as Et, HubNumberOrder as F, HubConnectionsResponse as Fn, HubAuditEvent as Fr, HubWorkflowDecision as Ft, HubLineMemberApplication as G, HubChannel as Gn, KnowledgeCapabilities as Gr, HubWorkflowFleetWindow as Gt, HubLineContext as H, HubWhatsappEmbeddedSignupCompleteResponse as Hn, KnowledgeAttachment as Hr, HubWorkflowFailureCluster as Ht, HubNumberOrderPage as I, HubOAuthConnectionParameter as In, HubAuditListRequest as Ir, HubWorkflowDecisionOnTimeout as It, HubLineProviderDelivery as J, HubChannelsResponse as Jn, KnowledgeReference as Jr, HubWorkflowOnErrorOutcome as Jt, HubLineMemberApplicationInput as K, HubChannelCreateResponse as Kn, KnowledgeCapability as Kr, HubWorkflowHealth as Kt, HubNumberQuote as L, HubOAuthStartResponse as Ln, HubAuditResponse as Lr, HubWorkflowDecisionResolveResult as Lt, isHubUnauthenticated as M, HubConnectionHealthInfo as Mn, HubStatusConnections as Mr, HubAgentRunDetail as Mt, HubManagedNumbersClient as N, HubConnectionHealthResponse as Nn, HubStatusResponse as Nr, HubWorkflowActionResult as Nt, HubAuthHeaders as O, HubApiKeyConnectionMetadata as On, HubErrorCode as Or, HubWorkflowValidateResponse as Ot, HubNumberListQuery as P, HubConnectionHealthStatus as Pn, HubSuccessEnvelope as Pr, HubWorkflowAgentStep as Pt, HubLineReplyCodeInput as Q, HubEventConditionScalar as Qn, HubExecResponse as Qr, HubWorkflowRunCancelResult as Qt, HubNumberReadiness as R, HubProvider as Rn, HubKnowledgeClient as Rr, HubWorkflowDecisionResolvedVia as Rt, HUB_CAPABILITY_TOKEN_ENV_VAR as S, HubAllowancesClient as Si, HubGithubAppMintInstallationTokenRequest as Sn, HubPolicyUpdateRequest as Sr, HubWorkflowSchemaResponse as St, HubEnv as T, HubGithubAppSyncedInstallation as Tn, HubTokenRevokeResponse as Tr, HubWorkflowTemplateInstantiateResult as Tt, HubLineImage as U, HubWhatsappEmbeddedSignupStartRequest as Un, KnowledgeAttachmentAuthorization as Ur, HubWorkflowFleetEntry as Ut, HubLineCheckinOptions as V, HubWhatsappEmbeddedSignupCompleteRequest as Vn, HubKnowledgeManagementClient as Vr, HubWorkflowEdgeVerdicts as Vt, HubLineMember as W, HubWhatsappEmbeddedSignupStartResponse as Wn, KnowledgeAuthorization as Wr, HubWorkflowFleetInsights as Wt, HubLineReminderReceipt as X, HubEmailChannelCreateRequest as Xn, KnowledgeSourceInput as Xr, HubWorkflowPendingDecisionsResponse as Xt, HubLineReminderInput as Y, HubEmailChannel as Yn, KnowledgeSourceCreate as Yr, HubWorkflowPendingDecision as Yt, HubLineReplyCode as Z, HubEventCondition as Zn, KnowledgeSourceSummary as Zr, HubWorkflowRun as Zt, HubApprovalsClient as _, HubAllowanceSubject as _i, HubGithubAppInstallationResponse as _n, HubPolicyDecision as _r, HubWorkflowProposal as _t, HubChannelsClient as a, HubApp as ai, HubWorkflowRunStreamEvent as an, HubEventSubscriptionFilter as ar, HubWorkflowArtifactRef as at, HubTokensClient as b, HubAllowanceTier as bi, HubGithubAppListReposResponse as bn, HubPolicyListResponse as br, HubWorkflowRevisionSource as bt, HubConnectionsClient as c, HubAppCreateInput as ci, HubWorkflowCondition as cn, HubProviderEvent as cr, HubWorkflowKvEntry as ct, HubInboundWebhookCreateResponse as d, HubAppsClient as di, HubWorkflowGraphEdge as dn, HubApprovalCapabilityToken as dr, HubManualRunInput as dt, HubToolRisk as ei, HubWorkflowRunEnqueued as en, HubEventSubscription as er, HubLineSendInput as et, HubInboundWebhookStatus as f, HubAllowanceDecision as fi, HubWorkflowGraphJoinRule as fn, HubApprovalDecisionResponse as fr, HubWorkflow as ft, HubToolsClient as g, HubAllowanceRole as gi, HubGithubAppInstallation as gn, HubPolicy as gr, HubWorkflowHookEndpoint as gt, HubToolSearchOptions as h, HubAllowancePlanInput as hi, HubGithubAppDisconnectResponse as hn, HubCapabilityToken as hr, HubWorkflowEventFilter as ht, HubGithubAppClient as i, HubToolsSearchResponse as ii, HubWorkflowRunStepsPage as in, HubEventSubscriptionDeleteResponse as ir, HubWorkflowArtifactDownload as it, HubTransport as j, HubConnectionHealthError as jn, HubPrincipalKind as jr, HubAgentIterationSpan as jt, HubClientOptions as k, HubConnection as kn, HubErrorEnvelope as kr, HubWorkflowValidationError as kt, HubInboundPhoneNumberScope as l, HubAppGrant as li, HubWorkflowConditionOp as ln, HubAllowWritesResponse as lr, HubWorkflowKvEntryMeta as lt, HubToolInvokeOptions as m, HubAllowancePlan as mi, HubWorkflowGraphSpec as mn, HubApprovalStatus as mr, HubWorkflowConnectionRequirement as mt, HubWorkflowsClient as n, HubToolSourcesResponse as ni, HubWorkflowRunRetried as nn, HubEventSubscriptionCreateRequest as nr, HubLinesClient as nt, HubEventSubscriptionsClient as o, HubAppComplianceClaim as oi, HubWorkflowRunSummary as on, HubEventSubscriptionSource as or, HubWorkflowArtifactsResponse as ot, HubInboundWebhooksClient as p, HubAllowanceGrant as pi, HubWorkflowGraphNode as pn, HubApprovalListResponse as pr, HubWorkflowAction as pt, HubLineOwnerSendInput as q, HubChannelDeleteResponse as qn, KnowledgeEmbeddingSpace as qr, HubWorkflowNodeHealth as qt, HubAuditClient as r, HubToolsDescribeResponse as ri, HubWorkflowRunStatus as rn, HubEventSubscriptionCreateResponse as rr, HubWorkflowArtifact as rt, HubConnectionStartOptions as s, HubAppComplianceState as si, HubWorkflowRunsPage as sn, HubEventSubscriptionsResponse as sr, HubWorkflowKvDeleteResponse as st, HubClient as t, HubToolSource as ti, HubWorkflowRunInputs as tn, HubEventSubscriptionCallback as tr, HubLineSendReceipt as tt, HubInboundWebhookCreateOptions as u, HubAppGrantRevoked as ui, HubWorkflowConditionScalar as un, HubApproval as ur, HubWorkflowKvListResponse as ut, HubPermissionsClient as v, HubAllowanceSyncInput as vi, HubGithubAppIsRepoInstalledResponse as vn, HubPolicyDeleteRequest as vr, HubWorkflowRevision as vt, HubClientFromEnvOptions as w, HubGithubAppSyncResponse as wn, HubTokenMintResponse as wr, HubWorkflowTemplateCategory as wt, HUB_API_KEY_ENV_VAR as x, HubAllowanceUsage as xi, HubGithubAppManagedInstallation as xn, HubPolicyResponse as xr, HubWorkflowRevisionStatus as xt, HubTokenListOptions as y, HubAllowanceSyncReceipt as yi, HubGithubAppListInstallationsResponse as yn, HubPolicyDeleteResponse as yr, HubWorkflowRevisionMeta as yt, HubNumberResolution as z, HubProviderAuthKind as zn, HubKnowledgeQueryResult as zr, HubWorkflowDecisionStatus as zt };
2571
- //# sourceMappingURL=client-C-JbtG50.d.ts.map
2567
+ //# sourceMappingURL=client-Ct8eoS1Y.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-Ct8eoS1Y.d.ts","names":[],"sources":["../src/allowances.ts","../src/apps.ts","../src/tool-types.ts","../src/knowledge-management.ts","../src/knowledge.ts","../src/audit-types.ts","../src/transport-types.ts","../src/authorization-types.ts","../src/condition-types.ts","../src/channel-types.ts","../src/connection-types.ts","../src/github-app-types.ts","../src/workflow-graph-types.ts","../src/workflow-run-types.ts","../src/workflow-definition-types.ts","../src/workflow-storage-types.ts","../src/lines.ts","../src/managed-numbers.ts","../src/transport.ts","../src/environment.ts","../src/authorization.ts","../src/tools.ts","../src/inbound-webhooks.ts","../src/connections.ts","../src/channels.ts","../src/github-app.ts","../src/audit.ts","../src/workflows-kv.ts","../src/workflows.ts","../src/client.ts"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as HubLineScheduledSendOptions, $n as HubEventDelivery, $r as HubTool, $t as HubWorkflowRunDetail, A as HubSdkError, An as HubConnectionDeleteResponse, Ar as HubPrincipal, At as workflowConnectionRequirementKey, B as HubLineApplicationDispatchCurrentInput, Bn as HubProvidersResponse, Br as HubKnowledgeRetrievalResult, Bt as HubWorkflowDistillationCandidate, C as HUB_URL_ENV_VAR, Cn as HubGithubAppMintInstallationTokenResponse, Cr as HubRevertWritesResponse, Ct as HubWorkflowTemplate, D as resolveHubBaseUrl, Dn as HubApiKeyConnectResponse, Dr as HubErrorBody, Dt as HubWorkflowTrigger, E as resolveHubAuth, En as HubApiKeyConnectRequest, Er as HubTokensListResponse, Et as HubWorkflowTemplateParameter, F as HubNumberOrder, Fn as HubConnectionsResponse, Fr as HubAuditEvent, Ft as HubWorkflowDecision, G as HubLineMemberApplication, Gn as HubChannel, Gr as KnowledgeCapabilities, Gt as HubWorkflowFleetWindow, H as HubLineContext, Hn as HubWhatsappEmbeddedSignupCompleteResponse, Hr as KnowledgeAttachment, Ht as HubWorkflowFailureCluster, I as HubNumberOrderPage, In as HubOAuthConnectionParameter, Ir as HubAuditListRequest, It as HubWorkflowDecisionOnTimeout, J as HubLineProviderDelivery, Jn as HubChannelsResponse, Jr as KnowledgeReference, Jt as HubWorkflowOnErrorOutcome, K as HubLineMemberApplicationInput, Kn as HubChannelCreateResponse, Kr as KnowledgeCapability, Kt as HubWorkflowHealth, L as HubNumberQuote, Ln as HubOAuthStartResponse, Lr as HubAuditResponse, Lt as HubWorkflowDecisionResolveResult, M as isHubUnauthenticated, Mn as HubConnectionHealthInfo, Mr as HubStatusConnections, Mt as HubAgentRunDetail, N as HubManagedNumbersClient, Nn as HubConnectionHealthResponse, Nr as HubStatusResponse, Nt as HubWorkflowActionResult, O as HubAuthHeaders, On as HubApiKeyConnectionMetadata, Or as HubErrorCode, Ot as HubWorkflowValidateResponse, P as HubNumberListQuery, Pn as HubConnectionHealthStatus, Pr as HubSuccessEnvelope, Pt as HubWorkflowAgentStep, Q as HubLineReplyCodeInput, Qn as HubEventConditionScalar, Qr as HubExecResponse, Qt as HubWorkflowRunCancelResult, R as HubNumberReadiness, Rn as HubProvider, Rr as HubKnowledgeClient, Rt as HubWorkflowDecisionResolvedVia, S as HUB_CAPABILITY_TOKEN_ENV_VAR, Si as HubAllowancesClient, Sn as HubGithubAppMintInstallationTokenRequest, Sr as HubPolicyUpdateRequest, St as HubWorkflowSchemaResponse, T as HubEnv, Tn as HubGithubAppSyncedInstallation, Tr as HubTokenRevokeResponse, Tt as HubWorkflowTemplateInstantiateResult, U as HubLineImage, Un as HubWhatsappEmbeddedSignupStartRequest, Ur as KnowledgeAttachmentAuthorization, Ut as HubWorkflowFleetEntry, V as HubLineCheckinOptions, Vn as HubWhatsappEmbeddedSignupCompleteRequest, Vr as HubKnowledgeManagementClient, Vt as HubWorkflowEdgeVerdicts, W as HubLineMember, Wn as HubWhatsappEmbeddedSignupStartResponse, Wr as KnowledgeAuthorization, Wt as HubWorkflowFleetInsights, X as HubLineReminderReceipt, Xn as HubEmailChannelCreateRequest, Xr as KnowledgeSourceInput, Xt as HubWorkflowPendingDecisionsResponse, Y as HubLineReminderInput, Yn as HubEmailChannel, Yr as KnowledgeSourceCreate, Yt as HubWorkflowPendingDecision, Z as HubLineReplyCode, Zn as HubEventCondition, Zr as KnowledgeSourceSummary, Zt as HubWorkflowRun, _ as HubApprovalsClient, _i as HubAllowanceSubject, _n as HubGithubAppInstallationResponse, _r as HubPolicyDecision, _t as HubWorkflowProposal, a as HubChannelsClient, ai as HubApp, an as HubWorkflowRunStreamEvent, ar as HubEventSubscriptionFilter, at as HubWorkflowArtifactRef, b as HubTokensClient, bi as HubAllowanceTier, bn as HubGithubAppListReposResponse, br as HubPolicyListResponse, bt as HubWorkflowRevisionSource, c as HubConnectionsClient, ci as HubAppCreateInput, cn as HubWorkflowCondition, cr as HubProviderEvent, ct as HubWorkflowKvEntry, d as HubInboundWebhookCreateResponse, di as HubAppsClient, dn as HubWorkflowGraphEdge, dr as HubApprovalCapabilityToken, dt as HubManualRunInput, ei as HubToolRisk, en as HubWorkflowRunEnqueued, er as HubEventSubscription, et as HubLineSendInput, f as HubInboundWebhookStatus, fi as HubAllowanceDecision, fn as HubWorkflowGraphJoinRule, fr as HubApprovalDecisionResponse, ft as HubWorkflow, g as HubToolsClient, gi as HubAllowanceRole, gn as HubGithubAppInstallation, gr as HubPolicy, gt as HubWorkflowHookEndpoint, h as HubToolSearchOptions, hi as HubAllowancePlanInput, hn as HubGithubAppDisconnectResponse, hr as HubCapabilityToken, ht as HubWorkflowEventFilter, i as HubGithubAppClient, ii as HubToolsSearchResponse, in as HubWorkflowRunStepsPage, ir as HubEventSubscriptionDeleteResponse, it as HubWorkflowArtifactDownload, j as HubTransport, jn as HubConnectionHealthError, jr as HubPrincipalKind, jt as HubAgentIterationSpan, k as HubClientOptions, kn as HubConnection, kr as HubErrorEnvelope, kt as HubWorkflowValidationError, l as HubInboundPhoneNumberScope, li as HubAppGrant, ln as HubWorkflowConditionOp, lr as HubAllowWritesResponse, lt as HubWorkflowKvEntryMeta, m as HubToolInvokeOptions, mi as HubAllowancePlan, mn as HubWorkflowGraphSpec, mr as HubApprovalStatus, mt as HubWorkflowConnectionRequirement, n as HubWorkflowsClient, ni as HubToolSourcesResponse, nn as HubWorkflowRunRetried, nr as HubEventSubscriptionCreateRequest, nt as HubLinesClient, o as HubEventSubscriptionsClient, oi as HubAppComplianceClaim, on as HubWorkflowRunSummary, or as HubEventSubscriptionSource, ot as HubWorkflowArtifactsResponse, p as HubInboundWebhooksClient, pi as HubAllowanceGrant, pn as HubWorkflowGraphNode, pr as HubApprovalListResponse, pt as HubWorkflowAction, q as HubLineOwnerSendInput, qn as HubChannelDeleteResponse, qr as KnowledgeEmbeddingSpace, qt as HubWorkflowNodeHealth, r as HubAuditClient, ri as HubToolsDescribeResponse, rn as HubWorkflowRunStatus, rr as HubEventSubscriptionCreateResponse, rt as HubWorkflowArtifact, s as HubConnectionStartOptions, si as HubAppComplianceState, sn as HubWorkflowRunsPage, sr as HubEventSubscriptionsResponse, st as HubWorkflowKvDeleteResponse, t as HubClient, ti as HubToolSource, tn as HubWorkflowRunInputs, tr as HubEventSubscriptionCallback, tt as HubLineSendReceipt, u as HubInboundWebhookCreateOptions, ui as HubAppGrantRevoked, un as HubWorkflowConditionScalar, ur as HubApproval, ut as HubWorkflowKvListResponse, v as HubPermissionsClient, vi as HubAllowanceSyncInput, vn as HubGithubAppIsRepoInstalledResponse, vr as HubPolicyDeleteRequest, vt as HubWorkflowRevision, w as HubClientFromEnvOptions, wn as HubGithubAppSyncResponse, wr as HubTokenMintResponse, wt as HubWorkflowTemplateCategory, x as HUB_API_KEY_ENV_VAR, xi as HubAllowanceUsage, xn as HubGithubAppManagedInstallation, xr as HubPolicyResponse, xt as HubWorkflowRevisionStatus, y as HubTokenListOptions, yi as HubAllowanceSyncReceipt, yn as HubGithubAppListInstallationsResponse, yr as HubPolicyDeleteResponse, yt as HubWorkflowRevisionMeta, z as HubNumberResolution, zn as HubProviderAuthKind, zr as HubKnowledgeQueryResult, zt as HubWorkflowDecisionStatus } from "./client-C-JbtG50.js";
1
+ import { $ as HubLineScheduledSendOptions, $n as HubEventDelivery, $r as HubTool, $t as HubWorkflowRunDetail, A as HubSdkError, An as HubConnectionDeleteResponse, Ar as HubPrincipal, At as workflowConnectionRequirementKey, B as HubLineApplicationDispatchCurrentInput, Bn as HubProvidersResponse, Br as HubKnowledgeRetrievalResult, Bt as HubWorkflowDistillationCandidate, C as HUB_URL_ENV_VAR, Cn as HubGithubAppMintInstallationTokenResponse, Cr as HubRevertWritesResponse, Ct as HubWorkflowTemplate, D as resolveHubBaseUrl, Dn as HubApiKeyConnectResponse, Dr as HubErrorBody, Dt as HubWorkflowTrigger, E as resolveHubAuth, En as HubApiKeyConnectRequest, Er as HubTokensListResponse, Et as HubWorkflowTemplateParameter, F as HubNumberOrder, Fn as HubConnectionsResponse, Fr as HubAuditEvent, Ft as HubWorkflowDecision, G as HubLineMemberApplication, Gn as HubChannel, Gr as KnowledgeCapabilities, Gt as HubWorkflowFleetWindow, H as HubLineContext, Hn as HubWhatsappEmbeddedSignupCompleteResponse, Hr as KnowledgeAttachment, Ht as HubWorkflowFailureCluster, I as HubNumberOrderPage, In as HubOAuthConnectionParameter, Ir as HubAuditListRequest, It as HubWorkflowDecisionOnTimeout, J as HubLineProviderDelivery, Jn as HubChannelsResponse, Jr as KnowledgeReference, Jt as HubWorkflowOnErrorOutcome, K as HubLineMemberApplicationInput, Kn as HubChannelCreateResponse, Kr as KnowledgeCapability, Kt as HubWorkflowHealth, L as HubNumberQuote, Ln as HubOAuthStartResponse, Lr as HubAuditResponse, Lt as HubWorkflowDecisionResolveResult, M as isHubUnauthenticated, Mn as HubConnectionHealthInfo, Mr as HubStatusConnections, Mt as HubAgentRunDetail, N as HubManagedNumbersClient, Nn as HubConnectionHealthResponse, Nr as HubStatusResponse, Nt as HubWorkflowActionResult, O as HubAuthHeaders, On as HubApiKeyConnectionMetadata, Or as HubErrorCode, Ot as HubWorkflowValidateResponse, P as HubNumberListQuery, Pn as HubConnectionHealthStatus, Pr as HubSuccessEnvelope, Pt as HubWorkflowAgentStep, Q as HubLineReplyCodeInput, Qn as HubEventConditionScalar, Qr as HubExecResponse, Qt as HubWorkflowRunCancelResult, R as HubNumberReadiness, Rn as HubProvider, Rr as HubKnowledgeClient, Rt as HubWorkflowDecisionResolvedVia, S as HUB_CAPABILITY_TOKEN_ENV_VAR, Si as HubAllowancesClient, Sn as HubGithubAppMintInstallationTokenRequest, Sr as HubPolicyUpdateRequest, St as HubWorkflowSchemaResponse, T as HubEnv, Tn as HubGithubAppSyncedInstallation, Tr as HubTokenRevokeResponse, Tt as HubWorkflowTemplateInstantiateResult, U as HubLineImage, Un as HubWhatsappEmbeddedSignupStartRequest, Ur as KnowledgeAttachmentAuthorization, Ut as HubWorkflowFleetEntry, V as HubLineCheckinOptions, Vn as HubWhatsappEmbeddedSignupCompleteRequest, Vr as HubKnowledgeManagementClient, Vt as HubWorkflowEdgeVerdicts, W as HubLineMember, Wn as HubWhatsappEmbeddedSignupStartResponse, Wr as KnowledgeAuthorization, Wt as HubWorkflowFleetInsights, X as HubLineReminderReceipt, Xn as HubEmailChannelCreateRequest, Xr as KnowledgeSourceInput, Xt as HubWorkflowPendingDecisionsResponse, Y as HubLineReminderInput, Yn as HubEmailChannel, Yr as KnowledgeSourceCreate, Yt as HubWorkflowPendingDecision, Z as HubLineReplyCode, Zn as HubEventCondition, Zr as KnowledgeSourceSummary, Zt as HubWorkflowRun, _ as HubApprovalsClient, _i as HubAllowanceSubject, _n as HubGithubAppInstallationResponse, _r as HubPolicyDecision, _t as HubWorkflowProposal, a as HubChannelsClient, ai as HubApp, an as HubWorkflowRunStreamEvent, ar as HubEventSubscriptionFilter, at as HubWorkflowArtifactRef, b as HubTokensClient, bi as HubAllowanceTier, bn as HubGithubAppListReposResponse, br as HubPolicyListResponse, bt as HubWorkflowRevisionSource, c as HubConnectionsClient, ci as HubAppCreateInput, cn as HubWorkflowCondition, cr as HubProviderEvent, ct as HubWorkflowKvEntry, d as HubInboundWebhookCreateResponse, di as HubAppsClient, dn as HubWorkflowGraphEdge, dr as HubApprovalCapabilityToken, dt as HubManualRunInput, ei as HubToolRisk, en as HubWorkflowRunEnqueued, er as HubEventSubscription, et as HubLineSendInput, f as HubInboundWebhookStatus, fi as HubAllowanceDecision, fn as HubWorkflowGraphJoinRule, fr as HubApprovalDecisionResponse, ft as HubWorkflow, g as HubToolsClient, gi as HubAllowanceRole, gn as HubGithubAppInstallation, gr as HubPolicy, gt as HubWorkflowHookEndpoint, h as HubToolSearchOptions, hi as HubAllowancePlanInput, hn as HubGithubAppDisconnectResponse, hr as HubCapabilityToken, ht as HubWorkflowEventFilter, i as HubGithubAppClient, ii as HubToolsSearchResponse, in as HubWorkflowRunStepsPage, ir as HubEventSubscriptionDeleteResponse, it as HubWorkflowArtifactDownload, j as HubTransport, jn as HubConnectionHealthError, jr as HubPrincipalKind, jt as HubAgentIterationSpan, k as HubClientOptions, kn as HubConnection, kr as HubErrorEnvelope, kt as HubWorkflowValidationError, l as HubInboundPhoneNumberScope, li as HubAppGrant, ln as HubWorkflowConditionOp, lr as HubAllowWritesResponse, lt as HubWorkflowKvEntryMeta, m as HubToolInvokeOptions, mi as HubAllowancePlan, mn as HubWorkflowGraphSpec, mr as HubApprovalStatus, mt as HubWorkflowConnectionRequirement, n as HubWorkflowsClient, ni as HubToolSourcesResponse, nn as HubWorkflowRunRetried, nr as HubEventSubscriptionCreateRequest, nt as HubLinesClient, o as HubEventSubscriptionsClient, oi as HubAppComplianceClaim, on as HubWorkflowRunSummary, or as HubEventSubscriptionSource, ot as HubWorkflowArtifactsResponse, p as HubInboundWebhooksClient, pi as HubAllowanceGrant, pn as HubWorkflowGraphNode, pr as HubApprovalListResponse, pt as HubWorkflowAction, q as HubLineOwnerSendInput, qn as HubChannelDeleteResponse, qr as KnowledgeEmbeddingSpace, qt as HubWorkflowNodeHealth, r as HubAuditClient, ri as HubToolsDescribeResponse, rn as HubWorkflowRunStatus, rr as HubEventSubscriptionCreateResponse, rt as HubWorkflowArtifact, s as HubConnectionStartOptions, si as HubAppComplianceState, sn as HubWorkflowRunsPage, sr as HubEventSubscriptionsResponse, st as HubWorkflowKvDeleteResponse, t as HubClient, ti as HubToolSource, tn as HubWorkflowRunInputs, tr as HubEventSubscriptionCallback, tt as HubLineSendReceipt, u as HubInboundWebhookCreateOptions, ui as HubAppGrantRevoked, un as HubWorkflowConditionScalar, ur as HubApproval, ut as HubWorkflowKvListResponse, v as HubPermissionsClient, vi as HubAllowanceSyncInput, vn as HubGithubAppIsRepoInstalledResponse, vr as HubPolicyDeleteRequest, vt as HubWorkflowRevision, w as HubClientFromEnvOptions, wn as HubGithubAppSyncResponse, wr as HubTokenMintResponse, wt as HubWorkflowTemplateCategory, x as HUB_API_KEY_ENV_VAR, xi as HubAllowanceUsage, xn as HubGithubAppManagedInstallation, xr as HubPolicyResponse, xt as HubWorkflowRevisionStatus, y as HubTokenListOptions, yi as HubAllowanceSyncReceipt, yn as HubGithubAppListInstallationsResponse, yr as HubPolicyDeleteResponse, yt as HubWorkflowRevisionMeta, z as HubNumberResolution, zn as HubProviderAuthKind, zr as HubKnowledgeQueryResult, zt as HubWorkflowDecisionStatus } from "./client-Ct8eoS1Y.js";
2
2
 
3
3
  //#region src/broker.d.ts
4
4
  interface HubAppBrokerOptions {
@@ -104,15 +104,6 @@ declare function authenticateHubEventRequest(input: AuthenticateHubEventRequestI
104
104
  declare function verifyHubEventSignature(input: VerifyHubEventSignatureInput): Promise<HubEventSignatureResult>;
105
105
  declare function parseHubEventDelivery(input: string | unknown): HubEventDelivery;
106
106
  //#endregion
107
- //#region src/knowledge-approval.d.ts
108
- /** Called only after the owner reviews this exact pending effect and clicks
109
- * Approve. Re-read first: a stale tab cannot approve a substituted operation. */
110
- declare function approveKnowledgeSource(input: {
111
- port: Pick<HubKnowledgeManagementClient, "get" | "refresh">;
112
- approvals: Pick<HubApprovalsClient, "approve">;
113
- source: KnowledgeSourceSummary;
114
- }): Promise<KnowledgeSourceSummary>;
115
- //#endregion
116
107
  //#region src/line-grants.d.ts
117
108
  type HubOwnerAskSendInput = Pick<HubLineOwnerSendInput, "text" | "image" | "reply" | "idempotencyKey">;
118
109
  interface HubLineGrantBinding {
@@ -273,5 +264,5 @@ declare class HubLineGrantsClient extends HubTransport {
273
264
  //#region src/redaction.d.ts
274
265
  declare function redactHubValue(value: unknown): unknown;
275
266
  //#endregion
276
- export { type AuthenticateHubEventRequestInput, type DeriveHubEventCallbackSecretInput, HUB_API_KEY_ENV_VAR, HUB_CAPABILITY_TOKEN_ENV_VAR, HUB_URL_ENV_VAR, HubAgentIterationSpan, HubAgentRunDetail, HubAllowWritesResponse, type HubAllowanceDecision, type HubAllowanceGrant, type HubAllowancePlan, type HubAllowancePlanInput, type HubAllowanceRole, type HubAllowanceSubject, type HubAllowanceSyncInput, type HubAllowanceSyncReceipt, type HubAllowanceTier, type HubAllowanceUsage, HubAllowancesClient, HubApiKeyConnectRequest, HubApiKeyConnectResponse, HubApiKeyConnectionMetadata, type HubApp, HubAppBrokerClient, type HubAppBrokerExchange, type HubAppBrokerOptions, type HubAppBrokerToken, type HubAppComplianceClaim, type HubAppComplianceState, type HubAppCreateInput, type HubAppGrant, type HubAppGrantRevoked, HubApproval, HubApprovalCapabilityToken, HubApprovalDecisionResponse, HubApprovalListResponse, HubApprovalStatus, HubApprovalsClient, HubAppsClient, HubAuditClient, HubAuditEvent, HubAuditListRequest, HubAuditResponse, type HubAuthHeaders, HubCapabilityToken, HubChannel, HubChannelCreateResponse, HubChannelDeleteResponse, HubChannelsClient, HubChannelsResponse, HubClient, type HubClientFromEnvOptions, type HubClientOptions, HubConnection, HubConnectionDeleteResponse, HubConnectionHealthError, HubConnectionHealthInfo, HubConnectionHealthResponse, HubConnectionHealthStatus, type HubConnectionStartOptions, HubConnectionsClient, HubConnectionsResponse, HubEmailChannel, HubEmailChannelCreateRequest, type HubEnv, HubErrorBody, HubErrorCode, HubErrorEnvelope, HubEventCondition, HubEventConditionScalar, HubEventDelivery, HubEventDeliveryError, type HubEventRequestFailureCode, type HubEventRequestResult, type HubEventSignatureFailure, type HubEventSignatureResult, HubEventSubscription, HubEventSubscriptionCallback, HubEventSubscriptionCreateRequest, HubEventSubscriptionCreateResponse, HubEventSubscriptionDeleteResponse, HubEventSubscriptionFilter, HubEventSubscriptionSource, HubEventSubscriptionsClient, HubEventSubscriptionsResponse, HubExecResponse, HubGithubAppClient, HubGithubAppDisconnectResponse, HubGithubAppInstallation, HubGithubAppInstallationResponse, HubGithubAppIsRepoInstalledResponse, HubGithubAppListInstallationsResponse, HubGithubAppListReposResponse, HubGithubAppManagedInstallation, HubGithubAppMintInstallationTokenRequest, HubGithubAppMintInstallationTokenResponse, HubGithubAppSyncResponse, HubGithubAppSyncedInstallation, type HubInboundPhoneNumberScope, type HubInboundWebhookCreateOptions, type HubInboundWebhookCreateResponse, type HubInboundWebhookStatus, HubInboundWebhooksClient, HubKnowledgeClient, HubKnowledgeManagementClient, type HubKnowledgeQueryResult, type HubKnowledgeRetrievalResult, type HubLineApplicationDispatchCurrentInput, type HubLineCheckinOptions, type HubLineContext, type HubLineGrant, type HubLineGrantApplicationSelection, type HubLineGrantAttachInput, type HubLineGrantAttachment, type HubLineGrantBinding, type HubLineGrantLine, type HubLineGrantMemberApplication, type HubLineGrantMessage, type HubLineGrantSelectApplicationInput, type HubLineGrantThread, HubLineGrantsClient, type HubLineImage, type HubLineMember, type HubLineMemberApplication, type HubLineMemberApplicationInput, type HubLineOwnerSendInput, type HubLineProviderDelivery, type HubLineReminderInput, type HubLineReminderReceipt, type HubLineReplyCode, type HubLineReplyCodeInput, type HubLineScheduledSendOptions, type HubLineSendInput, type HubLineSendReceipt, HubLinesClient, HubManagedNumbersClient, HubManualRunInput, type HubNumberListQuery, type HubNumberOrder, type HubNumberOrderPage, type HubNumberQuote, type HubNumberReadiness, type HubNumberResolution, HubOAuthConnectionParameter, HubOAuthStartResponse, type HubOwnerAskSendInput, HubPermissionsClient, HubPolicy, HubPolicyDecision, HubPolicyDeleteRequest, HubPolicyDeleteResponse, HubPolicyListResponse, HubPolicyResponse, HubPolicyUpdateRequest, HubPrincipal, HubPrincipalKind, HubProvider, HubProviderAuthKind, HubProviderEvent, HubProvidersResponse, HubRevertWritesResponse, HubSdkError, HubStatusConnections, HubStatusResponse, HubSuccessEnvelope, type HubTokenListOptions, HubTokenMintResponse, HubTokenRevokeResponse, HubTokensClient, HubTokensListResponse, HubTool, type HubToolInvokeOptions, HubToolRisk, type HubToolSearchOptions, HubToolSource, HubToolSourcesResponse, HubToolsClient, HubToolsDescribeResponse, HubToolsSearchResponse, HubWhatsappEmbeddedSignupCompleteRequest, HubWhatsappEmbeddedSignupCompleteResponse, HubWhatsappEmbeddedSignupStartRequest, HubWhatsappEmbeddedSignupStartResponse, HubWorkflow, HubWorkflowAction, HubWorkflowActionResult, HubWorkflowAgentStep, HubWorkflowArtifact, HubWorkflowArtifactDownload, HubWorkflowArtifactRef, HubWorkflowArtifactsResponse, HubWorkflowCondition, HubWorkflowConditionOp, HubWorkflowConditionScalar, HubWorkflowConnectionRequirement, HubWorkflowDecision, HubWorkflowDecisionOnTimeout, HubWorkflowDecisionResolveResult, HubWorkflowDecisionResolvedVia, HubWorkflowDecisionStatus, HubWorkflowDistillationCandidate, HubWorkflowEdgeVerdicts, HubWorkflowEventFilter, HubWorkflowFailureCluster, HubWorkflowFleetEntry, HubWorkflowFleetInsights, HubWorkflowFleetWindow, HubWorkflowGraphEdge, HubWorkflowGraphJoinRule, HubWorkflowGraphNode, HubWorkflowGraphSpec, HubWorkflowHealth, HubWorkflowHookEndpoint, HubWorkflowKvDeleteResponse, HubWorkflowKvEntry, HubWorkflowKvEntryMeta, HubWorkflowKvListResponse, HubWorkflowNodeHealth, HubWorkflowOnErrorOutcome, HubWorkflowPendingDecision, HubWorkflowPendingDecisionsResponse, HubWorkflowProposal, HubWorkflowRevision, HubWorkflowRevisionMeta, HubWorkflowRevisionSource, HubWorkflowRevisionStatus, HubWorkflowRun, HubWorkflowRunCancelResult, HubWorkflowRunDetail, HubWorkflowRunEnqueued, HubWorkflowRunInputs, HubWorkflowRunRetried, HubWorkflowRunStatus, HubWorkflowRunStepsPage, HubWorkflowRunStreamEvent, HubWorkflowRunSummary, HubWorkflowRunsPage, HubWorkflowSchemaResponse, HubWorkflowTemplate, HubWorkflowTemplateCategory, HubWorkflowTemplateInstantiateResult, HubWorkflowTemplateParameter, HubWorkflowTrigger, HubWorkflowValidateResponse, HubWorkflowValidationError, HubWorkflowsClient, KnowledgeAttachment, KnowledgeAttachmentAuthorization, KnowledgeAuthorization, KnowledgeCapabilities, KnowledgeCapability, KnowledgeEmbeddingSpace, KnowledgeReference, KnowledgeSourceCreate, KnowledgeSourceInput, KnowledgeSourceSummary, type VerifyHubEventSignatureInput, approveKnowledgeSource, authenticateHubEventRequest, deriveHubEventCallbackSecret, isHubUnauthenticated, parseHubEventDelivery, redactHubValue, resolveHubAuth, resolveHubBaseUrl, verifyHubEventSignature, workflowConnectionRequirementKey };
267
+ export { type AuthenticateHubEventRequestInput, type DeriveHubEventCallbackSecretInput, HUB_API_KEY_ENV_VAR, HUB_CAPABILITY_TOKEN_ENV_VAR, HUB_URL_ENV_VAR, HubAgentIterationSpan, HubAgentRunDetail, HubAllowWritesResponse, type HubAllowanceDecision, type HubAllowanceGrant, type HubAllowancePlan, type HubAllowancePlanInput, type HubAllowanceRole, type HubAllowanceSubject, type HubAllowanceSyncInput, type HubAllowanceSyncReceipt, type HubAllowanceTier, type HubAllowanceUsage, HubAllowancesClient, HubApiKeyConnectRequest, HubApiKeyConnectResponse, HubApiKeyConnectionMetadata, type HubApp, HubAppBrokerClient, type HubAppBrokerExchange, type HubAppBrokerOptions, type HubAppBrokerToken, type HubAppComplianceClaim, type HubAppComplianceState, type HubAppCreateInput, type HubAppGrant, type HubAppGrantRevoked, HubApproval, HubApprovalCapabilityToken, HubApprovalDecisionResponse, HubApprovalListResponse, HubApprovalStatus, HubApprovalsClient, HubAppsClient, HubAuditClient, HubAuditEvent, HubAuditListRequest, HubAuditResponse, type HubAuthHeaders, HubCapabilityToken, HubChannel, HubChannelCreateResponse, HubChannelDeleteResponse, HubChannelsClient, HubChannelsResponse, HubClient, type HubClientFromEnvOptions, type HubClientOptions, HubConnection, HubConnectionDeleteResponse, HubConnectionHealthError, HubConnectionHealthInfo, HubConnectionHealthResponse, HubConnectionHealthStatus, type HubConnectionStartOptions, HubConnectionsClient, HubConnectionsResponse, HubEmailChannel, HubEmailChannelCreateRequest, type HubEnv, HubErrorBody, HubErrorCode, HubErrorEnvelope, HubEventCondition, HubEventConditionScalar, HubEventDelivery, HubEventDeliveryError, type HubEventRequestFailureCode, type HubEventRequestResult, type HubEventSignatureFailure, type HubEventSignatureResult, HubEventSubscription, HubEventSubscriptionCallback, HubEventSubscriptionCreateRequest, HubEventSubscriptionCreateResponse, HubEventSubscriptionDeleteResponse, HubEventSubscriptionFilter, HubEventSubscriptionSource, HubEventSubscriptionsClient, HubEventSubscriptionsResponse, HubExecResponse, HubGithubAppClient, HubGithubAppDisconnectResponse, HubGithubAppInstallation, HubGithubAppInstallationResponse, HubGithubAppIsRepoInstalledResponse, HubGithubAppListInstallationsResponse, HubGithubAppListReposResponse, HubGithubAppManagedInstallation, HubGithubAppMintInstallationTokenRequest, HubGithubAppMintInstallationTokenResponse, HubGithubAppSyncResponse, HubGithubAppSyncedInstallation, type HubInboundPhoneNumberScope, type HubInboundWebhookCreateOptions, type HubInboundWebhookCreateResponse, type HubInboundWebhookStatus, HubInboundWebhooksClient, HubKnowledgeClient, HubKnowledgeManagementClient, type HubKnowledgeQueryResult, type HubKnowledgeRetrievalResult, type HubLineApplicationDispatchCurrentInput, type HubLineCheckinOptions, type HubLineContext, type HubLineGrant, type HubLineGrantApplicationSelection, type HubLineGrantAttachInput, type HubLineGrantAttachment, type HubLineGrantBinding, type HubLineGrantLine, type HubLineGrantMemberApplication, type HubLineGrantMessage, type HubLineGrantSelectApplicationInput, type HubLineGrantThread, HubLineGrantsClient, type HubLineImage, type HubLineMember, type HubLineMemberApplication, type HubLineMemberApplicationInput, type HubLineOwnerSendInput, type HubLineProviderDelivery, type HubLineReminderInput, type HubLineReminderReceipt, type HubLineReplyCode, type HubLineReplyCodeInput, type HubLineScheduledSendOptions, type HubLineSendInput, type HubLineSendReceipt, HubLinesClient, HubManagedNumbersClient, HubManualRunInput, type HubNumberListQuery, type HubNumberOrder, type HubNumberOrderPage, type HubNumberQuote, type HubNumberReadiness, type HubNumberResolution, HubOAuthConnectionParameter, HubOAuthStartResponse, type HubOwnerAskSendInput, HubPermissionsClient, HubPolicy, HubPolicyDecision, HubPolicyDeleteRequest, HubPolicyDeleteResponse, HubPolicyListResponse, HubPolicyResponse, HubPolicyUpdateRequest, HubPrincipal, HubPrincipalKind, HubProvider, HubProviderAuthKind, HubProviderEvent, HubProvidersResponse, HubRevertWritesResponse, HubSdkError, HubStatusConnections, HubStatusResponse, HubSuccessEnvelope, type HubTokenListOptions, HubTokenMintResponse, HubTokenRevokeResponse, HubTokensClient, HubTokensListResponse, HubTool, type HubToolInvokeOptions, HubToolRisk, type HubToolSearchOptions, HubToolSource, HubToolSourcesResponse, HubToolsClient, HubToolsDescribeResponse, HubToolsSearchResponse, HubWhatsappEmbeddedSignupCompleteRequest, HubWhatsappEmbeddedSignupCompleteResponse, HubWhatsappEmbeddedSignupStartRequest, HubWhatsappEmbeddedSignupStartResponse, HubWorkflow, HubWorkflowAction, HubWorkflowActionResult, HubWorkflowAgentStep, HubWorkflowArtifact, HubWorkflowArtifactDownload, HubWorkflowArtifactRef, HubWorkflowArtifactsResponse, HubWorkflowCondition, HubWorkflowConditionOp, HubWorkflowConditionScalar, HubWorkflowConnectionRequirement, HubWorkflowDecision, HubWorkflowDecisionOnTimeout, HubWorkflowDecisionResolveResult, HubWorkflowDecisionResolvedVia, HubWorkflowDecisionStatus, HubWorkflowDistillationCandidate, HubWorkflowEdgeVerdicts, HubWorkflowEventFilter, HubWorkflowFailureCluster, HubWorkflowFleetEntry, HubWorkflowFleetInsights, HubWorkflowFleetWindow, HubWorkflowGraphEdge, HubWorkflowGraphJoinRule, HubWorkflowGraphNode, HubWorkflowGraphSpec, HubWorkflowHealth, HubWorkflowHookEndpoint, HubWorkflowKvDeleteResponse, HubWorkflowKvEntry, HubWorkflowKvEntryMeta, HubWorkflowKvListResponse, HubWorkflowNodeHealth, HubWorkflowOnErrorOutcome, HubWorkflowPendingDecision, HubWorkflowPendingDecisionsResponse, HubWorkflowProposal, HubWorkflowRevision, HubWorkflowRevisionMeta, HubWorkflowRevisionSource, HubWorkflowRevisionStatus, HubWorkflowRun, HubWorkflowRunCancelResult, HubWorkflowRunDetail, HubWorkflowRunEnqueued, HubWorkflowRunInputs, HubWorkflowRunRetried, HubWorkflowRunStatus, HubWorkflowRunStepsPage, HubWorkflowRunStreamEvent, HubWorkflowRunSummary, HubWorkflowRunsPage, HubWorkflowSchemaResponse, HubWorkflowTemplate, HubWorkflowTemplateCategory, HubWorkflowTemplateInstantiateResult, HubWorkflowTemplateParameter, HubWorkflowTrigger, HubWorkflowValidateResponse, HubWorkflowValidationError, HubWorkflowsClient, KnowledgeAttachment, KnowledgeAttachmentAuthorization, KnowledgeAuthorization, KnowledgeCapabilities, KnowledgeCapability, KnowledgeEmbeddingSpace, KnowledgeReference, KnowledgeSourceCreate, KnowledgeSourceInput, KnowledgeSourceSummary, type VerifyHubEventSignatureInput, authenticateHubEventRequest, deriveHubEventCallbackSecret, isHubUnauthenticated, parseHubEventDelivery, redactHubValue, resolveHubAuth, resolveHubBaseUrl, verifyHubEventSignature, workflowConnectionRequirementKey };
277
268
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/broker.ts","../src/event-delivery.ts","../src/knowledge-approval.ts","../src/line-grants.ts","../src/redaction.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/broker.ts","../src/event-delivery.ts","../src/line-grants.ts","../src/redaction.ts"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -336,28 +336,6 @@ function requestFailure(code, status, error, headers) {
336
336
  };
337
337
  }
338
338
  //#endregion
339
- //#region src/knowledge-approval.ts
340
- /** Called only after the owner reviews this exact pending effect and clicks
341
- * Approve. Re-read first: a stale tab cannot approve a substituted operation. */
342
- async function approveKnowledgeSource(input) {
343
- const { source, port, approvals } = input;
344
- if (source.status !== "awaiting-approval" || !source.approval || !source.refreshRequestId || source.approval.preview.sourceId !== source.id || source.approval.preview.requestId !== source.refreshRequestId) throw new Error("This source has no reviewable pending action. Reload knowledge.");
345
- const current = await port.get(source.id);
346
- if (current.id !== source.id || current.status !== "awaiting-approval" || current.refreshRequestId !== source.refreshRequestId || JSON.stringify(current.approval) !== JSON.stringify(source.approval)) throw new Error("The requested action changed. Reload knowledge and review it again.");
347
- let approvalToken;
348
- try {
349
- const decision = await approvals.approve(source.approval.id);
350
- if (decision.approval.id !== source.approval.id || decision.approval.actionPath !== source.approval.path || decision.approval.connectionId !== source.approval.preview.connectionId || decision.approval.providerId !== source.approval.preview.provider || decision.approval.status !== "consumed" || !decision.capabilityToken?.token) throw new Error("The approval did not return a matching one-time capability. Reload knowledge.");
351
- approvalToken = decision.capabilityToken.token;
352
- return await port.refresh(source.id, {
353
- requestId: source.refreshRequestId,
354
- approvalToken
355
- });
356
- } finally {
357
- approvalToken = void 0;
358
- }
359
- }
360
- //#endregion
361
339
  //#region src/line-grants.ts
362
340
  function path(binding, suffix = "") {
363
341
  if (!binding.workspaceId || !binding.workspaceAgentId) throw new Error("A workspace and agent are required for a line grant");
@@ -423,6 +401,6 @@ function workflowConnectionRequirementKey(ref) {
423
401
  return `${ref.kind}:${ref.provider}`;
424
402
  }
425
403
  //#endregion
426
- export { HUB_API_KEY_ENV_VAR, HUB_CAPABILITY_TOKEN_ENV_VAR, HUB_URL_ENV_VAR, HubAllowancesClient, HubAppBrokerClient, HubApprovalsClient, HubAppsClient, HubAuditClient, HubChannelsClient, HubClient, HubConnectionsClient, HubEventDeliveryError, HubEventSubscriptionsClient, HubGithubAppClient, HubInboundWebhooksClient, HubKnowledgeClient, HubKnowledgeManagementClient, HubLineGrantsClient, HubLinesClient, HubManagedNumbersClient, HubPermissionsClient, HubSdkError, HubTokensClient, HubToolsClient, HubWorkflowsClient, approveKnowledgeSource, authenticateHubEventRequest, deriveHubEventCallbackSecret, isHubUnauthenticated, parseHubEventDelivery, redactHubValue, resolveHubAuth, resolveHubBaseUrl, verifyHubEventSignature, workflowConnectionRequirementKey };
404
+ export { HUB_API_KEY_ENV_VAR, HUB_CAPABILITY_TOKEN_ENV_VAR, HUB_URL_ENV_VAR, HubAllowancesClient, HubAppBrokerClient, HubApprovalsClient, HubAppsClient, HubAuditClient, HubChannelsClient, HubClient, HubConnectionsClient, HubEventDeliveryError, HubEventSubscriptionsClient, HubGithubAppClient, HubInboundWebhooksClient, HubKnowledgeClient, HubKnowledgeManagementClient, HubLineGrantsClient, HubLinesClient, HubManagedNumbersClient, HubPermissionsClient, HubSdkError, HubTokensClient, HubToolsClient, HubWorkflowsClient, authenticateHubEventRequest, deriveHubEventCallbackSecret, isHubUnauthenticated, parseHubEventDelivery, redactHubValue, resolveHubAuth, resolveHubBaseUrl, verifyHubEventSignature, workflowConnectionRequirementKey };
427
405
 
428
406
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../src/broker.ts","../src/event-delivery.ts","../src/knowledge-approval.ts","../src/line-grants.ts","../src/workflow-definition-types.ts"],"sourcesContent":["import { HubClient, HubSdkError } from \"./client.js\";\n\nexport interface HubAppBrokerOptions {\n baseUrl: string;\n clientId: string;\n clientSecret: string;\n fetch?: typeof fetch;\n}\nexport interface HubAppBrokerToken {\n accessToken: string;\n expiresIn: number;\n scopes: string[];\n}\nexport interface HubAppBrokerExchange extends HubAppBrokerToken {\n grantId: string;\n connectionId: string;\n}\n/** Server-only client. App secrets never become a user's general API key.\n * Every invocation mints and consumes one short-lived, exact-grant token. */\nexport class HubAppBrokerClient {\n private readonly baseUrl: string;\n private readonly fetcher: typeof fetch;\n constructor(private readonly options: HubAppBrokerOptions) {\n this.baseUrl = options.baseUrl.replace(/\\/+$/, \"\");\n this.fetcher = options.fetch ?? fetch.bind(globalThis);\n }\n private async token(\n path: string,\n body: Record<string, unknown>,\n ): Promise<Record<string, unknown>> {\n const response = await this.fetcher(`${this.baseUrl}${path}`, {\n method: \"POST\",\n // Workers support manual redirects; the non-ok check below rejects every 3xx.\n redirect: \"manual\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n ...body,\n client_id: this.options.clientId,\n client_secret: this.options.clientSecret,\n }),\n });\n const result: unknown = await response.json().catch(() => null);\n if (\n !response.ok ||\n !result ||\n typeof result !== \"object\" ||\n Array.isArray(result)\n ) {\n throw new HubSdkError(\n {\n code: \"HUB_CONFIG_MISSING\",\n message: \"Application authorization is unavailable\",\n },\n { status: response.status },\n );\n }\n return result as Record<string, unknown>;\n }\n private readToken(body: Record<string, unknown>): HubAppBrokerToken {\n if (\n typeof body.access_token !== \"string\" ||\n !body.access_token.startsWith(\"sk-tan-broker-\") ||\n body.token_type !== \"Bearer\" ||\n typeof body.expires_in !== \"number\" ||\n !Number.isSafeInteger(body.expires_in) ||\n body.expires_in <= 0 ||\n typeof body.scope !== \"string\"\n )\n throw new HubSdkError({\n code: \"HUB_CONFIG_MISSING\",\n message: \"Invalid application authorization response\",\n });\n return {\n accessToken: body.access_token,\n expiresIn: body.expires_in,\n scopes: body.scope.split(\" \").filter(Boolean),\n };\n }\n async exchange(input: {\n code: string;\n redirectUri: string;\n connectionId?: string;\n }): Promise<HubAppBrokerExchange> {\n const body = await this.token(\"/v1/apps/oauth/token\", {\n grant_type: \"authorization_code\",\n code: input.code,\n redirect_uri: input.redirectUri,\n ...(input.connectionId === undefined\n ? {}\n : { connection_id: input.connectionId }),\n ttl_seconds: 60,\n });\n const token = this.readToken(body);\n if (\n typeof body.grant_id !== \"string\" ||\n !body.grant_id ||\n typeof body.connection_id !== \"string\" ||\n !body.connection_id.trim() ||\n (input.connectionId !== undefined &&\n body.connection_id !== input.connectionId)\n )\n throw new HubSdkError({\n code: \"HUB_CONFIG_MISSING\",\n message: \"Application connection did not match consent\",\n });\n return {\n ...token,\n grantId: body.grant_id,\n connectionId: body.connection_id,\n };\n }\n async mint(grantId: string): Promise<HubAppBrokerToken> {\n if (!/^[A-Za-z0-9_-]{1,256}$/.test(grantId))\n throw new Error(\"Invalid application grant\");\n return this.readToken(\n await this.token(\n `/v1/apps/grants/${encodeURIComponent(grantId)}/mint-broker-token`,\n { grant_id: grantId, ttl_seconds: 60 },\n ),\n );\n }\n async invoke<T = unknown>(\n grantId: string,\n connectionId: string,\n actionPath: string,\n input: Record<string, unknown>,\n ) {\n const token = await this.mint(grantId);\n if (!token.scopes.includes(actionPath))\n throw new HubSdkError({\n code: \"HUB_POLICY_DENIED\",\n message: \"This action was not granted to the application\",\n });\n return new HubClient({\n baseUrl: this.baseUrl,\n apiKey: token.accessToken,\n fetch: this.fetcher,\n }).tools.invoke<T>(actionPath, input, { connectionId });\n }\n}\n","import type { HubEventDelivery } from \"./types.js\";\n\nconst DEFAULT_TOLERANCE_SECONDS = 300;\nconst MAX_TOLERANCE_SECONDS = 3_600;\nconst MAX_SIGNATURE_HEADER_LENGTH = 1_024;\nconst MAX_SIGNATURES = 5;\nconst SHA256_HEX_LENGTH = 64;\nconst MIN_CALLBACK_SECRET_BYTES = 32;\nconst MAX_SECRET_SCOPE_COMPONENT_BYTES = 512;\nconst DEFAULT_MAX_CALLBACK_BODY_BYTES = 5 * 1024 * 1024 + 64 * 1024;\nconst MAX_CALLBACK_BODY_BYTES = 10 * 1024 * 1024;\n\nexport type HubEventSignatureFailure =\n | \"missing\"\n | \"malformed\"\n | \"stale\"\n | \"mismatch\";\n\nexport type HubEventSignatureResult =\n | { valid: true; timestamp: number }\n | { valid: false; reason: HubEventSignatureFailure };\n\nexport interface VerifyHubEventSignatureInput {\n body: string;\n signature: string | null | undefined;\n secret: string;\n toleranceSeconds?: number;\n now?: number | Date;\n}\n\nexport interface DeriveHubEventCallbackSecretInput {\n /** App-level secret stored only in the product's server environment. */\n rootSecret: string;\n /** Stable product slug, such as `relationships`. */\n productId: string;\n /** Stable Tangle owner id; user and team ids are both valid. */\n ownerId: string;\n /** Stable product-local binding id used in the callback route. */\n bindingId: string;\n}\n\nexport type HubEventRequestFailureCode =\n | \"METHOD_NOT_ALLOWED\"\n | \"UNEXPECTED_EVENT\"\n | \"UNSUPPORTED_MEDIA_TYPE\"\n | \"PAYLOAD_TOO_LARGE\"\n | \"INVALID_SIGNATURE\"\n | \"INVALID_DELIVERY\"\n | \"DELIVERY_ID_MISMATCH\";\n\nexport type HubEventRequestResult =\n | { ok: true; delivery: HubEventDelivery }\n | {\n ok: false;\n code: HubEventRequestFailureCode;\n response: Response;\n };\n\nexport interface AuthenticateHubEventRequestInput {\n request: Request;\n /** The per-binding secret supplied when the subscription was created. */\n secret: string;\n /** Defaults to 5 MiB plus envelope overhead; hard-capped at 10 MiB. */\n maxBodyBytes?: number;\n toleranceSeconds?: number;\n now?: number | Date;\n}\n\nexport class HubEventDeliveryError extends Error {\n readonly code:\n | \"INVALID_JSON\"\n | \"INVALID_PAYLOAD\"\n | \"CRYPTO_UNAVAILABLE\"\n | \"INVALID_TOLERANCE\"\n | \"INVALID_CALLBACK_SECRET\"\n | \"INVALID_SECRET_SCOPE\"\n | \"INVALID_BODY_LIMIT\";\n\n constructor(code: HubEventDeliveryError[\"code\"], message: string) {\n super(message);\n this.name = \"HubEventDeliveryError\";\n this.code = code;\n }\n}\n\n/**\n * Derive one callback secret per product binding from a single server-held root\n * secret. Products persist only the binding id; the derived secret can be\n * reproduced for callback authentication without another secret table.\n */\nexport async function deriveHubEventCallbackSecret(\n input: DeriveHubEventCallbackSecretInput,\n): Promise<string> {\n const encoder = new TextEncoder();\n if (encoder.encode(input.rootSecret).byteLength < MIN_CALLBACK_SECRET_BYTES) {\n throw new HubEventDeliveryError(\n \"INVALID_CALLBACK_SECRET\",\n `Hub event root secret must contain at least ${MIN_CALLBACK_SECRET_BYTES} UTF-8 bytes`,\n );\n }\n for (const [name, value] of [\n [\"productId\", input.productId],\n [\"ownerId\", input.ownerId],\n [\"bindingId\", input.bindingId],\n ] as const) {\n const bytes = encoder.encode(value).byteLength;\n if (bytes === 0 || bytes > MAX_SECRET_SCOPE_COMPONENT_BYTES) {\n throw new HubEventDeliveryError(\n \"INVALID_SECRET_SCOPE\",\n `${name} must contain 1-${MAX_SECRET_SCOPE_COMPONENT_BYTES} UTF-8 bytes`,\n );\n }\n }\n const subtle = requireSubtleCrypto();\n const key = await subtle.importKey(\n \"raw\",\n encoder.encode(input.rootSecret),\n { name: \"HMAC\", hash: \"SHA-256\" },\n false,\n [\"sign\"],\n );\n const scope = JSON.stringify([\n \"tangle-hub-event-callback\",\n 1,\n input.productId,\n input.ownerId,\n input.bindingId,\n ]);\n const signature = new Uint8Array(\n await subtle.sign(\"HMAC\", key, encoder.encode(scope)),\n );\n return bytesToBase64Url(signature);\n}\n\n/**\n * Authenticate and parse the platform's callback as one operation. The exact\n * raw body is read once with a size limit before its signature is checked.\n *\n * A successful callback can be retried. Use `delivery.runId` as the durable\n * idempotency key before starting product work.\n */\nexport async function authenticateHubEventRequest(\n input: AuthenticateHubEventRequestInput,\n): Promise<HubEventRequestResult> {\n if (input.request.method !== \"POST\") {\n return requestFailure(\"METHOD_NOT_ALLOWED\", 405, \"method_not_allowed\", {\n Allow: \"POST\",\n });\n }\n if (input.request.headers.get(\"x-tangle-event\") !== \"hub.event\") {\n return requestFailure(\"UNEXPECTED_EVENT\", 400, \"invalid_hub_event\");\n }\n const contentType = input.request.headers.get(\"content-type\") ?? \"\";\n if (!/^application\\/json(?:\\s*;|$)/i.test(contentType)) {\n return requestFailure(\n \"UNSUPPORTED_MEDIA_TYPE\",\n 415,\n \"unsupported_media_type\",\n );\n }\n const maxBodyBytes = input.maxBodyBytes ?? DEFAULT_MAX_CALLBACK_BODY_BYTES;\n if (\n !Number.isSafeInteger(maxBodyBytes) ||\n maxBodyBytes < 1 ||\n maxBodyBytes > MAX_CALLBACK_BODY_BYTES\n ) {\n throw new HubEventDeliveryError(\n \"INVALID_BODY_LIMIT\",\n `Hub event body limit must be an integer from 1 to ${MAX_CALLBACK_BODY_BYTES} bytes`,\n );\n }\n if (\n new TextEncoder().encode(input.secret).byteLength <\n MIN_CALLBACK_SECRET_BYTES\n ) {\n throw new HubEventDeliveryError(\n \"INVALID_CALLBACK_SECRET\",\n `Hub event callback secret must contain at least ${MIN_CALLBACK_SECRET_BYTES} UTF-8 bytes`,\n );\n }\n const declaredLength = input.request.headers.get(\"content-length\");\n if (\n declaredLength !== null &&\n /^\\d+$/.test(declaredLength) &&\n Number(declaredLength) > maxBodyBytes\n ) {\n return requestFailure(\"PAYLOAD_TOO_LARGE\", 413, \"payload_too_large\");\n }\n const body = await readRequestBody(input.request, maxBodyBytes);\n if (body === null) {\n return requestFailure(\"PAYLOAD_TOO_LARGE\", 413, \"payload_too_large\");\n }\n const signature = await verifyHubEventSignature({\n body,\n signature: input.request.headers.get(\"x-tangle-signature\"),\n secret: input.secret,\n ...(input.toleranceSeconds !== undefined\n ? { toleranceSeconds: input.toleranceSeconds }\n : {}),\n ...(input.now !== undefined ? { now: input.now } : {}),\n });\n if (!signature.valid) {\n return requestFailure(\"INVALID_SIGNATURE\", 401, \"invalid_signature\");\n }\n let delivery: HubEventDelivery;\n try {\n delivery = parseHubEventDelivery(body);\n } catch (error) {\n if (error instanceof HubEventDeliveryError) {\n return requestFailure(\"INVALID_DELIVERY\", 400, \"invalid_delivery\");\n }\n throw error;\n }\n if (input.request.headers.get(\"x-tangle-delivery-id\") !== delivery.runId) {\n return requestFailure(\"DELIVERY_ID_MISMATCH\", 400, \"invalid_delivery\");\n }\n return { ok: true, delivery };\n}\n\n/**\n * Authenticate a Hub event callback against its exact raw request body.\n * The timestamp window rejects captured-request replay, and byte-wise\n * comparison avoids secret-dependent string comparison behavior.\n */\nexport async function verifyHubEventSignature(\n input: VerifyHubEventSignatureInput,\n): Promise<HubEventSignatureResult> {\n if (!input.signature) return { valid: false, reason: \"missing\" };\n if (input.signature.length > MAX_SIGNATURE_HEADER_LENGTH) {\n return { valid: false, reason: \"malformed\" };\n }\n const parsed = parseSignatureHeader(input.signature);\n if (!parsed) return { valid: false, reason: \"malformed\" };\n\n const tolerance = input.toleranceSeconds ?? DEFAULT_TOLERANCE_SECONDS;\n if (\n !Number.isFinite(tolerance) ||\n !Number.isInteger(tolerance) ||\n tolerance < 0 ||\n tolerance > MAX_TOLERANCE_SECONDS\n ) {\n throw new HubEventDeliveryError(\n \"INVALID_TOLERANCE\",\n `Signature tolerance must be an integer from 0 to ${MAX_TOLERANCE_SECONDS} seconds`,\n );\n }\n const nowMs =\n input.now instanceof Date\n ? input.now.getTime()\n : typeof input.now === \"number\"\n ? input.now\n : Date.now();\n if (\n !Number.isFinite(nowMs) ||\n Math.abs(Math.floor(nowMs / 1_000) - parsed.timestamp) > tolerance\n ) {\n return { valid: false, reason: \"stale\" };\n }\n\n const subtle = requireSubtleCrypto();\n const encoder = new TextEncoder();\n const key = await subtle.importKey(\n \"raw\",\n encoder.encode(input.secret),\n { name: \"HMAC\", hash: \"SHA-256\" },\n false,\n [\"sign\"],\n );\n const expected = new Uint8Array(\n await subtle.sign(\n \"HMAC\",\n key,\n encoder.encode(`${parsed.timestamp}.${input.body}`),\n ),\n );\n let matched = 0;\n for (const signature of parsed.signatures) {\n matched |= constantTimeEqual(expected, signature);\n }\n return matched === 1\n ? { valid: true, timestamp: parsed.timestamp }\n : { valid: false, reason: \"mismatch\" };\n}\n\nexport function parseHubEventDelivery(\n input: string | unknown,\n): HubEventDelivery {\n let value: unknown = input;\n if (typeof input === \"string\") {\n try {\n value = JSON.parse(input);\n } catch {\n throw new HubEventDeliveryError(\n \"INVALID_JSON\",\n \"Hub event callback body is not valid JSON\",\n );\n }\n }\n if (!isRecord(value)) return invalidDelivery();\n const source = value.source;\n const providerEvent = value.providerEvent;\n if (\n !nonEmptyString(value.subscriptionId) ||\n !nonEmptyString(value.workflowId) ||\n !nonEmptyString(value.runId) ||\n !isRecord(source) ||\n (source.kind !== \"channel\" && source.kind !== \"connection\") ||\n !nonEmptyString(source.id) ||\n !nonEmptyString(source.provider) ||\n !nonEmptyString(source.event) ||\n !isRecord(providerEvent) ||\n !nonEmptyString(providerEvent.provider) ||\n !nonEmptyString(providerEvent.connectionId) ||\n !nonEmptyString(providerEvent.type) ||\n providerEvent.provider !== source.provider ||\n providerEvent.type !== source.event ||\n !Object.hasOwn(providerEvent, \"payload\") ||\n !optionalString(providerEvent.action) ||\n !optionalString(providerEvent.repo) ||\n !optionalString(providerEvent.deliveryId) ||\n !nonEmptyString(value.firedAt) ||\n !Number.isFinite(Date.parse(value.firedAt))\n ) {\n return invalidDelivery();\n }\n return {\n subscriptionId: value.subscriptionId,\n workflowId: value.workflowId,\n runId: value.runId,\n source: {\n kind: source.kind,\n id: source.id,\n provider: source.provider,\n event: source.event,\n },\n providerEvent: {\n provider: providerEvent.provider,\n connectionId: providerEvent.connectionId,\n type: providerEvent.type,\n ...(typeof providerEvent.action === \"string\"\n ? { action: providerEvent.action }\n : {}),\n ...(typeof providerEvent.repo === \"string\"\n ? { repo: providerEvent.repo }\n : {}),\n ...(typeof providerEvent.deliveryId === \"string\"\n ? { deliveryId: providerEvent.deliveryId }\n : {}),\n payload: providerEvent.payload,\n },\n firedAt: value.firedAt,\n };\n}\n\nfunction parseSignatureHeader(\n header: string,\n): { timestamp: number; signatures: Uint8Array[] } | null {\n let timestamp: number | undefined;\n const signatures: Uint8Array[] = [];\n for (const segment of header.split(\",\")) {\n const separator = segment.indexOf(\"=\");\n if (separator <= 0) return null;\n const key = segment.slice(0, separator).trim();\n const value = segment.slice(separator + 1).trim();\n if (key === \"t\") {\n if (timestamp !== undefined || !/^\\d+$/.test(value)) return null;\n const candidate = Number(value);\n if (!Number.isSafeInteger(candidate) || candidate <= 0) return null;\n timestamp = candidate;\n } else if (key === \"v1\") {\n if (\n signatures.length >= MAX_SIGNATURES ||\n value.length !== SHA256_HEX_LENGTH ||\n !/^[0-9a-f]+$/i.test(value)\n ) {\n return null;\n }\n signatures.push(hexToBytes(value));\n }\n }\n return timestamp !== undefined && signatures.length > 0\n ? { timestamp, signatures }\n : null;\n}\n\nfunction hexToBytes(hex: string): Uint8Array {\n const bytes = new Uint8Array(hex.length / 2);\n for (let index = 0; index < bytes.length; index += 1) {\n bytes[index] = Number.parseInt(hex.slice(index * 2, index * 2 + 2), 16);\n }\n return bytes;\n}\n\nfunction constantTimeEqual(expected: Uint8Array, actual: Uint8Array): number {\n let difference = expected.length ^ actual.length;\n const length = Math.max(expected.length, actual.length);\n for (let index = 0; index < length; index += 1) {\n difference |=\n (expected[index % expected.length] ?? 0) ^\n (actual[index % actual.length] ?? 0);\n }\n return difference === 0 ? 1 : 0;\n}\n\nfunction nonEmptyString(value: unknown): value is string {\n return typeof value === \"string\" && value.length > 0;\n}\n\nfunction optionalString(value: unknown): boolean {\n return value === undefined || nonEmptyString(value);\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\nfunction invalidDelivery(): never {\n throw new HubEventDeliveryError(\n \"INVALID_PAYLOAD\",\n \"Hub event callback body does not match the delivery contract\",\n );\n}\n\nfunction requireSubtleCrypto(): SubtleCrypto {\n const subtle = globalThis.crypto?.subtle;\n if (!subtle) {\n throw new HubEventDeliveryError(\n \"CRYPTO_UNAVAILABLE\",\n \"Web Crypto is required for Hub event callback authentication\",\n );\n }\n return subtle;\n}\n\nfunction bytesToBase64Url(bytes: Uint8Array): string {\n let binary = \"\";\n for (const byte of bytes) binary += String.fromCharCode(byte);\n return btoa(binary)\n .replace(/\\+/g, \"-\")\n .replace(/\\//g, \"_\")\n .replace(/=+$/g, \"\");\n}\n\nasync function readRequestBody(\n request: Request,\n maxBytes: number,\n): Promise<string | null> {\n const reader = request.body?.getReader();\n if (!reader) return \"\";\n const chunks: Uint8Array[] = [];\n let total = 0;\n try {\n while (true) {\n const next = await reader.read();\n if (next.done) break;\n total += next.value.byteLength;\n if (total > maxBytes) return null;\n chunks.push(next.value);\n }\n } finally {\n await reader.cancel().catch(() => {});\n }\n const body = new Uint8Array(total);\n let offset = 0;\n for (const chunk of chunks) {\n body.set(chunk, offset);\n offset += chunk.byteLength;\n }\n return new TextDecoder().decode(body);\n}\n\nfunction requestFailure(\n code: HubEventRequestFailureCode,\n status: number,\n error: string,\n headers?: HeadersInit,\n): Extract<HubEventRequestResult, { ok: false }> {\n return {\n ok: false,\n code,\n response: Response.json(\n { error },\n {\n status,\n headers: {\n \"cache-control\": \"no-store\",\n ...(headers ? Object.fromEntries(new Headers(headers)) : {}),\n },\n },\n ),\n };\n}\n","import type {\n HubKnowledgeManagementClient,\n KnowledgeSourceSummary,\n} from \"./knowledge-management.js\";\n\n/** Called only after the owner reviews this exact pending effect and clicks\n * Approve. Re-read first: a stale tab cannot approve a substituted operation. */\nexport async function approveKnowledgeSource(input: {\n port: Pick<HubKnowledgeManagementClient, \"get\" | \"refresh\">;\n approvals: Pick<import(\"./client.js\").HubApprovalsClient, \"approve\">;\n source: KnowledgeSourceSummary;\n}): Promise<KnowledgeSourceSummary> {\n const { source, port, approvals } = input;\n if (\n source.status !== \"awaiting-approval\" ||\n !source.approval ||\n !source.refreshRequestId ||\n source.approval.preview.sourceId !== source.id ||\n source.approval.preview.requestId !== source.refreshRequestId\n ) {\n throw new Error(\n \"This source has no reviewable pending action. Reload knowledge.\",\n );\n }\n const current = await port.get(source.id);\n if (\n current.id !== source.id ||\n current.status !== \"awaiting-approval\" ||\n current.refreshRequestId !== source.refreshRequestId ||\n JSON.stringify(current.approval) !== JSON.stringify(source.approval)\n ) {\n throw new Error(\n \"The requested action changed. Reload knowledge and review it again.\",\n );\n }\n let approvalToken: string | undefined;\n try {\n const decision = await approvals.approve(source.approval.id);\n if (\n decision.approval.id !== source.approval.id ||\n decision.approval.actionPath !== source.approval.path ||\n decision.approval.connectionId !== source.approval.preview.connectionId ||\n decision.approval.providerId !== source.approval.preview.provider ||\n // Hub consumes the approval when it issues the one-time capability.\n decision.approval.status !== \"consumed\" ||\n !decision.capabilityToken?.token\n ) {\n throw new Error(\n \"The approval did not return a matching one-time capability. Reload knowledge.\",\n );\n }\n approvalToken = decision.capabilityToken.token;\n return await port.refresh(source.id, {\n requestId: source.refreshRequestId,\n approvalToken,\n });\n } finally {\n // Never put capability tokens in component state, storage, URLs, or logs.\n approvalToken = undefined;\n }\n}\n","import { HubTransport } from \"./client.js\";\nimport { jsonInit } from \"./json-init.js\";\nimport type { HubLineOwnerSendInput, HubLineSendReceipt } from \"./lines.js\";\n\nexport type HubOwnerAskSendInput = Pick<\n HubLineOwnerSendInput,\n \"text\" | \"image\" | \"reply\" | \"idempotencyKey\"\n>;\n\nexport interface HubLineGrantBinding {\n workspaceId: string;\n workspaceAgentId: string;\n}\n\nexport interface HubLineGrant {\n id: string;\n /** Canonical Hub identity that consented this grant; distinct from the app-local owner. */\n ownerUserId?: string;\n purpose?: \"agent\" | \"owner_asks\";\n lineId: string;\n connectionId: string;\n workspaceId: string;\n workspaceAgentId: string;\n agentProfileVersion: string;\n backendSha256: string;\n attachmentId: string | null;\n intakeMode: \"guests\" | \"owner_only\";\n /** \"application\" grants select the app's callback for the owner member instead of attaching. */\n execution: \"backend\" | \"application\" | \"none\";\n applicationOrigin: string | null;\n priorAttachmentId: string | null;\n priorAttachmentActive: boolean;\n monthlyBudgetUsd: number;\n monthlySpentUsd: number;\n}\n\nexport interface HubLineGrantLine {\n id: string;\n connectionId: string;\n transport: \"sms\" | \"imessage\" | \"whatsapp\";\n status: string;\n address: string | null;\n attachment: { id: string; sandboxId: string; status: string } | null;\n}\n\nexport interface HubLineGrantAttachInput {\n workspaceAgentId: string;\n agentProfileVersion: string;\n renewalCode?: string;\n respond: { kind: \"agent\"; backend: Record<string, unknown> };\n}\n\nexport interface HubLineGrantAttachment {\n id: string;\n sandboxId: string;\n status: string;\n members?: Array<{ id: string; role: string }>;\n}\n\nexport interface HubLineGrantThread {\n id: string;\n lineId: string;\n attachmentId: string;\n}\n\nexport interface HubLineGrantMessage {\n id: string;\n threadId: string;\n direction: string;\n text: string | null;\n}\n\n/** The consented owner member on the owner's current attachment. */\nexport interface HubLineGrantMemberApplication {\n lineId: string;\n attachmentId: string;\n memberId: string;\n subjectId: string;\n /** Pass back unchanged as `expectedMemberRevision`. */\n memberRevision: string;\n /** False until the owner has texted the line and Hub recorded consent. */\n eligible: boolean;\n /** Hub-derived; every callback for this grant carries it. */\n binding: string;\n selection: {\n id: string;\n /** True when this grant's callback is the selected application. */\n own: boolean;\n /**\n * Hub's name for the app that answers the owner's texts, shown to the\n * owner in every app they consented on this line: a registered app's\n * name, or \"Another app\" when Hub has none. Absent before Platform named\n * selection holders.\n */\n app?: { name: string };\n /** When the current app started answering. */\n selectedAt?: string;\n /** This app's own callback; never returned for another app. */\n url?: string;\n createdAt?: string;\n } | null;\n}\n\nexport interface HubLineGrantSelectApplicationInput {\n /** The current selection exactly as read. */\n expectedSelectionId: string | null;\n /**\n * Set only when the owner chose to move their texts here from the app shown\n * in `selection.app`: that selection's id, also passed as\n * `expectedSelectionId`. Without it Hub never replaces another app.\n */\n replaceSelectionId?: string;\n expectedMemberRevision: string;\n /** HTTPS callback on the owner-approved application origin. */\n url: string;\n /** Bearer Hub sends to the callback; 32-512 printable ASCII characters. */\n secret: string;\n}\n\nexport interface HubLineGrantApplicationSelection {\n id: string;\n lineId: string;\n attachmentId: string;\n memberId: string;\n subjectId: string;\n status: string;\n application: { url: string; binding: string };\n createdAt: string;\n revokedAt: string | null;\n}\n\nfunction path(binding: HubLineGrantBinding, suffix = \"\"): string {\n if (!binding.workspaceId || !binding.workspaceAgentId)\n throw new Error(\"A workspace and agent are required for a line grant\");\n const query = new URLSearchParams({\n workspaceId: binding.workspaceId,\n workspaceAgentId: binding.workspaceAgentId,\n });\n return `/v1/hub/line-grants/current${suffix}?${query}`;\n}\n\n/** Every call uses HubTransport's authHeaders, so one-use app broker tokens can be minted per request. */\nexport class HubLineGrantsClient extends HubTransport {\n current(binding: HubLineGrantBinding): Promise<HubLineGrant> {\n return this.request(path(binding), { method: \"GET\" });\n }\n\n async line(binding: HubLineGrantBinding): Promise<HubLineGrantLine> {\n return (\n await this.request<{ line: HubLineGrantLine }>(path(binding, \"/line\"), {\n method: \"GET\",\n })\n ).line;\n }\n\n async attach(\n binding: HubLineGrantBinding,\n input: HubLineGrantAttachInput,\n ): Promise<HubLineGrantAttachment> {\n return (\n await this.request<{ attachment: HubLineGrantAttachment }>(\n path(binding, \"/attachment\"),\n jsonInit(\"PUT\", input),\n )\n ).attachment;\n }\n\n detach(binding: HubLineGrantBinding): Promise<{ detached: boolean }> {\n return this.request(path(binding, \"/attachment\"), { method: \"DELETE\" });\n }\n\n async threads(binding: HubLineGrantBinding): Promise<HubLineGrantThread[]> {\n return (\n await this.request<{ threads: HubLineGrantThread[] }>(\n path(binding, \"/threads\"),\n { method: \"GET\" },\n )\n ).threads;\n }\n\n async messages(\n binding: HubLineGrantBinding,\n threadId: string,\n ): Promise<HubLineGrantMessage[]> {\n if (!threadId || threadId.length > 256)\n throw new Error(\"A bounded line thread id is required\");\n return (\n await this.request<{ messages: HubLineGrantMessage[] }>(\n path(binding, `/threads/${encodeURIComponent(threadId)}/messages`),\n { method: \"GET\" },\n )\n ).messages;\n }\n\n memberApplication(\n binding: HubLineGrantBinding,\n ): Promise<HubLineGrantMemberApplication> {\n return this.request(path(binding, \"/member-application\"), {\n method: \"GET\",\n });\n }\n\n /**\n * Route the owner's texts to this app's callback; the incumbent attachment\n * stays. `replaceSelectionId` moves them from another app on the owner's\n * explicit choice.\n */\n async selectApplication(\n binding: HubLineGrantBinding,\n input: HubLineGrantSelectApplicationInput,\n ): Promise<HubLineGrantApplicationSelection> {\n return (\n await this.request<{ selection: HubLineGrantApplicationSelection }>(\n path(binding, \"/member-application\"),\n jsonInit(\"PUT\", input),\n )\n ).selection;\n }\n\n /** Return the owner's texts to the incumbent attachment. */\n async clearApplication(\n binding: HubLineGrantBinding,\n input: { expectedSelectionId: string; expectedMemberRevision: string },\n ): Promise<void> {\n await this.request(\n path(binding, \"/member-application\"),\n jsonInit(\"DELETE\", input),\n );\n }\n\n /** Ask only the verified owner member named by this owner_asks grant. */\n send(\n binding: HubLineGrantBinding,\n input: HubOwnerAskSendInput,\n ): Promise<HubLineSendReceipt> {\n return this.request(path(binding, \"/send\"), jsonInit(\"POST\", input));\n }\n\n /** Only a send created by this same grant is visible. */\n outbox(\n binding: HubLineGrantBinding,\n messageId: string,\n ): Promise<HubLineSendReceipt> {\n if (!/^lmsg_[A-Za-z0-9_-]+$/.test(messageId))\n throw new Error(\"A line message id is required\");\n return this.request(\n path(binding, `/outbox/${encodeURIComponent(messageId)}`),\n { method: \"GET\" },\n );\n }\n\n revoke(\n binding: HubLineGrantBinding,\n expectedGrantId?: string,\n ): Promise<{ revoked: boolean }> {\n const target = path(binding);\n return this.request(\n expectedGrantId === undefined\n ? target\n : `${target}&expectedGrantId=${encodeURIComponent(expectedGrantId)}`,\n { method: \"DELETE\" },\n );\n }\n}\n","import type { HubWorkflowGraphSpec } from \"./workflow-graph-types.js\";\nimport type { HubWorkflowRunSummary } from \"./workflow-run-types.js\";\n\nexport type {\n HubWorkflowCondition,\n HubWorkflowConditionOp,\n HubWorkflowConditionScalar,\n HubWorkflowGraphEdge,\n HubWorkflowGraphJoinRule,\n HubWorkflowGraphNode,\n HubWorkflowGraphSpec,\n} from \"./workflow-graph-types.js\";\n\n// ---------- Workflows ----------\n//\n// The workflow resource on the platform (`/v1/workflows`). YAML is the\n// durable representation; the platform compiles it to the engine's run model.\n// Reachable from inside a sandbox via the same client (TANGLE_API_KEY auth).\n\nexport interface HubWorkflowAction {\n kind: string;\n config: Record<string, unknown>;\n}\n\n/** Inbound-event matcher for a `provider_event` trigger. */\nexport interface HubWorkflowEventFilter {\n event: string;\n action?: string;\n repo?: string;\n}\n\nexport interface HubWorkflowTrigger {\n id: string;\n kind: \"provider_event\" | \"schedule\" | \"webhook\";\n enabled: boolean;\n provider: string | null;\n connectionId: string | null;\n eventFilter: HubWorkflowEventFilter | null;\n cron: string | null;\n timezone: string | null;\n nextFireAt: string | null;\n lastFiredAt: string | null;\n /** Schedule only: the ISO-8601 instant it stops firing; null when unbounded. */\n until: string | null;\n}\n\nexport interface HubWorkflowValidationError {\n path: string;\n message: string;\n /** Machine-readable reason where one is defined, e.g. `schedule_outlives_grant`. */\n code?: string;\n}\n\nexport interface HubWorkflow {\n id: string;\n name: string;\n description: string | null;\n enabled: boolean;\n /** Compiled engine actions (connection refs resolved to ids). */\n actions: HubWorkflowAction[];\n /** The durable YAML this workflow compiled from. */\n definitionYaml: string | null;\n validationErrors: HubWorkflowValidationError[];\n /** Current head revision; null on pre-versioning rows until their next\n * update (they have no revision history to point at yet). */\n headRev?: number | null;\n /** Present on get/create/update detail responses; omitted on list. */\n triggers?: HubWorkflowTrigger[];\n /** Present on the detail response: the trigger fields a manual run must supply,\n * derived from the definition's `${trigger.*}` references (empty when none). */\n manualRunInputs?: HubManualRunInput[];\n /** Present on the get-detail response: the compiled graph topology (null\n * when the definition has no graph topology, or is chain-equivalent —\n * the legacy linear semantics). Omitted on the list projection. */\n graph?: HubWorkflowGraphSpec | null;\n /** Create response only, when the definition has a webhook trigger: the\n * hook delivery URL, plus the plaintext bearer token exactly once at mint\n * (absent when an active token already exists — rotate to re-reveal). */\n hook?: HubWorkflowHookEndpoint;\n /** Present on the list response (latest run, or null if never run); omitted on detail. */\n lastRun?: HubWorkflowRunSummary | null;\n createdAt: string;\n updatedAt: string;\n}\n\n/** A trigger field a manual \"Run now\" must supply (derived from the\n * definition's `${trigger.*}` references). `required` is false only when every\n * read is wrapped in a `default(...)`. */\nexport interface HubManualRunInput {\n path: string;\n required: boolean;\n}\n\nexport type HubWorkflowValidateResponse =\n | { valid: true; name: string; actionCount: number; triggerCount: number }\n | { valid: false; errors: HubWorkflowValidationError[] };\n\n/** JSON Schema for the YAML workflow definition. */\nexport type HubWorkflowSchemaResponse = Record<string, unknown>;\n\n// ---------- Workflow definition revisions ----------\n//\n// The append-only history of a workflow's YAML (`GET :id/revisions`,\n// `POST :id/rollback`). Every create/update/rollback appends one rev; rollback\n// restores a prior rev's YAML as a NEW head — history is never rewritten.\n// `GET :id/revisions` lists APPLIED revs only (the history); proposed and\n// rejected revs live on the proposals surface below.\n\nexport type HubWorkflowRevisionSource = \"user\" | \"copilot\" | \"intelligence\";\n\n/** Lifecycle state of a revision. The head rev only ever points at an\n * `applied` revision; `proposed` is a service-token-authored suggestion\n * awaiting an owner decision; `rejected` is a declined proposal (kept for\n * audit). */\nexport type HubWorkflowRevisionStatus = \"applied\" | \"proposed\" | \"rejected\";\n\n/** Revision list projection — attribution + note + status, WITHOUT the YAML body. */\nexport interface HubWorkflowRevisionMeta {\n rev: number;\n createdAt: string;\n createdBy: string;\n source: HubWorkflowRevisionSource;\n note: string | null;\n status: HubWorkflowRevisionStatus;\n}\n\n/** One revision WITH its YAML (and the actions compiled alongside it). */\nexport interface HubWorkflowRevision extends HubWorkflowRevisionMeta {\n yaml: string;\n actions: HubWorkflowAction[];\n}\n\n/** A proposal (proposed or rejected revision) WITH its evidence — what the\n * proposer derived the suggestion from (e.g. health stats), plus\n * `rejectionReason` once declined. */\nexport interface HubWorkflowProposal extends HubWorkflowRevisionMeta {\n evidence: unknown;\n}\n\n// ---------- Workflow templates ----------\n//\n// The curated starter gallery (`GET /v1/workflows/templates`) and one-click\n// instantiate. Static catalog data — no per-user fields.\n\nexport type HubWorkflowTemplateCategory =\n | \"Code Review\"\n | \"Triage\"\n | \"Reports\"\n | \"Multi-agent\";\n\n/** One author-time literal a gallery starter needs the user to supply. Every\n * declared parameter is required; `example` is a valid value that seeds the\n * form placeholder. */\nexport interface HubWorkflowTemplateParameter {\n key: string;\n label: string;\n type: \"string\" | \"integer\";\n help?: string;\n example: string;\n default?: string;\n defaultFrom?: \"native_evaluation\";\n required?: boolean;\n advanced?: boolean;\n}\n\nexport interface HubWorkflowTemplate {\n id: string;\n name: string;\n summary: string;\n category: HubWorkflowTemplateCategory;\n icon: string;\n requiresSandbox: boolean;\n /** Providers the template references (a \"uses GitHub\" hint), sorted. */\n providers: string[];\n parameters: HubWorkflowTemplateParameter[];\n /** The template with parameter tokens rendered to their example values. */\n previewYaml: string;\n setupNotes?: string[];\n}\n\n/** A connection a definition needs, with where to connect it. */\nexport interface HubWorkflowConnectionRequirement {\n provider: string;\n connected: boolean;\n kind: \"integration\" | \"github_app\";\n /** Where to satisfy the requirement (App install flow for `github_app`,\n * integrations page otherwise); null when no target exists. */\n connectUrl: string | null;\n /** Another requirement in the same list that must be satisfied first — a\n * `github_app` install is claimed through the `github` connection, so it is\n * refused while that connection is missing. Null when nothing blocks this\n * requirement. The list is ordered prerequisite-first. */\n prerequisite: { provider: string; kind: \"integration\" | \"github_app\" } | null;\n}\n\n/** Stable identity shared by workflow connection requirements and prerequisite references. */\nexport function workflowConnectionRequirementKey(\n ref: Readonly<Pick<HubWorkflowConnectionRequirement, \"provider\" | \"kind\">>,\n): string {\n return `${ref.kind}:${ref.provider}`;\n}\n\n/**\n * Result of instantiating a template. `created: false` is NOT an error — an\n * actionable continuation listing the connections to satisfy before retrying\n * the same call. Invalid parameters or a compile failure throw `HubSdkError`\n * (400) instead, matching the create route's contract.\n */\nexport type HubWorkflowTemplateInstantiateResult =\n | { created: true; workflow: HubWorkflow }\n | {\n created: false;\n connectionRequirements: HubWorkflowConnectionRequirement[];\n };\n\n// ---------- Webhook hook tokens ----------\n\n/** A workflow's webhook delivery endpoint. `token` is the plaintext bearer —\n * revealed only at mint/rotate time (only the hash is stored). */\nexport interface HubWorkflowHookEndpoint {\n url: string;\n token?: string;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../src/broker.ts","../src/event-delivery.ts","../src/line-grants.ts","../src/workflow-definition-types.ts"],"sourcesContent":["import { HubClient, HubSdkError } from \"./client.js\";\n\nexport interface HubAppBrokerOptions {\n baseUrl: string;\n clientId: string;\n clientSecret: string;\n fetch?: typeof fetch;\n}\nexport interface HubAppBrokerToken {\n accessToken: string;\n expiresIn: number;\n scopes: string[];\n}\nexport interface HubAppBrokerExchange extends HubAppBrokerToken {\n grantId: string;\n connectionId: string;\n}\n/** Server-only client. App secrets never become a user's general API key.\n * Every invocation mints and consumes one short-lived, exact-grant token. */\nexport class HubAppBrokerClient {\n private readonly baseUrl: string;\n private readonly fetcher: typeof fetch;\n constructor(private readonly options: HubAppBrokerOptions) {\n this.baseUrl = options.baseUrl.replace(/\\/+$/, \"\");\n this.fetcher = options.fetch ?? fetch.bind(globalThis);\n }\n private async token(\n path: string,\n body: Record<string, unknown>,\n ): Promise<Record<string, unknown>> {\n const response = await this.fetcher(`${this.baseUrl}${path}`, {\n method: \"POST\",\n // Workers support manual redirects; the non-ok check below rejects every 3xx.\n redirect: \"manual\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n ...body,\n client_id: this.options.clientId,\n client_secret: this.options.clientSecret,\n }),\n });\n const result: unknown = await response.json().catch(() => null);\n if (\n !response.ok ||\n !result ||\n typeof result !== \"object\" ||\n Array.isArray(result)\n ) {\n throw new HubSdkError(\n {\n code: \"HUB_CONFIG_MISSING\",\n message: \"Application authorization is unavailable\",\n },\n { status: response.status },\n );\n }\n return result as Record<string, unknown>;\n }\n private readToken(body: Record<string, unknown>): HubAppBrokerToken {\n if (\n typeof body.access_token !== \"string\" ||\n !body.access_token.startsWith(\"sk-tan-broker-\") ||\n body.token_type !== \"Bearer\" ||\n typeof body.expires_in !== \"number\" ||\n !Number.isSafeInteger(body.expires_in) ||\n body.expires_in <= 0 ||\n typeof body.scope !== \"string\"\n )\n throw new HubSdkError({\n code: \"HUB_CONFIG_MISSING\",\n message: \"Invalid application authorization response\",\n });\n return {\n accessToken: body.access_token,\n expiresIn: body.expires_in,\n scopes: body.scope.split(\" \").filter(Boolean),\n };\n }\n async exchange(input: {\n code: string;\n redirectUri: string;\n connectionId?: string;\n }): Promise<HubAppBrokerExchange> {\n const body = await this.token(\"/v1/apps/oauth/token\", {\n grant_type: \"authorization_code\",\n code: input.code,\n redirect_uri: input.redirectUri,\n ...(input.connectionId === undefined\n ? {}\n : { connection_id: input.connectionId }),\n ttl_seconds: 60,\n });\n const token = this.readToken(body);\n if (\n typeof body.grant_id !== \"string\" ||\n !body.grant_id ||\n typeof body.connection_id !== \"string\" ||\n !body.connection_id.trim() ||\n (input.connectionId !== undefined &&\n body.connection_id !== input.connectionId)\n )\n throw new HubSdkError({\n code: \"HUB_CONFIG_MISSING\",\n message: \"Application connection did not match consent\",\n });\n return {\n ...token,\n grantId: body.grant_id,\n connectionId: body.connection_id,\n };\n }\n async mint(grantId: string): Promise<HubAppBrokerToken> {\n if (!/^[A-Za-z0-9_-]{1,256}$/.test(grantId))\n throw new Error(\"Invalid application grant\");\n return this.readToken(\n await this.token(\n `/v1/apps/grants/${encodeURIComponent(grantId)}/mint-broker-token`,\n { grant_id: grantId, ttl_seconds: 60 },\n ),\n );\n }\n async invoke<T = unknown>(\n grantId: string,\n connectionId: string,\n actionPath: string,\n input: Record<string, unknown>,\n ) {\n const token = await this.mint(grantId);\n if (!token.scopes.includes(actionPath))\n throw new HubSdkError({\n code: \"HUB_POLICY_DENIED\",\n message: \"This action was not granted to the application\",\n });\n return new HubClient({\n baseUrl: this.baseUrl,\n apiKey: token.accessToken,\n fetch: this.fetcher,\n }).tools.invoke<T>(actionPath, input, { connectionId });\n }\n}\n","import type { HubEventDelivery } from \"./types.js\";\n\nconst DEFAULT_TOLERANCE_SECONDS = 300;\nconst MAX_TOLERANCE_SECONDS = 3_600;\nconst MAX_SIGNATURE_HEADER_LENGTH = 1_024;\nconst MAX_SIGNATURES = 5;\nconst SHA256_HEX_LENGTH = 64;\nconst MIN_CALLBACK_SECRET_BYTES = 32;\nconst MAX_SECRET_SCOPE_COMPONENT_BYTES = 512;\nconst DEFAULT_MAX_CALLBACK_BODY_BYTES = 5 * 1024 * 1024 + 64 * 1024;\nconst MAX_CALLBACK_BODY_BYTES = 10 * 1024 * 1024;\n\nexport type HubEventSignatureFailure =\n | \"missing\"\n | \"malformed\"\n | \"stale\"\n | \"mismatch\";\n\nexport type HubEventSignatureResult =\n | { valid: true; timestamp: number }\n | { valid: false; reason: HubEventSignatureFailure };\n\nexport interface VerifyHubEventSignatureInput {\n body: string;\n signature: string | null | undefined;\n secret: string;\n toleranceSeconds?: number;\n now?: number | Date;\n}\n\nexport interface DeriveHubEventCallbackSecretInput {\n /** App-level secret stored only in the product's server environment. */\n rootSecret: string;\n /** Stable product slug, such as `relationships`. */\n productId: string;\n /** Stable Tangle owner id; user and team ids are both valid. */\n ownerId: string;\n /** Stable product-local binding id used in the callback route. */\n bindingId: string;\n}\n\nexport type HubEventRequestFailureCode =\n | \"METHOD_NOT_ALLOWED\"\n | \"UNEXPECTED_EVENT\"\n | \"UNSUPPORTED_MEDIA_TYPE\"\n | \"PAYLOAD_TOO_LARGE\"\n | \"INVALID_SIGNATURE\"\n | \"INVALID_DELIVERY\"\n | \"DELIVERY_ID_MISMATCH\";\n\nexport type HubEventRequestResult =\n | { ok: true; delivery: HubEventDelivery }\n | {\n ok: false;\n code: HubEventRequestFailureCode;\n response: Response;\n };\n\nexport interface AuthenticateHubEventRequestInput {\n request: Request;\n /** The per-binding secret supplied when the subscription was created. */\n secret: string;\n /** Defaults to 5 MiB plus envelope overhead; hard-capped at 10 MiB. */\n maxBodyBytes?: number;\n toleranceSeconds?: number;\n now?: number | Date;\n}\n\nexport class HubEventDeliveryError extends Error {\n readonly code:\n | \"INVALID_JSON\"\n | \"INVALID_PAYLOAD\"\n | \"CRYPTO_UNAVAILABLE\"\n | \"INVALID_TOLERANCE\"\n | \"INVALID_CALLBACK_SECRET\"\n | \"INVALID_SECRET_SCOPE\"\n | \"INVALID_BODY_LIMIT\";\n\n constructor(code: HubEventDeliveryError[\"code\"], message: string) {\n super(message);\n this.name = \"HubEventDeliveryError\";\n this.code = code;\n }\n}\n\n/**\n * Derive one callback secret per product binding from a single server-held root\n * secret. Products persist only the binding id; the derived secret can be\n * reproduced for callback authentication without another secret table.\n */\nexport async function deriveHubEventCallbackSecret(\n input: DeriveHubEventCallbackSecretInput,\n): Promise<string> {\n const encoder = new TextEncoder();\n if (encoder.encode(input.rootSecret).byteLength < MIN_CALLBACK_SECRET_BYTES) {\n throw new HubEventDeliveryError(\n \"INVALID_CALLBACK_SECRET\",\n `Hub event root secret must contain at least ${MIN_CALLBACK_SECRET_BYTES} UTF-8 bytes`,\n );\n }\n for (const [name, value] of [\n [\"productId\", input.productId],\n [\"ownerId\", input.ownerId],\n [\"bindingId\", input.bindingId],\n ] as const) {\n const bytes = encoder.encode(value).byteLength;\n if (bytes === 0 || bytes > MAX_SECRET_SCOPE_COMPONENT_BYTES) {\n throw new HubEventDeliveryError(\n \"INVALID_SECRET_SCOPE\",\n `${name} must contain 1-${MAX_SECRET_SCOPE_COMPONENT_BYTES} UTF-8 bytes`,\n );\n }\n }\n const subtle = requireSubtleCrypto();\n const key = await subtle.importKey(\n \"raw\",\n encoder.encode(input.rootSecret),\n { name: \"HMAC\", hash: \"SHA-256\" },\n false,\n [\"sign\"],\n );\n const scope = JSON.stringify([\n \"tangle-hub-event-callback\",\n 1,\n input.productId,\n input.ownerId,\n input.bindingId,\n ]);\n const signature = new Uint8Array(\n await subtle.sign(\"HMAC\", key, encoder.encode(scope)),\n );\n return bytesToBase64Url(signature);\n}\n\n/**\n * Authenticate and parse the platform's callback as one operation. The exact\n * raw body is read once with a size limit before its signature is checked.\n *\n * A successful callback can be retried. Use `delivery.runId` as the durable\n * idempotency key before starting product work.\n */\nexport async function authenticateHubEventRequest(\n input: AuthenticateHubEventRequestInput,\n): Promise<HubEventRequestResult> {\n if (input.request.method !== \"POST\") {\n return requestFailure(\"METHOD_NOT_ALLOWED\", 405, \"method_not_allowed\", {\n Allow: \"POST\",\n });\n }\n if (input.request.headers.get(\"x-tangle-event\") !== \"hub.event\") {\n return requestFailure(\"UNEXPECTED_EVENT\", 400, \"invalid_hub_event\");\n }\n const contentType = input.request.headers.get(\"content-type\") ?? \"\";\n if (!/^application\\/json(?:\\s*;|$)/i.test(contentType)) {\n return requestFailure(\n \"UNSUPPORTED_MEDIA_TYPE\",\n 415,\n \"unsupported_media_type\",\n );\n }\n const maxBodyBytes = input.maxBodyBytes ?? DEFAULT_MAX_CALLBACK_BODY_BYTES;\n if (\n !Number.isSafeInteger(maxBodyBytes) ||\n maxBodyBytes < 1 ||\n maxBodyBytes > MAX_CALLBACK_BODY_BYTES\n ) {\n throw new HubEventDeliveryError(\n \"INVALID_BODY_LIMIT\",\n `Hub event body limit must be an integer from 1 to ${MAX_CALLBACK_BODY_BYTES} bytes`,\n );\n }\n if (\n new TextEncoder().encode(input.secret).byteLength <\n MIN_CALLBACK_SECRET_BYTES\n ) {\n throw new HubEventDeliveryError(\n \"INVALID_CALLBACK_SECRET\",\n `Hub event callback secret must contain at least ${MIN_CALLBACK_SECRET_BYTES} UTF-8 bytes`,\n );\n }\n const declaredLength = input.request.headers.get(\"content-length\");\n if (\n declaredLength !== null &&\n /^\\d+$/.test(declaredLength) &&\n Number(declaredLength) > maxBodyBytes\n ) {\n return requestFailure(\"PAYLOAD_TOO_LARGE\", 413, \"payload_too_large\");\n }\n const body = await readRequestBody(input.request, maxBodyBytes);\n if (body === null) {\n return requestFailure(\"PAYLOAD_TOO_LARGE\", 413, \"payload_too_large\");\n }\n const signature = await verifyHubEventSignature({\n body,\n signature: input.request.headers.get(\"x-tangle-signature\"),\n secret: input.secret,\n ...(input.toleranceSeconds !== undefined\n ? { toleranceSeconds: input.toleranceSeconds }\n : {}),\n ...(input.now !== undefined ? { now: input.now } : {}),\n });\n if (!signature.valid) {\n return requestFailure(\"INVALID_SIGNATURE\", 401, \"invalid_signature\");\n }\n let delivery: HubEventDelivery;\n try {\n delivery = parseHubEventDelivery(body);\n } catch (error) {\n if (error instanceof HubEventDeliveryError) {\n return requestFailure(\"INVALID_DELIVERY\", 400, \"invalid_delivery\");\n }\n throw error;\n }\n if (input.request.headers.get(\"x-tangle-delivery-id\") !== delivery.runId) {\n return requestFailure(\"DELIVERY_ID_MISMATCH\", 400, \"invalid_delivery\");\n }\n return { ok: true, delivery };\n}\n\n/**\n * Authenticate a Hub event callback against its exact raw request body.\n * The timestamp window rejects captured-request replay, and byte-wise\n * comparison avoids secret-dependent string comparison behavior.\n */\nexport async function verifyHubEventSignature(\n input: VerifyHubEventSignatureInput,\n): Promise<HubEventSignatureResult> {\n if (!input.signature) return { valid: false, reason: \"missing\" };\n if (input.signature.length > MAX_SIGNATURE_HEADER_LENGTH) {\n return { valid: false, reason: \"malformed\" };\n }\n const parsed = parseSignatureHeader(input.signature);\n if (!parsed) return { valid: false, reason: \"malformed\" };\n\n const tolerance = input.toleranceSeconds ?? DEFAULT_TOLERANCE_SECONDS;\n if (\n !Number.isFinite(tolerance) ||\n !Number.isInteger(tolerance) ||\n tolerance < 0 ||\n tolerance > MAX_TOLERANCE_SECONDS\n ) {\n throw new HubEventDeliveryError(\n \"INVALID_TOLERANCE\",\n `Signature tolerance must be an integer from 0 to ${MAX_TOLERANCE_SECONDS} seconds`,\n );\n }\n const nowMs =\n input.now instanceof Date\n ? input.now.getTime()\n : typeof input.now === \"number\"\n ? input.now\n : Date.now();\n if (\n !Number.isFinite(nowMs) ||\n Math.abs(Math.floor(nowMs / 1_000) - parsed.timestamp) > tolerance\n ) {\n return { valid: false, reason: \"stale\" };\n }\n\n const subtle = requireSubtleCrypto();\n const encoder = new TextEncoder();\n const key = await subtle.importKey(\n \"raw\",\n encoder.encode(input.secret),\n { name: \"HMAC\", hash: \"SHA-256\" },\n false,\n [\"sign\"],\n );\n const expected = new Uint8Array(\n await subtle.sign(\n \"HMAC\",\n key,\n encoder.encode(`${parsed.timestamp}.${input.body}`),\n ),\n );\n let matched = 0;\n for (const signature of parsed.signatures) {\n matched |= constantTimeEqual(expected, signature);\n }\n return matched === 1\n ? { valid: true, timestamp: parsed.timestamp }\n : { valid: false, reason: \"mismatch\" };\n}\n\nexport function parseHubEventDelivery(\n input: string | unknown,\n): HubEventDelivery {\n let value: unknown = input;\n if (typeof input === \"string\") {\n try {\n value = JSON.parse(input);\n } catch {\n throw new HubEventDeliveryError(\n \"INVALID_JSON\",\n \"Hub event callback body is not valid JSON\",\n );\n }\n }\n if (!isRecord(value)) return invalidDelivery();\n const source = value.source;\n const providerEvent = value.providerEvent;\n if (\n !nonEmptyString(value.subscriptionId) ||\n !nonEmptyString(value.workflowId) ||\n !nonEmptyString(value.runId) ||\n !isRecord(source) ||\n (source.kind !== \"channel\" && source.kind !== \"connection\") ||\n !nonEmptyString(source.id) ||\n !nonEmptyString(source.provider) ||\n !nonEmptyString(source.event) ||\n !isRecord(providerEvent) ||\n !nonEmptyString(providerEvent.provider) ||\n !nonEmptyString(providerEvent.connectionId) ||\n !nonEmptyString(providerEvent.type) ||\n providerEvent.provider !== source.provider ||\n providerEvent.type !== source.event ||\n !Object.hasOwn(providerEvent, \"payload\") ||\n !optionalString(providerEvent.action) ||\n !optionalString(providerEvent.repo) ||\n !optionalString(providerEvent.deliveryId) ||\n !nonEmptyString(value.firedAt) ||\n !Number.isFinite(Date.parse(value.firedAt))\n ) {\n return invalidDelivery();\n }\n return {\n subscriptionId: value.subscriptionId,\n workflowId: value.workflowId,\n runId: value.runId,\n source: {\n kind: source.kind,\n id: source.id,\n provider: source.provider,\n event: source.event,\n },\n providerEvent: {\n provider: providerEvent.provider,\n connectionId: providerEvent.connectionId,\n type: providerEvent.type,\n ...(typeof providerEvent.action === \"string\"\n ? { action: providerEvent.action }\n : {}),\n ...(typeof providerEvent.repo === \"string\"\n ? { repo: providerEvent.repo }\n : {}),\n ...(typeof providerEvent.deliveryId === \"string\"\n ? { deliveryId: providerEvent.deliveryId }\n : {}),\n payload: providerEvent.payload,\n },\n firedAt: value.firedAt,\n };\n}\n\nfunction parseSignatureHeader(\n header: string,\n): { timestamp: number; signatures: Uint8Array[] } | null {\n let timestamp: number | undefined;\n const signatures: Uint8Array[] = [];\n for (const segment of header.split(\",\")) {\n const separator = segment.indexOf(\"=\");\n if (separator <= 0) return null;\n const key = segment.slice(0, separator).trim();\n const value = segment.slice(separator + 1).trim();\n if (key === \"t\") {\n if (timestamp !== undefined || !/^\\d+$/.test(value)) return null;\n const candidate = Number(value);\n if (!Number.isSafeInteger(candidate) || candidate <= 0) return null;\n timestamp = candidate;\n } else if (key === \"v1\") {\n if (\n signatures.length >= MAX_SIGNATURES ||\n value.length !== SHA256_HEX_LENGTH ||\n !/^[0-9a-f]+$/i.test(value)\n ) {\n return null;\n }\n signatures.push(hexToBytes(value));\n }\n }\n return timestamp !== undefined && signatures.length > 0\n ? { timestamp, signatures }\n : null;\n}\n\nfunction hexToBytes(hex: string): Uint8Array {\n const bytes = new Uint8Array(hex.length / 2);\n for (let index = 0; index < bytes.length; index += 1) {\n bytes[index] = Number.parseInt(hex.slice(index * 2, index * 2 + 2), 16);\n }\n return bytes;\n}\n\nfunction constantTimeEqual(expected: Uint8Array, actual: Uint8Array): number {\n let difference = expected.length ^ actual.length;\n const length = Math.max(expected.length, actual.length);\n for (let index = 0; index < length; index += 1) {\n difference |=\n (expected[index % expected.length] ?? 0) ^\n (actual[index % actual.length] ?? 0);\n }\n return difference === 0 ? 1 : 0;\n}\n\nfunction nonEmptyString(value: unknown): value is string {\n return typeof value === \"string\" && value.length > 0;\n}\n\nfunction optionalString(value: unknown): boolean {\n return value === undefined || nonEmptyString(value);\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\nfunction invalidDelivery(): never {\n throw new HubEventDeliveryError(\n \"INVALID_PAYLOAD\",\n \"Hub event callback body does not match the delivery contract\",\n );\n}\n\nfunction requireSubtleCrypto(): SubtleCrypto {\n const subtle = globalThis.crypto?.subtle;\n if (!subtle) {\n throw new HubEventDeliveryError(\n \"CRYPTO_UNAVAILABLE\",\n \"Web Crypto is required for Hub event callback authentication\",\n );\n }\n return subtle;\n}\n\nfunction bytesToBase64Url(bytes: Uint8Array): string {\n let binary = \"\";\n for (const byte of bytes) binary += String.fromCharCode(byte);\n return btoa(binary)\n .replace(/\\+/g, \"-\")\n .replace(/\\//g, \"_\")\n .replace(/=+$/g, \"\");\n}\n\nasync function readRequestBody(\n request: Request,\n maxBytes: number,\n): Promise<string | null> {\n const reader = request.body?.getReader();\n if (!reader) return \"\";\n const chunks: Uint8Array[] = [];\n let total = 0;\n try {\n while (true) {\n const next = await reader.read();\n if (next.done) break;\n total += next.value.byteLength;\n if (total > maxBytes) return null;\n chunks.push(next.value);\n }\n } finally {\n await reader.cancel().catch(() => {});\n }\n const body = new Uint8Array(total);\n let offset = 0;\n for (const chunk of chunks) {\n body.set(chunk, offset);\n offset += chunk.byteLength;\n }\n return new TextDecoder().decode(body);\n}\n\nfunction requestFailure(\n code: HubEventRequestFailureCode,\n status: number,\n error: string,\n headers?: HeadersInit,\n): Extract<HubEventRequestResult, { ok: false }> {\n return {\n ok: false,\n code,\n response: Response.json(\n { error },\n {\n status,\n headers: {\n \"cache-control\": \"no-store\",\n ...(headers ? Object.fromEntries(new Headers(headers)) : {}),\n },\n },\n ),\n };\n}\n","import { HubTransport } from \"./client.js\";\nimport { jsonInit } from \"./json-init.js\";\nimport type { HubLineOwnerSendInput, HubLineSendReceipt } from \"./lines.js\";\n\nexport type HubOwnerAskSendInput = Pick<\n HubLineOwnerSendInput,\n \"text\" | \"image\" | \"reply\" | \"idempotencyKey\"\n>;\n\nexport interface HubLineGrantBinding {\n workspaceId: string;\n workspaceAgentId: string;\n}\n\nexport interface HubLineGrant {\n id: string;\n /** Canonical Hub identity that consented this grant; distinct from the app-local owner. */\n ownerUserId?: string;\n purpose?: \"agent\" | \"owner_asks\";\n lineId: string;\n connectionId: string;\n workspaceId: string;\n workspaceAgentId: string;\n agentProfileVersion: string;\n backendSha256: string;\n attachmentId: string | null;\n intakeMode: \"guests\" | \"owner_only\";\n /** \"application\" grants select the app's callback for the owner member instead of attaching. */\n execution: \"backend\" | \"application\" | \"none\";\n applicationOrigin: string | null;\n priorAttachmentId: string | null;\n priorAttachmentActive: boolean;\n monthlyBudgetUsd: number;\n monthlySpentUsd: number;\n}\n\nexport interface HubLineGrantLine {\n id: string;\n connectionId: string;\n transport: \"sms\" | \"imessage\" | \"whatsapp\";\n status: string;\n address: string | null;\n attachment: { id: string; sandboxId: string; status: string } | null;\n}\n\nexport interface HubLineGrantAttachInput {\n workspaceAgentId: string;\n agentProfileVersion: string;\n renewalCode?: string;\n respond: { kind: \"agent\"; backend: Record<string, unknown> };\n}\n\nexport interface HubLineGrantAttachment {\n id: string;\n sandboxId: string;\n status: string;\n members?: Array<{ id: string; role: string }>;\n}\n\nexport interface HubLineGrantThread {\n id: string;\n lineId: string;\n attachmentId: string;\n}\n\nexport interface HubLineGrantMessage {\n id: string;\n threadId: string;\n direction: string;\n text: string | null;\n}\n\n/** The consented owner member on the owner's current attachment. */\nexport interface HubLineGrantMemberApplication {\n lineId: string;\n attachmentId: string;\n memberId: string;\n subjectId: string;\n /** Pass back unchanged as `expectedMemberRevision`. */\n memberRevision: string;\n /** False until the owner has texted the line and Hub recorded consent. */\n eligible: boolean;\n /** Hub-derived; every callback for this grant carries it. */\n binding: string;\n selection: {\n id: string;\n /** True when this grant's callback is the selected application. */\n own: boolean;\n /**\n * Hub's name for the app that answers the owner's texts, shown to the\n * owner in every app they consented on this line: a registered app's\n * name, or \"Another app\" when Hub has none. Absent before Platform named\n * selection holders.\n */\n app?: { name: string };\n /** When the current app started answering. */\n selectedAt?: string;\n /** This app's own callback; never returned for another app. */\n url?: string;\n createdAt?: string;\n } | null;\n}\n\nexport interface HubLineGrantSelectApplicationInput {\n /** The current selection exactly as read. */\n expectedSelectionId: string | null;\n /**\n * Set only when the owner chose to move their texts here from the app shown\n * in `selection.app`: that selection's id, also passed as\n * `expectedSelectionId`. Without it Hub never replaces another app.\n */\n replaceSelectionId?: string;\n expectedMemberRevision: string;\n /** HTTPS callback on the owner-approved application origin. */\n url: string;\n /** Bearer Hub sends to the callback; 32-512 printable ASCII characters. */\n secret: string;\n}\n\nexport interface HubLineGrantApplicationSelection {\n id: string;\n lineId: string;\n attachmentId: string;\n memberId: string;\n subjectId: string;\n status: string;\n application: { url: string; binding: string };\n createdAt: string;\n revokedAt: string | null;\n}\n\nfunction path(binding: HubLineGrantBinding, suffix = \"\"): string {\n if (!binding.workspaceId || !binding.workspaceAgentId)\n throw new Error(\"A workspace and agent are required for a line grant\");\n const query = new URLSearchParams({\n workspaceId: binding.workspaceId,\n workspaceAgentId: binding.workspaceAgentId,\n });\n return `/v1/hub/line-grants/current${suffix}?${query}`;\n}\n\n/** Every call uses HubTransport's authHeaders, so one-use app broker tokens can be minted per request. */\nexport class HubLineGrantsClient extends HubTransport {\n current(binding: HubLineGrantBinding): Promise<HubLineGrant> {\n return this.request(path(binding), { method: \"GET\" });\n }\n\n async line(binding: HubLineGrantBinding): Promise<HubLineGrantLine> {\n return (\n await this.request<{ line: HubLineGrantLine }>(path(binding, \"/line\"), {\n method: \"GET\",\n })\n ).line;\n }\n\n async attach(\n binding: HubLineGrantBinding,\n input: HubLineGrantAttachInput,\n ): Promise<HubLineGrantAttachment> {\n return (\n await this.request<{ attachment: HubLineGrantAttachment }>(\n path(binding, \"/attachment\"),\n jsonInit(\"PUT\", input),\n )\n ).attachment;\n }\n\n detach(binding: HubLineGrantBinding): Promise<{ detached: boolean }> {\n return this.request(path(binding, \"/attachment\"), { method: \"DELETE\" });\n }\n\n async threads(binding: HubLineGrantBinding): Promise<HubLineGrantThread[]> {\n return (\n await this.request<{ threads: HubLineGrantThread[] }>(\n path(binding, \"/threads\"),\n { method: \"GET\" },\n )\n ).threads;\n }\n\n async messages(\n binding: HubLineGrantBinding,\n threadId: string,\n ): Promise<HubLineGrantMessage[]> {\n if (!threadId || threadId.length > 256)\n throw new Error(\"A bounded line thread id is required\");\n return (\n await this.request<{ messages: HubLineGrantMessage[] }>(\n path(binding, `/threads/${encodeURIComponent(threadId)}/messages`),\n { method: \"GET\" },\n )\n ).messages;\n }\n\n memberApplication(\n binding: HubLineGrantBinding,\n ): Promise<HubLineGrantMemberApplication> {\n return this.request(path(binding, \"/member-application\"), {\n method: \"GET\",\n });\n }\n\n /**\n * Route the owner's texts to this app's callback; the incumbent attachment\n * stays. `replaceSelectionId` moves them from another app on the owner's\n * explicit choice.\n */\n async selectApplication(\n binding: HubLineGrantBinding,\n input: HubLineGrantSelectApplicationInput,\n ): Promise<HubLineGrantApplicationSelection> {\n return (\n await this.request<{ selection: HubLineGrantApplicationSelection }>(\n path(binding, \"/member-application\"),\n jsonInit(\"PUT\", input),\n )\n ).selection;\n }\n\n /** Return the owner's texts to the incumbent attachment. */\n async clearApplication(\n binding: HubLineGrantBinding,\n input: { expectedSelectionId: string; expectedMemberRevision: string },\n ): Promise<void> {\n await this.request(\n path(binding, \"/member-application\"),\n jsonInit(\"DELETE\", input),\n );\n }\n\n /** Ask only the verified owner member named by this owner_asks grant. */\n send(\n binding: HubLineGrantBinding,\n input: HubOwnerAskSendInput,\n ): Promise<HubLineSendReceipt> {\n return this.request(path(binding, \"/send\"), jsonInit(\"POST\", input));\n }\n\n /** Only a send created by this same grant is visible. */\n outbox(\n binding: HubLineGrantBinding,\n messageId: string,\n ): Promise<HubLineSendReceipt> {\n if (!/^lmsg_[A-Za-z0-9_-]+$/.test(messageId))\n throw new Error(\"A line message id is required\");\n return this.request(\n path(binding, `/outbox/${encodeURIComponent(messageId)}`),\n { method: \"GET\" },\n );\n }\n\n revoke(\n binding: HubLineGrantBinding,\n expectedGrantId?: string,\n ): Promise<{ revoked: boolean }> {\n const target = path(binding);\n return this.request(\n expectedGrantId === undefined\n ? target\n : `${target}&expectedGrantId=${encodeURIComponent(expectedGrantId)}`,\n { method: \"DELETE\" },\n );\n }\n}\n","import type { HubWorkflowGraphSpec } from \"./workflow-graph-types.js\";\nimport type { HubWorkflowRunSummary } from \"./workflow-run-types.js\";\n\nexport type {\n HubWorkflowCondition,\n HubWorkflowConditionOp,\n HubWorkflowConditionScalar,\n HubWorkflowGraphEdge,\n HubWorkflowGraphJoinRule,\n HubWorkflowGraphNode,\n HubWorkflowGraphSpec,\n} from \"./workflow-graph-types.js\";\n\n// ---------- Workflows ----------\n//\n// The workflow resource on the platform (`/v1/workflows`). YAML is the\n// durable representation; the platform compiles it to the engine's run model.\n// Reachable from inside a sandbox via the same client (TANGLE_API_KEY auth).\n\nexport interface HubWorkflowAction {\n kind: string;\n config: Record<string, unknown>;\n}\n\n/** Inbound-event matcher for a `provider_event` trigger. */\nexport interface HubWorkflowEventFilter {\n event: string;\n action?: string;\n repo?: string;\n}\n\nexport interface HubWorkflowTrigger {\n id: string;\n kind: \"provider_event\" | \"schedule\" | \"webhook\";\n enabled: boolean;\n provider: string | null;\n connectionId: string | null;\n eventFilter: HubWorkflowEventFilter | null;\n cron: string | null;\n timezone: string | null;\n nextFireAt: string | null;\n lastFiredAt: string | null;\n /** Schedule only: the ISO-8601 instant it stops firing; null when unbounded. */\n until: string | null;\n}\n\nexport interface HubWorkflowValidationError {\n path: string;\n message: string;\n /** Machine-readable reason where one is defined, e.g. `schedule_outlives_grant`. */\n code?: string;\n}\n\nexport interface HubWorkflow {\n id: string;\n name: string;\n description: string | null;\n enabled: boolean;\n /** Compiled engine actions (connection refs resolved to ids). */\n actions: HubWorkflowAction[];\n /** The durable YAML this workflow compiled from. */\n definitionYaml: string | null;\n validationErrors: HubWorkflowValidationError[];\n /** Current head revision; null on pre-versioning rows until their next\n * update (they have no revision history to point at yet). */\n headRev?: number | null;\n /** Present on get/create/update detail responses; omitted on list. */\n triggers?: HubWorkflowTrigger[];\n /** Present on the detail response: the trigger fields a manual run must supply,\n * derived from the definition's `${trigger.*}` references (empty when none). */\n manualRunInputs?: HubManualRunInput[];\n /** Present on the get-detail response: the compiled graph topology (null\n * when the definition has no graph topology, or is chain-equivalent —\n * the legacy linear semantics). Omitted on the list projection. */\n graph?: HubWorkflowGraphSpec | null;\n /** Create response only, when the definition has a webhook trigger: the\n * hook delivery URL, plus the plaintext bearer token exactly once at mint\n * (absent when an active token already exists — rotate to re-reveal). */\n hook?: HubWorkflowHookEndpoint;\n /** Present on the list response (latest run, or null if never run); omitted on detail. */\n lastRun?: HubWorkflowRunSummary | null;\n createdAt: string;\n updatedAt: string;\n}\n\n/** A trigger field a manual \"Run now\" must supply (derived from the\n * definition's `${trigger.*}` references). `required` is false only when every\n * read is wrapped in a `default(...)`. */\nexport interface HubManualRunInput {\n path: string;\n required: boolean;\n}\n\nexport type HubWorkflowValidateResponse =\n | { valid: true; name: string; actionCount: number; triggerCount: number }\n | { valid: false; errors: HubWorkflowValidationError[] };\n\n/** JSON Schema for the YAML workflow definition. */\nexport type HubWorkflowSchemaResponse = Record<string, unknown>;\n\n// ---------- Workflow definition revisions ----------\n//\n// The append-only history of a workflow's YAML (`GET :id/revisions`,\n// `POST :id/rollback`). Every create/update/rollback appends one rev; rollback\n// restores a prior rev's YAML as a NEW head — history is never rewritten.\n// `GET :id/revisions` lists APPLIED revs only (the history); proposed and\n// rejected revs live on the proposals surface below.\n\nexport type HubWorkflowRevisionSource = \"user\" | \"copilot\" | \"intelligence\";\n\n/** Lifecycle state of a revision. The head rev only ever points at an\n * `applied` revision; `proposed` is a service-token-authored suggestion\n * awaiting an owner decision; `rejected` is a declined proposal (kept for\n * audit). */\nexport type HubWorkflowRevisionStatus = \"applied\" | \"proposed\" | \"rejected\";\n\n/** Revision list projection — attribution + note + status, WITHOUT the YAML body. */\nexport interface HubWorkflowRevisionMeta {\n rev: number;\n createdAt: string;\n createdBy: string;\n source: HubWorkflowRevisionSource;\n note: string | null;\n status: HubWorkflowRevisionStatus;\n}\n\n/** One revision WITH its YAML (and the actions compiled alongside it). */\nexport interface HubWorkflowRevision extends HubWorkflowRevisionMeta {\n yaml: string;\n actions: HubWorkflowAction[];\n}\n\n/** A proposal (proposed or rejected revision) WITH its evidence — what the\n * proposer derived the suggestion from (e.g. health stats), plus\n * `rejectionReason` once declined. */\nexport interface HubWorkflowProposal extends HubWorkflowRevisionMeta {\n evidence: unknown;\n}\n\n// ---------- Workflow templates ----------\n//\n// The curated starter gallery (`GET /v1/workflows/templates`) and one-click\n// instantiate. Static catalog data — no per-user fields.\n\nexport type HubWorkflowTemplateCategory =\n | \"Code Review\"\n | \"Triage\"\n | \"Reports\"\n | \"Multi-agent\";\n\n/** One author-time literal a gallery starter needs the user to supply. Every\n * declared parameter is required; `example` is a valid value that seeds the\n * form placeholder. */\nexport interface HubWorkflowTemplateParameter {\n key: string;\n label: string;\n type: \"string\" | \"integer\";\n help?: string;\n example: string;\n default?: string;\n defaultFrom?: \"native_evaluation\";\n required?: boolean;\n advanced?: boolean;\n}\n\nexport interface HubWorkflowTemplate {\n id: string;\n name: string;\n summary: string;\n category: HubWorkflowTemplateCategory;\n icon: string;\n requiresSandbox: boolean;\n /** Providers the template references (a \"uses GitHub\" hint), sorted. */\n providers: string[];\n parameters: HubWorkflowTemplateParameter[];\n /** The template with parameter tokens rendered to their example values. */\n previewYaml: string;\n setupNotes?: string[];\n}\n\n/** A connection a definition needs, with where to connect it. */\nexport interface HubWorkflowConnectionRequirement {\n provider: string;\n connected: boolean;\n kind: \"integration\" | \"github_app\";\n /** Where to satisfy the requirement (App install flow for `github_app`,\n * integrations page otherwise); null when no target exists. */\n connectUrl: string | null;\n /** Another requirement in the same list that must be satisfied first — a\n * `github_app` install is claimed through the `github` connection, so it is\n * refused while that connection is missing. Null when nothing blocks this\n * requirement. The list is ordered prerequisite-first. */\n prerequisite: { provider: string; kind: \"integration\" | \"github_app\" } | null;\n}\n\n/** Stable identity shared by workflow connection requirements and prerequisite references. */\nexport function workflowConnectionRequirementKey(\n ref: Readonly<Pick<HubWorkflowConnectionRequirement, \"provider\" | \"kind\">>,\n): string {\n return `${ref.kind}:${ref.provider}`;\n}\n\n/**\n * Result of instantiating a template. `created: false` is NOT an error — an\n * actionable continuation listing the connections to satisfy before retrying\n * the same call. Invalid parameters or a compile failure throw `HubSdkError`\n * (400) instead, matching the create route's contract.\n */\nexport type HubWorkflowTemplateInstantiateResult =\n | { created: true; workflow: HubWorkflow }\n | {\n created: false;\n connectionRequirements: HubWorkflowConnectionRequirement[];\n };\n\n// ---------- Webhook hook tokens ----------\n\n/** A workflow's webhook delivery endpoint. `token` is the plaintext bearer —\n * revealed only at mint/rotate time (only the hash is stored). */\nexport interface HubWorkflowHookEndpoint {\n url: string;\n token?: string;\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { t as HubClient } from "../client-C-JbtG50.js";
1
+ import { t as HubClient } from "../client-Ct8eoS1Y.js";
2
2
  import { Server } from "@modelcontextprotocol/sdk/server/index.js";
3
3
  import { Hono } from "hono";
4
4
  import { AgentProfile, AgentProfileConnection, AgentProfileMcpServer } from "@tangle-network/agent-interface";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tangle-network/hub-sdk",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "Typed SDK for Tangle Hub tool discovery and execution",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -42,8 +42,8 @@
42
42
  "vitest": "^4.1.12"
43
43
  },
44
44
  "tangleRelease": {
45
- "sourceSha": "d1dba72e134ad99b1bebcc956b2b93cb5482306b",
46
- "mergedAt": "2026-10-28T02:38:45-06:00"
45
+ "sourceSha": "5a01e5d1f70ea60144639c83ed31b86ca410aba3",
46
+ "mergedAt": "2026-10-29T06:34:56-06:00"
47
47
  },
48
48
  "scripts": {
49
49
  "build": "tsdown",
@@ -1 +0,0 @@
1
- {"version":3,"file":"client-C-JbtG50.d.ts","names":[],"sources":["../src/allowances.ts","../src/apps.ts","../src/tool-types.ts","../src/knowledge-management.ts","../src/knowledge.ts","../src/audit-types.ts","../src/transport-types.ts","../src/authorization-types.ts","../src/channel-types.ts","../src/connection-types.ts","../src/github-app-types.ts","../src/workflow-graph-types.ts","../src/workflow-run-types.ts","../src/workflow-definition-types.ts","../src/workflow-storage-types.ts","../src/lines.ts","../src/managed-numbers.ts","../src/transport.ts","../src/environment.ts","../src/authorization.ts","../src/tools.ts","../src/inbound-webhooks.ts","../src/connections.ts","../src/channels.ts","../src/github-app.ts","../src/audit.ts","../src/workflows-kv.ts","../src/workflows.ts","../src/client.ts"],"mappings":"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"}