@vibesdotdev/infra-core 0.0.2 → 1.0.0-rc.4

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 (319) hide show
  1. package/LICENSE +18 -0
  2. package/README.md +27 -1
  3. package/dist/bootstrap/seed.descriptor.d.ts +1 -1
  4. package/dist/bootstrap/seed.descriptor.d.ts.map +1 -1
  5. package/dist/bootstrap/seed.descriptor.js +1 -1
  6. package/dist/bootstrap/seed.descriptor.js.map +1 -1
  7. package/dist/bootstrap/seed.impl-shape.d.ts +1 -1
  8. package/dist/bootstrap/seed.impl-shape.d.ts.map +1 -1
  9. package/dist/bootstrap/seed.kind.d.ts +1 -3
  10. package/dist/bootstrap/seed.kind.d.ts.map +1 -1
  11. package/dist/bootstrap/seed.kind.js +17 -4
  12. package/dist/bootstrap/seed.kind.js.map +1 -1
  13. package/dist/bootstrap/seed.runner.d.ts +9 -2
  14. package/dist/bootstrap/seed.runner.d.ts.map +1 -1
  15. package/dist/bootstrap/seed.runner.js +37 -18
  16. package/dist/bootstrap/seed.runner.js.map +1 -1
  17. package/dist/capped-id.d.ts +19 -0
  18. package/dist/capped-id.d.ts.map +1 -0
  19. package/dist/capped-id.js +64 -0
  20. package/dist/capped-id.js.map +1 -0
  21. package/dist/cli/generate/artifact/artifact.cli-command.descriptor.d.ts +23 -0
  22. package/dist/cli/generate/artifact/artifact.cli-command.descriptor.d.ts.map +1 -0
  23. package/dist/cli/generate/artifact/artifact.cli-command.descriptor.js +33 -0
  24. package/dist/cli/generate/artifact/artifact.cli-command.descriptor.js.map +1 -0
  25. package/dist/cli/generate/artifact/artifact.cli-command.impl.d.ts +24 -0
  26. package/dist/cli/generate/artifact/artifact.cli-command.impl.d.ts.map +1 -0
  27. package/dist/cli/generate/artifact/artifact.cli-command.impl.js +73 -0
  28. package/dist/cli/generate/artifact/artifact.cli-command.impl.js.map +1 -0
  29. package/dist/cli/generate/context.d.ts +17 -0
  30. package/dist/cli/generate/context.d.ts.map +1 -0
  31. package/dist/cli/generate/context.js +24 -0
  32. package/dist/cli/generate/context.js.map +1 -0
  33. package/dist/cli/generate/generate/generate.cli-command.descriptor.d.ts +30 -0
  34. package/dist/cli/generate/generate/generate.cli-command.descriptor.d.ts.map +1 -0
  35. package/dist/cli/generate/generate/generate.cli-command.descriptor.js +25 -0
  36. package/dist/cli/generate/generate/generate.cli-command.descriptor.js.map +1 -0
  37. package/dist/cli/generate/generate/generate.cli-command.impl.d.ts +25 -0
  38. package/dist/cli/generate/generate/generate.cli-command.impl.d.ts.map +1 -0
  39. package/dist/cli/generate/generate/generate.cli-command.impl.js +64 -0
  40. package/dist/cli/generate/generate/generate.cli-command.impl.js.map +1 -0
  41. package/dist/cli/generate/generate-core.d.ts +51 -0
  42. package/dist/cli/generate/generate-core.d.ts.map +1 -0
  43. package/dist/cli/generate/generate-core.js +172 -0
  44. package/dist/cli/generate/generate-core.js.map +1 -0
  45. package/dist/cli/generate/index.d.ts +5 -0
  46. package/dist/cli/generate/index.d.ts.map +1 -0
  47. package/dist/cli/generate/index.js +5 -0
  48. package/dist/cli/generate/index.js.map +1 -0
  49. package/dist/credentials/resolve.d.ts +82 -22
  50. package/dist/credentials/resolve.d.ts.map +1 -1
  51. package/dist/credentials/resolve.js +251 -77
  52. package/dist/credentials/resolve.js.map +1 -1
  53. package/dist/deployment-environment.d.ts +30 -0
  54. package/dist/deployment-environment.d.ts.map +1 -0
  55. package/dist/deployment-environment.js +53 -0
  56. package/dist/deployment-environment.js.map +1 -0
  57. package/dist/deployment.d.ts +8 -4
  58. package/dist/deployment.d.ts.map +1 -1
  59. package/dist/deployment.js +30 -0
  60. package/dist/deployment.js.map +1 -1
  61. package/dist/doks/cloud/base.d.ts +49 -0
  62. package/dist/doks/cloud/base.d.ts.map +1 -0
  63. package/dist/doks/cloud/base.js +138 -0
  64. package/dist/doks/cloud/base.js.map +1 -0
  65. package/dist/doks/cloud/factory.d.ts +18 -0
  66. package/dist/doks/cloud/factory.d.ts.map +1 -0
  67. package/dist/doks/cloud/factory.js +22 -0
  68. package/dist/doks/cloud/factory.js.map +1 -0
  69. package/dist/doks/cloud/index.d.ts +5 -0
  70. package/dist/doks/cloud/index.d.ts.map +1 -0
  71. package/dist/doks/cloud/index.js +4 -0
  72. package/dist/doks/cloud/index.js.map +1 -0
  73. package/dist/doks/types.d.ts +95 -0
  74. package/dist/doks/types.d.ts.map +1 -0
  75. package/dist/doks/types.js +14 -0
  76. package/dist/doks/types.js.map +1 -0
  77. package/dist/generate/index.d.ts +29 -0
  78. package/dist/generate/index.d.ts.map +1 -0
  79. package/dist/generate/index.js +28 -0
  80. package/dist/generate/index.js.map +1 -0
  81. package/dist/generate/infra-generate.plugin.d.ts +3 -0
  82. package/dist/generate/infra-generate.plugin.d.ts.map +1 -0
  83. package/dist/generate/infra-generate.plugin.js +23 -0
  84. package/dist/generate/infra-generate.plugin.js.map +1 -0
  85. package/dist/generate/plugin.d.ts +2 -0
  86. package/dist/generate/plugin.d.ts.map +1 -0
  87. package/dist/generate/plugin.js +2 -0
  88. package/dist/generate/plugin.js.map +1 -0
  89. package/dist/heartbeat/cron-heartbeat.d.ts +97 -0
  90. package/dist/heartbeat/cron-heartbeat.d.ts.map +1 -0
  91. package/dist/heartbeat/cron-heartbeat.js +200 -0
  92. package/dist/heartbeat/cron-heartbeat.js.map +1 -0
  93. package/dist/index.d.ts +34 -20
  94. package/dist/index.d.ts.map +1 -1
  95. package/dist/index.js +28 -14
  96. package/dist/index.js.map +1 -1
  97. package/dist/infra.plugin.d.ts +1 -1
  98. package/dist/infra.plugin.d.ts.map +1 -1
  99. package/dist/infra.plugin.js +62 -12
  100. package/dist/infra.plugin.js.map +1 -1
  101. package/dist/kinds/alerts.kind.d.ts +64 -25
  102. package/dist/kinds/alerts.kind.d.ts.map +1 -1
  103. package/dist/kinds/alerts.kind.js +43 -16
  104. package/dist/kinds/alerts.kind.js.map +1 -1
  105. package/dist/kinds/artifact.kind.d.ts +58 -10
  106. package/dist/kinds/artifact.kind.d.ts.map +1 -1
  107. package/dist/kinds/artifact.kind.js +26 -9
  108. package/dist/kinds/artifact.kind.js.map +1 -1
  109. package/dist/kinds/billing.kind.d.ts +88 -0
  110. package/dist/kinds/billing.kind.d.ts.map +1 -0
  111. package/dist/kinds/billing.kind.js +48 -0
  112. package/dist/kinds/billing.kind.js.map +1 -0
  113. package/dist/kinds/build-job.kind.d.ts +381 -0
  114. package/dist/kinds/build-job.kind.d.ts.map +1 -0
  115. package/dist/kinds/build-job.kind.js +216 -0
  116. package/dist/kinds/build-job.kind.js.map +1 -0
  117. package/dist/kinds/cache.kind.d.ts +39 -92
  118. package/dist/kinds/cache.kind.d.ts.map +1 -1
  119. package/dist/kinds/cache.kind.js +26 -51
  120. package/dist/kinds/cache.kind.js.map +1 -1
  121. package/dist/kinds/cluster.kind.d.ts +154 -0
  122. package/dist/kinds/cluster.kind.d.ts.map +1 -0
  123. package/dist/kinds/cluster.kind.js +99 -0
  124. package/dist/kinds/cluster.kind.js.map +1 -0
  125. package/dist/kinds/compute-source.kind.d.ts +138 -0
  126. package/dist/kinds/compute-source.kind.d.ts.map +1 -0
  127. package/dist/kinds/compute-source.kind.js +145 -0
  128. package/dist/kinds/compute-source.kind.js.map +1 -0
  129. package/dist/kinds/compute-sources.descriptors.d.ts +45 -0
  130. package/dist/kinds/compute-sources.descriptors.d.ts.map +1 -0
  131. package/dist/kinds/compute-sources.descriptors.js +93 -0
  132. package/dist/kinds/compute-sources.descriptors.js.map +1 -0
  133. package/dist/kinds/container-registry.kind.d.ts +62 -0
  134. package/dist/kinds/container-registry.kind.d.ts.map +1 -0
  135. package/dist/kinds/container-registry.kind.js +47 -0
  136. package/dist/kinds/container-registry.kind.js.map +1 -0
  137. package/dist/kinds/database-migrator.kind.d.ts +6 -0
  138. package/dist/kinds/database-migrator.kind.d.ts.map +1 -0
  139. package/dist/kinds/database-migrator.kind.js +28 -0
  140. package/dist/kinds/database-migrator.kind.js.map +1 -0
  141. package/dist/kinds/database.kind.d.ts +114 -93
  142. package/dist/kinds/database.kind.d.ts.map +1 -1
  143. package/dist/kinds/database.kind.js +93 -54
  144. package/dist/kinds/database.kind.js.map +1 -1
  145. package/dist/kinds/deployment-provider.kind.d.ts +5 -0
  146. package/dist/kinds/deployment-provider.kind.d.ts.map +1 -0
  147. package/dist/kinds/deployment-provider.kind.js +11 -0
  148. package/dist/kinds/deployment-provider.kind.js.map +1 -0
  149. package/dist/kinds/discovery.d.ts +5 -12
  150. package/dist/kinds/discovery.d.ts.map +1 -1
  151. package/dist/kinds/discovery.js +5 -17
  152. package/dist/kinds/discovery.js.map +1 -1
  153. package/dist/kinds/dns.kind.d.ts +162 -0
  154. package/dist/kinds/dns.kind.d.ts.map +1 -0
  155. package/dist/kinds/dns.kind.js +54 -0
  156. package/dist/kinds/dns.kind.js.map +1 -0
  157. package/dist/kinds/drift.kind.d.ts +115 -0
  158. package/dist/kinds/drift.kind.d.ts.map +1 -0
  159. package/dist/kinds/drift.kind.js +60 -0
  160. package/dist/kinds/drift.kind.js.map +1 -0
  161. package/dist/kinds/edge-tls.kind.d.ts +194 -0
  162. package/dist/kinds/edge-tls.kind.d.ts.map +1 -0
  163. package/dist/kinds/edge-tls.kind.js +58 -0
  164. package/dist/kinds/edge-tls.kind.js.map +1 -0
  165. package/dist/kinds/firewall.kind.d.ts +92 -0
  166. package/dist/kinds/firewall.kind.d.ts.map +1 -0
  167. package/dist/kinds/firewall.kind.js +59 -0
  168. package/dist/kinds/firewall.kind.js.map +1 -0
  169. package/dist/kinds/git-hosting.kind.d.ts +36 -38
  170. package/dist/kinds/git-hosting.kind.d.ts.map +1 -1
  171. package/dist/kinds/git-hosting.kind.js +21 -32
  172. package/dist/kinds/git-hosting.kind.js.map +1 -1
  173. package/dist/kinds/index.d.ts +40 -15
  174. package/dist/kinds/index.d.ts.map +1 -1
  175. package/dist/kinds/index.js +39 -14
  176. package/dist/kinds/index.js.map +1 -1
  177. package/dist/kinds/inventory.kind.d.ts +326 -0
  178. package/dist/kinds/inventory.kind.d.ts.map +1 -0
  179. package/dist/kinds/inventory.kind.js +188 -0
  180. package/dist/kinds/inventory.kind.js.map +1 -0
  181. package/dist/kinds/load-balancer.kind.d.ts +135 -0
  182. package/dist/kinds/load-balancer.kind.d.ts.map +1 -0
  183. package/dist/kinds/load-balancer.kind.js +71 -0
  184. package/dist/kinds/load-balancer.kind.js.map +1 -0
  185. package/dist/kinds/logs.kind.d.ts +74 -3
  186. package/dist/kinds/logs.kind.d.ts.map +1 -1
  187. package/dist/kinds/logs.kind.js +26 -17
  188. package/dist/kinds/logs.kind.js.map +1 -1
  189. package/dist/kinds/nfs.kind.d.ts +67 -0
  190. package/dist/kinds/nfs.kind.d.ts.map +1 -0
  191. package/dist/kinds/nfs.kind.js +45 -0
  192. package/dist/kinds/nfs.kind.js.map +1 -0
  193. package/dist/kinds/node-pool.kind.d.ts +134 -0
  194. package/dist/kinds/node-pool.kind.d.ts.map +1 -0
  195. package/dist/kinds/node-pool.kind.js +88 -0
  196. package/dist/kinds/node-pool.kind.js.map +1 -0
  197. package/dist/kinds/object-storage.kind.d.ts +50 -24
  198. package/dist/kinds/object-storage.kind.d.ts.map +1 -1
  199. package/dist/kinds/object-storage.kind.js +40 -23
  200. package/dist/kinds/object-storage.kind.js.map +1 -1
  201. package/dist/kinds/observability.kind.d.ts +104 -6
  202. package/dist/kinds/observability.kind.d.ts.map +1 -1
  203. package/dist/kinds/observability.kind.js +67 -9
  204. package/dist/kinds/observability.kind.js.map +1 -1
  205. package/dist/kinds/package-registry.kind.d.ts +25 -29
  206. package/dist/kinds/package-registry.kind.d.ts.map +1 -1
  207. package/dist/kinds/package-registry.kind.js +12 -25
  208. package/dist/kinds/package-registry.kind.js.map +1 -1
  209. package/dist/kinds/queue.kind.d.ts +67 -63
  210. package/dist/kinds/queue.kind.d.ts.map +1 -1
  211. package/dist/kinds/queue.kind.js +55 -33
  212. package/dist/kinds/queue.kind.js.map +1 -1
  213. package/dist/kinds/read-descriptor.d.ts +15 -0
  214. package/dist/kinds/read-descriptor.d.ts.map +1 -0
  215. package/dist/kinds/read-descriptor.js +11 -0
  216. package/dist/kinds/read-descriptor.js.map +1 -0
  217. package/dist/kinds/rum.kind.d.ts +36 -6
  218. package/dist/kinds/rum.kind.d.ts.map +1 -1
  219. package/dist/kinds/rum.kind.js +6 -7
  220. package/dist/kinds/rum.kind.js.map +1 -1
  221. package/dist/kinds/sandbox.kind.d.ts +136 -36
  222. package/dist/kinds/sandbox.kind.d.ts.map +1 -1
  223. package/dist/kinds/sandbox.kind.js +80 -34
  224. package/dist/kinds/sandbox.kind.js.map +1 -1
  225. package/dist/kinds/select-compute-source.d.ts +72 -0
  226. package/dist/kinds/select-compute-source.d.ts.map +1 -0
  227. package/dist/kinds/select-compute-source.js +170 -0
  228. package/dist/kinds/select-compute-source.js.map +1 -0
  229. package/dist/kinds/service-release.kind.d.ts +771 -0
  230. package/dist/kinds/service-release.kind.d.ts.map +1 -0
  231. package/dist/kinds/service-release.kind.js +676 -0
  232. package/dist/kinds/service-release.kind.js.map +1 -0
  233. package/dist/kinds/spend-guard.kind.d.ts +40 -0
  234. package/dist/kinds/spend-guard.kind.d.ts.map +1 -0
  235. package/dist/kinds/spend-guard.kind.js +133 -0
  236. package/dist/kinds/spend-guard.kind.js.map +1 -0
  237. package/dist/kinds/utilization.kind.d.ts +88 -0
  238. package/dist/kinds/utilization.kind.d.ts.map +1 -0
  239. package/dist/kinds/utilization.kind.js +62 -0
  240. package/dist/kinds/utilization.kind.js.map +1 -0
  241. package/dist/kinds/volume.kind.d.ts +54 -0
  242. package/dist/kinds/volume.kind.d.ts.map +1 -0
  243. package/dist/kinds/volume.kind.js +39 -0
  244. package/dist/kinds/volume.kind.js.map +1 -0
  245. package/dist/kinds/vpc.kind.d.ts +61 -0
  246. package/dist/kinds/vpc.kind.d.ts.map +1 -0
  247. package/dist/kinds/vpc.kind.js +51 -0
  248. package/dist/kinds/vpc.kind.js.map +1 -0
  249. package/dist/kinds/web-app.kind.d.ts +115 -45
  250. package/dist/kinds/web-app.kind.d.ts.map +1 -1
  251. package/dist/kinds/web-app.kind.js +69 -42
  252. package/dist/kinds/web-app.kind.js.map +1 -1
  253. package/dist/kinds/worker.kind.d.ts +291 -188
  254. package/dist/kinds/worker.kind.d.ts.map +1 -1
  255. package/dist/kinds/worker.kind.js +45 -123
  256. package/dist/kinds/worker.kind.js.map +1 -1
  257. package/dist/schemas/database-migration.d.ts +173 -0
  258. package/dist/schemas/database-migration.d.ts.map +1 -0
  259. package/dist/schemas/database-migration.js +88 -0
  260. package/dist/schemas/database-migration.js.map +1 -0
  261. package/dist/schemas/deployment-environment.d.ts +11 -0
  262. package/dist/schemas/deployment-environment.d.ts.map +1 -0
  263. package/dist/schemas/deployment-environment.js +9 -0
  264. package/dist/schemas/deployment-environment.js.map +1 -0
  265. package/dist/schemas/deployment-provider.d.ts +336 -0
  266. package/dist/schemas/deployment-provider.d.ts.map +1 -0
  267. package/dist/schemas/deployment-provider.js +198 -0
  268. package/dist/schemas/deployment-provider.js.map +1 -0
  269. package/dist/schemas/log-stream.d.ts +27 -0
  270. package/dist/schemas/log-stream.d.ts.map +1 -0
  271. package/dist/schemas/log-stream.js +31 -0
  272. package/dist/schemas/log-stream.js.map +1 -0
  273. package/dist/schemas/spend-guard.d.ts +155 -0
  274. package/dist/schemas/spend-guard.d.ts.map +1 -0
  275. package/dist/schemas/spend-guard.js +61 -0
  276. package/dist/schemas/spend-guard.js.map +1 -0
  277. package/dist/schemas.d.ts +190 -20
  278. package/dist/schemas.d.ts.map +1 -1
  279. package/dist/schemas.js +137 -31
  280. package/dist/schemas.js.map +1 -1
  281. package/dist/service.d.ts +87 -0
  282. package/dist/service.d.ts.map +1 -0
  283. package/dist/service.js +199 -0
  284. package/dist/service.js.map +1 -0
  285. package/dist/settle-work.d.ts +20 -0
  286. package/dist/settle-work.d.ts.map +1 -0
  287. package/dist/settle-work.js +22 -0
  288. package/dist/settle-work.js.map +1 -0
  289. package/dist/web-app-projection.d.ts +132 -0
  290. package/dist/web-app-projection.d.ts.map +1 -0
  291. package/dist/web-app-projection.js +93 -0
  292. package/dist/web-app-projection.js.map +1 -0
  293. package/package.json +87 -36
  294. package/src/bootstrap/index.ts +0 -15
  295. package/src/bootstrap/seed.descriptor.ts +0 -24
  296. package/src/bootstrap/seed.impl-shape.ts +0 -5
  297. package/src/bootstrap/seed.kind.ts +0 -26
  298. package/src/bootstrap/seed.runner.ts +0 -87
  299. package/src/credentials/resolve.ts +0 -205
  300. package/src/deployment.ts +0 -57
  301. package/src/index.ts +0 -149
  302. package/src/infra.plugin.ts +0 -54
  303. package/src/kinds/alerts.kind.ts +0 -164
  304. package/src/kinds/artifact.kind.ts +0 -96
  305. package/src/kinds/cache.kind.ts +0 -104
  306. package/src/kinds/database.kind.ts +0 -120
  307. package/src/kinds/discovery.ts +0 -26
  308. package/src/kinds/git-hosting.kind.ts +0 -100
  309. package/src/kinds/index.ts +0 -139
  310. package/src/kinds/logs.kind.ts +0 -104
  311. package/src/kinds/object-storage.kind.ts +0 -101
  312. package/src/kinds/observability.kind.ts +0 -178
  313. package/src/kinds/package-registry.kind.ts +0 -95
  314. package/src/kinds/queue.kind.ts +0 -102
  315. package/src/kinds/rum.kind.ts +0 -135
  316. package/src/kinds/sandbox.kind.ts +0 -115
  317. package/src/kinds/web-app.kind.ts +0 -103
  318. package/src/kinds/worker.kind.ts +0 -203
  319. package/src/schemas.ts +0 -127
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-job.kind.js","sourceRoot":"","sources":["../../src/kinds/build-job.kind.ts"],"names":[],"mappings":"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"}
@@ -3,71 +3,32 @@
3
3
  *
