@wildo-ai/platform-config-lib 1.0.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 (230) hide show
  1. package/dist/esm/bootstrap/application-backend-env.contracts.d.ts +2 -0
  2. package/dist/esm/bootstrap/application-backend-env.contracts.d.ts.map +1 -0
  3. package/dist/esm/bootstrap/application-backend-env.contracts.js +2 -0
  4. package/dist/esm/bootstrap/application-backend-env.contracts.js.map +1 -0
  5. package/dist/esm/bootstrap/bootstrap-planner.d.ts +20 -0
  6. package/dist/esm/bootstrap/bootstrap-planner.d.ts.map +1 -0
  7. package/dist/esm/bootstrap/bootstrap-planner.js +26 -0
  8. package/dist/esm/bootstrap/bootstrap-planner.js.map +1 -0
  9. package/dist/esm/bootstrap/bootstrap.contracts.d.ts +120 -0
  10. package/dist/esm/bootstrap/bootstrap.contracts.d.ts.map +1 -0
  11. package/dist/esm/bootstrap/bootstrap.contracts.js +117 -0
  12. package/dist/esm/bootstrap/bootstrap.contracts.js.map +1 -0
  13. package/dist/esm/bootstrap/bootstrap.schemas.d.ts +485 -0
  14. package/dist/esm/bootstrap/bootstrap.schemas.d.ts.map +1 -0
  15. package/dist/esm/bootstrap/bootstrap.schemas.js +130 -0
  16. package/dist/esm/bootstrap/bootstrap.schemas.js.map +1 -0
  17. package/dist/esm/bootstrap/platform-runtime-env.contracts.d.ts +78 -0
  18. package/dist/esm/bootstrap/platform-runtime-env.contracts.d.ts.map +1 -0
  19. package/dist/esm/bootstrap/platform-runtime-env.contracts.js +98 -0
  20. package/dist/esm/bootstrap/platform-runtime-env.contracts.js.map +1 -0
  21. package/dist/esm/bootstrap/runtime-topology.contracts.d.ts +17 -0
  22. package/dist/esm/bootstrap/runtime-topology.contracts.d.ts.map +1 -0
  23. package/dist/esm/bootstrap/runtime-topology.contracts.js +60 -0
  24. package/dist/esm/bootstrap/runtime-topology.contracts.js.map +1 -0
  25. package/dist/esm/credentials/credential-generator.service.d.ts +11 -0
  26. package/dist/esm/credentials/credential-generator.service.d.ts.map +1 -0
  27. package/dist/esm/credentials/credential-generator.service.js +31 -0
  28. package/dist/esm/credentials/credential-generator.service.js.map +1 -0
  29. package/dist/esm/credentials/credentials-provisioner.service.d.ts +190 -0
  30. package/dist/esm/credentials/credentials-provisioner.service.d.ts.map +1 -0
  31. package/dist/esm/credentials/credentials-provisioner.service.js +278 -0
  32. package/dist/esm/credentials/credentials-provisioner.service.js.map +1 -0
  33. package/dist/esm/index.d.ts +16 -0
  34. package/dist/esm/index.d.ts.map +1 -0
  35. package/dist/esm/index.js +16 -0
  36. package/dist/esm/index.js.map +1 -0
  37. package/dist/esm/infra-managers/infra-manager.models.d.ts +146 -0
  38. package/dist/esm/infra-managers/infra-manager.models.d.ts.map +1 -0
  39. package/dist/esm/infra-managers/infra-manager.models.js +2 -0
  40. package/dist/esm/infra-managers/infra-manager.models.js.map +1 -0
  41. package/dist/esm/infra-managers/mongo-atlas-manager.service.d.ts +64 -0
  42. package/dist/esm/infra-managers/mongo-atlas-manager.service.d.ts.map +1 -0
  43. package/dist/esm/infra-managers/mongo-atlas-manager.service.js +307 -0
  44. package/dist/esm/infra-managers/mongo-atlas-manager.service.js.map +1 -0
  45. package/dist/esm/infra-managers/postgresql-manager.service.d.ts +115 -0
  46. package/dist/esm/infra-managers/postgresql-manager.service.d.ts.map +1 -0
  47. package/dist/esm/infra-managers/postgresql-manager.service.js +403 -0
  48. package/dist/esm/infra-managers/postgresql-manager.service.js.map +1 -0
  49. package/dist/esm/infra-managers/rabbitmq-manager.service.d.ts +64 -0
  50. package/dist/esm/infra-managers/rabbitmq-manager.service.d.ts.map +1 -0
  51. package/dist/esm/infra-managers/rabbitmq-manager.service.js +288 -0
  52. package/dist/esm/infra-managers/rabbitmq-manager.service.js.map +1 -0
  53. package/dist/esm/infra-managers/redis-manager.service.d.ts +78 -0
  54. package/dist/esm/infra-managers/redis-manager.service.d.ts.map +1 -0
  55. package/dist/esm/infra-managers/redis-manager.service.js +326 -0
  56. package/dist/esm/infra-managers/redis-manager.service.js.map +1 -0
  57. package/dist/esm/project-config/define-framework-config.d.ts +36 -0
  58. package/dist/esm/project-config/define-framework-config.d.ts.map +1 -0
  59. package/dist/esm/project-config/define-framework-config.js +30 -0
  60. package/dist/esm/project-config/define-framework-config.js.map +1 -0
  61. package/dist/esm/project-config/define-infra-config.d.ts +128 -0
  62. package/dist/esm/project-config/define-infra-config.d.ts.map +1 -0
  63. package/dist/esm/project-config/define-infra-config.js +87 -0
  64. package/dist/esm/project-config/define-infra-config.js.map +1 -0
  65. package/dist/esm/project-config/define-minion-config.d.ts +41 -0
  66. package/dist/esm/project-config/define-minion-config.d.ts.map +1 -0
  67. package/dist/esm/project-config/define-minion-config.js +24 -0
  68. package/dist/esm/project-config/define-minion-config.js.map +1 -0
  69. package/dist/esm/project-config/define-platform-config.d.ts +65 -0
  70. package/dist/esm/project-config/define-platform-config.d.ts.map +1 -0
  71. package/dist/esm/project-config/define-platform-config.js +22 -0
  72. package/dist/esm/project-config/define-platform-config.js.map +1 -0
  73. package/dist/esm/project-config/define-platform-env-config.d.ts +41 -0
  74. package/dist/esm/project-config/define-platform-env-config.d.ts.map +1 -0
  75. package/dist/esm/project-config/define-platform-env-config.js +45 -0
  76. package/dist/esm/project-config/define-platform-env-config.js.map +1 -0
  77. package/dist/esm/project-config/define-project-config.d.ts +38 -0
  78. package/dist/esm/project-config/define-project-config.d.ts.map +1 -0
  79. package/dist/esm/project-config/define-project-config.js +57 -0
  80. package/dist/esm/project-config/define-project-config.js.map +1 -0
  81. package/dist/esm/project-config/define-saas-config.d.ts +252 -0
  82. package/dist/esm/project-config/define-saas-config.d.ts.map +1 -0
  83. package/dist/esm/project-config/define-saas-config.js +137 -0
  84. package/dist/esm/project-config/define-saas-config.js.map +1 -0
  85. package/dist/esm/project-config/define-sharing-policy.d.ts +35 -0
  86. package/dist/esm/project-config/define-sharing-policy.d.ts.map +1 -0
  87. package/dist/esm/project-config/define-sharing-policy.js +30 -0
  88. package/dist/esm/project-config/define-sharing-policy.js.map +1 -0
  89. package/dist/esm/project-config/define-worker-config.d.ts +42 -0
  90. package/dist/esm/project-config/define-worker-config.d.ts.map +1 -0
  91. package/dist/esm/project-config/define-worker-config.js +24 -0
  92. package/dist/esm/project-config/define-worker-config.js.map +1 -0
  93. package/dist/esm/project-config/index.d.ts +22 -0
  94. package/dist/esm/project-config/index.d.ts.map +1 -0
  95. package/dist/esm/project-config/index.js +22 -0
  96. package/dist/esm/project-config/index.js.map +1 -0
  97. package/dist/esm/project-config/loader.d.ts +42 -0
  98. package/dist/esm/project-config/loader.d.ts.map +1 -0
  99. package/dist/esm/project-config/loader.js +164 -0
  100. package/dist/esm/project-config/loader.js.map +1 -0
  101. package/dist/esm/project-config/shared/application-modules.schemas.d.ts +10 -0
  102. package/dist/esm/project-config/shared/application-modules.schemas.d.ts.map +1 -0
  103. package/dist/esm/project-config/shared/application-modules.schemas.js +6 -0
  104. package/dist/esm/project-config/shared/application-modules.schemas.js.map +1 -0
  105. package/dist/esm/project-config/shared/application-modules.utils.d.ts +6 -0
  106. package/dist/esm/project-config/shared/application-modules.utils.d.ts.map +1 -0
  107. package/dist/esm/project-config/shared/application-modules.utils.js +26 -0
  108. package/dist/esm/project-config/shared/application-modules.utils.js.map +1 -0
  109. package/dist/esm/project-config/shared/backing-services.schemas.d.ts +68 -0
  110. package/dist/esm/project-config/shared/backing-services.schemas.d.ts.map +1 -0
  111. package/dist/esm/project-config/shared/backing-services.schemas.js +49 -0
  112. package/dist/esm/project-config/shared/backing-services.schemas.js.map +1 -0
  113. package/dist/esm/project-config/shared/data-services.schemas.d.ts +33 -0
  114. package/dist/esm/project-config/shared/data-services.schemas.d.ts.map +1 -0
  115. package/dist/esm/project-config/shared/data-services.schemas.js +47 -0
  116. package/dist/esm/project-config/shared/data-services.schemas.js.map +1 -0
  117. package/dist/esm/project-config/shared/env-example-defaults.d.ts +27 -0
  118. package/dist/esm/project-config/shared/env-example-defaults.d.ts.map +1 -0
  119. package/dist/esm/project-config/shared/env-example-defaults.js +30 -0
  120. package/dist/esm/project-config/shared/env-example-defaults.js.map +1 -0
  121. package/dist/esm/project-config/shared/environment.schemas.d.ts +106 -0
  122. package/dist/esm/project-config/shared/environment.schemas.d.ts.map +1 -0
  123. package/dist/esm/project-config/shared/environment.schemas.js +111 -0
  124. package/dist/esm/project-config/shared/environment.schemas.js.map +1 -0
  125. package/dist/esm/project-config/shared/infrastructure-defaults.schemas.d.ts +42 -0
  126. package/dist/esm/project-config/shared/infrastructure-defaults.schemas.d.ts.map +1 -0
  127. package/dist/esm/project-config/shared/infrastructure-defaults.schemas.js +42 -0
  128. package/dist/esm/project-config/shared/infrastructure-defaults.schemas.js.map +1 -0
  129. package/dist/esm/project-config/shared/k8s-utils.d.ts +36 -0
  130. package/dist/esm/project-config/shared/k8s-utils.d.ts.map +1 -0
  131. package/dist/esm/project-config/shared/k8s-utils.js +50 -0
  132. package/dist/esm/project-config/shared/k8s-utils.js.map +1 -0
  133. package/dist/esm/project-config/shared/platform-services.schemas.d.ts +30 -0
  134. package/dist/esm/project-config/shared/platform-services.schemas.d.ts.map +1 -0
  135. package/dist/esm/project-config/shared/platform-services.schemas.js +27 -0
  136. package/dist/esm/project-config/shared/platform-services.schemas.js.map +1 -0
  137. package/dist/esm/project-config/shared/service-definitions.schemas.d.ts +42 -0
  138. package/dist/esm/project-config/shared/service-definitions.schemas.d.ts.map +1 -0
  139. package/dist/esm/project-config/shared/service-definitions.schemas.js +29 -0
  140. package/dist/esm/project-config/shared/service-definitions.schemas.js.map +1 -0
  141. package/dist/esm/project-config/sharing-policy-validation.d.ts +40 -0
  142. package/dist/esm/project-config/sharing-policy-validation.d.ts.map +1 -0
  143. package/dist/esm/project-config/sharing-policy-validation.js +143 -0
  144. package/dist/esm/project-config/sharing-policy-validation.js.map +1 -0
  145. package/dist/esm/release/framework-release.constants.d.ts +3 -0
  146. package/dist/esm/release/framework-release.constants.d.ts.map +1 -0
  147. package/dist/esm/release/framework-release.constants.js +3 -0
  148. package/dist/esm/release/framework-release.constants.js.map +1 -0
  149. package/dist/esm/runtime-bridge/platform-runtime-bridge.contracts.d.ts +23 -0
  150. package/dist/esm/runtime-bridge/platform-runtime-bridge.contracts.d.ts.map +1 -0
  151. package/dist/esm/runtime-bridge/platform-runtime-bridge.contracts.js +13 -0
  152. package/dist/esm/runtime-bridge/platform-runtime-bridge.contracts.js.map +1 -0
  153. package/dist/esm/schemas/framework-info.schemas.d.ts +8 -0
  154. package/dist/esm/schemas/framework-info.schemas.d.ts.map +1 -0
  155. package/dist/esm/schemas/framework-info.schemas.js +8 -0
  156. package/dist/esm/schemas/framework-info.schemas.js.map +1 -0
  157. package/dist/esm/schemas/framework-secrets.schemas.d.ts +22 -0
  158. package/dist/esm/schemas/framework-secrets.schemas.d.ts.map +1 -0
  159. package/dist/esm/schemas/framework-secrets.schemas.js +14 -0
  160. package/dist/esm/schemas/framework-secrets.schemas.js.map +1 -0
  161. package/dist/esm/schemas/platform-application-config.schemas.d.ts +20 -0
  162. package/dist/esm/schemas/platform-application-config.schemas.d.ts.map +1 -0
  163. package/dist/esm/schemas/platform-application-config.schemas.js +19 -0
  164. package/dist/esm/schemas/platform-application-config.schemas.js.map +1 -0
  165. package/dist/esm/schemas/platform-application-secrets.schemas.d.ts +54 -0
  166. package/dist/esm/schemas/platform-application-secrets.schemas.d.ts.map +1 -0
  167. package/dist/esm/schemas/platform-application-secrets.schemas.js +67 -0
  168. package/dist/esm/schemas/platform-application-secrets.schemas.js.map +1 -0
  169. package/dist/esm/schemas/platform-config.schemas.d.ts +66 -0
  170. package/dist/esm/schemas/platform-config.schemas.d.ts.map +1 -0
  171. package/dist/esm/schemas/platform-config.schemas.js +28 -0
  172. package/dist/esm/schemas/platform-config.schemas.js.map +1 -0
  173. package/dist/esm/workspace-scope/index.d.ts +3 -0
  174. package/dist/esm/workspace-scope/index.d.ts.map +1 -0
  175. package/dist/esm/workspace-scope/index.js +3 -0
  176. package/dist/esm/workspace-scope/index.js.map +1 -0
  177. package/dist/esm/workspace-scope/workspace-scope-detector.d.ts +15 -0
  178. package/dist/esm/workspace-scope/workspace-scope-detector.d.ts.map +1 -0
  179. package/dist/esm/workspace-scope/workspace-scope-detector.js +87 -0
  180. package/dist/esm/workspace-scope/workspace-scope-detector.js.map +1 -0
  181. package/dist/esm/workspace-scope/workspace-scope.schemas.d.ts +118 -0
  182. package/dist/esm/workspace-scope/workspace-scope.schemas.d.ts.map +1 -0
  183. package/dist/esm/workspace-scope/workspace-scope.schemas.js +157 -0
  184. package/dist/esm/workspace-scope/workspace-scope.schemas.js.map +1 -0
  185. package/dist/tsconfig.build.tsbuildinfo +1 -0
  186. package/package.json +52 -0
  187. package/src/bootstrap/application-backend-env.contracts.ts +17 -0
  188. package/src/bootstrap/bootstrap-planner.ts +46 -0
  189. package/src/bootstrap/bootstrap.contracts.ts +251 -0
  190. package/src/bootstrap/bootstrap.schemas.ts +164 -0
  191. package/src/bootstrap/platform-runtime-env.contracts.ts +99 -0
  192. package/src/bootstrap/runtime-topology.contracts.ts +102 -0
  193. package/src/credentials/credential-generator.service.ts +39 -0
  194. package/src/index.ts +16 -0
  195. package/src/project-config/__tests__/application-modules.utils.test.ts +53 -0
  196. package/src/project-config/__tests__/define-framework-config.test.ts +43 -0
  197. package/src/project-config/__tests__/define-saas-config.test.ts +210 -0
  198. package/src/project-config/__tests__/loader.test.ts +100 -0
  199. package/src/project-config/define-framework-config.ts +44 -0
  200. package/src/project-config/define-infra-config.ts +168 -0
  201. package/src/project-config/define-minion-config.ts +27 -0
  202. package/src/project-config/define-platform-config.ts +28 -0
  203. package/src/project-config/define-platform-env-config.ts +59 -0
  204. package/src/project-config/define-project-config.ts +63 -0
  205. package/src/project-config/define-saas-config.ts +171 -0
  206. package/src/project-config/define-sharing-policy.ts +36 -0
  207. package/src/project-config/define-worker-config.ts +27 -0
  208. package/src/project-config/index.ts +23 -0
  209. package/src/project-config/loader.ts +220 -0
  210. package/src/project-config/shared/application-modules.schemas.ts +12 -0
  211. package/src/project-config/shared/application-modules.utils.ts +65 -0
  212. package/src/project-config/shared/backing-services.schemas.ts +59 -0
  213. package/src/project-config/shared/data-services.schemas.ts +58 -0
  214. package/src/project-config/shared/env-example-defaults.ts +50 -0
  215. package/src/project-config/shared/environment.schemas.ts +136 -0
  216. package/src/project-config/shared/infrastructure-defaults.schemas.ts +47 -0
  217. package/src/project-config/shared/k8s-utils.ts +56 -0
  218. package/src/project-config/shared/platform-services.schemas.ts +33 -0
  219. package/src/project-config/shared/service-definitions.schemas.ts +38 -0
  220. package/src/project-config/sharing-policy-validation.ts +159 -0
  221. package/src/release/framework-release.constants.ts +2 -0
  222. package/src/schemas/__tests__/platform-config.schemas.test.ts +90 -0
  223. package/src/schemas/framework-info.schemas.ts +13 -0
  224. package/src/schemas/framework-secrets.schemas.ts +19 -0
  225. package/src/schemas/platform-application-config.schemas.ts +25 -0
  226. package/src/schemas/platform-application-secrets.schemas.ts +78 -0
  227. package/src/schemas/platform-config.schemas.ts +45 -0
  228. package/src/workspace-scope/index.ts +2 -0
  229. package/src/workspace-scope/workspace-scope-detector.ts +98 -0
  230. package/src/workspace-scope/workspace-scope.schemas.ts +224 -0
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Kubernetes URL builders and naming conventions.
3
+ * Single source of truth for constructing K8s-style addresses and resource names.
4
+ *
5
+ * Used by CLI (ServiceAddressResolver, K8s manifest gen) and apps-manager
6
+ * (application lifecycle) to ensure consistent URL/naming patterns.
7
+ */
8
+ /**
9
+ * Builds a K8s cluster-internal URL: `http://<service>.<namespace>.svc.cluster.local:<port>`
10
+ */
11
+ export declare function buildK8sInternalUrl(service: string, port: number, namespace: string): string;
12
+ /**
13
+ * Builds a K8s cluster-internal hostname (without scheme/port).
14
+ */
15
+ export declare function buildK8sInternalHost(service: string, namespace: string): string;
16
+ /**
17
+ * Builds an ingress-based public URL: `https://<service>.<baseDomain>`
18
+ */
19
+ export declare function buildK8sPublicUrl(service: string, baseDomain: string): string;
20
+ /**
21
+ * K8s Secret name for a platform service: `<service>-secret`
22
+ */
23
+ export declare function k8sServiceSecretName(service: string): string;
24
+ /**
25
+ * K8s ConfigMap name for a platform service: `<service>-config`
26
+ */
27
+ export declare function k8sServiceConfigMapName(service: string): string;
28
+ /**
29
+ * K8s Secret name for an app backend: `app-<serviceName>-secret`
30
+ */
31
+ export declare function k8sAppBackendSecretName(serviceName: string): string;
32
+ /**
33
+ * K8s ConfigMap name for an app backend: `app-<serviceName>-config`
34
+ */
35
+ export declare function k8sAppBackendConfigMapName(serviceName: string): string;
36
+ //# sourceMappingURL=k8s-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"k8s-utils.d.ts","sourceRoot":"","sources":["../../../../src/project-config/shared/k8s-utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAE5F;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAE7E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEtE"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Kubernetes URL builders and naming conventions.
3
+ * Single source of truth for constructing K8s-style addresses and resource names.
4
+ *
5
+ * Used by CLI (ServiceAddressResolver, K8s manifest gen) and apps-manager
6
+ * (application lifecycle) to ensure consistent URL/naming patterns.
7
+ */
8
+ /**
9
+ * Builds a K8s cluster-internal URL: `http://<service>.<namespace>.svc.cluster.local:<port>`
10
+ */
11
+ export function buildK8sInternalUrl(service, port, namespace) {
12
+ return `http://${service}.${namespace}.svc.cluster.local:${port}`;
13
+ }
14
+ /**
15
+ * Builds a K8s cluster-internal hostname (without scheme/port).
16
+ */
17
+ export function buildK8sInternalHost(service, namespace) {
18
+ return `${service}.${namespace}.svc.cluster.local`;
19
+ }
20
+ /**
21
+ * Builds an ingress-based public URL: `https://<service>.<baseDomain>`
22
+ */
23
+ export function buildK8sPublicUrl(service, baseDomain) {
24
+ return `https://${service}.${baseDomain}`;
25
+ }
26
+ /**
27
+ * K8s Secret name for a platform service: `<service>-secret`
28
+ */
29
+ export function k8sServiceSecretName(service) {
30
+ return `${service}-secret`;
31
+ }
32
+ /**
33
+ * K8s ConfigMap name for a platform service: `<service>-config`
34
+ */
35
+ export function k8sServiceConfigMapName(service) {
36
+ return `${service}-config`;
37
+ }
38
+ /**
39
+ * K8s Secret name for an app backend: `app-<serviceName>-secret`
40
+ */
41
+ export function k8sAppBackendSecretName(serviceName) {
42
+ return `app-${serviceName}-secret`;
43
+ }
44
+ /**
45
+ * K8s ConfigMap name for an app backend: `app-<serviceName>-config`
46
+ */
47
+ export function k8sAppBackendConfigMapName(serviceName) {
48
+ return `app-${serviceName}-config`;
49
+ }
50
+ //# sourceMappingURL=k8s-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"k8s-utils.js","sourceRoot":"","sources":["../../../../src/project-config/shared/k8s-utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,IAAY,EAAE,SAAiB;IAClF,OAAO,UAAU,OAAO,IAAI,SAAS,sBAAsB,IAAI,EAAE,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,SAAiB;IACrE,OAAO,GAAG,OAAO,IAAI,SAAS,oBAAoB,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,UAAkB;IACnE,OAAO,WAAW,OAAO,IAAI,UAAU,EAAE,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,OAAO,GAAG,OAAO,SAAS,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,OAAO,GAAG,OAAO,SAAS,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,WAAmB;IACzD,OAAO,OAAO,WAAW,SAAS,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CAAC,WAAmB;IAC5D,OAAO,OAAO,WAAW,SAAS,CAAC;AACrC,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Platform microservices. All use the same Docker image (wildo-platform)
4
+ * differentiated at runtime via PLATFORM_SERVICE env var.
5
+ *
6
+ * For app developers: deployed as Docker containers.
7
+ * For framework developers: run natively from source (hot-reload).
8
+ */
9
+ export declare enum PlatformWildoServices {
10
+ PLATFORM_INIT = "platform-init",
11
+ APPS_MANAGER = "platform-apps-manager",
12
+ CRONTABS_BATCHES_MANAGER = "platform-crontabs-batches-manager",
13
+ FILE_GENERATOR = "platform-file-generator"
14
+ }
15
+ export declare enum AppsManagerMode {
16
+ NORMAL = "normal",
17
+ INIT = "init",
18
+ MAINT = "maint"
19
+ }
20
+ export declare const PlatformServiceConfigSchema: z.ZodObject<{
21
+ serviceName: z.ZodString;
22
+ enabled: z.ZodDefault<z.ZodBoolean>;
23
+ }, z.core.$strip, core.$ZodObjectExtra>;
24
+ export type PlatformServiceConfig = z.infer<typeof PlatformServiceConfigSchema>;
25
+ export declare const PlatformServicesDeclarationSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
26
+ serviceName: z.ZodString;
27
+ enabled: z.ZodDefault<z.ZodBoolean>;
28
+ }, z.core.$strip, core.$ZodObjectExtra>>;
29
+ export type PlatformServicesDeclaration = z.infer<typeof PlatformServicesDeclarationSchema>;
30
+ //# sourceMappingURL=platform-services.schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-services.schemas.d.ts","sourceRoot":"","sources":["../../../../src/project-config/shared/platform-services.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;GAMG;AACH,oBAAY,qBAAqB;IAC/B,aAAa,kBAAkB;IAC/B,YAAY,0BAA0B;IACtC,wBAAwB,sCAAsC;IAC9D,cAAc,4BAA4B;CAC3C;AAED,oBAAY,eAAe;IACzB,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,KAAK,UAAU;CAChB;AAED,eAAO,MAAM,2BAA2B;;;uCAGtC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,eAAO,MAAM,iCAAiC;;;wCAG7C,CAAC;AACF,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Platform microservices. All use the same Docker image (wildo-platform)
4
+ * differentiated at runtime via PLATFORM_SERVICE env var.
5
+ *
6
+ * For app developers: deployed as Docker containers.
7
+ * For framework developers: run natively from source (hot-reload).
8
+ */
9
+ export var PlatformWildoServices;
10
+ (function (PlatformWildoServices) {
11
+ PlatformWildoServices["PLATFORM_INIT"] = "platform-init";
12
+ PlatformWildoServices["APPS_MANAGER"] = "platform-apps-manager";
13
+ PlatformWildoServices["CRONTABS_BATCHES_MANAGER"] = "platform-crontabs-batches-manager";
14
+ PlatformWildoServices["FILE_GENERATOR"] = "platform-file-generator";
15
+ })(PlatformWildoServices || (PlatformWildoServices = {}));
16
+ export var AppsManagerMode;
17
+ (function (AppsManagerMode) {
18
+ AppsManagerMode["NORMAL"] = "normal";
19
+ AppsManagerMode["INIT"] = "init";
20
+ AppsManagerMode["MAINT"] = "maint";
21
+ })(AppsManagerMode || (AppsManagerMode = {}));
22
+ export const PlatformServiceConfigSchema = z.object({
23
+ serviceName: z.string().min(1),
24
+ enabled: z.boolean().default(true),
25
+ });
26
+ export const PlatformServicesDeclarationSchema = z.record(z.string(), PlatformServiceConfigSchema);
27
+ //# sourceMappingURL=platform-services.schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-services.schemas.js","sourceRoot":"","sources":["../../../../src/project-config/shared/platform-services.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,wDAA+B,CAAA;IAC/B,+DAAsC,CAAA;IACtC,uFAA8D,CAAA;IAC9D,mEAA0C,CAAA;AAC5C,CAAC,EALW,qBAAqB,KAArB,qBAAqB,QAKhC;AAED,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,gCAAa,CAAA;IACb,kCAAe,CAAA;AACjB,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CACnC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CACvD,CAAC,CAAC,MAAM,EAAE,EACV,2BAA2B,CAC5B,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { z } from 'zod';
2
+ export declare enum AppFrontendType {
3
+ SAAS_APP = "saas-app",
4
+ STATIC_WEBSITE = "static-website"
5
+ }
6
+ export declare const AppServiceDefinitionSchema: z.ZodObject<{
7
+ path: z.ZodString;
8
+ serviceName: z.ZodString;
9
+ defaultPort: z.ZodOptional<z.ZodNumber>;
10
+ frontendType: z.ZodOptional<z.ZodEnum<typeof AppFrontendType>>;
11
+ }, z.core.$strict, core.$ZodObjectExtra>;
12
+ export type AppServiceDefinition = z.infer<typeof AppServiceDefinitionSchema>;
13
+ export declare const WorkerRuntimeSchema: z.ZodObject<{
14
+ type: z.ZodString;
15
+ language: z.ZodString;
16
+ }, z.core.$strip, core.$ZodObjectExtra>;
17
+ export type WorkerRuntime = z.infer<typeof WorkerRuntimeSchema>;
18
+ export declare const ResourceLimitsSchema: z.ZodObject<{
19
+ cpu: z.ZodOptional<z.ZodString>;
20
+ memory: z.ZodOptional<z.ZodString>;
21
+ }, z.core.$strip, core.$ZodObjectExtra>;
22
+ export type ResourceLimits = z.infer<typeof ResourceLimitsSchema>;
23
+ export declare const DataAccessSchema: z.ZodObject<{
24
+ database: z.ZodOptional<z.ZodEnum<{
25
+ "read-only": "read-only";
26
+ "read-write": "read-write";
27
+ none: "none";
28
+ }>>;
29
+ cache: z.ZodOptional<z.ZodBoolean>;
30
+ queue: z.ZodOptional<z.ZodEnum<{
31
+ none: "none";
32
+ consumer: "consumer";
33
+ producer: "producer";
34
+ both: "both";
35
+ }>>;
36
+ }, z.core.$strip, core.$ZodObjectExtra>;
37
+ export type DataAccess = z.infer<typeof DataAccessSchema>;
38
+ export declare const AppRefSchema: z.ZodObject<{
39
+ path: z.ZodString;
40
+ }, z.core.$strip, core.$ZodObjectExtra>;
41
+ export type AppRef = z.infer<typeof AppRefSchema>;
42
+ //# sourceMappingURL=service-definitions.schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-definitions.schemas.d.ts","sourceRoot":"","sources":["../../../../src/project-config/shared/service-definitions.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,oBAAY,eAAe;IACzB,QAAQ,aAAa;IACrB,cAAc,mBAAmB;CAClC;AAED,eAAO,MAAM,0BAA0B;;;;;wCAK5B,CAAA;AACX,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,mBAAmB;;;uCAG9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,oBAAoB;;;uCAG/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;uCAI3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,YAAY;;uCAEvB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { z } from 'zod';
2
+ export var AppFrontendType;
3
+ (function (AppFrontendType) {
4
+ AppFrontendType["SAAS_APP"] = "saas-app";
5
+ AppFrontendType["STATIC_WEBSITE"] = "static-website";
6
+ })(AppFrontendType || (AppFrontendType = {}));
7
+ export const AppServiceDefinitionSchema = z.object({
8
+ path: z.string().min(1),
9
+ serviceName: z.string().min(1),
10
+ defaultPort: z.number().int().positive().optional(),
11
+ frontendType: z.enum(AppFrontendType).optional(),
12
+ }).strict();
13
+ export const WorkerRuntimeSchema = z.object({
14
+ type: z.string().min(1),
15
+ language: z.string().min(1),
16
+ });
17
+ export const ResourceLimitsSchema = z.object({
18
+ cpu: z.string().min(1).optional(),
19
+ memory: z.string().min(1).optional(),
20
+ });
21
+ export const DataAccessSchema = z.object({
22
+ database: z.enum(['read-only', 'read-write', 'none']).optional(),
23
+ cache: z.boolean().optional(),
24
+ queue: z.enum(['consumer', 'producer', 'both', 'none']).optional(),
25
+ });
26
+ export const AppRefSchema = z.object({
27
+ path: z.string().min(1),
28
+ });
29
+ //# sourceMappingURL=service-definitions.schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-definitions.schemas.js","sourceRoot":"","sources":["../../../../src/project-config/shared/service-definitions.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAN,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,wCAAqB,CAAA;IACrB,oDAAiC,CAAA;AACnC,CAAC,EAHW,eAAe,KAAf,eAAe,QAG1B;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACnD,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;CACjD,CAAC,CAAC,MAAM,EAAE,CAAA;AAGX,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC5B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACjC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IAChE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7B,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;CACnE,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACxB,CAAC,CAAC"}
@@ -0,0 +1,40 @@
1
+ import type { WildoSaasConfig } from './define-saas-config.js';
2
+ import type { WildoSharingPolicy } from './define-sharing-policy.js';
3
+ /**
4
+ * Severity levels for sharing policy validation findings.
5
+ */
6
+ export declare enum SharingPolicyValidationSeverity {
7
+ ERROR = "ERROR",
8
+ WARNING = "WARNING",
9
+ INFO = "INFO"
10
+ }
11
+ export interface SharingPolicyValidationFinding {
12
+ severity: SharingPolicyValidationSeverity;
13
+ code: string;
14
+ message: string;
15
+ providerRef?: string;
16
+ }
17
+ /**
18
+ * Extract all provider refs declared in a SaaS config's capabilities.
19
+ * Returns a deduplicated set of provider reference strings.
20
+ */
21
+ export declare function extractCapabilityProviders(saasConfig: WildoSaasConfig): Set<string>;
22
+ /**
23
+ * Extract all provider refs declared in a sharing policy's secrets.providers section.
24
+ * Returns the defaults array merged with all perApp include arrays (deduplicated).
25
+ */
26
+ export declare function extractSharingPolicyProviders(sharingPolicy: WildoSharingPolicy): Set<string>;
27
+ /**
28
+ * Cross-validate a sharing policy against a SaaS config's capabilities.
29
+ * Checks that all providers declared in capabilities are covered by the sharing policy,
30
+ * and reports providers in the sharing policy that aren't used by any capability.
31
+ *
32
+ * @param saasConfig - The loaded SaaS application config
33
+ * @param sharingPolicy - The loaded per-env sharing policy
34
+ * @param knownProviderRefs - Optional set of valid provider refs (e.g., from AllProviders_Map).
35
+ * If provided, validates that all referenced providers actually exist in the catalog.
36
+ * @param availableSecretProviderRefs - Optional set of provider refs that have secrets
37
+ * configured in secrets.json. If provided, warns about missing secrets.
38
+ */
39
+ export declare function validateSharingPolicy(saasConfig: WildoSaasConfig, sharingPolicy: WildoSharingPolicy, knownProviderRefs?: Set<string>, availableSecretProviderRefs?: Set<string>): SharingPolicyValidationFinding[];
40
+ //# sourceMappingURL=sharing-policy-validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharing-policy-validation.d.ts","sourceRoot":"","sources":["../../../src/project-config/sharing-policy-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE;;GAEG;AACH,oBAAY,+BAA+B;IACzC,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,IAAI,SAAS;CACd;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,+BAA+B,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,CAYnF;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,aAAa,EAAE,kBAAkB,GAAG,GAAG,CAAC,MAAM,CAAC,CAiB5F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,eAAe,EAC3B,aAAa,EAAE,kBAAkB,EACjC,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAC/B,2BAA2B,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACxC,8BAA8B,EAAE,CAiFlC"}
@@ -0,0 +1,143 @@
1
+ /**
2
+ * Severity levels for sharing policy validation findings.
3
+ */
4
+ export var SharingPolicyValidationSeverity;
5
+ (function (SharingPolicyValidationSeverity) {
6
+ SharingPolicyValidationSeverity["ERROR"] = "ERROR";
7
+ SharingPolicyValidationSeverity["WARNING"] = "WARNING";
8
+ SharingPolicyValidationSeverity["INFO"] = "INFO";
9
+ })(SharingPolicyValidationSeverity || (SharingPolicyValidationSeverity = {}));
10
+ /**
11
+ * Extract all provider refs declared in a SaaS config's capabilities.
12
+ * Returns a deduplicated set of provider reference strings.
13
+ */
14
+ export function extractCapabilityProviders(saasConfig) {
15
+ const providers = new Set();
16
+ if (!saasConfig.capabilities)
17
+ return providers;
18
+ for (const binding of Object.values(saasConfig.capabilities)) {
19
+ if (!binding || !binding.enabled)
20
+ continue;
21
+ if (binding.provider)
22
+ providers.add(binding.provider);
23
+ if (binding.providers) {
24
+ for (const p of binding.providers)
25
+ providers.add(p);
26
+ }
27
+ }
28
+ return providers;
29
+ }
30
+ /**
31
+ * Extract all provider refs declared in a sharing policy's secrets.providers section.
32
+ * Returns the defaults array merged with all perApp include arrays (deduplicated).
33
+ */
34
+ export function extractSharingPolicyProviders(sharingPolicy) {
35
+ const providers = new Set();
36
+ const providerRule = sharingPolicy.secrets?.['providers'];
37
+ if (!providerRule)
38
+ return providers;
39
+ const rule = providerRule;
40
+ if (rule.defaults) {
41
+ for (const p of rule.defaults)
42
+ providers.add(p);
43
+ }
44
+ if (rule.perApp) {
45
+ for (const appRule of Object.values(rule.perApp)) {
46
+ if (appRule.include) {
47
+ for (const p of appRule.include)
48
+ providers.add(p);
49
+ }
50
+ }
51
+ }
52
+ return providers;
53
+ }
54
+ /**
55
+ * Cross-validate a sharing policy against a SaaS config's capabilities.
56
+ * Checks that all providers declared in capabilities are covered by the sharing policy,
57
+ * and reports providers in the sharing policy that aren't used by any capability.
58
+ *
59
+ * @param saasConfig - The loaded SaaS application config
60
+ * @param sharingPolicy - The loaded per-env sharing policy
61
+ * @param knownProviderRefs - Optional set of valid provider refs (e.g., from AllProviders_Map).
62
+ * If provided, validates that all referenced providers actually exist in the catalog.
63
+ * @param availableSecretProviderRefs - Optional set of provider refs that have secrets
64
+ * configured in secrets.json. If provided, warns about missing secrets.
65
+ */
66
+ export function validateSharingPolicy(saasConfig, sharingPolicy, knownProviderRefs, availableSecretProviderRefs) {
67
+ const findings = [];
68
+ const capabilityProviders = extractCapabilityProviders(saasConfig);
69
+ const sharingPolicyProviders = extractSharingPolicyProviders(sharingPolicy);
70
+ for (const providerRef of capabilityProviders) {
71
+ if (!sharingPolicyProviders.has(providerRef)) {
72
+ findings.push({
73
+ severity: SharingPolicyValidationSeverity.ERROR,
74
+ code: 'CAPABILITY_PROVIDER_NOT_IN_SHARING_POLICY',
75
+ message: `Provider "${providerRef}" is declared in capabilities but not covered by the sharing policy`,
76
+ providerRef,
77
+ });
78
+ }
79
+ }
80
+ for (const providerRef of sharingPolicyProviders) {
81
+ if (!capabilityProviders.has(providerRef)) {
82
+ findings.push({
83
+ severity: SharingPolicyValidationSeverity.WARNING,
84
+ code: 'SHARING_POLICY_PROVIDER_NOT_IN_CAPABILITIES',
85
+ message: `Provider "${providerRef}" is in the sharing policy but not used by any capability`,
86
+ providerRef,
87
+ });
88
+ }
89
+ }
90
+ if (knownProviderRefs) {
91
+ const allReferencedProviders = new Set([...capabilityProviders, ...sharingPolicyProviders]);
92
+ for (const providerRef of allReferencedProviders) {
93
+ if (!knownProviderRefs.has(providerRef)) {
94
+ findings.push({
95
+ severity: SharingPolicyValidationSeverity.ERROR,
96
+ code: 'UNKNOWN_PROVIDER_REF',
97
+ message: `Provider "${providerRef}" is not in the external-connectors catalog (AllProviders_Map)`,
98
+ providerRef,
99
+ });
100
+ }
101
+ }
102
+ }
103
+ if (availableSecretProviderRefs) {
104
+ for (const providerRef of sharingPolicyProviders) {
105
+ if (!availableSecretProviderRefs.has(providerRef)) {
106
+ findings.push({
107
+ severity: SharingPolicyValidationSeverity.WARNING,
108
+ code: 'PROVIDER_SECRET_MISSING',
109
+ message: `Provider "${providerRef}" is declared in the sharing policy but has no API key in secrets.json`,
110
+ providerRef,
111
+ });
112
+ }
113
+ }
114
+ }
115
+ // Validate that servicesRestrictions providers are subsets of the parent capability providers
116
+ if (saasConfig.capabilities) {
117
+ for (const [capKey, binding] of Object.entries(saasConfig.capabilities)) {
118
+ if (!binding?.enabled || !binding.servicesRestrictions)
119
+ continue;
120
+ const parentProviders = new Set();
121
+ if (binding.provider)
122
+ parentProviders.add(binding.provider);
123
+ if (binding.providers) {
124
+ for (const p of binding.providers)
125
+ parentProviders.add(p);
126
+ }
127
+ for (const [serviceName, restrictedProviders] of Object.entries(binding.servicesRestrictions)) {
128
+ for (const rp of restrictedProviders) {
129
+ if (!parentProviders.has(rp)) {
130
+ findings.push({
131
+ severity: SharingPolicyValidationSeverity.INFO,
132
+ code: 'SERVICE_RESTRICTION_NOT_IN_PARENT',
133
+ message: `servicesRestrictions for "${serviceName}" in capability "${capKey}" references provider "${rp}" which is not in the parent providers list`,
134
+ providerRef: rp,
135
+ });
136
+ }
137
+ }
138
+ }
139
+ }
140
+ }
141
+ return findings;
142
+ }
143
+ //# sourceMappingURL=sharing-policy-validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharing-policy-validation.js","sourceRoot":"","sources":["../../../src/project-config/sharing-policy-validation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare const FRAMEWORK_RELEASE_NPM_SCOPE = "@wildo-ai";
2
+ export declare const FRAMEWORK_RELEASE_DOCKER_NAMESPACE = "wildoai";
3
+ //# sourceMappingURL=framework-release.constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"framework-release.constants.d.ts","sourceRoot":"","sources":["../../../src/release/framework-release.constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B,cAAc,CAAC;AACvD,eAAO,MAAM,kCAAkC,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ export const FRAMEWORK_RELEASE_NPM_SCOPE = '@wildo-ai';
2
+ export const FRAMEWORK_RELEASE_DOCKER_NAMESPACE = 'wildoai';
3
+ //# sourceMappingURL=framework-release.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"framework-release.constants.js","sourceRoot":"","sources":["../../../src/release/framework-release.constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,2BAA2B,GAAG,WAAW,CAAC;AACvD,MAAM,CAAC,MAAM,kCAAkC,GAAG,SAAS,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Minimal runtime bridge for platform-side services that are still instantiated
3
+ * inside a SaaS-backend-powered container.
4
+ *
5
+ * The goal here is to avoid a package-level dependency from
6
+ * `platform-config-lib` back to `saas-backend-lib` just to reference DI token
7
+ * values and the logger shape. These tokens intentionally mirror the existing
8
+ * SaaS container symbols.
9
+ */
10
+ export declare const PLATFORM_RUNTIME_BRIDGE_TYPES: {
11
+ readonly Logger: symbol;
12
+ };
13
+ /**
14
+ * Narrow logger contract required by platform config/runtime helper services.
15
+ */
16
+ export interface PlatformRuntimeLogger {
17
+ debugByType(type: string): (message: string, context?: Record<string, unknown>) => void;
18
+ setDebugTypeLogging(type: string, enabled: boolean): void;
19
+ info(message: string, context?: unknown): void;
20
+ warn(message: string, context?: unknown): void;
21
+ error(message: string, context?: unknown): void;
22
+ }
23
+ //# sourceMappingURL=platform-runtime-bridge.contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-runtime-bridge.contracts.d.ts","sourceRoot":"","sources":["../../../src/runtime-bridge/platform-runtime-bridge.contracts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,eAAO,MAAM,6BAA6B;;CAEhC,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACxF,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/C,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CACjD"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Minimal runtime bridge for platform-side services that are still instantiated
3
+ * inside a SaaS-backend-powered container.
4
+ *
5
+ * The goal here is to avoid a package-level dependency from
6
+ * `platform-config-lib` back to `saas-backend-lib` just to reference DI token
7
+ * values and the logger shape. These tokens intentionally mirror the existing
8
+ * SaaS container symbols.
9
+ */
10
+ export const PLATFORM_RUNTIME_BRIDGE_TYPES = {
11
+ Logger: Symbol.for('SaaS.Logger'),
12
+ };
13
+ //# sourceMappingURL=platform-runtime-bridge.contracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-runtime-bridge.contracts.js","sourceRoot":"","sources":["../../../src/runtime-bridge/platform-runtime-bridge.contracts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;CACzB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { z } from 'zod';
2
+ export declare const WildoFrameworkInfoSchema: z.ZodObject<{
3
+ name: z.ZodDefault<z.ZodString>;
4
+ version: z.ZodString;
5
+ minCliVersion: z.ZodString;
6
+ }, z.core.$strip, core.$ZodObjectExtra>;
7
+ export type WildoFrameworkInfo = z.infer<typeof WildoFrameworkInfoSchema>;
8
+ //# sourceMappingURL=framework-info.schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"framework-info.schemas.d.ts","sourceRoot":"","sources":["../../../src/schemas/framework-info.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,wBAAwB;;;;uCAInC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { z } from 'zod';
2
+ const SemverSchema = z.string().regex(/^\d+\.\d+\.\d+$/, 'must be a simple semver string in the form x.y.z');
3
+ export const WildoFrameworkInfoSchema = z.object({
4
+ name: z.string().min(1).default('wildo-ai'),
5
+ version: SemverSchema,
6
+ minCliVersion: SemverSchema,
7
+ });
8
+ //# sourceMappingURL=framework-info.schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"framework-info.schemas.js","sourceRoot":"","sources":["../../../src/schemas/framework-info.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CACnC,iBAAiB,EACjB,kDAAkD,CACnD,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IAC3C,OAAO,EAAE,YAAY;IACrB,aAAa,EAAE,YAAY;CAC5B,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { z } from 'zod';
2
+ export declare const WildoFrameworkPublishNpmSecretsSchema: z.ZodObject<{
3
+ publishToken: z.ZodString;
4
+ }, z.core.$strip, core.$ZodObjectExtra>;
5
+ export type WildoFrameworkPublishNpmSecrets = z.infer<typeof WildoFrameworkPublishNpmSecretsSchema>;
6
+ export declare const WildoFrameworkPublishDockerSecretsSchema: z.ZodObject<{
7
+ publishUsername: z.ZodOptional<z.ZodString>;
8
+ publishToken: z.ZodString;
9
+ }, z.core.$strip, core.$ZodObjectExtra>;
10
+ export type WildoFrameworkPublishDockerSecrets = z.infer<typeof WildoFrameworkPublishDockerSecretsSchema>;
11
+ export declare const WildoFrameworkSecretsSchema: z.ZodObject<{
12
+ providers: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>>;
13
+ docker: z.ZodOptional<z.ZodObject<{
14
+ publishUsername: z.ZodOptional<z.ZodString>;
15
+ publishToken: z.ZodString;
16
+ }, z.core.$strip, core.$ZodObjectExtra>>;
17
+ npm: z.ZodOptional<z.ZodObject<{
18
+ publishToken: z.ZodString;
19
+ }, z.core.$strip, core.$ZodObjectExtra>>;
20
+ }, z.core.$strip, core.$ZodObjectExtra>;
21
+ export type WildoFrameworkSecrets = z.infer<typeof WildoFrameworkSecretsSchema>;
22
+ //# sourceMappingURL=framework-secrets.schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"framework-secrets.schemas.d.ts","sourceRoot":"","sources":["../../../src/schemas/framework-secrets.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,qCAAqC;;uCAEhD,CAAC;AACH,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAC;AAEpG,eAAO,MAAM,wCAAwC;;;uCAGnD,CAAC;AACH,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wCAAwC,CAAC,CAAC;AAE1G,eAAO,MAAM,2BAA2B;;;;;;;;;uCAItC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { z } from 'zod';
2
+ export const WildoFrameworkPublishNpmSecretsSchema = z.object({
3
+ publishToken: z.string().min(1),
4
+ });
5
+ export const WildoFrameworkPublishDockerSecretsSchema = z.object({
6
+ publishUsername: z.string().min(1).optional(),
7
+ publishToken: z.string().min(1),
8
+ });
9
+ export const WildoFrameworkSecretsSchema = z.object({
10
+ providers: z.record(z.string(), z.string().min(1)).optional().default({}),
11
+ docker: WildoFrameworkPublishDockerSecretsSchema.optional(),
12
+ npm: WildoFrameworkPublishNpmSecretsSchema.optional(),
13
+ });
14
+ //# sourceMappingURL=framework-secrets.schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"framework-secrets.schemas.js","sourceRoot":"","sources":["../../../src/schemas/framework-secrets.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5D,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAChC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/D,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC7C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAChC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACzE,MAAM,EAAE,wCAAwC,CAAC,QAAQ,EAAE;IAC3D,GAAG,EAAE,qCAAqC,CAAC,QAAQ,EAAE;CACtD,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Platform Application Config Schema
4
+ *
5
+ * Stored in MongoDB, fetched by platform services via
6
+ * GET /platform-services-to-manager/config-secrets.
7
+ *
8
+ * After T4, platform service URLs and infrastructure addresses are sourced from
9
+ * each service's env vars (generated by CLI). This schema only contains data
10
+ * that apps-manager manages dynamically:
11
+ * - jwtPublicKeys: rotatable public keys for inter-service JWT verification
12
+ * - customConfig: service-specific key-value configuration
13
+ */
14
+ export declare const Platform_Application_Config_Schema: z.ZodObject<{
15
+ platformApplicationId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>>;
16
+ jwtPublicKeys: z.ZodRecord<z.ZodString, z.ZodString>;
17
+ customConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
18
+ }, z.core.$strip, core.$ZodObjectExtra>;
19
+ export type Platform_Application_Config = z.infer<typeof Platform_Application_Config_Schema>;
20
+ //# sourceMappingURL=platform-application-config.schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-application-config.schemas.d.ts","sourceRoot":"","sources":["../../../src/schemas/platform-application-config.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kCAAkC;;;;uCAM7C,CAAC;AAEH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Platform Application Config Schema
4
+ *
5
+ * Stored in MongoDB, fetched by platform services via
6
+ * GET /platform-services-to-manager/config-secrets.
7
+ *
8
+ * After T4, platform service URLs and infrastructure addresses are sourced from
9
+ * each service's env vars (generated by CLI). This schema only contains data
10
+ * that apps-manager manages dynamically:
11
+ * - jwtPublicKeys: rotatable public keys for inter-service JWT verification
12
+ * - customConfig: service-specific key-value configuration
13
+ */
14
+ export const Platform_Application_Config_Schema = z.object({
15
+ platformApplicationId: z.string().isDBIndexed().isForeignKey().isSummaryField().excludeFromUpdate(),
16
+ jwtPublicKeys: z.record(z.string(), z.string().min(1)),
17
+ customConfig: z.record(z.string(), z.unknown()).optional(),
18
+ });
19
+ //# sourceMappingURL=platform-application-config.schemas.js.map