@rudderhq/cli 0.2.0-canary.7 → 0.2.0-canary.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -495,302 +495,170 @@ var init_budget = __esm({
495
495
  }
496
496
  });
497
497
 
498
- // ../packages/shared/src/validators/secret.ts
499
- import { z as z3 } from "zod";
500
- var envBindingPlainSchema, envBindingSecretRefSchema, envBindingSchema, envConfigSchema, createSecretSchema, rotateSecretSchema, updateSecretSchema;
501
- var init_secret = __esm({
502
- "../packages/shared/src/validators/secret.ts"() {
503
- "use strict";
504
- init_constants();
505
- envBindingPlainSchema = z3.object({
506
- type: z3.literal("plain"),
507
- value: z3.string()
508
- });
509
- envBindingSecretRefSchema = z3.object({
510
- type: z3.literal("secret_ref"),
511
- secretId: z3.string().uuid(),
512
- version: z3.union([z3.literal("latest"), z3.number().int().positive()]).optional()
513
- });
514
- envBindingSchema = z3.union([
515
- z3.string(),
516
- envBindingPlainSchema,
517
- envBindingSecretRefSchema
518
- ]);
519
- envConfigSchema = z3.record(envBindingSchema);
520
- createSecretSchema = z3.object({
521
- name: z3.string().min(1),
522
- provider: z3.enum(SECRET_PROVIDERS).optional(),
523
- value: z3.string().min(1),
524
- description: z3.string().optional().nullable(),
525
- externalRef: z3.string().optional().nullable()
526
- });
527
- rotateSecretSchema = z3.object({
528
- value: z3.string().min(1),
529
- externalRef: z3.string().optional().nullable()
530
- });
531
- updateSecretSchema = z3.object({
532
- name: z3.string().min(1).optional(),
533
- description: z3.string().optional().nullable(),
534
- externalRef: z3.string().optional().nullable()
535
- });
536
- }
537
- });
538
-
539
- // ../packages/shared/src/validators/model-fallbacks.ts
540
- import { z as z4 } from "zod";
541
- function isRecord(value) {
542
- return typeof value === "object" && value !== null && !Array.isArray(value);
543
- }
544
- function validateModelFallbacksConfig(value, ctx, pathPrefix) {
545
- const fallbackModels = value.modelFallbacks;
546
- if (fallbackModels === void 0) return;
547
- if (!Array.isArray(fallbackModels)) {
548
- ctx.addIssue({
549
- code: z4.ZodIssueCode.custom,
550
- message: "modelFallbacks must be an array",
551
- path: [...pathPrefix, "modelFallbacks"]
552
- });
553
- return;
554
- }
555
- fallbackModels.forEach((fallback, index66) => {
556
- if (typeof fallback === "string") {
557
- if (fallback.trim().length === 0) {
558
- ctx.addIssue({
559
- code: z4.ZodIssueCode.custom,
560
- message: "modelFallbacks string entries must be non-empty",
561
- path: [...pathPrefix, "modelFallbacks", index66]
562
- });
563
- }
564
- return;
565
- }
566
- if (!isRecord(fallback)) {
567
- ctx.addIssue({
568
- code: z4.ZodIssueCode.custom,
569
- message: "modelFallbacks entries must be strings or runtime/model objects",
570
- path: [...pathPrefix, "modelFallbacks", index66]
571
- });
572
- return;
573
- }
574
- if (typeof fallback.agentRuntimeType !== "string" || fallback.agentRuntimeType.trim().length === 0) {
575
- ctx.addIssue({
576
- code: z4.ZodIssueCode.custom,
577
- message: "modelFallbacks entries must include agentRuntimeType",
578
- path: [...pathPrefix, "modelFallbacks", index66, "agentRuntimeType"]
579
- });
580
- } else if (!agentRuntimeTypes.has(fallback.agentRuntimeType)) {
581
- ctx.addIssue({
582
- code: z4.ZodIssueCode.custom,
583
- message: "modelFallbacks entries must include a valid agentRuntimeType",
584
- path: [...pathPrefix, "modelFallbacks", index66, "agentRuntimeType"]
585
- });
586
- }
587
- if (typeof fallback.model !== "string" || fallback.model.trim().length === 0) {
588
- ctx.addIssue({
589
- code: z4.ZodIssueCode.custom,
590
- message: "modelFallbacks entries must include model",
591
- path: [...pathPrefix, "modelFallbacks", index66, "model"]
592
- });
593
- }
594
- if (fallback.config !== void 0 && !isRecord(fallback.config)) {
595
- ctx.addIssue({
596
- code: z4.ZodIssueCode.custom,
597
- message: "modelFallbacks entry config must be an object",
598
- path: [...pathPrefix, "modelFallbacks", index66, "config"]
599
- });
600
- } else if (isRecord(fallback.config) && fallback.config.env !== void 0) {
601
- const parsed = envConfigSchema.safeParse(fallback.config.env);
602
- if (!parsed.success) {
603
- ctx.addIssue({
604
- code: z4.ZodIssueCode.custom,
605
- message: "modelFallbacks entry config.env must be a map of valid env bindings",
606
- path: [...pathPrefix, "modelFallbacks", index66, "config", "env"]
607
- });
608
- }
609
- }
610
- });
611
- }
612
- var agentRuntimeTypes;
613
- var init_model_fallbacks = __esm({
614
- "../packages/shared/src/validators/model-fallbacks.ts"() {
615
- "use strict";
616
- init_constants();
617
- init_secret();
618
- agentRuntimeTypes = new Set(AGENT_RUNTIME_TYPES);
619
- }
620
- });
621
-
622
498
  // ../packages/shared/src/validators/organization.ts