4
4
  * Describes a cache service.
5
5
  *
6
- * Schema shape: strict common base + `config` discriminated union.
6
+ * Schema shape: strict common base + an open, adapter-keyed `config`.
7
7
  *
8
8
  * - The base defines fields universal across adapters: id/kind/name +
9
9
  * the cache shape (engine, maxMemory, eviction, namespace).
10
10
  * - Adapter-specific fields (region, version, numNodes, size, …)
11
- * live under `config`. Each adapter package defines its own concrete schema.
11
+ * live under `config`, keyed by a non-empty `adapter` discriminator.
12
+ * Each adapter package defines and parses its own concrete schema
13
+ * (DigitalOcean managed Redis/Valkey and DOKS Redis configs live in
14
+ * `@vibesdotdev/integrations-digitalocean`; Cloudflare KV's in
15
+ * `@vibesdotdev/integrations-cloudflare`); this kind names no provider,
16
+ * so a config for any adapter — including one contributed by a user
17
+ * plugin — parses here, and the adapter validates its own grammar.
12
18
  */
13
19
  import * as z from 'zod/v4';
14
- import type { RuntimeKindDescriptorRecord } from '@vibesdotdev/runtime/schemas/kind';
15
- import type { RuntimeDescriptor } from '@vibesdotdev/runtime/schemas/descriptor';
16
- export declare const DOManagedRedisConfigSchema: z.ZodObject<{
17
- maxMemory: z.ZodOptional<z.ZodString>;
18
- eviction: z.ZodOptional<z.ZodEnum<{
19
- lru: "lru";
20
- lfu: "lfu";
21
- ttl: "ttl";
22
- }>>;
23
- region: z.ZodDefault<z.ZodString>;
24
- version: z.ZodDefault<z.ZodString>;
25
- numNodes: z.ZodDefault<z.ZodNumber>;
26
- size: z.ZodOptional<z.ZodString>;
27
- }, z.core.$strip>;
28
- export declare const CloudflareKVCacheConfigSchema: z.ZodObject<{
29
- namespace: z.ZodString;
30
- }, z.core.$strip>;
31
- export declare const DOKSRedisCacheConfigSchema: z.ZodObject<{
32
- namespace: z.ZodDefault<z.ZodString>;
33
- image: z.ZodOptional<z.ZodString>;
34
- version: z.ZodDefault<z.ZodString>;
35
- maxMemory: z.ZodOptional<z.ZodString>;
36
- eviction: z.ZodOptional<z.ZodEnum<{
37
- lru: "lru";
38
- lfu: "lfu";
39
- ttl: "ttl";
40
- }>>;
41
- storageSize: z.ZodDefault<z.ZodString>;
42
- }, z.core.$strip>;
43
- export declare const CacheConfigSchema: z.ZodUnion<readonly [z.ZodObject<{
44
- maxMemory: z.ZodOptional<z.ZodString>;
45
- eviction: z.ZodOptional<z.ZodEnum<{
46
- lru: "lru";
47
- lfu: "lfu";
48
- ttl: "ttl";
49
- }>>;
50
- region: z.ZodDefault<z.ZodString>;
51
- version: z.ZodDefault<z.ZodString>;
52
- numNodes: z.ZodDefault<z.ZodNumber>;
53
- size: z.ZodOptional<z.ZodString>;
54
- adapter: z.ZodLiteral<"do-managed-redis">;
55
- }, z.core.$strip>, z.ZodObject<{
56
- namespace: z.ZodString;
57
- adapter: z.ZodLiteral<"cloudflare-kv">;
58
- }, z.core.$strip>, z.ZodObject<{
59
- namespace: z.ZodDefault<z.ZodString>;
60
- image: z.ZodOptional<z.ZodString>;
61
- version: z.ZodDefault<z.ZodString>;
62
- maxMemory: z.ZodOptional<z.ZodString>;
63
- eviction: z.ZodOptional<z.ZodEnum<{
64
- lru: "lru";
65
- lfu: "lfu";
66
- ttl: "ttl";
67
- }>>;
68
- storageSize: z.ZodDefault<z.ZodString>;
69
- adapter: z.ZodLiteral<"doks-redis">;
70
- }, z.core.$strip>]>;
20
+ import type { RuntimeDescriptor } from '@vibesdotdev/kernel/schemas/descriptor';
21
+ import type { KindContext } from '@vibesdotdev/kernel/schemas/kind';
22
+ /**
23
+ * Adapter-specific configuration: the adapter id plus its own fields. Each
24
+ * adapter package defines and parses its own config schema; this kind names
25
+ * no provider, so a config for any adapter — including one contributed by a
26
+ * user plugin — parses here, and the adapter validates its own grammar.
27
+ */
28
+ export declare const CacheConfigSchema: z.ZodObject<{
29
+ adapter: z.ZodString;
30
+ }, z.core.$loose>;
31
+ export type CacheConfig = z.infer<typeof CacheConfigSchema>;
71
32
  export declare const CacheDescriptorSchema: z.ZodObject<{
72
33
  id: z.ZodString;
73
34
  name: z.ZodOptional<z.ZodString>;
@@ -76,53 +37,39 @@ export declare const CacheDescriptorSchema: z.ZodObject<{
76
37
  hardware: z.ZodOptional<z.ZodArray<z.ZodString>>;
77
38
  enabled: z.ZodOptional<z.ZodBoolean>;
78
39
  priority: z.ZodOptional<z.ZodNumber>;
40
+ capabilityId: z.ZodOptional<z.ZodString>;
79
41
  requiredContext: z.ZodOptional<z.ZodArray<z.ZodString>>;
80
42
  optionalContext: z.ZodOptional<z.ZodArray<z.ZodString>>;
43
+ retention: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
44
+ maxAgeDays: z.ZodOptional<z.ZodNumber>;
45
+ maxEntries: z.ZodOptional<z.ZodNumber>;
46
+ maxBytes: z.ZodOptional<z.ZodNumber>;
47
+ cascadeFrom: z.ZodOptional<z.ZodString>;
48
+ ageField: z.ZodOptional<z.ZodString>;
49
+ reason: z.ZodString;
50
+ enforcedBy: z.ZodOptional<z.ZodString>;
51
+ }, z.core.$strip>]>>;
81
52
  kind: z.ZodLiteral<"infra/cache">;
