@rudderhq/server 0.2.0-canary.9 → 0.2.1

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 (196) hide show
  1. package/dist/bootstrap/register-api-routes.d.ts.map +1 -1
  2. package/dist/bootstrap/register-api-routes.js +2 -0
  3. package/dist/bootstrap/register-api-routes.js.map +1 -1
  4. package/dist/bundled-plugins/plugin-linear/dist/ui/index.js +8 -1
  5. package/dist/bundled-plugins/plugin-linear/dist/ui/index.js.map +2 -2
  6. package/dist/bundled-plugins/plugin-linear/dist/worker.js +20 -5
  7. package/dist/bundled-plugins/plugin-linear/dist/worker.js.map +2 -2
  8. package/dist/home-paths.d.ts +2 -0
  9. package/dist/home-paths.d.ts.map +1 -1
  10. package/dist/home-paths.js +6 -1
  11. package/dist/home-paths.js.map +1 -1
  12. package/dist/index.d.ts +11 -0
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +55 -2
  15. package/dist/index.js.map +1 -1
  16. package/dist/langfuse-transcript.d.ts.map +1 -1
  17. package/dist/langfuse-transcript.js +16 -2
  18. package/dist/langfuse-transcript.js.map +1 -1
  19. package/dist/middleware/auth.d.ts.map +1 -1
  20. package/dist/middleware/auth.js +54 -1
  21. package/dist/middleware/auth.js.map +1 -1
  22. package/dist/onboarding-assets/ceo/HEARTBEAT.md +8 -4
  23. package/dist/onboarding-assets/default/HEARTBEAT.md +7 -4
  24. package/dist/routes/agents.d.ts.map +1 -1
  25. package/dist/routes/agents.js +79 -4
  26. package/dist/routes/agents.js.map +1 -1
  27. package/dist/routes/approvals.d.ts.map +1 -1
  28. package/dist/routes/approvals.js +47 -2
  29. package/dist/routes/approvals.js.map +1 -1
  30. package/dist/routes/chats.d.ts.map +1 -1
  31. package/dist/routes/chats.js +300 -92
  32. package/dist/routes/chats.js.map +1 -1
  33. package/dist/routes/costs.d.ts.map +1 -1
  34. package/dist/routes/costs.js +20 -0
  35. package/dist/routes/costs.js.map +1 -1
  36. package/dist/routes/issues.d.ts.map +1 -1
  37. package/dist/routes/issues.js +236 -22
  38. package/dist/routes/issues.js.map +1 -1
  39. package/dist/routes/onboarding.d.ts +3 -0
  40. package/dist/routes/onboarding.d.ts.map +1 -0
  41. package/dist/routes/onboarding.js +545 -0
  42. package/dist/routes/onboarding.js.map +1 -0
  43. package/dist/routes/orgs.d.ts.map +1 -1
  44. package/dist/routes/orgs.js +22 -0
  45. package/dist/routes/orgs.js.map +1 -1
  46. package/dist/services/activity.d.ts.map +1 -1
  47. package/dist/services/activity.js +32 -1
  48. package/dist/services/activity.js.map +1 -1
  49. package/dist/services/agent-run-context.d.ts +1 -0
  50. package/dist/services/agent-run-context.d.ts.map +1 -1
  51. package/dist/services/agent-run-context.js +1 -0
  52. package/dist/services/agent-run-context.js.map +1 -1
  53. package/dist/services/agents.d.ts +13 -13
  54. package/dist/services/automations.d.ts +2 -2
  55. package/dist/services/calendar.d.ts +4 -4
  56. package/dist/services/chat-assistant.d.ts +11 -2
  57. package/dist/services/chat-assistant.d.ts.map +1 -1
  58. package/dist/services/chat-assistant.js +143 -8
  59. package/dist/services/chat-assistant.js.map +1 -1
  60. package/dist/services/chats.d.ts +112 -13
  61. package/dist/services/chats.d.ts.map +1 -1
  62. package/dist/services/chats.js +218 -38
  63. package/dist/services/chats.js.map +1 -1
  64. package/dist/services/costs.d.ts +21 -0
  65. package/dist/services/costs.d.ts.map +1 -1
  66. package/dist/services/costs.js +102 -2
  67. package/dist/services/costs.js.map +1 -1
  68. package/dist/services/finance.d.ts +2 -2
  69. package/dist/services/goals.d.ts +12 -12
  70. package/dist/services/instance-settings.d.ts.map +1 -1
  71. package/dist/services/instance-settings.js +27 -16
  72. package/dist/services/instance-settings.js.map +1 -1
  73. package/dist/services/issue-approvals.d.ts +16 -2
  74. package/dist/services/issue-approvals.d.ts.map +1 -1
  75. package/dist/services/issue-approvals.js +27 -4
  76. package/dist/services/issue-approvals.js.map +1 -1
  77. package/dist/services/issue-review-wakeup.d.ts +49 -1
  78. package/dist/services/issue-review-wakeup.d.ts.map +1 -1
  79. package/dist/services/issue-review-wakeup.js +39 -2
  80. package/dist/services/issue-review-wakeup.js.map +1 -1
  81. package/dist/services/issues.d.ts +2 -1
  82. package/dist/services/issues.d.ts.map +1 -1
  83. package/dist/services/issues.js +126 -5
  84. package/dist/services/issues.js.map +1 -1
  85. package/dist/services/knowledge-portability/organization-skills.d.ts +1 -0
  86. package/dist/services/knowledge-portability/organization-skills.d.ts.map +1 -1
  87. package/dist/services/knowledge-portability/organization-skills.js +3 -2
  88. package/dist/services/knowledge-portability/organization-skills.js.map +1 -1
  89. package/dist/services/messenger.d.ts +5 -0
  90. package/dist/services/messenger.d.ts.map +1 -1
  91. package/dist/services/messenger.js +154 -15
  92. package/dist/services/messenger.js.map +1 -1
  93. package/dist/services/organization-workspace-browser.d.ts.map +1 -1
  94. package/dist/services/organization-workspace-browser.js +64 -9
  95. package/dist/services/organization-workspace-browser.js.map +1 -1
  96. package/dist/services/orgs.d.ts +1 -1
  97. package/dist/services/plugin-registry.d.ts +4 -4
  98. package/dist/services/projects.d.ts +1 -1
  99. package/dist/services/runtime-kernel/heartbeat.d.ts.map +1 -1
  100. package/dist/services/runtime-kernel/heartbeat.js +571 -31
  101. package/dist/services/runtime-kernel/heartbeat.js.map +1 -1
  102. package/dist/services/secrets.d.ts +5 -5
  103. package/dist/services/workspace-backups.d.ts.map +1 -1
  104. package/dist/services/workspace-backups.js +6 -0
  105. package/dist/services/workspace-backups.js.map +1 -1
  106. package/dist/services/workspace-runtime.d.ts.map +1 -1
  107. package/dist/services/workspace-runtime.js +2 -0
  108. package/dist/services/workspace-runtime.js.map +1 -1
  109. package/package.json +13 -13
  110. package/resources/bundled-skills/rudder/SKILL.md +72 -7
  111. package/resources/bundled-skills/rudder/references/cli-reference.md +34 -9
  112. package/resources/bundled-skills/rudder/references/organization-skills.md +12 -7
  113. package/resources/bundled-skills/rudder-create-agent/references/cli-reference.md +1 -0
  114. package/skills/rudder/SKILL.md +72 -7
  115. package/skills/rudder/references/cli-reference.md +34 -9
  116. package/skills/rudder/references/organization-skills.md +12 -7
  117. package/skills/rudder-create-agent/references/cli-reference.md +1 -0
  118. package/ui-dist/assets/{_basePickBy-aX2f6dVl.js → _basePickBy-EvWeCTRb.js} +1 -1
  119. package/ui-dist/assets/{_baseUniq-BYwL7heN.js → _baseUniq-C_DXAETg.js} +1 -1
  120. package/ui-dist/assets/{arc-BG9f5pwY.js → arc-BWTkVM-u.js} +1 -1
  121. package/ui-dist/assets/{architectureDiagram-2XIMDMQ5-BFFQoJJ1.js → architectureDiagram-2XIMDMQ5-yyX54Dgl.js} +1 -1
  122. package/ui-dist/assets/{blockDiagram-WCTKOSBZ-Bvx1IB1z.js → blockDiagram-WCTKOSBZ-DleWvS8P.js} +1 -1
  123. package/ui-dist/assets/{c4Diagram-IC4MRINW-DJbCE4sh.js → c4Diagram-IC4MRINW-CltWqWC_.js} +1 -1
  124. package/ui-dist/assets/channel-Gdzxe2a1.js +1 -0
  125. package/ui-dist/assets/{chunk-4BX2VUAB-BOVbLFsN.js → chunk-4BX2VUAB-CA6RvGN7.js} +1 -1
  126. package/ui-dist/assets/{chunk-55IACEB6-D5pKj6S9.js → chunk-55IACEB6-D_EpF39w.js} +1 -1
  127. package/ui-dist/assets/{chunk-FMBD7UC4-OY5xuJeR.js → chunk-FMBD7UC4-CYMkBnLy.js} +1 -1
  128. package/ui-dist/assets/{chunk-JSJVCQXG-C5X67KZg.js → chunk-JSJVCQXG-CIY2Cb1T.js} +1 -1
  129. package/ui-dist/assets/{chunk-KX2RTZJC-C-4PZ9Q_.js → chunk-KX2RTZJC-BUyGoIKj.js} +1 -1
  130. package/ui-dist/assets/{chunk-NQ4KR5QH-XysPlqPj.js → chunk-NQ4KR5QH-DkntSLtY.js} +1 -1
  131. package/ui-dist/assets/{chunk-QZHKN3VN-B5wEbFHo.js → chunk-QZHKN3VN-DeEs3yL0.js} +1 -1
  132. package/ui-dist/assets/{chunk-WL4C6EOR-BanwYFa2.js → chunk-WL4C6EOR-Va8TkdTb.js} +1 -1
  133. package/ui-dist/assets/classDiagram-VBA2DB6C-BN6WyuN3.js +1 -0
  134. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-BN6WyuN3.js +1 -0
  135. package/ui-dist/assets/clone-DL9OCUyP.js +1 -0
  136. package/ui-dist/assets/{cose-bilkent-S5V4N54A-Cd4q2swD.js → cose-bilkent-S5V4N54A-Bb6NLaVm.js} +1 -1
  137. package/ui-dist/assets/{dagre-KLK3FWXG-B_VyOhf3.js → dagre-KLK3FWXG-DpqLnZ3A.js} +1 -1
  138. package/ui-dist/assets/{diagram-E7M64L7V-BRoG4Mz6.js → diagram-E7M64L7V-D7J8NbEW.js} +1 -1
  139. package/ui-dist/assets/{diagram-IFDJBPK2-CRU_A9p9.js → diagram-IFDJBPK2-Ds2u81Zi.js} +1 -1
  140. package/ui-dist/assets/{diagram-P4PSJMXO-BYSQDbfb.js → diagram-P4PSJMXO-BwBplO7L.js} +1 -1
  141. package/ui-dist/assets/{erDiagram-INFDFZHY-v5j1kyWr.js → erDiagram-INFDFZHY-Ba-Ynr8U.js} +1 -1
  142. package/ui-dist/assets/{flowDiagram-PKNHOUZH-C06ZQgTj.js → flowDiagram-PKNHOUZH-FnOXpXb_.js} +1 -1
  143. package/ui-dist/assets/{ganttDiagram-A5KZAMGK-Dw9p5nQ1.js → ganttDiagram-A5KZAMGK-B8-MpUjy.js} +1 -1
  144. package/ui-dist/assets/{gitGraphDiagram-K3NZZRJ6-CrpXRIaP.js → gitGraphDiagram-K3NZZRJ6-DvyBGQTF.js} +1 -1
  145. package/ui-dist/assets/{graph-ClTUmULf.js → graph-BdpIVR-I.js} +1 -1
  146. package/ui-dist/assets/{index-DK13xhRv.js → index-3CPMGfu4.js} +1 -1
  147. package/ui-dist/assets/index-44A3IjSd.css +1 -0
  148. package/ui-dist/assets/{index-L6M3nVxh.js → index-B4seykMn.js} +1 -1
  149. package/ui-dist/assets/{index-Bpc2gRVo.js → index-B5Lq7qho.js} +1 -1
  150. package/ui-dist/assets/{index-DkDkjZ-D.js → index-BKWZYXO6.js} +1 -1
  151. package/ui-dist/assets/{index-DxzAgTWd.js → index-BO-P9C91.js} +1 -1
  152. package/ui-dist/assets/{index-BvGogi9q.js → index-BO9KiNr0.js} +1 -1
  153. package/ui-dist/assets/{index-Btwy7Cp-.js → index-Bd_GitJ7.js} +1 -1
  154. package/ui-dist/assets/{index-DNlWBtHa.js → index-BeyQP4jc.js} +1 -1
  155. package/ui-dist/assets/{index-4uxadHo5.js → index-Bp3rYm9R.js} +1 -1
  156. package/ui-dist/assets/{index-DWFMs9uk.js → index-CBAKsDOH.js} +1 -1
  157. package/ui-dist/assets/{index-T81awgzh.js → index-CWPEuLky.js} +1 -1
  158. package/ui-dist/assets/{index-DAhPD1Ss.js → index-Ce0xbQ5p.js} +1 -1
  159. package/ui-dist/assets/{index-_x9smX4T.js → index-ChyWxMPa.js} +1 -1
  160. package/ui-dist/assets/{index-CIr7H9OI.js → index-CkEo4bIl.js} +1 -1
  161. package/ui-dist/assets/{index-sLGLHxIu.js → index-CvzsgQH3.js} +1 -1
  162. package/ui-dist/assets/{index-D-6z8wxx.js → index-DF0X3XZi.js} +1 -1
  163. package/ui-dist/assets/{index-BVfM9ax8.js → index-DNFqhIup.js} +1 -1
  164. package/ui-dist/assets/index-Dfi8PbGx.js +1484 -0
  165. package/ui-dist/assets/{index-C_BTFRTX.js → index-Dys_qAzR.js} +1 -1
  166. package/ui-dist/assets/{index-Cr7n11UG.js → index-DzKALBsQ.js} +1 -1
  167. package/ui-dist/assets/{index-CqYInp-c.js → index-Qe9bMaYk.js} +1 -1
  168. package/ui-dist/assets/{index-CQWmziMF.js → index-baeevrWz.js} +1 -1
  169. package/ui-dist/assets/{index-BYC_xlrx.js → index-bs5pLhnN.js} +1 -1
  170. package/ui-dist/assets/{infoDiagram-LFFYTUFH-BA3VxOIU.js → infoDiagram-LFFYTUFH-51Iz4iFI.js} +1 -1
  171. package/ui-dist/assets/{ishikawaDiagram-PHBUUO56-DGrizi0S.js → ishikawaDiagram-PHBUUO56-XMkPw0tW.js} +1 -1
  172. package/ui-dist/assets/{journeyDiagram-4ABVD52K-6ey34a7e.js → journeyDiagram-4ABVD52K-DAX0bTCG.js} +1 -1
  173. package/ui-dist/assets/{kanban-definition-K7BYSVSG-CwNnmsam.js → kanban-definition-K7BYSVSG-DndcgBkd.js} +1 -1
  174. package/ui-dist/assets/{layout-buNxvllr.js → layout-DE8DhR5g.js} +1 -1
  175. package/ui-dist/assets/{linear-BPWhxaRl.js → linear-B6lAW9Wb.js} +1 -1
  176. package/ui-dist/assets/{mermaid.core-Cajx0s-z.js → mermaid.core-BG--kYhA.js} +4 -4
  177. package/ui-dist/assets/{mindmap-definition-YRQLILUH-Bf5InEp-.js → mindmap-definition-YRQLILUH-DkjV0oE3.js} +1 -1
  178. package/ui-dist/assets/{pieDiagram-SKSYHLDU-CZFz7NWC.js → pieDiagram-SKSYHLDU-D03TjqYu.js} +1 -1
  179. package/ui-dist/assets/{quadrantDiagram-337W2JSQ-XBmKVoc9.js → quadrantDiagram-337W2JSQ-C0oqv-xU.js} +1 -1
  180. package/ui-dist/assets/{requirementDiagram-Z7DCOOCP-BkgdDv0H.js → requirementDiagram-Z7DCOOCP-okIS8feM.js} +1 -1
  181. package/ui-dist/assets/{sankeyDiagram-WA2Y5GQK-CASFR28i.js → sankeyDiagram-WA2Y5GQK-WOnxUdkO.js} +1 -1
  182. package/ui-dist/assets/{sequenceDiagram-2WXFIKYE-BzY7LMRv.js → sequenceDiagram-2WXFIKYE-RVCXfMRR.js} +1 -1
  183. package/ui-dist/assets/{stateDiagram-RAJIS63D-C9UMSk36.js → stateDiagram-RAJIS63D-CZFHvVtT.js} +1 -1
  184. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-DgYYudAJ.js +1 -0
  185. package/ui-dist/assets/{timeline-definition-YZTLITO2-D6m4R4xe.js → timeline-definition-YZTLITO2-S0uy5mlJ.js} +1 -1
  186. package/ui-dist/assets/{treemap-KZPCXAKY-7V9mnT8T.js → treemap-KZPCXAKY-Bhyg_yHs.js} +1 -1
  187. package/ui-dist/assets/{vennDiagram-LZ73GAT5-Ci-sfAyq.js → vennDiagram-LZ73GAT5-EnVupOQz.js} +1 -1
  188. package/ui-dist/assets/{xychartDiagram-JWTSCODW-BayXhRSu.js → xychartDiagram-JWTSCODW-BYpdJxGK.js} +1 -1
  189. package/ui-dist/index.html +2 -2
  190. package/ui-dist/assets/channel-ClX7n84B.js +0 -1
  191. package/ui-dist/assets/classDiagram-VBA2DB6C-DvWbsnVz.js +0 -1
  192. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-DvWbsnVz.js +0 -1
  193. package/ui-dist/assets/clone-Dla3A8ZA.js +0 -1
  194. package/ui-dist/assets/index-CSANx6ee.css +0 -1
  195. package/ui-dist/assets/index-DCa9-Sy-.js +0 -1439
  196. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-DWVhbAdj.js +0 -1
