@zixt/host 0.0.100 → 0.0.102

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.
Files changed (2) hide show
  1. package/dist/index.js +187 -2
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -28,7 +28,7 @@ import { homedir as homedir3 } from "node:os";
28
28
  // package.json
29
29
  var package_default = {
30
30
  name: "@zixt/host",
31
- version: "0.0.100",
31
+ version: "0.0.102",
32
32
  type: "module",
33
33
  exports: {
34
34
  ".": "./src/client.ts",
@@ -14618,6 +14618,10 @@ var ID_PREFIXES = {
14618
14618
  timer: "tmr",
14619
14619
  event: "evt",
14620
14620
  schedule: "sch",
14621
+ /** Organization-owned inbound Webhook Automation. */
14622
+ webhookAutomation: "wha",
14623
+ /** One admitted or rejected delivery for a Webhook Automation. */
14624
+ webhookDelivery: "whd",
14621
14625
  /** Organization-owned reusable AI-teammate skill. */
14622
14626
  orgSkill: "skl",
14623
14627
  /** Organization-owned reusable Automation routine. */
@@ -14666,6 +14670,8 @@ var ID_PREFIXES = {
14666
14670
  managerCredentialRequest: "mcr",
14667
14671
  /** One Manager-prepared generic API setup or invocation card (MG-20). */
14668
14672
  managerApiAction: "maa",
14673
+ /** One Manager-prepared Webhook Automation setup card (MG-21). */
14674
+ managerWebhookAction: "mwa",
14669
14675
  /** One Manager inference call's token-metering row (MG-8). */
14670
14676
  managerUsage: "mgu",
14671
14677
  /** One ordered Manager reply awaiting Slack delivery. */
@@ -14708,6 +14714,8 @@ var IntegrationDefinitionId = idSchema(
14708
14714
  var IntegrationLogoId = idSchema(ID_PREFIXES.integrationLogo, "Integration logo id");
14709
14715
  var ApprovalId = idSchema(ID_PREFIXES.approval, "approval id");
14710
14716
  var ScheduleId = idSchema(ID_PREFIXES.schedule, "schedule id");
14717
+ var WebhookAutomationId = idSchema(ID_PREFIXES.webhookAutomation, "Webhook Automation id");
14718
+ var WebhookDeliveryId = idSchema(ID_PREFIXES.webhookDelivery, "webhook delivery id");
14711
14719
  var OrgSkillId = idSchema(ID_PREFIXES.orgSkill, "organization skill id");
14712
14720
  var OrgRoutineId = idSchema(ID_PREFIXES.orgRoutine, "organization routine id");
14713
14721
  var BrowserSessionId = idSchema(ID_PREFIXES.browserSession, "browser session id");
@@ -14727,6 +14735,10 @@ var ManagerCredentialRequestId = idSchema(
14727
14735
  "Manager credential request id"
14728
14736
  );
14729
14737
  var ManagerApiActionId = idSchema(ID_PREFIXES.managerApiAction, "Manager API action id");
14738
+ var ManagerWebhookActionId = idSchema(
14739
+ ID_PREFIXES.managerWebhookAction,
14740
+ "Manager webhook action id"
14741
+ );
14730
14742
  var ManagerEmailInboxId = idSchema(
14731
14743
  ID_PREFIXES.managerEmailInbox,
14732
14744
  "Manager email inbox id"
@@ -18755,6 +18767,138 @@ var CLOSE_CODES = {
18755
18767
  var UNSUPPORTED_PROTOCOL_CLOSE_REASON = "unsupported protocol version";
18756
18768
  var CLOSE_REASON_MAX_BYTES = 123;
18757
18769
 
18770
+ // ../../packages/contracts/src/webhook-automations.ts
18771
+ var WebhookHeaderName = external_exports.string().min(1).max(100).regex(/^[A-Za-z0-9-]+$/, "header names may contain letters, numbers, and hyphens");
18772
+ var WebhookSecret = external_exports.string().min(8).max(2e3);
18773
+ var RotatingSecretProjection = {
18774
+ secretConfigured: external_exports.literal(true),
18775
+ previousSecretValidUntil: IsoDate.nullable()
18776
+ };
18777
+ var WebhookAuthenticationProjection = external_exports.discriminatedUnion("kind", [
18778
+ external_exports.object({ kind: external_exports.literal("none") }).strict(),
18779
+ external_exports.object({ kind: external_exports.literal("bearer"), ...RotatingSecretProjection }).strict(),
18780
+ external_exports.object({
18781
+ kind: external_exports.literal("basic"),
18782
+ username: external_exports.string().min(1).max(200),
18783
+ ...RotatingSecretProjection
18784
+ }).strict(),
18785
+ external_exports.object({ kind: external_exports.literal("github"), ...RotatingSecretProjection }).strict(),
18786
+ external_exports.object({
18787
+ kind: external_exports.literal("stripe"),
18788
+ toleranceSeconds: external_exports.number().int().min(30).max(86400),
18789
+ ...RotatingSecretProjection
18790
+ }).strict(),
18791
+ external_exports.object({
18792
+ kind: external_exports.literal("hmac"),
18793
+ signatureHeader: WebhookHeaderName,
18794
+ signaturePrefix: external_exports.string().max(40),
18795
+ timestampHeader: WebhookHeaderName.nullable(),
18796
+ deliveryIdHeader: WebhookHeaderName.nullable(),
18797
+ digestEncoding: external_exports.enum(["hex", "base64"]),
18798
+ toleranceSeconds: external_exports.number().int().min(30).max(86400),
18799
+ ...RotatingSecretProjection
18800
+ }).strict()
18801
+ ]);
18802
+ var WebhookAuthenticationSetup = external_exports.discriminatedUnion("kind", [
18803
+ external_exports.object({ kind: external_exports.literal("none"), acknowledgedRisk: external_exports.literal(true) }).strict(),
18804
+ external_exports.object({ kind: external_exports.literal("bearer"), token: WebhookSecret }).strict(),
18805
+ external_exports.object({
18806
+ kind: external_exports.literal("basic"),
18807
+ username: external_exports.string().min(1).max(200),
18808
+ password: external_exports.string().min(1).max(2e3)
18809
+ }).strict(),
18810
+ external_exports.object({ kind: external_exports.literal("github"), secret: WebhookSecret }).strict(),
18811
+ external_exports.object({
18812
+ kind: external_exports.literal("stripe"),
18813
+ secret: WebhookSecret,
18814
+ toleranceSeconds: external_exports.number().int().min(30).max(86400).default(300)
18815
+ }).strict(),
18816
+ external_exports.object({
18817
+ kind: external_exports.literal("hmac"),
18818
+ secret: WebhookSecret,
18819
+ signatureHeader: WebhookHeaderName.default("X-Webhook-Signature"),
18820
+ signaturePrefix: external_exports.string().max(40).default("sha256="),
18821
+ timestampHeader: WebhookHeaderName.nullable().default("X-Webhook-Timestamp"),
18822
+ deliveryIdHeader: WebhookHeaderName.nullable().default("X-Webhook-Id"),
18823
+ digestEncoding: external_exports.enum(["hex", "base64"]).default("hex"),
18824
+ toleranceSeconds: external_exports.number().int().min(30).max(86400).default(300)
18825
+ }).strict()
18826
+ ]);
18827
+ var WebhookAutomation = external_exports.object({
18828
+ id: WebhookAutomationId,
18829
+ orgId: OrgId,
18830
+ name: external_exports.string().min(1).max(120),
18831
+ instructions: external_exports.string().min(1).max(1e5),
18832
+ assignedAgentId: AgentId.nullable(),
18833
+ enabled: external_exports.boolean(),
18834
+ endpointUrl: external_exports.string().url(),
18835
+ authentication: WebhookAuthenticationProjection,
18836
+ rateLimitPerMinute: external_exports.number().int().min(1).max(1e3),
18837
+ retentionDays: external_exports.number().int().min(1).max(90),
18838
+ lastDeliveryAt: IsoDate.nullable(),
18839
+ createdAt: IsoDate,
18840
+ updatedAt: IsoDate
18841
+ }).strict();
18842
+ var CreateWebhookAutomationRequest = external_exports.object({
18843
+ name: WebhookAutomation.shape.name,
18844
+ instructions: WebhookAutomation.shape.instructions,
18845
+ assignedAgentId: AgentId.nullable().optional(),
18846
+ authentication: WebhookAuthenticationSetup,
18847
+ rateLimitPerMinute: WebhookAutomation.shape.rateLimitPerMinute.optional(),
18848
+ retentionDays: WebhookAutomation.shape.retentionDays.optional()
18849
+ }).strict();
18850
+ var UpdateWebhookAutomationRequest = external_exports.object({
18851
+ name: WebhookAutomation.shape.name.optional(),
18852
+ instructions: WebhookAutomation.shape.instructions.optional(),
18853
+ assignedAgentId: AgentId.nullable().optional(),
18854
+ enabled: external_exports.boolean().optional(),
18855
+ rateLimitPerMinute: WebhookAutomation.shape.rateLimitPerMinute.optional(),
18856
+ retentionDays: WebhookAutomation.shape.retentionDays.optional()
18857
+ }).strict().refine((value) => Object.keys(value).length > 0, "empty update");
18858
+ var ListWebhookAutomationsResponse = external_exports.object({ webhooks: external_exports.array(WebhookAutomation) }).strict();
18859
+ var WebhookDeliveryStatus = external_exports.enum([
18860
+ "received",
18861
+ "processing",
18862
+ "needs_attention",
18863
+ "completed",
18864
+ "failed",
18865
+ "rejected"
18866
+ ]);
18867
+ var WebhookDeliveryFailureCode = external_exports.enum([
18868
+ "authentication_failed",
18869
+ "payload_too_large",
18870
+ "rate_limited",
18871
+ "manager_unavailable",
18872
+ "processing_failed"
18873
+ ]);
18874
+ var WebhookDelivery = external_exports.object({
18875
+ id: WebhookDeliveryId,
18876
+ webhookAutomationId: WebhookAutomationId,
18877
+ status: WebhookDeliveryStatus,
18878
+ externalDeliveryId: external_exports.string().max(500).nullable(),
18879
+ contentType: external_exports.string().max(200),
18880
+ byteLength: external_exports.number().int().min(0),
18881
+ isTest: external_exports.boolean(),
18882
+ replayedFromDeliveryId: WebhookDeliveryId.nullable(),
18883
+ failureCode: WebhookDeliveryFailureCode.nullable(),
18884
+ resultSummary: external_exports.string().max(4e3).nullable(),
18885
+ receivedAt: IsoDate,
18886
+ completedAt: IsoDate.nullable()
18887
+ }).strict();
18888
+ var WebhookDeliveryDetail = WebhookDelivery.extend({
18889
+ /** Admin-only retained body. Null for rejected deliveries and expired bodies. */
18890
+ payload: external_exports.string().max(1e6).nullable()
18891
+ }).strict();
18892
+ var ListWebhookDeliveriesResponse = external_exports.object({
18893
+ deliveries: external_exports.array(WebhookDelivery).max(100),
18894
+ nextCursor: external_exports.string().max(1e3).nullable()
18895
+ }).strict();
18896
+ var TestWebhookDeliveryRequest = external_exports.object({
18897
+ payload: external_exports.string().min(1).max(1e5),
18898
+ contentType: external_exports.string().min(1).max(200).default("application/json"),
18899
+ externalDeliveryId: external_exports.string().min(1).max(500).optional()
18900
+ }).strict();
18901
+
18758
18902
  // ../../packages/contracts/src/manager.ts
18759
18903
  var MANAGER_DEFAULT_MODEL = "gpt-5.6-luna";
18760
18904
  var MANAGER_DISPLAY_NAME_MAX = 60;
@@ -18919,7 +19063,9 @@ var ConversationEventProjection = external_exports.discriminatedUnion("kind", [
18919
19063
  /** Present only for a secure Credential entry card; never a value (MG-17). */
18920
19064
  credentialRequestId: ManagerCredentialRequestId.nullable().optional(),
18921
19065
  /** Present only for a generic API setup/invocation card; never credentials (MG-20). */
18922
- apiActionId: ManagerApiActionId.nullable().optional()
19066
+ apiActionId: ManagerApiActionId.nullable().optional(),
19067
+ /** Present only for a Webhook Automation secure setup card (MG-21). */
19068
+ webhookActionId: ManagerWebhookActionId.nullable().optional()
18923
19069
  }).strict(),
18924
19070
  /** A mirrored child-Task event: what the teammate wrote or became. */
18925
19071
  external_exports.object({
@@ -19125,6 +19271,45 @@ var ManagerApiActionResponse = external_exports.object({
19125
19271
  action: ManagerApiActionProjection,
19126
19272
  oauth: ManagerIntegrationOAuthStart.nullable()
19127
19273
  }).strict();
19274
+ var ManagerWebhookActionStatus = external_exports.enum([
19275
+ "awaiting_entry",
19276
+ "completed",
19277
+ "cancelled",
19278
+ "expired",
19279
+ "failed"
19280
+ ]);
19281
+ var ManagerWebhookActionBase = {
19282
+ id: ManagerWebhookActionId,
19283
+ conversationId: ConversationId,
19284
+ status: ManagerWebhookActionStatus,
19285
+ suggestedAuthentication: external_exports.enum(["hmac", "github", "stripe", "bearer", "basic", "none"]),
19286
+ outcome: external_exports.string().max(2e3).nullable(),
19287
+ createdAt: external_exports.string(),
19288
+ expiresAt: external_exports.string()
19289
+ };
19290
+ var ManagerWebhookCreateActionProjection = external_exports.object({
19291
+ ...ManagerWebhookActionBase,
19292
+ kind: external_exports.literal("create"),
19293
+ name: external_exports.string().min(1).max(120),
19294
+ instructions: external_exports.string().min(1).max(1e5),
19295
+ assignedAgentId: AgentId.nullable(),
19296
+ rateLimitPerMinute: external_exports.number().int().min(1).max(1e3),
19297
+ retentionDays: external_exports.number().int().min(1).max(90),
19298
+ webhook: WebhookAutomation.nullable()
19299
+ }).strict();
19300
+ var ManagerWebhookAuthenticationActionProjection = external_exports.object({
19301
+ ...ManagerWebhookActionBase,
19302
+ kind: external_exports.literal("authentication"),
19303
+ webhook: WebhookAutomation.nullable()
19304
+ }).strict();
19305
+ var ManagerWebhookActionProjection = external_exports.discriminatedUnion("kind", [
19306
+ ManagerWebhookCreateActionProjection,
19307
+ ManagerWebhookAuthenticationActionProjection
19308
+ ]);
19309
+ var SubmitManagerWebhookActionRequest = external_exports.object({
19310
+ requestId: external_exports.uuid(),
19311
+ authentication: WebhookAuthenticationSetup
19312
+ }).strict();
19128
19313
  var NonEmptyTaskRunnerSelection = TaskRunnerSelection.refine(
19129
19314
  (selection) => selection.type !== void 0 || selection.model !== void 0 || selection.effort !== void 0,
19130
19315
  "choose at least one runtime preference"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zixt/host",
3
- "version": "0.0.100",
3
+ "version": "0.0.102",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./src/client.ts",