82
53
  engine: z.ZodOptional<z.ZodString>;
83
54
  maxMemory: z.ZodOptional<z.ZodString>;
84
55
  eviction: z.ZodOptional<z.ZodEnum<{
56
+ ttl: "ttl";
85
57
  lru: "lru";
86
58
  lfu: "lfu";
87
- ttl: "ttl";
88
59
  }>>;
89
60
  namespace: z.ZodOptional<z.ZodString>;
90
- config: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
91
- maxMemory: z.ZodOptional<z.ZodString>;
92
- eviction: z.ZodOptional<z.ZodEnum<{
93
- lru: "lru";
94
- lfu: "lfu";
95
- ttl: "ttl";
96
- }>>;
97
- region: z.ZodDefault<z.ZodString>;
98
- version: z.ZodDefault<z.ZodString>;
99
- numNodes: z.ZodDefault<z.ZodNumber>;
100
- size: z.ZodOptional<z.ZodString>;
101
- adapter: z.ZodLiteral<"do-managed-redis">;
102
- }, z.core.$strip>, z.ZodObject<{
103
- namespace: z.ZodString;
104
- adapter: z.ZodLiteral<"cloudflare-kv">;
105
- }, z.core.$strip>, z.ZodObject<{
106
- namespace: z.ZodDefault<z.ZodString>;
107
- image: z.ZodOptional<z.ZodString>;
108
- version: z.ZodDefault<z.ZodString>;
109
- maxMemory: z.ZodOptional<z.ZodString>;
110
- eviction: z.ZodOptional<z.ZodEnum<{
111
- lru: "lru";
112
- lfu: "lfu";
113
- ttl: "ttl";
114
- }>>;
115
- storageSize: z.ZodDefault<z.ZodString>;
116
- adapter: z.ZodLiteral<"doks-redis">;
117
- }, z.core.$strip>]>>;
61
+ config: z.ZodOptional<z.ZodObject<{
62
+ adapter: z.ZodString;
63
+ }, z.core.$loose>>;
118
64
  }, z.core.$strip>;