623
- import { z as z5 } from "zod";
624
- var logoAssetIdSchema, brandColorSchema, defaultChatRuntimeConfigSchema, createOrganizationSchema, updateOrganizationSchema, updateOrganizationBrandingSchema, updateOrganizationWorkspaceFileSchema;
499
+ import { z as z3 } from "zod";
500
+ var logoAssetIdSchema, brandColorSchema, createOrganizationSchema, updateOrganizationSchema, updateOrganizationBrandingSchema, updateOrganizationWorkspaceFileSchema;
625
501
  var init_organization = __esm({
626
502
  "../packages/shared/src/validators/organization.ts"() {
627
503
  "use strict";
628
504
  init_constants();
629
- init_model_fallbacks();
630
- logoAssetIdSchema = z5.string().uuid().nullable().optional();
631
- brandColorSchema = z5.string().regex(/^#[0-9a-fA-F]{6}$/).nullable().optional();
632
- defaultChatRuntimeConfigSchema = z5.record(z5.unknown()).superRefine((value, ctx) => {
633
- validateModelFallbacksConfig(value, ctx, []);
634
- });
635
- createOrganizationSchema = z5.object({
636
- name: z5.string().min(1),
637
- description: z5.string().optional().nullable(),
638
- budgetMonthlyCents: z5.number().int().nonnegative().optional().default(0),
639
- defaultChatIssueCreationMode: z5.enum(CHAT_ISSUE_CREATION_MODES).optional().default("manual_approval"),
640
- defaultChatAgentRuntimeType: z5.enum(AGENT_RUNTIME_TYPES).optional().nullable(),
641
- defaultChatAgentRuntimeConfig: defaultChatRuntimeConfigSchema.optional().nullable(),
505
+ logoAssetIdSchema = z3.string().uuid().nullable().optional();
506
+ brandColorSchema = z3.string().regex(/^#[0-9a-fA-F]{6}$/).nullable().optional();
507
+ createOrganizationSchema = z3.object({
508
+ name: z3.string().min(1),
509
+ description: z3.string().optional().nullable(),
510
+ budgetMonthlyCents: z3.number().int().nonnegative().optional().default(0),
511
+ defaultChatIssueCreationMode: z3.enum(CHAT_ISSUE_CREATION_MODES).optional().default("manual_approval"),
642
512
  brandColor: brandColorSchema,
643
- requireBoardApprovalForNewAgents: z5.boolean().optional()
513
+ requireBoardApprovalForNewAgents: z3.boolean().optional()
644
514
  });
645
515
  updateOrganizationSchema = createOrganizationSchema.partial().extend({
646
- status: z5.enum(ORGANIZATION_STATUSES).optional(),
647
- spentMonthlyCents: z5.number().int().nonnegative().optional(),
648
- requireBoardApprovalForNewAgents: z5.boolean().optional(),
649
- defaultChatIssueCreationMode: z5.enum(CHAT_ISSUE_CREATION_MODES).optional(),
650
- defaultChatAgentRuntimeType: z5.enum(AGENT_RUNTIME_TYPES).optional().nullable(),
651
- defaultChatAgentRuntimeConfig: defaultChatRuntimeConfigSchema.optional().nullable(),
516
+ status: z3.enum(ORGANIZATION_STATUSES).optional(),
517
+ spentMonthlyCents: z3.number().int().nonnegative().optional(),
518
+ requireBoardApprovalForNewAgents: z3.boolean().optional(),
519
+ defaultChatIssueCreationMode: z3.enum(CHAT_ISSUE_CREATION_MODES).optional(),
652
520
  brandColor: brandColorSchema,
653
521
  logoAssetId: logoAssetIdSchema
654
522
  });
655
- updateOrganizationBrandingSchema = z5.object({
656
- name: z5.string().min(1).optional(),
657
- description: z5.string().nullable().optional(),
523
+ updateOrganizationBrandingSchema = z3.object({
524
+ name: z3.string().min(1).optional(),
525
+ description: z3.string().nullable().optional(),
658
526
  brandColor: brandColorSchema,
659
527
  logoAssetId: logoAssetIdSchema
660
528
  }).strict().refine(
661
529
  (value) => value.name !== void 0 || value.description !== void 0 || value.brandColor !== void 0 || value.logoAssetId !== void 0,
662
530
  "At least one branding field must be provided"
663
531
  );
664
- updateOrganizationWorkspaceFileSchema = z5.object({
665
- content: z5.string()
532
+ updateOrganizationWorkspaceFileSchema = z3.object({
533
+ content: z3.string()
666
534
  });
667
535
  }
668
536
  });
669
537
 
670
538
  // ../packages/shared/src/validators/resource.ts
671
- import { z as z6 } from "zod";
539
+ import { z as z4 } from "zod";
672
540
  var organizationResourceKindSchema, projectResourceAttachmentRoleSchema, createOrganizationResourceSchema, updateOrganizationResourceSchema, projectResourceAttachmentInputSchema, updateProjectResourceAttachmentSchema, createProjectInlineResourceSchema;
673
541
  var init_resource = __esm({
674
542
  "../packages/shared/src/validators/resource.ts"() {
675
543
  "use strict";
676
544
  init_constants();
677
- organizationResourceKindSchema = z6.enum(ORGANIZATION_RESOURCE_KINDS);
678
- projectResourceAttachmentRoleSchema = z6.enum(PROJECT_RESOURCE_ATTACHMENT_ROLES);
679
- createOrganizationResourceSchema = z6.object({
680
- name: z6.string().min(1),
545
+ organizationResourceKindSchema = z4.enum(ORGANIZATION_RESOURCE_KINDS);
546
+ projectResourceAttachmentRoleSchema = z4.enum(PROJECT_RESOURCE_ATTACHMENT_ROLES);
547
+ createOrganizationResourceSchema = z4.object({
548
+ name: z4.string().min(1),
681
549
  kind: organizationResourceKindSchema,
682
- locator: z6.string().min(1),
683
- description: z6.string().optional().nullable(),
684
- metadata: z6.record(z6.unknown()).optional().nullable()
550
+ locator: z4.string().min(1),
551
+ description: z4.string().optional().nullable(),
552
+ metadata: z4.record(z4.unknown()).optional().nullable()
685
553
  });
686
- updateOrganizationResourceSchema = z6.object({
687
- name: z6.string().min(1).optional(),
554
+ updateOrganizationResourceSchema = z4.object({
555
+ name: z4.string().min(1).optional(),
688
556
  kind: organizationResourceKindSchema.optional(),
689
- locator: z6.string().min(1).optional(),
690
- description: z6.string().optional().nullable(),
691
- metadata: z6.record(z6.unknown()).optional().nullable()
557
+ locator: z4.string().min(1).optional(),
558
+ description: z4.string().optional().nullable(),
559
+ metadata: z4.record(z4.unknown()).optional().nullable()
692
560
  }).strict();
693
- projectResourceAttachmentInputSchema = z6.object({
694
- resourceId: z6.string().uuid(),
561
+ projectResourceAttachmentInputSchema = z4.object({
562
+ resourceId: z4.string().uuid(),
695
563
  role: projectResourceAttachmentRoleSchema.optional(),
696
- note: z6.string().optional().nullable(),
697
- sortOrder: z6.number().int().nonnegative().optional()
564
+ note: z4.string().optional().nullable(),
565
+ sortOrder: z4.number().int().nonnegative().optional()
698
566
  }).strict();
699
- updateProjectResourceAttachmentSchema = z6.object({
567
+ updateProjectResourceAttachmentSchema = z4.object({
700
568
  role: projectResourceAttachmentRoleSchema.optional(),
701
- note: z6.string().optional().nullable(),
702
- sortOrder: z6.number().int().nonnegative().optional()
569
+ note: z4.string().optional().nullable(),
570
+ sortOrder: z4.number().int().nonnegative().optional()
703
571
  }).strict();
704
572
  createProjectInlineResourceSchema = createOrganizationResourceSchema.extend({
705
573
  role: projectResourceAttachmentRoleSchema.optional(),
706
- note: z6.string().optional().nullable(),
707
- sortOrder: z6.number().int().nonnegative().optional()
574
+ note: z4.string().optional().nullable(),
575
+ sortOrder: z4.number().int().nonnegative().optional()
708
576
  }).strict();
709
577
  }
710
578
  });
711
579
 
712
580
  // ../packages/shared/src/validators/chat.ts
713
- import { z as z7 } from "zod";
581
+ import { z as z5 } from "zod";
714
582
  var chatConversationStatusSchema, chatIssueCreationModeSchema, chatMessageRoleSchema, chatMessageKindSchema, chatMessageStatusSchema, chatContextEntityTypeSchema, createChatContextLinkSchema, createChatConversationSchema, setChatProjectContextSchema, updateChatConversationSchema, addChatMessageSchema, createChatAttachmentMetadataSchema, chatIssueProposalSchema, convertChatToIssueSchema, chatOperationProposalSchema, resolveChatOperationProposalSchema, updateChatConversationUserStateSchema;
715
583
  var init_chat = __esm({
716
584
  "../packages/shared/src/validators/chat.ts"() {
717
585
  "use strict";
718
586
  init_constants();
719
- chatConversationStatusSchema = z7.enum(CHAT_CONVERSATION_STATUSES);
720
- chatIssueCreationModeSchema = z7.enum(CHAT_ISSUE_CREATION_MODES);
721
- chatMessageRoleSchema = z7.enum(CHAT_MESSAGE_ROLES);
722
- chatMessageKindSchema = z7.enum(CHAT_MESSAGE_KINDS);
723
- chatMessageStatusSchema = z7.enum(CHAT_MESSAGE_STATUSES);
724
- chatContextEntityTypeSchema = z7.enum(CHAT_CONTEXT_ENTITY_TYPES);
725
- createChatContextLinkSchema = z7.object({
587
+ chatConversationStatusSchema = z5.enum(CHAT_CONVERSATION_STATUSES);
588
+ chatIssueCreationModeSchema = z5.enum(CHAT_ISSUE_CREATION_MODES);
589
+ chatMessageRoleSchema = z5.enum(CHAT_MESSAGE_ROLES);
590
+ chatMessageKindSchema = z5.enum(CHAT_MESSAGE_KINDS);
591
+ chatMessageStatusSchema = z5.enum(CHAT_MESSAGE_STATUSES);
592
+ chatContextEntityTypeSchema = z5.enum(CHAT_CONTEXT_ENTITY_TYPES);
593
+ createChatContextLinkSchema = z5.object({
726
594
  entityType: chatContextEntityTypeSchema,
727
- entityId: z7.string().min(1),
728
- metadata: z7.record(z7.unknown()).optional().nullable()
595
+ entityId: z5.string().min(1),
596
+ metadata: z5.record(z5.unknown()).optional().nullable()
729
597
  });
730
- createChatConversationSchema = z7.object({
731
- title: z7.string().trim().min(1).max(200).optional(),
732
- summary: z7.string().trim().max(5e3).optional().nullable(),
733
- preferredAgentId: z7.string().uuid().optional().nullable(),
598
+ createChatConversationSchema = z5.object({
599
+ title: z5.string().trim().min(1).max(200).optional(),
600
+ summary: z5.string().trim().max(5e3).optional().nullable(),
601
+ preferredAgentId: z5.string().uuid().optional().nullable(),
734
602
  issueCreationMode: chatIssueCreationModeSchema.optional(),
735
- planMode: z7.boolean().optional(),
736
- contextLinks: z7.array(createChatContextLinkSchema).optional().default([])
603
+ planMode: z5.boolean().optional(),
604
+ contextLinks: z5.array(createChatContextLinkSchema).optional().default([])
737
605
  });
738
- setChatProjectContextSchema = z7.object({
739
- projectId: z7.string().uuid().optional().nullable()
606
+ setChatProjectContextSchema = z5.object({
607
+ projectId: z5.string().uuid().optional().nullable()
740
608
  });
741
609
  updateChatConversationSchema = createChatConversationSchema.partial().extend({
742
610
  status: chatConversationStatusSchema.optional(),
743
- routedAgentId: z7.string().uuid().optional().nullable(),
744
- primaryIssueId: z7.string().uuid().optional().nullable(),
745
- resolvedAt: z7.string().datetime().optional().nullable()
611
+ routedAgentId: z5.string().uuid().optional().nullable(),
612
+ primaryIssueId: z5.string().uuid().optional().nullable(),
613
+ resolvedAt: z5.string().datetime().optional().nullable()
746
614
  });
747
- addChatMessageSchema = z7.object({
748
- body: z7.string().trim().min(1).max(2e4),
749
- editUserMessageId: z7.string().uuid().optional().nullable()
615
+ addChatMessageSchema = z5.object({
616
+ body: z5.string().trim().min(1).max(2e4),
617
+ editUserMessageId: z5.string().uuid().optional().nullable()
750
618
  });
751
- createChatAttachmentMetadataSchema = z7.object({
752
- messageId: z7.string().uuid()
619
+ createChatAttachmentMetadataSchema = z5.object({
620
+ messageId: z5.string().uuid()
753
621
  });
754
- chatIssueProposalSchema = z7.object({
755
- title: z7.string().trim().min(1).max(200),
756
- description: z7.string().trim().min(1).max(2e4),
757
- priority: z7.enum(["critical", "high", "medium", "low"]).optional().default("medium"),
758
- projectId: z7.string().uuid().optional().nullable(),
759
- goalId: z7.string().uuid().optional().nullable(),
760
- parentId: z7.string().uuid().optional().nullable(),
761
- assigneeAgentId: z7.string().uuid().optional().nullable(),
762
- assigneeUserId: z7.string().trim().optional().nullable()
622
+ chatIssueProposalSchema = z5.object({
623
+ title: z5.string().trim().min(1).max(200),
624
+ description: z5.string().trim().min(1).max(2e4),
625
+ priority: z5.enum(["critical", "high", "medium", "low"]).optional().default("medium"),
626
+ projectId: z5.string().uuid().optional().nullable(),
627
+ goalId: z5.string().uuid().optional().nullable(),
628
+ parentId: z5.string().uuid().optional().nullable(),
629
+ assigneeAgentId: z5.string().uuid().optional().nullable(),
630
+ assigneeUserId: z5.string().trim().optional().nullable()
763
631
  });
764
- convertChatToIssueSchema = z7.object({
765
- messageId: z7.string().uuid().optional().nullable(),
632
+ convertChatToIssueSchema = z5.object({
633
+ messageId: z5.string().uuid().optional().nullable(),
766
634
  proposal: chatIssueProposalSchema.optional()
767
635
  });
768
- chatOperationProposalSchema = z7.object({
769
- targetType: z7.enum(["organization", "agent"]),
770
- targetId: z7.string().min(1),
771
- summary: z7.string().trim().min(1).max(500),
772
- patch: z7.record(z7.unknown())
636
+ chatOperationProposalSchema = z5.object({
637
+ targetType: z5.enum(["organization", "agent"]),
638
+ targetId: z5.string().min(1),
639
+ summary: z5.string().trim().min(1).max(500),
640
+ patch: z5.record(z5.unknown())
773
641
  });
774
- resolveChatOperationProposalSchema = z7.object({
775
- action: z7.enum(["approve", "reject", "requestRevision"]),
776
- decisionNote: z7.string().trim().max(5e3).optional().nullable()
642
+ resolveChatOperationProposalSchema = z5.object({
643
+ action: z5.enum(["approve", "reject", "requestRevision"]),
644
+ decisionNote: z5.string().trim().max(5e3).optional().nullable()
777
645
  });
778
- updateChatConversationUserStateSchema = z7.object({
779
- pinned: z7.boolean().optional()
646
+ updateChatConversationUserStateSchema = z5.object({
647
+ pinned: z5.boolean().optional()
780
648
  });
781
649
  }
782
650
  });
783
651
 
784
652
  // ../packages/shared/src/validators/organization-skill.ts
785
- import { z as z8 } from "zod";
653
+ import { z as z6 } from "zod";
786
654
  var organizationSkillSourceTypeSchema, organizationSkillTrustLevelSchema, organizationSkillCompatibilitySchema, organizationSkillSourceBadgeSchema, organizationSkillFileInventoryEntrySchema, organizationSkillSchema, organizationSkillListItemSchema, organizationSkillUsageAgentSchema, organizationSkillDetailSchema, organizationSkillUpdateStatusSchema, organizationSkillImportSchema, organizationSkillProjectScanRequestSchema, organizationSkillProjectScanSkippedSchema, organizationSkillProjectScanConflictSchema, organizationSkillProjectScanResultSchema, organizationSkillLocalScanRequestSchema, organizationSkillLocalScanSkippedSchema, organizationSkillLocalScanConflictSchema, organizationSkillLocalScanResultSchema, organizationSkillCreateSchema, organizationSkillFileDetailSchema, organizationSkillFileUpdateSchema;
787
655
  var init_organization_skill = __esm({
788
656
  "../packages/shared/src/validators/organization-skill.ts"() {
789
657
  "use strict";
790
- organizationSkillSourceTypeSchema = z8.enum(["local_path", "github", "url", "catalog", "skills_sh"]);
791
- organizationSkillTrustLevelSchema = z8.enum(["markdown_only", "assets", "scripts_executables"]);
792
- organizationSkillCompatibilitySchema = z8.enum(["compatible", "unknown", "invalid"]);
793
- organizationSkillSourceBadgeSchema = z8.enum([
658
+ organizationSkillSourceTypeSchema = z6.enum(["local_path", "github", "url", "catalog", "skills_sh"]);
659
+ organizationSkillTrustLevelSchema = z6.enum(["markdown_only", "assets", "scripts_executables"]);
660
+ organizationSkillCompatibilitySchema = z6.enum(["compatible", "unknown", "invalid"]);
661
+ organizationSkillSourceBadgeSchema = z6.enum([
794
662
  "rudder",
795
663
  "community",
796
664
  "github",
@@ -799,157 +667,157 @@ var init_organization_skill = __esm({
799
667
  "catalog",
800
668
  "skills_sh"
801
669
  ]);
802
- organizationSkillFileInventoryEntrySchema = z8.object({
803
- path: z8.string().min(1),
804
- kind: z8.enum(["skill", "markdown", "reference", "script", "asset", "other"])
670
+ organizationSkillFileInventoryEntrySchema = z6.object({
671
+ path: z6.string().min(1),
672
+ kind: z6.enum(["skill", "markdown", "reference", "script", "asset", "other"])
805
673
  });
806
- organizationSkillSchema = z8.object({
807
- id: z8.string().uuid(),
808
- orgId: z8.string().uuid(),
809
- key: z8.string().min(1),
810
- slug: z8.string().min(1),
811
- name: z8.string().min(1),
812
- description: z8.string().nullable(),
813
- markdown: z8.string(),
674
+ organizationSkillSchema = z6.object({
675
+ id: z6.string().uuid(),
676
+ orgId: z6.string().uuid(),
677
+ key: z6.string().min(1),
678
+ slug: z6.string().min(1),
679
+ name: z6.string().min(1),
680
+ description: z6.string().nullable(),
681
+ markdown: z6.string(),
814
682
  sourceType: organizationSkillSourceTypeSchema,
815
- sourceLocator: z8.string().nullable(),
816
- sourceRef: z8.string().nullable(),
683
+ sourceLocator: z6.string().nullable(),
684
+ sourceRef: z6.string().nullable(),
817
685
  trustLevel: organizationSkillTrustLevelSchema,
818
686
  compatibility: organizationSkillCompatibilitySchema,
819
- fileInventory: z8.array(organizationSkillFileInventoryEntrySchema).default([]),
820
- metadata: z8.record(z8.unknown()).nullable(),
821
- createdAt: z8.coerce.date(),
822
- updatedAt: z8.coerce.date()
687
+ fileInventory: z6.array(organizationSkillFileInventoryEntrySchema).default([]),
688
+ metadata: z6.record(z6.unknown()).nullable(),
689
+ createdAt: z6.coerce.date(),
690
+ updatedAt: z6.coerce.date()
823
691
  });
824
692
  organizationSkillListItemSchema = organizationSkillSchema.extend({
825
- attachedAgentCount: z8.number().int().nonnegative(),
826
- editable: z8.boolean(),
827
- editableReason: z8.string().nullable(),
828
- sourceLabel: z8.string().nullable(),
693
+ attachedAgentCount: z6.number().int().nonnegative(),
694
+ editable: z6.boolean(),
695
+ editableReason: z6.string().nullable(),
696
+ sourceLabel: z6.string().nullable(),
829
697
  sourceBadge: organizationSkillSourceBadgeSchema,
830
- sourcePath: z8.string().nullable(),
831
- workspaceEditPath: z8.string().nullable()
698
+ sourcePath: z6.string().nullable(),
699
+ workspaceEditPath: z6.string().nullable()
832
700
  });
833
- organizationSkillUsageAgentSchema = z8.object({
834
- id: z8.string().uuid(),
835
- name: z8.string().min(1),
836
- urlKey: z8.string().min(1),
837
- agentRuntimeType: z8.string().min(1),
838
- desired: z8.boolean(),
839
- actualState: z8.string().nullable()
701
+ organizationSkillUsageAgentSchema = z6.object({
702
+ id: z6.string().uuid(),
703
+ name: z6.string().min(1),
704
+ urlKey: z6.string().min(1),
705
+ agentRuntimeType: z6.string().min(1),
706
+ desired: z6.boolean(),
707
+ actualState: z6.string().nullable()
840
708
  });
841
709
  organizationSkillDetailSchema = organizationSkillSchema.extend({
842
- attachedAgentCount: z8.number().int().nonnegative(),
843
- usedByAgents: z8.array(organizationSkillUsageAgentSchema).default([]),
844
- editable: z8.boolean(),
845
- editableReason: z8.string().nullable(),
846
- sourceLabel: z8.string().nullable(),
710
+ attachedAgentCount: z6.number().int().nonnegative(),
711
+ usedByAgents: z6.array(organizationSkillUsageAgentSchema).default([]),
712
+ editable: z6.boolean(),
713
+ editableReason: z6.string().nullable(),
714
+ sourceLabel: z6.string().nullable(),
847
715
  sourceBadge: organizationSkillSourceBadgeSchema,
848
- sourcePath: z8.string().nullable(),
849
- workspaceEditPath: z8.string().nullable()
716
+ sourcePath: z6.string().nullable(),
717
+ workspaceEditPath: z6.string().nullable()
850
718
  });
851
- organizationSkillUpdateStatusSchema = z8.object({
852
- supported: z8.boolean(),
853
- reason: z8.string().nullable(),
854
- trackingRef: z8.string().nullable(),
855
- currentRef: z8.string().nullable(),
856
- latestRef: z8.string().nullable(),
857
- hasUpdate: z8.boolean()
719
+ organizationSkillUpdateStatusSchema = z6.object({
720
+ supported: z6.boolean(),
721
+ reason: z6.string().nullable(),
722
+ trackingRef: z6.string().nullable(),
723
+ currentRef: z6.string().nullable(),
724
+ latestRef: z6.string().nullable(),
725
+ hasUpdate: z6.boolean()
858
726
  });
859
- organizationSkillImportSchema = z8.object({
860
- source: z8.string().min(1)
727
+ organizationSkillImportSchema = z6.object({
728
+ source: z6.string().min(1)
861
729
  });
862
- organizationSkillProjectScanRequestSchema = z8.object({
863
- projectIds: z8.array(z8.string().uuid()).optional(),
864
- workspaceIds: z8.array(z8.string().uuid()).optional()
730
+ organizationSkillProjectScanRequestSchema = z6.object({
731
+ projectIds: z6.array(z6.string().uuid()).optional(),
732
+ workspaceIds: z6.array(z6.string().uuid()).optional()
865
733
  });
866
- organizationSkillProjectScanSkippedSchema = z8.object({
867
- projectId: z8.string().uuid(),
868
- projectName: z8.string().min(1),
869
- workspaceId: z8.string().uuid().nullable(),
870
- workspaceName: z8.string().nullable(),
871
- path: z8.string().nullable(),
872
- reason: z8.string().min(1)
734
+ organizationSkillProjectScanSkippedSchema = z6.object({
735
+ projectId: z6.string().uuid(),
736
+ projectName: z6.string().min(1),
737
+ workspaceId: z6.string().uuid().nullable(),
738
+ workspaceName: z6.string().nullable(),
739
+ path: z6.string().nullable(),
740
+ reason: z6.string().min(1)
873
741
  });
874
- organizationSkillProjectScanConflictSchema = z8.object({
875
- slug: z8.string().min(1),
876
- key: z8.string().min(1),
877
- projectId: z8.string().uuid(),
878
- projectName: z8.string().min(1),
879
- workspaceId: z8.string().uuid(),
880
- workspaceName: z8.string().min(1),
881
- path: z8.string().min(1),
882
- existingSkillId: z8.string().uuid(),
883
- existingSkillKey: z8.string().min(1),
884
- existingSourceLocator: z8.string().nullable(),
885
- reason: z8.string().min(1)
742
+ organizationSkillProjectScanConflictSchema = z6.object({
743
+ slug: z6.string().min(1),
744
+ key: z6.string().min(1),
745
+ projectId: z6.string().uuid(),
746
+ projectName: z6.string().min(1),
747
+ workspaceId: z6.string().uuid(),
748
+ workspaceName: z6.string().min(1),
749
+ path: z6.string().min(1),
750
+ existingSkillId: z6.string().uuid(),
751
+ existingSkillKey: z6.string().min(1),
752
+ existingSourceLocator: z6.string().nullable(),
753
+ reason: z6.string().min(1)
886
754
  });
887
- organizationSkillProjectScanResultSchema = z8.object({
888
- scannedProjects: z8.number().int().nonnegative(),
889
- scannedWorkspaces: z8.number().int().nonnegative(),
890
- discovered: z8.number().int().nonnegative(),
891
- imported: z8.array(organizationSkillSchema),
892
- updated: z8.array(organizationSkillSchema),
893
- skipped: z8.array(organizationSkillProjectScanSkippedSchema),
894
- conflicts: z8.array(organizationSkillProjectScanConflictSchema),
895
- warnings: z8.array(z8.string())
755
+ organizationSkillProjectScanResultSchema = z6.object({
756
+ scannedProjects: z6.number().int().nonnegative(),
757
+ scannedWorkspaces: z6.number().int().nonnegative(),
758
+ discovered: z6.number().int().nonnegative(),
759
+ imported: z6.array(organizationSkillSchema),
760
+ updated: z6.array(organizationSkillSchema),
761
+ skipped: z6.array(organizationSkillProjectScanSkippedSchema),
762
+ conflicts: z6.array(organizationSkillProjectScanConflictSchema),
763
+ warnings: z6.array(z6.string())
896
764
  });
897
- organizationSkillLocalScanRequestSchema = z8.object({
898
- roots: z8.array(z8.string().min(1)).optional()
765
+ organizationSkillLocalScanRequestSchema = z6.object({
766
+ roots: z6.array(z6.string().min(1)).optional()
899
767
  });
900
- organizationSkillLocalScanSkippedSchema = z8.object({
901
- root: z8.string().min(1),
902
- path: z8.string().nullable(),
903
- reason: z8.string().min(1)
768
+ organizationSkillLocalScanSkippedSchema = z6.object({
769
+ root: z6.string().min(1),
770
+ path: z6.string().nullable(),
771
+ reason: z6.string().min(1)
904
772
  });
905
- organizationSkillLocalScanConflictSchema = z8.object({
906
- root: z8.string().min(1),
907
- path: z8.string().min(1),
908
- slug: z8.string().min(1),
909
- key: z8.string().min(1),
910
- existingSkillId: z8.string().uuid(),
911
- existingSkillKey: z8.string().min(1),
912
- existingSourceLocator: z8.string().nullable(),
913
- reason: z8.string().min(1)
773
+ organizationSkillLocalScanConflictSchema = z6.object({
774
+ root: z6.string().min(1),
775
+ path: z6.string().min(1),
776
+ slug: z6.string().min(1),
777
+ key: z6.string().min(1),
778
+ existingSkillId: z6.string().uuid(),
779
+ existingSkillKey: z6.string().min(1),
780
+ existingSourceLocator: z6.string().nullable(),
781
+ reason: z6.string().min(1)
914
782
  });
915
- organizationSkillLocalScanResultSchema = z8.object({
916
- scannedRoots: z8.number().int().nonnegative(),
917
- discovered: z8.number().int().nonnegative(),
918
- imported: z8.array(organizationSkillSchema),
919
- updated: z8.array(organizationSkillSchema),
920
- skipped: z8.array(organizationSkillLocalScanSkippedSchema),
921
- conflicts: z8.array(organizationSkillLocalScanConflictSchema),
922
- warnings: z8.array(z8.string())
783
+ organizationSkillLocalScanResultSchema = z6.object({
784
+ scannedRoots: z6.number().int().nonnegative(),
785
+ discovered: z6.number().int().nonnegative(),
786
+ imported: z6.array(organizationSkillSchema),
787
+ updated: z6.array(organizationSkillSchema),
788
+ skipped: z6.array(organizationSkillLocalScanSkippedSchema),
789
+ conflicts: z6.array(organizationSkillLocalScanConflictSchema),
790
+ warnings: z6.array(z6.string())
923
791
  });
924
- organizationSkillCreateSchema = z8.object({
925
- name: z8.string().min(1),
926
- slug: z8.string().min(1).nullable().optional(),
927
- description: z8.string().nullable().optional(),
928
- markdown: z8.string().nullable().optional()
792
+ organizationSkillCreateSchema = z6.object({
793
+ name: z6.string().min(1),
794
+ slug: z6.string().min(1).nullable().optional(),
795
+ description: z6.string().nullable().optional(),
796
+ markdown: z6.string().nullable().optional()
929
797
  });
930
- organizationSkillFileDetailSchema = z8.object({
931
- skillId: z8.string().uuid(),
932
- path: z8.string().min(1),
933
- kind: z8.enum(["skill", "markdown", "reference", "script", "asset", "other"]),
934
- content: z8.string(),
935
- language: z8.string().nullable(),
936
- markdown: z8.boolean(),
937
- editable: z8.boolean()
798
+ organizationSkillFileDetailSchema = z6.object({
799
+ skillId: z6.string().uuid(),
800
+ path: z6.string().min(1),
801
+ kind: z6.enum(["skill", "markdown", "reference", "script", "asset", "other"]),
802
+ content: z6.string(),
803
+ language: z6.string().nullable(),
804
+ markdown: z6.boolean(),
805
+ editable: z6.boolean()
938
806
  });
939
- organizationSkillFileUpdateSchema = z8.object({
940
- path: z8.string().min(1),
941
- content: z8.string()
807
+ organizationSkillFileUpdateSchema = z6.object({
808
+ path: z6.string().min(1),
809
+ content: z6.string()
942
810
  });
943
811
  }
944
812
  });
945
813
 
946
814
  // ../packages/shared/src/validators/adapter-skills.ts
947
- import { z as z9 } from "zod";
815
+ import { z as z7 } from "zod";
948
816
  var agentSkillStateSchema, agentSkillOriginSchema, agentSkillSourceClassSchema, agentSkillSyncModeSchema, agentSkillEntrySchema, agentSkillSnapshotSchema, agentSkillSyncSchema;
949
817
  var init_adapter_skills = __esm({
950
818
  "../packages/shared/src/validators/adapter-skills.ts"() {
951
819
  "use strict";
952
- agentSkillStateSchema = z9.enum([
820
+ agentSkillStateSchema = z7.enum([
953
821
  "available",
954
822
  "configured",
955
823
  "installed",
@@ -957,271 +825,395 @@ var init_adapter_skills = __esm({
957
825
  "stale",
958
826
  "external"
959
827
  ]);
960
- agentSkillOriginSchema = z9.preprocess((value) => {
828
+ agentSkillOriginSchema = z7.preprocess((value) => {
961
829
  if (value === "company_managed") return "organization_managed";
962
830
  return value;
963
- }, z9.enum([
831
+ }, z7.enum([
964
832
  "organization_managed",
965
833
  "user_installed",
966
834
  "external_unknown"
967
835
  ]));
968
- agentSkillSourceClassSchema = z9.enum([
836
+ agentSkillSourceClassSchema = z7.enum([
969
837
  "bundled",
970
838
  "organization",
971
839
  "agent_home",
972
840
  "global",
973
841
  "adapter_home"
974
842
  ]);
975
- agentSkillSyncModeSchema = z9.enum([
843
+ agentSkillSyncModeSchema = z7.enum([
976
844
  "unsupported",
977
845
  "persistent",
978
846
  "ephemeral"
979
847
  ]);
980
- agentSkillEntrySchema = z9.object({
981
- key: z9.string().min(1),
982
- selectionKey: z9.string().min(1),
983
- runtimeName: z9.string().min(1).nullable(),
984
- description: z9.string().nullable().optional(),
985
- desired: z9.boolean(),
986
- configurable: z9.boolean(),
987
- alwaysEnabled: z9.boolean(),
988
- managed: z9.boolean(),
848
+ agentSkillEntrySchema = z7.object({
849
+ key: z7.string().min(1),
850
+ selectionKey: z7.string().min(1),
851
+ runtimeName: z7.string().min(1).nullable(),
852
+ description: z7.string().nullable().optional(),
853
+ desired: z7.boolean(),
854
+ configurable: z7.boolean(),
855
+ alwaysEnabled: z7.boolean(),
856
+ managed: z7.boolean(),
989
857
  state: agentSkillStateSchema,
990
858
  sourceClass: agentSkillSourceClassSchema,
991
859
  origin: agentSkillOriginSchema.optional(),
992
- originLabel: z9.string().nullable().optional(),
993
- locationLabel: z9.string().nullable().optional(),
994
- readOnly: z9.boolean().optional(),
995
- sourcePath: z9.string().nullable().optional(),
996
- targetPath: z9.string().nullable().optional(),
997
- workspaceEditPath: z9.string().nullable().optional(),
998
- detail: z9.string().nullable().optional()
860
+ originLabel: z7.string().nullable().optional(),
861
+ locationLabel: z7.string().nullable().optional(),
862
+ readOnly: z7.boolean().optional(),
863
+ sourcePath: z7.string().nullable().optional(),
864
+ targetPath: z7.string().nullable().optional(),
865
+ workspaceEditPath: z7.string().nullable().optional(),
866
+ detail: z7.string().nullable().optional()
999
867
  });
1000
- agentSkillSnapshotSchema = z9.object({
1001
- agentRuntimeType: z9.string().min(1),
1002
- supported: z9.boolean(),
868
+ agentSkillSnapshotSchema = z7.object({
869
+ agentRuntimeType: z7.string().min(1),
870
+ supported: z7.boolean(),
1003
871
  mode: agentSkillSyncModeSchema,
1004
- desiredSkills: z9.array(z9.string().min(1)),
1005
- entries: z9.array(agentSkillEntrySchema),
1006
- warnings: z9.array(z9.string())
872
+ desiredSkills: z7.array(z7.string().min(1)),
873
+ entries: z7.array(agentSkillEntrySchema),
874
+ warnings: z7.array(z7.string())
1007
875
  });
1008
- agentSkillSyncSchema = z9.object({
1009
- desiredSkills: z9.array(z9.string().min(1))
876
+ agentSkillSyncSchema = z7.object({
877
+ desiredSkills: z7.array(z7.string().min(1))
1010
878
  });
1011
879
  }
1012
880
  });
1013
881
 
1014
882
  // ../packages/shared/src/validators/organization-portability.ts
1015
- import { z as z10 } from "zod";
883
+ import { z as z8 } from "zod";
1016
884
  var portabilityIncludeSchema, portabilityEnvInputSchema, portabilityFileEntrySchema, portabilityOrganizationManifestEntrySchema, portabilitySidebarOrderSchema, portabilityAgentManifestEntrySchema, portabilitySkillManifestEntrySchema, portabilityProjectManifestEntrySchema, portabilityIssueAutomationTriggerManifestEntrySchema, portabilityIssueAutomationManifestEntrySchema, portabilityIssueManifestEntrySchema, portabilityManifestSchema, portabilitySourceSchema, portabilityTargetSchema, portabilityAgentSelectionSchema, portabilityCollisionStrategySchema, organizationPortabilityExportSchema, organizationPortabilityPreviewSchema, portabilityAdapterOverrideSchema, organizationPortabilityImportSchema;
1017
885
  var init_organization_portability = __esm({
1018
886
  "../packages/shared/src/validators/organization-portability.ts"() {
1019
887
  "use strict";
1020
- portabilityIncludeSchema = z10.object({
1021
- organization: z10.boolean().optional(),
1022
- agents: z10.boolean().optional(),
1023
- projects: z10.boolean().optional(),
1024
- issues: z10.boolean().optional(),
1025
- skills: z10.boolean().optional()
888
+ portabilityIncludeSchema = z8.object({
889
+ organization: z8.boolean().optional(),
890
+ agents: z8.boolean().optional(),
891
+ projects: z8.boolean().optional(),
892
+ issues: z8.boolean().optional(),
893
+ skills: z8.boolean().optional()
1026
894
  }).partial();
1027
- portabilityEnvInputSchema = z10.object({
1028
- key: z10.string().min(1),
1029
- description: z10.string().nullable(),
1030
- agentSlug: z10.string().min(1).nullable(),
1031
- kind: z10.enum(["secret", "plain"]),
1032
- requirement: z10.enum(["required", "optional"]),
1033
- defaultValue: z10.string().nullable(),
1034
- portability: z10.enum(["portable", "system_dependent"])
895
+ portabilityEnvInputSchema = z8.object({
896
+ key: z8.string().min(1),
897
+ description: z8.string().nullable(),
898
+ agentSlug: z8.string().min(1).nullable(),
899
+ kind: z8.enum(["secret", "plain"]),
900
+ requirement: z8.enum(["required", "optional"]),
901
+ defaultValue: z8.string().nullable(),
902
+ portability: z8.enum(["portable", "system_dependent"])
1035
903
  });
1036
- portabilityFileEntrySchema = z10.union([
1037
- z10.string(),
1038
- z10.object({
1039
- encoding: z10.literal("base64"),
1040
- data: z10.string(),
1041
- contentType: z10.string().min(1).optional().nullable()
904
+ portabilityFileEntrySchema = z8.union([
905
+ z8.string(),
906
+ z8.object({
907
+ encoding: z8.literal("base64"),
908
+ data: z8.string(),
909
+ contentType: z8.string().min(1).optional().nullable()
1042
910
  })
1043
911
  ]);
1044
- portabilityOrganizationManifestEntrySchema = z10.object({
1045
- path: z10.string().min(1),
1046
- name: z10.string().min(1),
1047
- description: z10.string().nullable(),
1048
- brandColor: z10.string().nullable(),
1049
- logoPath: z10.string().nullable(),
1050
- requireBoardApprovalForNewAgents: z10.boolean()
912
+ portabilityOrganizationManifestEntrySchema = z8.object({
913
+ path: z8.string().min(1),
914
+ name: z8.string().min(1),
915
+ description: z8.string().nullable(),
916
+ brandColor: z8.string().nullable(),
917
+ logoPath: z8.string().nullable(),
918
+ requireBoardApprovalForNewAgents: z8.boolean()
1051
919
  });
1052
- portabilitySidebarOrderSchema = z10.object({
1053
- agents: z10.array(z10.string().min(1)).default([]),
1054
- projects: z10.array(z10.string().min(1)).default([])
920
+ portabilitySidebarOrderSchema = z8.object({
921
+ agents: z8.array(z8.string().min(1)).default([]),
922
+ projects: z8.array(z8.string().min(1)).default([])
1055
923
  });
1056
- portabilityAgentManifestEntrySchema = z10.object({
1057
- slug: z10.string().min(1),
1058
- name: z10.string().min(1),
1059
- path: z10.string().min(1),
1060
- skills: z10.array(z10.string().min(1)).default([]),
1061
- role: z10.string().min(1),
1062
- title: z10.string().nullable(),
1063
- icon: z10.string().nullable(),
1064
- capabilities: z10.string().nullable(),
1065
- reportsToSlug: z10.string().min(1).nullable(),
1066
- agentRuntimeType: z10.string().min(1),
1067
- agentRuntimeConfig: z10.record(z10.unknown()),
1068
- runtimeConfig: z10.record(z10.unknown()),
1069
- permissions: z10.record(z10.unknown()),
1070
- budgetMonthlyCents: z10.number().int().nonnegative(),
1071
- metadata: z10.record(z10.unknown()).nullable()
924
+ portabilityAgentManifestEntrySchema = z8.object({
925
+ slug: z8.string().min(1),
926
+ name: z8.string().min(1),
927
+ path: z8.string().min(1),
928
+ skills: z8.array(z8.string().min(1)).default([]),
929
+ role: z8.string().min(1),
930
+ title: z8.string().nullable(),
931
+ icon: z8.string().nullable(),
932
+ capabilities: z8.string().nullable(),
933
+ reportsToSlug: z8.string().min(1).nullable(),
934
+ agentRuntimeType: z8.string().min(1),
935
+ agentRuntimeConfig: z8.record(z8.unknown()),
936
+ runtimeConfig: z8.record(z8.unknown()),
937
+ permissions: z8.record(z8.unknown()),
938
+ budgetMonthlyCents: z8.number().int().nonnegative(),
939
+ metadata: z8.record(z8.unknown()).nullable()
1072
940
  });
1073
- portabilitySkillManifestEntrySchema = z10.object({
1074
- key: z10.string().min(1),
1075
- slug: z10.string().min(1),
1076
- name: z10.string().min(1),
1077
- path: z10.string().min(1),
1078
- description: z10.string().nullable(),
1079
- sourceType: z10.string().min(1),
1080
- sourceLocator: z10.string().nullable(),
1081
- sourceRef: z10.string().nullable(),
1082
- trustLevel: z10.string().nullable(),
1083
- compatibility: z10.string().nullable(),
1084
- metadata: z10.record(z10.unknown()).nullable(),
1085
- fileInventory: z10.array(z10.object({
1086
- path: z10.string().min(1),
1087
- kind: z10.string().min(1)
941
+ portabilitySkillManifestEntrySchema = z8.object({
942
+ key: z8.string().min(1),
943
+ slug: z8.string().min(1),
944
+ name: z8.string().min(1),
945
+ path: z8.string().min(1),
946
+ description: z8.string().nullable(),
947
+ sourceType: z8.string().min(1),
948
+ sourceLocator: z8.string().nullable(),
949
+ sourceRef: z8.string().nullable(),
950
+ trustLevel: z8.string().nullable(),
951
+ compatibility: z8.string().nullable(),
952
+ metadata: z8.record(z8.unknown()).nullable(),
953
+ fileInventory: z8.array(z8.object({
954
+ path: z8.string().min(1),
955
+ kind: z8.string().min(1)
1088
956
  })).default([])
1089
957
  });
1090
- portabilityProjectManifestEntrySchema = z10.object({
1091
- slug: z10.string().min(1),
1092
- name: z10.string().min(1),
1093
- path: z10.string().min(1),
1094
- description: z10.string().nullable(),
1095
- ownerAgentSlug: z10.string().min(1).nullable(),
1096
- leadAgentSlug: z10.string().min(1).nullable(),
1097
- targetDate: z10.string().nullable(),
1098
- color: z10.string().nullable(),
1099
- status: z10.string().nullable(),
1100
- executionWorkspacePolicy: z10.record(z10.unknown()).nullable(),
1101
- workspaces: z10.array(z10.object({
1102
- key: z10.string().min(1),
1103
- name: z10.string().min(1),
1104
- sourceType: z10.string().nullable(),
1105
- repoUrl: z10.string().nullable(),
1106
- repoRef: z10.string().nullable(),
1107
- defaultRef: z10.string().nullable(),
1108
- visibility: z10.string().nullable(),
1109
- setupCommand: z10.string().nullable(),
1110
- cleanupCommand: z10.string().nullable(),
1111
- metadata: z10.record(z10.unknown()).nullable(),
1112
- isPrimary: z10.boolean()
958
+ portabilityProjectManifestEntrySchema = z8.object({
959
+ slug: z8.string().min(1),
960
+ name: z8.string().min(1),
961
+ path: z8.string().min(1),
962
+ description: z8.string().nullable(),
963
+ ownerAgentSlug: z8.string().min(1).nullable(),
964
+ leadAgentSlug: z8.string().min(1).nullable(),
965
+ targetDate: z8.string().nullable(),
966
+ color: z8.string().nullable(),
967
+ status: z8.string().nullable(),
968
+ executionWorkspacePolicy: z8.record(z8.unknown()).nullable(),
969
+ workspaces: z8.array(z8.object({
970
+ key: z8.string().min(1),
971
+ name: z8.string().min(1),
972
+ sourceType: z8.string().nullable(),
973
+ repoUrl: z8.string().nullable(),
974
+ repoRef: z8.string().nullable(),
975
+ defaultRef: z8.string().nullable(),
976
+ visibility: z8.string().nullable(),
977
+ setupCommand: z8.string().nullable(),
978
+ cleanupCommand: z8.string().nullable(),
979
+ metadata: z8.record(z8.unknown()).nullable(),
980
+ isPrimary: z8.boolean()
1113
981
  })).default([]),
1114
- metadata: z10.record(z10.unknown()).nullable()
982
+ metadata: z8.record(z8.unknown()).nullable()
1115
983
  });
1116
- portabilityIssueAutomationTriggerManifestEntrySchema = z10.object({
1117
- kind: z10.string().min(1),
1118
- label: z10.string().nullable(),
1119
- enabled: z10.boolean(),
1120
- cronExpression: z10.string().nullable(),
1121
- timezone: z10.string().nullable(),
1122
- signingMode: z10.string().nullable(),
1123
- replayWindowSec: z10.number().int().nullable()
984
+ portabilityIssueAutomationTriggerManifestEntrySchema = z8.object({
985
+ kind: z8.string().min(1),
986
+ label: z8.string().nullable(),
987
+ enabled: z8.boolean(),
988
+ cronExpression: z8.string().nullable(),
989
+ timezone: z8.string().nullable(),
990
+ signingMode: z8.string().nullable(),
991
+ replayWindowSec: z8.number().int().nullable()
1124
992
  });
1125
- portabilityIssueAutomationManifestEntrySchema = z10.object({
1126
- concurrencyPolicy: z10.string().nullable(),
1127
- catchUpPolicy: z10.string().nullable(),
1128
- triggers: z10.array(portabilityIssueAutomationTriggerManifestEntrySchema).default([])
993
+ portabilityIssueAutomationManifestEntrySchema = z8.object({
994
+ concurrencyPolicy: z8.string().nullable(),
995
+ catchUpPolicy: z8.string().nullable(),
996
+ triggers: z8.array(portabilityIssueAutomationTriggerManifestEntrySchema).default([])
1129
997
  });
1130
- portabilityIssueManifestEntrySchema = z10.object({
1131
- slug: z10.string().min(1),
1132
- identifier: z10.string().min(1).nullable(),
1133
- title: z10.string().min(1),
1134
- path: z10.string().min(1),
1135
- projectSlug: z10.string().min(1).nullable(),
1136
- projectWorkspaceKey: z10.string().min(1).nullable(),
1137
- assigneeAgentSlug: z10.string().min(1).nullable(),
1138
- description: z10.string().nullable(),
1139
- recurring: z10.boolean().default(false),
998
+ portabilityIssueManifestEntrySchema = z8.object({
999
+ slug: z8.string().min(1),
1000
+ identifier: z8.string().min(1).nullable(),
1001
+ title: z8.string().min(1),
1002
+ path: z8.string().min(1),
1003
+ projectSlug: z8.string().min(1).nullable(),
1004
+ projectWorkspaceKey: z8.string().min(1).nullable(),
1005
+ assigneeAgentSlug: z8.string().min(1).nullable(),
1006
+ description: z8.string().nullable(),
1007
+ recurring: z8.boolean().default(false),
1140
1008
  automation: portabilityIssueAutomationManifestEntrySchema.nullable(),
1141
- legacyRecurrence: z10.record(z10.unknown()).nullable(),
1142
- status: z10.string().nullable(),
1143
- priority: z10.string().nullable(),
1144
- labelIds: z10.array(z10.string().min(1)).default([]),
1145
- billingCode: z10.string().nullable(),
1146
- executionWorkspaceSettings: z10.record(z10.unknown()).nullable(),
1147
- assigneeAgentRuntimeOverrides: z10.record(z10.unknown()).nullable(),
1148
- metadata: z10.record(z10.unknown()).nullable()
1009
+ legacyRecurrence: z8.record(z8.unknown()).nullable(),
1010
+ status: z8.string().nullable(),
1011
+ priority: z8.string().nullable(),
1012
+ labelIds: z8.array(z8.string().min(1)).default([]),
1013
+ billingCode: z8.string().nullable(),
1014
+ executionWorkspaceSettings: z8.record(z8.unknown()).nullable(),
1015
+ assigneeAgentRuntimeOverrides: z8.record(z8.unknown()).nullable(),
1016
+ metadata: z8.record(z8.unknown()).nullable()
1149
1017
  });
1150
- portabilityManifestSchema = z10.object({
1151
- schemaVersion: z10.number().int().positive(),
1152
- generatedAt: z10.string().datetime(),
1153
- source: z10.object({
1154
- orgId: z10.string().uuid(),
1155
- organizationName: z10.string().min(1)
1018
+ portabilityManifestSchema = z8.object({
1019
+ schemaVersion: z8.number().int().positive(),
1020
+ generatedAt: z8.string().datetime(),
1021
+ source: z8.object({
1022
+ orgId: z8.string().uuid(),
1023
+ organizationName: z8.string().min(1)
1156
1024
  }).nullable(),
1157
- includes: z10.object({
1158
- organization: z10.boolean(),
1159
- agents: z10.boolean(),
1160
- projects: z10.boolean(),
1161
- issues: z10.boolean(),
1162
- skills: z10.boolean()
1025
+ includes: z8.object({
1026
+ organization: z8.boolean(),
1027
+ agents: z8.boolean(),
1028
+ projects: z8.boolean(),
1029
+ issues: z8.boolean(),
1030
+ skills: z8.boolean()
1163
1031
  }),
1164
1032
  organization: portabilityOrganizationManifestEntrySchema.nullable(),
1165
1033
  sidebar: portabilitySidebarOrderSchema.nullable(),
1166
- agents: z10.array(portabilityAgentManifestEntrySchema),
1167
- skills: z10.array(portabilitySkillManifestEntrySchema).default([]),
1168
- projects: z10.array(portabilityProjectManifestEntrySchema).default([]),
1169
- issues: z10.array(portabilityIssueManifestEntrySchema).default([]),
1170
- envInputs: z10.array(portabilityEnvInputSchema).default([])
1034
+ agents: z8.array(portabilityAgentManifestEntrySchema),
1035
+ skills: z8.array(portabilitySkillManifestEntrySchema).default([]),
1036
+ projects: z8.array(portabilityProjectManifestEntrySchema).default([]),
1037
+ issues: z8.array(portabilityIssueManifestEntrySchema).default([]),
1038
+ envInputs: z8.array(portabilityEnvInputSchema).default([])
1171
1039
  });
1172
- portabilitySourceSchema = z10.discriminatedUnion("type", [
1173
- z10.object({
1174
- type: z10.literal("inline"),
1175
- rootPath: z10.string().min(1).optional().nullable(),
1176
- files: z10.record(portabilityFileEntrySchema)
1040
+ portabilitySourceSchema = z8.discriminatedUnion("type", [
1041
+ z8.object({
1042
+ type: z8.literal("inline"),
1043
+ rootPath: z8.string().min(1).optional().nullable(),
1044
+ files: z8.record(portabilityFileEntrySchema)
1177
1045
  }),
1178
- z10.object({
1179
- type: z10.literal("github"),
1180
- url: z10.string().url()
1046
+ z8.object({
1047
+ type: z8.literal("github"),
1048
+ url: z8.string().url()
1181
1049
  })
1182
1050
  ]);
1183
- portabilityTargetSchema = z10.discriminatedUnion("mode", [
1184
- z10.object({
1185
- mode: z10.literal("new_organization"),
1186
- newOrganizationName: z10.string().min(1).optional().nullable()
1051
+ portabilityTargetSchema = z8.discriminatedUnion("mode", [
1052
+ z8.object({
1053
+ mode: z8.literal("new_organization"),
1054
+ newOrganizationName: z8.string().min(1).optional().nullable()
1187
1055
  }),
1188
- z10.object({
1189
- mode: z10.literal("existing_organization"),
1190
- orgId: z10.string().uuid()
1056
+ z8.object({
1057
+ mode: z8.literal("existing_organization"),
1058
+ orgId: z8.string().uuid()
1191
1059
  })
1192
1060
  ]);
1193
- portabilityAgentSelectionSchema = z10.union([
1194
- z10.literal("all"),
1195
- z10.array(z10.string().min(1))
1061
+ portabilityAgentSelectionSchema = z8.union([
1062
+ z8.literal("all"),
1063
+ z8.array(z8.string().min(1))
1196
1064
  ]);
1197
- portabilityCollisionStrategySchema = z10.enum(["rename", "skip", "replace"]);
1198
- organizationPortabilityExportSchema = z10.object({
1065
+ portabilityCollisionStrategySchema = z8.enum(["rename", "skip", "replace"]);
1066
+ organizationPortabilityExportSchema = z8.object({
1199
1067
  include: portabilityIncludeSchema.optional(),
1200
- agents: z10.array(z10.string().min(1)).optional(),
1201
- skills: z10.array(z10.string().min(1)).optional(),
1202
- projects: z10.array(z10.string().min(1)).optional(),
1203
- issues: z10.array(z10.string().min(1)).optional(),
1204
- projectIssues: z10.array(z10.string().min(1)).optional(),
1205
- selectedFiles: z10.array(z10.string().min(1)).optional(),
1206
- expandReferencedSkills: z10.boolean().optional(),
1068
+ agents: z8.array(z8.string().min(1)).optional(),
1069
+ skills: z8.array(z8.string().min(1)).optional(),
1070
+ projects: z8.array(z8.string().min(1)).optional(),
1071
+ issues: z8.array(z8.string().min(1)).optional(),
1072
+ projectIssues: z8.array(z8.string().min(1)).optional(),
1073
+ selectedFiles: z8.array(z8.string().min(1)).optional(),
1074
+ expandReferencedSkills: z8.boolean().optional(),
1207
1075
  sidebarOrder: portabilitySidebarOrderSchema.partial().optional()
1208
1076
  });
1209
- organizationPortabilityPreviewSchema = z10.object({
1077
+ organizationPortabilityPreviewSchema = z8.object({
1210
1078
  source: portabilitySourceSchema,
1211
1079
  include: portabilityIncludeSchema.optional(),
1212
1080
  target: portabilityTargetSchema,
1213
1081
  agents: portabilityAgentSelectionSchema.optional(),
1214
1082
  collisionStrategy: portabilityCollisionStrategySchema.optional(),
1215
- nameOverrides: z10.record(z10.string().min(1), z10.string().min(1)).optional(),
1216
- selectedFiles: z10.array(z10.string().min(1)).optional()
1083
+ nameOverrides: z8.record(z8.string().min(1), z8.string().min(1)).optional(),
1084
+ selectedFiles: z8.array(z8.string().min(1)).optional()
1217
1085
  });
1218
- portabilityAdapterOverrideSchema = z10.object({
1219
- agentRuntimeType: z10.string().min(1),
1220
- agentRuntimeConfig: z10.record(z10.unknown()).optional()
1086
+ portabilityAdapterOverrideSchema = z8.object({
1087
+ agentRuntimeType: z8.string().min(1),
1088
+ agentRuntimeConfig: z8.record(z8.unknown()).optional()
1221
1089
  });
1222
1090
  organizationPortabilityImportSchema = organizationPortabilityPreviewSchema.extend({
1223
- agentRuntimeOverrides: z10.record(z10.string().min(1), portabilityAdapterOverrideSchema).optional()
1091
+ agentRuntimeOverrides: z8.record(z8.string().min(1), portabilityAdapterOverrideSchema).optional()
1092
+ });
1093
+ }
1094
+ });
1095
+
1096
+ // ../packages/shared/src/validators/secret.ts
1097
+ import { z as z9 } from "zod";
1098
+ var envBindingPlainSchema, envBindingSecretRefSchema, envBindingSchema, envConfigSchema, createSecretSchema, rotateSecretSchema, updateSecretSchema;
1099
+ var init_secret = __esm({
1100
+ "../packages/shared/src/validators/secret.ts"() {
1101
+ "use strict";
1102
+ init_constants();
1103
+ envBindingPlainSchema = z9.object({
1104
+ type: z9.literal("plain"),
1105
+ value: z9.string()
1106
+ });
1107
+ envBindingSecretRefSchema = z9.object({
1108
+ type: z9.literal("secret_ref"),
1109
+ secretId: z9.string().uuid(),
1110
+ version: z9.union([z9.literal("latest"), z9.number().int().positive()]).optional()
1111
+ });
1112
+ envBindingSchema = z9.union([
1113
+ z9.string(),
1114
+ envBindingPlainSchema,
1115
+ envBindingSecretRefSchema
1116
+ ]);
1117
+ envConfigSchema = z9.record(envBindingSchema);
1118
+ createSecretSchema = z9.object({
1119
+ name: z9.string().min(1),
1120
+ provider: z9.enum(SECRET_PROVIDERS).optional(),
1121
+ value: z9.string().min(1),
1122
+ description: z9.string().optional().nullable(),
1123
+ externalRef: z9.string().optional().nullable()
1124
+ });
1125
+ rotateSecretSchema = z9.object({
1126
+ value: z9.string().min(1),
1127
+ externalRef: z9.string().optional().nullable()
1128
+ });
1129
+ updateSecretSchema = z9.object({
1130
+ name: z9.string().min(1).optional(),
1131
+ description: z9.string().optional().nullable(),
1132
+ externalRef: z9.string().optional().nullable()
1133
+ });
1134
+ }
1135
+ });
1136
+
1137
+ // ../packages/shared/src/validators/model-fallbacks.ts
1138
+ import { z as z10 } from "zod";
1139
+ function isRecord(value) {
1140
+ return typeof value === "object" && value !== null && !Array.isArray(value);
1141
+ }
1142
+ function validateModelFallbacksConfig(value, ctx, pathPrefix) {
1143
+ const fallbackModels = value.modelFallbacks;
1144
+ if (fallbackModels === void 0) return;
1145
+ if (!Array.isArray(fallbackModels)) {
1146
+ ctx.addIssue({
1147
+ code: z10.ZodIssueCode.custom,
1148
+ message: "modelFallbacks must be an array",
1149
+ path: [...pathPrefix, "modelFallbacks"]
1224
1150
  });
1151
+ return;
1152
+ }
1153
+ fallbackModels.forEach((fallback, index66) => {
1154
+ if (typeof fallback === "string") {
1155
+ if (fallback.trim().length === 0) {
1156
+ ctx.addIssue({
1157
+ code: z10.ZodIssueCode.custom,
1158
+ message: "modelFallbacks string entries must be non-empty",
1159
+ path: [...pathPrefix, "modelFallbacks", index66]
1160
+ });
1161
+ }
1162
+ return;
1163
+ }
1164
+ if (!isRecord(fallback)) {
1165
+ ctx.addIssue({
1166
+ code: z10.ZodIssueCode.custom,
1167
+ message: "modelFallbacks entries must be strings or runtime/model objects",
1168
+ path: [...pathPrefix, "modelFallbacks", index66]
1169
+ });
1170
+ return;
1171
+ }
1172
+ if (typeof fallback.agentRuntimeType !== "string" || fallback.agentRuntimeType.trim().length === 0) {
1173
+ ctx.addIssue({
1174
+ code: z10.ZodIssueCode.custom,
1175
+ message: "modelFallbacks entries must include agentRuntimeType",
1176
+ path: [...pathPrefix, "modelFallbacks", index66, "agentRuntimeType"]
1177
+ });
1178
+ } else if (!agentRuntimeTypes.has(fallback.agentRuntimeType)) {
1179
+ ctx.addIssue({
1180
+ code: z10.ZodIssueCode.custom,
1181
+ message: "modelFallbacks entries must include a valid agentRuntimeType",
1182
+ path: [...pathPrefix, "modelFallbacks", index66, "agentRuntimeType"]
1183
+ });
1184
+ }
1185
+ if (typeof fallback.model !== "string" || fallback.model.trim().length === 0) {
1186
+ ctx.addIssue({
1187
+ code: z10.ZodIssueCode.custom,
1188
+ message: "modelFallbacks entries must include model",
1189
+ path: [...pathPrefix, "modelFallbacks", index66, "model"]
1190
+ });
1191
+ }
1192
+ if (fallback.config !== void 0 && !isRecord(fallback.config)) {
1193
+ ctx.addIssue({
1194
+ code: z10.ZodIssueCode.custom,
1195
+ message: "modelFallbacks entry config must be an object",
1196
+ path: [...pathPrefix, "modelFallbacks", index66, "config"]
1197
+ });
1198
+ } else if (isRecord(fallback.config) && fallback.config.env !== void 0) {
1199
+ const parsed = envConfigSchema.safeParse(fallback.config.env);
1200
+ if (!parsed.success) {
1201
+ ctx.addIssue({
1202
+ code: z10.ZodIssueCode.custom,
1203
+ message: "modelFallbacks entry config.env must be a map of valid env bindings",
1204
+ path: [...pathPrefix, "modelFallbacks", index66, "config", "env"]
1205
+ });
1206
+ }
1207
+ }
1208
+ });
1209
+ }
1210
+ var agentRuntimeTypes;
1211
+ var init_model_fallbacks = __esm({
1212
+ "../packages/shared/src/validators/model-fallbacks.ts"() {
1213
+ "use strict";
1214
+ init_constants();
1215
+ init_secret();
1216
+ agentRuntimeTypes = new Set(AGENT_RUNTIME_TYPES);
1225
1217
  }
1226
1218
  });
1227
1219
 
@@ -3679,8 +3671,6 @@ var init_organizations = __esm({
3679
3671
  spentMonthlyCents: integer("spent_monthly_cents").notNull().default(0),
3680
3672
  requireBoardApprovalForNewAgents: boolean("require_board_approval_for_new_agents").notNull().default(true),
3681
3673
  defaultChatIssueCreationMode: text6("default_chat_issue_creation_mode").notNull().default("manual_approval"),
3682
- defaultChatAgentRuntimeType: text6("default_chat_agent_runtime_type"),
3683
- defaultChatAgentRuntimeConfig: jsonb("default_chat_agent_runtime_config").$type(),
3684
3674
  workspaceConfig: jsonb("workspace_config").$type(),
3685
3675
  brandColor: text6("brand_color"),
3686
3676
  createdAt: timestamp("created_at", { withTimezone: true }).notNull().defaultNow(),