@lucern/contracts 0.3.0-alpha.1 → 0.3.0-alpha.11

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 (303) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/api-enums.contract.d.ts +5 -3
  3. package/dist/api-enums.contract.js +14 -12
  4. package/dist/api-enums.contract.js.map +1 -1
  5. package/dist/component-boundary.contract.d.ts +14 -0
  6. package/dist/component-boundary.contract.js +174 -0
  7. package/dist/component-boundary.contract.js.map +1 -0
  8. package/dist/component-host-boundary.contract.d.ts +46 -0
  9. package/dist/component-host-boundary.contract.js +60 -0
  10. package/dist/component-host-boundary.contract.js.map +1 -0
  11. package/dist/context-pack.contract.d.ts +5 -3
  12. package/dist/context-pack.contract.js.map +1 -1
  13. package/dist/{defineTable-CBQ03FXl.d.ts → defineTable-t1wr5wgn.d.ts} +1 -1
  14. package/dist/{dsl-BgpoVOVQ.d.ts → dsl-DVPthQGY.d.ts} +2 -2
  15. package/dist/dsl.d.ts +2 -2
  16. package/dist/dsl.js +1 -4
  17. package/dist/dsl.js.map +1 -1
  18. package/dist/edge-policy-manifest-Dw5IhT1L.d.ts +133 -0
  19. package/dist/function-registry/beliefs.d.ts +54 -41
  20. package/dist/function-registry/beliefs.js +759 -38
  21. package/dist/function-registry/beliefs.js.map +1 -1
  22. package/dist/function-registry/coding.d.ts +9 -0
  23. package/dist/function-registry/coding.js +811 -39
  24. package/dist/function-registry/coding.js.map +1 -1
  25. package/dist/function-registry/context.d.ts +19 -13
  26. package/dist/function-registry/context.js +750 -42
  27. package/dist/function-registry/context.js.map +1 -1
  28. package/dist/function-registry/contracts.d.ts +6 -0
  29. package/dist/function-registry/contracts.js +715 -35
  30. package/dist/function-registry/contracts.js.map +1 -1
  31. package/dist/function-registry/coordination.d.ts +12 -0
  32. package/dist/function-registry/coordination.js +715 -35
  33. package/dist/function-registry/coordination.js.map +1 -1
  34. package/dist/function-registry/edges.d.ts +165 -0
  35. package/dist/function-registry/edges.js +923 -67
  36. package/dist/function-registry/edges.js.map +1 -1
  37. package/dist/function-registry/evidence.d.ts +44 -33
  38. package/dist/function-registry/evidence.js +769 -47
  39. package/dist/function-registry/evidence.js.map +1 -1
  40. package/dist/function-registry/graph.d.ts +149 -53
  41. package/dist/function-registry/graph.js +831 -42
  42. package/dist/function-registry/graph.js.map +1 -1
  43. package/dist/function-registry/helpers.d.ts +6 -3
  44. package/dist/function-registry/helpers.js +716 -36
  45. package/dist/function-registry/helpers.js.map +1 -1
  46. package/dist/function-registry/identity.d.ts +6 -0
  47. package/dist/function-registry/identity.js +715 -35
  48. package/dist/function-registry/identity.js.map +1 -1
  49. package/dist/function-registry/index.d.ts +5 -3
  50. package/dist/function-registry/index.js +722 -39
  51. package/dist/function-registry/index.js.map +1 -1
  52. package/dist/function-registry/judgments.d.ts +14 -9
  53. package/dist/function-registry/judgments.js +727 -38
  54. package/dist/function-registry/judgments.js.map +1 -1
  55. package/dist/function-registry/legacy.d.ts +4 -0
  56. package/dist/function-registry/legacy.js +715 -35
  57. package/dist/function-registry/legacy.js.map +1 -1
  58. package/dist/function-registry/lenses.d.ts +24 -17
  59. package/dist/function-registry/lenses.js +738 -38
  60. package/dist/function-registry/lenses.js.map +1 -1
  61. package/dist/function-registry/manifest.d.ts +6 -6
  62. package/dist/function-registry/manifest.js +18 -2
  63. package/dist/function-registry/manifest.js.map +1 -1
  64. package/dist/function-registry/nodes.d.ts +412 -0
  65. package/dist/function-registry/nodes.js +5303 -0
  66. package/dist/function-registry/nodes.js.map +1 -0
  67. package/dist/function-registry/ontologies.d.ts +59 -45
  68. package/dist/function-registry/ontologies.js +733 -41
  69. package/dist/function-registry/ontologies.js.map +1 -1
  70. package/dist/function-registry/pipeline.d.ts +19 -13
  71. package/dist/function-registry/pipeline.js +724 -38
  72. package/dist/function-registry/pipeline.js.map +1 -1
  73. package/dist/function-registry/questions.d.ts +64 -49
  74. package/dist/function-registry/questions.js +812 -43
  75. package/dist/function-registry/questions.js.map +1 -1
  76. package/dist/function-registry/tasks.d.ts +24 -17
  77. package/dist/function-registry/tasks.js +776 -44
  78. package/dist/function-registry/tasks.js.map +1 -1
  79. package/dist/function-registry/topics.d.ts +109 -21
  80. package/dist/function-registry/topics.js +797 -39
  81. package/dist/function-registry/topics.js.map +1 -1
  82. package/dist/function-registry/types.d.ts +6 -2
  83. package/dist/function-registry/worktrees.d.ts +94 -41
  84. package/dist/function-registry/worktrees.js +854 -47
  85. package/dist/function-registry/worktrees.js.map +1 -1
  86. package/dist/function-registry-input-audit.d.ts +13 -0
  87. package/dist/function-registry-input-audit.js +166 -0
  88. package/dist/function-registry-input-audit.js.map +1 -0
  89. package/dist/gateway.contract.d.ts +5 -0
  90. package/dist/gateway.contract.js.map +1 -1
  91. package/dist/generated/convexSchemas.d.ts +3 -3
  92. package/dist/generated/convexSchemas.js +38 -18
  93. package/dist/generated/convexSchemas.js.map +1 -1
  94. package/dist/generated/infisicalRuntimeEnv.d.ts +70 -0
  95. package/dist/generated/infisicalRuntimeEnv.js +26572 -0
  96. package/dist/generated/infisicalRuntimeEnv.js.map +1 -0
  97. package/dist/generated/lucernGatewayEnv.d.ts +17 -0
  98. package/dist/generated/lucernGatewayEnv.js +38 -0
  99. package/dist/generated/lucernGatewayEnv.js.map +1 -0
  100. package/dist/generated/lucernWebPublicEnv.d.ts +26 -0
  101. package/dist/generated/lucernWebPublicEnv.js +32 -0
  102. package/dist/generated/lucernWebPublicEnv.js.map +1 -0
  103. package/dist/generated/lucernWebServerEnv.d.ts +33 -0
  104. package/dist/generated/lucernWebServerEnv.js +51 -0
  105. package/dist/generated/lucernWebServerEnv.js.map +1 -0
  106. package/dist/generated/schema-manifest.json +1199 -138
  107. package/dist/generated/tableOwnership.d.ts +47 -27
  108. package/dist/generated/tableOwnership.js +66 -26
  109. package/dist/generated/tableOwnership.js.map +1 -1
  110. package/dist/generated/tier-expectations.json +62 -8
  111. package/dist/graph-intelligence.contract.d.ts +506 -0
  112. package/dist/graph-intelligence.contract.js +595 -0
  113. package/dist/graph-intelligence.contract.js.map +1 -0
  114. package/dist/graph-types/index.d.ts +5 -1
  115. package/dist/graph-types/index.js +15 -4
  116. package/dist/graph-types/index.js.map +1 -1
  117. package/dist/index-CM1Pl_vI.d.ts +28 -0
  118. package/dist/index.d.ts +29 -414
  119. package/dist/index.js +34791 -1088
  120. package/dist/index.js.map +1 -1
  121. package/dist/infisical-runtime.contract.d.ts +1768 -0
  122. package/dist/infisical-runtime.contract.js +3093 -0
  123. package/dist/infisical-runtime.contract.js.map +1 -0
  124. package/dist/lens-filter.contract.js +4 -3
  125. package/dist/lens-filter.contract.js.map +1 -1
  126. package/dist/lens-workflow.contract.js +4 -3
  127. package/dist/lens-workflow.contract.js.map +1 -1
  128. package/dist/manifests/edge-policy-manifest.d.ts +2 -0
  129. package/dist/manifests/edge-policy-manifest.data.d.ts +13 -0
  130. package/dist/manifests/edge-policy-manifest.data.js +26 -0
  131. package/dist/manifests/edge-policy-manifest.data.js.map +1 -0
  132. package/dist/manifests/edge-policy-manifest.js +92 -0
  133. package/dist/manifests/edge-policy-manifest.js.map +1 -0
  134. package/dist/manifests/infisical-runtime-manifest.d.ts +1672 -0
  135. package/dist/manifests/infisical-runtime-manifest.js +2948 -0
  136. package/dist/manifests/infisical-runtime-manifest.js.map +1 -0
  137. package/dist/manifests/invariant-manifest.d.ts +65 -0
  138. package/dist/manifests/invariant-manifest.js +18 -0
  139. package/dist/manifests/invariant-manifest.js.map +1 -0
  140. package/dist/manifests/invariants/ast-utils.d.ts +14 -0
  141. package/dist/manifests/invariants/ast-utils.js +54 -0
  142. package/dist/manifests/invariants/ast-utils.js.map +1 -0
  143. package/dist/manifests/invariants/index.d.ts +15 -0
  144. package/dist/manifests/invariants/index.js +183 -0
  145. package/dist/manifests/invariants/index.js.map +1 -0
  146. package/dist/manifests/invariants/inv-1-beliefs-append-only.d.ts +12 -0
  147. package/dist/manifests/invariants/inv-1-beliefs-append-only.js +94 -0
  148. package/dist/manifests/invariants/inv-1-beliefs-append-only.js.map +1 -0
  149. package/dist/manifests/invariants/inv-14-no-silent-transitions.d.ts +12 -0
  150. package/dist/manifests/invariants/inv-14-no-silent-transitions.js +99 -0
  151. package/dist/manifests/invariants/inv-14-no-silent-transitions.js.map +1 -0
  152. package/dist/manifests/invariants/manifest-1-projections-declare-audit.d.ts +12 -0
  153. package/dist/manifests/invariants/manifest-1-projections-declare-audit.js +42 -0
  154. package/dist/manifests/invariants/manifest-1-projections-declare-audit.js.map +1 -0
  155. package/dist/manifests/tenant-client-manifest.d.ts +322 -0
  156. package/dist/manifests/tenant-client-manifest.js +432 -0
  157. package/dist/manifests/tenant-client-manifest.js.map +1 -0
  158. package/dist/mcp-gateway-boundary.contract.d.ts +201 -0
  159. package/dist/mcp-gateway-boundary.contract.js +45 -0
  160. package/dist/mcp-gateway-boundary.contract.js.map +1 -0
  161. package/dist/projections/check-convex-args-shape.d.ts +3 -0
  162. package/dist/projections/check-convex-args-shape.js +403 -0
  163. package/dist/projections/check-convex-args-shape.js.map +1 -0
  164. package/dist/projections/create-evidence.projection.d.ts +176 -0
  165. package/dist/projections/create-evidence.projection.js +130 -0
  166. package/dist/projections/create-evidence.projection.js.map +1 -0
  167. package/dist/projections/index.d.ts +102 -0
  168. package/dist/projections/index.js +352 -0
  169. package/dist/projections/index.js.map +1 -0
  170. package/dist/projections/list-beliefs.projection.d.ts +36 -0
  171. package/dist/projections/list-beliefs.projection.js +54 -0
  172. package/dist/projections/list-beliefs.projection.js.map +1 -0
  173. package/dist/projections/list-tasks.projection.d.ts +44 -0
  174. package/dist/projections/list-tasks.projection.js +57 -0
  175. package/dist/projections/list-tasks.projection.js.map +1 -0
  176. package/dist/projections/modulate-confidence.projection.d.ts +219 -0
  177. package/dist/projections/modulate-confidence.projection.js +148 -0
  178. package/dist/projections/modulate-confidence.projection.js.map +1 -0
  179. package/dist/projections/projection-dsl.d.ts +11 -0
  180. package/dist/projections/projection-dsl.js +8 -0
  181. package/dist/projections/projection-dsl.js.map +1 -0
  182. package/dist/proof-attestation.json +45 -0
  183. package/dist/schema-helpers/enumValidation.js +2 -5
  184. package/dist/schema-helpers/enumValidation.js.map +1 -1
  185. package/dist/schema-helpers/spine/nodes/decision.js +2 -1
  186. package/dist/schema-helpers/spine/nodes/decision.js.map +1 -1
  187. package/dist/schema-helpers/spine/tables/epistemicNodes.js +27 -27
  188. package/dist/schema-helpers/spine/tables/epistemicNodes.js.map +1 -1
  189. package/dist/schemas/component-table-manifest.d.ts +6 -6
  190. package/dist/schemas/component-table-manifest.js +2 -2
  191. package/dist/schemas/component-table-manifest.js.map +1 -1
  192. package/dist/schemas/enums.d.ts +5 -2
  193. package/dist/schemas/enums.js +5 -2
  194. package/dist/schemas/enums.js.map +1 -1
  195. package/dist/schemas/index.d.ts +3 -3
  196. package/dist/schemas/index.js +1129 -139
  197. package/dist/schemas/index.js.map +1 -1
  198. package/dist/schemas/manifest.d.ts +2979 -949
  199. package/dist/schemas/manifest.js +1127 -137
  200. package/dist/schemas/manifest.js.map +1 -1
  201. package/dist/schemas/sl-opinion.d.ts +4 -4
  202. package/dist/schemas/tables/controlPlane/accessControl.d.ts +260 -0
  203. package/dist/schemas/tables/controlPlane/accessControl.js +653 -0
  204. package/dist/schemas/tables/controlPlane/accessControl.js.map +1 -0
  205. package/dist/schemas/tables/{identity → controlPlane}/agent.d.ts +1 -1
  206. package/dist/schemas/tables/{identity → controlPlane}/agent.js +3 -3
  207. package/dist/schemas/tables/controlPlane/agent.js.map +1 -0
  208. package/dist/schemas/tables/{identity → controlPlane}/epistemic.d.ts +1 -1
  209. package/dist/schemas/tables/{identity → controlPlane}/epistemic.js +3 -3
  210. package/dist/schemas/tables/controlPlane/epistemic.js.map +1 -0
  211. package/dist/schemas/tables/{identity → controlPlane}/model.d.ts +1 -1
  212. package/dist/schemas/tables/{identity → controlPlane}/model.js +6 -6
  213. package/dist/schemas/tables/controlPlane/model.js.map +1 -0
  214. package/dist/schemas/tables/{identity → controlPlane}/platform.d.ts +11 -11
  215. package/dist/schemas/tables/{identity → controlPlane}/platform.js +18 -18
  216. package/dist/schemas/tables/controlPlane/platform.js.map +1 -0
  217. package/dist/schemas/tables/{identity → controlPlane}/project.d.ts +1 -1
  218. package/dist/schemas/tables/{identity → controlPlane}/project.js +3 -3
  219. package/dist/schemas/tables/controlPlane/project.js.map +1 -0
  220. package/dist/schemas/tables/{identity → controlPlane}/user.d.ts +1 -1
  221. package/dist/schemas/tables/{identity → controlPlane}/user.js +3 -3
  222. package/dist/schemas/tables/controlPlane/user.js.map +1 -0
  223. package/dist/schemas/tables/kernel/config.d.ts +1 -1
  224. package/dist/schemas/tables/kernel/config.js.map +1 -1
  225. package/dist/schemas/tables/kernel/coordination.d.ts +1 -1
  226. package/dist/schemas/tables/kernel/coordination.js.map +1 -1
  227. package/dist/schemas/tables/kernel/decision.d.ts +1 -1
  228. package/dist/schemas/tables/kernel/decision.js.map +1 -1
  229. package/dist/schemas/tables/kernel/embedding.d.ts +1 -1
  230. package/dist/schemas/tables/kernel/embedding.js.map +1 -1
  231. package/dist/schemas/tables/kernel/epistemic.d.ts +7 -7
  232. package/dist/schemas/tables/kernel/epistemic.js.map +1 -1
  233. package/dist/schemas/tables/kernel/idempotency.d.ts +1 -1
  234. package/dist/schemas/tables/kernel/idempotency.js.map +1 -1
  235. package/dist/schemas/tables/kernel/infra.d.ts +5 -5
  236. package/dist/schemas/tables/kernel/infra.js.map +1 -1
  237. package/dist/schemas/tables/kernel/intelligence.d.ts +11 -11
  238. package/dist/schemas/tables/kernel/intelligence.js.map +1 -1
  239. package/dist/schemas/tables/kernel/lens.d.ts +5 -5
  240. package/dist/schemas/tables/kernel/lens.js.map +1 -1
  241. package/dist/schemas/tables/kernel/ontology.d.ts +1 -1
  242. package/dist/schemas/tables/kernel/ontology.js.map +1 -1
  243. package/dist/schemas/tables/kernel/platform.d.ts +13 -13
  244. package/dist/schemas/tables/kernel/platform.js.map +1 -1
  245. package/dist/schemas/tables/kernel/spine.d.ts +5 -4
  246. package/dist/schemas/tables/kernel/spine.js +6 -2
  247. package/dist/schemas/tables/kernel/spine.js.map +1 -1
  248. package/dist/schemas/tables/kernel/task.d.ts +43 -43
  249. package/dist/schemas/tables/kernel/task.js.map +1 -1
  250. package/dist/schemas/tables/kernel/topic.d.ts +1 -1
  251. package/dist/schemas/tables/kernel/topic.js +5 -1
  252. package/dist/schemas/tables/kernel/topic.js.map +1 -1
  253. package/dist/schemas/tables/kernel/workflow.d.ts +1 -1
  254. package/dist/schemas/tables/kernel/workflow.js.map +1 -1
  255. package/dist/schemas/tables/kernel/worktree.d.ts +55 -55
  256. package/dist/schemas/tables/kernel/worktree.js.map +1 -1
  257. package/dist/schemas/tables/mc/identity.d.ts +44 -4
  258. package/dist/schemas/tables/mc/identity.js +66 -1
  259. package/dist/schemas/tables/mc/identity.js.map +1 -1
  260. package/dist/schemas/tables/mc/methodology.d.ts +1 -1
  261. package/dist/schemas/tables/mc/methodology.js.map +1 -1
  262. package/dist/schemas/tables/mc/pack.d.ts +21 -21
  263. package/dist/schemas/tables/mc/pack.js.map +1 -1
  264. package/dist/schemas/tables/mc/policy.d.ts +2 -2
  265. package/dist/schemas/tables/mc/policy.js +1 -1
  266. package/dist/schemas/tables/mc/policy.js.map +1 -1
  267. package/dist/schemas/tables/mc/registry.d.ts +5 -5
  268. package/dist/schemas/tables/mc/registry.js.map +1 -1
  269. package/dist/schemas/tables/mc/runtime.d.ts +109 -3
  270. package/dist/schemas/tables/mc/runtime.js +330 -104
  271. package/dist/schemas/tables/mc/runtime.js.map +1 -1
  272. package/dist/schemas/tables/mc/tenant.d.ts +3 -2
  273. package/dist/schemas/tables/mc/tenant.js +2 -1
  274. package/dist/schemas/tables/mc/tenant.js.map +1 -1
  275. package/dist/schemas/tables/mc/workspace.d.ts +28 -5
  276. package/dist/schemas/tables/mc/workspace.js +36 -2
  277. package/dist/schemas/tables/mc/workspace.js.map +1 -1
  278. package/dist/sdk-methods.contract.d.ts +2 -2
  279. package/dist/{sdk-tools.contract-S4ia0TTo.d.ts → sdk-tools.contract-BNklQDfB.d.ts} +2 -2
  280. package/dist/sdk-tools.contract.d.ts +2 -2
  281. package/dist/sdk-tools.contract.js +672 -24
  282. package/dist/sdk-tools.contract.js.map +1 -1
  283. package/dist/tenant-bootstrap-seed.contract.d.ts +1269 -0
  284. package/dist/tenant-bootstrap-seed.contract.js +751 -0
  285. package/dist/tenant-bootstrap-seed.contract.js.map +1 -0
  286. package/dist/tenant-bootstrap-seed.defaults.d.ts +16 -0
  287. package/dist/tenant-bootstrap-seed.defaults.js +303 -0
  288. package/dist/tenant-bootstrap-seed.defaults.js.map +1 -0
  289. package/dist/tenant-client.contract.d.ts +349 -0
  290. package/dist/tenant-client.contract.js +488 -0
  291. package/dist/tenant-client.contract.js.map +1 -0
  292. package/dist/{tool-contracts-C92-9ueT.d.ts → tool-contracts-BevD9Ho2.d.ts} +36 -2
  293. package/dist/tool-contracts.d.ts +1 -1
  294. package/dist/tool-contracts.js +673 -25
  295. package/dist/tool-contracts.js.map +1 -1
  296. package/package.json +30 -1
  297. package/dist/index-CV-0_VWJ.d.ts +0 -25
  298. package/dist/schemas/tables/identity/agent.js.map +0 -1
  299. package/dist/schemas/tables/identity/epistemic.js.map +0 -1
  300. package/dist/schemas/tables/identity/model.js.map +0 -1
  301. package/dist/schemas/tables/identity/platform.js.map +0 -1
  302. package/dist/schemas/tables/identity/project.js.map +0 -1
  303. package/dist/schemas/tables/identity/user.js.map +0 -1