119
65
  export type CacheDescriptor = z.infer<typeof CacheDescriptorSchema>;
120
66
  declare class DefaultCacheImplementation {
121
67
  readonly descriptor: RuntimeDescriptor;
122
- readonly context: unknown;
123
- constructor(descriptor: RuntimeDescriptor, context: unknown);
124
- get config(): CacheDescriptor;
68
+ readonly context: KindContext;
69
+ /** The descriptor as this kind's schema reads it. */
70
+ readonly config: CacheDescriptor;
71
+ constructor(descriptor: RuntimeDescriptor, context: KindContext);
125
72
  }
126
- export declare const cacheKind: RuntimeKindDescriptorRecord<DefaultCacheImplementation>;
73
+ export declare const cacheKind: import("@vibesdotdev/kernel").RuntimeKindDescriptorRecord<DefaultCacheImplementation>;
127
74
  export {};
128
75
  //# sourceMappingURL=cache.kind.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.kind.d.ts","sourceRoot":"","sources":["../../src/kinds/cache.kind.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAErF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAmBjF,eAAO,MAAM,0BAA0B;;;;;;;;;;;iBAarC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;iBAGxC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;iBAarC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAI5B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,cAAM,0BAA0B;aAEd,UAAU,EAAE,iBAAiB;aAC7B,OAAO,EAAE,OAAO;gBADhB,UAAU,EAAE,iBAAiB,EAC7B,OAAO,EAAE,OAAO;IAGjC,IAAI,MAAM,IAAI,eAAe,CAE5B;CACD;AAED,eAAO,MAAM,SAAS,yDAMpB,CAAC"}
