@rudderhq/server 0.7.24-canary.21 → 0.7.24-canary.23

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 (151) hide show
  1. package/dist/bootstrap/register-api-routes.d.ts.map +1 -1
  2. package/dist/bootstrap/register-api-routes.js +2 -2
  3. package/dist/bootstrap/register-api-routes.js.map +1 -1
  4. package/dist/home-paths.d.ts.map +1 -1
  5. package/dist/home-paths.js +8 -6
  6. package/dist/home-paths.js.map +1 -1
  7. package/dist/routes/approvals.d.ts +2 -1
  8. package/dist/routes/approvals.d.ts.map +1 -1
  9. package/dist/routes/approvals.js +49 -4
  10. package/dist/routes/approvals.js.map +1 -1
  11. package/dist/routes/chats.d.ts +2 -1
  12. package/dist/routes/chats.d.ts.map +1 -1
  13. package/dist/routes/chats.js +3 -3
  14. package/dist/routes/chats.js.map +1 -1
  15. package/dist/routes/chats.stream-routes.d.ts.map +1 -1
  16. package/dist/routes/chats.stream-routes.js +1 -0
  17. package/dist/routes/chats.stream-routes.js.map +1 -1
  18. package/dist/routes/organization-rust-foundation-routes.d.ts.map +1 -1
  19. package/dist/routes/organization-rust-foundation-routes.js +27 -14
  20. package/dist/routes/organization-rust-foundation-routes.js.map +1 -1
  21. package/dist/routes/orgs.d.ts +1 -1
  22. package/dist/routes/orgs.d.ts.map +1 -1
  23. package/dist/routes/orgs.js +27 -21
  24. package/dist/routes/orgs.js.map +1 -1
  25. package/dist/services/chat-organization-branding-rust-idempotency.test.d.ts +2 -0
  26. package/dist/services/chat-organization-branding-rust-idempotency.test.d.ts.map +1 -0
  27. package/dist/services/chat-organization-branding-rust-idempotency.test.js +367 -0
  28. package/dist/services/chat-organization-branding-rust-idempotency.test.js.map +1 -0
  29. package/dist/services/chat-organization-branding.d.ts +78 -0
  30. package/dist/services/chat-organization-branding.d.ts.map +1 -0
  31. package/dist/services/chat-organization-branding.js +212 -0
  32. package/dist/services/chat-organization-branding.js.map +1 -0
  33. package/dist/services/chats.d.ts +24 -6
  34. package/dist/services/chats.d.ts.map +1 -1
  35. package/dist/services/chats.js +76 -86
  36. package/dist/services/chats.js.map +1 -1
  37. package/dist/services/organization-branding-fence.d.ts +4 -3
  38. package/dist/services/organization-branding-fence.d.ts.map +1 -1
  39. package/dist/services/organization-branding-fence.js +4 -3
  40. package/dist/services/organization-branding-fence.js.map +1 -1
  41. package/dist/services/orgs.d.ts +1 -0
  42. package/dist/services/orgs.d.ts.map +1 -1
  43. package/dist/services/orgs.js +11 -2
  44. package/dist/services/orgs.js.map +1 -1
  45. package/dist/services/rust-foundation-bridge.d.ts +8 -0
  46. package/dist/services/rust-foundation-bridge.d.ts.map +1 -1
  47. package/dist/services/rust-foundation-bridge.js +203 -25
  48. package/dist/services/rust-foundation-bridge.js.map +1 -1
  49. package/dist/services/rust-foundation-bridge.test.js +183 -4
  50. package/dist/services/rust-foundation-bridge.test.js.map +1 -1
  51. package/dist/services/workspace-backup-read-bridge.d.ts +11 -0
  52. package/dist/services/workspace-backup-read-bridge.d.ts.map +1 -0
  53. package/dist/services/workspace-backup-read-bridge.js +51 -0
  54. package/dist/services/workspace-backup-read-bridge.js.map +1 -0
  55. package/dist/services/workspace-backups.d.ts +0 -1
  56. package/dist/services/workspace-backups.d.ts.map +1 -1
  57. package/dist/services/workspace-backups.js +0 -11
  58. package/dist/services/workspace-backups.js.map +1 -1
  59. package/package.json +13 -13
  60. package/resources/bundled-skills/rudder-docs/references/cli-reference.md +1 -1
  61. package/resources/native/aarch64-apple-darwin/rudder-server-foundation +0 -0
  62. package/resources/native/aarch64-pc-windows-msvc/migration-preflight.exe +0 -0
  63. package/resources/native/aarch64-pc-windows-msvc/rudder-server-foundation.exe +0 -0
  64. package/resources/native/aarch64-unknown-linux-gnu/rudder-server-foundation +0 -0
  65. package/resources/native/x86_64-apple-darwin/rudder-server-foundation +0 -0
  66. package/resources/native/x86_64-pc-windows-msvc/migration-preflight.exe +0 -0
  67. package/resources/native/x86_64-pc-windows-msvc/rudder-server-foundation.exe +0 -0
  68. package/resources/native/x86_64-unknown-linux-gnu/rudder-server-foundation +0 -0
  69. package/skills/rudder-docs/references/cli-reference.md +1 -1
  70. package/ui-dist/assets/{LibraryLiveSurface-Bs8V_pMU.js → LibraryLiveSurface-CodApFW-.js} +1 -1
  71. package/ui-dist/assets/{abnfDiagram-VRR7QNED-DneqWru9.js → abnfDiagram-VRR7QNED-BDz58rQS.js} +1 -1
  72. package/ui-dist/assets/{addon-fit-DCRNyXYv.js → addon-fit-DZOvRzIT.js} +1 -1
  73. package/ui-dist/assets/{arc-D_2I_R5Z.js → arc-C9TMZvvd.js} +1 -1
  74. package/ui-dist/assets/{architectureDiagram-ZJ3FMSHR-C0ANAv78.js → architectureDiagram-ZJ3FMSHR-D4twxoE1.js} +1 -1
  75. package/ui-dist/assets/{blockDiagram-677ZJIJ3-BqFGOix5.js → blockDiagram-677ZJIJ3-DJs0gNG4.js} +1 -1
  76. package/ui-dist/assets/{c4Diagram-LMCZKHZV-82LfEi1P.js → c4Diagram-LMCZKHZV-6oq8lq8q.js} +1 -1
  77. package/ui-dist/assets/channel-CmUGU_Az.js +1 -0
  78. package/ui-dist/assets/{chunk-2Q5K7J3B-DijvvGcl.js → chunk-2Q5K7J3B-m2MTxaYE.js} +1 -1
  79. package/ui-dist/assets/{chunk-32BRIVSS-Z09s337w.js → chunk-32BRIVSS-BYbeAqiG.js} +1 -1
  80. package/ui-dist/assets/{chunk-5VM5RSS4-DgQWkO6B.js → chunk-5VM5RSS4-Dy6Af71u.js} +1 -1
  81. package/ui-dist/assets/{chunk-EX3LRPZG-UTEQqeds.js → chunk-EX3LRPZG-DBbU0fB6.js} +1 -1
  82. package/ui-dist/assets/{chunk-JWPE2WC7-DAaSu1vD.js → chunk-JWPE2WC7-D3_gHXg6.js} +1 -1
  83. package/ui-dist/assets/{chunk-MOJQB5TN-D_fTXJM3.js → chunk-MOJQB5TN-Di4_CsSE.js} +1 -1
  84. package/ui-dist/assets/{chunk-RYQCIY6F-C7H_axhC.js → chunk-RYQCIY6F-CnLAkiBe.js} +1 -1
  85. package/ui-dist/assets/{chunk-V7JOEXUC-B2toa05O.js → chunk-V7JOEXUC-D3UVXcJk.js} +1 -1
  86. package/ui-dist/assets/{chunk-VR4S4FIN-CkRvPkE2.js → chunk-VR4S4FIN-BJHYVSXv.js} +1 -1
  87. package/ui-dist/assets/{chunk-XXDRQBXY-DOO_r0VK.js → chunk-XXDRQBXY-C4VVlQgO.js} +1 -1
  88. package/ui-dist/assets/classDiagram-OUVF2IWQ-Dy5r3CRw.js +1 -0
  89. package/ui-dist/assets/classDiagram-v2-EOCWNBFH-Dy5r3CRw.js +1 -0
  90. package/ui-dist/assets/{cose-bilkent-JH36ORCC-BzYjE_M-.js → cose-bilkent-JH36ORCC-2YJ4B2bE.js} +1 -1
  91. package/ui-dist/assets/{cynefin-VYW2F7L2-Dcf0eQJ5.js → cynefin-VYW2F7L2-293DKtI3.js} +1 -1
  92. package/ui-dist/assets/{cynefinDiagram-TSTJHNR4-Cs_Lv8Ua.js → cynefinDiagram-TSTJHNR4-d23XGkDy.js} +1 -1
  93. package/ui-dist/assets/{dagre-VKFMJZFB-B8oZME7g.js → dagre-VKFMJZFB-EJXBSBZ7.js} +1 -1
  94. package/ui-dist/assets/{diagram-FQU43EPY-DFHkB-_t.js → diagram-FQU43EPY-CcQzLlPj.js} +1 -1
  95. package/ui-dist/assets/{diagram-G47NLZAW-FGxRm1A-.js → diagram-G47NLZAW-Bke8VP0c.js} +1 -1
  96. package/ui-dist/assets/{diagram-NH7WQ7WH-Ot83ScOb.js → diagram-NH7WQ7WH-CDVrkJeo.js} +1 -1
  97. package/ui-dist/assets/{diagram-OA4YK3LP-CkiHNUvw.js → diagram-OA4YK3LP-Dw_uKvbb.js} +1 -1
  98. package/ui-dist/assets/{diagram-WEI45ONY-CxM3g_L3.js → diagram-WEI45ONY-DmhFc8DI.js} +1 -1
  99. package/ui-dist/assets/{ebnfDiagram-CCIWWBDH-DbcqsHcY.js → ebnfDiagram-CCIWWBDH-CdqBJkjm.js} +1 -1
  100. package/ui-dist/assets/{erDiagram-Q63AITRT-DLROlxDN.js → erDiagram-Q63AITRT-DOkjjwWL.js} +1 -1
  101. package/ui-dist/assets/{flowDiagram-23GEKE2U-DphM_YLM.js → flowDiagram-23GEKE2U-DG8rqW-P.js} +1 -1
  102. package/ui-dist/assets/{ganttDiagram-NO4QXBWP--QIRtWYP.js → ganttDiagram-NO4QXBWP-BEkgTSEf.js} +1 -1
  103. package/ui-dist/assets/{gitGraphDiagram-IHSO6WYX-Bg3QwNvE.js → gitGraphDiagram-IHSO6WYX-BjXwkXS6.js} +1 -1
  104. package/ui-dist/assets/{graph-B_1y14m_.js → graph-D3KzI4sR.js} +1 -1
  105. package/ui-dist/assets/{index-E2v-0TkN.js → index-B2UcZ_IJ.js} +1 -1
  106. package/ui-dist/assets/{index-Bi9I1TFJ.js → index-BDH__Lgs.js} +5 -5
  107. package/ui-dist/assets/{index-CcWXJMSa.js → index-BIQKbQUa.js} +1 -1
  108. package/ui-dist/assets/{index-XWYyP2hU.js → index-BIwzh-U4.js} +1 -1
  109. package/ui-dist/assets/{index-BlFoD6Gg.js → index-BNdZbjyn.js} +1 -1
  110. package/ui-dist/assets/{index-B-yeMW3t.js → index-BONjSnI2.js} +1 -1
  111. package/ui-dist/assets/{index-Aj3Mi7R6.js → index-BrgGIOAR.js} +1 -1
  112. package/ui-dist/assets/{index-CS2TW9nf.js → index-By6wVGNY.js} +1 -1
  113. package/ui-dist/assets/{index-BABow2kh.js → index-C6RzrVdO.js} +1 -1
  114. package/ui-dist/assets/{index-BueQLOw6.js → index-ChpzeG1B.js} +1 -1
  115. package/ui-dist/assets/{index-6O1Ef9oA.js → index-D-jdXuoy.js} +1 -1
  116. package/ui-dist/assets/{index-CdAtz86o.js → index-D2RUPIgv.js} +1 -1
  117. package/ui-dist/assets/{index-BEgTumxB.js → index-D3MTazer.js} +1 -1
  118. package/ui-dist/assets/{index-CMUgKK2j.js → index-DepPPcF2.js} +1 -1
  119. package/ui-dist/assets/{index-BQheb_6L.js → index-fZqqDrca.js} +1 -1
  120. package/ui-dist/assets/{infoDiagram-FWYZ7A6U-BxygKDVp.js → infoDiagram-FWYZ7A6U-sxoY23rO.js} +1 -1
  121. package/ui-dist/assets/{ishikawaDiagram-FXEZZL3T-47zucfG2.js → ishikawaDiagram-FXEZZL3T-DS6bgeAA.js} +1 -1
  122. package/ui-dist/assets/{journeyDiagram-5HDEW3XC-D8cyI8aY.js → journeyDiagram-5HDEW3XC-DzVKXP7n.js} +1 -1
  123. package/ui-dist/assets/{kanban-definition-HUTT4EX6-CrxRNese.js → kanban-definition-HUTT4EX6--VTcXs7-.js} +1 -1
  124. package/ui-dist/assets/{layout-OyZo5VN3.js → layout-DMOyxlK9.js} +1 -1
  125. package/ui-dist/assets/{linear-CuiwlwQB.js → linear-C76BMUjd.js} +1 -1
  126. package/ui-dist/assets/{map-rixHzQ5d.js → map-CeACQf-M.js} +1 -1
  127. package/ui-dist/assets/{mermaid.core-BBG92fxH.js → mermaid.core-C39RyJW7.js} +4 -4
  128. package/ui-dist/assets/{mindmap-definition-LN4V7U3C-CivqbhCV.js → mindmap-definition-LN4V7U3C-CC5aZy3e.js} +1 -1
  129. package/ui-dist/assets/{pegDiagram-2B236MQR-JrPSWk9k.js → pegDiagram-2B236MQR-Pfr90o3u.js} +1 -1
  130. package/ui-dist/assets/{pieDiagram-ENE6RG2P-F4HEWR5n.js → pieDiagram-ENE6RG2P-cFuaxMwf.js} +1 -1
  131. package/ui-dist/assets/{quadrantDiagram-ABIIQ3AL-BJNly8dn.js → quadrantDiagram-ABIIQ3AL-CcQ7rg5U.js} +1 -1
  132. package/ui-dist/assets/{railroadDiagram-RFXS5EU6-DNORDnb2.js → railroadDiagram-RFXS5EU6-Dn0G1sUQ.js} +1 -1
  133. package/ui-dist/assets/{requirementDiagram-TGXJPOKE-710xtGEU.js → requirementDiagram-TGXJPOKE-C55Bzmxm.js} +1 -1
  134. package/ui-dist/assets/{sankeyDiagram-HTMAVEWB-BmWJHmHA.js → sankeyDiagram-HTMAVEWB-rC-F0WZY.js} +1 -1
  135. package/ui-dist/assets/{sequenceDiagram-DBY2YBRQ-A73TFc3V.js → sequenceDiagram-DBY2YBRQ-DKnrOS-d.js} +1 -1
  136. package/ui-dist/assets/{sizeCapture-X5ZJPWSS-B8otrPI2.js → sizeCapture-X5ZJPWSS-CftJxMqM.js} +1 -1
  137. package/ui-dist/assets/{stateDiagram-2N3HPSRC-BZ9k729q.js → stateDiagram-2N3HPSRC-BWk2fDZE.js} +1 -1
  138. package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-CAKipX8h.js +1 -0
  139. package/ui-dist/assets/{swimlanes-5IMT3BWC-W_CH_z9Z.js → swimlanes-5IMT3BWC-DEOS3o8Q.js} +2 -2
  140. package/ui-dist/assets/swimlanesDiagram-G3AALYLV-BICPV_pK.js +8 -0
  141. package/ui-dist/assets/{timeline-definition-FHXFAJF6-CcXbC6J1.js → timeline-definition-FHXFAJF6-_6-BAwLW.js} +1 -1
  142. package/ui-dist/assets/{vennDiagram-L72KCM5P-BMHmsQqg.js → vennDiagram-L72KCM5P-BjCktz3U.js} +1 -1
  143. package/ui-dist/assets/{wardleyDiagram-EHGQE667-Bq2-CEvU.js → wardleyDiagram-EHGQE667-DrmL6CAw.js} +1 -1
  144. package/ui-dist/assets/{xterm-8vrqRuWm.js → xterm-Jvo0xPzf.js} +1 -1
  145. package/ui-dist/assets/{xychartDiagram-FW5EYKEG-De3RUAME.js → xychartDiagram-FW5EYKEG-DyJoUa3f.js} +1 -1
  146. package/ui-dist/index.html +1 -1
  147. package/ui-dist/assets/channel-DjvWm5jR.js +0 -1
  148. package/ui-dist/assets/classDiagram-OUVF2IWQ-CNSRItW2.js +0 -1
  149. package/ui-dist/assets/classDiagram-v2-EOCWNBFH-CNSRItW2.js +0 -1
  150. package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-DepHJpk7.js +0 -1
  151. package/ui-dist/assets/swimlanesDiagram-G3AALYLV-BRL-ddud.js +0 -8