@@ -5,6 +5,10 @@ export interface CostDateRange {
5
5
  from?: Date;
6
6
  to?: Date;
7
7
  }
8
+ export interface CostTrendFilter {
9
+ agentId?: string;
10
+ projectId?: string;
11
+ }
8
12
  export declare function costService(db: Db, budgetHooks?: BudgetServiceHooks): {
9
13
  createEvent: (orgId: string, data: Omit<typeof costEvents.$inferInsert, "orgId">) => Promise<{
10
14
  id: string;
@@ -31,10 +35,27 @@ export declare function costService(db: Db, budgetHooks?: BudgetServiceHooks): {
31
35
  spendCents: number;
32
36
  budgetCents: number;
33
37
  utilizationPercent: number;
38
+ inputTokens: number;
39
+ cachedInputTokens: number;
40
+ outputTokens: number;
41
+ totalTokens: number;
42
+ eventCount: number;
43
+ tokenEventCount: number;
34
44
  }>;
45
+ trend: (orgId: string, range?: CostDateRange, filter?: CostTrendFilter) => Promise<{
46
+ date: string;
47
+ costCents: number;
48
+ inputTokens: number;
49
+ cachedInputTokens: number;
50
+ outputTokens: number;
51
+ totalTokens: number;
52
+ eventCount: number;
53
+ }[]>;
35
54
  byAgent: (orgId: string, range?: CostDateRange) => Promise<{
36
55
  agentId: string;
37
56
  agentName: string | null;
57
+ agentIcon: string | null;
58
+ agentRole: string | null;
38
59
  agentStatus: string | null;
39
60
  costCents: number;
40
61
  inputTokens: number;
@@ -1 +1 @@
1
- {"version":3,"file":"costs.d.ts","sourceRoot":"","sources":["../../src/services/costs.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAsC,UAAU,EAAoB,MAAM,cAAc,CAAC;AAGhG,OAAO,EAAiB,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEtE,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,EAAE,CAAC,EAAE,IAAI,CAAC;CACX;AAoCD,wBAAgB,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,GAAE,kBAAuB;yBAGzC,MAAM,QAAQ,IAAI,CAAC,OAAO,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;qBAqF/D,MAAM,UAAU,aAAa;;;;;;qBAkC7B,MAAM,UAAU,aAAa;;;;;;;;;;;;;;wBAgC1B,MAAM,UAAU,aAAa;;;;;;;;;;;;;;;sBAgC/B,MAAM,UAAU,aAAa;;;;;;;;;;;;;;IA+BrD;;;;OAIG;yBACwB,MAAM;;;gBAgCR,MAAM;;;;;;;0BAaH,MAAM,UAAU,aAAa;;;;;;;;;;;;uBAoChC,MAAM,UAAU,aAAa;;;;;;;;EAkDzD"}
1
+ {"version":3,"file":"costs.d.ts","sourceRoot":"","sources":["../../src/services/costs.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAsC,UAAU,EAAoB,MAAM,cAAc,CAAC;AAGhG,OAAO,EAAiB,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEtE,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,EAAE,CAAC,EAAE,IAAI,CAAC;CACX;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAgED,wBAAgB,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,GAAE,kBAAuB;yBAGzC,MAAM,QAAQ,IAAI,CAAC,OAAO,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;qBAqF/D,MAAM,UAAU,aAAa;;;;;;;;;;;;mBAwD/B,MAAM,UAAU,aAAa,WAAU,eAAe;;;;;;;;;qBA0EpD,MAAM,UAAU,aAAa;;;;;;;;;;;;;;;;wBAkC1B,MAAM,UAAU,aAAa;;;;;;;;;;;;;;;sBAgC/B,MAAM,UAAU,aAAa;;;;;;;;;;;;;;IA+BrD;;;;OAIG;yBACwB,MAAM;;;gBAgCR,MAAM;;;;;;;0BAaH,MAAM,UAAU,aAAa;;;;;;;;;;;;uBAoChC,MAAM,UAAU,aAAa;;;;;;;;EAkDzD"}
@@ -5,6 +5,32 @@ import { observeExecutionEvent } from "../langfuse.js";
5
5
  import { budgetService } from "./budgets.js";
6
6
  const METERED_BILLING_TYPE = "metered_api";
7
7
  const SUBSCRIPTION_BILLING_TYPES = ["subscription_included", "subscription_overage"];
8
+ function totalTokenCountSql() {
9
+ return sql `
10
+ coalesce(sum(
11
+ case
12
+ when ${costEvents.cachedInputTokens} > ${costEvents.inputTokens}
13
+ then ${costEvents.inputTokens} + ${costEvents.cachedInputTokens} + ${costEvents.outputTokens}
14
+ else ${costEvents.inputTokens} + ${costEvents.outputTokens}
15
+ end
16
+ ), 0)::int
17
+ `;
18
+ }
19
+ function tokenEventCountSql() {
20
+ return sql `
21
+ coalesce(sum(
22
+ case
23
+ when (
24
+ case
25
+ when ${costEvents.cachedInputTokens} > ${costEvents.inputTokens}
26
+ then ${costEvents.inputTokens} + ${costEvents.cachedInputTokens} + ${costEvents.outputTokens}
27
+ else ${costEvents.inputTokens} + ${costEvents.outputTokens}
28
+ end
29
+ ) > 0 then 1 else 0
30
+ end
31
+ ), 0)::int
32
+ `;
33
+ }
8
34
  function currentUtcMonthWindow(now = new Date()) {
9
35
  const year = now.getUTCFullYear();
10
36
  const month = now.getUTCMonth();
@@ -121,12 +147,19 @@ export function costService(db, budgetHooks = {}) {
121
147
  conditions.push(gte(costEvents.occurredAt, range.from));
122
148
  if (range?.to)
123
149
  conditions.push(lte(costEvents.occurredAt, range.to));
124
- const [{ total }] = await db
150
+ const [summaryRow] = await db
125
151
  .select({
126
152
  total: sql `coalesce(sum(${costEvents.costCents}), 0)::int`,
153
+ inputTokens: sql `coalesce(sum(${costEvents.inputTokens}), 0)::int`,
154
+ cachedInputTokens: sql `coalesce(sum(${costEvents.cachedInputTokens}), 0)::int`,
155
+ outputTokens: sql `coalesce(sum(${costEvents.outputTokens}), 0)::int`,
156
+ totalTokens: totalTokenCountSql(),
157
+ eventCount: sql `count(*)::int`,
158
+ tokenEventCount: tokenEventCountSql(),
127
159
  })
128
160
  .from(costEvents)
129
161
  .where(and(...conditions));
162
+ const { total, inputTokens, cachedInputTokens, outputTokens, totalTokens, eventCount, tokenEventCount, } = summaryRow;
130
163
  const spendCents = Number(total);
131
164
  const utilization = organization.budgetMonthlyCents > 0
132
165
  ? (spendCents / organization.budgetMonthlyCents) * 100
@@ -136,8 +169,73 @@ export function costService(db, budgetHooks = {}) {
136
169
  spendCents,
137
170
  budgetCents: organization.budgetMonthlyCents,
138
171
  utilizationPercent: Number(utilization.toFixed(2)),
172
+ inputTokens: Number(inputTokens),
173
+ cachedInputTokens: Number(cachedInputTokens),
174
+ outputTokens: Number(outputTokens),
175
+ totalTokens: Number(totalTokens),
176
+ eventCount: Number(eventCount),
177
+ tokenEventCount: Number(tokenEventCount),
139
178
  };
140
179
  },
180
+ trend: async (orgId, range, filter = {}) => {
181
+ const conditions = [eq(costEvents.orgId, orgId)];
182
+ if (range?.from)
183
+ conditions.push(gte(costEvents.occurredAt, range.from));
184
+ if (range?.to)
185
+ conditions.push(lte(costEvents.occurredAt, range.to));
186
+ if (filter.agentId)
187
+ conditions.push(eq(costEvents.agentId, filter.agentId));
188
+ const dateBucket = sql `to_char(date_trunc('day', ${costEvents.occurredAt} at time zone 'UTC'), 'YYYY-MM-DD')`;
189
+ const costCentsExpr = sql `coalesce(sum(${costEvents.costCents}), 0)::int`;
190
+ const inputTokensExpr = sql `coalesce(sum(${costEvents.inputTokens}), 0)::int`;
191
+ const cachedInputTokensExpr = sql `coalesce(sum(${costEvents.cachedInputTokens}), 0)::int`;
192
+ const outputTokensExpr = sql `coalesce(sum(${costEvents.outputTokens}), 0)::int`;
193
+ const totalTokensExpr = totalTokenCountSql();
194
+ if (filter.projectId) {
195
+ const issueIdAsText = sql `${issues.id}::text`;
196
+ const runProjectLinks = db
197
+ .selectDistinctOn([activityLog.runId, issues.projectId], {
198
+ runId: activityLog.runId,
199
+ projectId: issues.projectId,
200
+ })
201
+ .from(activityLog)
202
+ .innerJoin(issues, and(eq(activityLog.entityType, "issue"), eq(activityLog.entityId, issueIdAsText)))
203
+ .where(and(eq(activityLog.orgId, orgId), eq(issues.orgId, orgId), isNotNull(activityLog.runId), isNotNull(issues.projectId)))
204
+ .orderBy(activityLog.runId, issues.projectId, desc(activityLog.createdAt))
205
+ .as("run_project_links");
206
+ const effectiveProjectId = sql `coalesce(${costEvents.projectId}, ${runProjectLinks.projectId})`;
207
+ conditions.push(sql `${effectiveProjectId} = ${filter.projectId}`);
208
+ return db
209
+ .select({
210
+ date: dateBucket,
211
+ costCents: costCentsExpr,
212
+ inputTokens: inputTokensExpr,
213
+ cachedInputTokens: cachedInputTokensExpr,
214
+ outputTokens: outputTokensExpr,
215
+ totalTokens: totalTokensExpr,
216
+ eventCount: sql `count(*)::int`,
217
+ })
218
+ .from(costEvents)
219
+ .leftJoin(runProjectLinks, eq(costEvents.heartbeatRunId, runProjectLinks.runId))
220
+ .where(and(...conditions))
221
+ .groupBy(dateBucket)
222
+ .orderBy(dateBucket);
223
+ }
224
+ return db
225
+ .select({
226
+ date: dateBucket,
227
+ costCents: costCentsExpr,
228
+ inputTokens: inputTokensExpr,
229
+ cachedInputTokens: cachedInputTokensExpr,
230
+ outputTokens: outputTokensExpr,
231
+ totalTokens: totalTokensExpr,
232
+ eventCount: sql `count(*)::int`,
233
+ })
234
+ .from(costEvents)
235
+ .where(and(...conditions))
236
+ .groupBy(dateBucket)
237
+ .orderBy(dateBucket);
238
+ },
141
239
  byAgent: async (orgId, range) => {
142
240
  const conditions = [eq(costEvents.orgId, orgId)];
143
241
  if (range?.from)
@@ -148,6 +246,8 @@ export function costService(db, budgetHooks = {}) {
148
246
  .select({
149
247
  agentId: costEvents.agentId,
150
248
  agentName: agents.name,
249
+ agentIcon: agents.icon,
250
+ agentRole: agents.role,
151
251
  agentStatus: agents.status,
152
252
  costCents: sql `coalesce(sum(${costEvents.costCents}), 0)::int`,
153
253
  inputTokens: sql `coalesce(sum(${costEvents.inputTokens}), 0)::int`,
@@ -162,7 +262,7 @@ export function costService(db, budgetHooks = {}) {
162
262
  .from(costEvents)
163
263
  .leftJoin(agents, eq(costEvents.agentId, agents.id))
164
264
  .where(and(...conditions))
165
- .groupBy(costEvents.agentId, agents.name, agents.status)
265
+ .groupBy(costEvents.agentId, agents.name, agents.icon, agents.role, agents.status)
166
266
  .orderBy(desc(sql `coalesce(sum(${costEvents.costCents}), 0)::int`));
167
267
  },
168
268
  byProvider: async (orgId, range) => {
@@ -1 +1 @@
1
- {"version":3,"file":"costs.js","sourceRoot":"","sources":["../../src/services/costs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"costs.js","sourceRoot":"","sources":["../../src/services/costs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAE1E,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAChG,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,aAAa,EAA2B,MAAM,cAAc,CAAC;AAYtE,MAAM,oBAAoB,GAAG,aAAa,CAAC;AAC3C,MAAM,0BAA0B,GAAG,CAAC,uBAAuB,EAAE,sBAAsB,CAAU,CAAC;AAE9F,SAAS,kBAAkB;IACzB,OAAO,GAAG,CAAQ;;;eAGL,UAAU,CAAC,iBAAiB,MAAM,UAAU,CAAC,WAAW;iBACtD,UAAU,CAAC,WAAW,MAAM,UAAU,CAAC,iBAAiB,MAAM,UAAU,CAAC,YAAY;eACvF,UAAU,CAAC,WAAW,MAAM,UAAU,CAAC,YAAY;;;GAG/D,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO,GAAG,CAAQ;;;;;mBAKD,UAAU,CAAC,iBAAiB,MAAM,UAAU,CAAC,WAAW;qBACtD,UAAU,CAAC,WAAW,MAAM,UAAU,CAAC,iBAAiB,MAAM,UAAU,CAAC,YAAY;mBACvF,UAAU,CAAC,WAAW,MAAM,UAAU,CAAC,YAAY;;;;;GAKnE,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAG,GAAG,IAAI,IAAI,EAAE;IAC7C,MAAM,IAAI,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC;IAClC,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAChC,OAAO;QACL,KAAK,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,GAAG,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,EAAM,EACN,KAAiD;IAEjD,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC/C,MAAM,UAAU,GAAG;QACjB,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;QACjC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC;QACjC,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC;KAC/B,CAAC;IACF,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;SACnB,MAAM,CAAC;QACN,KAAK,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,SAAS,YAAY;KACnE,CAAC;SACD,IAAI,CAAC,UAAU,CAAC;SAChB,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;IAC7B,OAAO,MAAM,CAAC,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,EAAM,EAAE,cAAkC,EAAE;IACtE,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;IAC/C,OAAO;QACL,WAAW,EAAE,KAAK,EAAE,KAAa,EAAE,IAAmD,EAAE,EAAE;YACxF,MAAM,KAAK,GAAG,MAAM,EAAE;iBACnB,MAAM,EAAE;iBACR,IAAI,CAAC,MAAM,CAAC;iBACZ,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;iBAClC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;YAEnC,IAAI,CAAC,KAAK;gBAAE,MAAM,QAAQ,CAAC,iBAAiB,CAAC,CAAC;YAC9C,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;gBAC1B,MAAM,aAAa,CAAC,uCAAuC,CAAC,CAAC;YAC/D,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,EAAE;iBACnB,MAAM,CAAC,UAAU,CAAC;iBAClB,MAAM,CAAC;gBACN,GAAG,IAAI;gBACP,KAAK;gBACL,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ;gBACpC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,SAAS;gBAC1C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,IAAI,CAAC;aAC/C,CAAC;iBACD,SAAS,EAAE;iBACX,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAE3B,MAAM,CAAC,eAAe,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC7D,oBAAoB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC3D,oBAAoB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;aACpC,CAAC,CAAC;YAEH,MAAM,EAAE;iBACL,MAAM,CAAC,MAAM,CAAC;iBACd,GAAG,CAAC;gBACH,iBAAiB,EAAE,eAAe;gBAClC,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC;iBACD,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAEvC,MAAM,EAAE;iBACL,MAAM,CAAC,aAAa,CAAC;iBACrB,GAAG,CAAC;gBACH,iBAAiB,EAAE,iBAAiB;gBACpC,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC;iBACD,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;YAEtC,MAAM,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAEvC,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;gBACzB,KAAK,qBAAqB,CACxB;oBACE,OAAO,EAAE,YAAY;oBACrB,eAAe,EAAE,KAAK,CAAC,cAAc;oBACrC,KAAK;oBACL,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI;oBAC9B,MAAM,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,QAAQ;oBAC3C,QAAQ,EAAE;wBACR,WAAW,EAAE,KAAK,CAAC,EAAE;wBACrB,QAAQ,EAAE,KAAK,CAAC,QAAQ;wBACxB,KAAK,EAAE,KAAK,CAAC,KAAK;wBAClB,WAAW,EAAE,KAAK,CAAC,WAAW;qBAC/B;iBACF,EACD;oBACE,IAAI,EAAE,eAAe;oBACrB,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE;wBACL,SAAS,EAAE,KAAK,CAAC,SAAS;wBAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;wBAC9B,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;wBAC1C,YAAY,EAAE,KAAK,CAAC,YAAY;qBACjC;oBACD,QAAQ,EAAE;wBACR,QAAQ,EAAE,KAAK,CAAC,QAAQ;wBACxB,KAAK,EAAE,KAAK,CAAC,KAAK;wBAClB,WAAW,EAAE,KAAK,CAAC,WAAW;wBAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;qBACrB;iBACF,CACF,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACpB,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,KAAa,EAAE,KAAqB,EAAE,EAAE;YACtD,MAAM,YAAY,GAAG,MAAM,EAAE;iBAC1B,MAAM,EAAE;iBACR,IAAI,CAAC,aAAa,CAAC;iBACnB,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;iBAClC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;YAEnC,IAAI,CAAC,YAAY;gBAAE,MAAM,QAAQ,CAAC,wBAAwB,CAAC,CAAC;YAE5D,MAAM,UAAU,GAA4B,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YAC1E,IAAI,KAAK,EAAE,IAAI;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,IAAI,KAAK,EAAE,EAAE;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAErE,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,EAAE;iBAC1B,MAAM,CAAC;gBACN,KAAK,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,SAAS,YAAY;gBAClE,WAAW,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,WAAW,YAAY;gBAC1E,iBAAiB,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,iBAAiB,YAAY;gBACtF,YAAY,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,YAAY,YAAY;gBAC5E,WAAW,EAAE,kBAAkB,EAAE;gBACjC,UAAU,EAAE,GAAG,CAAQ,eAAe;gBACtC,eAAe,EAAE,kBAAkB,EAAE;aACtC,CAAC;iBACD,IAAI,CAAC,UAAU,CAAC;iBAChB,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;YAE7B,MAAM,EACJ,KAAK,EACL,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,UAAU,EACV,eAAe,GAChB,GAAG,UAAU,CAAC;YAEf,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YACjC,MAAM,WAAW,GACf,YAAY,CAAC,kBAAkB,GAAG,CAAC;gBACjC,CAAC,CAAC,CAAC,UAAU,GAAG,YAAY,CAAC,kBAAkB,CAAC,GAAG,GAAG;gBACtD,CAAC,CAAC,CAAC,CAAC;YAER,OAAO;gBACL,KAAK;gBACL,UAAU;gBACV,WAAW,EAAE,YAAY,CAAC,kBAAkB;gBAC5C,kBAAkB,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAClD,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC;gBAChC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,CAAC;gBAC5C,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC;gBAClC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC;gBAChC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;gBAC9B,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC;aACzC,CAAC;QACJ,CAAC;QAED,KAAK,EAAE,KAAK,EAAE,KAAa,EAAE,KAAqB,EAAE,SAA0B,EAAE,EAAE,EAAE;YAClF,MAAM,UAAU,GAA4B,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YAC1E,IAAI,KAAK,EAAE,IAAI;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,IAAI,KAAK,EAAE,EAAE;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YACrE,IAAI,MAAM,CAAC,OAAO;gBAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YAE5E,MAAM,UAAU,GAAG,GAAG,CAAQ,6BAA6B,UAAU,CAAC,UAAU,qCAAqC,CAAC;YACtH,MAAM,aAAa,GAAG,GAAG,CAAQ,gBAAgB,UAAU,CAAC,SAAS,YAAY,CAAC;YAClF,MAAM,eAAe,GAAG,GAAG,CAAQ,gBAAgB,UAAU,CAAC,WAAW,YAAY,CAAC;YACtF,MAAM,qBAAqB,GAAG,GAAG,CAAQ,gBAAgB,UAAU,CAAC,iBAAiB,YAAY,CAAC;YAClG,MAAM,gBAAgB,GAAG,GAAG,CAAQ,gBAAgB,UAAU,CAAC,YAAY,YAAY,CAAC;YACxF,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;YAE7C,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACrB,MAAM,aAAa,GAAG,GAAG,CAAQ,GAAG,MAAM,CAAC,EAAE,QAAQ,CAAC;gBACtD,MAAM,eAAe,GAAG,EAAE;qBACvB,gBAAgB,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE;oBACvD,KAAK,EAAE,WAAW,CAAC,KAAK;oBACxB,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B,CAAC;qBACD,IAAI,CAAC,WAAW,CAAC;qBACjB,SAAS,CACR,MAAM,EACN,GAAG,CACD,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,EACnC,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,CACxC,CACF;qBACA,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,EAC5B,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EACvB,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAC5B,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAC5B,CACF;qBACA,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;qBACzE,EAAE,CAAC,mBAAmB,CAAC,CAAC;gBAC3B,MAAM,kBAAkB,GAAG,GAAG,CAAe,YAAY,UAAU,CAAC,SAAS,KAAK,eAAe,CAAC,SAAS,GAAG,CAAC;gBAC/G,UAAU,CAAC,IAAI,CAAC,GAAG,CAAA,GAAG,kBAAkB,MAAM,MAAM,CAAC,SAAS,EAA2B,CAAC,CAAC;gBAE3F,OAAO,EAAE;qBACN,MAAM,CAAC;oBACN,IAAI,EAAE,UAAU;oBAChB,SAAS,EAAE,aAAa;oBACxB,WAAW,EAAE,eAAe;oBAC5B,iBAAiB,EAAE,qBAAqB;oBACxC,YAAY,EAAE,gBAAgB;oBAC9B,WAAW,EAAE,eAAe;oBAC5B,UAAU,EAAE,GAAG,CAAQ,eAAe;iBACvC,CAAC;qBACD,IAAI,CAAC,UAAU,CAAC;qBAChB,QAAQ,CAAC,eAAe,EAAE,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;qBAC/E,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;qBACzB,OAAO,CAAC,UAAU,CAAC;qBACnB,OAAO,CAAC,UAAU,CAAC,CAAC;YACzB,CAAC;YAED,OAAO,EAAE;iBACN,MAAM,CAAC;gBACN,IAAI,EAAE,UAAU;gBAChB,SAAS,EAAE,aAAa;gBACxB,WAAW,EAAE,eAAe;gBAC5B,iBAAiB,EAAE,qBAAqB;gBACxC,YAAY,EAAE,gBAAgB;gBAC9B,WAAW,EAAE,eAAe;gBAC5B,UAAU,EAAE,GAAG,CAAQ,eAAe;aACvC,CAAC;iBACD,IAAI,CAAC,UAAU,CAAC;iBAChB,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;iBACzB,OAAO,CAAC,UAAU,CAAC;iBACnB,OAAO,CAAC,UAAU,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,KAAa,EAAE,KAAqB,EAAE,EAAE;YACtD,MAAM,UAAU,GAA4B,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YAC1E,IAAI,KAAK,EAAE,IAAI;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,IAAI,KAAK,EAAE,EAAE;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAErE,OAAO,EAAE;iBACN,MAAM,CAAC;gBACN,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,SAAS,EAAE,MAAM,CAAC,IAAI;gBACtB,SAAS,EAAE,MAAM,CAAC,IAAI;gBACtB,SAAS,EAAE,MAAM,CAAC,IAAI;gBACtB,WAAW,EAAE,MAAM,CAAC,MAAM;gBAC1B,SAAS,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,SAAS,YAAY;gBACtE,WAAW,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,WAAW,YAAY;gBAC1E,iBAAiB,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,iBAAiB,YAAY;gBACtF,YAAY,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,YAAY,YAAY;gBAC5E,WAAW,EACT,GAAG,CAAQ,4BAA4B,UAAU,CAAC,WAAW,MAAM,oBAAoB,SAAS,UAAU,CAAC,cAAc,YAAY;gBACvI,oBAAoB,EAClB,GAAG,CAAQ,4BAA4B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,cAAc,YAAY;gBACjM,6BAA6B,EAC3B,GAAG,CAAQ,0BAA0B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,iBAAiB,uBAAuB;gBAC7M,uBAAuB,EACrB,GAAG,CAAQ,0BAA0B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,WAAW,uBAAuB;gBACvM,wBAAwB,EACtB,GAAG,CAAQ,0BAA0B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,YAAY,uBAAuB;aACzM,CAAC;iBACD,IAAI,CAAC,UAAU,CAAC;iBAChB,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;iBACnD,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;iBACzB,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;iBACjF,OAAO,CAAC,IAAI,CAAC,GAAG,CAAA,gBAAgB,UAAU,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC;QACxE,CAAC;QAED,UAAU,EAAE,KAAK,EAAE,KAAa,EAAE,KAAqB,EAAE,EAAE;YACzD,MAAM,UAAU,GAA4B,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YAC1E,IAAI,KAAK,EAAE,IAAI;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,IAAI,KAAK,EAAE,EAAE;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAErE,OAAO,EAAE;iBACN,MAAM,CAAC;gBACN,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,WAAW,EAAE,UAAU,CAAC,WAAW;gBACnC,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,SAAS,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,SAAS,YAAY;gBACtE,WAAW,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,WAAW,YAAY;gBAC1E,iBAAiB,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,iBAAiB,YAAY;gBACtF,YAAY,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,YAAY,YAAY;gBAC5E,WAAW,EACT,GAAG,CAAQ,4BAA4B,UAAU,CAAC,WAAW,MAAM,oBAAoB,SAAS,UAAU,CAAC,cAAc,YAAY;gBACvI,oBAAoB,EAClB,GAAG,CAAQ,4BAA4B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,cAAc,YAAY;gBACjM,6BAA6B,EAC3B,GAAG,CAAQ,0BAA0B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,iBAAiB,uBAAuB;gBAC7M,uBAAuB,EACrB,GAAG,CAAQ,0BAA0B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,WAAW,uBAAuB;gBACvM,wBAAwB,EACtB,GAAG,CAAQ,0BAA0B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,YAAY,uBAAuB;aACzM,CAAC;iBACD,IAAI,CAAC,UAAU,CAAC;iBAChB,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;iBACzB,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,KAAK,CAAC;iBACzF,OAAO,CAAC,IAAI,CAAC,GAAG,CAAA,gBAAgB,UAAU,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC;QACxE,CAAC;QAED,QAAQ,EAAE,KAAK,EAAE,KAAa,EAAE,KAAqB,EAAE,EAAE;YACvD,MAAM,UAAU,GAA4B,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YAC1E,IAAI,KAAK,EAAE,IAAI;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,IAAI,KAAK,EAAE,EAAE;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAErE,OAAO,EAAE;iBACN,MAAM,CAAC;gBACN,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,SAAS,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,SAAS,YAAY;gBACtE,WAAW,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,WAAW,YAAY;gBAC1E,iBAAiB,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,iBAAiB,YAAY;gBACtF,YAAY,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,YAAY,YAAY;gBAC5E,WAAW,EACT,GAAG,CAAQ,4BAA4B,UAAU,CAAC,WAAW,MAAM,oBAAoB,SAAS,UAAU,CAAC,cAAc,YAAY;gBACvI,oBAAoB,EAClB,GAAG,CAAQ,4BAA4B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,cAAc,YAAY;gBACjM,6BAA6B,EAC3B,GAAG,CAAQ,0BAA0B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,iBAAiB,uBAAuB;gBAC7M,uBAAuB,EACrB,GAAG,CAAQ,0BAA0B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,WAAW,uBAAuB;gBACvM,wBAAwB,EACtB,GAAG,CAAQ,0BAA0B,UAAU,CAAC,WAAW,QAAQ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,KAAK,EAAE,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,UAAU,UAAU,CAAC,YAAY,uBAAuB;gBACxM,aAAa,EAAE,GAAG,CAAQ,kBAAkB,UAAU,CAAC,QAAQ,QAAQ;gBACvE,UAAU,EAAE,GAAG,CAAQ,kBAAkB,UAAU,CAAC,KAAK,QAAQ;aAClE,CAAC;iBACD,IAAI,CAAC,UAAU,CAAC;iBAChB,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;iBACzB,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;iBAC1B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAA,gBAAgB,UAAU,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC;QACxE,CAAC;QAED;;;;WAIG;QACH,WAAW,EAAE,KAAK,EAAE,KAAa,EAAE,EAAE;YACnC,MAAM,OAAO,GAAG;gBACd,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE;gBACzB,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC3B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;aACnB,CAAC;YAEX,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;gBACrC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;gBAC5D,MAAM,IAAI,GAAG,MAAM,EAAE;qBAClB,MAAM,CAAC;oBACN,QAAQ,EAAE,UAAU,CAAC,QAAQ;oBAC7B,MAAM,EAAE,GAAG,CAAQ,4BAA4B,UAAU,CAAC,MAAM,kBAAkB,UAAU,CAAC,MAAM,oBAAoB;oBACvH,SAAS,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,SAAS,YAAY;oBACtE,WAAW,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,WAAW,YAAY;oBAC1E,iBAAiB,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,iBAAiB,YAAY;oBACtF,YAAY,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,YAAY,YAAY;iBAC7E,CAAC;qBACD,IAAI,CAAC,UAAU,CAAC;qBAChB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,EAC3B,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAClC,CACF;qBACA,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;qBAC5B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAA,gBAAgB,UAAU,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC;gBAEtE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,MAAM,EAAE,KAAe;oBACvB,WAAW,EAAE,KAAK;oBAClB,SAAS,EAAE,GAAG,CAAC,SAAS;oBACxB,WAAW,EAAE,GAAG,CAAC,WAAW;oBAC5B,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;oBACxC,YAAY,EAAE,GAAG,CAAC,YAAY;iBAC/B,CAAC,CAAC,CAAC;YACN,CAAC,CAAC,CACH,CAAC;YAEF,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;QACxB,CAAC;QAED,YAAY,EAAE,KAAK,EAAE,KAAa,EAAE,KAAqB,EAAE,EAAE;YAC3D,MAAM,UAAU,GAA4B,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YAC1E,IAAI,KAAK,EAAE,IAAI;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,IAAI,KAAK,EAAE,EAAE;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAErE,mDAAmD;YACnD,qEAAqE;YACrE,yEAAyE;YACzE,mEAAmE;YACnE,OAAO,EAAE;iBACN,MAAM,CAAC;gBACN,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,SAAS,EAAE,MAAM,CAAC,IAAI;gBACtB,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,WAAW,EAAE,UAAU,CAAC,WAAW;gBACnC,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,SAAS,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,SAAS,YAAY;gBACtE,WAAW,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,WAAW,YAAY;gBAC1E,iBAAiB,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,iBAAiB,YAAY;gBACtF,YAAY,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,YAAY,YAAY;aAC7E,CAAC;iBACD,IAAI,CAAC,UAAU,CAAC;iBAChB,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;iBACnD,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;iBACzB,OAAO,CACN,UAAU,CAAC,OAAO,EAClB,MAAM,CAAC,IAAI,EACX,UAAU,CAAC,QAAQ,EACnB,UAAU,CAAC,MAAM,EACjB,UAAU,CAAC,WAAW,EACtB,UAAU,CAAC,KAAK,CACjB;iBACA,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QAC/F,CAAC;QAED,SAAS,EAAE,KAAK,EAAE,KAAa,EAAE,KAAqB,EAAE,EAAE;YACxD,MAAM,aAAa,GAAG,GAAG,CAAQ,GAAG,MAAM,CAAC,EAAE,QAAQ,CAAC;YACtD,MAAM,eAAe,GAAG,EAAE;iBACvB,gBAAgB,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE;gBACvD,KAAK,EAAE,WAAW,CAAC,KAAK;gBACxB,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAC;iBACD,IAAI,CAAC,WAAW,CAAC;iBACjB,SAAS,CACR,MAAM,EACN,GAAG,CACD,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,EACnC,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,CACxC,CACF;iBACA,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,EAC5B,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EACvB,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAC5B,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAC5B,CACF;iBACA,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;iBACzE,EAAE,CAAC,mBAAmB,CAAC,CAAC;YAE3B,MAAM,kBAAkB,GAAG,GAAG,CAAe,YAAY,UAAU,CAAC,SAAS,KAAK,eAAe,CAAC,SAAS,GAAG,CAAC;YAC/G,MAAM,UAAU,GAA4B,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YAC1E,IAAI,KAAK,EAAE,IAAI;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,IAAI,KAAK,EAAE,EAAE;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAErE,MAAM,aAAa,GAAG,GAAG,CAAQ,gBAAgB,UAAU,CAAC,SAAS,YAAY,CAAC;YAElF,OAAO,EAAE;iBACN,MAAM,CAAC;gBACN,SAAS,EAAE,kBAAkB;gBAC7B,WAAW,EAAE,QAAQ,CAAC,IAAI;gBAC1B,SAAS,EAAE,aAAa;gBACxB,WAAW,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,WAAW,YAAY;gBAC1E,iBAAiB,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,iBAAiB,YAAY;gBACtF,YAAY,EAAE,GAAG,CAAQ,gBAAgB,UAAU,CAAC,YAAY,YAAY;aAC7E,CAAC;iBACD,IAAI,CAAC,UAAU,CAAC;iBAChB,QAAQ,CAAC,eAAe,EAAE,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;iBAC/E,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAA,GAAG,QAAQ,CAAC,EAAE,MAAM,kBAAkB,EAAE,CAAC;iBAChE,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,EAAE,GAAG,CAAA,GAAG,kBAAkB,cAAc,CAAC,CAAC;iBACjE,OAAO,CAAC,kBAAkB,EAAE,QAAQ,CAAC,IAAI,CAAC;iBAC1C,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QAClC,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -6,11 +6,11 @@ export interface FinanceDateRange {
6
6
  }
7
7
  export declare function financeService(db: Db): {
8
8
  createEvent: (orgId: string, data: Omit<typeof financeEvents.$inferInsert, "orgId">) => Promise<{
9
+ description: string | null;
9
10
  id: string;
10
11
  orgId: string;
11
12
  projectId: string | null;
12
13
  goalId: string | null;
13
- description: string | null;
14
14
  billingCode: string | null;
15
15
  createdAt: Date;
16
16
  provider: string | null;
@@ -61,11 +61,11 @@ export declare function financeService(db: Db): {
61
61
  netCents: number;
62
62
  }[]>;
63
63
  list: (orgId: string, range?: FinanceDateRange, limit?: number) => Promise<{
64
+ description: string | null;
64
65
  id: string;
65
66
  orgId: string;
66
67
  projectId: string | null;
67
68
  goalId: string | null;
68
- description: string | null;
69
69
  billingCode: string | null;
70
70
  createdAt: Date;
71
71
  provider: string | null;
@@ -6,13 +6,13 @@ type GoalRow = typeof goals.$inferSelect;
6
6
  type GoalInput = Omit<typeof goals.$inferInsert, "orgId">;
7
7
  type GoalPatch = Partial<typeof goals.$inferInsert>;
8
8
  export declare function getDefaultCompanyGoal(db: GoalReader, orgId: string): Promise<{
9
- id: string;
10
9
  title: string;
10
+ description: string | null;
11
+ id: string;
11
12
  status: string;
12
13
  updatedAt: Date;
13
14
  orgId: string;
14
15
  parentId: string | null;
15
- description: string | null;
16
16
  createdAt: Date;
17
17
  ownerAgentId: string | null;
18
18
  level: string;
@@ -191,13 +191,13 @@ export declare function goalService(db: Db): {
191
191
  generated: undefined;
192
192
  }, {}, {}>;
193
193
  }, "single", Record<"goals", "not-null">, false, "where", {
194
- id: string;
195
194
  title: string;
195
+ description: string | null;
196
+ id: string;
196
197
  status: string;
197
198
  updatedAt: Date;
198
199
  orgId: string;
199
200
  parentId: string | null;
200
- description: string | null;
201
201
  createdAt: Date;
202
202
  ownerAgentId: string | null;
203
203
  level: string;
@@ -374,38 +374,38 @@ export declare function goalService(db: Db): {
374
374
  }, {}, {}>;
375
375
  }>, "where">;
376
376
  getById: (id: string) => Promise<{
377
- id: string;
378
377
  title: string;
378
+ description: string | null;
379
+ id: string;
379
380
  status: string;
380
381
  updatedAt: Date;
381
382
  orgId: string;
382
383
  parentId: string | null;
383
- description: string | null;
384
384
  createdAt: Date;
385
385
  ownerAgentId: string | null;
386
386
  level: string;
387
387
  }>;
388
388
  getDefaultCompanyGoal: (orgId: string) => Promise<{
389
- id: string;
390
389
  title: string;
390
+ description: string | null;
391
+ id: string;
391
392
  status: string;
392
393
  updatedAt: Date;
393
394
  orgId: string;
394
395
  parentId: string | null;
395
- description: string | null;
396
396
  createdAt: Date;
397
397
  ownerAgentId: string | null;
398
398
  level: string;
399
399
  }>;
400
400
  dependencies: (goal: GoalRow) => Promise<GoalDependencies>;
401
401
  create: (orgId: string, data: GoalInput) => Promise<{
402
- id: string;
403
402
  title: string;
403
+ description: string | null;
404
+ id: string;
404
405
  status: string;
405
406
  updatedAt: Date;
406
407
  orgId: string;
407
408
  parentId: string | null;
408
- description: string | null;
409
409
  createdAt: Date;
410
410
  ownerAgentId: string | null;
411
411
  level: string;
@@ -423,13 +423,13 @@ export declare function goalService(db: Db): {
423
423
  updatedAt: Date;
424
424
  } | null>;
425
425
  remove: (id: string) => Promise<{
426
- id: string;
427
426
  title: string;
427
+ description: string | null;
428
+ id: string;
428
429
  status: string;
429
430
  updatedAt: Date;
430
431
  orgId: string;
431
432
  parentId: string | null;
432
- description: string | null;
433
433
  createdAt: Date;
434
434
  ownerAgentId: string | null;
435
435
  level: string;
@@ -1 +1 @@
1
- {"version":3,"file":"instance-settings.d.ts","sourceRoot":"","sources":["../../src/services/instance-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,cAAc,EAEnB,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,iCAAiC,EACtC,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAC;AAmB1B,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,CAEpE;AAgCD,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,EAAE;eA+B3B,OAAO,CAAC,gBAAgB,CAAC;sBAElB,OAAO,CAAC,uBAAuB,CAAC;4BAK1B,OAAO,CAAC,4BAA4B,CAAC;2BAKpC,4BAA4B,KAAG,OAAO,CAAC,gBAAgB,CAAC;iCAkBlD,iCAAiC,KAAG,OAAO,CAAC,gBAAgB,CAAC;0BA6BtE,OAAO,CAAC,MAAM,EAAE,CAAC;EAM9C"}
1
+ {"version":3,"file":"instance-settings.d.ts","sourceRoot":"","sources":["../../src/services/instance-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,cAAc,EAEnB,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,iCAAiC,EACtC,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAC;AA2B1B,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,CAEpE;AAgCD,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,EAAE;eAiD3B,OAAO,CAAC,gBAAgB,CAAC;sBAElB,OAAO,CAAC,uBAAuB,CAAC;4BAK1B,OAAO,CAAC,4BAA4B,CAAC;2BAKpC,4BAA4B,KAAG,OAAO,CAAC,gBAAgB,CAAC;iCAIlD,iCAAiC,KAAG,OAAO,CAAC,gBAAgB,CAAC;0BA6BtE,OAAO,CAAC,MAAM,EAAE,CAAC;EAM9C"}
@@ -2,16 +2,24 @@ import { organizations, instanceSettings } from "@rudderhq/db";
2
2
  import { instanceGeneralSettingsSchema, instanceNotificationSettingsSchema, } from "@rudderhq/shared";
3
3
  import { eq } from "drizzle-orm";
4
4
  const DEFAULT_SINGLETON_KEY = "default";
5
+ function stripLegacyGitIdentity(raw) {
6
+ if (!raw || typeof raw !== "object" || Array.isArray(raw))
7
+ return raw;
8
+ const { gitIdentity: _gitIdentity, ...rest } = raw;
9
+ return rest;
10
+ }
5
11
  function normalizeGeneralSettings(raw) {
6
- const parsed = instanceGeneralSettingsSchema.safeParse(raw ?? {});
12
+ const parsed = instanceGeneralSettingsSchema.safeParse(stripLegacyGitIdentity(raw) ?? {});
7
13
  if (parsed.success) {
8
14
  return {
9
15
  censorUsernameInLogs: parsed.data.censorUsernameInLogs ?? false,
16
+ showDeveloperDiagnostics: parsed.data.showDeveloperDiagnostics ?? false,
10
17
  locale: parsed.data.locale ?? "en",
11
18
  };
12
19
  }
13
20
  return {
14
21
  censorUsernameInLogs: false,
22
+ showDeveloperDiagnostics: false,
15
23
  locale: "en",
16
24
  };
17
25
  }
@@ -73,6 +81,23 @@ export function instanceSettingsService(db) {
73
81
  .returning();
74
82
  return created;
75
83
  }
84
+ async function updateGeneralJson(patch) {
85
+ const current = await getOrCreateRow();
86
+ const nextGeneral = normalizeGeneralSettings({
87
+ ...normalizeGeneralSettings(current.general),
88
+ ...patch,
89
+ });
90
+ const now = new Date();
91
+ const [updated] = await db
92
+ .update(instanceSettings)
93
+ .set({
94
+ general: { ...nextGeneral },
95
+ updatedAt: now,
96
+ })
97
+ .where(eq(instanceSettings.id, current.id))
98
+ .returning();
99
+ return toInstanceSettings(updated ?? current);
100
+ }
76
101
  return {
77
102
  get: async () => toInstanceSettings(await getOrCreateRow()),
78
103
  getGeneral: async () => {
@@ -84,21 +109,7 @@ export function instanceSettingsService(db) {
84
109
  return normalizeNotificationSettings(row.notifications);
85
110
  },
86
111
  updateGeneral: async (patch) => {
87
- const current = await getOrCreateRow();
88
- const nextGeneral = normalizeGeneralSettings({
89
- ...normalizeGeneralSettings(current.general),
90
- ...patch,
91
- });
92
- const now = new Date();
93
- const [updated] = await db
94
- .update(instanceSettings)
95
- .set({
96
- general: { ...nextGeneral },
97
- updatedAt: now,
98
- })
99
- .where(eq(instanceSettings.id, current.id))
100
- .returning();
101
- return toInstanceSettings(updated ?? current);
112
+ return updateGeneralJson(patch);
102
113
  },
103
114
  updateNotifications: async (patch) => {
104
115
  const current = await getOrCreateRow();
@@ -1 +1 @@
1
- {"version":3,"file":"instance-settings.js","sourceRoot":"","sources":["../../src/services/instance-settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instance-settings.js","sourceRoot":"","sources":["../../src/services/instance-settings.ts"],"names":[],"mappings":"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"}
@@ -5,18 +5,25 @@ interface LinkActor {
5
5
  }
6
6
  export declare function issueApprovalService(db: Db): {
7
7
  listApprovalsForIssue: (issueId: string) => Promise<{
8
- payload: Record<string, unknown>;
9
8
  id: string;
10
9
  orgId: string;
11
10
  type: string;
12
11
  requestedByAgentId: string | null;
13
12
  requestedByUserId: string | null;
14
13
  status: string;
14
+ payload: Record<string, unknown>;
15
15
  decisionNote: string | null;
16
16
  decidedByUserId: string | null;
17
17
  decidedAt: Date | null;
18
18
  createdAt: Date;
19
19
  updatedAt: Date;
20
+ link: {
21
+ issueId: string;
22
+ approvalId: string;
23
+ linkedByAgentId: string | null;
24
+ linkedByUserId: string | null;
25
+ createdAt: Date;
26
+ };
20
27
  }[]>;
21
28
  listIssuesForApproval: (approvalId: string) => Promise<{
22
29
  id: string;
@@ -50,7 +57,14 @@ export declare function issueApprovalService(db: Db): {
50
57
  linkedByUserId: string | null;
51
58
  }>;
52
59
  unlink: (issueId: string, approvalId: string) => Promise<void>;
53
- linkManyForApproval: (approvalId: string, issueIds: string[], actor?: LinkActor) => Promise<void>;
60
+ linkManyForApproval: (approvalId: string, issueIds: string[], actor?: LinkActor) => Promise<{
61
+ orgId: string;
62
+ createdAt: Date;
63
+ issueId: string;
64
+ approvalId: string;
65
+ linkedByAgentId: string | null;
66
+ linkedByUserId: string | null;
67
+ }[]>;
54
68
  };
55
69
  export {};
56
70
  //# sourceMappingURL=issue-approvals.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"issue-approvals.d.ts","sourceRoot":"","sources":["../../src/services/issue-approvals.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAKvC,UAAU,SAAS;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,EAAE;qCAgCA,MAAM;;;;;;;;;;;;;;wCA6BH,MAAM;;;;;;;;;;;;;;;;;;;;;;;oBAkC1B,MAAM,cAAc,MAAM,UAAU,SAAS;;;;;;;;sBAqB3C,MAAM,cAAc,MAAM;sCAOV,MAAM,YAAY,MAAM,EAAE,UAAU,SAAS;EAuCxF"}
1
+ {"version":3,"file":"issue-approvals.d.ts","sourceRoot":"","sources":["../../src/services/issue-approvals.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAKvC,UAAU,SAAS;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,EAAE;qCAgCA,MAAM;;;;;;;;;;;;;;;;;;;;;wCAmDH,MAAM;;;;;;;;;;;;;;;;;;;;;;;oBAkC1B,MAAM,cAAc,MAAM,UAAU,SAAS;;;;;;;;sBAqB3C,MAAM,cAAc,MAAM;sCAOV,MAAM,YAAY,MAAM,EAAE,UAAU,SAAS;;;;;;;;EAwCxF"}
@@ -48,14 +48,36 @@ export function issueApprovalService(db) {
48
48
  decidedAt: approvals.decidedAt,
49
49
  createdAt: approvals.createdAt,
50
50
  updatedAt: approvals.updatedAt,
51
+ linkIssueId: issueApprovals.issueId,
52
+ linkApprovalId: issueApprovals.approvalId,
53
+ linkLinkedByAgentId: issueApprovals.linkedByAgentId,
54
+ linkLinkedByUserId: issueApprovals.linkedByUserId,
55
+ linkCreatedAt: issueApprovals.createdAt,
51
56
  })
52
57
  .from(issueApprovals)
53
58
  .innerJoin(approvals, eq(issueApprovals.approvalId, approvals.id))
54
59
  .where(eq(issueApprovals.issueId, issueId))
55
60
  .orderBy(desc(issueApprovals.createdAt));
56
61
  return result.map((approval) => ({
57
- ...approval,
62
+ id: approval.id,
63
+ orgId: approval.orgId,
64
+ type: approval.type,
65
+ requestedByAgentId: approval.requestedByAgentId,
66
+ requestedByUserId: approval.requestedByUserId,
67
+ status: approval.status,
58
68
  payload: redactEventPayload(approval.payload) ?? {},
69
+ decisionNote: approval.decisionNote,
70
+ decidedByUserId: approval.decidedByUserId,
71
+ decidedAt: approval.decidedAt,
72
+ createdAt: approval.createdAt,
73
+ updatedAt: approval.updatedAt,
74
+ link: {
75
+ issueId: approval.linkIssueId,
76
+ approvalId: approval.linkApprovalId,
77
+ linkedByAgentId: approval.linkLinkedByAgentId,
78
+ linkedByUserId: approval.linkLinkedByUserId,
79
+ createdAt: approval.linkCreatedAt,
80
+ },
59
81
  }));
60
82
  },
61
83
  listIssuesForApproval: async (approvalId) => {
@@ -117,7 +139,7 @@ export function issueApprovalService(db) {
117
139
  },
118
140
  linkManyForApproval: async (approvalId, issueIds, actor) => {
119
141
  if (issueIds.length === 0)
120
- return;
142
+ return [];
121
143
  const approval = await getApproval(approvalId);
122
144
  if (!approval)
123
145
  throw notFound("Approval not found");
@@ -137,7 +159,7 @@ export function issueApprovalService(db) {
137
159
  throw unprocessable("Issue and approval must belong to the same organization");
138
160
  }
139
161
  }
140
- await db
162
+ return db
141
163
  .insert(issueApprovals)
142
164
  .values(uniqueIssueIds.map((issueId) => ({
143
165
  orgId: approval.orgId,
@@ -146,7 +168,8 @@ export function issueApprovalService(db) {
146
168
  linkedByAgentId: actor?.agentId ?? null,
147
169
  linkedByUserId: actor?.userId ?? null,
148
170
  })))
149
- .onConflictDoNothing();
171
+ .onConflictDoNothing()
172
+ .returning();
150
173
  },
151
174
  };
152
175
  }
@@ -1 +1 @@
1
- {"version":3,"file":"issue-approvals.js","sourceRoot":"","sources":["../../src/services/issue-approvals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"issue-approvals.js","sourceRoot":"","sources":["../../src/services/issue-approvals.ts"],"names":[],"mappings":"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"}