@vm0/cli 9.258.3 → 9.259.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/{agent-3YFWXWCK.js → agent-JQQRVMD7.js} +7 -7
  2. package/{banking-5C3BH6CH.js → banking-KC4W73VE.js} +5 -5
  3. package/{browser-YFUXU5UM.js → browser-LR3DADKC.js} +5 -5
  4. package/{chat-OIH6VPS4.js → chat-VIGRWHPY.js} +6 -6
  5. package/{chunk-H6E7Z574.js → chunk-5MEPMQ7A.js} +92 -15520
  6. package/chunk-5MEPMQ7A.js.map +1 -0
  7. package/{chunk-U2KCI5KZ.js → chunk-EJLAGPIJ.js} +2 -2
  8. package/{chunk-JLN2RRCR.js → chunk-GNZ2MIAC.js} +21 -6
  9. package/chunk-GNZ2MIAC.js.map +1 -0
  10. package/{chunk-7ULUPI3R.js → chunk-H5KBW6P3.js} +4 -4
  11. package/{chunk-TKX4SN4I.js → chunk-LHM5WPCO.js} +3 -3
  12. package/{chunk-WIUYNM7M.js → chunk-O6FQT7NZ.js} +369 -86
  13. package/chunk-O6FQT7NZ.js.map +1 -0
  14. package/{chunk-BEF2DQIX.js → chunk-OI4YMCJU.js} +2 -2
  15. package/{chunk-NA7HNSSZ.js → chunk-PIBXO6CM.js} +113 -15
  16. package/chunk-PIBXO6CM.js.map +1 -0
  17. package/{chunk-DMKM5PND.js → chunk-SKMQRNID.js} +2 -2
  18. package/{chunk-FZJ2XUR4.js → chunk-TMDC4SKZ.js} +2 -2
  19. package/{chunk-HRRR3UPQ.js → chunk-TZEKMC6N.js} +2 -2
  20. package/{chunk-IE6NJ5UQ.js → chunk-YXYURWWD.js} +2 -2
  21. package/{computer-use-NZMZEQLY.js → computer-use-JV3O5BCX.js} +5 -5
  22. package/{connector-3C3IDLI7.js → connector-VVOW4MSD.js} +8 -8
  23. package/{credit-AB52NZMC.js → credit-3JBUIS3Z.js} +7 -7
  24. package/{developer-support-BHII6EHU.js → developer-support-TLA5FL4Y.js} +5 -5
  25. package/{doctor-GXGSMAYS.js → doctor-X6E3PSMM.js} +7 -7
  26. package/{feishu-T2ROCETV.js → feishu-3JGPSMPR.js} +5 -5
  27. package/{finance-UTA6RYUD.js → finance-7IUZQQU7.js} +5 -5
  28. package/{generate-AJRHLIIB.js → generate-VAWWFPAY.js} +63 -19
  29. package/generate-VAWWFPAY.js.map +1 -0
  30. package/{github-NVIULCCZ.js → github-MUZGDKIN.js} +5 -5
  31. package/{goal-U3XU36JH.js → goal-WMCNENJA.js} +5 -5
  32. package/{host-GRKQH64Z.js → host-Z2HQBNVA.js} +5 -5
  33. package/{logs-V7ZXE2TQ.js → logs-WEALPJFB.js} +7 -7
  34. package/{mail-JQUBV2PI.js → mail-J7J3DQON.js} +7 -7
  35. package/{maps-GKFNOGPX.js → maps-H3P2EJE5.js} +5 -5
  36. package/{model-UAJXSOHI.js → model-A4NWK32Y.js} +6 -6
  37. package/{model-provider-I6RHB6YL.js → model-provider-7VHEZL5H.js} +6 -6
  38. package/{org-3HFKGWZJ.js → org-2YK6BT7B.js} +5 -5
  39. package/package.json +1 -1
  40. package/{people-search-ZFB6LHJB.js → people-search-HEGGKU6A.js} +5 -5
  41. package/{phone-WCU2TO6N.js → phone-QU2L7CWL.js} +5 -5
  42. package/{preference-5FUBMK7X.js → preference-GWOW6GFK.js} +5 -5
  43. package/{resource-UUUOZT3H.js → resource-GVGDKYH4.js} +6 -6
  44. package/{scrape-T3IJDQB2.js → scrape-ISQTTO7V.js} +5 -5
  45. package/{search-PJ4WOXXI.js → search-U4AJDSSZ.js} +7 -7
  46. package/{secret-IEPJWEVY.js → secret-CJLCUARN.js} +5 -5
  47. package/{slack-J7R6ZX72.js → slack-CM5JGA32.js} +5 -5
  48. package/{teams-HX55ANK4.js → teams-EV3GC4F7.js} +5 -5
  49. package/{telegram-IGWCS3MB.js → telegram-JHGCORZ2.js} +5 -5
  50. package/{upgrade-IABZ6CX4.js → upgrade-PWJB2KKS.js} +4 -4
  51. package/{variable-PZG3RMCU.js → variable-Z53I5LCW.js} +5 -5
  52. package/{video-5ZN33M7R.js → video-Y23O465D.js} +4 -4
  53. package/{weather-6QKJJPQX.js → weather-HSLWWOVB.js} +5 -5
  54. package/{web-HY3RSUJT.js → web-G3GL5JAY.js} +5 -5
  55. package/{web-search-SACA7N6J.js → web-search-5ZBSTZLR.js} +5 -5
  56. package/{whoami-XCZWHOOX.js → whoami-KFSGXKML.js} +7 -7
  57. package/{workflow-OGLYDZYD.js → workflow-WDHCAEJ6.js} +5 -5
  58. package/zero.js +43 -43
  59. package/chunk-H6E7Z574.js.map +0 -1
  60. package/chunk-JLN2RRCR.js.map +0 -1
  61. package/chunk-NA7HNSSZ.js.map +0 -1
  62. package/chunk-WIUYNM7M.js.map +0 -1
  63. package/generate-AJRHLIIB.js.map +0 -1
  64. /package/{agent-3YFWXWCK.js.map → agent-JQQRVMD7.js.map} +0 -0
  65. /package/{banking-5C3BH6CH.js.map → banking-KC4W73VE.js.map} +0 -0
  66. /package/{browser-YFUXU5UM.js.map → browser-LR3DADKC.js.map} +0 -0
  67. /package/{chat-OIH6VPS4.js.map → chat-VIGRWHPY.js.map} +0 -0
  68. /package/{chunk-U2KCI5KZ.js.map → chunk-EJLAGPIJ.js.map} +0 -0
  69. /package/{chunk-7ULUPI3R.js.map → chunk-H5KBW6P3.js.map} +0 -0
  70. /package/{chunk-TKX4SN4I.js.map → chunk-LHM5WPCO.js.map} +0 -0
  71. /package/{chunk-BEF2DQIX.js.map → chunk-OI4YMCJU.js.map} +0 -0
  72. /package/{chunk-DMKM5PND.js.map → chunk-SKMQRNID.js.map} +0 -0
  73. /package/{chunk-FZJ2XUR4.js.map → chunk-TMDC4SKZ.js.map} +0 -0
  74. /package/{chunk-HRRR3UPQ.js.map → chunk-TZEKMC6N.js.map} +0 -0
  75. /package/{chunk-IE6NJ5UQ.js.map → chunk-YXYURWWD.js.map} +0 -0
  76. /package/{computer-use-NZMZEQLY.js.map → computer-use-JV3O5BCX.js.map} +0 -0
  77. /package/{connector-3C3IDLI7.js.map → connector-VVOW4MSD.js.map} +0 -0
  78. /package/{credit-AB52NZMC.js.map → credit-3JBUIS3Z.js.map} +0 -0
  79. /package/{developer-support-BHII6EHU.js.map → developer-support-TLA5FL4Y.js.map} +0 -0
  80. /package/{doctor-GXGSMAYS.js.map → doctor-X6E3PSMM.js.map} +0 -0
  81. /package/{feishu-T2ROCETV.js.map → feishu-3JGPSMPR.js.map} +0 -0
  82. /package/{finance-UTA6RYUD.js.map → finance-7IUZQQU7.js.map} +0 -0
  83. /package/{github-NVIULCCZ.js.map → github-MUZGDKIN.js.map} +0 -0
  84. /package/{goal-U3XU36JH.js.map → goal-WMCNENJA.js.map} +0 -0
  85. /package/{host-GRKQH64Z.js.map → host-Z2HQBNVA.js.map} +0 -0
  86. /package/{logs-V7ZXE2TQ.js.map → logs-WEALPJFB.js.map} +0 -0
  87. /package/{mail-JQUBV2PI.js.map → mail-J7J3DQON.js.map} +0 -0
  88. /package/{maps-GKFNOGPX.js.map → maps-H3P2EJE5.js.map} +0 -0
  89. /package/{model-UAJXSOHI.js.map → model-A4NWK32Y.js.map} +0 -0
  90. /package/{model-provider-I6RHB6YL.js.map → model-provider-7VHEZL5H.js.map} +0 -0
  91. /package/{org-3HFKGWZJ.js.map → org-2YK6BT7B.js.map} +0 -0
  92. /package/{people-search-ZFB6LHJB.js.map → people-search-HEGGKU6A.js.map} +0 -0
  93. /package/{phone-WCU2TO6N.js.map → phone-QU2L7CWL.js.map} +0 -0
  94. /package/{preference-5FUBMK7X.js.map → preference-GWOW6GFK.js.map} +0 -0
  95. /package/{resource-UUUOZT3H.js.map → resource-GVGDKYH4.js.map} +0 -0
  96. /package/{scrape-T3IJDQB2.js.map → scrape-ISQTTO7V.js.map} +0 -0
  97. /package/{search-PJ4WOXXI.js.map → search-U4AJDSSZ.js.map} +0 -0
  98. /package/{secret-IEPJWEVY.js.map → secret-CJLCUARN.js.map} +0 -0
  99. /package/{slack-J7R6ZX72.js.map → slack-CM5JGA32.js.map} +0 -0
  100. /package/{teams-HX55ANK4.js.map → teams-EV3GC4F7.js.map} +0 -0
  101. /package/{telegram-IGWCS3MB.js.map → telegram-JHGCORZ2.js.map} +0 -0
  102. /package/{upgrade-IABZ6CX4.js.map → upgrade-PWJB2KKS.js.map} +0 -0
  103. /package/{variable-PZG3RMCU.js.map → variable-Z53I5LCW.js.map} +0 -0
  104. /package/{video-5ZN33M7R.js.map → video-Y23O465D.js.map} +0 -0
  105. /package/{weather-6QKJJPQX.js.map → weather-HSLWWOVB.js.map} +0 -0
  106. /package/{web-HY3RSUJT.js.map → web-G3GL5JAY.js.map} +0 -0
  107. /package/{web-search-SACA7N6J.js.map → web-search-5ZBSTZLR.js.map} +0 -0
  108. /package/{whoami-XCZWHOOX.js.map → whoami-KFSGXKML.js.map} +0 -0
  109. /package/{workflow-OGLYDZYD.js.map → workflow-WDHCAEJ6.js.map} +0 -0