1
+ {"version":3,"file":"cache.kind.d.ts","sourceRoot":"","sources":["../../src/kinds/cache.kind.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAoBpE;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB;;iBAE5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAGhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,cAAM,0BAA0B;aAId,UAAU,EAAE,iBAAiB;aAC7B,OAAO,EAAE,WAAW;IAJrC,qDAAqD;IACrD,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;gBAEhB,UAAU,EAAE,iBAAiB,EAC7B,OAAO,EAAE,WAAW;CAKrC;AAED,eAAO,MAAM,SAAS,uFAKpB,CAAC"}
@@ -3,20 +3,27 @@
3
3
  *
4
4
  * Describes a cache service.
5
5
  *
6
- * Schema shape: strict common base + `config` discriminated union.
6
+ * Schema shape: strict common base + an open, adapter-keyed `config`.
7
7
  *
8
8
  * - The base defines fields universal across adapters: id/kind/name +
9
9
  * the cache shape (engine, maxMemory, eviction, namespace).
10
10
  * - Adapter-specific fields (region, version, numNodes, size, …)
11
- * live under `config`. Each adapter package defines its own concrete schema.
11
+ * live under `config`, keyed by a non-empty `adapter` discriminator.
12
+ * Each adapter package defines and parses its own concrete schema
13
+ * (DigitalOcean managed Redis/Valkey and DOKS Redis configs live in
14
+ * `@vibesdotdev/integrations-digitalocean`; Cloudflare KV's in
15
+ * `@vibesdotdev/integrations-cloudflare`); this kind names no provider,
16
+ * so a config for any adapter — including one contributed by a user
17
+ * plugin — parses here, and the adapter validates its own grammar.
12
18
  */
13
19
  import * as z from 'zod/v4';
14
- import { createRuntimeKind } from '@vibesdotdev/runtime/factory/kind';
15
- import { RuntimeDescriptorSchema } from '@vibesdotdev/runtime/schemas/descriptor';
16
- import { INFRA_DISCOVERY_PATTERN, extractStem } from "./discovery.js";
20
+ import { createRuntimeKind } from '@vibesdotdev/kernel/factory/kind';
21
+ import { RuntimeDescriptorSchema } from '@vibesdotdev/kernel/schemas/descriptor';
22
+ import { readKindDescriptor } from "./read-descriptor.js";
23
+ import { INFRA_DISCOVERY_PATTERNS } from "./discovery.js";
17
24
  const CacheBaseSchema = RuntimeDescriptorSchema.extend({
18
25
  kind: z.literal('infra/cache'),
19
- /** Cache engine (e.g., 'cloudflare-kv', 'redis'). */
26
+ /** Cache engine (e.g., 'redis'). */
20
27
  engine: z.string().min(1).optional(),
21
28
  /** Maximum memory hint. */
22
29
  maxMemory: z.string().optional(),
@@ -25,66 +32,34 @@ const CacheBaseSchema = RuntimeDescriptorSchema.extend({
25
32
  /** Logical namespace within the cache. */
26
33
  namespace: z.string().optional()
27
34
  });
28
- export const DOManagedRedisConfigSchema = z.object({
29
- /** Max memory allocation (e.g., '256mb', '1gb'). */
30
- maxMemory: z.string().min(1).optional(),
31
- /** Eviction policy: lru, lfu, or ttl. */
32
- eviction: z.enum(['lru', 'lfu', 'ttl']).optional(),
33
- /** DO region (default: nyc1). */
34
- region: z.string().min(1).default('nyc1'),
35
- /** Redis version (default: 7). */
36
- version: z.string().min(1).default('7'),
37
- /** Number of nodes (default: 1). */
38
- numNodes: z.number().int().positive().default(1),
39
- /** Database size tier (optional, derived from maxMemory if not set). */
40
- size: z.string().min(1).optional()
41
- });
42
- export const CloudflareKVCacheConfigSchema = z.object({
43
- /** Logical namespace within the KV store. */
44
- namespace: z.string().min(1)
45
- });
46
- export const DOKSRedisCacheConfigSchema = z.object({
47
- /** Kubernetes namespace (default: vibes). */
48
- namespace: z.string().min(1).default('vibes'),
49
- /** Container image (default: redis:{version}). */
50
- image: z.string().min(1).optional(),
51
- /** Redis version (default: 7). */
52
- version: z.string().min(1).default('7'),
53
- /** Max memory allocation (e.g., '256mb'). */
54
- maxMemory: z.string().optional(),
55
- /** Eviction policy: lru, lfu, or ttl. */
56
- eviction: z.enum(['lru', 'lfu', 'ttl']).optional(),
57
- /** Storage size (default: 1Gi). */
58
- storageSize: z.string().min(1).default('1Gi')
35
+ /**
36
+ * Adapter-specific configuration: the adapter id plus its own fields. Each
37
+ * adapter package defines and parses its own config schema; this kind names
38
+ * no provider, so a config for any adapter — including one contributed by a
39
+ * user plugin — parses here, and the adapter validates its own grammar.
40
+ */
41
+ export const CacheConfigSchema = z.looseObject({
42
+ adapter: z.string().min(1)
59
43
  });
60
- export const CacheConfigSchema = z.union([
61
- DOManagedRedisConfigSchema.extend({ adapter: z.literal('do-managed-redis') }),
62
- CloudflareKVCacheConfigSchema.extend({ adapter: z.literal('cloudflare-kv') }),
63
- DOKSRedisCacheConfigSchema.extend({ adapter: z.literal('doks-redis') })
64
- ]);
65
44
  export const CacheDescriptorSchema = CacheBaseSchema.extend({
66
- /**
67
- * Adapter-specific configuration. Discriminated union — each adapter
68
- * package defines its own config schema under its discriminator key.
69
- */
45
+ /** Adapter-specific configuration, parsed by the adapter that owns it. */
70
46
  config: CacheConfigSchema.optional()
71
47
  });
72
48
  class DefaultCacheImplementation {
73
49
  descriptor;
74
50
  context;
51
+ /** The descriptor as this kind's schema reads it. */
52
+ config;
75
53
  constructor(descriptor, context) {
76
54
  this.descriptor = descriptor;
77
55
  this.context = context;
78
- }
79
- get config() {
80
- return this.descriptor;
56
+ this.config = readKindDescriptor(CacheDescriptorSchema, descriptor);
81
57
  }
82
58
  }
83
59
  export const cacheKind = createRuntimeKind({
84
60
  id: 'infra/cache',
85
61
  descriptorSchema: CacheDescriptorSchema,
86
62
  defaultImplementation: DefaultCacheImplementation,
87
- discoveryPattern: INFRA_DISCOVERY_PATTERN,
88
- extractStem
63
+ discoveryPatterns: INFRA_DISCOVERY_PATTERNS
89
64
  });
90
65
  //# sourceMappingURL=cache.kind.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.kind.js","sourceRoot":"","sources":["../../src/kinds/cache.kind.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.kind.js","sourceRoot":"","sources":["../../src/kinds/cache.kind.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAGjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC;IACtD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IAE9B,oCAAoC;IACpC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAEpC,2BAA2B;IAC3B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEhC,uBAAuB;IACvB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE;IAElD,0CAA0C;IAC1C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC;IAC9C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,qBAAqB,GAAG,eAAe,CAAC,MAAM,CAAC;IAC3D,0EAA0E;IAC1E,MAAM,EAAE,iBAAiB,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC;AAIH,MAAM,0BAA0B;IAId;IACA;IAJjB,qDAAqD;IAC5C,MAAM,CAAkB;IACjC,YACiB,UAA6B,EAC7B,OAAoB;QADpB,eAAU,GAAV,UAAU,CAAmB;QAC7B,YAAO,GAAP,OAAO,CAAa;QAEpC,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAAC;IACrE,CAAC;CAED;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,iBAAiB,CAA8C;IACvF,EAAE,EAAE,aAAa;IACjB,gBAAgB,EAAE,qBAAqB;IACvC,qBAAqB,EAAE,0BAA0B;IACjD,iBAAiB,EAAE,wBAAwB;CAC3C,CAAC,CAAC"}
@@ -0,0 +1,154 @@
1
+ /**
2
+ * Kind: infra/cluster
3
+ *
4
+ * Provider-neutral Kubernetes cluster descriptor. The base captures the
5
+ * cross-provider shape (region, version, HA, maintenance, observability,
6
+ * SSO, control-plane firewall, gateway API, routing agent). Adapter-specific
7
+ * fields live under `config`.
8
+ */
9
+ import * as z from 'zod/v4';
10
+ import type { RuntimeDescriptor } from '@vibesdotdev/kernel/schemas/descriptor';
11
+ import type { KindContext } from '@vibesdotdev/kernel/schemas/kind';
12
+ /**
13
+ * Inline credential reference schema. Mirrors the public Integrations core
14
+ * credential contract without importing a provider implementation.
15
+ * `CredentialReferenceSchema` to avoid a cross-package dependency from
16
+ * `infra-core` to `connector-base`. Connector packages can still resolve
17
+ * these references through the canonical resolver.
18
+ */
19
+ declare const CredentialReferenceSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
20
+ source: z.ZodLiteral<"secret">;
21
+ key: z.ZodString;
22
+ scope: z.ZodOptional<z.ZodString>;
23
+ store: z.ZodOptional<z.ZodString>;
24
+ }, z.core.$strip>, z.ZodObject<{
25
+ source: z.ZodLiteral<"env">;
26
+ key: z.ZodString;
27
+ }, z.core.$strip>], "source">;
28
+ export type ClusterCredentialReference = z.infer<typeof CredentialReferenceSchema>;
29
+ export declare const ClusterMaintenancePolicySchema: z.ZodObject<{
30
+ day: z.ZodString;
31
+ startTime: z.ZodString;
32
+ }, z.core.$strip>;
33
+ export type ClusterMaintenancePolicy = z.infer<typeof ClusterMaintenancePolicySchema>;
34
+ export declare const ClusterControlPlaneFirewallSchema: z.ZodObject<{
35
+ enabled: z.ZodBoolean;
36
+ allowedAddresses: z.ZodDefault<z.ZodArray<z.ZodString>>;
37
+ }, z.core.$strip>;
38
+ export type ClusterControlPlaneFirewall = z.infer<typeof ClusterControlPlaneFirewallSchema>;
39
+ export declare const ClusterSsoSchema: z.ZodObject<{
40
+ enabled: z.ZodBoolean;
41
+ issuerUrl: z.ZodString;
42
+ clientIdSecretRef: z.ZodDiscriminatedUnion<[z.ZodObject<{
43
+ source: z.ZodLiteral<"secret">;
44
+ key: z.ZodString;
45
+ scope: z.ZodOptional<z.ZodString>;
46
+ store: z.ZodOptional<z.ZodString>;
47
+ }, z.core.$strip>, z.ZodObject<{
48
+ source: z.ZodLiteral<"env">;
49
+ key: z.ZodString;
50
+ }, z.core.$strip>], "source">;
51
+ }, z.core.$strip>;
52
+ export type ClusterSso = z.infer<typeof ClusterSsoSchema>;
53
+ export declare const ClusterObservabilitySchema: z.ZodObject<{
54
+ metrics: z.ZodDefault<z.ZodBoolean>;
55
+ logs: z.ZodDefault<z.ZodBoolean>;
56
+ hubble: z.ZodOptional<z.ZodBoolean>;
57
+ }, z.core.$strip>;
58
+ export type ClusterObservability = z.infer<typeof ClusterObservabilitySchema>;
59
+ export declare const ClusterVpcRefSchema: z.ZodObject<{
60
+ uuid: z.ZodOptional<z.ZodString>;
61
+ name: z.ZodOptional<z.ZodString>;
62
+ ipRange: z.ZodOptional<z.ZodString>;
63
+ }, z.core.$strip>;
64
+ export type ClusterVpcRef = z.infer<typeof ClusterVpcRefSchema>;
65
+ /**
66
+ * Adapter-specific configuration: the adapter id plus its own fields. Each
67
+ * adapter package defines and parses its own config schema (DigitalOcean's
68
+ * Kubernetes cluster config lives in
69
+ * `@vibesdotdev/integrations-digitalocean`); this kind names no provider,
70
+ * so a config for any adapter — including one contributed by a user
71
+ * plugin — parses here, and the adapter validates its own grammar.
72
+ */
73
+ export declare const ClusterConfigSchema: z.ZodObject<{
74
+ adapter: z.ZodString;
75
+ }, z.core.$loose>;
76
+ export type ClusterConfig = z.infer<typeof ClusterConfigSchema>;
77
+ export declare const ClusterDescriptorSchema: z.ZodObject<{
78
+ id: z.ZodString;
79
+ name: z.ZodOptional<z.ZodString>;
80
+ description: z.ZodOptional<z.ZodString>;
81
+ hardware: z.ZodOptional<z.ZodArray<z.ZodString>>;
82
+ enabled: z.ZodOptional<z.ZodBoolean>;
83
+ priority: z.ZodOptional<z.ZodNumber>;
84
+ capabilityId: z.ZodOptional<z.ZodString>;
85
+ requiredContext: z.ZodOptional<z.ZodArray<z.ZodString>>;
86
+ optionalContext: z.ZodOptional<z.ZodArray<z.ZodString>>;
87
+ retention: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
88
+ maxAgeDays: z.ZodOptional<z.ZodNumber>;
89
+ maxEntries: z.ZodOptional<z.ZodNumber>;
90
+ maxBytes: z.ZodOptional<z.ZodNumber>;
91
+ cascadeFrom: z.ZodOptional<z.ZodString>;
92
+ ageField: z.ZodOptional<z.ZodString>;
93
+ reason: z.ZodString;
94
+ enforcedBy: z.ZodOptional<z.ZodString>;
95
+ }, z.core.$strip>]>>;
96
+ kind: z.ZodLiteral<"infra/cluster">;
97
+ version: z.ZodOptional<z.ZodString>;
98
+ region: z.ZodOptional<z.ZodString>;
99
+ ha: z.ZodOptional<z.ZodBoolean>;
100
+ autoUpgrade: z.ZodOptional<z.ZodBoolean>;
101
+ surgeUpgrade: z.ZodOptional<z.ZodBoolean>;
102
+ maintenancePolicy: z.ZodOptional<z.ZodObject<{
103
+ day: z.ZodString;
104
+ startTime: z.ZodString;
105
+ }, z.core.$strip>>;
106
+ controlPlaneFirewall: z.ZodOptional<z.ZodObject<{
107
+ enabled: z.ZodBoolean;
108
+ allowedAddresses: z.ZodDefault<z.ZodArray<z.ZodString>>;
109
+ }, z.core.$strip>>;
110
+ sso: z.ZodOptional<z.ZodObject<{
111
+ enabled: z.ZodBoolean;
112
+ issuerUrl: z.ZodString;
113
+ clientIdSecretRef: z.ZodDiscriminatedUnion<[z.ZodObject<{
114
+ source: z.ZodLiteral<"secret">;
115
+ key: z.ZodString;
116
+ scope: z.ZodOptional<z.ZodString>;
117
+ store: z.ZodOptional<z.ZodString>;
118
+ }, z.core.$strip>, z.ZodObject<{
119
+ source: z.ZodLiteral<"env">;
120
+ key: z.ZodString;
121
+ }, z.core.$strip>], "source">;
122
+ }, z.core.$strip>>;
123
+ vpc: z.ZodOptional<z.ZodObject<{
124
+ uuid: z.ZodOptional<z.ZodString>;
125
+ name: z.ZodOptional<z.ZodString>;
126
+ ipRange: z.ZodOptional<z.ZodString>;
127
+ }, z.core.$strip>>;
128
+ gatewayApi: z.ZodOptional<z.ZodObject<{
129
+ enabled: z.ZodBoolean;
130
+ }, z.core.$strip>>;
131
+ routingAgent: z.ZodOptional<z.ZodObject<{
132
+ enabled: z.ZodBoolean;
133
+ }, z.core.$strip>>;
134
+ observability: z.ZodOptional<z.ZodObject<{
135
+ metrics: z.ZodDefault<z.ZodBoolean>;
136
+ logs: z.ZodDefault<z.ZodBoolean>;
137
+ hubble: z.ZodOptional<z.ZodBoolean>;
138
+ }, z.core.$strip>>;
139
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
140
+ config: z.ZodOptional<z.ZodObject<{
141
+ adapter: z.ZodString;
142
+ }, z.core.$loose>>;
143
+ }, z.core.$strip>;
144
+ export type ClusterDescriptor = z.infer<typeof ClusterDescriptorSchema>;
145
+ declare class DefaultClusterImplementation {
146
+ readonly descriptor: RuntimeDescriptor;
147
+ readonly context: KindContext;
148
+ /** The descriptor as this kind's schema reads it. */
149
+ readonly config: ClusterDescriptor;
150
+ constructor(descriptor: RuntimeDescriptor, context: KindContext);
151
+ }
152
+ export declare const clusterKind: import("@vibesdotdev/kernel").RuntimeKindDescriptorRecord<DefaultClusterImplementation>;
153
+ export {};
154
+ //# sourceMappingURL=cluster.kind.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cluster.kind.d.ts","sourceRoot":"","sources":["../../src/kinds/cluster.kind.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAIpE;;;;;;GAMG;AACH,QAAA,MAAM,yBAAyB;;;;;;;;6BAG7B,CAAC;AACH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAEnF,eAAO,MAAM,8BAA8B;;;iBAKzC,CAAC;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,eAAO,MAAM,iCAAiC;;;iBAG5C,CAAC;AACH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAE5F,eAAO,MAAM,gBAAgB;;;;;;;;;;;;iBAI3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,0BAA0B;;;;iBAIrC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAqBhE;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB;;iBAE9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAElC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,cAAM,4BAA4B;aAIhB,UAAU,EAAE,iBAAiB;aAC7B,OAAO,EAAE,WAAW;IAJrC,qDAAqD;IACrD,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;gBAElB,UAAU,EAAE,iBAAiB,EAC7B,OAAO,EAAE,WAAW;CAKrC;AAED,eAAO,MAAM,WAAW,yFAKtB,CAAC"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Kind: infra/cluster
3
+ *
4
+ * Provider-neutral Kubernetes cluster descriptor. The base captures the
5
+ * cross-provider shape (region, version, HA, maintenance, observability,
6
+ * SSO, control-plane firewall, gateway API, routing agent). Adapter-specific
7
+ * fields live under `config`.
8
+ */
9
+ import * as z from 'zod/v4';
10
+ import { createRuntimeKind } from '@vibesdotdev/kernel/factory/kind';
11
+ import { RuntimeDescriptorSchema } from '@vibesdotdev/kernel/schemas/descriptor';
12
+ import { readKindDescriptor } from "./read-descriptor.js";
13
+ import { INFRA_DISCOVERY_PATTERNS } from "./discovery.js";
14
+ /**
15
+ * Inline credential reference schema. Mirrors the public Integrations core
16
+ * credential contract without importing a provider implementation.
17
+ * `CredentialReferenceSchema` to avoid a cross-package dependency from
18
+ * `infra-core` to `connector-base`. Connector packages can still resolve
19
+ * these references through the canonical resolver.
20
+ */
21
+ const CredentialReferenceSchema = z.discriminatedUnion('source', [
22
+ z.object({ source: z.literal('secret'), key: z.string(), scope: z.string().optional(), store: z.string().optional() }),
23
+ z.object({ source: z.literal('env'), key: z.string() })
24
+ ]);
25
+ export const ClusterMaintenancePolicySchema = z.object({
26
+ /** Day of week (any|monday|...|sunday). */
27
+ day: z.string().min(1),
28
+ /** UTC start time, HH:MM. */
29
+ startTime: z.string().regex(/^\d{2}:\d{2}$/)
30
+ });
31
+ export const ClusterControlPlaneFirewallSchema = z.object({
32
+ enabled: z.boolean(),
33
+ allowedAddresses: z.array(z.string()).default([])
34
+ });
35
+ export const ClusterSsoSchema = z.object({
36
+ enabled: z.boolean(),
37
+ issuerUrl: z.string().url(),
38
+ clientIdSecretRef: CredentialReferenceSchema
39
+ });
40
+ export const ClusterObservabilitySchema = z.object({
41
+ metrics: z.boolean().default(false),
42
+ logs: z.boolean().default(false),
43
+ hubble: z.boolean().optional()
44
+ });
45
+ export const ClusterVpcRefSchema = z.object({
46
+ uuid: z.string().optional(),
47
+ name: z.string().optional(),
48
+ ipRange: z.string().optional()
49
+ });
50
+ const ClusterBaseSchema = RuntimeDescriptorSchema.extend({
51
+ kind: z.literal('infra/cluster'),
52
+ /** Kubernetes version slug (provider-specific). */
53
+ version: z.string().min(1).optional(),
54
+ /** Region slug. */
55
+ region: z.string().min(1).optional(),
56
+ ha: z.boolean().optional(),
57
+ autoUpgrade: z.boolean().optional(),
58
+ surgeUpgrade: z.boolean().optional(),
59
+ maintenancePolicy: ClusterMaintenancePolicySchema.optional(),
60
+ controlPlaneFirewall: ClusterControlPlaneFirewallSchema.optional(),
61
+ sso: ClusterSsoSchema.optional(),
62
+ vpc: ClusterVpcRefSchema.optional(),
63
+ gatewayApi: z.object({ enabled: z.boolean() }).optional(),
64
+ routingAgent: z.object({ enabled: z.boolean() }).optional(),
65
+ observability: ClusterObservabilitySchema.optional(),
66
+ tags: z.array(z.string()).optional()
67
+ });
68
+ /**
69
+ * Adapter-specific configuration: the adapter id plus its own fields. Each
70
+ * adapter package defines and parses its own config schema (DigitalOcean's
71
+ * Kubernetes cluster config lives in
72
+ * `@vibesdotdev/integrations-digitalocean`); this kind names no provider,
73
+ * so a config for any adapter — including one contributed by a user
74
+ * plugin — parses here, and the adapter validates its own grammar.
75
+ */
76
+ export const ClusterConfigSchema = z.looseObject({
77
+ adapter: z.string().min(1)
78
+ });
79
+ export const ClusterDescriptorSchema = ClusterBaseSchema.extend({
80
+ config: ClusterConfigSchema.optional()
81
+ });
82
+ class DefaultClusterImplementation {
83
+ descriptor;
84
+ context;
85
+ /** The descriptor as this kind's schema reads it. */
86
+ config;
87
+ constructor(descriptor, context) {
88
+ this.descriptor = descriptor;
89
+ this.context = context;
90
+ this.config = readKindDescriptor(ClusterDescriptorSchema, descriptor);
91
+ }
92
+ }
93
+ export const clusterKind = createRuntimeKind({
94
+ id: 'infra/cluster',
95
+ descriptorSchema: ClusterDescriptorSchema,
96
+ defaultImplementation: DefaultClusterImplementation,
97
+ discoveryPatterns: INFRA_DISCOVERY_PATTERNS
98
+ });
99
+ //# sourceMappingURL=cluster.kind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cluster.kind.js","sourceRoot":"","sources":["../../src/kinds/cluster.kind.ts"],"names":[],"mappings":"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"}