@@ -0,0 +1,1672 @@
1
+ import { InfisicalSecretDefinition, INFISICAL_RUNTIME_CONTRACT_VERSION, INFISICAL_RUNTIME_DEFAULT_PROJECT_ID, INFISICAL_RUNTIME_DEFAULT_API_URL, InfisicalRuntimeEnvironment, InfisicalRuntimeDeliveryMode, InfisicalRuntimeBootstrapEnv, InfisicalRuntimeControlEnv, InfisicalRuntimePath, InfisicalRuntimeSurface, InfisicalVercelDestinationEnvironment, InfisicalConvexTier, INFISICAL_VERCEL_SYNC_RECONCILIATION, InfisicalVercelSyncDestination, InfisicalTenantSoftwareSystem } from '../infisical-runtime.contract.js';
2
+
3
+ type InfisicalRuntimeManifest = {
4
+ readonly manifestVersion: "1.0.0";
5
+ readonly contractVersion: typeof INFISICAL_RUNTIME_CONTRACT_VERSION;
6
+ readonly project: {
7
+ readonly id: typeof INFISICAL_RUNTIME_DEFAULT_PROJECT_ID;
8
+ readonly apiUrl: typeof INFISICAL_RUNTIME_DEFAULT_API_URL;
9
+ };
10
+ readonly environments: readonly InfisicalRuntimeEnvironment[];
11
+ readonly deliveryModes: readonly InfisicalRuntimeDeliveryMode[];
12
+ readonly bootstrapEnv: InfisicalRuntimeBootstrapEnv;
13
+ readonly controlEnv: readonly InfisicalRuntimeControlEnv[];
14
+ readonly paths: readonly InfisicalRuntimePath[];
15
+ readonly surfaces: readonly InfisicalRuntimeSurface[];
16
+ readonly secretDefinitions: readonly InfisicalSecretDefinition[];
17
+ readonly vercelDestinationEnvironments: readonly InfisicalVercelDestinationEnvironment[];
18
+ readonly convexTierByVercelEnvironment: Record<InfisicalVercelDestinationEnvironment, InfisicalConvexTier>;
19
+ readonly vercelSyncReconciliation: typeof INFISICAL_VERCEL_SYNC_RECONCILIATION;
20
+ readonly vercelSyncDestinations: readonly InfisicalVercelSyncDestination[];
21
+ readonly tenantSoftwareSystems: readonly InfisicalTenantSoftwareSystem[];
22
+ };
23
+ declare const INFISICAL_RUNTIME_MANIFEST: {
24
+ readonly manifestVersion: "1.0.0";
25
+ readonly contractVersion: "2026-05-06";
26
+ readonly project: {
27
+ readonly id: "344b0526-90df-4606-ba50-22c647a36c65";
28
+ readonly apiUrl: "https://app.infisical.com";
29
+ };
30
+ readonly environments: readonly ["dev", "staging", "prod"];
31
+ readonly deliveryModes: readonly ["vercel_sync", "runtime_fetch", "device_auth"];
32
+ readonly bootstrapEnv: {
33
+ readonly apiUrl: readonly ["INFISICAL_API_URL", "INFISICAL_URL"];
34
+ readonly projectId: readonly ["INFISICAL_PROJECT_ID", "INFISICAL_WORKSPACE_ID"];
35
+ readonly clientId: readonly ["INFISICAL_CLIENT_ID", "INFISICAL_MACHINE_CLIENT_ID", "INFISICAL_UNIVERSAL_AUTH_CLIENT_ID"];
36
+ readonly clientSecret: readonly ["INFISICAL_CLIENT_SECRET", "INFISICAL_MACHINE_CLIENT_SECRET", "INFISICAL_UNIVERSAL_AUTH_CLIENT_SECRET"];
37
+ readonly environment: readonly ["INFISICAL_ENV", "LUCERN_INFISICAL_ENV"];
38
+ readonly organizationSlug: readonly ["INFISICAL_ORG_SLUG", "INFISICAL_ORGANIZATION_SLUG"];
39
+ readonly disabled: readonly ["LUCERN_INFISICAL_DISABLE", "INFISICAL_DISABLE"];
40
+ };
41
+ readonly controlEnv: readonly [{
42
+ readonly name: "NODE_ENV";
43
+ readonly category: "framework";
44
+ readonly description: "Node/Next runtime mode. Framework-owned, not written by Infisical.";
45
+ }, {
46
+ readonly name: "CI";
47
+ readonly category: "ci";
48
+ readonly description: "CI execution signal. Workflow-owned, not written by Infisical.";
49
+ }, {
50
+ readonly name: "VERCEL";
51
+ readonly category: "vercel";
52
+ readonly description: "Vercel runtime signal. Platform-owned, not written by Infisical.";
53
+ }, {
54
+ readonly name: "VERCEL_ENV";
55
+ readonly category: "vercel";
56
+ readonly description: "Vercel environment label used for build/runtime selection.";
57
+ }, {
58
+ readonly name: "VERCEL_URL";
59
+ readonly category: "vercel";
60
+ readonly description: "Vercel deployment URL supplied by Vercel for previews and builds.";
61
+ }, {
62
+ readonly name: "VERCEL_GIT_COMMIT_SHA";
63
+ readonly category: "vercel";
64
+ readonly description: "Vercel git metadata used for release labels. Platform-owned, not written by Infisical.";
65
+ }, {
66
+ readonly name: "NEXT_RUNTIME";
67
+ readonly category: "nextjs";
68
+ readonly description: "Next.js runtime selector for node/edge instrumentation modules.";
69
+ }, {
70
+ readonly name: "PORT";
71
+ readonly category: "framework";
72
+ readonly description: "Local/server port supplied by the runtime process manager.";
73
+ }, {
74
+ readonly name: "HOST";
75
+ readonly category: "framework";
76
+ readonly description: "Local/server host supplied by the runtime process manager.";
77
+ }, {
78
+ readonly name: "APP_URL";
79
+ readonly category: "compatibility";
80
+ readonly description: "Legacy local app URL fallback. Prefer LUCERN_LOGIN_BASE_URL or LUCERN_API_URL.";
81
+ }, {
82
+ readonly name: "NEXT_PUBLIC_APP_URL";
83
+ readonly category: "compatibility";
84
+ readonly description: "Legacy public app URL fallback. Prefer LUCERN_LOGIN_BASE_URL or LUCERN_API_URL.";
85
+ }, {
86
+ readonly name: "CLAUDE_PROJECT_DIR";
87
+ readonly category: "agent_local";
88
+ readonly description: "Local agent workspace hint. Agent-runtime-owned, not written by Infisical.";
89
+ }, {
90
+ readonly name: "HOME";
91
+ readonly category: "os";
92
+ readonly description: "Operating-system home directory used only for local credential discovery.";
93
+ }, {
94
+ readonly name: "USERPROFILE";
95
+ readonly category: "os";
96
+ readonly description: "Windows home directory used only for local credential discovery.";
97
+ }];
98
+ readonly paths: readonly [{
99
+ readonly id: "platform-auth";
100
+ readonly secretPath: "/platform/auth";
101
+ readonly description: "Lucern platform authentication secrets. Synced into Vercel web/gateway projects; never distributed to tenant tools.";
102
+ readonly variables: readonly [{
103
+ readonly name: "NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY";
104
+ readonly required: true;
105
+ readonly secret: false;
106
+ readonly public: true;
107
+ readonly description: "Clerk publishable key for the Lucern web origin.";
108
+ }, {
109
+ readonly name: "CLERK_SECRET_KEY";
110
+ readonly required: true;
111
+ readonly secret: true;
112
+ readonly public: false;
113
+ readonly description: "Clerk backend secret key for Lucern server runtimes.";
114
+ }, {
115
+ readonly name: "CLERK_JWT_ISSUER_DOMAIN";
116
+ readonly required: false;
117
+ readonly secret: false;
118
+ readonly public: false;
119
+ readonly description: "Expected Clerk issuer/JWKS domain for JWT verification.";
120
+ }, {
121
+ readonly name: "NEXT_PUBLIC_CLERK_SIGN_IN_URL";
122
+ readonly required: false;
123
+ readonly secret: false;
124
+ readonly public: true;
125
+ readonly description: "Public sign-in URL for Lucern-owned web flows.";
126
+ }, {
127
+ readonly name: "NEXT_PUBLIC_CLERK_SIGN_UP_URL";
128
+ readonly required: false;
129
+ readonly secret: false;
130
+ readonly public: true;
131
+ readonly description: "Public sign-up URL for Lucern-owned web flows.";
132
+ }];
133
+ }, {
134
+ readonly id: "platform-runtime";
135
+ readonly secretPath: "/platform/runtime";
136
+ readonly description: "Runtime defaults shared by server-side Lucern clients and operator tooling.";
137
+ readonly variables: readonly [{
138
+ readonly name: "LUCERN_API_URL";
139
+ readonly required: true;
140
+ readonly secret: false;
141
+ readonly public: false;
142
+ readonly aliases: readonly ["LUCERN_API_BASE_URL", "LUCERN_BASE_URL"];
143
+ readonly description: "Canonical Lucern API gateway URL.";
144
+ }, {
145
+ readonly name: "LUCERN_LOGIN_BASE_URL";
146
+ readonly required: false;
147
+ readonly secret: false;
148
+ readonly public: false;
149
+ readonly aliases: readonly ["LUCERN_AUTH_BASE_URL"];
150
+ readonly description: "Browser login origin used when it differs from the API.";
151
+ }, {
152
+ readonly name: "LUCERN_ENVIRONMENT";
153
+ readonly required: false;
154
+ readonly secret: false;
155
+ readonly public: false;
156
+ readonly aliases: readonly ["LUCERN_ENV"];
157
+ readonly description: "Lucern environment label consumed by CLI profiles.";
158
+ }, {
159
+ readonly name: "LUCERN_CLI_SESSION_TTL_MS";
160
+ readonly required: false;
161
+ readonly secret: false;
162
+ readonly public: false;
163
+ readonly description: "Optional web-issued CLI login session lifetime override in milliseconds.";
164
+ }];
165
+ }, {
166
+ readonly id: "tenant-shared-install";
167
+ readonly secretPath: "tenants/shared";
168
+ readonly description: "Tenant package-install secrets. This is install-only and distinct from platform publish credentials.";
169
+ readonly variables: readonly [{
170
+ readonly name: "INSTALL_LUCERN_NPM";
171
+ readonly required: true;
172
+ readonly secret: true;
173
+ readonly public: false;
174
+ readonly description: "Read-only install token for the published @lucern/* suite.";
175
+ }];
176
+ }];
177
+ readonly surfaces: readonly [{
178
+ readonly id: "lucern-web";
179
+ readonly delivery: "vercel_sync";
180
+ readonly sourcePathIds: readonly ["platform-auth", "platform-runtime"];
181
+ readonly consumer: "apps/web on Vercel project lucern";
182
+ readonly description: "Lucern web consumes Clerk and runtime config via Infisical-to-Vercel syncs.";
183
+ }, {
184
+ readonly id: "lucern-gateway";
185
+ readonly delivery: "vercel_sync";
186
+ readonly fallback: "runtime_fetch";
187
+ readonly sourcePathIds: readonly ["platform-auth", "platform-runtime"];
188
+ readonly consumer: "apps/gateway on Vercel project lucern-gateway";
189
+ readonly description: "Lucern gateway consumes platform config via Infisical-to-Vercel syncs and may self-hydrate from Infisical when the host environment has scoped bootstrap credentials.";
190
+ }, {
191
+ readonly id: "lucern-sdk";
192
+ readonly packageName: "@lucern/sdk";
193
+ readonly delivery: "runtime_fetch";
194
+ readonly sourcePathIds: readonly ["platform-runtime"];
195
+ readonly consumer: "server-side SDK operator contexts with a scoped Infisical identity";
196
+ readonly description: "SDK exposes the runtime Infisical resolver used by clients that have machine identity credentials.";
197
+ }, {
198
+ readonly id: "lucern-cli";
199
+ readonly packageName: "@lucern/cli";
200
+ readonly delivery: "runtime_fetch";
201
+ readonly fallback: "device_auth";
202
+ readonly sourcePathIds: readonly ["platform-runtime"];
203
+ readonly consumer: "developer/operator CLI processes";
204
+ readonly description: "CLI hydrates runtime defaults from Infisical when configured, then authenticates users through Lucern device login.";
205
+ }, {
206
+ readonly id: "lucern-mcp";
207
+ readonly packageName: "@lucern/mcp";
208
+ readonly delivery: "runtime_fetch";
209
+ readonly fallback: "device_auth";
210
+ readonly sourcePathIds: readonly ["platform-runtime"];
211
+ readonly consumer: "MCP server/client processes";
212
+ readonly description: "MCP hydrates runtime defaults through the SDK resolver and remains a Lucern client, not a platform secret owner.";
213
+ }, {
214
+ readonly id: "tenant-client";
215
+ readonly delivery: "device_auth";
216
+ readonly sourcePathIds: readonly ["tenant-shared-install"];
217
+ readonly consumer: "tenant-owned apps and coding agents";
218
+ readonly description: "Tenant clients install the published packages and receive user/service credentials through Lucern auth surfaces.";
219
+ }];
220
+ readonly secretDefinitions: readonly [{
221
+ readonly id: "platform.clerk.publishable";
222
+ readonly canonicalName: "NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY";
223
+ readonly aliases: readonly ["CLERK_PUBLISHABLE_KEY"];
224
+ readonly owner: "lucern_platform";
225
+ readonly scope: "environment";
226
+ readonly sourcePath: "/platform/auth";
227
+ readonly environmentPolicy: "environment_specific";
228
+ readonly required: true;
229
+ readonly secret: false;
230
+ readonly public: true;
231
+ readonly consumers: readonly ["lucern-web", "lucern-gateway", "lucern-mcp"];
232
+ readonly destinations: readonly [{
233
+ readonly kind: "vercel";
234
+ readonly target: "lucern";
235
+ readonly environmentPolicy: "environment_specific";
236
+ }, {
237
+ readonly kind: "vercel";
238
+ readonly target: "lucern-gateway";
239
+ readonly environmentPolicy: "environment_specific";
240
+ }, {
241
+ readonly kind: "runtime_fetch";
242
+ readonly target: "hosted-mcp-oauth";
243
+ readonly environmentPolicy: "environment_specific";
244
+ }];
245
+ readonly description: "Lucern-owned Clerk browser key for platform web, gateway, and hosted MCP OAuth flows.";
246
+ }, {
247
+ readonly id: "platform.clerk.secret";
248
+ readonly canonicalName: "CLERK_SECRET_KEY";
249
+ readonly owner: "lucern_platform";
250
+ readonly scope: "environment";
251
+ readonly sourcePath: "/platform/auth";
252
+ readonly environmentPolicy: "environment_specific";
253
+ readonly required: true;
254
+ readonly secret: true;
255
+ readonly public: false;
256
+ readonly consumers: readonly ["lucern-web", "lucern-gateway", "lucern-mcp"];
257
+ readonly destinations: readonly [{
258
+ readonly kind: "vercel";
259
+ readonly target: "lucern";
260
+ readonly environmentPolicy: "environment_specific";
261
+ }, {
262
+ readonly kind: "vercel";
263
+ readonly target: "lucern-gateway";
264
+ readonly environmentPolicy: "environment_specific";
265
+ }, {
266
+ readonly kind: "runtime_fetch";
267
+ readonly target: "hosted-mcp-oauth";
268
+ readonly environmentPolicy: "environment_specific";
269
+ }];
270
+ readonly description: "Lucern-owned Clerk backend secret. Never route to tenant-owned apps unless that tenant is Lucern itself.";
271
+ }, {
272
+ readonly id: "platform.clerk.project";
273
+ readonly canonicalName: "CLERK_PROJECT_ID";
274
+ readonly aliases: readonly ["LUCERN_CLERK_PROJECT_ID"];
275
+ readonly owner: "lucern_platform";
276
+ readonly scope: "environment";
277
+ readonly sourcePath: "/platform/auth";
278
+ readonly environmentPolicy: "environment_specific";
279
+ readonly required: true;
280
+ readonly secret: false;
281
+ readonly public: false;
282
+ readonly consumers: readonly ["lucern-gateway", "mc-convex"];
283
+ readonly destinations: readonly [{
284
+ readonly kind: "vercel";
285
+ readonly target: "lucern-gateway";
286
+ readonly environmentPolicy: "environment_specific";
287
+ }, {
288
+ readonly kind: "convex";
289
+ readonly target: "master-control";
290
+ readonly environmentPolicy: "environment_specific";
291
+ }];
292
+ readonly description: "Canonical Lucern Clerk project identifier used when MC resolves Clerk identities.";
293
+ }, {
294
+ readonly id: "platform.clerk.jwks";
295
+ readonly canonicalName: "CLERK_JWKS_URL";
296
+ readonly aliases: readonly ["CLERK_JWT_ISSUER_DOMAIN"];
297
+ readonly owner: "lucern_platform";
298
+ readonly scope: "environment";
299
+ readonly sourcePath: "/platform/auth";
300
+ readonly environmentPolicy: "environment_specific";
301
+ readonly required: false;
302
+ readonly secret: false;
303
+ readonly public: false;
304
+ readonly consumers: readonly ["lucern-mcp", "lucern-gateway"];
305
+ readonly destinations: readonly [{
306
+ readonly kind: "runtime_fetch";
307
+ readonly target: "lucern-mcp";
308
+ readonly environmentPolicy: "environment_specific";
309
+ }, {
310
+ readonly kind: "vercel";
311
+ readonly target: "lucern-gateway";
312
+ readonly environmentPolicy: "environment_specific";
313
+ }];
314
+ readonly description: "Optional Clerk JWKS/issuer override for server-side token verification.";
315
+ }, {
316
+ readonly id: "platform.runtime.api-base-url";
317
+ readonly canonicalName: "LUCERN_API_URL";
318
+ readonly aliases: readonly ["LUCERN_API_BASE_URL", "LUCERN_BASE_URL"];
319
+ readonly owner: "lucern_platform";
320
+ readonly scope: "environment";
321
+ readonly sourcePath: "/platform/runtime";
322
+ readonly environmentPolicy: "environment_specific";
323
+ readonly required: true;
324
+ readonly secret: false;
325
+ readonly public: false;
326
+ readonly consumers: readonly ["lucern-web", "lucern-gateway", "lucern-mcp", "lucern-cli"];
327
+ readonly destinations: readonly [{
328
+ readonly kind: "vercel";
329
+ readonly target: "lucern";
330
+ readonly environmentPolicy: "environment_specific";
331
+ }, {
332
+ readonly kind: "vercel";
333
+ readonly target: "lucern-gateway";
334
+ readonly environmentPolicy: "environment_specific";
335
+ }, {
336
+ readonly kind: "runtime_fetch";
337
+ readonly target: "lucern-cli-mcp-sdk";
338
+ readonly environmentPolicy: "environment_specific";
339
+ }];
340
+ readonly description: "Canonical Lucern API gateway base URL. Older names remain aliases only.";
341
+ }, {
342
+ readonly id: "platform.runtime.login-base-url";
343
+ readonly canonicalName: "LUCERN_LOGIN_BASE_URL";
344
+ readonly aliases: readonly ["LUCERN_AUTH_BASE_URL", "LUCERN_WEB_BASE_URL"];
345
+ readonly owner: "lucern_platform";
346
+ readonly scope: "environment";
347
+ readonly sourcePath: "/platform/runtime";
348
+ readonly environmentPolicy: "environment_specific";
349
+ readonly required: false;
350
+ readonly secret: false;
351
+ readonly public: false;
352
+ readonly consumers: readonly ["lucern-gateway", "lucern-mcp", "lucern-cli"];
353
+ readonly destinations: readonly [{
354
+ readonly kind: "vercel";
355
+ readonly target: "lucern-gateway";
356
+ readonly environmentPolicy: "environment_specific";
357
+ }, {
358
+ readonly kind: "runtime_fetch";
359
+ readonly target: "lucern-cli-mcp-sdk";
360
+ readonly environmentPolicy: "environment_specific";
361
+ }];
362
+ readonly description: "Browser login origin used when device/OAuth login is not served by the API base URL.";
363
+ }, {
364
+ readonly id: "platform.runtime.environment";
365
+ readonly canonicalName: "LUCERN_ENVIRONMENT";
366
+ readonly aliases: readonly ["LUCERN_ENV"];
367
+ readonly owner: "lucern_platform";
368
+ readonly scope: "environment";
369
+ readonly sourcePath: "/platform/runtime";
370
+ readonly environmentPolicy: "environment_specific";
371
+ readonly required: false;
372
+ readonly secret: false;
373
+ readonly public: false;
374
+ readonly consumers: readonly ["lucern-web", "lucern-gateway", "lucern-mcp", "lucern-cli"];
375
+ readonly destinations: readonly [{
376
+ readonly kind: "vercel";
377
+ readonly target: "lucern";
378
+ readonly environmentPolicy: "environment_specific";
379
+ }, {
380
+ readonly kind: "vercel";
381
+ readonly target: "lucern-gateway";
382
+ readonly environmentPolicy: "environment_specific";
383
+ }, {
384
+ readonly kind: "runtime_fetch";
385
+ readonly target: "lucern-cli-mcp-sdk";
386
+ readonly environmentPolicy: "environment_specific";
387
+ }];
388
+ readonly description: "Lucern runtime environment label.";
389
+ }, {
390
+ readonly id: "platform.runtime.require-deployment-host-registry";
391
+ readonly canonicalName: "LUCERN_REQUIRE_DEPLOYMENT_HOST_REGISTRY";
392
+ readonly owner: "lucern_platform";
393
+ readonly scope: "environment";
394
+ readonly sourcePath: "/platform/runtime";
395
+ readonly environmentPolicy: "environment_specific";
396
+ readonly required: false;
397
+ readonly secret: false;
398
+ readonly public: false;
399
+ readonly consumers: readonly ["lucern-gateway"];
400
+ readonly destinations: readonly [{
401
+ readonly kind: "vercel";
402
+ readonly target: "lucern-gateway";
403
+ readonly environmentPolicy: "environment_specific";
404
+ }, {
405
+ readonly kind: "operator_local";
406
+ readonly target: "lucern-repo";
407
+ readonly environmentPolicy: "environment_specific";
408
+ }];
409
+ readonly description: "Fail-closed gateway toggle that requires MC deployment host registry resolution before routing.";
410
+ }, {
411
+ readonly id: "platform.mc.convex-url";
412
+ readonly canonicalName: "CONVEX_MC_URL";
413
+ readonly aliases: readonly ["CONVEX_MC_PROD_URL", "LUCERN_ADMIN_CONVEX_URL", "LUCERN_CONVEX_URL", "MC_CONVEX_URL"];
414
+ readonly owner: "lucern_platform";
415
+ readonly scope: "environment";
416
+ readonly sourcePath: "/platform/mc";
417
+ readonly environmentPolicy: "environment_specific";
418
+ readonly required: true;
419
+ readonly secret: false;
420
+ readonly public: false;
421
+ readonly consumers: readonly ["lucern-gateway", "mc-operator-tooling", "lucern-repo-ci"];
422
+ readonly destinations: readonly [{
423
+ readonly kind: "vercel";
424
+ readonly target: "lucern-gateway";
425
+ readonly environmentPolicy: "environment_specific";
426
+ }, {
427
+ readonly kind: "github_actions";
428
+ readonly target: "LucernAI/lucern";
429
+ readonly environmentPolicy: "environment_specific";
430
+ }, {
431
+ readonly kind: "operator_local";
432
+ readonly target: "lucern-repo";
433
+ readonly environmentPolicy: "environment_specific";
434
+ }];
435
+ readonly description: "Master Control Convex URL. Prod must point to successful-clam-833; dev/staging to utmost-ox-403.";
436
+ }, {
437
+ readonly id: "platform.mc.convex-deploy-key";
438
+ readonly canonicalName: "CONVEX_MC_DEPLOY_KEY";
439
+ readonly aliases: readonly ["CONVEX_MC_PROD_DEPLOY_KEY", "LUCERN_ADMIN_DEPLOY_KEY", "LUCERN_DEPLOY_KEY", "MC_DEPLOY_KEY", "MC_PROD_DEPLOY_KEY"];
440
+ readonly owner: "lucern_platform";
441
+ readonly scope: "environment";
442
+ readonly sourcePath: "/platform/mc";
443
+ readonly environmentPolicy: "environment_specific";
444
+ readonly required: true;
445
+ readonly secret: true;
446
+ readonly public: false;
447
+ readonly consumers: readonly ["lucern-gateway", "mc-operator-tooling", "lucern-repo-ci"];
448
+ readonly destinations: readonly [{
449
+ readonly kind: "vercel";
450
+ readonly target: "lucern-gateway";
451
+ readonly environmentPolicy: "environment_specific";
452
+ }, {
453
+ readonly kind: "github_actions";
454
+ readonly target: "LucernAI/lucern";
455
+ readonly environmentPolicy: "environment_specific";
456
+ }, {
457
+ readonly kind: "operator_local";
458
+ readonly target: "lucern-repo";
459
+ readonly environmentPolicy: "environment_specific";
460
+ }];
461
+ readonly description: "Master Control deploy/admin key. Never route to tenant Vercel projects or tenant Convex deployments.";
462
+ }, {
463
+ readonly id: "platform.mc.session-token-secret";
464
+ readonly canonicalName: "LUCERN_SESSION_TOKEN_SECRET";
465
+ readonly owner: "lucern_platform";
466
+ readonly scope: "environment";
467
+ readonly sourcePath: "/platform/mc";
468
+ readonly environmentPolicy: "environment_specific";
469
+ readonly required: true;
470
+ readonly secret: true;
471
+ readonly public: false;
472
+ readonly consumers: readonly ["lucern-mcp", "mc-convex", "lucern-gateway"];
473
+ readonly destinations: readonly [{
474
+ readonly kind: "convex";
475
+ readonly target: "master-control";
476
+ readonly environmentPolicy: "environment_specific";
477
+ }, {
478
+ readonly kind: "runtime_fetch";
479
+ readonly target: "hosted-mcp-oauth";
480
+ readonly environmentPolicy: "environment_specific";
481
+ }, {
482
+ readonly kind: "vercel";
483
+ readonly target: "lucern-gateway";
484
+ readonly environmentPolicy: "environment_specific";
485
+ }];
486
+ readonly description: "Signs Lucern platform session/delegation tokens. This is platform-owned, not tenant-owned.";
487
+ }, {
488
+ readonly id: "platform.mc.tenant-secret-encryption-key";
489
+ readonly canonicalName: "LUCERN_TENANT_SECRET_ENCRYPTION_KEY";
490
+ readonly aliases: readonly ["LUCERN_SESSION_TOKEN_SECRET"];
491
+ readonly owner: "lucern_platform";
492
+ readonly scope: "environment";
493
+ readonly sourcePath: "/platform/mc";
494
+ readonly environmentPolicy: "environment_specific";
495
+ readonly required: true;
496
+ readonly secret: true;
497
+ readonly public: false;
498
+ readonly consumers: readonly ["mc-convex", "mc-operator-tooling"];
499
+ readonly destinations: readonly [{
500
+ readonly kind: "convex";
501
+ readonly target: "master-control";
502
+ readonly environmentPolicy: "environment_specific";
503
+ }, {
504
+ readonly kind: "operator_local";
505
+ readonly target: "mc-credential-maintenance";
506
+ readonly environmentPolicy: "environment_specific";
507
+ }];
508
+ readonly description: "Encrypts tenant deployment credentials stored in MC. Session-token fallback is legacy only.";
509
+ }, {
510
+ readonly id: "platform.permit.api-key";
511
+ readonly canonicalName: "LUCERN_PERMIT_API_KEY";
512
+ readonly aliases: readonly ["PERMIT_API_KEY"];
513
+ readonly owner: "lucern_platform";
514
+ readonly scope: "environment";
515
+ readonly sourcePath: "/platform/permit";
516
+ readonly environmentPolicy: "environment_specific";
517
+ readonly required: true;
518
+ readonly secret: true;
519
+ readonly public: false;
520
+ readonly consumers: readonly ["mc-convex", "lucern-mcp", "lucern-gateway"];
521
+ readonly destinations: readonly [{
522
+ readonly kind: "convex";
523
+ readonly target: "master-control";
524
+ readonly environmentPolicy: "environment_specific";
525
+ }, {
526
+ readonly kind: "runtime_fetch";
527
+ readonly target: "hosted-mcp-oauth";
528
+ readonly environmentPolicy: "environment_specific";
529
+ }, {
530
+ readonly kind: "vercel";
531
+ readonly target: "lucern-gateway";
532
+ readonly environmentPolicy: "environment_specific";
533
+ }];
534
+ readonly description: "Permit.io API key used for MC sync and policy checks. Must fail closed if missing.";
535
+ }, {
536
+ readonly id: "platform.permit.pdp-url";
537
+ readonly canonicalName: "LUCERN_PERMIT_PDP_URL";
538
+ readonly aliases: readonly ["PERMIT_PDP_URL"];
539
+ readonly owner: "lucern_platform";
540
+ readonly scope: "environment";
541
+ readonly sourcePath: "/platform/permit";
542
+ readonly environmentPolicy: "environment_specific";
543
+ readonly required: false;
544
+ readonly secret: false;
545
+ readonly public: false;
546
+ readonly consumers: readonly ["mc-convex", "lucern-mcp", "lucern-gateway"];
547
+ readonly destinations: readonly [{
548
+ readonly kind: "convex";
549
+ readonly target: "master-control";
550
+ readonly environmentPolicy: "environment_specific";
551
+ }, {
552
+ readonly kind: "runtime_fetch";
553
+ readonly target: "hosted-mcp-oauth";
554
+ readonly environmentPolicy: "environment_specific";
555
+ }, {
556
+ readonly kind: "vercel";
557
+ readonly target: "lucern-gateway";
558
+ readonly environmentPolicy: "environment_specific";
559
+ }];
560
+ readonly description: "Optional Permit PDP URL override.";
561
+ }, {
562
+ readonly id: "platform.permit.api-url";
563
+ readonly canonicalName: "LUCERN_PERMIT_API_URL";
564
+ readonly aliases: readonly ["PERMIT_API_URL"];
565
+ readonly owner: "lucern_platform";
566
+ readonly scope: "environment";
567
+ readonly sourcePath: "/platform/permit";
568
+ readonly environmentPolicy: "environment_specific";
569
+ readonly required: false;
570
+ readonly secret: false;
571
+ readonly public: false;
572
+ readonly consumers: readonly ["mc-convex", "lucern-mcp", "lucern-gateway"];
573
+ readonly destinations: readonly [{
574
+ readonly kind: "convex";
575
+ readonly target: "master-control";
576
+ readonly environmentPolicy: "environment_specific";
577
+ }, {
578
+ readonly kind: "runtime_fetch";
579
+ readonly target: "hosted-mcp-oauth";
580
+ readonly environmentPolicy: "environment_specific";
581
+ }, {
582
+ readonly kind: "vercel";
583
+ readonly target: "lucern-gateway";
584
+ readonly environmentPolicy: "environment_specific";
585
+ }];
586
+ readonly description: "Optional Permit API URL override.";
587
+ }, {
588
+ readonly id: "platform.ci.infisical-bootstrap-client-id";
589
+ readonly canonicalName: "INFISICAL_BOOTSTRAP_CLIENT_ID";
590
+ readonly aliases: readonly ["INFISICAL_CI_CLIENT_ID"];
591
+ readonly owner: "provider";
592
+ readonly scope: "environment";
593
+ readonly sourcePath: "/platform/ci";
594
+ readonly environmentPolicy: "same_all_environments";
595
+ readonly required: true;
596
+ readonly secret: true;
597
+ readonly public: false;
598
+ readonly consumers: readonly ["lucern-repo-ci"];
599
+ readonly destinations: readonly [{
600
+ readonly kind: "github_actions";
601
+ readonly target: "LucernAI/lucern";
602
+ readonly environmentPolicy: "same_all_environments";
603
+ }];
604
+ readonly description: "Machine identity client id used by CI to reconcile Infisical desired state.";
605
+ }, {
606
+ readonly id: "platform.ci.infisical-bootstrap-client-secret";
607
+ readonly canonicalName: "INFISICAL_BOOTSTRAP_CLIENT_SECRET";
608
+ readonly aliases: readonly ["INFISICAL_CI_CLIENT_SECRET"];
609
+ readonly owner: "provider";
610
+ readonly scope: "environment";
611
+ readonly sourcePath: "/platform/ci";
612
+ readonly environmentPolicy: "same_all_environments";
613
+ readonly required: true;
614
+ readonly secret: true;
615
+ readonly public: false;
616
+ readonly consumers: readonly ["lucern-repo-ci"];
617
+ readonly destinations: readonly [{
618
+ readonly kind: "github_actions";
619
+ readonly target: "LucernAI/lucern";
620
+ readonly environmentPolicy: "same_all_environments";
621
+ }];
622
+ readonly description: "Machine identity client secret used by CI to reconcile Infisical desired state.";
623
+ }, {
624
+ readonly id: "platform.publish.npm-token";
625
+ readonly canonicalName: "NPM_TOKEN";
626
+ readonly aliases: readonly ["NODE_AUTH_TOKEN"];
627
+ readonly owner: "provider";
628
+ readonly scope: "environment";
629
+ readonly sourcePath: "/platform/publish";
630
+ readonly environmentPolicy: "same_all_environments";
631
+ readonly required: true;
632
+ readonly secret: true;
633
+ readonly public: false;
634
+ readonly consumers: readonly ["lucern-repo-ci"];
635
+ readonly destinations: readonly [{
636
+ readonly kind: "github_actions";
637
+ readonly target: "LucernAI/lucern";
638
+ readonly environmentPolicy: "same_all_environments";
639
+ }];
640
+ readonly description: "Package publish/install token for @lucern/* release automation.";
641
+ }, {
642
+ readonly id: "platform.ai.openai-api-key";
643
+ readonly canonicalName: "OPENAI_API_KEY";
644
+ readonly owner: "lucern_platform";
645
+ readonly scope: "environment";
646
+ readonly sourcePath: "/platform/ai";
647
+ readonly environmentPolicy: "environment_specific";
648
+ readonly required: false;
649
+ readonly secret: true;
650
+ readonly public: false;
651
+ readonly consumers: readonly ["lucern-ai-runtime", "lucern-repo-ci"];
652
+ readonly destinations: readonly [{
653
+ readonly kind: "runtime_fetch";
654
+ readonly target: "lucern-ai-runtime";
655
+ readonly environmentPolicy: "environment_specific";
656
+ }, {
657
+ readonly kind: "github_actions";
658
+ readonly target: "LucernAI/lucern";
659
+ readonly environmentPolicy: "environment_specific";
660
+ }];
661
+ readonly description: "Lucern-owned OpenAI key for platform AI jobs, benchmarks, and controlled operator automation.";
662
+ }, {
663
+ readonly id: "platform.ai.anthropic-api-key";
664
+ readonly canonicalName: "ANTHROPIC_API_KEY";
665
+ readonly owner: "lucern_platform";
666
+ readonly scope: "environment";
667
+ readonly sourcePath: "/platform/ai";
668
+ readonly environmentPolicy: "environment_specific";
669
+ readonly required: false;
670
+ readonly secret: true;
671
+ readonly public: false;
672
+ readonly consumers: readonly ["lucern-ai-runtime", "lucern-repo-ci"];
673
+ readonly destinations: readonly [{
674
+ readonly kind: "runtime_fetch";
675
+ readonly target: "lucern-ai-runtime";
676
+ readonly environmentPolicy: "environment_specific";
677
+ }, {
678
+ readonly kind: "github_actions";
679
+ readonly target: "LucernAI/lucern";
680
+ readonly environmentPolicy: "environment_specific";
681
+ }];
682
+ readonly description: "Lucern-owned Anthropic key for platform AI jobs, benchmarks, and controlled operator automation.";
683
+ }, {
684
+ readonly id: "platform.ai.gemini-api-key";
685
+ readonly canonicalName: "GEMINI_API_KEY";
686
+ readonly aliases: readonly ["GOOGLE_AI_API_KEY", "GOOGLE_GENERATIVE_AI_API_KEY"];
687
+ readonly owner: "lucern_platform";
688
+ readonly scope: "environment";
689
+ readonly sourcePath: "/platform/ai";
690
+ readonly environmentPolicy: "environment_specific";
691
+ readonly required: false;
692
+ readonly secret: true;
693
+ readonly public: false;
694
+ readonly consumers: readonly ["lucern-ai-runtime", "lucern-repo-ci"];
695
+ readonly destinations: readonly [{
696
+ readonly kind: "runtime_fetch";
697
+ readonly target: "lucern-ai-runtime";
698
+ readonly environmentPolicy: "environment_specific";
699
+ }, {
700
+ readonly kind: "github_actions";
701
+ readonly target: "LucernAI/lucern";
702
+ readonly environmentPolicy: "environment_specific";
703
+ }];
704
+ readonly description: "Lucern-owned Google/Gemini key. Google alias names are read compatibility only.";
705
+ }, {
706
+ readonly id: "platform.langfuse.secret-key";
707
+ readonly canonicalName: "LANGFUSE_SECRET_KEY";
708
+ readonly owner: "lucern_platform";
709
+ readonly scope: "environment";
710
+ readonly sourcePath: "/platform/observability/langfuse";
711
+ readonly environmentPolicy: "environment_specific";
712
+ readonly required: false;
713
+ readonly secret: true;
714
+ readonly public: false;
715
+ readonly consumers: readonly ["lucern-ai-runtime", "lucern-observability", "lucern-repo-ci"];
716
+ readonly destinations: readonly [{
717
+ readonly kind: "runtime_fetch";
718
+ readonly target: "lucern-ai-runtime";
719
+ readonly environmentPolicy: "environment_specific";
720
+ }, {
721
+ readonly kind: "github_actions";
722
+ readonly target: "LucernAI/lucern";
723
+ readonly environmentPolicy: "environment_specific";
724
+ }];
725
+ readonly description: "Lucern-owned Langfuse secret key for prompt sync, prompt reads, and AI tracing.";
726
+ }, {
727
+ readonly id: "platform.langfuse.public-key";
728
+ readonly canonicalName: "LANGFUSE_PUBLIC_KEY";
729
+ readonly owner: "lucern_platform";
730
+ readonly scope: "environment";
731
+ readonly sourcePath: "/platform/observability/langfuse";
732
+ readonly environmentPolicy: "environment_specific";
733
+ readonly required: false;
734
+ readonly secret: false;
735
+ readonly public: false;
736
+ readonly consumers: readonly ["lucern-ai-runtime", "lucern-observability", "lucern-repo-ci"];
737
+ readonly destinations: readonly [{
738
+ readonly kind: "runtime_fetch";
739
+ readonly target: "lucern-ai-runtime";
740
+ readonly environmentPolicy: "environment_specific";
741
+ }, {
742
+ readonly kind: "github_actions";
743
+ readonly target: "LucernAI/lucern";
744
+ readonly environmentPolicy: "environment_specific";
745
+ }];
746
+ readonly description: "Lucern-owned Langfuse public key paired with LANGFUSE_SECRET_KEY.";
747
+ }, {
748
+ readonly id: "platform.langfuse.base-url";
749
+ readonly canonicalName: "LANGFUSE_BASE_URL";
750
+ readonly aliases: readonly ["LANGFUSE_BASEURL", "LANGFUSE_HOST"];
751
+ readonly owner: "lucern_platform";
752
+ readonly scope: "environment";
753
+ readonly sourcePath: "/platform/observability/langfuse";
754
+ readonly environmentPolicy: "environment_specific";
755
+ readonly required: false;
756
+ readonly secret: false;
757
+ readonly public: false;
758
+ readonly consumers: readonly ["lucern-ai-runtime", "lucern-observability", "lucern-repo-ci"];
759
+ readonly destinations: readonly [{
760
+ readonly kind: "runtime_fetch";
761
+ readonly target: "lucern-ai-runtime";
762
+ readonly environmentPolicy: "environment_specific";
763
+ }, {
764
+ readonly kind: "github_actions";
765
+ readonly target: "LucernAI/lucern";
766
+ readonly environmentPolicy: "environment_specific";
767
+ }];
768
+ readonly description: "Canonical Langfuse API origin. BASEURL/HOST are compatibility aliases.";
769
+ }, {
770
+ readonly id: "platform.neo4j.uri";
771
+ readonly canonicalName: "NEO4J_URI";
772
+ readonly owner: "lucern_platform";
773
+ readonly scope: "environment";
774
+ readonly sourcePath: "/platform/graph/neo4j";
775
+ readonly environmentPolicy: "environment_specific";
776
+ readonly required: false;
777
+ readonly secret: false;
778
+ readonly public: false;
779
+ readonly consumers: readonly ["lucern-graph-sync", "lucern-repo-ci"];
780
+ readonly destinations: readonly [{
781
+ readonly kind: "runtime_fetch";
782
+ readonly target: "lucern-graph-sync";
783
+ readonly environmentPolicy: "environment_specific";
784
+ }, {
785
+ readonly kind: "github_actions";
786
+ readonly target: "LucernAI/lucern";
787
+ readonly environmentPolicy: "environment_specific";
788
+ }];
789
+ readonly description: "Lucern-owned Neo4j URI for platform graph-sync surfaces.";
790
+ }, {
791
+ readonly id: "platform.neo4j.user";
792
+ readonly canonicalName: "NEO4J_USER";
793
+ readonly aliases: readonly ["NEO4J_USERNAME"];
794
+ readonly owner: "lucern_platform";
795
+ readonly scope: "environment";
796
+ readonly sourcePath: "/platform/graph/neo4j";
797
+ readonly environmentPolicy: "environment_specific";
798
+ readonly required: false;
799
+ readonly secret: false;
800
+ readonly public: false;
801
+ readonly consumers: readonly ["lucern-graph-sync", "lucern-repo-ci"];
802
+ readonly destinations: readonly [{
803
+ readonly kind: "runtime_fetch";
804
+ readonly target: "lucern-graph-sync";
805
+ readonly environmentPolicy: "environment_specific";
806
+ }, {
807
+ readonly kind: "github_actions";
808
+ readonly target: "LucernAI/lucern";
809
+ readonly environmentPolicy: "environment_specific";
810
+ }];
811
+ readonly description: "Lucern-owned Neo4j username for platform graph-sync surfaces.";
812
+ }, {
813
+ readonly id: "platform.neo4j.password";
814
+ readonly canonicalName: "NEO4J_PASSWORD";
815
+ readonly owner: "lucern_platform";
816
+ readonly scope: "environment";
817
+ readonly sourcePath: "/platform/graph/neo4j";
818
+ readonly environmentPolicy: "environment_specific";
819
+ readonly required: false;
820
+ readonly secret: true;
821
+ readonly public: false;
822
+ readonly consumers: readonly ["lucern-graph-sync", "lucern-repo-ci"];
823
+ readonly destinations: readonly [{
824
+ readonly kind: "runtime_fetch";
825
+ readonly target: "lucern-graph-sync";
826
+ readonly environmentPolicy: "environment_specific";
827
+ }, {
828
+ readonly kind: "github_actions";
829
+ readonly target: "LucernAI/lucern";
830
+ readonly environmentPolicy: "environment_specific";
831
+ }];
832
+ readonly description: "Lucern-owned Neo4j password for platform graph-sync surfaces.";
833
+ }, {
834
+ readonly id: "platform.neo4j.sync-secret";
835
+ readonly canonicalName: "NEO4J_SYNC_SECRET";
836
+ readonly owner: "lucern_platform";
837
+ readonly scope: "environment";
838
+ readonly sourcePath: "/platform/graph/neo4j";
839
+ readonly environmentPolicy: "environment_specific";
840
+ readonly required: false;
841
+ readonly secret: true;
842
+ readonly public: false;
843
+ readonly consumers: readonly ["lucern-graph-sync", "lucern-repo-ci"];
844
+ readonly destinations: readonly [{
845
+ readonly kind: "runtime_fetch";
846
+ readonly target: "lucern-graph-sync";
847
+ readonly environmentPolicy: "environment_specific";
848
+ }, {
849
+ readonly kind: "github_actions";
850
+ readonly target: "LucernAI/lucern";
851
+ readonly environmentPolicy: "environment_specific";
852
+ }];
853
+ readonly description: "Shared secret protecting Lucern-owned graph-sync HTTP/query proxy calls.";
854
+ }, {
855
+ readonly id: "platform.neo4j.database";
856
+ readonly canonicalName: "NEO4J_DATABASE";
857
+ readonly owner: "lucern_platform";
858
+ readonly scope: "environment";
859
+ readonly sourcePath: "/platform/graph/neo4j";
860
+ readonly environmentPolicy: "environment_specific";
861
+ readonly required: false;
862
+ readonly secret: false;
863
+ readonly public: false;
864
+ readonly consumers: readonly ["lucern-graph-sync", "lucern-repo-ci"];
865
+ readonly destinations: readonly [{
866
+ readonly kind: "runtime_fetch";
867
+ readonly target: "lucern-graph-sync";
868
+ readonly environmentPolicy: "environment_specific";
869
+ }, {
870
+ readonly kind: "github_actions";
871
+ readonly target: "LucernAI/lucern";
872
+ readonly environmentPolicy: "environment_specific";
873
+ }];
874
+ readonly description: "Optional Neo4j database name for Lucern-owned graph-sync surfaces.";
875
+ }, {
876
+ readonly id: "platform.pinecone.api-key";
877
+ readonly canonicalName: "PINECONE_API_KEY";
878
+ readonly owner: "lucern_platform";
879
+ readonly scope: "environment";
880
+ readonly sourcePath: "/platform/vector/pinecone";
881
+ readonly environmentPolicy: "environment_specific";
882
+ readonly required: false;
883
+ readonly secret: true;
884
+ readonly public: false;
885
+ readonly consumers: readonly ["lucern-ai-runtime", "lucern-repo-ci"];
886
+ readonly destinations: readonly [{
887
+ readonly kind: "runtime_fetch";
888
+ readonly target: "lucern-ai-runtime";
889
+ readonly environmentPolicy: "environment_specific";
890
+ }, {
891
+ readonly kind: "github_actions";
892
+ readonly target: "LucernAI/lucern";
893
+ readonly environmentPolicy: "environment_specific";
894
+ }];
895
+ readonly description: "Lucern-owned Pinecone API key for platform vector search.";
896
+ }, {
897
+ readonly id: "platform.pinecone.index-name";
898
+ readonly canonicalName: "PINECONE_INDEX_NAME";
899
+ readonly aliases: readonly ["PINECONE_INDEX"];
900
+ readonly owner: "lucern_platform";
901
+ readonly scope: "environment";
902
+ readonly sourcePath: "/platform/vector/pinecone";
903
+ readonly environmentPolicy: "environment_specific";
904
+ readonly required: false;
905
+ readonly secret: false;
906
+ readonly public: false;
907
+ readonly consumers: readonly ["lucern-ai-runtime", "lucern-repo-ci"];
908
+ readonly destinations: readonly [{
909
+ readonly kind: "runtime_fetch";
910
+ readonly target: "lucern-ai-runtime";
911
+ readonly environmentPolicy: "environment_specific";
912
+ }, {
913
+ readonly kind: "github_actions";
914
+ readonly target: "LucernAI/lucern";
915
+ readonly environmentPolicy: "environment_specific";
916
+ }];
917
+ readonly description: "Lucern-owned Pinecone index name.";
918
+ }, {
919
+ readonly id: "platform.pinecone.host";
920
+ readonly canonicalName: "PINECONE_HOST";
921
+ readonly aliases: readonly ["PINECONE_INDEX_HOST"];
922
+ readonly owner: "lucern_platform";
923
+ readonly scope: "environment";
924
+ readonly sourcePath: "/platform/vector/pinecone";
925
+ readonly environmentPolicy: "environment_specific";
926
+ readonly required: false;
927
+ readonly secret: false;
928
+ readonly public: false;
929
+ readonly consumers: readonly ["lucern-ai-runtime", "lucern-repo-ci"];
930
+ readonly destinations: readonly [{
931
+ readonly kind: "runtime_fetch";
932
+ readonly target: "lucern-ai-runtime";
933
+ readonly environmentPolicy: "environment_specific";
934
+ }, {
935
+ readonly kind: "github_actions";
936
+ readonly target: "LucernAI/lucern";
937
+ readonly environmentPolicy: "environment_specific";
938
+ }];
939
+ readonly description: "Lucern-owned Pinecone host/index host.";
940
+ }, {
941
+ readonly id: "platform.sentry.dsn";
942
+ readonly canonicalName: "NEXT_PUBLIC_SENTRY_DSN";
943
+ readonly aliases: readonly ["SENTRY_DSN", "NEXT_PUBLIC_SENTRY_DSN_NEXTJS"];
944
+ readonly owner: "provider";
945
+ readonly scope: "environment";
946
+ readonly sourcePath: "/platform/observability/sentry";
947
+ readonly environmentPolicy: "environment_specific";
948
+ readonly required: false;
949
+ readonly secret: false;
950
+ readonly public: true;
951
+ readonly consumers: readonly ["lucern-web", "lucern-gateway", "lucern-observability"];
952
+ readonly destinations: readonly [{
953
+ readonly kind: "vercel";
954
+ readonly target: "lucern";
955
+ readonly environmentPolicy: "environment_specific";
956
+ }, {
957
+ readonly kind: "vercel";
958
+ readonly target: "lucern-gateway";
959
+ readonly environmentPolicy: "environment_specific";
960
+ }];
961
+ readonly description: "Lucern-owned Sentry DSN for browser/server error telemetry.";
962
+ }, {
963
+ readonly id: "platform.sentry.auth-token";
964
+ readonly canonicalName: "SENTRY_AUTH_TOKEN";
965
+ readonly owner: "provider";
966
+ readonly scope: "environment";
967
+ readonly sourcePath: "/platform/observability/sentry";
968
+ readonly environmentPolicy: "same_all_environments";
969
+ readonly required: false;
970
+ readonly secret: true;
971
+ readonly public: false;
972
+ readonly consumers: readonly ["lucern-repo-ci", "lucern-observability"];
973
+ readonly destinations: readonly [{
974
+ readonly kind: "github_actions";
975
+ readonly target: "LucernAI/lucern";
976
+ readonly environmentPolicy: "same_all_environments";
977
+ }, {
978
+ readonly kind: "vercel";
979
+ readonly target: "lucern";
980
+ readonly environmentPolicy: "same_all_environments";
981
+ }];
982
+ readonly description: "Sentry release-upload token. Runtime services must not use it for authorization.";
983
+ }, {
984
+ readonly id: "platform.sentry.org";
985
+ readonly canonicalName: "SENTRY_ORG";
986
+ readonly aliases: readonly ["SENTRY_ORG_SLUG"];
987
+ readonly owner: "provider";
988
+ readonly scope: "global";
989
+ readonly sourcePath: "/platform/observability/sentry";
990
+ readonly environmentPolicy: "same_all_environments";
991
+ readonly required: false;
992
+ readonly secret: false;
993
+ readonly public: false;
994
+ readonly consumers: readonly ["lucern-repo-ci", "lucern-observability"];
995
+ readonly destinations: readonly [{
996
+ readonly kind: "github_actions";
997
+ readonly target: "LucernAI/lucern";
998
+ readonly environmentPolicy: "same_all_environments";
999
+ }, {
1000
+ readonly kind: "vercel";
1001
+ readonly target: "lucern";
1002
+ readonly environmentPolicy: "same_all_environments";
1003
+ }];
1004
+ readonly description: "Sentry organization slug for Lucern release uploads.";
1005
+ }, {
1006
+ readonly id: "platform.sentry.project";
1007
+ readonly canonicalName: "SENTRY_PROJECT";
1008
+ readonly aliases: readonly ["SENTRY_PROJECT_NEXTJS"];
1009
+ readonly owner: "provider";
1010
+ readonly scope: "global";
1011
+ readonly sourcePath: "/platform/observability/sentry";
1012
+ readonly environmentPolicy: "same_all_environments";
1013
+ readonly required: false;
1014
+ readonly secret: false;
1015
+ readonly public: false;
1016
+ readonly consumers: readonly ["lucern-repo-ci", "lucern-observability"];
1017
+ readonly destinations: readonly [{
1018
+ readonly kind: "github_actions";
1019
+ readonly target: "LucernAI/lucern";
1020
+ readonly environmentPolicy: "same_all_environments";
1021
+ }, {
1022
+ readonly kind: "vercel";
1023
+ readonly target: "lucern";
1024
+ readonly environmentPolicy: "same_all_environments";
1025
+ }];
1026
+ readonly description: "Sentry project slug for Lucern release uploads.";
1027
+ }, {
1028
+ readonly id: "platform.sentry.environment";
1029
+ readonly canonicalName: "SENTRY_ENVIRONMENT";
1030
+ readonly aliases: readonly ["NEXT_PUBLIC_SENTRY_ENVIRONMENT"];
1031
+ readonly owner: "provider";
1032
+ readonly scope: "environment";
1033
+ readonly sourcePath: "/platform/observability/sentry";
1034
+ readonly environmentPolicy: "environment_specific";
1035
+ readonly required: false;
1036
+ readonly secret: false;
1037
+ readonly public: false;
1038
+ readonly consumers: readonly ["lucern-web", "lucern-gateway", "lucern-observability"];
1039
+ readonly destinations: readonly [{
1040
+ readonly kind: "vercel";
1041
+ readonly target: "lucern";
1042
+ readonly environmentPolicy: "environment_specific";
1043
+ readonly writeNames: readonly ["SENTRY_ENVIRONMENT", "NEXT_PUBLIC_SENTRY_ENVIRONMENT"];
1044
+ }, {
1045
+ readonly kind: "vercel";
1046
+ readonly target: "lucern-gateway";
1047
+ readonly environmentPolicy: "environment_specific";
1048
+ }];
1049
+ readonly description: "Lucern-owned Sentry environment label.";
1050
+ }, {
1051
+ readonly id: "platform.sentry.release";
1052
+ readonly canonicalName: "SENTRY_RELEASE";
1053
+ readonly aliases: readonly ["NEXT_PUBLIC_SENTRY_RELEASE"];
1054
+ readonly owner: "provider";
1055
+ readonly scope: "environment";
1056
+ readonly sourcePath: "/platform/observability/sentry";
1057
+ readonly environmentPolicy: "environment_specific";
1058
+ readonly required: false;
1059
+ readonly secret: false;
1060
+ readonly public: false;
1061
+ readonly consumers: readonly ["lucern-web", "lucern-gateway", "lucern-observability"];
1062
+ readonly destinations: readonly [{
1063
+ readonly kind: "vercel";
1064
+ readonly target: "lucern";
1065
+ readonly environmentPolicy: "environment_specific";
1066
+ readonly writeNames: readonly ["SENTRY_RELEASE", "NEXT_PUBLIC_SENTRY_RELEASE"];
1067
+ }, {
1068
+ readonly kind: "vercel";
1069
+ readonly target: "lucern-gateway";
1070
+ readonly environmentPolicy: "environment_specific";
1071
+ }];
1072
+ readonly description: "Lucern-owned Sentry release name.";
1073
+ }, {
1074
+ readonly id: "platform.deploy.vercel-token";
1075
+ readonly canonicalName: "VERCEL_TOKEN";
1076
+ readonly owner: "provider";
1077
+ readonly scope: "global";
1078
+ readonly sourcePath: "/platform/deploy/vercel";
1079
+ readonly environmentPolicy: "same_all_environments";
1080
+ readonly required: false;
1081
+ readonly secret: true;
1082
+ readonly public: false;
1083
+ readonly consumers: readonly ["lucern-repo-ci"];
1084
+ readonly destinations: readonly [{
1085
+ readonly kind: "github_actions";
1086
+ readonly target: "LucernAI/lucern";
1087
+ readonly environmentPolicy: "same_all_environments";
1088
+ }, {
1089
+ readonly kind: "operator_local";
1090
+ readonly target: "secret-sync-writer";
1091
+ readonly environmentPolicy: "same_all_environments";
1092
+ }];
1093
+ readonly description: "Vercel API token for the future reviewed live writer. Never copy into tenant apps.";
1094
+ }, {
1095
+ readonly id: "platform.deploy.vercel-org-id";
1096
+ readonly canonicalName: "VERCEL_ORG_ID";
1097
+ readonly owner: "provider";
1098
+ readonly scope: "global";
1099
+ readonly sourcePath: "/platform/deploy/vercel";
1100
+ readonly environmentPolicy: "same_all_environments";
1101
+ readonly required: false;
1102
+ readonly secret: false;
1103
+ readonly public: false;
1104
+ readonly consumers: readonly ["lucern-repo-ci"];
1105
+ readonly destinations: readonly [{
1106
+ readonly kind: "github_actions";
1107
+ readonly target: "LucernAI/lucern";
1108
+ readonly environmentPolicy: "same_all_environments";
1109
+ }, {
1110
+ readonly kind: "operator_local";
1111
+ readonly target: "secret-sync-writer";
1112
+ readonly environmentPolicy: "same_all_environments";
1113
+ }];
1114
+ readonly description: "Vercel team/org id used by deployment and sync automation.";
1115
+ }, {
1116
+ readonly id: "platform.docs.gap-audit-api-key";
1117
+ readonly canonicalName: "DOC_GAP_AUDIT_API_KEY";
1118
+ readonly owner: "lucern_platform";
1119
+ readonly scope: "environment";
1120
+ readonly sourcePath: "/platform/docs";
1121
+ readonly environmentPolicy: "environment_specific";
1122
+ readonly required: false;
1123
+ readonly secret: true;
1124
+ readonly public: false;
1125
+ readonly consumers: readonly ["lucern-repo-ci"];
1126
+ readonly destinations: readonly [{
1127
+ readonly kind: "github_actions";
1128
+ readonly target: "LucernAI/lucern";
1129
+ readonly environmentPolicy: "environment_specific";
1130
+ }, {
1131
+ readonly kind: "operator_local";
1132
+ readonly target: "lucern-repo";
1133
+ readonly environmentPolicy: "environment_specific";
1134
+ }];
1135
+ readonly description: "Optional model key for docs gap audits.";
1136
+ }, {
1137
+ readonly id: "platform.docs.gap-audit-provider";
1138
+ readonly canonicalName: "DOC_GAP_AUDIT_PROVIDER";
1139
+ readonly owner: "lucern_platform";
1140
+ readonly scope: "environment";
1141
+ readonly sourcePath: "/platform/docs";
1142
+ readonly environmentPolicy: "environment_specific";
1143
+ readonly required: false;
1144
+ readonly secret: false;
1145
+ readonly public: false;
1146
+ readonly consumers: readonly ["lucern-repo-ci"];
1147
+ readonly destinations: readonly [{
1148
+ readonly kind: "github_actions";
1149
+ readonly target: "LucernAI/lucern";
1150
+ readonly environmentPolicy: "environment_specific";
1151
+ }, {
1152
+ readonly kind: "operator_local";
1153
+ readonly target: "lucern-repo";
1154
+ readonly environmentPolicy: "environment_specific";
1155
+ }];
1156
+ readonly description: "Optional docs gap audit provider selector.";
1157
+ }, {
1158
+ readonly id: "platform.docs.gap-audit-model";
1159
+ readonly canonicalName: "DOC_GAP_AUDIT_MODEL";
1160
+ readonly owner: "lucern_platform";
1161
+ readonly scope: "environment";
1162
+ readonly sourcePath: "/platform/docs";
1163
+ readonly environmentPolicy: "environment_specific";
1164
+ readonly required: false;
1165
+ readonly secret: false;
1166
+ readonly public: false;
1167
+ readonly consumers: readonly ["lucern-repo-ci"];
1168
+ readonly destinations: readonly [{
1169
+ readonly kind: "github_actions";
1170
+ readonly target: "LucernAI/lucern";
1171
+ readonly environmentPolicy: "environment_specific";
1172
+ }, {
1173
+ readonly kind: "operator_local";
1174
+ readonly target: "lucern-repo";
1175
+ readonly environmentPolicy: "environment_specific";
1176
+ }];
1177
+ readonly description: "Optional docs gap audit model selector.";
1178
+ }, {
1179
+ readonly id: "platform.infisical.local-cli";
1180
+ readonly canonicalName: "INFISICAL_BIN";
1181
+ readonly aliases: readonly ["INFISICAL_API_URL", "INFISICAL_URL"];
1182
+ readonly owner: "lucern_platform";
1183
+ readonly scope: "global";
1184
+ readonly sourcePath: "/platform/infisical";
1185
+ readonly environmentPolicy: "same_all_environments";
1186
+ readonly required: false;
1187
+ readonly secret: false;
1188
+ readonly public: false;
1189
+ readonly consumers: readonly ["mc-operator-tooling", "lucern-repo-ci"];
1190
+ readonly destinations: readonly [{
1191
+ readonly kind: "operator_local";
1192
+ readonly target: "lucern-repo";
1193
+ readonly environmentPolicy: "same_all_environments";
1194
+ }];
1195
+ readonly description: "Operator-only Infisical CLI/API location knobs. Machine credentials are handled by the bootstrap contract.";
1196
+ }, {
1197
+ readonly id: "platform.gateway.device-verification-base-url";
1198
+ readonly canonicalName: "LUCERN_DEVICE_VERIFICATION_BASE_URL";
1199
+ readonly owner: "lucern_platform";
1200
+ readonly scope: "environment";
1201
+ readonly sourcePath: "/platform/runtime";
1202
+ readonly environmentPolicy: "environment_specific";
1203
+ readonly required: false;
1204
+ readonly secret: false;
1205
+ readonly public: false;
1206
+ readonly consumers: readonly ["lucern-gateway"];
1207
+ readonly destinations: readonly [{
1208
+ readonly kind: "vercel";
1209
+ readonly target: "lucern-gateway";
1210
+ readonly environmentPolicy: "environment_specific";
1211
+ }];
1212
+ readonly description: "Base URL shown during Lucern CLI/device authentication.";
1213
+ }, {
1214
+ readonly id: "platform.gateway.mode";
1215
+ readonly canonicalName: "LUCERN_GATEWAY_MODE";
1216
+ readonly aliases: readonly ["LUCERN_GATEWAY_ENV"];
1217
+ readonly owner: "lucern_platform";
1218
+ readonly scope: "environment";
1219
+ readonly sourcePath: "/platform/runtime";
1220
+ readonly environmentPolicy: "environment_specific";
1221
+ readonly required: false;
1222
+ readonly secret: false;
1223
+ readonly public: false;
1224
+ readonly consumers: readonly ["lucern-gateway", "lucern-repo-ci"];
1225
+ readonly destinations: readonly [{
1226
+ readonly kind: "vercel";
1227
+ readonly target: "lucern-gateway";
1228
+ readonly environmentPolicy: "environment_specific";
1229
+ }, {
1230
+ readonly kind: "github_actions";
1231
+ readonly target: "LucernAI/lucern";
1232
+ readonly environmentPolicy: "environment_specific";
1233
+ }];
1234
+ readonly description: "Gateway runtime mode/environment label.";
1235
+ }, {
1236
+ readonly id: "platform.mcp.runtime";
1237
+ readonly canonicalName: "LUCERN_MCP_URL";
1238
+ readonly aliases: readonly ["LUCERN_AGENT_IDENTITY", "LUCERN_HTTP_HOST", "LUCERN_HTTP_PORT", "LUCERN_MCP_ALLOW_API_KEY_PASSTHROUGH", "LUCERN_MCP_DEBUG", "LUCERN_MCP_DIAGNOSTICS_FILE", "LUCERN_MCP_HEALTH_PATH", "LUCERN_MCP_HEALTH_URL", "LUCERN_MCP_HOST", "LUCERN_MCP_PATH", "LUCERN_MCP_PORT", "LUCERN_MCP_QUIET", "LUCERN_MCP_TRANSPORT", "LUCERN_PROFILE", "LUCERN_PUBLIC_URL", "MCP_SERVER_URL"];
1239
+ readonly owner: "lucern_platform";
1240
+ readonly scope: "environment";
1241
+ readonly sourcePath: "/platform/runtime";
1242
+ readonly environmentPolicy: "environment_specific";
1243
+ readonly required: false;
1244
+ readonly secret: false;
1245
+ readonly public: false;
1246
+ readonly consumers: readonly ["lucern-mcp", "lucern-cli", "lucern-repo-ci"];
1247
+ readonly destinations: readonly [{
1248
+ readonly kind: "runtime_fetch";
1249
+ readonly target: "lucern-cli-mcp-sdk";
1250
+ readonly environmentPolicy: "environment_specific";
1251
+ }, {
1252
+ readonly kind: "operator_local";
1253
+ readonly target: "lucern-repo";
1254
+ readonly environmentPolicy: "environment_specific";
1255
+ }];
1256
+ readonly description: "Lucern MCP/CLI runtime knobs. Aliases are compatibility names and not Vercel write names.";
1257
+ }, {
1258
+ readonly id: "platform.mcp.auth-token";
1259
+ readonly canonicalName: "LUCERN_MCP_SERVER_AUTH_TOKEN";
1260
+ readonly aliases: readonly ["LUCERN_USER_TOKEN", "MCP_SERVER_TOKEN"];
1261
+ readonly owner: "lucern_platform";
1262
+ readonly scope: "environment";
1263
+ readonly sourcePath: "/platform/runtime";
1264
+ readonly environmentPolicy: "environment_specific";
1265
+ readonly required: false;
1266
+ readonly secret: true;
1267
+ readonly public: false;
1268
+ readonly consumers: readonly ["lucern-mcp", "lucern-cli", "lucern-repo-ci"];
1269
+ readonly destinations: readonly [{
1270
+ readonly kind: "runtime_fetch";
1271
+ readonly target: "lucern-cli-mcp-sdk";
1272
+ readonly environmentPolicy: "environment_specific";
1273
+ }, {
1274
+ readonly kind: "operator_local";
1275
+ readonly target: "lucern-repo";
1276
+ readonly environmentPolicy: "environment_specific";
1277
+ }];
1278
+ readonly description: "Local/hosted MCP auth token material. Tenant apps must use MC/API-key sessions instead.";
1279
+ }, {
1280
+ readonly id: "platform.graph-sync.proxy";
1281
+ readonly canonicalName: "LUCERN_GRAPH_SYNC_QUERY_BASE_URL";
1282
+ readonly aliases: readonly ["LUCERN_DEFAULT_TENANT_ID", "LUCERN_GRAPH_SYNC_ALLOWED_PROXY_HOSTS"];
1283
+ readonly owner: "lucern_platform";
1284
+ readonly scope: "environment";
1285
+ readonly sourcePath: "/platform/graph/neo4j";
1286
+ readonly environmentPolicy: "environment_specific";
1287
+ readonly required: false;
1288
+ readonly secret: false;
1289
+ readonly public: false;
1290
+ readonly consumers: readonly ["lucern-graph-sync", "lucern-repo-ci"];
1291
+ readonly destinations: readonly [{
1292
+ readonly kind: "runtime_fetch";
1293
+ readonly target: "lucern-graph-sync";
1294
+ readonly environmentPolicy: "environment_specific";
1295
+ }, {
1296
+ readonly kind: "github_actions";
1297
+ readonly target: "LucernAI/lucern";
1298
+ readonly environmentPolicy: "environment_specific";
1299
+ }];
1300
+ readonly description: "Graph-sync proxy URL, tenant filter, and allowed host list.";
1301
+ }, {
1302
+ readonly id: "platform.package-smoke.local";
1303
+ readonly canonicalName: "LUCERN_SDK_NPM_TOKEN";
1304
+ readonly aliases: readonly ["LUCERN_KERNEL_INSTALL_SPEC", "LUCERN_KERNEL_KEEP_CLEANROOM", "LUCERN_KERNEL_LOCAL_TARBALL", "LUCERN_KERNEL_NPM_TOKEN", "LUCERN_KERNEL_SCOPE_REGISTRY", "LUCERN_KERNEL_SKIP_CONVEX", "LUCERN_SDK_INSTALL_SPEC", "LUCERN_SDK_KEEP_CLEANROOM", "LUCERN_SDK_LOCAL_TARBALL", "LUCERN_SDK_SCOPE_REGISTRY", "LUCERN_SDK_SKIP_LIVE"];
1305
+ readonly owner: "lucern_platform";
1306
+ readonly scope: "global";
1307
+ readonly sourcePath: "/platform/package-publish";
1308
+ readonly environmentPolicy: "same_all_environments";
1309
+ readonly required: false;
1310
+ readonly secret: true;
1311
+ readonly public: false;
1312
+ readonly consumers: readonly ["lucern-repo-ci"];
1313
+ readonly destinations: readonly [{
1314
+ readonly kind: "github_actions";
1315
+ readonly target: "LucernAI/lucern";
1316
+ readonly environmentPolicy: "same_all_environments";
1317
+ }, {
1318
+ readonly kind: "operator_local";
1319
+ readonly target: "lucern-repo";
1320
+ readonly environmentPolicy: "same_all_environments";
1321
+ }];
1322
+ readonly description: "Private package install smoke-test knobs. Values are not tenant runtime variables.";
1323
+ }, {
1324
+ readonly id: "platform.convex-deploy.local-names";
1325
+ readonly canonicalName: "LUCERN_CONVEX_DEPLOYMENT_NAME";
1326
+ readonly aliases: readonly ["CONVEX_DEPLOYMENT", "CONVEX_DEV_DEPLOYMENT_NAME", "CONVEX_PROD_DEPLOYMENT_NAME"];
1327
+ readonly owner: "lucern_platform";
1328
+ readonly scope: "environment";
1329
+ readonly sourcePath: "/platform/deploy/convex";
1330
+ readonly environmentPolicy: "environment_specific";
1331
+ readonly required: false;
1332
+ readonly secret: false;
1333
+ readonly public: false;
1334
+ readonly consumers: readonly ["mc-operator-tooling", "lucern-repo-ci"];
1335
+ readonly destinations: readonly [{
1336
+ readonly kind: "operator_local";
1337
+ readonly target: "lucern-repo";
1338
+ readonly environmentPolicy: "environment_specific";
1339
+ }];
1340
+ readonly description: "Operator-only Convex deployment name hints. Deploy keys and URLs remain separately scoped.";
1341
+ }, {
1342
+ readonly id: "platform.sdk.local-context";
1343
+ readonly canonicalName: "LUCERN_TENANT_ID";
1344
+ readonly aliases: readonly ["LUCERN_AGENT_DISPLAY_NAME", "LUCERN_AGENT_ID", "LUCERN_API_ENVIRONMENT", "LUCERN_PACK_KEY", "LUCERN_PROJECT_ID", "LUCERN_TOPIC_ID", "LUCERN_WORKSPACE_ID", "LUCERN_WORKTREE_ID"];
1345
+ readonly owner: "lucern_platform";
1346
+ readonly scope: "environment";
1347
+ readonly sourcePath: "/platform/runtime";
1348
+ readonly environmentPolicy: "environment_specific";
1349
+ readonly required: false;
1350
+ readonly secret: false;
1351
+ readonly public: false;
1352
+ readonly consumers: readonly ["lucern-cli", "lucern-mcp", "tenant-agent-runtime"];
1353
+ readonly destinations: readonly [{
1354
+ readonly kind: "runtime_fetch";
1355
+ readonly target: "lucern-cli-mcp-sdk";
1356
+ readonly environmentPolicy: "environment_specific";
1357
+ }, {
1358
+ readonly kind: "operator_local";
1359
+ readonly target: "lucern-repo";
1360
+ readonly environmentPolicy: "environment_specific";
1361
+ }];
1362
+ readonly description: "SDK, CLI, and agent context selectors. These identify scope and must not grant access by themselves.";
1363
+ }, {
1364
+ readonly id: "platform.debug.local-flags";
1365
+ readonly canonicalName: "LUCERN_FUNCTIONAL_DEBUG";
1366
+ readonly aliases: readonly ["LUCERN_CONTRACTS_SKIP_DTS", "LUCERN_DEPLOY_RECONCILIATION_DEBUG", "LUCERN_ENABLE_ADAPTIVE_LEARNING", "LUCERN_ENV_FILE", "LUCERN_EXAMPLE_DEBUG", "LUCERN_HTTP_SMOKE_DEBUG", "LUCERN_MULTI_TENANT", "LUCERN_PACK_ACTION_DEBUG", "LUCERN_RUN_LIVE_MCP"];
1367
+ readonly owner: "lucern_platform";
1368
+ readonly scope: "environment";
1369
+ readonly sourcePath: "/platform/runtime/debug";
1370
+ readonly environmentPolicy: "environment_specific";
1371
+ readonly required: false;
1372
+ readonly secret: false;
1373
+ readonly public: false;
1374
+ readonly consumers: readonly ["lucern-repo-ci", "mc-operator-tooling"];
1375
+ readonly destinations: readonly [{
1376
+ readonly kind: "operator_local";
1377
+ readonly target: "lucern-repo";
1378
+ readonly environmentPolicy: "environment_specific";
1379
+ }];
1380
+ readonly description: "Local or CI debug toggles. They are manifest-known but not tenant runtime secrets.";
1381
+ }, {
1382
+ readonly id: "tenant.stackos.deploy-guard.local";
1383
+ readonly canonicalName: "STACKOS_DEPLOY_TARGET";
1384
+ readonly aliases: readonly ["STACKOS_DEPLOY_ENTRYPOINT", "STACKOS_EXPECTED_STAGING_COMMIT", "STACKOS_PROD_CUTOVER_APPROVED", "STACKOS_REPO_PATH", "STACKOS_REQUIRE_CHAT_RUNTIME", "STACKOS_SLOP_SCAN_BASELINE", "STACKOS_STAGING_API_KEY", "STACKOS_STAGING_BASE_URL", "STACK_DEPLOY_RECONCILIATION_SCHEMA_JSON"];
1385
+ readonly owner: "tenant";
1386
+ readonly scope: "software_system";
1387
+ readonly sourcePath: "/tenants/stack";
1388
+ readonly environmentPolicy: "environment_specific";
1389
+ readonly required: false;
1390
+ readonly secret: true;
1391
+ readonly public: false;
1392
+ readonly consumers: readonly ["tenant-deploy-tooling", "lucern-repo-ci"];
1393
+ readonly destinations: readonly [{
1394
+ readonly kind: "operator_local";
1395
+ readonly target: "stackos-deploy-guard";
1396
+ readonly environmentPolicy: "environment_specific";
1397
+ }, {
1398
+ readonly kind: "github_actions";
1399
+ readonly target: "stack-vc/stackos";
1400
+ readonly environmentPolicy: "environment_specific";
1401
+ }];
1402
+ readonly description: "StackOS deploy/test guard variables. These are not written into the StackOS Vercel runtime.";
1403
+ }, ...(InfisicalSecretDefinition | {
1404
+ readonly id: "tenant.stack-eng.neo4j.uri";
1405
+ readonly canonicalName: "NEO4J_URI";
1406
+ readonly aliases: readonly ["NEO4J_ENG_URI"];
1407
+ readonly owner: "tenant";
1408
+ readonly scope: "workspace";
1409
+ readonly sourcePath: "/tenants/stack/engineering";
1410
+ readonly environmentPolicy: "environment_specific";
1411
+ readonly required: false;
1412
+ readonly secret: false;
1413
+ readonly public: false;
1414
+ readonly consumers: readonly ["tenant-graph-sync", "tenant-convex-deployment"];
1415
+ readonly destinations: readonly [{
1416
+ readonly kind: "convex";
1417
+ readonly target: "small-oyster-270|bold-cuttlefish-804";
1418
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1419
+ }, {
1420
+ readonly kind: "vercel";
1421
+ readonly target: "stackos-engineering-graph";
1422
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1423
+ }, {
1424
+ readonly kind: "github_actions";
1425
+ readonly target: "stack-vc/stackos-engineering-graph";
1426
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1427
+ }];
1428
+ readonly description: "Stack engineering graph Neo4j runtime URI. NEO4J_ENG_URI is the source alias used to avoid StackOS front-office collisions.";
1429
+ } | {
1430
+ readonly id: "tenant.stack-eng.neo4j.user";
1431
+ readonly canonicalName: "NEO4J_USER";
1432
+ readonly aliases: readonly ["NEO4J_ENG_USER"];
1433
+ readonly owner: "tenant";
1434
+ readonly scope: "workspace";
1435
+ readonly sourcePath: "/tenants/stack/engineering";
1436
+ readonly environmentPolicy: "environment_specific";
1437
+ readonly required: false;
1438
+ readonly secret: false;
1439
+ readonly public: false;
1440
+ readonly consumers: readonly ["tenant-graph-sync", "tenant-convex-deployment"];
1441
+ readonly destinations: readonly [{
1442
+ readonly kind: "convex";
1443
+ readonly target: "small-oyster-270|bold-cuttlefish-804";
1444
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1445
+ }, {
1446
+ readonly kind: "vercel";
1447
+ readonly target: "stackos-engineering-graph";
1448
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1449
+ }, {
1450
+ readonly kind: "github_actions";
1451
+ readonly target: "stack-vc/stackos-engineering-graph";
1452
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1453
+ }];
1454
+ readonly description: "Stack engineering graph Neo4j runtime user.";
1455
+ } | {
1456
+ readonly id: "tenant.stack-eng.neo4j.password";
1457
+ readonly canonicalName: "NEO4J_PASSWORD";
1458
+ readonly aliases: readonly ["NEO4J_ENG_PASSWORD"];
1459
+ readonly owner: "tenant";
1460
+ readonly scope: "workspace";
1461
+ readonly sourcePath: "/tenants/stack/engineering";
1462
+ readonly environmentPolicy: "environment_specific";
1463
+ readonly required: false;
1464
+ readonly secret: true;
1465
+ readonly public: false;
1466
+ readonly consumers: readonly ["tenant-graph-sync", "tenant-convex-deployment"];
1467
+ readonly destinations: readonly [{
1468
+ readonly kind: "convex";
1469
+ readonly target: "small-oyster-270|bold-cuttlefish-804";
1470
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1471
+ }, {
1472
+ readonly kind: "vercel";
1473
+ readonly target: "stackos-engineering-graph";
1474
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1475
+ }, {
1476
+ readonly kind: "github_actions";
1477
+ readonly target: "stack-vc/stackos-engineering-graph";
1478
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1479
+ }];
1480
+ readonly description: "Stack engineering graph Neo4j runtime password.";
1481
+ } | {
1482
+ readonly id: "tenant.stack-eng.neo4j.sync-secret";
1483
+ readonly canonicalName: "NEO4J_SYNC_SECRET";
1484
+ readonly owner: "tenant";
1485
+ readonly scope: "workspace";
1486
+ readonly sourcePath: "/tenants/stack/engineering";
1487
+ readonly environmentPolicy: "environment_specific";
1488
+ readonly required: false;
1489
+ readonly secret: true;
1490
+ readonly public: false;
1491
+ readonly consumers: readonly ["tenant-graph-sync", "tenant-convex-deployment"];
1492
+ readonly destinations: readonly [{
1493
+ readonly kind: "convex";
1494
+ readonly target: "small-oyster-270|bold-cuttlefish-804";
1495
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1496
+ }, {
1497
+ readonly kind: "vercel";
1498
+ readonly target: "stackos-engineering-graph";
1499
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1500
+ }, {
1501
+ readonly kind: "github_actions";
1502
+ readonly target: "stack-vc/stackos-engineering-graph";
1503
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1504
+ }];
1505
+ readonly description: "Stack engineering graph sync secret for Convex-to-HTTP graph query/sync calls.";
1506
+ } | {
1507
+ readonly id: "tenant.stackos.convex.url" | "tenant.stack-frontend.convex.url" | "tenant.stack-eng.convex.url" | "tenant.lucern-graph.convex.url";
1508
+ readonly canonicalName: "CONVEX_FRONTEND_URL" | "CONVEX_STACKOS_URL" | "CONVEX_STACK_ENG_URL" | "CONVEX_LUCERN_URL";
1509
+ readonly aliases: readonly string[] | undefined;
1510
+ readonly owner: "tenant";
1511
+ readonly scope: "software_system";
1512
+ readonly sourcePath: "/tenants/stack" | "/tenants/stack/engineering" | "/tenants/lucern/shared";
1513
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1514
+ readonly required: true;
1515
+ readonly secret: false;
1516
+ readonly public: false;
1517
+ readonly consumers: readonly ["tenant-vercel-app", "tenant-agent-runtime", "mc-operator-tooling"];
1518
+ readonly destinations: readonly [{
1519
+ readonly kind: "vercel";
1520
+ readonly target: "stackos" | "ai-chatbot-diao" | "stackos-engineering-graph" | "lucern-graph";
1521
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1522
+ readonly writeNames: readonly string[];
1523
+ }, {
1524
+ readonly kind: "github_actions";
1525
+ readonly target: "stack-vc/stackos" | "stack-vc/stackos-engineering-graph" | "stack-vc/front-end" | "stack-vc/lucern-graph" | "LucernAI/stackos" | "LucernAI/front-end" | "LucernAI/stackos-engineering-graph" | "LucernAI/lucern-graph";
1526
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1527
+ readonly writeNames: readonly string[];
1528
+ readonly notes: "Only if that repository deploy/test workflow owns this software system.";
1529
+ }];
1530
+ readonly description: "stack/stackos Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to wonderful-toucan-0." | "stack/stackos Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to good-snake-515." | "stack/stackos Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to bold-cuttlefish-804." | "stack/stackos Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to precious-dog-365." | "stack/stackos Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to wonderful-toucan-0." | "stack/stackos Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to good-snake-515." | "stack/stackos Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to bold-cuttlefish-804." | "stack/stackos Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to precious-dog-365." | "stack/stackos Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to wonderful-toucan-0." | "stack/stackos Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to good-snake-515." | "stack/stackos Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to bold-cuttlefish-804." | "stack/stackos Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to precious-dog-365." | "stack/stackos Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to wonderful-toucan-0." | "stack/stackos Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to good-snake-515." | "stack/stackos Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to bold-cuttlefish-804." | "stack/stackos Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to precious-dog-365." | "stack/frontend Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to wonderful-toucan-0." | "stack/frontend Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to good-snake-515." | "stack/frontend Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to bold-cuttlefish-804." | "stack/frontend Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to precious-dog-365." | "stack/frontend Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to wonderful-toucan-0." | "stack/frontend Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to good-snake-515." | "stack/frontend Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to bold-cuttlefish-804." | "stack/frontend Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to precious-dog-365." | "stack/frontend Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to wonderful-toucan-0." | "stack/frontend Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to good-snake-515." | "stack/frontend Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to bold-cuttlefish-804." | "stack/frontend Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to precious-dog-365." | "stack/frontend Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to wonderful-toucan-0." | "stack/frontend Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to good-snake-515." | "stack/frontend Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to bold-cuttlefish-804." | "stack/frontend Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to precious-dog-365." | "stack/engineering Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to wonderful-toucan-0." | "stack/engineering Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to good-snake-515." | "stack/engineering Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to bold-cuttlefish-804." | "stack/engineering Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to precious-dog-365." | "stack/engineering Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to wonderful-toucan-0." | "stack/engineering Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to good-snake-515." | "stack/engineering Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to bold-cuttlefish-804." | "stack/engineering Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to precious-dog-365." | "stack/engineering Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to wonderful-toucan-0." | "stack/engineering Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to good-snake-515." | "stack/engineering Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to bold-cuttlefish-804." | "stack/engineering Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to precious-dog-365." | "stack/engineering Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to wonderful-toucan-0." | "stack/engineering Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to good-snake-515." | "stack/engineering Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to bold-cuttlefish-804." | "stack/engineering Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to precious-dog-365." | "stack/lucern Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to wonderful-toucan-0." | "stack/lucern Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to good-snake-515." | "stack/lucern Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to bold-cuttlefish-804." | "stack/lucern Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to precious-dog-365." | "stack/lucern Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to wonderful-toucan-0." | "stack/lucern Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to good-snake-515." | "stack/lucern Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to bold-cuttlefish-804." | "stack/lucern Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to precious-dog-365." | "stack/lucern Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to wonderful-toucan-0." | "stack/lucern Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to good-snake-515." | "stack/lucern Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to bold-cuttlefish-804." | "stack/lucern Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to precious-dog-365." | "stack/lucern Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to wonderful-toucan-0." | "stack/lucern Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to good-snake-515." | "stack/lucern Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to bold-cuttlefish-804." | "stack/lucern Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to precious-dog-365." | "lucern/stackos Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to wonderful-toucan-0." | "lucern/stackos Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to good-snake-515." | "lucern/stackos Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to bold-cuttlefish-804." | "lucern/stackos Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to precious-dog-365." | "lucern/stackos Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to wonderful-toucan-0." | "lucern/stackos Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to good-snake-515." | "lucern/stackos Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to bold-cuttlefish-804." | "lucern/stackos Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to precious-dog-365." | "lucern/stackos Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to wonderful-toucan-0." | "lucern/stackos Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to good-snake-515." | "lucern/stackos Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to bold-cuttlefish-804." | "lucern/stackos Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to precious-dog-365." | "lucern/stackos Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to wonderful-toucan-0." | "lucern/stackos Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to good-snake-515." | "lucern/stackos Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to bold-cuttlefish-804." | "lucern/stackos Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to precious-dog-365." | "lucern/frontend Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to wonderful-toucan-0." | "lucern/frontend Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to good-snake-515." | "lucern/frontend Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to bold-cuttlefish-804." | "lucern/frontend Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to precious-dog-365." | "lucern/frontend Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to wonderful-toucan-0." | "lucern/frontend Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to good-snake-515." | "lucern/frontend Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to bold-cuttlefish-804." | "lucern/frontend Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to precious-dog-365." | "lucern/frontend Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to wonderful-toucan-0." | "lucern/frontend Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to good-snake-515." | "lucern/frontend Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to bold-cuttlefish-804." | "lucern/frontend Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to precious-dog-365." | "lucern/frontend Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to wonderful-toucan-0." | "lucern/frontend Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to good-snake-515." | "lucern/frontend Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to bold-cuttlefish-804." | "lucern/frontend Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to precious-dog-365." | "lucern/engineering Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to wonderful-toucan-0." | "lucern/engineering Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to good-snake-515." | "lucern/engineering Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to bold-cuttlefish-804." | "lucern/engineering Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to precious-dog-365." | "lucern/engineering Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to wonderful-toucan-0." | "lucern/engineering Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to good-snake-515." | "lucern/engineering Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to bold-cuttlefish-804." | "lucern/engineering Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to precious-dog-365." | "lucern/engineering Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to wonderful-toucan-0." | "lucern/engineering Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to good-snake-515." | "lucern/engineering Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to bold-cuttlefish-804." | "lucern/engineering Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to precious-dog-365." | "lucern/engineering Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to wonderful-toucan-0." | "lucern/engineering Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to good-snake-515." | "lucern/engineering Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to bold-cuttlefish-804." | "lucern/engineering Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to precious-dog-365." | "lucern/lucern Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to wonderful-toucan-0." | "lucern/lucern Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to good-snake-515." | "lucern/lucern Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to bold-cuttlefish-804." | "lucern/lucern Convex URL. Pre-prod resolves to rugged-lobster-664; prod resolves to precious-dog-365." | "lucern/lucern Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to wonderful-toucan-0." | "lucern/lucern Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to good-snake-515." | "lucern/lucern Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to bold-cuttlefish-804." | "lucern/lucern Convex URL. Pre-prod resolves to giant-mandrill-761; prod resolves to precious-dog-365." | "lucern/lucern Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to wonderful-toucan-0." | "lucern/lucern Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to good-snake-515." | "lucern/lucern Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to bold-cuttlefish-804." | "lucern/lucern Convex URL. Pre-prod resolves to small-oyster-270; prod resolves to precious-dog-365." | "lucern/lucern Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to wonderful-toucan-0." | "lucern/lucern Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to good-snake-515." | "lucern/lucern Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to bold-cuttlefish-804." | "lucern/lucern Convex URL. Pre-prod resolves to good-blackbird-774; prod resolves to precious-dog-365.";
1531
+ } | {
1532
+ readonly id: "tenant.stackos.convex.deploy-key" | "tenant.stack-frontend.convex.deploy-key" | "tenant.stack-eng.convex.deploy-key" | "tenant.lucern-graph.convex.deploy-key";
1533
+ readonly canonicalName: "CONVEX_FRONTEND_DEPLOY_KEY" | "CONVEX_STACKOS_DEPLOY_KEY" | "CONVEX_STACK_ENG_DEPLOY_KEY" | "CONVEX_LUCERN_DEPLOY_KEY";
1534
+ readonly aliases: readonly string[] | undefined;
1535
+ readonly owner: "tenant";
1536
+ readonly scope: "software_system";
1537
+ readonly sourcePath: "/tenants/stack" | "/tenants/stack/engineering" | "/tenants/lucern/shared";
1538
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1539
+ readonly required: true;
1540
+ readonly secret: true;
1541
+ readonly public: false;
1542
+ readonly consumers: readonly ["tenant-vercel-app", "tenant-agent-runtime", "mc-operator-tooling"];
1543
+ readonly destinations: readonly [{
1544
+ readonly kind: "vercel";
1545
+ readonly target: "stackos" | "ai-chatbot-diao" | "stackos-engineering-graph" | "lucern-graph";
1546
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1547
+ }, {
1548
+ readonly kind: "github_actions";
1549
+ readonly target: "stack-vc/stackos" | "stack-vc/stackos-engineering-graph" | "stack-vc/front-end" | "stack-vc/lucern-graph" | "LucernAI/stackos" | "LucernAI/front-end" | "LucernAI/stackos-engineering-graph" | "LucernAI/lucern-graph";
1550
+ readonly environmentPolicy: "preprod_staging_prod_prod";
1551
+ readonly writeNames: readonly string[];
1552
+ readonly notes: "Only if that repository deploy/test workflow owns this software system.";
1553
+ }];
1554
+ readonly description: "stack/stackos Convex deploy/admin key. Never route to sibling workspaces." | "stack/frontend Convex deploy/admin key. Never route to sibling workspaces." | "stack/engineering Convex deploy/admin key. Never route to sibling workspaces." | "stack/lucern Convex deploy/admin key. Never route to sibling workspaces." | "lucern/stackos Convex deploy/admin key. Never route to sibling workspaces." | "lucern/frontend Convex deploy/admin key. Never route to sibling workspaces." | "lucern/engineering Convex deploy/admin key. Never route to sibling workspaces." | "lucern/lucern Convex deploy/admin key. Never route to sibling workspaces.";
1555
+ })[]];
1556
+ readonly vercelDestinationEnvironments: readonly ["development", "preview", "staging", "production"];
1557
+ readonly convexTierByVercelEnvironment: {
1558
+ readonly development: "preprod";
1559
+ readonly preview: "preprod";
1560
+ readonly staging: "preprod";
1561
+ readonly production: "prod";
1562
+ };
1563
+ readonly vercelSyncReconciliation: {
1564
+ readonly sourceOfTruth: "infisical";
1565
+ readonly writer: "vercel_api";
1566
+ readonly disableSecretDeletion: false;
1567
+ readonly pruneDestinationKeys: true;
1568
+ };
1569
+ readonly vercelSyncDestinations: readonly [{
1570
+ readonly environment: "development";
1571
+ readonly vercelTarget: "development";
1572
+ readonly convexTier: "preprod";
1573
+ }, {
1574
+ readonly environment: "preview";
1575
+ readonly vercelTarget: "preview";
1576
+ readonly convexTier: "preprod";
1577
+ }, {
1578
+ readonly environment: "staging";
1579
+ readonly vercelTarget: "preview";
1580
+ readonly convexTier: "preprod";
1581
+ readonly customEnvironmentSlug: "staging";
1582
+ readonly customEnvironmentIdsByProjectName: {
1583
+ readonly stackos: "env_RbS0TYRRvWISTje8qR4u2lRg7TC8";
1584
+ };
1585
+ readonly domainsByProjectName: {
1586
+ readonly stackos: "staging.stack.vc";
1587
+ };
1588
+ }, {
1589
+ readonly environment: "production";
1590
+ readonly vercelTarget: "production";
1591
+ readonly convexTier: "prod";
1592
+ }];
1593
+ readonly tenantSoftwareSystems: readonly [{
1594
+ readonly id: "stack-frontend";
1595
+ readonly tenantKey: "stack";
1596
+ readonly workspaceKey: "frontend";
1597
+ readonly vercelProjectName: "ai-chatbot-diao";
1598
+ readonly vercelTeamId: "team_mZBKwvXSSu7qxrWdg2go29sK";
1599
+ readonly vercelProjectId: "prj_PihFw8kohSSw14nZs9YQV3xVo517";
1600
+ readonly repository: {
1601
+ readonly owner: "stack-vc";
1602
+ readonly name: "front-end";
1603
+ };
1604
+ readonly sharedSourcePath: "/tenants/stack";
1605
+ readonly sharedVariablePolicy: "tenant_shared_all_systems";
1606
+ readonly convex: {
1607
+ readonly urlEnv: "CONVEX_FRONTEND_URL";
1608
+ readonly deployKeyEnv: "CONVEX_FRONTEND_DEPLOY_KEY";
1609
+ readonly preprodDeployment: "rugged-lobster-664";
1610
+ readonly prodDeployment: "wonderful-toucan-0";
1611
+ };
1612
+ }, {
1613
+ readonly id: "stackos";
1614
+ readonly tenantKey: "stack";
1615
+ readonly workspaceKey: "stackos";
1616
+ readonly vercelProjectName: "stackos";
1617
+ readonly vercelTeamId: "team_mZBKwvXSSu7qxrWdg2go29sK";
1618
+ readonly vercelProjectId: "prj_rXLAL0Z6v9p1fasKbomby6GI7kau";
1619
+ readonly repository: {
1620
+ readonly owner: "stack-vc";
1621
+ readonly name: "stackos";
1622
+ };
1623
+ readonly sharedSourcePath: "/tenants/stack";
1624
+ readonly sharedVariablePolicy: "tenant_shared_all_systems";
1625
+ readonly convex: {
1626
+ readonly urlEnv: "CONVEX_STACKOS_URL";
1627
+ readonly deployKeyEnv: "CONVEX_STACKOS_DEPLOY_KEY";
1628
+ readonly preprodDeployment: "giant-mandrill-761";
1629
+ readonly prodDeployment: "good-snake-515";
1630
+ };
1631
+ }, {
1632
+ readonly id: "stack-eng";
1633
+ readonly tenantKey: "stack";
1634
+ readonly workspaceKey: "engineering";
1635
+ readonly vercelProjectName: "stackos-engineering-graph";
1636
+ readonly vercelTeamId: "team_mZBKwvXSSu7qxrWdg2go29sK";
1637
+ readonly vercelProjectId: "prj_zAU0Zn9GkbHjHI63dxW4vLpmoqTJ";
1638
+ readonly repository: {
1639
+ readonly owner: "stack-vc";
1640
+ readonly name: "stackos-engineering-graph";
1641
+ };
1642
+ readonly sharedSourcePath: "/tenants/stack/engineering";
1643
+ readonly sharedVariablePolicy: "tenant_shared_all_systems";
1644
+ readonly convex: {
1645
+ readonly urlEnv: "CONVEX_STACK_ENG_URL";
1646
+ readonly deployKeyEnv: "CONVEX_STACK_ENG_DEPLOY_KEY";
1647
+ readonly preprodDeployment: "small-oyster-270";
1648
+ readonly prodDeployment: "bold-cuttlefish-804";
1649
+ };
1650
+ }, {
1651
+ readonly id: "lucern-graph";
1652
+ readonly tenantKey: "lucern";
1653
+ readonly workspaceKey: "lucern";
1654
+ readonly vercelProjectName: "lucern-graph";
1655
+ readonly vercelTeamId: "team_vTHxxs8GAoAFUe6RWMlYt7fY";
1656
+ readonly vercelProjectId: "prj_KJ8EKV8vGM5xURpqmwTwmECEGPgQ";
1657
+ readonly repository: {
1658
+ readonly owner: "LucernAI";
1659
+ readonly name: "lucern-graph";
1660
+ };
1661
+ readonly sharedSourcePath: "/tenants/lucern/shared";
1662
+ readonly sharedVariablePolicy: "tenant_shared_all_systems";
1663
+ readonly convex: {
1664
+ readonly urlEnv: "CONVEX_LUCERN_URL";
1665
+ readonly deployKeyEnv: "CONVEX_LUCERN_DEPLOY_KEY";
1666
+ readonly preprodDeployment: "good-blackbird-774";
1667
+ readonly prodDeployment: "precious-dog-365";
1668
+ };
1669
+ }];
1670
+ };
1671
+
1672
+ export { INFISICAL_RUNTIME_MANIFEST, type InfisicalRuntimeManifest };