@fideliosai/shared 2026.331.0-canary.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 (230) hide show
  1. package/LICENSE +22 -0
  2. package/dist/agent-url-key.d.ts +4 -0
  3. package/dist/agent-url-key.d.ts.map +1 -0
  4. package/dist/agent-url-key.js +22 -0
  5. package/dist/agent-url-key.js.map +1 -0
  6. package/dist/api.d.ts +20 -0
  7. package/dist/api.d.ts.map +1 -0
  8. package/dist/api.js +20 -0
  9. package/dist/api.js.map +1 -0
  10. package/dist/config-schema.d.ts +905 -0
  11. package/dist/config-schema.d.ts.map +1 -0
  12. package/dist/config-schema.js +159 -0
  13. package/dist/config-schema.js.map +1 -0
  14. package/dist/constants.d.ts +224 -0
  15. package/dist/constants.d.ts.map +1 -0
  16. package/dist/constants.js +553 -0
  17. package/dist/constants.js.map +1 -0
  18. package/dist/index.d.ts +10 -0
  19. package/dist/index.d.ts.map +1 -0
  20. package/dist/index.js +9 -0
  21. package/dist/index.js.map +1 -0
  22. package/dist/project-mentions.d.ts +17 -0
  23. package/dist/project-mentions.d.ts.map +1 -0
  24. package/dist/project-mentions.js +123 -0
  25. package/dist/project-mentions.js.map +1 -0
  26. package/dist/project-mentions.test.d.ts +2 -0
  27. package/dist/project-mentions.test.d.ts.map +1 -0
  28. package/dist/project-mentions.test.js +21 -0
  29. package/dist/project-mentions.test.js.map +1 -0
  30. package/dist/project-url-key.d.ts +3 -0
  31. package/dist/project-url-key.d.ts.map +1 -0
  32. package/dist/project-url-key.js +16 -0
  33. package/dist/project-url-key.js.map +1 -0
  34. package/dist/types/access.d.ts +67 -0
  35. package/dist/types/access.d.ts.map +1 -0
  36. package/dist/types/access.js +2 -0
  37. package/dist/types/access.js.map +1 -0
  38. package/dist/types/activity.d.ts +14 -0
  39. package/dist/types/activity.d.ts.map +1 -0
  40. package/dist/types/activity.js +2 -0
  41. package/dist/types/activity.js.map +1 -0
  42. package/dist/types/adapter-skills.d.ts +31 -0
  43. package/dist/types/adapter-skills.d.ts.map +1 -0
  44. package/dist/types/adapter-skills.js +2 -0
  45. package/dist/types/adapter-skills.js.map +1 -0
  46. package/dist/types/agent.d.ts +108 -0
  47. package/dist/types/agent.d.ts.map +1 -0
  48. package/dist/types/agent.js +2 -0
  49. package/dist/types/agent.js.map +1 -0
  50. package/dist/types/approval.d.ts +26 -0
  51. package/dist/types/approval.d.ts.map +1 -0
  52. package/dist/types/approval.js +2 -0
  53. package/dist/types/approval.js.map +1 -0
  54. package/dist/types/asset.d.ts +16 -0
  55. package/dist/types/asset.d.ts.map +1 -0
  56. package/dist/types/asset.js +2 -0
  57. package/dist/types/asset.js.map +1 -0
  58. package/dist/types/budget.d.ts +86 -0
  59. package/dist/types/budget.d.ts.map +1 -0
  60. package/dist/types/budget.js +2 -0
  61. package/dist/types/budget.js.map +1 -0
  62. package/dist/types/company-portability.d.ts +276 -0
  63. package/dist/types/company-portability.d.ts.map +1 -0
  64. package/dist/types/company-portability.js +2 -0
  65. package/dist/types/company-portability.js.map +1 -0
  66. package/dist/types/company-skill.d.ts +135 -0
  67. package/dist/types/company-skill.d.ts.map +1 -0
  68. package/dist/types/company-skill.js +2 -0
  69. package/dist/types/company-skill.js.map +1 -0
  70. package/dist/types/company.d.ts +20 -0
  71. package/dist/types/company.d.ts.map +1 -0
  72. package/dist/types/company.js +2 -0
  73. package/dist/types/company.js.map +1 -0
  74. package/dist/types/cost.d.ts +106 -0
  75. package/dist/types/cost.d.ts.map +1 -0
  76. package/dist/types/cost.js +2 -0
  77. package/dist/types/cost.js.map +1 -0
  78. package/dist/types/dashboard.d.ts +28 -0
  79. package/dist/types/dashboard.d.ts.map +1 -0
  80. package/dist/types/dashboard.js +2 -0
  81. package/dist/types/dashboard.js.map +1 -0
  82. package/dist/types/finance.d.ts +57 -0
  83. package/dist/types/finance.d.ts.map +1 -0
  84. package/dist/types/finance.js +2 -0
  85. package/dist/types/finance.js.map +1 -0
  86. package/dist/types/goal.d.ts +14 -0
  87. package/dist/types/goal.d.ts.map +1 -0
  88. package/dist/types/goal.js +2 -0
  89. package/dist/types/goal.js.map +1 -0
  90. package/dist/types/heartbeat.d.ts +118 -0
  91. package/dist/types/heartbeat.d.ts.map +1 -0
  92. package/dist/types/heartbeat.js +2 -0
  93. package/dist/types/heartbeat.js.map +1 -0
  94. package/dist/types/index.d.ts +28 -0
  95. package/dist/types/index.d.ts.map +1 -0
  96. package/dist/types/index.js +2 -0
  97. package/dist/types/index.js.map +1 -0
  98. package/dist/types/instance.d.ts +15 -0
  99. package/dist/types/instance.d.ts.map +1 -0
  100. package/dist/types/instance.js +2 -0
  101. package/dist/types/instance.js.map +1 -0
  102. package/dist/types/issue.d.ts +165 -0
  103. package/dist/types/issue.d.ts.map +1 -0
  104. package/dist/types/issue.js +2 -0
  105. package/dist/types/issue.js.map +1 -0
  106. package/dist/types/live.d.ts +9 -0
  107. package/dist/types/live.d.ts.map +1 -0
  108. package/dist/types/live.js +2 -0
  109. package/dist/types/live.js.map +1 -0
  110. package/dist/types/plugin.d.ts +419 -0
  111. package/dist/types/plugin.d.ts.map +1 -0
  112. package/dist/types/plugin.js +2 -0
  113. package/dist/types/plugin.js.map +1 -0
  114. package/dist/types/project.d.ts +67 -0
  115. package/dist/types/project.d.ts.map +1 -0
  116. package/dist/types/project.js +2 -0
  117. package/dist/types/project.js.map +1 -0
  118. package/dist/types/quota.d.ts +26 -0
  119. package/dist/types/quota.d.ts.map +1 -0
  120. package/dist/types/quota.js +2 -0
  121. package/dist/types/quota.js.map +1 -0
  122. package/dist/types/routine.d.ts +113 -0
  123. package/dist/types/routine.d.ts.map +1 -0
  124. package/dist/types/routine.js +2 -0
  125. package/dist/types/routine.js.map +1 -0
  126. package/dist/types/secrets.d.ts +32 -0
  127. package/dist/types/secrets.d.ts.map +1 -0
  128. package/dist/types/secrets.js +2 -0
  129. package/dist/types/secrets.js.map +1 -0
  130. package/dist/types/sidebar-badges.d.ts +7 -0
  131. package/dist/types/sidebar-badges.d.ts.map +1 -0
  132. package/dist/types/sidebar-badges.js +2 -0
  133. package/dist/types/sidebar-badges.js.map +1 -0
  134. package/dist/types/work-product.d.ts +27 -0
  135. package/dist/types/work-product.d.ts.map +1 -0
  136. package/dist/types/work-product.js +2 -0
  137. package/dist/types/work-product.js.map +1 -0
  138. package/dist/types/workspace-operation.d.ts +26 -0
  139. package/dist/types/workspace-operation.d.ts.map +1 -0
  140. package/dist/types/workspace-operation.js +2 -0
  141. package/dist/types/workspace-operation.js.map +1 -0
  142. package/dist/types/workspace-runtime.d.ts +86 -0
  143. package/dist/types/workspace-runtime.d.ts.map +1 -0
  144. package/dist/types/workspace-runtime.js +2 -0
  145. package/dist/types/workspace-runtime.js.map +1 -0
  146. package/dist/validators/access.d.ts +136 -0
  147. package/dist/validators/access.d.ts.map +1 -0
  148. package/dist/validators/access.js +53 -0
  149. package/dist/validators/access.js.map +1 -0
  150. package/dist/validators/adapter-skills.d.ts +156 -0
  151. package/dist/validators/adapter-skills.d.ts.map +1 -0
  152. package/dist/validators/adapter-skills.js +48 -0
  153. package/dist/validators/adapter-skills.js.map +1 -0
  154. package/dist/validators/agent.d.ts +279 -0
  155. package/dist/validators/agent.d.ts.map +1 -0
  156. package/dist/validators/agent.js +85 -0
  157. package/dist/validators/agent.js.map +1 -0
  158. package/dist/validators/approval.d.ts +57 -0
  159. package/dist/validators/approval.d.ts.map +1 -0
  160. package/dist/validators/approval.js +23 -0
  161. package/dist/validators/approval.js.map +1 -0
  162. package/dist/validators/asset.d.ts +10 -0
  163. package/dist/validators/asset.d.ts.map +1 -0
  164. package/dist/validators/asset.js +11 -0
  165. package/dist/validators/asset.js.map +1 -0
  166. package/dist/validators/budget.d.ts +56 -0
  167. package/dist/validators/budget.d.ts.map +1 -0
  168. package/dist/validators/budget.js +27 -0
  169. package/dist/validators/budget.js.map +1 -0
  170. package/dist/validators/company-portability.d.ts +1656 -0
  171. package/dist/validators/company-portability.d.ts.map +1 -0
  172. package/dist/validators/company-portability.js +211 -0
  173. package/dist/validators/company-portability.js.map +1 -0
  174. package/dist/validators/company-skill.d.ts +797 -0
  175. package/dist/validators/company-skill.d.ts.map +1 -0
  176. package/dist/validators/company-skill.js +116 -0
  177. package/dist/validators/company-skill.js.map +1 -0
  178. package/dist/validators/company.d.ts +73 -0
  179. package/dist/validators/company.d.ts.map +1 -0
  180. package/dist/validators/company.js +31 -0
  181. package/dist/validators/company.js.map +1 -0
  182. package/dist/validators/cost.d.ts +92 -0
  183. package/dist/validators/cost.d.ts.map +1 -0
  184. package/dist/validators/cost.js +26 -0
  185. package/dist/validators/cost.js.map +1 -0
  186. package/dist/validators/execution-workspace.d.ts +20 -0
  187. package/dist/validators/execution-workspace.d.ts.map +1 -0
  188. package/dist/validators/execution-workspace.js +15 -0
  189. package/dist/validators/execution-workspace.js.map +1 -0
  190. package/dist/validators/finance.d.ts +129 -0
  191. package/dist/validators/finance.d.ts.map +1 -0
  192. package/dist/validators/finance.js +32 -0
  193. package/dist/validators/finance.js.map +1 -0
  194. package/dist/validators/goal.d.ts +48 -0
  195. package/dist/validators/goal.d.ts.map +1 -0
  196. package/dist/validators/goal.js +12 -0
  197. package/dist/validators/goal.js.map +1 -0
  198. package/dist/validators/index.d.ts +21 -0
  199. package/dist/validators/index.d.ts.map +1 -0
  200. package/dist/validators/index.js +21 -0
  201. package/dist/validators/index.js.map +1 -0
  202. package/dist/validators/instance.d.ts +40 -0
  203. package/dist/validators/instance.d.ts.map +1 -0
  204. package/dist/validators/instance.js +11 -0
  205. package/dist/validators/instance.js.map +1 -0
  206. package/dist/validators/issue.d.ts +427 -0
  207. package/dist/validators/issue.d.ts.map +1 -0
  208. package/dist/validators/issue.js +91 -0
  209. package/dist/validators/issue.js.map +1 -0
  210. package/dist/validators/plugin.d.ts +1173 -0
  211. package/dist/validators/plugin.d.ts.map +1 -0
  212. package/dist/validators/plugin.js +547 -0
  213. package/dist/validators/plugin.js.map +1 -0
  214. package/dist/validators/project.d.ts +583 -0
  215. package/dist/validators/project.d.ts.map +1 -0
  216. package/dist/validators/project.js +93 -0
  217. package/dist/validators/project.js.map +1 -0
  218. package/dist/validators/routine.d.ts +167 -0
  219. package/dist/validators/routine.d.ts.map +1 -0
  220. package/dist/validators/routine.js +50 -0
  221. package/dist/validators/routine.js.map +1 -0
  222. package/dist/validators/secret.d.ts +114 -0
  223. package/dist/validators/secret.d.ts.map +1 -0
  224. package/dist/validators/secret.js +35 -0
  225. package/dist/validators/secret.js.map +1 -0
  226. package/dist/validators/work-product.d.ts +105 -0
  227. package/dist/validators/work-product.d.ts.map +1 -0
  228. package/dist/validators/work-product.js +46 -0
  229. package/dist/validators/work-product.js.map +1 -0
  230. package/package.json +44 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"company-skill.d.ts","sourceRoot":"","sources":["../../src/validators/company-skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,4BAA4B,oEAAkE,CAAC;AAC5G,eAAO,MAAM,4BAA4B,+DAA6D,CAAC;AACvG,eAAO,MAAM,+BAA+B,iDAA+C,CAAC;AAC5F,eAAO,MAAM,6BAA6B,2EAAyE,CAAC;AAEpH,eAAO,MAAM,oCAAoC;;;;;;;;;EAG/C,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB7B,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMrC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;EAOvC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOnC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;EAOzC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;EAEnC,CAAC;AAEH,eAAO,MAAM,oCAAoC;;;;;;;;;EAG/C,CAAC;AAEH,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;EAO/C,CAAC;AAEH,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYhD,CAAC;AAEH,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS9C,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;EAKnC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;EAQvC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;EAGvC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AAC3F,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC"}