@@ -21,7 +21,7 @@ import {
21
21
  updateOrgModelPoliciesRequestSchema,
22
22
  upsertModelProviderRequestSchema,
23
23
  upsertModelProviderResponseSchema
24
- } from "./chunk-TKX4SN4I.js";
24
+ } from "./chunk-LHM5WPCO.js";
25
25
  import {
26
26
  __commonJS,
27
27
  __esm,
@@ -1932,6 +1932,27 @@ init_esm_shims();
1932
1932
  // ../../packages/api-contracts/src/contracts/chat-threads.ts
1933
1933
  init_esm_shims();
1934
1934
 
1935
+ // ../../packages/api-contracts/src/contracts/chat-events.ts
1936
+ init_esm_shims();
1937
+ var CHAT_EVENT_TYPES = [
1938
+ "input.prompt",
1939
+ "input.rejected",
1940
+ "output.message",
1941
+ "output.error",
1942
+ "output.thinking",
1943
+ "output.followups",
1944
+ "run.queued",
1945
+ "run.dequeued",
1946
+ "run.completed",
1947
+ "run.failed",
1948
+ "run.cancelled",
1949
+ "control.interrupt",
1950
+ "control.revoke",
1951
+ "goal.changed",
1952
+ "usage.recorded"
1953
+ ];
1954
+ var chatEventTypeSchema = external_exports.enum(CHAT_EVENT_TYPES);
1955
+
1935
1956
  // ../../packages/api-contracts/src/contracts/runs.ts
1936
1957
  init_esm_shims();
1937
1958
 
@@ -3301,12 +3322,6 @@ var artifactsListResponseSchema = external_exports.object({
3301
3322
  */
3302
3323
  syncUntil: external_exports.string().datetime().optional()
3303
3324
  });
3304
- var artifactFavoritesResponseSchema = external_exports.object({
3305
- artifactUrls: external_exports.array(external_exports.string())
3306
- });
3307
- var artifactFavoriteBodySchema = external_exports.object({
3308
- artifactUrl: external_exports.string().min(1)
3309
- });
3310
3325
  var imageArtifactEditSnapshotItemSchema = external_exports.object({
3311
3326
  url: external_exports.string().url(),
3312
3327
  x: external_exports.number(),
@@ -3504,8 +3519,9 @@ var workflowSnapshotSchema = external_exports.object({
3504
3519
  automationId: external_exports.string().uuid().optional(),
3505
3520
  triggerBrief: external_exports.string().nullable().optional()
3506
3521
  });
3507
- var pagedChatMessageBaseSchema = external_exports.object({
3522
+ var chatEventBaseSchema = external_exports.object({
3508
3523
  id: external_exports.string(),
3524
+ threadId: external_exports.string(),
3509
3525
  content: external_exports.string().nullable(),
3510
3526
  runId: external_exports.string().optional(),
3511
3527
  runGroupId: external_exports.string().optional(),
@@ -3514,16 +3530,10 @@ var pagedChatMessageBaseSchema = external_exports.object({
3514
3530
  feishuChatOpenUrl: external_exports.string().url().optional(),
3515
3531
  isGoalRun: external_exports.boolean().optional(),
3516
3532
  runEventId: external_exports.string().optional(),
3517
- goalEvent: zeroGoalEventSchema.optional(),
3518
3533
  goalSnapshot: external_exports.object({
3519
3534
  objectiveBrief: external_exports.string().min(1)
3520
3535
  }).optional(),
3521
- usage: chatMessageUsagePayloadSchema.optional(),
3522
- revokesMessageId: external_exports.string().optional(),
3523
- interruptsRunId: external_exports.string().optional(),
3524
- error: external_exports.string().optional(),
3525
- attachFiles: external_exports.array(resolvedAttachFileSchema).optional(),
3526
- generationTemplate: generationTemplateRequestSchema.optional(),
3536
+ revokesEventId: external_exports.string().optional(),
3527
3537
  /** Server-assigned strict position within the chat thread. */
3528
3538
  seqId: external_exports.number().int().positive(),
3529
3539
  sequenceNumber: external_exports.number().nullable().optional(),
@@ -3544,18 +3554,194 @@ var chatMessageRecommendedFollowupsSchema = external_exports.preprocess((value)
3544
3554
  return parsed.success ? [parsed.data] : [];
3545
3555
  });
3546
3556
  }, external_exports.array(chatMessageRecommendedFollowupSchema));
3547
- var pagedChatMessageSchema = external_exports.discriminatedUnion("role", [
3548
- pagedChatMessageBaseSchema.extend({
3557
+ var inputPromptEventSchema = chatEventBaseSchema.extend({
3558
+ eventType: external_exports.literal("input.prompt"),
3559
+ structuredPrompt: userMessageDocumentSchema.optional(),
3560
+ attachFiles: external_exports.array(resolvedAttachFileSchema).optional(),
3561
+ generationTemplate: generationTemplateRequestSchema.optional()
3562
+ }).strict();
3563
+ var inputRejectedEventSchema = chatEventBaseSchema.extend({
3564
+ eventType: external_exports.literal("input.rejected"),
3565
+ structuredPrompt: userMessageDocumentSchema.optional(),
3566
+ error: external_exports.string(),
3567
+ attachFiles: external_exports.array(resolvedAttachFileSchema).optional(),
3568
+ generationTemplate: generationTemplateRequestSchema.optional()
3569
+ }).strict();
3570
+ var outputMessageEventSchema = chatEventBaseSchema.extend({
3571
+ eventType: external_exports.literal("output.message"),
3572
+ content: external_exports.string()
3573
+ }).strict();
3574
+ var outputErrorEventSchema = chatEventBaseSchema.extend({
3575
+ eventType: external_exports.literal("output.error"),
3576
+ error: external_exports.string()
3577
+ }).strict();
3578
+ var outputThinkingEventSchema = chatEventBaseSchema.extend({
3579
+ eventType: external_exports.literal("output.thinking"),
3580
+ content: external_exports.null(),
3581
+ thinking: external_exports.string()
3582
+ }).strict();
3583
+ var outputFollowupsEventSchema = chatEventBaseSchema.extend({
3584
+ eventType: external_exports.literal("output.followups"),
3585
+ content: external_exports.null(),
3586
+ recommendedFollowups: chatMessageRecommendedFollowupsSchema
3587
+ }).strict();
3588
+ var runQueuedEventSchema = chatEventBaseSchema.extend({
3589
+ eventType: external_exports.literal("run.queued"),
3590
+ runId: external_exports.string(),
3591
+ content: external_exports.string()
3592
+ }).strict();
3593
+ var runDequeuedEventSchema = chatEventBaseSchema.extend({
3594
+ eventType: external_exports.literal("run.dequeued"),
3595
+ runId: external_exports.string(),
3596
+ content: external_exports.null(),
3597
+ revokesEventId: external_exports.string()
3598
+ }).strict();
3599
+ var runCompletedEventSchema = chatEventBaseSchema.extend({
3600
+ eventType: external_exports.literal("run.completed"),
3601
+ runId: external_exports.string(),
3602
+ attachFiles: external_exports.array(resolvedAttachFileSchema).optional(),
3603
+ runLifecycleEvent: external_exports.literal("completed")
3604
+ }).strict();
3605
+ var runFailedEventSchema = chatEventBaseSchema.extend({
3606
+ eventType: external_exports.literal("run.failed"),
3607
+ runId: external_exports.string(),
3608
+ error: external_exports.string().optional(),
3609
+ runLifecycleEvent: external_exports.literal("failed")
3610
+ }).strict();
3611
+ var runCancelledEventSchema = chatEventBaseSchema.extend({
3612
+ eventType: external_exports.literal("run.cancelled"),
3613
+ runId: external_exports.string(),
3614
+ error: external_exports.string().optional(),
3615
+ runLifecycleEvent: external_exports.literal("cancelled")
3616
+ }).strict();
3617
+ var controlInterruptEventSchema = chatEventBaseSchema.extend({
3618
+ eventType: external_exports.literal("control.interrupt"),
3619
+ content: external_exports.null(),
3620
+ interruptsRunId: external_exports.string()
3621
+ }).strict();
3622
+ var controlRevokeEventSchema = chatEventBaseSchema.extend({
3623
+ eventType: external_exports.literal("control.revoke"),
3624
+ content: external_exports.null(),
3625
+ revokesEventId: external_exports.string()
3626
+ }).strict();
3627
+ var goalChangedEventSchema = chatEventBaseSchema.extend({
3628
+ eventType: external_exports.literal("goal.changed"),
3629
+ content: external_exports.null(),
3630
+ goalEvent: zeroGoalEventSchema
3631
+ }).strict();
3632
+ var usageRecordedEventSchema = chatEventBaseSchema.extend({
3633
+ eventType: external_exports.literal("usage.recorded"),
3634
+ runId: external_exports.string(),
3635
+ content: external_exports.null(),
3636
+ usage: chatMessageUsagePayloadSchema
3637
+ }).strict();
3638
+ var chatEventSchema = external_exports.discriminatedUnion("eventType", [
3639
+ inputPromptEventSchema,
3640
+ inputRejectedEventSchema,
3641
+ outputMessageEventSchema,
3642
+ outputErrorEventSchema,
3643
+ outputThinkingEventSchema,
3644
+ outputFollowupsEventSchema,
3645
+ runQueuedEventSchema,
3646
+ runDequeuedEventSchema,
3647
+ runCompletedEventSchema,
3648
+ runFailedEventSchema,
3649
+ runCancelledEventSchema,
3650
+ controlInterruptEventSchema,
3651
+ controlRevokeEventSchema,
3652
+ goalChangedEventSchema,
3653
+ usageRecordedEventSchema
3654
+ ]);
3655
+ var userEventCompatibilityResponseShape = {
3656
+ /**
3657
+ * @deprecated Derived compatibility field for the preceding App release.
3658
+ * Canonical ChatEvent consumers derive presentation role from eventType.
3659
+ */
3660
+ role: external_exports.literal("user"),
3661
+ /**
3662
+ * @deprecated Use revokesEventId.
3663
+ */
3664
+ revokesMessageId: external_exports.string().optional()
3665
+ };
3666
+ var assistantEventCompatibilityResponseShape = {
3667
+ /**
3668
+ * @deprecated Derived compatibility field for the preceding App release.
3669
+ * Canonical ChatEvent consumers derive presentation role from eventType.
3670
+ */
3671
+ role: external_exports.literal("assistant"),
3672
+ /**
3673
+ * @deprecated Use revokesEventId.
3674
+ */
3675
+ revokesMessageId: external_exports.string().optional()
3676
+ };
3677
+ var chatEventResponseSchema = external_exports.discriminatedUnion("eventType", [
3678
+ inputPromptEventSchema.extend(userEventCompatibilityResponseShape).strict(),
3679
+ inputRejectedEventSchema.extend(userEventCompatibilityResponseShape).strict(),
3680
+ outputMessageEventSchema.extend(assistantEventCompatibilityResponseShape).strict(),
3681
+ outputErrorEventSchema.extend(assistantEventCompatibilityResponseShape).strict(),
3682
+ outputThinkingEventSchema.extend(assistantEventCompatibilityResponseShape).strict(),
3683
+ outputFollowupsEventSchema.extend(assistantEventCompatibilityResponseShape).strict(),
3684
+ runQueuedEventSchema.extend(assistantEventCompatibilityResponseShape).strict(),
3685
+ runDequeuedEventSchema.extend({
3686
+ ...assistantEventCompatibilityResponseShape,
3687
+ revokesMessageId: external_exports.string()
3688
+ }).strict(),
3689
+ runCompletedEventSchema.extend(assistantEventCompatibilityResponseShape).strict(),
3690
+ runFailedEventSchema.extend(assistantEventCompatibilityResponseShape).strict(),
3691
+ runCancelledEventSchema.extend(assistantEventCompatibilityResponseShape).strict(),
3692
+ controlInterruptEventSchema.extend(userEventCompatibilityResponseShape).strict(),
3693
+ controlRevokeEventSchema.extend({
3694
+ ...userEventCompatibilityResponseShape,
3695
+ revokesMessageId: external_exports.string()
3696
+ }).strict(),
3697
+ goalChangedEventSchema.extend(assistantEventCompatibilityResponseShape).strict(),
3698
+ usageRecordedEventSchema.extend(assistantEventCompatibilityResponseShape).strict()
3699
+ ]);
3700
+ var legacyPagedChatMessageBaseSchema = external_exports.object({
3701
+ id: external_exports.string(),
3702
+ content: external_exports.string().nullable(),
3703
+ runId: external_exports.string().optional(),
3704
+ runGroupId: external_exports.string().optional(),
3705
+ triggerSource: triggerSourceSchema.optional(),
3706
+ slackMessagePermalink: external_exports.string().url().optional(),
3707
+ feishuChatOpenUrl: external_exports.string().url().optional(),
3708
+ isGoalRun: external_exports.boolean().optional(),
3709
+ runEventId: external_exports.string().optional(),
3710
+ goalEvent: zeroGoalEventSchema.optional(),
3711
+ goalSnapshot: external_exports.object({
3712
+ objectiveBrief: external_exports.string().min(1)
3713
+ }).optional(),
3714
+ usage: chatMessageUsagePayloadSchema.optional(),
3715
+ revokesMessageId: external_exports.string().optional(),
3716
+ interruptsRunId: external_exports.string().optional(),
3717
+ error: external_exports.string().optional(),
3718
+ attachFiles: external_exports.array(resolvedAttachFileSchema).optional(),
3719
+ generationTemplate: generationTemplateRequestSchema.optional(),
3720
+ seqId: external_exports.number().int().positive(),
3721
+ sequenceNumber: external_exports.number().nullable().optional(),
3722
+ workflowSnapshot: workflowSnapshotSchema.optional(),
3723
+ createdAt: external_exports.string()
3724
+ });
3725
+ var legacyPagedChatMessageSchema = external_exports.discriminatedUnion("role", [
3726
+ legacyPagedChatMessageBaseSchema.extend({
3549
3727
  role: external_exports.literal("user"),
3550
3728
  structuredPrompt: userMessageDocumentSchema.optional()
3551
3729
  }).strict(),
3552
- pagedChatMessageBaseSchema.extend({
3730
+ legacyPagedChatMessageBaseSchema.extend({
3553
3731
  role: external_exports.literal("assistant"),
3554
3732
  thinking: external_exports.string().optional(),
3555
3733
  runLifecycleEvent: external_exports.enum(["completed", "failed", "cancelled"]).optional(),
3556
3734
  recommendedFollowups: chatMessageRecommendedFollowupsSchema.optional()
3557
- })
3735
+ }).strict()
3736
+ ]);
3737
+ var chatMessageCompatibilityResponseSchema = external_exports.union([
3738
+ chatEventResponseSchema,
3739
+ legacyPagedChatMessageSchema
3558
3740
  ]);
3741
+ if (chatEventTypeSchema.options.length !== chatEventSchema.options.length || chatEventTypeSchema.options.length !== chatEventResponseSchema.options.length) {
3742
+ throw new Error("ChatEvent schema must cover the complete event catalog");
3743
+ }
3744
+ var pagedChatMessageSchema = legacyPagedChatMessageSchema;
3559
3745
  var chatThreadDetailSchema = external_exports.object({
3560
3746
  /**
3561
3747
  * Read-state watermark. A thread is unread when its latest run-finish marker
@@ -3630,44 +3816,57 @@ var chatThreadModelSelectionUpdateBodySchema = external_exports.preprocess(
3630
3816
  var chatRunOptionsRequestSchema = external_exports.object({
3631
3817
  codexServiceTier: codexServiceTierSchema.optional()
3632
3818
  });
3819
+ var chatNormalSendBodyShape = {
3820
+ agentId: external_exports.string().min(1),
3821
+ prompt: external_exports.string().min(1),
3822
+ threadId: external_exports.string().optional(),
3823
+ clientThreadId: external_exports.string().uuid().optional(),
3824
+ chatThreadEventId: chatThreadEventIdSchema.optional(),
3825
+ // Client-generated UUID for the sort touch created by direct user sends.
3826
+ // Lets event-sourced clients reconcile optimistic sidebar recency by id.
3827
+ chatThreadSortEventId: chatThreadEventIdSchema.optional(),
3828
+ /**
3829
+ * Selected model id. The API resolves the effective provider from org
3830
+ * policy and available credentials. Existing threads may omit it to
3831
+ * reuse the thread's persisted model.
3832
+ */
3833
+ model: selectedModelRequestSchema.optional(),
3834
+ runOptions: chatRunOptionsRequestSchema.optional(),
3835
+ structuredPrompt: userMessageDocumentSchema.optional(),
3836
+ generationTemplate: generationTemplateRequestSchema.optional(),
3837
+ computerUseHostId: external_exports.string().uuid().nullable().optional(),
3838
+ // Optional for backward compatibility: older clients that omit this field
3839
+ // still trigger title generation (server guards with !== false, not === true).
3840
+ hasTextContent: external_exports.boolean().optional(),
3841
+ attachFiles: external_exports.array(attachFileSchema).optional(),
3842
+ // Preview evaluation escape hatch: when enabled, the request asks the
3843
+ // runner to bypass preview mock CLIs and use the real agent runtime.
3844
+ realAgentInPreview: external_exports.boolean().optional()
3845
+ };
3633
3846
  var chatMessageNormalSendBodySchema = external_exports.preprocess(
3634
3847
  (value) => {
3635
3848
  return normalizeLegacyModelSelectionInput(value, { allowNull: false });
3636
3849
  },
3637
3850
  external_exports.object({
3638
- agentId: external_exports.string().min(1),
3639
- prompt: external_exports.string().min(1),
3640
- threadId: external_exports.string().optional(),
3641
- clientThreadId: external_exports.string().uuid().optional(),
3642
- chatThreadEventId: chatThreadEventIdSchema.optional(),
3643
- // Client-generated UUID for the sort touch created by direct user sends.
3644
- // Lets event-sourced clients reconcile optimistic sidebar recency by id.
3645
- chatThreadSortEventId: chatThreadEventIdSchema.optional(),
3646
- /**
3647
- * Selected model id. The API resolves the effective provider from org
3648
- * policy and available credentials. Existing threads may omit it to
3649
- * reuse the thread's persisted model.
3650
- */
3651
- model: selectedModelRequestSchema.optional(),
3652
- runOptions: chatRunOptionsRequestSchema.optional(),
3653
- structuredPrompt: userMessageDocumentSchema.optional(),
3654
- generationTemplate: generationTemplateRequestSchema.optional(),
3655
- computerUseHostId: external_exports.string().uuid().nullable().optional(),
3656
- // Optional for backward compatibility: older clients that omit this field
3657
- // still trigger title generation (server guards with !== false, not === true).
3658
- hasTextContent: external_exports.boolean().optional(),
3659
- attachFiles: external_exports.array(attachFileSchema).optional(),
3851
+ ...chatNormalSendBodyShape,
3660
3852
  // Client-generated UUID used as the user message's primary key.
3661
- // Lets the client render an optimistic row and reconcile with the
3662
- // server row by id — no temp-id swap, no React remount.
3663
3853
  clientMessageId: external_exports.string().uuid().optional(),
3664
- // Preview evaluation escape hatch: when enabled, the request asks the
3665
- // runner to bypass preview mock CLIs and use the real agent runtime.
3666
- realAgentInPreview: external_exports.boolean().optional(),
3667
3854
  revokesMessageId: external_exports.string().min(1).optional(),
3668
3855
  interruptsRunId: external_exports.undefined().optional()
3669
3856
  })
3670
3857
  );
3858
+ var chatEventNormalSendBodySchema = external_exports.preprocess(
3859
+ (value) => {
3860
+ return normalizeLegacyModelSelectionInput(value, { allowNull: false });
3861
+ },
3862
+ external_exports.object({
3863
+ ...chatNormalSendBodyShape,
3864
+ // Client-generated UUID used as the user event's primary key.
3865
+ clientEventId: external_exports.string().uuid().optional(),
3866
+ revokesEventId: external_exports.string().min(1).optional(),
3867
+ interruptsRunId: external_exports.undefined().optional()
3868
+ })
3869
+ );
3671
3870
  var chatThreadsContract = c13.router({
3672
3871
  snapshot: {
3673
3872
  method: "GET",
@@ -3783,6 +3982,9 @@ var chatThreadThreadIdPathParamsSchema = external_exports.object({
3783
3982
  var chatThreadMessagePathParamsSchema = chatThreadThreadIdPathParamsSchema.extend({
3784
3983
  messageId: external_exports.string().uuid()
3785
3984
  });
3985
+ var chatThreadEventPathParamsSchema = chatThreadThreadIdPathParamsSchema.extend({
3986
+ eventId: external_exports.string().uuid()
3987
+ });
3786
3988
  var chatThreadByIdContract = c13.router({
3787
3989
  get: {
3788
3990
  method: "GET",
@@ -4060,6 +4262,70 @@ var chatMessagesContract = c13.router({
4060
4262
  summary: "Send a chat message (create thread + run + association)"
4061
4263
  }
4062
4264
  });
4265
+ var chatEventsContract = c13.router({
4266
+ send: {
4267
+ method: "POST",
4268
+ path: "/api/zero/chat/events",
4269
+ headers: authHeadersSchema,
4270
+ body: external_exports.union([
4271
+ chatEventNormalSendBodySchema,
4272
+ external_exports.object({
4273
+ agentId: external_exports.string().min(1),
4274
+ threadId: external_exports.string().min(1),
4275
+ revokesEventId: external_exports.string().min(1),
4276
+ clientEventId: external_exports.string().uuid().optional(),
4277
+ prompt: external_exports.undefined().optional(),
4278
+ clientThreadId: external_exports.undefined().optional(),
4279
+ chatThreadEventId: external_exports.undefined().optional(),
4280
+ chatThreadSortEventId: external_exports.undefined().optional(),
4281
+ model: external_exports.undefined().optional(),
4282
+ runOptions: external_exports.undefined().optional(),
4283
+ structuredPrompt: external_exports.undefined().optional(),
4284
+ generationTemplate: external_exports.undefined().optional(),
4285
+ computerUseHostId: external_exports.undefined().optional(),
4286
+ hasTextContent: external_exports.undefined().optional(),
4287
+ attachFiles: external_exports.undefined().optional(),
4288
+ realAgentInPreview: external_exports.undefined().optional(),
4289
+ interruptsRunId: external_exports.undefined().optional()
4290
+ }),
4291
+ external_exports.object({
4292
+ agentId: external_exports.string().min(1),
4293
+ threadId: external_exports.string().min(1),
4294
+ interruptsRunId: external_exports.string().uuid(),
4295
+ clientEventId: external_exports.string().uuid().optional(),
4296
+ prompt: external_exports.undefined().optional(),
4297
+ clientThreadId: external_exports.undefined().optional(),
4298
+ chatThreadEventId: external_exports.undefined().optional(),
4299
+ chatThreadSortEventId: external_exports.undefined().optional(),
4300
+ model: external_exports.undefined().optional(),
4301
+ runOptions: external_exports.undefined().optional(),
4302
+ structuredPrompt: external_exports.undefined().optional(),
4303
+ generationTemplate: external_exports.undefined().optional(),
4304
+ computerUseHostId: external_exports.undefined().optional(),
4305
+ hasTextContent: external_exports.undefined().optional(),
4306
+ attachFiles: external_exports.undefined().optional(),
4307
+ realAgentInPreview: external_exports.undefined().optional(),
4308
+ revokesEventId: external_exports.undefined().optional()
4309
+ })
4310
+ ]),
4311
+ responses: {
4312
+ 201: external_exports.object({
4313
+ runId: external_exports.string().nullable(),
4314
+ threadId: external_exports.string(),
4315
+ status: runStatusSchema.optional(),
4316
+ createdAt: external_exports.string().optional()
4317
+ }),
4318
+ 400: apiErrorSchema,
4319
+ 401: apiErrorSchema,
4320
+ 402: apiErrorSchema,
4321
+ 403: apiErrorSchema,
4322
+ 404: apiErrorSchema,
4323
+ 409: apiErrorSchema,
4324
+ 422: apiErrorSchema
4325
+ },
4326
+ summary: "Append a chat event and dispatch input when applicable"
4327
+ }
4328
+ });
4063
4329
  var chatSearchMessageSchema = external_exports.object({
4064
4330
  messageId: external_exports.string(),
4065
4331
  chatThreadId: external_exports.string(),
@@ -4145,6 +4411,62 @@ var chatThreadMessagesContract = c13.router({
4145
4411
  summary: "Get a chat message by id for a thread"
4146
4412
  }
4147
4413
  });
4414
+ var precedingChatThreadMessagesContract = c13.router({
4415
+ list: {
4416
+ method: "GET",
4417
+ path: "/api/zero/chat-threads/:threadId/messages",
4418
+ headers: authHeadersSchema,
4419
+ pathParams: chatThreadThreadIdPathParamsSchema,
4420
+ query: chatThreadMessagesContract.list.query,
4421
+ responses: {
4422
+ 200: external_exports.object({
4423
+ messages: external_exports.array(legacyPagedChatMessageSchema),
4424
+ hasHistoryBefore: external_exports.boolean().optional()
4425
+ }),
4426
+ 400: apiErrorSchema,
4427
+ 401: apiErrorSchema,
4428
+ 404: apiErrorSchema
4429
+ },
4430
+ summary: "Read chat messages from the preceding API release"
4431
+ }
4432
+ });
4433
+ var chatThreadEventsContract = c13.router({
4434
+ list: {
4435
+ method: "GET",
4436
+ path: "/api/zero/chat-threads/:threadId/events",
4437
+ headers: authHeadersSchema,
4438
+ pathParams: chatThreadThreadIdPathParamsSchema,
4439
+ query: external_exports.object({
4440
+ sinceSeqId: external_exports.coerce.number().int().positive().optional(),
4441
+ beforeSeqId: external_exports.coerce.number().int().positive().optional(),
4442
+ sinceId: external_exports.string().uuid().optional(),
4443
+ beforeId: external_exports.string().uuid().optional(),
4444
+ limit: external_exports.coerce.number().min(1).max(50).default(50)
4445
+ }),
4446
+ responses: {
4447
+ 200: external_exports.object({
4448
+ events: external_exports.array(chatEventResponseSchema),
4449
+ hasHistoryBefore: external_exports.boolean().optional()
4450
+ }),
4451
+ 400: apiErrorSchema,
4452
+ 401: apiErrorSchema,
4453
+ 404: apiErrorSchema
4454
+ },
4455
+ summary: "Get paginated chat events for a thread"
4456
+ },
4457
+ get: {
4458
+ method: "GET",
4459
+ path: "/api/zero/chat-threads/:threadId/events/:eventId",
4460
+ headers: authHeadersSchema,
4461
+ pathParams: chatThreadEventPathParamsSchema,
4462
+ responses: {
4463
+ 200: chatEventResponseSchema,
4464
+ 401: apiErrorSchema,
4465
+ 404: apiErrorSchema
4466
+ },
4467
+ summary: "Get a chat event by id for a thread"
4468
+ }
4469
+ });
4148
4470
  var chatThreadArtifactsContract = c13.router({
4149
4471
  list: {
4150
4472
  method: "GET",
@@ -4199,45 +4521,6 @@ var artifactsContract = c13.router({
4199
4521
  },
4200
4522
  summary: "List artifacts for the caller's current organization (keyset-paginated)"
4201
4523
  },
4202
- listFavorites: {
4203
- method: "GET",
4204
- path: "/api/zero/artifacts/favorites",
4205
- headers: authHeadersSchema,
4206
- responses: {
4207
- 200: artifactFavoritesResponseSchema,
4208
- 401: apiErrorSchema,
4209
- 403: apiErrorSchema
4210
- },
4211
- summary: "List artifact favorite URLs for the caller"
4212
- },
4213
- favorite: {
4214
- method: "POST",
4215
- path: "/api/zero/artifacts/favorite",
4216
- headers: authHeadersSchema,
4217
- body: artifactFavoriteBodySchema,
4218
- responses: {
4219
- 204: c13.noBody(),
4220
- 400: apiErrorSchema,
4221
- 401: apiErrorSchema,
4222
- 403: apiErrorSchema,
4223
- 404: apiErrorSchema
4224
- },
4225
- summary: "Favorite an artifact for the caller"
4226
- },
4227
- unfavorite: {
4228
- method: "POST",
4229
- path: "/api/zero/artifacts/unfavorite",
4230
- headers: authHeadersSchema,
4231
- body: artifactFavoriteBodySchema,
4232
- responses: {
4233
- 204: c13.noBody(),
4234
- 400: apiErrorSchema,
4235
- 401: apiErrorSchema,
4236
- 403: apiErrorSchema,
4237
- 404: apiErrorSchema
4238
- },
4239
- summary: "Remove an artifact favorite for the caller"
4240
- },
4241
4524
  getImageEditSnapshot: {
4242
4525
  method: "GET",
4243
4526
  path: "/api/zero/artifacts/image-edit-snapshot",
@@ -12690,4 +12973,4 @@ export {
12690
12973
  getHostedSiteFiles,
12691
12974
  getHostedSiteDeployments
12692
12975
  };
12693
- //# sourceMappingURL=chunk-WIUYNM7M.js.map
12976
+ //# sourceMappingURL=chunk-O6FQT7NZ.js.map