@@ -11,9 +11,10 @@ type BrandingMutationStateRow = {
11
11
  export declare function configuredOrganizationBrandingOrgIds(rawValue?: string | undefined): string[];
12
12
  export declare function organizationBrandingOrgIsSelected(organizationId: string, organizationIds?: string[]): boolean;
13
13
  /**
14
- * Serialize every legacy brandColor writer with the component-level Rust
15
- * ownership handoff. This lock must be acquired before the organization-wide
16
- * fence so a Rust branding transaction and a Node update cannot cross locks.
14
+ * Serialize legacy brandColor and organization-logo writers with the
15
+ * component-level Rust ownership handoff. Acquire this before the
16
+ * organization-wide fence so a Rust branding transaction and a Node update
17
+ * cannot cross locks.
17
18
  */
18
19
  export declare function lockNodeOrganizationBrandingAuthority(tx: TransactionClient, organizationId: string): Promise<BrandingMutationStateRow>;
19
20
  /** Serialize organization deletion with a branding mutation without changing its owner. */
@@ -1 +1 @@
1
- {"version":3,"file":"organization-branding-fence.d.ts","sourceRoot":"","sources":["../../src/services/organization-branding-fence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAIvC,KAAK,iBAAiB,GAAG;IACvB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3C,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAC3C,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACtC,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAIF,wBAAgB,oCAAoC,CAClD,QAAQ,qBAAwD,GAC/D,MAAM,EAAE,CAYV;AAED,wBAAgB,iCAAiC,CAC/C,cAAc,EAAE,MAAM,EACtB,eAAe,WAAyC,GACvD,OAAO,CAET;AAgCD;;;;GAIG;AACH,wBAAsB,qCAAqC,CACzD,EAAE,EAAE,iBAAiB,EACrB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,wBAAwB,CAAC,CAMnC;AAED,2FAA2F;AAC3F,wBAAsB,4CAA4C,CAChE,EAAE,EAAE,iBAAiB,EACrB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,wBAAwB,CAAC,CAEnC;AAED;;;;;GAKG;AACH,wBAAsB,iDAAiD,CACrE,EAAE,EAAE,iBAAiB,EACrB,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,iBA0BpC;AAED,wBAAsB,oCAAoC,CACxD,EAAE,EAAE,EAAE,EACN,cAAc,CAAC,EAAE,MAAM,iBAQxB"}
1
+ {"version":3,"file":"organization-branding-fence.d.ts","sourceRoot":"","sources":["../../src/services/organization-branding-fence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAIvC,KAAK,iBAAiB,GAAG;IACvB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3C,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAC3C,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACtC,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAIF,wBAAgB,oCAAoC,CAClD,QAAQ,qBAAwD,GAC/D,MAAM,EAAE,CAYV;AAED,wBAAgB,iCAAiC,CAC/C,cAAc,EAAE,MAAM,EACtB,eAAe,WAAyC,GACvD,OAAO,CAET;AAgCD;;;;;GAKG;AACH,wBAAsB,qCAAqC,CACzD,EAAE,EAAE,iBAAiB,EACrB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,wBAAwB,CAAC,CAMnC;AAED,2FAA2F;AAC3F,wBAAsB,4CAA4C,CAChE,EAAE,EAAE,iBAAiB,EACrB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,wBAAwB,CAAC,CAEnC;AAED;;;;;GAKG;AACH,wBAAsB,iDAAiD,CACrE,EAAE,EAAE,iBAAiB,EACrB,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,iBA0BpC;AAED,wBAAsB,oCAAoC,CACxD,EAAE,EAAE,EAAE,EACN,cAAc,CAAC,EAAE,MAAM,iBAQxB"}
@@ -43,9 +43,10 @@ async function lockOrganizationBrandingMutationState(tx, organizationId) {
43
43
  return row;
44
44
  }
45
45
  /**
46
- * Serialize every legacy brandColor writer with the component-level Rust
47
- * ownership handoff. This lock must be acquired before the organization-wide
48
- * fence so a Rust branding transaction and a Node update cannot cross locks.
46
+ * Serialize legacy brandColor and organization-logo writers with the
47
+ * component-level Rust ownership handoff. Acquire this before the
48
+ * organization-wide fence so a Rust branding transaction and a Node update
49
+ * cannot cross locks.
49
50
  */
50
51
  export async function lockNodeOrganizationBrandingAuthority(tx, organizationId) {
51
52
  const row = await lockOrganizationBrandingMutationState(tx, organizationId);
@@ -1 +1 @@
1
- {"version":3,"file":"organization-branding-fence.js","sourceRoot":"","sources":["../../src/services/organization-branding-fence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"organization-branding-fence.js","sourceRoot":"","sources":["../../src/services/organization-branding-fence.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAaxC,MAAM,YAAY,GAAG,4EAA4E,CAAC;AAElG,MAAM,UAAU,oCAAoC,CAClD,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,yCAAyC;IAEhE,MAAM,MAAM,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;SAC5B,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SAC5B,MAAM,CAAC,OAAO,CAAC,CAAC;IACnB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAClE,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,0EAA0E,OAAO,EAAE,CACpF,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,cAAsB,EACtB,eAAe,GAAG,oCAAoC,EAAE;IAExD,OAAO,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,eAAe,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;AAClF,CAAC;AAED,KAAK,UAAU,qCAAqC,CAClD,EAAqB,EACrB,cAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;;;qBAGhB,cAAc;;GAEhC,CAAuE,CAAC;IACzE,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACjE,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,QAAQ,CAAC,6DAA6D,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,CAAC;QACH,IAAI,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,QAAQ,CAAC,2DAA2D,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;QACxC,MAAM,QAAQ,CAAC,yDAAyD,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,GAAG,CAAC,KAAK,KAAK,MAAM,IAAI,GAAG,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;QACjD,MAAM,QAAQ,CAAC,+DAA+D,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,qCAAqC,CACzD,EAAqB,EACrB,cAAsB;IAEtB,MAAM,GAAG,GAAG,MAAM,qCAAqC,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IAC5E,IAAI,GAAG,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;QACzB,MAAM,QAAQ,CAAC,2DAA2D,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,2FAA2F;AAC3F,MAAM,CAAC,KAAK,UAAU,4CAA4C,CAChE,EAAqB,EACrB,cAAsB;IAEtB,OAAO,qCAAqC,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;AACnE,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iDAAiD,CACrE,EAAqB,EACrB,eAAmC;IAEnC,MAAM,WAAW,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3E,IAAI,WAAW,EAAE,MAAM,KAAK,CAAC;QAAE,OAAO;IACtC,MAAM,KAAK,GAAG,WAAW;QACvB,CAAC,CAAC,GAAG,CAAA,kBAAkB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAA,GAAG,EAAE,QAAQ,CAAC,EAAE,GAAG,CAAA,IAAI,CAAC,GAAG;QACtF,CAAC,CAAC,GAAG,CAAA,EAAE,CAAC;IACV,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;;;;QAI9B,KAAK;;GAEV,CAAyC,CAAC;IAC3C,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,MAAM,QAAQ,CAAC,+DAA+D,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;;;;;;;QAOd,KAAK;GACV,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oCAAoC,CACxD,EAAM,EACN,cAAuB;IAEvB,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAChC,MAAM,iDAAiD,CACrD,EAAE,EACF,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAC5D,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -59,6 +59,7 @@ export declare function organizationService(db: Db): {
59
59
  workspace: null;
60
60
  logoUrl: string | null;
61
61
  }) | null>;
62
+ getBrandingMutationOwner: (id: string) => Promise<"node" | "rust">;
62
63
  create: (data: OrganizationCreateInput) => Promise<{
63
64
  id: string;
64
65
  urlKey: string;
@@ -1 +1 @@
1
- {"version":3,"file":"orgs.d.ts","sourceRoot":"","sources":["../../src/services/orgs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EA0CL,aAAa,EAUd,MAAM,cAAc,CAAC;AAmBtB,KAAK,wBAAwB,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAC/E,KAAK,uBAAuB,GAAG,OAAO,aAAa,CAAC,YAAY,GAAG;IACjE,SAAS,CAAC,EAAE;QACV,YAAY,CAAC,EAAE,wBAAwB,CAAC;QACxC,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;CACH,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;kBAwMlB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;mBAaX,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;iBAgEhC,MAAM,QACJ,OAAO,CAAC,OAAO,aAAa,CAAC,YAAY,CAAC,GAAG;QAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;;;;;;;;;;;;;;;;;;;;;;;;;;kBAoHtE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;iBAkBP,MAAM;;;;;;;;;;;;;;;;;;;;oBA8E4B,MAAM;oBAAc,MAAM;;EAc5E"}
1
+ {"version":3,"file":"orgs.d.ts","sourceRoot":"","sources":["../../src/services/orgs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EA0CL,aAAa,EAUd,MAAM,cAAc,CAAC;AAmBtB,KAAK,wBAAwB,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAC/E,KAAK,uBAAuB,GAAG,OAAO,aAAa,CAAC,YAAY,GAAG;IACjE,SAAS,CAAC,EAAE;QACV,YAAY,CAAC,EAAE,wBAAwB,CAAC;QACxC,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;CACH,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;kBAwMlB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;mCAaW,MAAM;mBAS5B,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;iBAgEhC,MAAM,QACJ,OAAO,CAAC,OAAO,aAAa,CAAC,YAAY,CAAC,GAAG;QAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;;;;;;;;;;;;;;;;;;;;;;;;;;kBAqHtE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;iBAkBP,MAAM;;;;;;;;;;;;;;;;;;;;oBA8E4B,MAAM;oBAAc,MAAM;;EAc5E"}
@@ -195,6 +195,14 @@ export function organizationService(db) {
195
195
  .where(eq(organizationIssuePrefixAliases.orgId, id));
196
196
  return enrichCompany(hydrated, aliases.map((alias) => alias.prefix));
197
197
  },
198
+ getBrandingMutationOwner: async (id) => {
199
+ const state = await db
200
+ .select({ owner: organizationBrandingMutationState.owner })
201
+ .from(organizationBrandingMutationState)
202
+ .where(eq(organizationBrandingMutationState.orgId, id))
203
+ .then((rows) => rows[0] ?? null);
204
+ return state?.owner ?? null;
205
+ },
198
206
  create: (data) => db.transaction(async (tx) => {
199
207
  const { workspace, analytics, ...organizationData } = data;
200
208
  void workspace;
@@ -249,8 +257,9 @@ export function organizationService(db) {
249
257
  return enrichCompany(hydrated);
250
258
  }),
251
259
  update: (id, data) => db.transaction(async (tx) => {
252
- const writesBrandColor = Object.prototype.hasOwnProperty.call(data, "brandColor");
253
- if (writesBrandColor)
260
+ const writesBrandingField = ["brandColor", "logoAssetId"]
261
+ .some((field) => Object.prototype.hasOwnProperty.call(data, field));
262
+ if (writesBrandingField)
254
263
  await lockNodeOrganizationBrandingAuthority(tx, id);
255
264
  await lockNodeMutationAuthority(tx, id);
256
265
  const existing = await getCompanyQuery(tx)
@@ -1 +1 @@
1
- {"version":3,"file":"orgs.js","sourceRoot":"","sources":["../../src/services/orgs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orgs.js","sourceRoot":"","sources":["../../src/services/orgs.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ export type RustFoundationBridgeOptions = {
16
16
  binaryPath?: string;
17
17
  actorEnvelopeKey?: string;
18
18
  requestTimeoutMs?: number;
19
+ workspaceBackupListTimeoutMs?: number;
19
20
  publicIngress?: RustPublicIngressOptions;
20
21
  };
21
22
  export type RustFoundationResponse = {
@@ -42,7 +43,14 @@ export interface RustFoundationBridge {
42
43
  projectCreateStateRoot: string;
43
44
  }): Promise<RustFoundationResponse>;
44
45
  memberDirectory(req: Request, orgId: string): Promise<RustFoundationResponse>;
46
+ workspaceBackupList(req: Request, orgId: string): Promise<RustFoundationResponse>;
47
+ workspaceBackupRead?(req: Request, orgId: string, input: {
48
+ backupId: string;
49
+ operation: "files" | "file" | "download";
50
+ path: string;
51
+ }, signal?: AbortSignal): Promise<globalThis.Response>;
45
52
  organizationBranding(req: Request, orgId: string, body: Buffer, requestPath?: string): Promise<RustFoundationResponse>;
53
+ organizationBrandingForActor(actor: RustFoundationActor, orgId: string, body: Buffer, idempotencyKey: string, requestPath?: string): Promise<RustFoundationResponse>;
46
54
  organizationResourceMutation?(req: Request, orgId: string, resourceId: string, operation: "update" | "delete", body: Buffer, idempotencyKey: string): Promise<RustFoundationResponse>;
47
55
  projectGoalSet(req: Request, orgId: string, projectId: string, body: Buffer, requestPath?: string): Promise<RustFoundationResponse>;
48
56
  projectDelete(req: Request, orgId: string, projectId: string, body: Buffer, idempotencyKey: string, requestPath?: string): Promise<RustFoundationResponse>;
@@ -1 +1 @@
1
- {"version":3,"file":"rust-foundation-bridge.d.ts","sourceRoot":"","sources":["../../src/services/rust-foundation-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rust-foundation-bridge.d.ts","sourceRoot":"","sources":["../../src/services/rust-foundation-bridge.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAUvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAElE,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE/D,MAAM,MAAM,wBAAwB,GAAG;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gFAAgF;IAChF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,wBAAwB,CAAC,EAAE,kBAAkB,CAAC;IAC9C,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,aAAa,CAAC,EAAE,wBAAwB,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,wBAAwB,EAAE,kBAAkB,CAAC;IACtD,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAChD,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9C,yBAAyB,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,WAAW,CAAC,CACV,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,gBAAgB,GACtB,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnC,WAAW,CACT,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,aAAa,EAAE,OAAO,CAAC;QAAC,yBAAyB,EAAE,MAAM,CAAA;KAAE,GAC7F,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnC,aAAa,CACX,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,KAAK,EAAE;QAAE,yBAAyB,EAAE,MAAM,CAAC;QAAC,sBAAsB,EAAE,MAAM,CAAA;KAAE,GAC3E,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnC,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC9E,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAClF,mBAAmB,CAAC,CAClB,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,MAAM,EACb,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EACnF,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAChC,oBAAoB,CAClB,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnC,4BAA4B,CAC1B,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,EACtB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnC,4BAA4B,CAAC,CAC3B,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,QAAQ,GAAG,QAAQ,EAC9B,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnC,cAAc,CACZ,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnC,aAAa,CACX,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,EACtB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,qBAAa,yBAA0B,SAAQ,KAAK;aAEhC,IAAI,EAChB,cAAc,GACd,uBAAuB,GACvB,6BAA6B,GAC7B,oBAAoB,GACpB,gBAAgB,GAChB,WAAW,GACX,gBAAgB;gBAPJ,IAAI,EAChB,cAAc,GACd,uBAAuB,GACvB,6BAA6B,GAC7B,oBAAoB,GACpB,gBAAgB,GAChB,WAAW,GACX,gBAAgB,EACpB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,YAAY;CAKzB;AAED,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AACF,KAAK,WAAW,GAAG,mBAAmB,CAAC;AAiNvC,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,KAAK,EAAE,WAAW,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;;;;;;;;;;;;;;;;;;;;EA+BA;AAoHD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,2BAA2B,GAAG,oBAAoB,CA4pBrG"}
@@ -16,6 +16,8 @@ export class RustFoundationBridgeError extends Error {
16
16
  }
17
17
  const ACTOR_ENVELOPE_AUDIENCE = "rudder-server-foundation";
18
18
  const ACTOR_ENVELOPE_ACTION = "organization.members.directory.read";
19
+ const WORKSPACE_BACKUP_LIST_ACTION = "organization.workspace.backups.list";
20
+ const WORKSPACE_BACKUP_LIST_STREAM_CONTENT_TYPE = "application/x-rudder-workspace-backup-list+ndjson";
19
21
  const ORGANIZATION_BRANDING_ACTION = "organization.branding.update";
20
22
  const ORGANIZATION_RESOURCE_ACTION = "organization.resource.mutate";
21
23
  const PROJECT_GOAL_SET_ACTION = "project.goal_set.replace";
@@ -27,11 +29,103 @@ const ACTOR_ENVELOPE_SCHEMA = "rudder.actor-envelope.v2";
27
29
  const ACTOR_ENVELOPE_LIFETIME_SECONDS = 60;
28
30
  const DEFAULT_REQUEST_TIMEOUT_MS = 3_000;
29
31
  const DEFAULT_READY_TIMEOUT_MS = 5_000;
32
+ const DEFAULT_WORKSPACE_BACKUP_LIST_TIMEOUT_MS = 30_000;
30
33
  function debugBridge(message) {
31
34
  if (process.env.RUDDER_RUST_BRIDGE_DEBUG === "true") {
32
35
  process.stderr.write(`[rudder-rust-bridge] ${message}\n`);
33
36
  }
34
37
  }
38
+ async function readWorkspaceBackupListResponse(response) {
39
+ const contentType = response.headers.get("content-type") ?? "application/json";
40
+ if (response.status !== 200) {
41
+ return {
42
+ status: response.status,
43
+ contentType,
44
+ body: Buffer.from(await response.arrayBuffer()),
45
+ };
46
+ }
47
+ const mediaType = contentType.split(";", 1)[0]?.trim().toLowerCase();
48
+ if (mediaType !== WORKSPACE_BACKUP_LIST_STREAM_CONTENT_TYPE) {
49
+ throw new Error("Rust workspace backup list response used an unexpected content type");
50
+ }
51
+ const reader = response.body?.getReader();
52
+ if (!reader)
53
+ throw new Error("Rust workspace backup list stream has no body");
54
+ const decoder = new TextDecoder("utf-8", { fatal: true });
55
+ const lineParts = [];
56
+ const backups = [];
57
+ const digest = createHash("sha256");
58
+ let ended = false;
59
+ const acceptLine = (line) => {
60
+ if (line.length === 0 || ended)
61
+ throw new Error("Rust workspace backup list stream has an invalid frame sequence");
62
+ const frame = JSON.parse(line);
63
+ if (!frame || typeof frame !== "object" || Array.isArray(frame)) {
64
+ throw new Error("Rust workspace backup list stream frame is not an object");
65
+ }
66
+ const record = frame;
67
+ if (record.type === "backup") {
68
+ if (Object.keys(record).length !== 2
69
+ || !("backup" in record)
70
+ || !record.backup
71
+ || typeof record.backup !== "object"
72
+ || Array.isArray(record.backup)) {
73
+ throw new Error("Rust workspace backup list stream contains an invalid backup frame");
74
+ }
75
+ digest.update(`${line}\n`, "utf8");
76
+ backups.push(record.backup);
77
+ return;
78
+ }
79
+ if (record.type === "end") {
80
+ if (Object.keys(record).length !== 3
81
+ || typeof record.count !== "number"
82
+ || !Number.isSafeInteger(record.count)
83
+ || record.count !== backups.length
84
+ || typeof record.sha256 !== "string"
85
+ || !/^[a-f0-9]{64}$/.test(record.sha256)
86
+ || digest.digest("hex") !== record.sha256) {
87
+ throw new Error("Rust workspace backup list stream terminal integrity check failed");
88
+ }
89
+ ended = true;
90
+ return;
91
+ }
92
+ throw new Error("Rust workspace backup list stream contains an unknown frame");
93
+ };
94
+ const acceptText = (text) => {
95
+ let start = 0;
96
+ for (let index = 0; index < text.length; index += 1) {
97
+ if (text.charCodeAt(index) !== 10)
98
+ continue;
99
+ lineParts.push(text.slice(start, index));
100
+ acceptLine(lineParts.join(""));
101
+ lineParts.length = 0;
102
+ start = index + 1;
103
+ }
104
+ if (start < text.length)
105
+ lineParts.push(text.slice(start));
106
+ };
107
+ try {
108
+ while (true) {
109
+ const { value, done } = await reader.read();
110
+ if (done)
111
+ break;
112
+ acceptText(decoder.decode(value, { stream: true }));
113
+ }
114
+ acceptText(decoder.decode());
115
+ if (lineParts.length > 0 || !ended) {
116
+ throw new Error("Rust workspace backup list stream ended before its complete terminal frame");
117
+ }
118
+ return {
119
+ status: response.status,
120
+ contentType: "application/json",
121
+ body: Buffer.from(JSON.stringify({ backups }), "utf8"),
122
+ };
123
+ }
124
+ catch (error) {
125
+ await reader.cancel(error).catch(() => undefined);
126
+ throw error;
127
+ }
128
+ }
35
129
  function configuredMode(value, envName, defaultMode = "off") {
36
130
  const mode = value?.trim() || defaultMode;
37
131
  if (mode === "off" || mode === "shadow" || mode === "required")
@@ -151,6 +245,9 @@ function candidateBinaryPaths(configured) {
151
245
  }
152
246
  function createFoundationChildEnvironment(input) {
153
247
  return {
248
+ // ZIP DOS timestamps follow the Node host's local Date semantics. Keep
249
+ // this explicit non-secret locale setting without inheriting other env.
250
+ ...(process.env.TZ ? { TZ: process.env.TZ } : {}),
154
251
  RUDDER_NATIVE_LISTEN: "127.0.0.1:0",
155
252
  RUDDER_NATIVE_DATABASE_URL: input.databaseUrl,
156
253
  RUDDER_NATIVE_DATABASE_REQUIRED: "true",
@@ -244,6 +341,7 @@ export function createRustFoundationBridge(options) {
244
341
  let lifecycleTail = Promise.resolve();
245
342
  let lastStderr = "";
246
343
  const requestTimeoutMs = options.requestTimeoutMs ?? DEFAULT_REQUEST_TIMEOUT_MS;
344
+ const workspaceBackupListTimeoutMs = options.workspaceBackupListTimeoutMs ?? DEFAULT_WORKSPACE_BACKUP_LIST_TIMEOUT_MS;
247
345
  const start = async () => {
248
346
  lifecycleState = "starting";
249
347
  let spawned = null;
@@ -408,6 +506,50 @@ export function createRustFoundationBridge(options) {
408
506
  debugBridge(`close completed pid=${current?.pid ?? "none"} exitCode=${current?.exitCode ?? "none"} signal=${current?.signalCode ?? "none"}`);
409
507
  }
410
508
  });
509
+ async function sendOrganizationBranding(actor, orgId, body, idempotencyKey, requestPath, contentType = "application/json") {
510
+ if (organizationBrandingMode === "off") {
511
+ throw new RustFoundationBridgeError("request_failed", "Rust foundation organization branding bridge is disabled");
512
+ }
513
+ await ensureStarted();
514
+ if (!baseUrl)
515
+ throw new RustFoundationBridgeError("request_failed", "Rust foundation bridge is not running");
516
+ const requestId = randomUUID();
517
+ const envelope = createRustActorEnvelope({
518
+ actor,
519
+ organizationId: orgId,
520
+ method: "PATCH",
521
+ path: requestPath,
522
+ action: ORGANIZATION_BRANDING_ACTION,
523
+ body,
524
+ secret: actorEnvelopeKey,
525
+ requestId,
526
+ idempotencyKey,
527
+ });
528
+ let response;
529
+ try {
530
+ response = await fetch(`${baseUrl}${requestPath}`, {
531
+ method: "PATCH",
532
+ headers: {
533
+ "content-type": contentType,
534
+ "x-rudder-actor-envelope": JSON.stringify(envelope),
535
+ "x-rudder-request-id": requestId,
536
+ "x-rudder-idempotency-key": idempotencyKey,
537
+ },
538
+ body: body,
539
+ signal: AbortSignal.timeout(requestTimeoutMs),
540
+ });
541
+ }
542
+ catch (error) {
543
+ throw new RustFoundationBridgeError("request_failed", "Rust foundation request failed", { cause: error });
544
+ }
545
+ const responseBody = Buffer.from(await response.arrayBuffer());
546
+ debugBridge(`organization-branding response status=${response.status} body=${responseBody.toString("utf8").slice(0, 512)}`);
547
+ return {
548
+ status: response.status,
549
+ contentType: response.headers.get("content-type") ?? "application/json",
550
+ body: responseBody,
551
+ };
552
+ }
411
553
  return {
412
554
  mode,
413
555
  organizationBrandingMode,
@@ -606,53 +748,89 @@ export function createRustFoundationBridge(options) {
606
748
  body: Buffer.from(await response.arrayBuffer()),
607
749
  };
608
750
  },
609
- async organizationBranding(req, orgId, body, requestPath = req.originalUrl) {
610
- if (organizationBrandingMode === "off") {
611
- throw new RustFoundationBridgeError("request_failed", "Rust foundation organization branding bridge is disabled");
612
- }
751
+ async workspaceBackupRead(req, orgId, input, signal) {
613
752
  await ensureStarted();
614
753
  if (!baseUrl)
615
754
  throw new RustFoundationBridgeError("request_failed", "Rust foundation bridge is not running");
755
+ const requestPath = `/internal/orgs/${encodeURIComponent(orgId)}/workspace/backup-reads`;
756
+ const body = Buffer.from(JSON.stringify(input), "utf8");
616
757
  const requestId = randomUUID();
617
- const idempotencyKey = req.header("x-rudder-idempotency-key")?.trim();
618
- if (!idempotencyKey) {
619
- throw new RustFoundationBridgeError("request_failed", "Rust organization branding requires x-rudder-idempotency-key");
620
- }
621
758
  const envelope = createRustActorEnvelope({
622
759
  actor: req.actor,
623
760
  organizationId: orgId,
624
- method: "PATCH",
761
+ method: "POST",
625
762
  path: requestPath,
626
- action: ORGANIZATION_BRANDING_ACTION,
763
+ action: "organization.workspace.backup.read",
627
764
  body,
628
765
  secret: actorEnvelopeKey,
629
766
  requestId,
630
- idempotencyKey,
631
767
  });
632
- let response;
768
+ const headerDeadline = new AbortController();
769
+ const deadlineTimer = setTimeout(() => headerDeadline.abort(), workspaceBackupListTimeoutMs);
633
770
  try {
634
- response = await fetch(`${baseUrl}${requestPath}`, {
635
- method: "PATCH",
771
+ // Keep the response streaming. A large archive must not be buffered in
772
+ // Node, and disconnects must cancel its native producer.
773
+ return await fetch(`${baseUrl}${requestPath}`, {
774
+ method: "POST",
636
775
  headers: {
637
- "content-type": req.header("content-type") ?? "application/json",
776
+ "content-type": "application/json",
638
777
  "x-rudder-actor-envelope": JSON.stringify(envelope),
639
778
  "x-rudder-request-id": requestId,
640
- "x-rudder-idempotency-key": idempotencyKey,
641
779
  },
642
780
  body: body,
643
- signal: AbortSignal.timeout(requestTimeoutMs),
781
+ signal: signal ? AbortSignal.any([signal, headerDeadline.signal]) : headerDeadline.signal,
644
782
  });
645
783
  }
646
784
  catch (error) {
647
- throw new RustFoundationBridgeError("request_failed", "Rust foundation request failed", { cause: error });
785
+ throw new RustFoundationBridgeError("request_failed", "Rust workspace backup read request failed", { cause: error });
648
786
  }
649
- const responseBody = Buffer.from(await response.arrayBuffer());
650
- debugBridge(`organization-branding response status=${response.status} body=${responseBody.toString("utf8").slice(0, 512)}`);
651
- return {
652
- status: response.status,
653
- contentType: response.headers.get("content-type") ?? "application/json",
654
- body: responseBody,
655
- };
787
+ finally {
788
+ // Bound header preparation, not the client's archive transfer speed.
789
+ clearTimeout(deadlineTimer);
790
+ }
791
+ },
792
+ async workspaceBackupList(req, orgId) {
793
+ await ensureStarted();
794
+ if (!baseUrl)
795
+ throw new RustFoundationBridgeError("request_failed", "Rust foundation bridge is not running");
796
+ const requestPath = `/internal/orgs/${encodeURIComponent(orgId)}/workspace/backups`;
797
+ const body = Buffer.alloc(0);
798
+ const requestId = randomUUID();
799
+ const envelope = createRustActorEnvelope({
800
+ actor: req.actor,
801
+ organizationId: orgId,
802
+ method: "GET",
803
+ path: requestPath,
804
+ action: WORKSPACE_BACKUP_LIST_ACTION,
805
+ body,
806
+ secret: actorEnvelopeKey,
807
+ requestId,
808
+ });
809
+ try {
810
+ const response = await fetch(`${baseUrl}${requestPath}`, {
811
+ method: "GET",
812
+ headers: {
813
+ "x-rudder-actor-envelope": JSON.stringify(envelope),
814
+ "x-rudder-request-id": requestId,
815
+ },
816
+ signal: AbortSignal.timeout(workspaceBackupListTimeoutMs),
817
+ });
818
+ return await readWorkspaceBackupListResponse(response);
819
+ }
820
+ catch (error) {
821
+ throw new RustFoundationBridgeError("request_failed", "Rust workspace backup list request failed", { cause: error });
822
+ }
823
+ },
824
+ async organizationBranding(req, orgId, body, requestPath = req.originalUrl) {
825
+ const idempotencyKey = req.header("x-rudder-idempotency-key")?.trim();
826
+ if (!idempotencyKey) {
827
+ throw new RustFoundationBridgeError("request_failed", "Rust organization branding requires x-rudder-idempotency-key");
828
+ }
829
+ return sendOrganizationBranding(req.actor, orgId, body, idempotencyKey, requestPath, req.header("content-type") ?? "application/json");
830
+ },
831
+ async organizationBrandingForActor(actor, orgId, body, idempotencyKey, requestPath) {
832
+ const path = requestPath ?? `/api/orgs/${encodeURIComponent(orgId)}/branding`;
833
+ return sendOrganizationBranding(actor, orgId, body, idempotencyKey, path);
656
834
  },
657
835
  async projectGoalSet(req, orgId, projectId, body, requestPath = `/api/orgs/${encodeURIComponent(orgId)}/projects/${encodeURIComponent(projectId)}/goal-set`) {
658
836
  if (projectGoalSetMode !== "required") {