@@ -0,0 +1,116 @@
1
+ import { z } from "zod";
2
+ export const companySkillSourceTypeSchema = z.enum(["local_path", "github", "url", "catalog", "skills_sh"]);
3
+ export const companySkillTrustLevelSchema = z.enum(["markdown_only", "assets", "scripts_executables"]);
4
+ export const companySkillCompatibilitySchema = z.enum(["compatible", "unknown", "invalid"]);
5
+ export const companySkillSourceBadgeSchema = z.enum(["fidelios", "github", "local", "url", "catalog", "skills_sh"]);
6
+ export const companySkillFileInventoryEntrySchema = z.object({
7
+ path: z.string().min(1),
8
+ kind: z.enum(["skill", "markdown", "reference", "script", "asset", "other"]),
9
+ });
10
+ export const companySkillSchema = z.object({
11
+ id: z.string().uuid(),
12
+ companyId: z.string().uuid(),
13
+ key: z.string().min(1),
14
+ slug: z.string().min(1),
15
+ name: z.string().min(1),
16
+ description: z.string().nullable(),
17
+ markdown: z.string(),
18
+ sourceType: companySkillSourceTypeSchema,
19
+ sourceLocator: z.string().nullable(),
20
+ sourceRef: z.string().nullable(),
21
+ trustLevel: companySkillTrustLevelSchema,
22
+ compatibility: companySkillCompatibilitySchema,
23
+ fileInventory: z.array(companySkillFileInventoryEntrySchema).default([]),
24
+ metadata: z.record(z.unknown()).nullable(),
25
+ createdAt: z.coerce.date(),
26
+ updatedAt: z.coerce.date(),
27
+ });
28
+ export const companySkillListItemSchema = companySkillSchema.extend({
29
+ attachedAgentCount: z.number().int().nonnegative(),
30
+ editable: z.boolean(),
31
+ editableReason: z.string().nullable(),
32
+ sourceLabel: z.string().nullable(),
33
+ sourceBadge: companySkillSourceBadgeSchema,
34
+ });
35
+ export const companySkillUsageAgentSchema = z.object({
36
+ id: z.string().uuid(),
37
+ name: z.string().min(1),
38
+ urlKey: z.string().min(1),
39
+ adapterType: z.string().min(1),
40
+ desired: z.boolean(),
41
+ actualState: z.string().nullable(),
42
+ });
43
+ export const companySkillDetailSchema = companySkillSchema.extend({
44
+ attachedAgentCount: z.number().int().nonnegative(),
45
+ usedByAgents: z.array(companySkillUsageAgentSchema).default([]),
46
+ editable: z.boolean(),
47
+ editableReason: z.string().nullable(),
48
+ sourceLabel: z.string().nullable(),
49
+ sourceBadge: companySkillSourceBadgeSchema,
50
+ });
51
+ export const companySkillUpdateStatusSchema = z.object({
52
+ supported: z.boolean(),
53
+ reason: z.string().nullable(),
54
+ trackingRef: z.string().nullable(),
55
+ currentRef: z.string().nullable(),
56
+ latestRef: z.string().nullable(),
57
+ hasUpdate: z.boolean(),
58
+ });
59
+ export const companySkillImportSchema = z.object({
60
+ source: z.string().min(1),
61
+ });
62
+ export const companySkillProjectScanRequestSchema = z.object({
63
+ projectIds: z.array(z.string().uuid()).optional(),
64
+ workspaceIds: z.array(z.string().uuid()).optional(),
65
+ });
66
+ export const companySkillProjectScanSkippedSchema = z.object({
67
+ projectId: z.string().uuid(),
68
+ projectName: z.string().min(1),
69
+ workspaceId: z.string().uuid().nullable(),
70
+ workspaceName: z.string().nullable(),
71
+ path: z.string().nullable(),
72
+ reason: z.string().min(1),
73
+ });
74
+ export const companySkillProjectScanConflictSchema = z.object({
75
+ slug: z.string().min(1),
76
+ key: z.string().min(1),
77
+ projectId: z.string().uuid(),
78
+ projectName: z.string().min(1),
79
+ workspaceId: z.string().uuid(),
80
+ workspaceName: z.string().min(1),
81
+ path: z.string().min(1),
82
+ existingSkillId: z.string().uuid(),
83
+ existingSkillKey: z.string().min(1),
84
+ existingSourceLocator: z.string().nullable(),
85
+ reason: z.string().min(1),
86
+ });
87
+ export const companySkillProjectScanResultSchema = z.object({
88
+ scannedProjects: z.number().int().nonnegative(),
89
+ scannedWorkspaces: z.number().int().nonnegative(),
90
+ discovered: z.number().int().nonnegative(),
91
+ imported: z.array(companySkillSchema),
92
+ updated: z.array(companySkillSchema),
93
+ skipped: z.array(companySkillProjectScanSkippedSchema),
94
+ conflicts: z.array(companySkillProjectScanConflictSchema),
95
+ warnings: z.array(z.string()),
96
+ });
97
+ export const companySkillCreateSchema = z.object({
98
+ name: z.string().min(1),
99
+ slug: z.string().min(1).nullable().optional(),
100
+ description: z.string().nullable().optional(),
101
+ markdown: z.string().nullable().optional(),
102
+ });
103
+ export const companySkillFileDetailSchema = z.object({
104
+ skillId: z.string().uuid(),
105
+ path: z.string().min(1),
106
+ kind: z.enum(["skill", "markdown", "reference", "script", "asset", "other"]),
107
+ content: z.string(),
108
+ language: z.string().nullable(),
109
+ markdown: z.boolean(),
110
+ editable: z.boolean(),
111
+ });
112
+ export const companySkillFileUpdateSchema = z.object({
113
+ path: z.string().min(1),
114
+ content: z.string(),
115
+ });
116
+ //# sourceMappingURL=company-skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"company-skill.js","sourceRoot":"","sources":["../../src/validators/company-skill.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ import { z } from "zod";
2
+ export declare const createCompanySchema: z.ZodObject<{
3
+ name: z.ZodString;
4
+ description: z.ZodNullable<z.ZodOptional<z.ZodString>>;
5
+ budgetMonthlyCents: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ name: string;
8
+ budgetMonthlyCents: number;
9
+ description?: string | null | undefined;
10
+ }, {
11
+ name: string;
12
+ description?: string | null | undefined;
13
+ budgetMonthlyCents?: number | undefined;
14
+ }>;
15
+ export type CreateCompany = z.infer<typeof createCompanySchema>;
16
+ export declare const updateCompanySchema: z.ZodObject<{
17
+ name: z.ZodOptional<z.ZodString>;
18
+ description: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
19
+ budgetMonthlyCents: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNumber>>>;
20
+ } & {
21
+ status: z.ZodOptional<z.ZodEnum<["active", "paused", "archived"]>>;
22
+ spentMonthlyCents: z.ZodOptional<z.ZodNumber>;
23
+ requireBoardApprovalForNewAgents: z.ZodOptional<z.ZodBoolean>;
24
+ brandColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
25
+ logoAssetId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
26
+ }, "strip", z.ZodTypeAny, {
27
+ status?: "active" | "paused" | "archived" | undefined;
28
+ name?: string | undefined;
29
+ description?: string | null | undefined;
30
+ budgetMonthlyCents?: number | undefined;
31
+ spentMonthlyCents?: number | undefined;
32
+ requireBoardApprovalForNewAgents?: boolean | undefined;
33
+ brandColor?: string | null | undefined;
34
+ logoAssetId?: string | null | undefined;
35
+ }, {
36
+ status?: "active" | "paused" | "archived" | undefined;
37
+ name?: string | undefined;
38
+ description?: string | null | undefined;
39
+ budgetMonthlyCents?: number | undefined;
40
+ spentMonthlyCents?: number | undefined;
41
+ requireBoardApprovalForNewAgents?: boolean | undefined;
42
+ brandColor?: string | null | undefined;
43
+ logoAssetId?: string | null | undefined;
44
+ }>;
45
+ export type UpdateCompany = z.infer<typeof updateCompanySchema>;
46
+ export declare const updateCompanyBrandingSchema: z.ZodEffects<z.ZodObject<{
47
+ name: z.ZodOptional<z.ZodString>;
48
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
49
+ brandColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
50
+ logoAssetId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
51
+ }, "strict", z.ZodTypeAny, {
52
+ name?: string | undefined;
53
+ description?: string | null | undefined;
54
+ brandColor?: string | null | undefined;
55
+ logoAssetId?: string | null | undefined;
56
+ }, {
57
+ name?: string | undefined;
58
+ description?: string | null | undefined;
59
+ brandColor?: string | null | undefined;
60
+ logoAssetId?: string | null | undefined;
61
+ }>, {
62
+ name?: string | undefined;
63
+ description?: string | null | undefined;
64
+ brandColor?: string | null | undefined;
65
+ logoAssetId?: string | null | undefined;
66
+ }, {
67
+ name?: string | undefined;
68
+ description?: string | null | undefined;
69
+ brandColor?: string | null | undefined;
70
+ logoAssetId?: string | null | undefined;
71
+ }>;
72
+ export type UpdateCompanyBranding = z.infer<typeof updateCompanyBrandingSchema>;
73
+ //# sourceMappingURL=company.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"company.d.ts","sourceRoot":"","sources":["../../src/validators/company.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;EAI9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQ5B,CAAC;AAEL,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;EAerC,CAAC;AAEJ,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { z } from "zod";
2
+ import { COMPANY_STATUSES } from "../constants.js";
3
+ const logoAssetIdSchema = z.string().uuid().nullable().optional();
4
+ const brandColorSchema = z.string().regex(/^#[0-9a-fA-F]{6}$/).nullable().optional();
5
+ export const createCompanySchema = z.object({
6
+ name: z.string().min(1),
7
+ description: z.string().optional().nullable(),
8
+ budgetMonthlyCents: z.number().int().nonnegative().optional().default(0),
9
+ });
10
+ export const updateCompanySchema = createCompanySchema
11
+ .partial()
12
+ .extend({
13
+ status: z.enum(COMPANY_STATUSES).optional(),
14
+ spentMonthlyCents: z.number().int().nonnegative().optional(),
15
+ requireBoardApprovalForNewAgents: z.boolean().optional(),
16
+ brandColor: brandColorSchema,
17
+ logoAssetId: logoAssetIdSchema,
18
+ });
19
+ export const updateCompanyBrandingSchema = z
20
+ .object({
21
+ name: z.string().min(1).optional(),
22
+ description: z.string().nullable().optional(),
23
+ brandColor: brandColorSchema,
24
+ logoAssetId: logoAssetIdSchema,
25
+ })
26
+ .strict()
27
+ .refine((value) => value.name !== undefined
28
+ || value.description !== undefined
29
+ || value.brandColor !== undefined
30
+ || value.logoAssetId !== undefined, "At least one branding field must be provided");
31
+ //# sourceMappingURL=company.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"company.js","sourceRoot":"","sources":["../../src/validators/company.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AAClE,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AAErF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;CACzE,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB;KACnD,OAAO,EAAE;KACT,MAAM,CAAC;IACN,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE;IAC3C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IAC5D,gCAAgC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACxD,UAAU,EAAE,gBAAgB;IAC5B,WAAW,EAAE,iBAAiB;CAC/B,CAAC,CAAC;AAIL,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC;KACzC,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAClC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,UAAU,EAAE,gBAAgB;IAC5B,WAAW,EAAE,iBAAiB;CAC/B,CAAC;KACD,MAAM,EAAE;KACR,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,KAAK,SAAS;OACrB,KAAK,CAAC,WAAW,KAAK,SAAS;OAC/B,KAAK,CAAC,UAAU,KAAK,SAAS;OAC9B,KAAK,CAAC,WAAW,KAAK,SAAS,EACpC,8CAA8C,CAC/C,CAAC"}
@@ -0,0 +1,92 @@
1
+ import { z } from "zod";
2
+ export declare const createCostEventSchema: z.ZodEffects<z.ZodObject<{
3
+ agentId: z.ZodString;
4
+ issueId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
5
+ projectId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
6
+ goalId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
7
+ heartbeatRunId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
8
+ billingCode: z.ZodNullable<z.ZodOptional<z.ZodString>>;
9
+ provider: z.ZodString;
10
+ biller: z.ZodOptional<z.ZodString>;
11
+ billingType: z.ZodDefault<z.ZodOptional<z.ZodEnum<["metered_api", "subscription_included", "subscription_overage", "credits", "fixed", "unknown"]>>>;
12
+ model: z.ZodString;
13
+ inputTokens: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
14
+ cachedInputTokens: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
15
+ outputTokens: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
16
+ costCents: z.ZodNumber;
17
+ occurredAt: z.ZodString;
18
+ }, "strip", z.ZodTypeAny, {
19
+ provider: string;
20
+ agentId: string;
21
+ billingType: "metered_api" | "subscription_included" | "subscription_overage" | "credits" | "fixed" | "unknown";
22
+ model: string;
23
+ inputTokens: number;
24
+ cachedInputTokens: number;
25
+ outputTokens: number;
26
+ costCents: number;
27
+ occurredAt: string;
28
+ projectId?: string | null | undefined;
29
+ billingCode?: string | null | undefined;
30
+ goalId?: string | null | undefined;
31
+ issueId?: string | null | undefined;
32
+ heartbeatRunId?: string | null | undefined;
33
+ biller?: string | undefined;
34
+ }, {
35
+ provider: string;
36
+ agentId: string;
37
+ model: string;
38
+ costCents: number;
39
+ occurredAt: string;
40
+ projectId?: string | null | undefined;
41
+ billingCode?: string | null | undefined;
42
+ goalId?: string | null | undefined;
43
+ issueId?: string | null | undefined;
44
+ heartbeatRunId?: string | null | undefined;
45
+ biller?: string | undefined;
46
+ billingType?: "metered_api" | "subscription_included" | "subscription_overage" | "credits" | "fixed" | "unknown" | undefined;
47
+ inputTokens?: number | undefined;
48
+ cachedInputTokens?: number | undefined;
49
+ outputTokens?: number | undefined;
50
+ }>, {
51
+ biller: string;
52
+ provider: string;
53
+ agentId: string;
54
+ billingType: "metered_api" | "subscription_included" | "subscription_overage" | "credits" | "fixed" | "unknown";
55
+ model: string;
56
+ inputTokens: number;
57
+ cachedInputTokens: number;
58
+ outputTokens: number;
59
+ costCents: number;
60
+ occurredAt: string;
61
+ projectId?: string | null | undefined;
62
+ billingCode?: string | null | undefined;
63
+ goalId?: string | null | undefined;
64
+ issueId?: string | null | undefined;
65
+ heartbeatRunId?: string | null | undefined;
66
+ }, {
67
+ provider: string;
68
+ agentId: string;
69
+ model: string;
70
+ costCents: number;
71
+ occurredAt: string;
72
+ projectId?: string | null | undefined;
73
+ billingCode?: string | null | undefined;
74
+ goalId?: string | null | undefined;
75
+ issueId?: string | null | undefined;
76
+ heartbeatRunId?: string | null | undefined;
77
+ biller?: string | undefined;
78
+ billingType?: "metered_api" | "subscription_included" | "subscription_overage" | "credits" | "fixed" | "unknown" | undefined;
79
+ inputTokens?: number | undefined;
80
+ cachedInputTokens?: number | undefined;
81
+ outputTokens?: number | undefined;
82
+ }>;
83
+ export type CreateCostEvent = z.infer<typeof createCostEventSchema>;
84
+ export declare const updateBudgetSchema: z.ZodObject<{
85
+ budgetMonthlyCents: z.ZodNumber;
86
+ }, "strip", z.ZodTypeAny, {
87
+ budgetMonthlyCents: number;
88
+ }, {
89
+ budgetMonthlyCents: number;
90
+ }>;
91
+ export type UpdateBudget = z.infer<typeof updateBudgetSchema>;
92
+ //# sourceMappingURL=cost.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cost.d.ts","sourceRoot":"","sources":["../../src/validators/cost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmB/B,CAAC;AAEJ,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,kBAAkB;;;;;;EAE7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { z } from "zod";
2
+ import { BILLING_TYPES } from "../constants.js";
3
+ export const createCostEventSchema = z.object({
4
+ agentId: z.string().uuid(),
5
+ issueId: z.string().uuid().optional().nullable(),
6
+ projectId: z.string().uuid().optional().nullable(),
7
+ goalId: z.string().uuid().optional().nullable(),
8
+ heartbeatRunId: z.string().uuid().optional().nullable(),
9
+ billingCode: z.string().optional().nullable(),
10
+ provider: z.string().min(1),
11
+ biller: z.string().min(1).optional(),
12
+ billingType: z.enum(BILLING_TYPES).optional().default("unknown"),
13
+ model: z.string().min(1),
14
+ inputTokens: z.number().int().nonnegative().optional().default(0),
15
+ cachedInputTokens: z.number().int().nonnegative().optional().default(0),
16
+ outputTokens: z.number().int().nonnegative().optional().default(0),
17
+ costCents: z.number().int().nonnegative(),
18
+ occurredAt: z.string().datetime(),
19
+ }).transform((value) => ({
20
+ ...value,
21
+ biller: value.biller ?? value.provider,
22
+ }));
23
+ export const updateBudgetSchema = z.object({
24
+ budgetMonthlyCents: z.number().int().nonnegative(),
25
+ });
26
+ //# sourceMappingURL=cost.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cost.js","sourceRoot":"","sources":["../../src/validators/cost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAC1B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAChD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC/C,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACvD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;IAChE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACjE,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACvE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAClE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACvB,GAAG,KAAK;IACR,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,QAAQ;CACvC,CAAC,CAAC,CAAC;AAIJ,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;CACnD,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { z } from "zod";
2
+ export declare const executionWorkspaceStatusSchema: z.ZodEnum<["active", "idle", "in_review", "archived", "cleanup_failed"]>;
3
+ export declare const updateExecutionWorkspaceSchema: z.ZodObject<{
4
+ status: z.ZodOptional<z.ZodEnum<["active", "idle", "in_review", "archived", "cleanup_failed"]>>;
5
+ cleanupEligibleAt: z.ZodNullable<z.ZodOptional<z.ZodString>>;
6
+ cleanupReason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
7
+ metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
8
+ }, "strict", z.ZodTypeAny, {
9
+ status?: "active" | "archived" | "idle" | "in_review" | "cleanup_failed" | undefined;
10
+ metadata?: Record<string, unknown> | null | undefined;
11
+ cleanupEligibleAt?: string | null | undefined;
12
+ cleanupReason?: string | null | undefined;
13
+ }, {
14
+ status?: "active" | "archived" | "idle" | "in_review" | "cleanup_failed" | undefined;
15
+ metadata?: Record<string, unknown> | null | undefined;
16
+ cleanupEligibleAt?: string | null | undefined;
17
+ cleanupReason?: string | null | undefined;
18
+ }>;
19
+ export type UpdateExecutionWorkspace = z.infer<typeof updateExecutionWorkspaceSchema>;
20
+ //# sourceMappingURL=execution-workspace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-workspace.d.ts","sourceRoot":"","sources":["../../src/validators/execution-workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,8BAA8B,0EAMzC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;EAKhC,CAAC;AAEZ,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { z } from "zod";
2
+ export const executionWorkspaceStatusSchema = z.enum([
3
+ "active",
4
+ "idle",
5
+ "in_review",
6
+ "archived",
7
+ "cleanup_failed",
8
+ ]);
9
+ export const updateExecutionWorkspaceSchema = z.object({
10
+ status: executionWorkspaceStatusSchema.optional(),
11
+ cleanupEligibleAt: z.string().datetime().optional().nullable(),
12
+ cleanupReason: z.string().optional().nullable(),
13
+ metadata: z.record(z.unknown()).optional().nullable(),
14
+ }).strict();
15
+ //# sourceMappingURL=execution-workspace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-workspace.js","sourceRoot":"","sources":["../../src/validators/execution-workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,IAAI,CAAC;IACnD,QAAQ;IACR,MAAM;IACN,WAAW;IACX,UAAU;IACV,gBAAgB;CACjB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,MAAM,EAAE,8BAA8B,CAAC,QAAQ,EAAE;IACjD,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC9D,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACtD,CAAC,CAAC,MAAM,EAAE,CAAC"}
@@ -0,0 +1,129 @@
1
+ import { z } from "zod";
2
+ export declare const createFinanceEventSchema: z.ZodEffects<z.ZodObject<{
3
+ agentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
4
+ issueId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
5
+ projectId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
6
+ goalId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
7
+ heartbeatRunId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
8
+ costEventId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
9
+ billingCode: z.ZodNullable<z.ZodOptional<z.ZodString>>;
10
+ description: z.ZodNullable<z.ZodOptional<z.ZodString>>;
11
+ eventKind: z.ZodEnum<["inference_charge", "platform_fee", "credit_purchase", "credit_refund", "credit_expiry", "byok_fee", "gateway_overhead", "log_storage_charge", "logpush_charge", "provisioned_capacity_charge", "training_charge", "custom_model_import_charge", "custom_model_storage_charge", "manual_adjustment"]>;
12
+ direction: z.ZodDefault<z.ZodOptional<z.ZodEnum<["debit", "credit"]>>>;
13
+ biller: z.ZodString;
14
+ provider: z.ZodNullable<z.ZodOptional<z.ZodString>>;
15
+ executionAdapterType: z.ZodNullable<z.ZodOptional<z.ZodEnum<["process", "http", "claude_local", "codex_local", "opencode_local", "pi_local", "cursor", "openclaw_gateway", "hermes_local"]>>>;
16
+ pricingTier: z.ZodNullable<z.ZodOptional<z.ZodString>>;
17
+ region: z.ZodNullable<z.ZodOptional<z.ZodString>>;
18
+ model: z.ZodNullable<z.ZodOptional<z.ZodString>>;
19
+ quantity: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
20
+ unit: z.ZodNullable<z.ZodOptional<z.ZodEnum<["input_token", "output_token", "cached_input_token", "request", "credit_usd", "credit_unit", "model_unit_minute", "model_unit_hour", "gb_month", "train_token", "unknown"]>>>;
21
+ amountCents: z.ZodNumber;
22
+ currency: z.ZodDefault<z.ZodOptional<z.ZodString>>;
23
+ estimated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
24
+ externalInvoiceId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
25
+ metadataJson: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
26
+ occurredAt: z.ZodString;
27
+ }, "strip", z.ZodTypeAny, {
28
+ biller: string;
29
+ occurredAt: string;
30
+ eventKind: "inference_charge" | "platform_fee" | "credit_purchase" | "credit_refund" | "credit_expiry" | "byok_fee" | "gateway_overhead" | "log_storage_charge" | "logpush_charge" | "provisioned_capacity_charge" | "training_charge" | "custom_model_import_charge" | "custom_model_storage_charge" | "manual_adjustment";
31
+ direction: "debit" | "credit";
32
+ amountCents: number;
33
+ currency: string;
34
+ estimated: boolean;
35
+ provider?: string | null | undefined;
36
+ region?: string | null | undefined;
37
+ description?: string | null | undefined;
38
+ projectId?: string | null | undefined;
39
+ billingCode?: string | null | undefined;
40
+ goalId?: string | null | undefined;
41
+ agentId?: string | null | undefined;
42
+ issueId?: string | null | undefined;
43
+ heartbeatRunId?: string | null | undefined;
44
+ model?: string | null | undefined;
45
+ costEventId?: string | null | undefined;
46
+ executionAdapterType?: "process" | "http" | "claude_local" | "codex_local" | "opencode_local" | "pi_local" | "cursor" | "openclaw_gateway" | "hermes_local" | null | undefined;
47
+ pricingTier?: string | null | undefined;
48
+ quantity?: number | null | undefined;
49
+ unit?: "unknown" | "input_token" | "output_token" | "cached_input_token" | "request" | "credit_usd" | "credit_unit" | "model_unit_minute" | "model_unit_hour" | "gb_month" | "train_token" | null | undefined;
50
+ externalInvoiceId?: string | null | undefined;
51
+ metadataJson?: Record<string, unknown> | null | undefined;
52
+ }, {
53
+ biller: string;
54
+ occurredAt: string;
55
+ eventKind: "inference_charge" | "platform_fee" | "credit_purchase" | "credit_refund" | "credit_expiry" | "byok_fee" | "gateway_overhead" | "log_storage_charge" | "logpush_charge" | "provisioned_capacity_charge" | "training_charge" | "custom_model_import_charge" | "custom_model_storage_charge" | "manual_adjustment";
56
+ amountCents: number;
57
+ provider?: string | null | undefined;
58
+ region?: string | null | undefined;
59
+ description?: string | null | undefined;
60
+ projectId?: string | null | undefined;
61
+ billingCode?: string | null | undefined;
62
+ goalId?: string | null | undefined;
63
+ agentId?: string | null | undefined;
64
+ issueId?: string | null | undefined;
65
+ heartbeatRunId?: string | null | undefined;
66
+ model?: string | null | undefined;
67
+ costEventId?: string | null | undefined;
68
+ direction?: "debit" | "credit" | undefined;
69
+ executionAdapterType?: "process" | "http" | "claude_local" | "codex_local" | "opencode_local" | "pi_local" | "cursor" | "openclaw_gateway" | "hermes_local" | null | undefined;
70
+ pricingTier?: string | null | undefined;
71
+ quantity?: number | null | undefined;
72
+ unit?: "unknown" | "input_token" | "output_token" | "cached_input_token" | "request" | "credit_usd" | "credit_unit" | "model_unit_minute" | "model_unit_hour" | "gb_month" | "train_token" | null | undefined;
73
+ currency?: string | undefined;
74
+ estimated?: boolean | undefined;
75
+ externalInvoiceId?: string | null | undefined;
76
+ metadataJson?: Record<string, unknown> | null | undefined;
77
+ }>, {
78
+ currency: string;
79
+ biller: string;
80
+ occurredAt: string;
81
+ eventKind: "inference_charge" | "platform_fee" | "credit_purchase" | "credit_refund" | "credit_expiry" | "byok_fee" | "gateway_overhead" | "log_storage_charge" | "logpush_charge" | "provisioned_capacity_charge" | "training_charge" | "custom_model_import_charge" | "custom_model_storage_charge" | "manual_adjustment";
82
+ direction: "debit" | "credit";
83
+ amountCents: number;
84
+ estimated: boolean;
85
+ provider?: string | null | undefined;
86
+ region?: string | null | undefined;
87
+ description?: string | null | undefined;
88
+ projectId?: string | null | undefined;
89
+ billingCode?: string | null | undefined;
90
+ goalId?: string | null | undefined;
91
+ agentId?: string | null | undefined;
92
+ issueId?: string | null | undefined;
93
+ heartbeatRunId?: string | null | undefined;
94
+ model?: string | null | undefined;
95
+ costEventId?: string | null | undefined;
96
+ executionAdapterType?: "process" | "http" | "claude_local" | "codex_local" | "opencode_local" | "pi_local" | "cursor" | "openclaw_gateway" | "hermes_local" | null | undefined;
97
+ pricingTier?: string | null | undefined;
98
+ quantity?: number | null | undefined;
99
+ unit?: "unknown" | "input_token" | "output_token" | "cached_input_token" | "request" | "credit_usd" | "credit_unit" | "model_unit_minute" | "model_unit_hour" | "gb_month" | "train_token" | null | undefined;
100
+ externalInvoiceId?: string | null | undefined;
101
+ metadataJson?: Record<string, unknown> | null | undefined;
102
+ }, {
103
+ biller: string;
104
+ occurredAt: string;
105
+ eventKind: "inference_charge" | "platform_fee" | "credit_purchase" | "credit_refund" | "credit_expiry" | "byok_fee" | "gateway_overhead" | "log_storage_charge" | "logpush_charge" | "provisioned_capacity_charge" | "training_charge" | "custom_model_import_charge" | "custom_model_storage_charge" | "manual_adjustment";
106
+ amountCents: number;
107
+ provider?: string | null | undefined;
108
+ region?: string | null | undefined;
109
+ description?: string | null | undefined;
110
+ projectId?: string | null | undefined;
111
+ billingCode?: string | null | undefined;
112
+ goalId?: string | null | undefined;
113
+ agentId?: string | null | undefined;
114
+ issueId?: string | null | undefined;
115
+ heartbeatRunId?: string | null | undefined;
116
+ model?: string | null | undefined;
117
+ costEventId?: string | null | undefined;
118
+ direction?: "debit" | "credit" | undefined;
119
+ executionAdapterType?: "process" | "http" | "claude_local" | "codex_local" | "opencode_local" | "pi_local" | "cursor" | "openclaw_gateway" | "hermes_local" | null | undefined;
120
+ pricingTier?: string | null | undefined;
121
+ quantity?: number | null | undefined;
122
+ unit?: "unknown" | "input_token" | "output_token" | "cached_input_token" | "request" | "credit_usd" | "credit_unit" | "model_unit_minute" | "model_unit_hour" | "gb_month" | "train_token" | null | undefined;
123
+ currency?: string | undefined;
124
+ estimated?: boolean | undefined;
125
+ externalInvoiceId?: string | null | undefined;
126
+ metadataJson?: Record<string, unknown> | null | undefined;
127
+ }>;
128
+ export type CreateFinanceEvent = z.infer<typeof createFinanceEventSchema>;
129
+ //# sourceMappingURL=finance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finance.d.ts","sourceRoot":"","sources":["../../src/validators/finance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BlC,CAAC;AAEJ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { z } from "zod";
2
+ import { AGENT_ADAPTER_TYPES, FINANCE_DIRECTIONS, FINANCE_EVENT_KINDS, FINANCE_UNITS } from "../constants.js";
3
+ export const createFinanceEventSchema = z.object({
4
+ agentId: z.string().uuid().optional().nullable(),
5
+ issueId: z.string().uuid().optional().nullable(),
6
+ projectId: z.string().uuid().optional().nullable(),
7
+ goalId: z.string().uuid().optional().nullable(),
8
+ heartbeatRunId: z.string().uuid().optional().nullable(),
9
+ costEventId: z.string().uuid().optional().nullable(),
10
+ billingCode: z.string().optional().nullable(),
11
+ description: z.string().max(500).optional().nullable(),
12
+ eventKind: z.enum(FINANCE_EVENT_KINDS),
13
+ direction: z.enum(FINANCE_DIRECTIONS).optional().default("debit"),
14
+ biller: z.string().min(1),
15
+ provider: z.string().min(1).optional().nullable(),
16
+ executionAdapterType: z.enum(AGENT_ADAPTER_TYPES).optional().nullable(),
17
+ pricingTier: z.string().min(1).optional().nullable(),
18
+ region: z.string().min(1).optional().nullable(),
19
+ model: z.string().min(1).optional().nullable(),
20
+ quantity: z.number().int().nonnegative().optional().nullable(),
21
+ unit: z.enum(FINANCE_UNITS).optional().nullable(),
22
+ amountCents: z.number().int().nonnegative(),
23
+ currency: z.string().length(3).optional().default("USD"),
24
+ estimated: z.boolean().optional().default(false),
25
+ externalInvoiceId: z.string().optional().nullable(),
26
+ metadataJson: z.record(z.string(), z.unknown()).optional().nullable(),
27
+ occurredAt: z.string().datetime(),
28
+ }).transform((value) => ({
29
+ ...value,
30
+ currency: value.currency.toUpperCase(),
31
+ }));
32
+ //# sourceMappingURL=finance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finance.js","sourceRoot":"","sources":["../../src/validators/finance.ts"],"names":[],"mappings":"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"}