@nylorun/runtime 0.23.0-beta → 0.25.0-beta

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 (301) hide show
  1. package/CHANGELOG.md +252 -0
  2. package/README.md +87 -28
  3. package/dist/adapters/execution/restate.js +1 -1
  4. package/dist/adapters/replication/pgoutput.d.ts +2 -0
  5. package/dist/adapters/replication/pgoutput.js +6 -3
  6. package/dist/adapters/sandbox/local.d.ts +9 -1
  7. package/dist/adapters/sandbox/local.js +16 -4
  8. package/dist/adapters/sandbox/virtual.js +4 -1
  9. package/dist/api/a2a/card.d.ts +11 -1
  10. package/dist/api/a2a/card.js +26 -2
  11. package/dist/api/a2a/endpoint.js +9 -3
  12. package/dist/api/a2a/protocol.d.ts +25 -2
  13. package/dist/api/a2a/protocol.js +20 -3
  14. package/dist/api/a2a/routes.d.ts +6 -1
  15. package/dist/api/a2a/routes.js +67 -9
  16. package/dist/api/a2a/tasks.js +2 -1
  17. package/dist/api/ag-ui/endpoint.js +8 -3
  18. package/dist/api/ag-ui/history.d.ts +6 -1
  19. package/dist/api/ag-ui/history.js +39 -3
  20. package/dist/api/ag-ui/routes.d.ts +4 -1
  21. package/dist/api/ag-ui/routes.js +63 -20
  22. package/dist/api/ag-ui/translate.js +3 -2
  23. package/dist/api/components.d.ts +5327 -1091
  24. package/dist/api/components.js +40 -16
  25. package/dist/api/gate/keys.d.ts +2 -1
  26. package/dist/api/gate/keys.js +14 -1
  27. package/dist/api/gate/routes.d.ts +6 -0
  28. package/dist/api/gate/routes.js +52 -3
  29. package/dist/api/http/app.js +17 -6
  30. package/dist/api/http/body.d.ts +3 -3
  31. package/dist/api/http/body.js +7 -7
  32. package/dist/api/http/define.d.ts +6 -0
  33. package/dist/api/http/define.js +13 -1
  34. package/dist/api/http/respond.js +1 -1
  35. package/dist/api/http/routes/artifacts.js +35 -8
  36. package/dist/api/http/routes/coverage.d.ts +9 -0
  37. package/dist/api/http/routes/coverage.js +34 -0
  38. package/dist/api/http/routes/environment-manifests.d.ts +9 -0
  39. package/dist/api/http/routes/environment-manifests.js +118 -0
  40. package/dist/api/http/routes/environments.d.ts +11 -0
  41. package/dist/api/http/routes/environments.js +332 -0
  42. package/dist/api/http/routes/mcp.d.ts +1 -1
  43. package/dist/api/http/routes/mcp.js +2 -2
  44. package/dist/api/http/routes/me.js +1 -1
  45. package/dist/api/http/routes/reads.d.ts +94 -9
  46. package/dist/api/http/routes/reads.js +54 -5
  47. package/dist/api/http/routes/sessions.js +24 -9
  48. package/dist/api/http/routes/tenant.js +65 -15
  49. package/dist/api/inbound-files.d.ts +65 -0
  50. package/dist/api/inbound-files.js +115 -0
  51. package/dist/api/openapi.js +48 -28
  52. package/dist/artifacts/disk.d.ts +59 -0
  53. package/dist/artifacts/disk.js +569 -0
  54. package/dist/artifacts/export.d.ts +1 -1
  55. package/dist/artifacts/export.js +2 -3
  56. package/dist/artifacts/folders.d.ts +6 -3
  57. package/dist/artifacts/folders.js +17 -12
  58. package/dist/artifacts/media-types.d.ts +15 -0
  59. package/dist/artifacts/media-types.js +56 -4
  60. package/dist/artifacts/parts.d.ts +12 -3
  61. package/dist/artifacts/parts.js +15 -4
  62. package/dist/artifacts/service.d.ts +2 -1
  63. package/dist/artifacts/service.js +6 -1
  64. package/dist/artifacts/workspace.d.ts +5 -5
  65. package/dist/artifacts/workspace.js +7 -19
  66. package/dist/core/flow-host.d.ts +3 -4
  67. package/dist/core/flow-host.js +5 -2
  68. package/dist/core/provider.d.ts +3 -2
  69. package/dist/core/provider.js +5 -37
  70. package/dist/core/sandbox-routes.d.ts +2 -21
  71. package/dist/core/sandbox-routes.js +11 -44
  72. package/dist/core/turn-manifest.d.ts +3 -2
  73. package/dist/core/turn-manifest.js +29 -5
  74. package/dist/execution/types.d.ts +1 -1
  75. package/dist/gates/contract.d.ts +3 -24
  76. package/dist/gates/contract.js +1 -36
  77. package/dist/gates/egress-credentials.d.ts +9 -0
  78. package/dist/gates/egress-credentials.js +11 -4
  79. package/dist/gates/egress.d.ts +22 -1
  80. package/dist/gates/egress.js +116 -10
  81. package/dist/gates/fixture-model.d.ts +28 -0
  82. package/dist/gates/fixture-model.js +92 -0
  83. package/dist/gates/handler.js +4 -4
  84. package/dist/gates/http-tool.d.ts +9 -6
  85. package/dist/gates/http-tool.js +11 -17
  86. package/dist/gates/in-process.d.ts +5 -0
  87. package/dist/gates/in-process.js +12 -1
  88. package/dist/gates/journal.d.ts +30 -0
  89. package/dist/gates/journal.js +51 -0
  90. package/dist/gates/mcp-handler.d.ts +4 -0
  91. package/dist/gates/mcp-handler.js +7 -4
  92. package/dist/gates/meter.d.ts +10 -2
  93. package/dist/gates/meter.js +20 -5
  94. package/dist/gates/policy.d.ts +49 -0
  95. package/dist/gates/policy.js +132 -0
  96. package/dist/gates/tenant-vaults.d.ts +7 -7
  97. package/dist/gates/tenant-vaults.js +5 -5
  98. package/dist/gates/tool-calls.d.ts +10 -5
  99. package/dist/gates/tool-calls.js +28 -10
  100. package/dist/gates/tool-client.d.ts +8 -0
  101. package/dist/gates/tool-client.js +27 -11
  102. package/dist/gates/tool-contract.d.ts +11 -69
  103. package/dist/gates/tool-contract.js +1 -85
  104. package/dist/gates/tool-gate.d.ts +1 -1
  105. package/dist/harness/calls.d.ts +14 -7
  106. package/dist/harness/calls.js +30 -24
  107. package/dist/harness/executors.js +12 -9
  108. package/dist/harness/main.js +24 -5
  109. package/dist/harness/pod.d.ts +39 -0
  110. package/dist/harness/pod.js +46 -0
  111. package/dist/harness/service.d.ts +0 -1
  112. package/dist/harness/service.js +17 -9
  113. package/dist/harness/setup.d.ts +29 -0
  114. package/dist/harness/setup.js +174 -0
  115. package/dist/harness/ws-client.js +3 -2
  116. package/dist/harness/ws-port.d.ts +1 -5
  117. package/dist/harness/ws-port.js +1 -5
  118. package/dist/harness-api/in-process.js +3 -3
  119. package/dist/harness-api/record.d.ts +15 -1
  120. package/dist/harness-api/record.js +180 -50
  121. package/dist/harness-api/redact.d.ts +3 -0
  122. package/dist/harness-api/redact.js +45 -0
  123. package/dist/harness-api/server.d.ts +35 -4
  124. package/dist/harness-api/server.js +130 -17
  125. package/dist/harness-api/start.d.ts +10 -3
  126. package/dist/harness-api/start.js +40 -10
  127. package/dist/harness-api/tool-journal.d.ts +105 -0
  128. package/dist/harness-api/tool-journal.js +132 -0
  129. package/dist/harness-api/tool-status.d.ts +13 -0
  130. package/dist/harness-api/tool-status.js +26 -0
  131. package/dist/harness-api/workspace.d.ts +12 -7
  132. package/dist/harness-api/workspace.js +47 -25
  133. package/dist/harness-api/ws-server.d.ts +11 -3
  134. package/dist/harness-api/ws-server.js +94 -15
  135. package/dist/host/gates.d.ts +2 -1
  136. package/dist/host/gates.js +10 -2
  137. package/dist/host/main.js +54 -5
  138. package/dist/host/operate.js +67 -5
  139. package/dist/host/stack-config.d.ts +64 -0
  140. package/dist/host/stack-config.js +62 -2
  141. package/dist/keys/client.js +4 -1
  142. package/dist/keys/keys.d.ts +13 -6
  143. package/dist/keys/keys.js +9 -8
  144. package/dist/management-openapi.json +1264 -2171
  145. package/dist/mcp/connect.d.ts +26 -22
  146. package/dist/mcp/connect.js +30 -34
  147. package/dist/mcp/pool.d.ts +3 -6
  148. package/dist/mcp/pool.js +14 -28
  149. package/dist/mcp/preview.d.ts +3 -3
  150. package/dist/mcp/preview.js +10 -21
  151. package/dist/mcp/snapshot.d.ts +16 -24
  152. package/dist/mcp/snapshot.js +33 -45
  153. package/dist/model/capabilities.d.ts +26 -0
  154. package/dist/model/capabilities.js +44 -0
  155. package/dist/model/catalog.d.ts +34 -3
  156. package/dist/model/catalog.js +38 -2
  157. package/dist/model/models.d.ts +2 -0
  158. package/dist/model/models.js +1 -1
  159. package/dist/model/native-blocks.d.ts +35 -0
  160. package/dist/model/native-blocks.js +170 -0
  161. package/dist/model/pi-model.js +114 -94
  162. package/dist/openapi.json +12822 -3943
  163. package/dist/reads/types.d.ts +16 -3
  164. package/dist/record/append.d.ts +3 -1
  165. package/dist/record/append.js +1 -0
  166. package/dist/record/envelope.d.ts +5 -1
  167. package/dist/record/envelope.js +7 -3
  168. package/dist/record/environment.d.ts +25 -0
  169. package/dist/record/environment.js +44 -0
  170. package/dist/record/index.d.ts +1 -1
  171. package/dist/record/index.js +1 -1
  172. package/dist/sandbox/disk-fs.d.ts +95 -0
  173. package/dist/sandbox/disk-fs.js +206 -0
  174. package/dist/sandbox/join.d.ts +17 -18
  175. package/dist/sandbox/join.js +46 -15
  176. package/dist/sandbox/manager.d.ts +47 -21
  177. package/dist/sandbox/manager.js +162 -107
  178. package/dist/sandbox/placement.d.ts +14 -13
  179. package/dist/sandbox/placement.js +31 -14
  180. package/dist/sandbox/pods/client.d.ts +9 -2
  181. package/dist/sandbox/pods/lifecycle.d.ts +36 -27
  182. package/dist/sandbox/pods/lifecycle.js +29 -26
  183. package/dist/sandbox/pods/reconcile.js +18 -12
  184. package/dist/sandbox/pods/spec.d.ts +15 -13
  185. package/dist/sandbox/pods/spec.js +17 -20
  186. package/dist/sandbox/records.d.ts +2 -2
  187. package/dist/sandbox/records.js +3 -3
  188. package/dist/sandbox/resolve.d.ts +37 -27
  189. package/dist/sandbox/resolve.js +73 -41
  190. package/dist/sandbox/runtime-tools.d.ts +9 -0
  191. package/dist/sandbox/runtime-tools.js +16 -0
  192. package/dist/sandbox/session-sandbox.d.ts +4 -6
  193. package/dist/sandbox/session-sandbox.js +47 -94
  194. package/dist/sandbox/setup.d.ts +64 -0
  195. package/dist/sandbox/setup.js +160 -0
  196. package/dist/sandbox/share.d.ts +21 -26
  197. package/dist/sandbox/share.js +36 -63
  198. package/dist/sandbox/skills.d.ts +8 -6
  199. package/dist/sandbox/skills.js +24 -23
  200. package/dist/sandbox/tenant-config.d.ts +12 -14
  201. package/dist/sandbox/tenant-config.js +12 -17
  202. package/dist/sandbox/types.d.ts +6 -0
  203. package/dist/store/postgres/drizzle/0020_environments.sql +63 -0
  204. package/dist/store/postgres/drizzle/0021_disk_versions.sql +7 -0
  205. package/dist/store/postgres/drizzle/0022_model_usage_timing.sql +5 -0
  206. package/dist/store/postgres/drizzle/0023_artifact_pages.sql +1 -0
  207. package/dist/store/postgres/drizzle/0024_flat_manifest.sql +7 -0
  208. package/dist/store/postgres/drizzle/0025_environment_manifests.sql +14 -0
  209. package/dist/store/postgres/drizzle/0026_environment_forks.sql +1 -0
  210. package/dist/store/postgres/drizzle/0027_environment_image_digest.sql +1 -0
  211. package/dist/store/postgres/drizzle/meta/_journal.json +56 -0
  212. package/dist/store/postgres/reads.js +123 -17
  213. package/dist/store/postgres/record-writer.d.ts +4 -4
  214. package/dist/store/postgres/record-writer.js +9 -9
  215. package/dist/store/postgres/record.d.ts +7 -0
  216. package/dist/store/postgres/record.js +23 -2
  217. package/dist/store/postgres/schema.d.ts +1126 -736
  218. package/dist/store/postgres/schema.js +136 -73
  219. package/dist/store/postgres/store.js +195 -67
  220. package/dist/store/types.d.ts +165 -50
  221. package/dist/tenant/advance.d.ts +7 -6
  222. package/dist/tenant/advance.js +118 -42
  223. package/dist/tenant/artifact-tool.d.ts +1 -1
  224. package/dist/tenant/artifact-tool.js +46 -26
  225. package/dist/tenant/commands.d.ts +15 -2
  226. package/dist/tenant/commands.js +115 -14
  227. package/dist/tenant/context.d.ts +56 -24
  228. package/dist/tenant/context.js +4 -15
  229. package/dist/tenant/effects.d.ts +1 -1
  230. package/dist/tenant/effects.js +44 -29
  231. package/dist/tenant/environment-manifests.d.ts +57 -0
  232. package/dist/tenant/environment-manifests.js +200 -0
  233. package/dist/tenant/environments.d.ts +174 -0
  234. package/dist/tenant/environments.js +1044 -0
  235. package/dist/tenant/harness-tokens.d.ts +21 -0
  236. package/dist/tenant/harness-tokens.js +61 -0
  237. package/dist/tenant/host-token.d.ts +1 -1
  238. package/dist/tenant/host-token.js +2 -4
  239. package/dist/tenant/identity-file.d.ts +4 -4
  240. package/dist/tenant/identity-file.js +17 -8
  241. package/dist/tenant/issuers.js +3 -3
  242. package/dist/tenant/model-setting.d.ts +14 -0
  243. package/dist/tenant/model-setting.js +51 -0
  244. package/dist/tenant/principals.js +1 -1
  245. package/dist/tenant/reset.js +3 -3
  246. package/dist/tenant/runtime.d.ts +6 -1
  247. package/dist/tenant/runtime.js +7 -1
  248. package/dist/tenant/session.d.ts +3 -3
  249. package/dist/tenant/session.js +0 -14
  250. package/dist/tenant/sessions.d.ts +18 -14
  251. package/dist/tenant/sessions.js +99 -143
  252. package/dist/tenant/signing-keys.d.ts +5 -1
  253. package/dist/tenant/skill-tool.d.ts +3 -3
  254. package/dist/tenant/skill-tool.js +6 -11
  255. package/dist/tenant/status.js +3 -3
  256. package/dist/tenant/sweep.js +13 -7
  257. package/dist/tenant/tool-results.js +1 -1
  258. package/dist/tenant/tool-search.d.ts +7 -11
  259. package/dist/tenant/tool-search.js +8 -5
  260. package/dist/tenant/transcript.d.ts +245 -36
  261. package/dist/tenant/transcript.js +64 -12
  262. package/dist/tenant/turn-timing.d.ts +43 -0
  263. package/dist/tenant/turn-timing.js +39 -0
  264. package/dist/tenant/types.d.ts +2 -0
  265. package/dist/traces/ids.d.ts +41 -0
  266. package/dist/traces/ids.js +81 -0
  267. package/dist/traces/key.d.ts +6 -0
  268. package/dist/traces/key.js +37 -0
  269. package/dist/traces/map.d.ts +113 -0
  270. package/dist/traces/map.js +289 -0
  271. package/dist/traces/options.d.ts +7 -0
  272. package/dist/traces/options.js +1 -0
  273. package/dist/traces/otlp.d.ts +42 -0
  274. package/dist/traces/otlp.js +84 -0
  275. package/dist/traces/projector.d.ts +58 -0
  276. package/dist/traces/projector.js +200 -0
  277. package/dist/traces/read.d.ts +23 -0
  278. package/dist/traces/read.js +16 -0
  279. package/dist/vault/coverage.d.ts +26 -0
  280. package/dist/vault/coverage.js +62 -0
  281. package/dist/vault/error.d.ts +11 -1
  282. package/dist/vault/error.js +5 -1
  283. package/dist/vault/host-model.d.ts +4 -1
  284. package/dist/vault/host-model.js +10 -2
  285. package/dist/vault/service.d.ts +92 -48
  286. package/dist/vault/service.js +462 -376
  287. package/dist/vault/sources.d.ts +5 -16
  288. package/dist/vault/sources.js +6 -8
  289. package/dist/version.d.ts +1 -1
  290. package/dist/version.js +2 -2
  291. package/package.json +13 -13
  292. package/dist/api/http/routes/sandboxes.d.ts +0 -9
  293. package/dist/api/http/routes/sandboxes.js +0 -153
  294. package/dist/api/http/routes/vaults.d.ts +0 -10
  295. package/dist/api/http/routes/vaults.js +0 -139
  296. package/dist/record/sandbox.d.ts +0 -25
  297. package/dist/record/sandbox.js +0 -43
  298. package/dist/sandbox/capability.d.ts +0 -3
  299. package/dist/sandbox/capability.js +0 -10
  300. package/dist/tenant/sandboxes.d.ts +0 -123
  301. package/dist/tenant/sandboxes.js +0 -566
@@ -475,8 +475,8 @@ export declare const sessions: import("drizzle-orm/pg-core").PgTableWithColumns<
475
475
  type: 'always';
476
476
  };
477
477
  }, {}, {}>;
478
- sandboxId: import("drizzle-orm/pg-core").PgColumn<{
479
- name: "sandboxId";
478
+ environmentId: import("drizzle-orm/pg-core").PgColumn<{
479
+ name: "environmentId";
480
480
  tableName: "sessions";
481
481
  dataType: "string";
482
482
  columnType: "PgText";
@@ -872,13 +872,20 @@ export declare const principals: import("drizzle-orm/pg-core").PgTableWithColumn
872
872
  };
873
873
  dialect: 'pg';
874
874
  }>;
875
- export declare const vaults: import("drizzle-orm/pg-core").PgTableWithColumns<{
876
- name: "vaults";
875
+ /**
876
+ * An Environment (D55, protocol 11): its id, kind, labels, the recipe the app asked for and the
877
+ * recipe its compute runs (`applied`, copied from `recipe` when a stopped pod is asked to run),
878
+ * the owner guard, and when it was last used. Kind `pod` adds the pod's lifecycle columns.
879
+ * Sessions name it by id (the session body's `environmentId`). Not the `sandboxes` document
880
+ * table, which holds the virtual backend's compute records, keyed by workspace key.
881
+ */
882
+ export declare const environments: import("drizzle-orm/pg-core").PgTableWithColumns<{
883
+ name: "environments";
877
884
  schema: "nylorun";
878
885
  columns: {
879
886
  id: import("drizzle-orm/pg-core").PgColumn<{
880
887
  name: "id";
881
- tableName: "vaults";
888
+ tableName: "environments";
882
889
  dataType: "custom";
883
890
  columnType: "PgCustomColumn";
884
891
  data: string;
@@ -895,64 +902,68 @@ export declare const vaults: import("drizzle-orm/pg-core").PgTableWithColumns<{
895
902
  }, {}, {
896
903
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
897
904
  }>;
898
- name: import("drizzle-orm/pg-core").PgColumn<{
899
- name: "name";
900
- tableName: "vaults";
905
+ kind: import("drizzle-orm/pg-core").PgColumn<{
906
+ name: "kind";
907
+ tableName: "environments";
901
908
  dataType: "string";
902
909
  columnType: "PgText";
903
- data: string;
910
+ data: "none" | "pod" | "virtual";
904
911
  driverParam: string;
905
912
  notNull: true;
906
913
  hasDefault: false;
907
914
  isPrimaryKey: false;
908
915
  isAutoincrement: false;
909
916
  hasRuntimeDefault: false;
910
- enumValues: [string, ...string[]];
917
+ enumValues: ["virtual", "pod", "none"];
911
918
  baseColumn: never;
912
919
  identity: undefined;
913
920
  generated: undefined;
914
921
  }, {}, {}>;
915
- ownerUserId: import("drizzle-orm/pg-core").PgColumn<{
916
- name: "ownerUserId";
917
- tableName: "vaults";
918
- dataType: "string";
919
- columnType: "PgText";
920
- data: string;
921
- driverParam: string;
922
+ labels: import("drizzle-orm/pg-core").PgColumn<{
923
+ name: "labels";
924
+ tableName: "environments";
925
+ dataType: "custom";
926
+ columnType: "PgCustomColumn";
927
+ data: unknown;
928
+ driverParam: unknown;
922
929
  notNull: true;
923
930
  hasDefault: false;
924
931
  isPrimaryKey: false;
925
932
  isAutoincrement: false;
926
933
  hasRuntimeDefault: false;
927
- enumValues: [string, ...string[]];
934
+ enumValues: undefined;
928
935
  baseColumn: never;
929
936
  identity: undefined;
930
937
  generated: undefined;
931
- }, {}, {}>;
932
- metadataJson: import("drizzle-orm/pg-core").PgColumn<{
933
- name: "metadataJson";
934
- tableName: "vaults";
935
- dataType: "string";
936
- columnType: "PgText";
937
- data: string;
938
- driverParam: string;
939
- notNull: false;
938
+ }, {}, {
939
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
940
+ }>;
941
+ recipe: import("drizzle-orm/pg-core").PgColumn<{
942
+ name: "recipe";
943
+ tableName: "environments";
944
+ dataType: "custom";
945
+ columnType: "PgCustomColumn";
946
+ data: unknown;
947
+ driverParam: unknown;
948
+ notNull: true;
940
949
  hasDefault: false;
941
950
  isPrimaryKey: false;
942
951
  isAutoincrement: false;
943
952
  hasRuntimeDefault: false;
944
- enumValues: [string, ...string[]];
953
+ enumValues: undefined;
945
954
  baseColumn: never;
946
955
  identity: undefined;
947
956
  generated: undefined;
948
- }, {}, {}>;
949
- createdAt: import("drizzle-orm/pg-core").PgColumn<{
950
- name: "createdAt";
951
- tableName: "vaults";
957
+ }, {}, {
958
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
959
+ }>;
960
+ applied: import("drizzle-orm/pg-core").PgColumn<{
961
+ name: "applied";
962
+ tableName: "environments";
952
963
  dataType: "custom";
953
964
  columnType: "PgCustomColumn";
954
- data: string;
955
- driverParam: string;
965
+ data: unknown;
966
+ driverParam: unknown;
956
967
  notNull: true;
957
968
  hasDefault: false;
958
969
  isPrimaryKey: false;
@@ -965,58 +976,48 @@ export declare const vaults: import("drizzle-orm/pg-core").PgTableWithColumns<{
965
976
  }, {}, {
966
977
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
967
978
  }>;
968
- scope: import("drizzle-orm/pg-core").PgColumn<{
969
- name: "scope";
970
- tableName: "vaults";
971
- dataType: "string";
972
- columnType: "PgText";
973
- data: "host" | "installation" | "user";
974
- driverParam: string;
979
+ version: import("drizzle-orm/pg-core").PgColumn<{
980
+ name: "version";
981
+ tableName: "environments";
982
+ dataType: "number";
983
+ columnType: "PgInteger";
984
+ data: number;
985
+ driverParam: string | number;
975
986
  notNull: true;
976
987
  hasDefault: true;
977
988
  isPrimaryKey: false;
978
989
  isAutoincrement: false;
979
990
  hasRuntimeDefault: false;
980
- enumValues: ["user", "installation", "host"];
991
+ enumValues: undefined;
981
992
  baseColumn: never;
982
993
  identity: undefined;
983
994
  generated: undefined;
984
995
  }, {}, {}>;
985
- };
986
- dialect: 'pg';
987
- }>;
988
- /** A credential of a vault: its binding in the clear, its secret sealed. */
989
- export declare const vaultCredentials: import("drizzle-orm/pg-core").PgTableWithColumns<{
990
- name: "vault_credentials";
991
- schema: "nylorun";
992
- columns: {
993
- id: import("drizzle-orm/pg-core").PgColumn<{
994
- name: "id";
995
- tableName: "vault_credentials";
996
- dataType: "custom";
997
- columnType: "PgCustomColumn";
998
- data: string;
999
- driverParam: string;
996
+ appliedVersion: import("drizzle-orm/pg-core").PgColumn<{
997
+ name: "appliedVersion";
998
+ tableName: "environments";
999
+ dataType: "number";
1000
+ columnType: "PgInteger";
1001
+ data: number;
1002
+ driverParam: string | number;
1000
1003
  notNull: true;
1001
- hasDefault: false;
1002
- isPrimaryKey: true;
1004
+ hasDefault: true;
1005
+ isPrimaryKey: false;
1003
1006
  isAutoincrement: false;
1004
1007
  hasRuntimeDefault: false;
1005
1008
  enumValues: undefined;
1006
1009
  baseColumn: never;
1007
1010
  identity: undefined;
1008
1011
  generated: undefined;
1009
- }, {}, {
1010
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1011
- }>;
1012
- vaultId: import("drizzle-orm/pg-core").PgColumn<{
1013
- name: "vaultId";
1014
- tableName: "vault_credentials";
1012
+ }, {}, {}>;
1013
+ ownerUserId: import("drizzle-orm/pg-core").PgColumn<{
1014
+ name: "ownerUserId";
1015
+ tableName: "environments";
1015
1016
  dataType: "string";
1016
1017
  columnType: "PgText";
1017
1018
  data: string;
1018
1019
  driverParam: string;
1019
- notNull: true;
1020
+ notNull: false;
1020
1021
  hasDefault: false;
1021
1022
  isPrimaryKey: false;
1022
1023
  isAutoincrement: false;
@@ -1026,45 +1027,47 @@ export declare const vaultCredentials: import("drizzle-orm/pg-core").PgTableWith
1026
1027
  identity: undefined;
1027
1028
  generated: undefined;
1028
1029
  }, {}, {}>;
1029
- name: import("drizzle-orm/pg-core").PgColumn<{
1030
- name: "name";
1031
- tableName: "vault_credentials";
1030
+ lastUsedAt: import("drizzle-orm/pg-core").PgColumn<{
1031
+ name: "lastUsedAt";
1032
+ tableName: "environments";
1032
1033
  dataType: "string";
1033
- columnType: "PgText";
1034
+ columnType: "PgTimestampString";
1034
1035
  data: string;
1035
1036
  driverParam: string;
1036
1037
  notNull: true;
1037
- hasDefault: false;
1038
+ hasDefault: true;
1038
1039
  isPrimaryKey: false;
1039
1040
  isAutoincrement: false;
1040
1041
  hasRuntimeDefault: false;
1041
- enumValues: [string, ...string[]];
1042
+ enumValues: undefined;
1042
1043
  baseColumn: never;
1043
1044
  identity: undefined;
1044
1045
  generated: undefined;
1045
1046
  }, {}, {}>;
1046
- type: import("drizzle-orm/pg-core").PgColumn<{
1047
- name: "type";
1048
- tableName: "vault_credentials";
1049
- dataType: "string";
1050
- columnType: "PgText";
1051
- data: "bearer" | "environment_secret" | "environment_variable" | "headers" | "model";
1047
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1048
+ name: "createdAt";
1049
+ tableName: "environments";
1050
+ dataType: "custom";
1051
+ columnType: "PgCustomColumn";
1052
+ data: string;
1052
1053
  driverParam: string;
1053
1054
  notNull: true;
1054
1055
  hasDefault: false;
1055
1056
  isPrimaryKey: false;
1056
1057
  isAutoincrement: false;
1057
1058
  hasRuntimeDefault: false;
1058
- enumValues: ["bearer", "headers", "environment_secret", "environment_variable", "model"];
1059
+ enumValues: undefined;
1059
1060
  baseColumn: never;
1060
1061
  identity: undefined;
1061
1062
  generated: undefined;
1062
- }, {}, {}>;
1063
- bindingJson: import("drizzle-orm/pg-core").PgColumn<{
1064
- name: "bindingJson";
1065
- tableName: "vault_credentials";
1066
- dataType: "string";
1067
- columnType: "PgText";
1063
+ }, {}, {
1064
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1065
+ }>;
1066
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1067
+ name: "updatedAt";
1068
+ tableName: "environments";
1069
+ dataType: "custom";
1070
+ columnType: "PgCustomColumn";
1068
1071
  data: string;
1069
1072
  driverParam: string;
1070
1073
  notNull: true;
@@ -1072,16 +1075,18 @@ export declare const vaultCredentials: import("drizzle-orm/pg-core").PgTableWith
1072
1075
  isPrimaryKey: false;
1073
1076
  isAutoincrement: false;
1074
1077
  hasRuntimeDefault: false;
1075
- enumValues: [string, ...string[]];
1078
+ enumValues: undefined;
1076
1079
  baseColumn: never;
1077
1080
  identity: undefined;
1078
1081
  generated: undefined;
1079
- }, {}, {}>;
1080
- expiresAt: import("drizzle-orm/pg-core").PgColumn<{
1081
- name: "expiresAt";
1082
- tableName: "vault_credentials";
1083
- dataType: "string";
1084
- columnType: "PgText";
1082
+ }, {}, {
1083
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1084
+ }>;
1085
+ k8sName: import("drizzle-orm/pg-core").PgColumn<{
1086
+ name: "k8sName";
1087
+ tableName: "environments";
1088
+ dataType: "custom";
1089
+ columnType: "PgCustomColumn";
1085
1090
  data: string;
1086
1091
  driverParam: string;
1087
1092
  notNull: false;
@@ -1089,20 +1094,22 @@ export declare const vaultCredentials: import("drizzle-orm/pg-core").PgTableWith
1089
1094
  isPrimaryKey: false;
1090
1095
  isAutoincrement: false;
1091
1096
  hasRuntimeDefault: false;
1092
- enumValues: [string, ...string[]];
1097
+ enumValues: undefined;
1093
1098
  baseColumn: never;
1094
1099
  identity: undefined;
1095
1100
  generated: undefined;
1096
- }, {}, {}>;
1097
- createdAt: import("drizzle-orm/pg-core").PgColumn<{
1098
- name: "createdAt";
1099
- tableName: "vault_credentials";
1100
- dataType: "custom";
1101
- columnType: "PgCustomColumn";
1102
- data: string;
1103
- driverParam: string;
1101
+ }, {}, {
1102
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1103
+ }>;
1104
+ volumeGen: import("drizzle-orm/pg-core").PgColumn<{
1105
+ name: "volumeGen";
1106
+ tableName: "environments";
1107
+ dataType: "number";
1108
+ columnType: "PgInteger";
1109
+ data: number;
1110
+ driverParam: string | number;
1104
1111
  notNull: true;
1105
- hasDefault: false;
1112
+ hasDefault: true;
1106
1113
  isPrimaryKey: false;
1107
1114
  isAutoincrement: false;
1108
1115
  hasRuntimeDefault: false;
@@ -1110,71 +1117,67 @@ export declare const vaultCredentials: import("drizzle-orm/pg-core").PgTableWith
1110
1117
  baseColumn: never;
1111
1118
  identity: undefined;
1112
1119
  generated: undefined;
1113
- }, {}, {
1114
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1115
- }>;
1116
- rotatedAt: import("drizzle-orm/pg-core").PgColumn<{
1117
- name: "rotatedAt";
1118
- tableName: "vault_credentials";
1120
+ }, {}, {}>;
1121
+ desired: import("drizzle-orm/pg-core").PgColumn<{
1122
+ name: "desired";
1123
+ tableName: "environments";
1119
1124
  dataType: "string";
1120
1125
  columnType: "PgText";
1121
- data: string;
1126
+ data: "deleted" | "running" | "suspended";
1122
1127
  driverParam: string;
1123
1128
  notNull: false;
1124
1129
  hasDefault: false;
1125
1130
  isPrimaryKey: false;
1126
1131
  isAutoincrement: false;
1127
1132
  hasRuntimeDefault: false;
1128
- enumValues: [string, ...string[]];
1133
+ enumValues: ["running", "suspended", "deleted"];
1129
1134
  baseColumn: never;
1130
1135
  identity: undefined;
1131
1136
  generated: undefined;
1132
1137
  }, {}, {}>;
1133
- kekId: import("drizzle-orm/pg-core").PgColumn<{
1134
- name: "kekId";
1135
- tableName: "vault_credentials";
1138
+ observed: import("drizzle-orm/pg-core").PgColumn<{
1139
+ name: "observed";
1140
+ tableName: "environments";
1136
1141
  dataType: "string";
1137
1142
  columnType: "PgText";
1138
- data: string;
1143
+ data: "creating" | "deleting" | "failed" | "lost" | "running" | "suspended";
1139
1144
  driverParam: string;
1140
- notNull: true;
1145
+ notNull: false;
1141
1146
  hasDefault: false;
1142
1147
  isPrimaryKey: false;
1143
1148
  isAutoincrement: false;
1144
1149
  hasRuntimeDefault: false;
1145
- enumValues: [string, ...string[]];
1150
+ enumValues: ["creating", "running", "suspended", "lost", "failed", "deleting"];
1146
1151
  baseColumn: never;
1147
1152
  identity: undefined;
1148
1153
  generated: undefined;
1149
1154
  }, {}, {}>;
1150
- nonce: import("drizzle-orm/pg-core").PgColumn<{
1151
- name: "nonce";
1152
- tableName: "vault_credentials";
1153
- dataType: "custom";
1154
- columnType: "PgCustomColumn";
1155
- data: Uint8Array<ArrayBufferLike>;
1156
- driverParam: Buffer<ArrayBufferLike>;
1157
- notNull: true;
1155
+ podUid: import("drizzle-orm/pg-core").PgColumn<{
1156
+ name: "podUid";
1157
+ tableName: "environments";
1158
+ dataType: "string";
1159
+ columnType: "PgText";
1160
+ data: string;
1161
+ driverParam: string;
1162
+ notNull: false;
1158
1163
  hasDefault: false;
1159
1164
  isPrimaryKey: false;
1160
1165
  isAutoincrement: false;
1161
1166
  hasRuntimeDefault: false;
1162
- enumValues: undefined;
1167
+ enumValues: [string, ...string[]];
1163
1168
  baseColumn: never;
1164
1169
  identity: undefined;
1165
1170
  generated: undefined;
1166
- }, {}, {
1167
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1168
- }>;
1169
- ciphertext: import("drizzle-orm/pg-core").PgColumn<{
1170
- name: "ciphertext";
1171
- tableName: "vault_credentials";
1172
- dataType: "custom";
1173
- columnType: "PgCustomColumn";
1174
- data: Uint8Array<ArrayBufferLike>;
1175
- driverParam: Buffer<ArrayBufferLike>;
1171
+ }, {}, {}>;
1172
+ hostEpoch: import("drizzle-orm/pg-core").PgColumn<{
1173
+ name: "hostEpoch";
1174
+ tableName: "environments";
1175
+ dataType: "number";
1176
+ columnType: "PgInteger";
1177
+ data: number;
1178
+ driverParam: string | number;
1176
1179
  notNull: true;
1177
- hasDefault: false;
1180
+ hasDefault: true;
1178
1181
  isPrimaryKey: false;
1179
1182
  isAutoincrement: false;
1180
1183
  hasRuntimeDefault: false;
@@ -1182,94 +1185,83 @@ export declare const vaultCredentials: import("drizzle-orm/pg-core").PgTableWith
1182
1185
  baseColumn: never;
1183
1186
  identity: undefined;
1184
1187
  generated: undefined;
1185
- }, {}, {
1186
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1187
- }>;
1188
- wrappedDek: import("drizzle-orm/pg-core").PgColumn<{
1189
- name: "wrappedDek";
1190
- tableName: "vault_credentials";
1191
- dataType: "custom";
1192
- columnType: "PgCustomColumn";
1193
- data: Uint8Array<ArrayBufferLike>;
1194
- driverParam: Buffer<ArrayBufferLike>;
1195
- notNull: true;
1188
+ }, {}, {}>;
1189
+ joinTokenHash: import("drizzle-orm/pg-core").PgColumn<{
1190
+ name: "joinTokenHash";
1191
+ tableName: "environments";
1192
+ dataType: "string";
1193
+ columnType: "PgText";
1194
+ data: string;
1195
+ driverParam: string;
1196
+ notNull: false;
1196
1197
  hasDefault: false;
1197
1198
  isPrimaryKey: false;
1198
1199
  isAutoincrement: false;
1199
1200
  hasRuntimeDefault: false;
1200
- enumValues: undefined;
1201
+ enumValues: [string, ...string[]];
1201
1202
  baseColumn: never;
1202
1203
  identity: undefined;
1203
1204
  generated: undefined;
1204
- }, {}, {
1205
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1206
- }>;
1207
- };
1208
- dialect: 'pg';
1209
- }>;
1210
- export declare const vaultAudit: import("drizzle-orm/pg-core").PgTableWithColumns<{
1211
- name: "vault_audit";
1212
- schema: "nylorun";
1213
- columns: {
1214
- ord: import("drizzle-orm/pg-core").PgColumn<{
1215
- name: "ord";
1216
- tableName: "vault_audit";
1205
+ }, {}, {}>;
1206
+ rev: import("drizzle-orm/pg-core").PgColumn<{
1207
+ name: "rev";
1208
+ tableName: "environments";
1217
1209
  dataType: "number";
1218
- columnType: "PgBigInt53";
1210
+ columnType: "PgInteger";
1219
1211
  data: number;
1220
1212
  driverParam: string | number;
1221
1213
  notNull: true;
1222
1214
  hasDefault: true;
1223
- isPrimaryKey: true;
1215
+ isPrimaryKey: false;
1224
1216
  isAutoincrement: false;
1225
1217
  hasRuntimeDefault: false;
1226
1218
  enumValues: undefined;
1227
1219
  baseColumn: never;
1228
- identity: "always";
1220
+ identity: undefined;
1229
1221
  generated: undefined;
1230
1222
  }, {}, {}>;
1231
- id: import("drizzle-orm/pg-core").PgColumn<{
1232
- name: "id";
1233
- tableName: "vault_audit";
1234
- dataType: "string";
1235
- columnType: "PgText";
1236
- data: string;
1223
+ lastActiveAt: import("drizzle-orm/pg-core").PgColumn<{
1224
+ name: "lastActiveAt";
1225
+ tableName: "environments";
1226
+ dataType: "date";
1227
+ columnType: "PgTimestamp";
1228
+ data: Date;
1237
1229
  driverParam: string;
1238
- notNull: true;
1230
+ notNull: false;
1239
1231
  hasDefault: false;
1240
1232
  isPrimaryKey: false;
1241
1233
  isAutoincrement: false;
1242
1234
  hasRuntimeDefault: false;
1243
- enumValues: [string, ...string[]];
1235
+ enumValues: undefined;
1244
1236
  baseColumn: never;
1245
1237
  identity: undefined;
1246
1238
  generated: undefined;
1247
1239
  }, {}, {}>;
1248
- at: import("drizzle-orm/pg-core").PgColumn<{
1249
- name: "at";
1250
- tableName: "vault_audit";
1251
- dataType: "string";
1252
- columnType: "PgText";
1253
- data: string;
1240
+ startedAt: import("drizzle-orm/pg-core").PgColumn<{
1241
+ name: "startedAt";
1242
+ tableName: "environments";
1243
+ dataType: "date";
1244
+ columnType: "PgTimestamp";
1245
+ data: Date;
1254
1246
  driverParam: string;
1255
- notNull: true;
1247
+ notNull: false;
1256
1248
  hasDefault: false;
1257
1249
  isPrimaryKey: false;
1258
1250
  isAutoincrement: false;
1259
1251
  hasRuntimeDefault: false;
1260
- enumValues: [string, ...string[]];
1252
+ enumValues: undefined;
1261
1253
  baseColumn: never;
1262
1254
  identity: undefined;
1263
1255
  generated: undefined;
1264
1256
  }, {}, {}>;
1265
- actor: import("drizzle-orm/pg-core").PgColumn<{
1266
- name: "actor";
1267
- tableName: "vault_audit";
1257
+ reason: import("drizzle-orm/pg-core").PgColumn<{
1258
+ name: "reason";
1259
+ tableName: "environments";
1268
1260
  dataType: "string";
1269
1261
  columnType: "PgText";
1270
1262
  data: string;
1271
1263
  driverParam: string;
1272
- notNull: true;
1264
+ notNull: false;
1273
1265
  hasDefault: false;
1274
1266
  isPrimaryKey: false;
1275
1267
  isAutoincrement: false;
@@ -1279,26 +1271,28 @@ export declare const vaultAudit: import("drizzle-orm/pg-core").PgTableWithColumn
1279
1271
  identity: undefined;
1280
1272
  generated: undefined;
1281
1273
  }, {}, {}>;
1282
- action: import("drizzle-orm/pg-core").PgColumn<{
1283
- name: "action";
1284
- tableName: "vault_audit";
1285
- dataType: "string";
1286
- columnType: "PgText";
1274
+ retiring: import("drizzle-orm/pg-core").PgColumn<{
1275
+ name: "retiring";
1276
+ tableName: "environments";
1277
+ dataType: "custom";
1278
+ columnType: "PgCustomColumn";
1287
1279
  data: string;
1288
1280
  driverParam: string;
1289
- notNull: true;
1281
+ notNull: false;
1290
1282
  hasDefault: false;
1291
1283
  isPrimaryKey: false;
1292
1284
  isAutoincrement: false;
1293
1285
  hasRuntimeDefault: false;
1294
- enumValues: [string, ...string[]];
1286
+ enumValues: undefined;
1295
1287
  baseColumn: never;
1296
1288
  identity: undefined;
1297
1289
  generated: undefined;
1298
- }, {}, {}>;
1299
- vaultId: import("drizzle-orm/pg-core").PgColumn<{
1300
- name: "vaultId";
1301
- tableName: "vault_audit";
1290
+ }, {}, {
1291
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1292
+ }>;
1293
+ volumeId: import("drizzle-orm/pg-core").PgColumn<{
1294
+ name: "volumeId";
1295
+ tableName: "environments";
1302
1296
  dataType: "string";
1303
1297
  columnType: "PgText";
1304
1298
  data: string;
@@ -1313,11 +1307,11 @@ export declare const vaultAudit: import("drizzle-orm/pg-core").PgTableWithColumn
1313
1307
  identity: undefined;
1314
1308
  generated: undefined;
1315
1309
  }, {}, {}>;
1316
- credentialId: import("drizzle-orm/pg-core").PgColumn<{
1317
- name: "credentialId";
1318
- tableName: "vault_audit";
1319
- dataType: "string";
1320
- columnType: "PgText";
1310
+ imageDigest: import("drizzle-orm/pg-core").PgColumn<{
1311
+ name: "imageDigest";
1312
+ tableName: "environments";
1313
+ dataType: "custom";
1314
+ columnType: "PgCustomColumn";
1321
1315
  data: string;
1322
1316
  driverParam: string;
1323
1317
  notNull: false;
@@ -1325,182 +1319,183 @@ export declare const vaultAudit: import("drizzle-orm/pg-core").PgTableWithColumn
1325
1319
  isPrimaryKey: false;
1326
1320
  isAutoincrement: false;
1327
1321
  hasRuntimeDefault: false;
1328
- enumValues: [string, ...string[]];
1322
+ enumValues: undefined;
1329
1323
  baseColumn: never;
1330
1324
  identity: undefined;
1331
1325
  generated: undefined;
1332
- }, {}, {}>;
1333
- sessionId: import("drizzle-orm/pg-core").PgColumn<{
1334
- name: "sessionId";
1335
- tableName: "vault_audit";
1336
- dataType: "string";
1337
- columnType: "PgText";
1338
- data: string;
1339
- driverParam: string;
1326
+ }, {}, {
1327
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1328
+ }>;
1329
+ diskOp: import("drizzle-orm/pg-core").PgColumn<{
1330
+ name: "diskOp";
1331
+ tableName: "environments";
1332
+ dataType: "custom";
1333
+ columnType: "PgCustomColumn";
1334
+ data: unknown;
1335
+ driverParam: unknown;
1340
1336
  notNull: false;
1341
1337
  hasDefault: false;
1342
1338
  isPrimaryKey: false;
1343
1339
  isAutoincrement: false;
1344
1340
  hasRuntimeDefault: false;
1345
- enumValues: [string, ...string[]];
1341
+ enumValues: undefined;
1346
1342
  baseColumn: never;
1347
1343
  identity: undefined;
1348
1344
  generated: undefined;
1349
- }, {}, {}>;
1350
- target: import("drizzle-orm/pg-core").PgColumn<{
1351
- name: "target";
1352
- tableName: "vault_audit";
1353
- dataType: "string";
1354
- columnType: "PgText";
1355
- data: string;
1356
- driverParam: string;
1345
+ }, {}, {
1346
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1347
+ }>;
1348
+ diskSeed: import("drizzle-orm/pg-core").PgColumn<{
1349
+ name: "diskSeed";
1350
+ tableName: "environments";
1351
+ dataType: "custom";
1352
+ columnType: "PgCustomColumn";
1353
+ data: unknown;
1354
+ driverParam: unknown;
1357
1355
  notNull: false;
1358
1356
  hasDefault: false;
1359
1357
  isPrimaryKey: false;
1360
1358
  isAutoincrement: false;
1361
1359
  hasRuntimeDefault: false;
1362
- enumValues: [string, ...string[]];
1360
+ enumValues: undefined;
1363
1361
  baseColumn: never;
1364
1362
  identity: undefined;
1365
1363
  generated: undefined;
1366
- }, {}, {}>;
1367
- outcome: import("drizzle-orm/pg-core").PgColumn<{
1368
- name: "outcome";
1369
- tableName: "vault_audit";
1370
- dataType: "string";
1371
- columnType: "PgText";
1364
+ }, {}, {
1365
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1366
+ }>;
1367
+ manifestName: import("drizzle-orm/pg-core").PgColumn<{
1368
+ name: "manifestName";
1369
+ tableName: "environments";
1370
+ dataType: "custom";
1371
+ columnType: "PgCustomColumn";
1372
1372
  data: string;
1373
1373
  driverParam: string;
1374
- notNull: true;
1374
+ notNull: false;
1375
1375
  hasDefault: false;
1376
1376
  isPrimaryKey: false;
1377
1377
  isAutoincrement: false;
1378
1378
  hasRuntimeDefault: false;
1379
- enumValues: [string, ...string[]];
1379
+ enumValues: undefined;
1380
1380
  baseColumn: never;
1381
1381
  identity: undefined;
1382
1382
  generated: undefined;
1383
- }, {}, {}>;
1384
- };
1385
- dialect: 'pg';
1386
- }>;
1387
- export declare const vaultIdempotency: import("drizzle-orm/pg-core").PgTableWithColumns<{
1388
- name: "vault_idempotency";
1389
- schema: "nylorun";
1390
- columns: {
1391
- id: import("drizzle-orm/pg-core").PgColumn<{
1392
- name: "id";
1393
- tableName: "vault_idempotency";
1394
- dataType: "string";
1395
- columnType: "PgText";
1396
- data: string;
1397
- driverParam: string;
1398
- notNull: true;
1383
+ }, {}, {
1384
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1385
+ }>;
1386
+ manifestVersion: import("drizzle-orm/pg-core").PgColumn<{
1387
+ name: "manifestVersion";
1388
+ tableName: "environments";
1389
+ dataType: "number";
1390
+ columnType: "PgInteger";
1391
+ data: number;
1392
+ driverParam: string | number;
1393
+ notNull: false;
1399
1394
  hasDefault: false;
1400
- isPrimaryKey: true;
1395
+ isPrimaryKey: false;
1401
1396
  isAutoincrement: false;
1402
1397
  hasRuntimeDefault: false;
1403
- enumValues: [string, ...string[]];
1398
+ enumValues: undefined;
1404
1399
  baseColumn: never;
1405
1400
  identity: undefined;
1406
1401
  generated: undefined;
1407
1402
  }, {}, {}>;
1408
- bodyHash: import("drizzle-orm/pg-core").PgColumn<{
1409
- name: "bodyHash";
1410
- tableName: "vault_idempotency";
1411
- dataType: "string";
1412
- columnType: "PgText";
1403
+ manifestHash: import("drizzle-orm/pg-core").PgColumn<{
1404
+ name: "manifestHash";
1405
+ tableName: "environments";
1406
+ dataType: "custom";
1407
+ columnType: "PgCustomColumn";
1413
1408
  data: string;
1414
1409
  driverParam: string;
1415
- notNull: true;
1410
+ notNull: false;
1416
1411
  hasDefault: false;
1417
1412
  isPrimaryKey: false;
1418
1413
  isAutoincrement: false;
1419
1414
  hasRuntimeDefault: false;
1420
- enumValues: [string, ...string[]];
1415
+ enumValues: undefined;
1421
1416
  baseColumn: never;
1422
1417
  identity: undefined;
1423
1418
  generated: undefined;
1424
- }, {}, {}>;
1425
- response: import("drizzle-orm/pg-core").PgColumn<{
1426
- name: "response";
1427
- tableName: "vault_idempotency";
1428
- dataType: "string";
1429
- columnType: "PgText";
1430
- data: string;
1431
- driverParam: string;
1432
- notNull: true;
1419
+ }, {}, {
1420
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1421
+ }>;
1422
+ forkedFrom: import("drizzle-orm/pg-core").PgColumn<{
1423
+ name: "forkedFrom";
1424
+ tableName: "environments";
1425
+ dataType: "custom";
1426
+ columnType: "PgCustomColumn";
1427
+ data: unknown;
1428
+ driverParam: unknown;
1429
+ notNull: false;
1433
1430
  hasDefault: false;
1434
1431
  isPrimaryKey: false;
1435
1432
  isAutoincrement: false;
1436
1433
  hasRuntimeDefault: false;
1437
- enumValues: [string, ...string[]];
1434
+ enumValues: undefined;
1438
1435
  baseColumn: never;
1439
1436
  identity: undefined;
1440
1437
  generated: undefined;
1441
- }, {}, {}>;
1438
+ }, {}, {
1439
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1440
+ }>;
1442
1441
  };
1443
1442
  dialect: 'pg';
1444
1443
  }>;
1445
- export declare const tenantSettings: import("drizzle-orm/pg-core").PgTableWithColumns<{
1446
- name: "tenant_settings";
1444
+ /**
1445
+ * An environment manifest's versions (D63): a named, versioned definition of a kind of
1446
+ * Environment, saved like an agent. A version is written once and never changed; a save whose
1447
+ * body hashes the same as the latest writes nothing.
1448
+ */
1449
+ export declare const environmentManifests: import("drizzle-orm/pg-core").PgTableWithColumns<{
1450
+ name: "environment_manifests";
1447
1451
  schema: "nylorun";
1448
1452
  columns: {
1449
- key: import("drizzle-orm/pg-core").PgColumn<{
1450
- name: "key";
1451
- tableName: "tenant_settings";
1452
- dataType: "string";
1453
- columnType: "PgText";
1453
+ name: import("drizzle-orm/pg-core").PgColumn<{
1454
+ name: "name";
1455
+ tableName: "environment_manifests";
1456
+ dataType: "custom";
1457
+ columnType: "PgCustomColumn";
1454
1458
  data: string;
1455
1459
  driverParam: string;
1456
1460
  notNull: true;
1457
1461
  hasDefault: false;
1458
- isPrimaryKey: true;
1462
+ isPrimaryKey: false;
1459
1463
  isAutoincrement: false;
1460
1464
  hasRuntimeDefault: false;
1461
- enumValues: [string, ...string[]];
1465
+ enumValues: undefined;
1462
1466
  baseColumn: never;
1463
1467
  identity: undefined;
1464
1468
  generated: undefined;
1465
- }, {}, {}>;
1466
- value: import("drizzle-orm/pg-core").PgColumn<{
1467
- name: "value";
1468
- tableName: "tenant_settings";
1469
- dataType: "string";
1470
- columnType: "PgText";
1471
- data: string;
1472
- driverParam: string;
1469
+ }, {}, {
1470
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1471
+ }>;
1472
+ version: import("drizzle-orm/pg-core").PgColumn<{
1473
+ name: "version";
1474
+ tableName: "environment_manifests";
1475
+ dataType: "number";
1476
+ columnType: "PgInteger";
1477
+ data: number;
1478
+ driverParam: string | number;
1473
1479
  notNull: true;
1474
1480
  hasDefault: false;
1475
1481
  isPrimaryKey: false;
1476
1482
  isAutoincrement: false;
1477
1483
  hasRuntimeDefault: false;
1478
- enumValues: [string, ...string[]];
1484
+ enumValues: undefined;
1479
1485
  baseColumn: never;
1480
1486
  identity: undefined;
1481
1487
  generated: undefined;
1482
1488
  }, {}, {}>;
1483
- };
1484
- dialect: 'pg';
1485
- }>;
1486
- /**
1487
- * The Tenant's signing keys (capability links, run and host tokens): the
1488
- * private half sealed, the public JWK not.
1489
- */
1490
- export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColumns<{
1491
- name: "signing_keys";
1492
- schema: "nylorun";
1493
- columns: {
1494
- id: import("drizzle-orm/pg-core").PgColumn<{
1495
- name: "id";
1496
- tableName: "signing_keys";
1489
+ body: import("drizzle-orm/pg-core").PgColumn<{
1490
+ name: "body";
1491
+ tableName: "environment_manifests";
1497
1492
  dataType: "custom";
1498
1493
  columnType: "PgCustomColumn";
1499
- data: string;
1500
- driverParam: string;
1494
+ data: unknown;
1495
+ driverParam: unknown;
1501
1496
  notNull: true;
1502
1497
  hasDefault: false;
1503
- isPrimaryKey: true;
1498
+ isPrimaryKey: false;
1504
1499
  isAutoincrement: false;
1505
1500
  hasRuntimeDefault: false;
1506
1501
  enumValues: undefined;
@@ -1510,43 +1505,96 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1510
1505
  }, {}, {
1511
1506
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1512
1507
  }>;
1513
- state: import("drizzle-orm/pg-core").PgColumn<{
1514
- name: "state";
1515
- tableName: "signing_keys";
1516
- dataType: "string";
1517
- columnType: "PgText";
1518
- data: "current" | "previous" | "revoked" | "standby";
1508
+ hash: import("drizzle-orm/pg-core").PgColumn<{
1509
+ name: "hash";
1510
+ tableName: "environment_manifests";
1511
+ dataType: "custom";
1512
+ columnType: "PgCustomColumn";
1513
+ data: string;
1519
1514
  driverParam: string;
1520
1515
  notNull: true;
1521
1516
  hasDefault: false;
1522
1517
  isPrimaryKey: false;
1523
1518
  isAutoincrement: false;
1524
1519
  hasRuntimeDefault: false;
1525
- enumValues: ["standby", "current", "previous", "revoked"];
1520
+ enumValues: undefined;
1526
1521
  baseColumn: never;
1527
1522
  identity: undefined;
1528
1523
  generated: undefined;
1529
- }, {}, {}>;
1530
- alg: import("drizzle-orm/pg-core").PgColumn<{
1531
- name: "alg";
1532
- tableName: "signing_keys";
1533
- dataType: "string";
1534
- columnType: "PgText";
1535
- data: "ES256";
1524
+ }, {}, {
1525
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1526
+ }>;
1527
+ savedBy: import("drizzle-orm/pg-core").PgColumn<{
1528
+ name: "savedBy";
1529
+ tableName: "environment_manifests";
1530
+ dataType: "custom";
1531
+ columnType: "PgCustomColumn";
1532
+ data: unknown;
1533
+ driverParam: unknown;
1534
+ notNull: true;
1535
+ hasDefault: false;
1536
+ isPrimaryKey: false;
1537
+ isAutoincrement: false;
1538
+ hasRuntimeDefault: false;
1539
+ enumValues: undefined;
1540
+ baseColumn: never;
1541
+ identity: undefined;
1542
+ generated: undefined;
1543
+ }, {}, {
1544
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1545
+ }>;
1546
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1547
+ name: "createdAt";
1548
+ tableName: "environment_manifests";
1549
+ dataType: "custom";
1550
+ columnType: "PgCustomColumn";
1551
+ data: string;
1536
1552
  driverParam: string;
1537
1553
  notNull: true;
1538
1554
  hasDefault: false;
1539
1555
  isPrimaryKey: false;
1540
1556
  isAutoincrement: false;
1541
1557
  hasRuntimeDefault: false;
1542
- enumValues: ["ES256"];
1558
+ enumValues: undefined;
1543
1559
  baseColumn: never;
1544
1560
  identity: undefined;
1545
1561
  generated: undefined;
1546
- }, {}, {}>;
1547
- publicJwk: import("drizzle-orm/pg-core").PgColumn<{
1548
- name: "publicJwk";
1549
- tableName: "signing_keys";
1562
+ }, {}, {
1563
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1564
+ }>;
1565
+ };
1566
+ dialect: 'pg';
1567
+ }>;
1568
+ /**
1569
+ * A vault (D56): the host model's (`id = 'host'`), or one Environment's, created and deleted with
1570
+ * it (`environment_id`, unique, deleted with the Environment's row). No other vault exists.
1571
+ */
1572
+ export declare const vaults: import("drizzle-orm/pg-core").PgTableWithColumns<{
1573
+ name: "vaults";
1574
+ schema: "nylorun";
1575
+ columns: {
1576
+ id: import("drizzle-orm/pg-core").PgColumn<{
1577
+ name: "id";
1578
+ tableName: "vaults";
1579
+ dataType: "custom";
1580
+ columnType: "PgCustomColumn";
1581
+ data: string;
1582
+ driverParam: string;
1583
+ notNull: true;
1584
+ hasDefault: false;
1585
+ isPrimaryKey: true;
1586
+ isAutoincrement: false;
1587
+ hasRuntimeDefault: false;
1588
+ enumValues: undefined;
1589
+ baseColumn: never;
1590
+ identity: undefined;
1591
+ generated: undefined;
1592
+ }, {}, {
1593
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1594
+ }>;
1595
+ name: import("drizzle-orm/pg-core").PgColumn<{
1596
+ name: "name";
1597
+ tableName: "vaults";
1550
1598
  dataType: "string";
1551
1599
  columnType: "PgText";
1552
1600
  data: string;
@@ -1561,14 +1609,14 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1561
1609
  identity: undefined;
1562
1610
  generated: undefined;
1563
1611
  }, {}, {}>;
1564
- kekId: import("drizzle-orm/pg-core").PgColumn<{
1565
- name: "kekId";
1566
- tableName: "signing_keys";
1612
+ metadataJson: import("drizzle-orm/pg-core").PgColumn<{
1613
+ name: "metadataJson";
1614
+ tableName: "vaults";
1567
1615
  dataType: "string";
1568
1616
  columnType: "PgText";
1569
1617
  data: string;
1570
1618
  driverParam: string;
1571
- notNull: true;
1619
+ notNull: false;
1572
1620
  hasDefault: false;
1573
1621
  isPrimaryKey: false;
1574
1622
  isAutoincrement: false;
@@ -1578,13 +1626,13 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1578
1626
  identity: undefined;
1579
1627
  generated: undefined;
1580
1628
  }, {}, {}>;
1581
- nonce: import("drizzle-orm/pg-core").PgColumn<{
1582
- name: "nonce";
1583
- tableName: "signing_keys";
1629
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1630
+ name: "createdAt";
1631
+ tableName: "vaults";
1584
1632
  dataType: "custom";
1585
1633
  columnType: "PgCustomColumn";
1586
- data: Uint8Array<ArrayBufferLike>;
1587
- driverParam: Buffer<ArrayBufferLike>;
1634
+ data: string;
1635
+ driverParam: string;
1588
1636
  notNull: true;
1589
1637
  hasDefault: false;
1590
1638
  isPrimaryKey: false;
@@ -1597,14 +1645,14 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1597
1645
  }, {}, {
1598
1646
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1599
1647
  }>;
1600
- ciphertext: import("drizzle-orm/pg-core").PgColumn<{
1601
- name: "ciphertext";
1602
- tableName: "signing_keys";
1648
+ environmentId: import("drizzle-orm/pg-core").PgColumn<{
1649
+ name: "environmentId";
1650
+ tableName: "vaults";
1603
1651
  dataType: "custom";
1604
1652
  columnType: "PgCustomColumn";
1605
- data: Uint8Array<ArrayBufferLike>;
1606
- driverParam: Buffer<ArrayBufferLike>;
1607
- notNull: true;
1653
+ data: string;
1654
+ driverParam: string;
1655
+ notNull: false;
1608
1656
  hasDefault: false;
1609
1657
  isPrimaryKey: false;
1610
1658
  isAutoincrement: false;
@@ -1616,16 +1664,24 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1616
1664
  }, {}, {
1617
1665
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1618
1666
  }>;
1619
- wrappedDek: import("drizzle-orm/pg-core").PgColumn<{
1620
- name: "wrappedDek";
1621
- tableName: "signing_keys";
1667
+ };
1668
+ dialect: 'pg';
1669
+ }>;
1670
+ /** A credential of a vault: its binding in the clear, its secret sealed. */
1671
+ export declare const vaultCredentials: import("drizzle-orm/pg-core").PgTableWithColumns<{
1672
+ name: "vault_credentials";
1673
+ schema: "nylorun";
1674
+ columns: {
1675
+ id: import("drizzle-orm/pg-core").PgColumn<{
1676
+ name: "id";
1677
+ tableName: "vault_credentials";
1622
1678
  dataType: "custom";
1623
1679
  columnType: "PgCustomColumn";
1624
- data: Uint8Array<ArrayBufferLike>;
1625
- driverParam: Buffer<ArrayBufferLike>;
1680
+ data: string;
1681
+ driverParam: string;
1626
1682
  notNull: true;
1627
1683
  hasDefault: false;
1628
- isPrimaryKey: false;
1684
+ isPrimaryKey: true;
1629
1685
  isAutoincrement: false;
1630
1686
  hasRuntimeDefault: false;
1631
1687
  enumValues: undefined;
@@ -1635,9 +1691,9 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1635
1691
  }, {}, {
1636
1692
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1637
1693
  }>;
1638
- createdAt: import("drizzle-orm/pg-core").PgColumn<{
1639
- name: "createdAt";
1640
- tableName: "signing_keys";
1694
+ vaultId: import("drizzle-orm/pg-core").PgColumn<{
1695
+ name: "vaultId";
1696
+ tableName: "vault_credentials";
1641
1697
  dataType: "string";
1642
1698
  columnType: "PgText";
1643
1699
  data: string;
@@ -1652,14 +1708,14 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1652
1708
  identity: undefined;
1653
1709
  generated: undefined;
1654
1710
  }, {}, {}>;
1655
- activatedAt: import("drizzle-orm/pg-core").PgColumn<{
1656
- name: "activatedAt";
1657
- tableName: "signing_keys";
1711
+ name: import("drizzle-orm/pg-core").PgColumn<{
1712
+ name: "name";
1713
+ tableName: "vault_credentials";
1658
1714
  dataType: "string";
1659
1715
  columnType: "PgText";
1660
1716
  data: string;
1661
1717
  driverParam: string;
1662
- notNull: false;
1718
+ notNull: true;
1663
1719
  hasDefault: false;
1664
1720
  isPrimaryKey: false;
1665
1721
  isAutoincrement: false;
@@ -1669,31 +1725,31 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1669
1725
  identity: undefined;
1670
1726
  generated: undefined;
1671
1727
  }, {}, {}>;
1672
- retiredAt: import("drizzle-orm/pg-core").PgColumn<{
1673
- name: "retiredAt";
1674
- tableName: "signing_keys";
1728
+ type: import("drizzle-orm/pg-core").PgColumn<{
1729
+ name: "type";
1730
+ tableName: "vault_credentials";
1675
1731
  dataType: "string";
1676
1732
  columnType: "PgText";
1677
- data: string;
1733
+ data: "bearer" | "environment_secret" | "environment_variable" | "headers" | "model";
1678
1734
  driverParam: string;
1679
- notNull: false;
1735
+ notNull: true;
1680
1736
  hasDefault: false;
1681
1737
  isPrimaryKey: false;
1682
1738
  isAutoincrement: false;
1683
1739
  hasRuntimeDefault: false;
1684
- enumValues: [string, ...string[]];
1740
+ enumValues: ["bearer", "headers", "environment_secret", "environment_variable", "model"];
1685
1741
  baseColumn: never;
1686
1742
  identity: undefined;
1687
1743
  generated: undefined;
1688
1744
  }, {}, {}>;
1689
- revokedAt: import("drizzle-orm/pg-core").PgColumn<{
1690
- name: "revokedAt";
1691
- tableName: "signing_keys";
1745
+ bindingJson: import("drizzle-orm/pg-core").PgColumn<{
1746
+ name: "bindingJson";
1747
+ tableName: "vault_credentials";
1692
1748
  dataType: "string";
1693
1749
  columnType: "PgText";
1694
1750
  data: string;
1695
1751
  driverParam: string;
1696
- notNull: false;
1752
+ notNull: true;
1697
1753
  hasDefault: false;
1698
1754
  isPrimaryKey: false;
1699
1755
  isAutoincrement: false;
@@ -1703,41 +1759,26 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1703
1759
  identity: undefined;
1704
1760
  generated: undefined;
1705
1761
  }, {}, {}>;
1706
- };
1707
- dialect: 'pg';
1708
- }>;
1709
- /**
1710
- * The model usage ledger (P1.3): one row per model call a gate served, written after the call.
1711
- * A second row for the same effect (a call the gate ran again after a gateway restart) is
1712
- * flagged `duplicate`; both were billed. Budgets read their spend from it. Token counts are 0
1713
- * when the provider sent none.
1714
- */
1715
- export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumns<{
1716
- name: "model_usage";
1717
- schema: "nylorun";
1718
- columns: {
1719
- id: import("drizzle-orm/pg-core").PgColumn<{
1720
- name: "id";
1721
- tableName: "model_usage";
1722
- dataType: "custom";
1723
- columnType: "PgCustomColumn";
1762
+ expiresAt: import("drizzle-orm/pg-core").PgColumn<{
1763
+ name: "expiresAt";
1764
+ tableName: "vault_credentials";
1765
+ dataType: "string";
1766
+ columnType: "PgText";
1724
1767
  data: string;
1725
1768
  driverParam: string;
1726
- notNull: true;
1769
+ notNull: false;
1727
1770
  hasDefault: false;
1728
- isPrimaryKey: true;
1771
+ isPrimaryKey: false;
1729
1772
  isAutoincrement: false;
1730
1773
  hasRuntimeDefault: false;
1731
- enumValues: undefined;
1774
+ enumValues: [string, ...string[]];
1732
1775
  baseColumn: never;
1733
1776
  identity: undefined;
1734
1777
  generated: undefined;
1735
- }, {}, {
1736
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1737
- }>;
1738
- effectKey: import("drizzle-orm/pg-core").PgColumn<{
1739
- name: "effectKey";
1740
- tableName: "model_usage";
1778
+ }, {}, {}>;
1779
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1780
+ name: "createdAt";
1781
+ tableName: "vault_credentials";
1741
1782
  dataType: "custom";
1742
1783
  columnType: "PgCustomColumn";
1743
1784
  data: string;
@@ -1754,49 +1795,49 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1754
1795
  }, {}, {
1755
1796
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1756
1797
  }>;
1757
- tokensReported: import("drizzle-orm/pg-core").PgColumn<{
1758
- name: "tokensReported";
1759
- tableName: "model_usage";
1760
- dataType: "boolean";
1761
- columnType: "PgBoolean";
1762
- data: boolean;
1763
- driverParam: boolean;
1798
+ rotatedAt: import("drizzle-orm/pg-core").PgColumn<{
1799
+ name: "rotatedAt";
1800
+ tableName: "vault_credentials";
1801
+ dataType: "string";
1802
+ columnType: "PgText";
1803
+ data: string;
1804
+ driverParam: string;
1764
1805
  notNull: false;
1765
1806
  hasDefault: false;
1766
1807
  isPrimaryKey: false;
1767
1808
  isAutoincrement: false;
1768
1809
  hasRuntimeDefault: false;
1769
- enumValues: undefined;
1810
+ enumValues: [string, ...string[]];
1770
1811
  baseColumn: never;
1771
1812
  identity: undefined;
1772
1813
  generated: undefined;
1773
1814
  }, {}, {}>;
1774
- costKnown: import("drizzle-orm/pg-core").PgColumn<{
1775
- name: "costKnown";
1776
- tableName: "model_usage";
1777
- dataType: "boolean";
1778
- columnType: "PgBoolean";
1779
- data: boolean;
1780
- driverParam: boolean;
1781
- notNull: false;
1815
+ kekId: import("drizzle-orm/pg-core").PgColumn<{
1816
+ name: "kekId";
1817
+ tableName: "vault_credentials";
1818
+ dataType: "string";
1819
+ columnType: "PgText";
1820
+ data: string;
1821
+ driverParam: string;
1822
+ notNull: true;
1782
1823
  hasDefault: false;
1783
1824
  isPrimaryKey: false;
1784
1825
  isAutoincrement: false;
1785
1826
  hasRuntimeDefault: false;
1786
- enumValues: undefined;
1827
+ enumValues: [string, ...string[]];
1787
1828
  baseColumn: never;
1788
1829
  identity: undefined;
1789
1830
  generated: undefined;
1790
1831
  }, {}, {}>;
1791
- txid: import("drizzle-orm/pg-core").PgColumn<{
1792
- name: "txid";
1793
- tableName: "model_usage";
1832
+ nonce: import("drizzle-orm/pg-core").PgColumn<{
1833
+ name: "nonce";
1834
+ tableName: "vault_credentials";
1794
1835
  dataType: "custom";
1795
1836
  columnType: "PgCustomColumn";
1796
- data: string;
1797
- driverParam: unknown;
1837
+ data: Uint8Array<ArrayBufferLike>;
1838
+ driverParam: Buffer<ArrayBufferLike>;
1798
1839
  notNull: true;
1799
- hasDefault: true;
1840
+ hasDefault: false;
1800
1841
  isPrimaryKey: false;
1801
1842
  isAutoincrement: false;
1802
1843
  hasRuntimeDefault: false;
@@ -1807,13 +1848,13 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1807
1848
  }, {}, {
1808
1849
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1809
1850
  }>;
1810
- sessionId: import("drizzle-orm/pg-core").PgColumn<{
1811
- name: "sessionId";
1812
- tableName: "model_usage";
1851
+ ciphertext: import("drizzle-orm/pg-core").PgColumn<{
1852
+ name: "ciphertext";
1853
+ tableName: "vault_credentials";
1813
1854
  dataType: "custom";
1814
1855
  columnType: "PgCustomColumn";
1815
- data: string;
1816
- driverParam: string;
1856
+ data: Uint8Array<ArrayBufferLike>;
1857
+ driverParam: Buffer<ArrayBufferLike>;
1817
1858
  notNull: true;
1818
1859
  hasDefault: false;
1819
1860
  isPrimaryKey: false;
@@ -1826,13 +1867,13 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1826
1867
  }, {}, {
1827
1868
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1828
1869
  }>;
1829
- turnId: import("drizzle-orm/pg-core").PgColumn<{
1830
- name: "turnId";
1831
- tableName: "model_usage";
1870
+ wrappedDek: import("drizzle-orm/pg-core").PgColumn<{
1871
+ name: "wrappedDek";
1872
+ tableName: "vault_credentials";
1832
1873
  dataType: "custom";
1833
1874
  columnType: "PgCustomColumn";
1834
- data: string;
1835
- driverParam: string;
1875
+ data: Uint8Array<ArrayBufferLike>;
1876
+ driverParam: Buffer<ArrayBufferLike>;
1836
1877
  notNull: true;
1837
1878
  hasDefault: false;
1838
1879
  isPrimaryKey: false;
@@ -1845,11 +1886,35 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1845
1886
  }, {}, {
1846
1887
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1847
1888
  }>;
1848
- agentId: import("drizzle-orm/pg-core").PgColumn<{
1849
- name: "agentId";
1850
- tableName: "model_usage";
1851
- dataType: "custom";
1852
- columnType: "PgCustomColumn";
1889
+ };
1890
+ dialect: 'pg';
1891
+ }>;
1892
+ export declare const vaultAudit: import("drizzle-orm/pg-core").PgTableWithColumns<{
1893
+ name: "vault_audit";
1894
+ schema: "nylorun";
1895
+ columns: {
1896
+ ord: import("drizzle-orm/pg-core").PgColumn<{
1897
+ name: "ord";
1898
+ tableName: "vault_audit";
1899
+ dataType: "number";
1900
+ columnType: "PgBigInt53";
1901
+ data: number;
1902
+ driverParam: string | number;
1903
+ notNull: true;
1904
+ hasDefault: true;
1905
+ isPrimaryKey: true;
1906
+ isAutoincrement: false;
1907
+ hasRuntimeDefault: false;
1908
+ enumValues: undefined;
1909
+ baseColumn: never;
1910
+ identity: "always";
1911
+ generated: undefined;
1912
+ }, {}, {}>;
1913
+ id: import("drizzle-orm/pg-core").PgColumn<{
1914
+ name: "id";
1915
+ tableName: "vault_audit";
1916
+ dataType: "string";
1917
+ columnType: "PgText";
1853
1918
  data: string;
1854
1919
  driverParam: string;
1855
1920
  notNull: true;
@@ -1857,21 +1922,19 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1857
1922
  isPrimaryKey: false;
1858
1923
  isAutoincrement: false;
1859
1924
  hasRuntimeDefault: false;
1860
- enumValues: undefined;
1925
+ enumValues: [string, ...string[]];
1861
1926
  baseColumn: never;
1862
1927
  identity: undefined;
1863
1928
  generated: undefined;
1864
- }, {}, {
1865
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1866
- }>;
1867
- provider: import("drizzle-orm/pg-core").PgColumn<{
1868
- name: "provider";
1869
- tableName: "model_usage";
1929
+ }, {}, {}>;
1930
+ at: import("drizzle-orm/pg-core").PgColumn<{
1931
+ name: "at";
1932
+ tableName: "vault_audit";
1870
1933
  dataType: "string";
1871
1934
  columnType: "PgText";
1872
1935
  data: string;
1873
1936
  driverParam: string;
1874
- notNull: false;
1937
+ notNull: true;
1875
1938
  hasDefault: false;
1876
1939
  isPrimaryKey: false;
1877
1940
  isAutoincrement: false;
@@ -1881,14 +1944,14 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1881
1944
  identity: undefined;
1882
1945
  generated: undefined;
1883
1946
  }, {}, {}>;
1884
- model: import("drizzle-orm/pg-core").PgColumn<{
1885
- name: "model";
1886
- tableName: "model_usage";
1947
+ actor: import("drizzle-orm/pg-core").PgColumn<{
1948
+ name: "actor";
1949
+ tableName: "vault_audit";
1887
1950
  dataType: "string";
1888
1951
  columnType: "PgText";
1889
1952
  data: string;
1890
1953
  driverParam: string;
1891
- notNull: false;
1954
+ notNull: true;
1892
1955
  hasDefault: false;
1893
1956
  isPrimaryKey: false;
1894
1957
  isAutoincrement: false;
@@ -1898,145 +1961,193 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1898
1961
  identity: undefined;
1899
1962
  generated: undefined;
1900
1963
  }, {}, {}>;
1901
- inputTokens: import("drizzle-orm/pg-core").PgColumn<{
1902
- name: "inputTokens";
1903
- tableName: "model_usage";
1904
- dataType: "number";
1905
- columnType: "PgInteger";
1906
- data: number;
1907
- driverParam: string | number;
1964
+ action: import("drizzle-orm/pg-core").PgColumn<{
1965
+ name: "action";
1966
+ tableName: "vault_audit";
1967
+ dataType: "string";
1968
+ columnType: "PgText";
1969
+ data: string;
1970
+ driverParam: string;
1908
1971
  notNull: true;
1909
1972
  hasDefault: false;
1910
1973
  isPrimaryKey: false;
1911
1974
  isAutoincrement: false;
1912
1975
  hasRuntimeDefault: false;
1913
- enumValues: undefined;
1976
+ enumValues: [string, ...string[]];
1914
1977
  baseColumn: never;
1915
1978
  identity: undefined;
1916
1979
  generated: undefined;
1917
1980
  }, {}, {}>;
1918
- outputTokens: import("drizzle-orm/pg-core").PgColumn<{
1919
- name: "outputTokens";
1920
- tableName: "model_usage";
1921
- dataType: "number";
1922
- columnType: "PgInteger";
1923
- data: number;
1924
- driverParam: string | number;
1925
- notNull: true;
1981
+ vaultId: import("drizzle-orm/pg-core").PgColumn<{
1982
+ name: "vaultId";
1983
+ tableName: "vault_audit";
1984
+ dataType: "string";
1985
+ columnType: "PgText";
1986
+ data: string;
1987
+ driverParam: string;
1988
+ notNull: false;
1926
1989
  hasDefault: false;
1927
1990
  isPrimaryKey: false;
1928
1991
  isAutoincrement: false;
1929
1992
  hasRuntimeDefault: false;
1930
- enumValues: undefined;
1993
+ enumValues: [string, ...string[]];
1931
1994
  baseColumn: never;
1932
1995
  identity: undefined;
1933
1996
  generated: undefined;
1934
1997
  }, {}, {}>;
1935
- totalTokens: import("drizzle-orm/pg-core").PgColumn<{
1936
- name: "totalTokens";
1937
- tableName: "model_usage";
1938
- dataType: "number";
1939
- columnType: "PgInteger";
1940
- data: number;
1941
- driverParam: string | number;
1942
- notNull: true;
1998
+ credentialId: import("drizzle-orm/pg-core").PgColumn<{
1999
+ name: "credentialId";
2000
+ tableName: "vault_audit";
2001
+ dataType: "string";
2002
+ columnType: "PgText";
2003
+ data: string;
2004
+ driverParam: string;
2005
+ notNull: false;
1943
2006
  hasDefault: false;
1944
2007
  isPrimaryKey: false;
1945
2008
  isAutoincrement: false;
1946
2009
  hasRuntimeDefault: false;
1947
- enumValues: undefined;
2010
+ enumValues: [string, ...string[]];
1948
2011
  baseColumn: never;
1949
2012
  identity: undefined;
1950
2013
  generated: undefined;
1951
2014
  }, {}, {}>;
1952
- cachedTokens: import("drizzle-orm/pg-core").PgColumn<{
1953
- name: "cachedTokens";
1954
- tableName: "model_usage";
1955
- dataType: "number";
1956
- columnType: "PgInteger";
1957
- data: number;
1958
- driverParam: string | number;
1959
- notNull: true;
2015
+ sessionId: import("drizzle-orm/pg-core").PgColumn<{
2016
+ name: "sessionId";
2017
+ tableName: "vault_audit";
2018
+ dataType: "string";
2019
+ columnType: "PgText";
2020
+ data: string;
2021
+ driverParam: string;
2022
+ notNull: false;
1960
2023
  hasDefault: false;
1961
2024
  isPrimaryKey: false;
1962
2025
  isAutoincrement: false;
1963
2026
  hasRuntimeDefault: false;
1964
- enumValues: undefined;
2027
+ enumValues: [string, ...string[]];
1965
2028
  baseColumn: never;
1966
2029
  identity: undefined;
1967
2030
  generated: undefined;
1968
2031
  }, {}, {}>;
1969
- cacheWriteTokens: import("drizzle-orm/pg-core").PgColumn<{
1970
- name: "cacheWriteTokens";
1971
- tableName: "model_usage";
1972
- dataType: "number";
1973
- columnType: "PgInteger";
1974
- data: number;
1975
- driverParam: string | number;
1976
- notNull: true;
2032
+ target: import("drizzle-orm/pg-core").PgColumn<{
2033
+ name: "target";
2034
+ tableName: "vault_audit";
2035
+ dataType: "string";
2036
+ columnType: "PgText";
2037
+ data: string;
2038
+ driverParam: string;
2039
+ notNull: false;
1977
2040
  hasDefault: false;
1978
2041
  isPrimaryKey: false;
1979
2042
  isAutoincrement: false;
1980
2043
  hasRuntimeDefault: false;
1981
- enumValues: undefined;
2044
+ enumValues: [string, ...string[]];
1982
2045
  baseColumn: never;
1983
2046
  identity: undefined;
1984
2047
  generated: undefined;
1985
2048
  }, {}, {}>;
1986
- reasoningTokens: import("drizzle-orm/pg-core").PgColumn<{
1987
- name: "reasoningTokens";
1988
- tableName: "model_usage";
1989
- dataType: "number";
1990
- columnType: "PgInteger";
1991
- data: number;
1992
- driverParam: string | number;
2049
+ outcome: import("drizzle-orm/pg-core").PgColumn<{
2050
+ name: "outcome";
2051
+ tableName: "vault_audit";
2052
+ dataType: "string";
2053
+ columnType: "PgText";
2054
+ data: string;
2055
+ driverParam: string;
1993
2056
  notNull: true;
1994
2057
  hasDefault: false;
1995
2058
  isPrimaryKey: false;
1996
2059
  isAutoincrement: false;
1997
2060
  hasRuntimeDefault: false;
1998
- enumValues: undefined;
2061
+ enumValues: [string, ...string[]];
1999
2062
  baseColumn: never;
2000
2063
  identity: undefined;
2001
2064
  generated: undefined;
2002
2065
  }, {}, {}>;
2003
- costUsd: import("drizzle-orm/pg-core").PgColumn<{
2004
- name: "costUsd";
2005
- tableName: "model_usage";
2006
- dataType: "number";
2007
- columnType: "PgDoublePrecision";
2008
- data: number;
2009
- driverParam: string | number;
2066
+ };
2067
+ dialect: 'pg';
2068
+ }>;
2069
+ export declare const vaultIdempotency: import("drizzle-orm/pg-core").PgTableWithColumns<{
2070
+ name: "vault_idempotency";
2071
+ schema: "nylorun";
2072
+ columns: {
2073
+ id: import("drizzle-orm/pg-core").PgColumn<{
2074
+ name: "id";
2075
+ tableName: "vault_idempotency";
2076
+ dataType: "string";
2077
+ columnType: "PgText";
2078
+ data: string;
2079
+ driverParam: string;
2080
+ notNull: true;
2081
+ hasDefault: false;
2082
+ isPrimaryKey: true;
2083
+ isAutoincrement: false;
2084
+ hasRuntimeDefault: false;
2085
+ enumValues: [string, ...string[]];
2086
+ baseColumn: never;
2087
+ identity: undefined;
2088
+ generated: undefined;
2089
+ }, {}, {}>;
2090
+ bodyHash: import("drizzle-orm/pg-core").PgColumn<{
2091
+ name: "bodyHash";
2092
+ tableName: "vault_idempotency";
2093
+ dataType: "string";
2094
+ columnType: "PgText";
2095
+ data: string;
2096
+ driverParam: string;
2010
2097
  notNull: true;
2011
2098
  hasDefault: false;
2012
2099
  isPrimaryKey: false;
2013
2100
  isAutoincrement: false;
2014
2101
  hasRuntimeDefault: false;
2015
- enumValues: undefined;
2102
+ enumValues: [string, ...string[]];
2016
2103
  baseColumn: never;
2017
2104
  identity: undefined;
2018
2105
  generated: undefined;
2019
2106
  }, {}, {}>;
2020
- duplicate: import("drizzle-orm/pg-core").PgColumn<{
2021
- name: "duplicate";
2022
- tableName: "model_usage";
2023
- dataType: "boolean";
2024
- columnType: "PgBoolean";
2025
- data: boolean;
2026
- driverParam: boolean;
2107
+ response: import("drizzle-orm/pg-core").PgColumn<{
2108
+ name: "response";
2109
+ tableName: "vault_idempotency";
2110
+ dataType: "string";
2111
+ columnType: "PgText";
2112
+ data: string;
2113
+ driverParam: string;
2027
2114
  notNull: true;
2028
2115
  hasDefault: false;
2029
2116
  isPrimaryKey: false;
2030
2117
  isAutoincrement: false;
2031
2118
  hasRuntimeDefault: false;
2032
- enumValues: undefined;
2119
+ enumValues: [string, ...string[]];
2033
2120
  baseColumn: never;
2034
2121
  identity: undefined;
2035
2122
  generated: undefined;
2036
2123
  }, {}, {}>;
2037
- createdAt: import("drizzle-orm/pg-core").PgColumn<{
2038
- name: "createdAt";
2039
- tableName: "model_usage";
2124
+ };
2125
+ dialect: 'pg';
2126
+ }>;
2127
+ export declare const tenantSettings: import("drizzle-orm/pg-core").PgTableWithColumns<{
2128
+ name: "tenant_settings";
2129
+ schema: "nylorun";
2130
+ columns: {
2131
+ key: import("drizzle-orm/pg-core").PgColumn<{
2132
+ name: "key";
2133
+ tableName: "tenant_settings";
2134
+ dataType: "string";
2135
+ columnType: "PgText";
2136
+ data: string;
2137
+ driverParam: string;
2138
+ notNull: true;
2139
+ hasDefault: false;
2140
+ isPrimaryKey: true;
2141
+ isAutoincrement: false;
2142
+ hasRuntimeDefault: false;
2143
+ enumValues: [string, ...string[]];
2144
+ baseColumn: never;
2145
+ identity: undefined;
2146
+ generated: undefined;
2147
+ }, {}, {}>;
2148
+ value: import("drizzle-orm/pg-core").PgColumn<{
2149
+ name: "value";
2150
+ tableName: "tenant_settings";
2040
2151
  dataType: "string";
2041
2152
  columnType: "PgText";
2042
2153
  data: string;
@@ -2055,36 +2166,88 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
2055
2166
  dialect: 'pg';
2056
2167
  }>;
2057
2168
  /**
2058
- * Model budgets (P1.3): hard caps the model gate checks before each call, at least one limit
2059
- * set. One row per scope: `turn` and `tenant` use `*`, `agent` the agent id. `period` is the
2060
- * UTC `day` or `month` the spend is counted over, or null for `turn`.
2169
+ * The Tenant's signing keys (capability links, run and host tokens): the
2170
+ * private half sealed, the public JWK not.
2061
2171
  */
2062
- export declare const modelBudgets: import("drizzle-orm/pg-core").PgTableWithColumns<{
2063
- name: "model_budgets";
2172
+ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColumns<{
2173
+ name: "signing_keys";
2064
2174
  schema: "nylorun";
2065
2175
  columns: {
2066
- scope: import("drizzle-orm/pg-core").PgColumn<{
2067
- name: "scope";
2068
- tableName: "model_budgets";
2176
+ id: import("drizzle-orm/pg-core").PgColumn<{
2177
+ name: "id";
2178
+ tableName: "signing_keys";
2179
+ dataType: "custom";
2180
+ columnType: "PgCustomColumn";
2181
+ data: string;
2182
+ driverParam: string;
2183
+ notNull: true;
2184
+ hasDefault: false;
2185
+ isPrimaryKey: true;
2186
+ isAutoincrement: false;
2187
+ hasRuntimeDefault: false;
2188
+ enumValues: undefined;
2189
+ baseColumn: never;
2190
+ identity: undefined;
2191
+ generated: undefined;
2192
+ }, {}, {
2193
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2194
+ }>;
2195
+ state: import("drizzle-orm/pg-core").PgColumn<{
2196
+ name: "state";
2197
+ tableName: "signing_keys";
2069
2198
  dataType: "string";
2070
2199
  columnType: "PgText";
2071
- data: "agent" | "tenant" | "turn";
2200
+ data: "current" | "previous" | "revoked" | "standby";
2072
2201
  driverParam: string;
2073
2202
  notNull: true;
2074
2203
  hasDefault: false;
2075
2204
  isPrimaryKey: false;
2076
2205
  isAutoincrement: false;
2077
2206
  hasRuntimeDefault: false;
2078
- enumValues: ["tenant", "agent", "turn"];
2207
+ enumValues: ["standby", "current", "previous", "revoked"];
2079
2208
  baseColumn: never;
2080
2209
  identity: undefined;
2081
2210
  generated: undefined;
2082
2211
  }, {}, {}>;
2083
- scopeId: import("drizzle-orm/pg-core").PgColumn<{
2084
- name: "scopeId";
2085
- tableName: "model_budgets";
2086
- dataType: "custom";
2087
- columnType: "PgCustomColumn";
2212
+ alg: import("drizzle-orm/pg-core").PgColumn<{
2213
+ name: "alg";
2214
+ tableName: "signing_keys";
2215
+ dataType: "string";
2216
+ columnType: "PgText";
2217
+ data: "ES256";
2218
+ driverParam: string;
2219
+ notNull: true;
2220
+ hasDefault: false;
2221
+ isPrimaryKey: false;
2222
+ isAutoincrement: false;
2223
+ hasRuntimeDefault: false;
2224
+ enumValues: ["ES256"];
2225
+ baseColumn: never;
2226
+ identity: undefined;
2227
+ generated: undefined;
2228
+ }, {}, {}>;
2229
+ publicJwk: import("drizzle-orm/pg-core").PgColumn<{
2230
+ name: "publicJwk";
2231
+ tableName: "signing_keys";
2232
+ dataType: "string";
2233
+ columnType: "PgText";
2234
+ data: string;
2235
+ driverParam: string;
2236
+ notNull: true;
2237
+ hasDefault: false;
2238
+ isPrimaryKey: false;
2239
+ isAutoincrement: false;
2240
+ hasRuntimeDefault: false;
2241
+ enumValues: [string, ...string[]];
2242
+ baseColumn: never;
2243
+ identity: undefined;
2244
+ generated: undefined;
2245
+ }, {}, {}>;
2246
+ kekId: import("drizzle-orm/pg-core").PgColumn<{
2247
+ name: "kekId";
2248
+ tableName: "signing_keys";
2249
+ dataType: "string";
2250
+ columnType: "PgText";
2088
2251
  data: string;
2089
2252
  driverParam: string;
2090
2253
  notNull: true;
@@ -2092,6 +2255,23 @@ export declare const modelBudgets: import("drizzle-orm/pg-core").PgTableWithColu
2092
2255
  isPrimaryKey: false;
2093
2256
  isAutoincrement: false;
2094
2257
  hasRuntimeDefault: false;
2258
+ enumValues: [string, ...string[]];
2259
+ baseColumn: never;
2260
+ identity: undefined;
2261
+ generated: undefined;
2262
+ }, {}, {}>;
2263
+ nonce: import("drizzle-orm/pg-core").PgColumn<{
2264
+ name: "nonce";
2265
+ tableName: "signing_keys";
2266
+ dataType: "custom";
2267
+ columnType: "PgCustomColumn";
2268
+ data: Uint8Array<ArrayBufferLike>;
2269
+ driverParam: Buffer<ArrayBufferLike>;
2270
+ notNull: true;
2271
+ hasDefault: false;
2272
+ isPrimaryKey: false;
2273
+ isAutoincrement: false;
2274
+ hasRuntimeDefault: false;
2095
2275
  enumValues: undefined;
2096
2276
  baseColumn: never;
2097
2277
  identity: undefined;
@@ -2099,65 +2279,103 @@ export declare const modelBudgets: import("drizzle-orm/pg-core").PgTableWithColu
2099
2279
  }, {}, {
2100
2280
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2101
2281
  }>;
2102
- period: import("drizzle-orm/pg-core").PgColumn<{
2103
- name: "period";
2104
- tableName: "model_budgets";
2282
+ ciphertext: import("drizzle-orm/pg-core").PgColumn<{
2283
+ name: "ciphertext";
2284
+ tableName: "signing_keys";
2285
+ dataType: "custom";
2286
+ columnType: "PgCustomColumn";
2287
+ data: Uint8Array<ArrayBufferLike>;
2288
+ driverParam: Buffer<ArrayBufferLike>;
2289
+ notNull: true;
2290
+ hasDefault: false;
2291
+ isPrimaryKey: false;
2292
+ isAutoincrement: false;
2293
+ hasRuntimeDefault: false;
2294
+ enumValues: undefined;
2295
+ baseColumn: never;
2296
+ identity: undefined;
2297
+ generated: undefined;
2298
+ }, {}, {
2299
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2300
+ }>;
2301
+ wrappedDek: import("drizzle-orm/pg-core").PgColumn<{
2302
+ name: "wrappedDek";
2303
+ tableName: "signing_keys";
2304
+ dataType: "custom";
2305
+ columnType: "PgCustomColumn";
2306
+ data: Uint8Array<ArrayBufferLike>;
2307
+ driverParam: Buffer<ArrayBufferLike>;
2308
+ notNull: true;
2309
+ hasDefault: false;
2310
+ isPrimaryKey: false;
2311
+ isAutoincrement: false;
2312
+ hasRuntimeDefault: false;
2313
+ enumValues: undefined;
2314
+ baseColumn: never;
2315
+ identity: undefined;
2316
+ generated: undefined;
2317
+ }, {}, {
2318
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2319
+ }>;
2320
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
2321
+ name: "createdAt";
2322
+ tableName: "signing_keys";
2105
2323
  dataType: "string";
2106
2324
  columnType: "PgText";
2107
- data: "day" | "month";
2325
+ data: string;
2108
2326
  driverParam: string;
2109
- notNull: false;
2327
+ notNull: true;
2110
2328
  hasDefault: false;
2111
2329
  isPrimaryKey: false;
2112
2330
  isAutoincrement: false;
2113
2331
  hasRuntimeDefault: false;
2114
- enumValues: ["day", "month"];
2332
+ enumValues: [string, ...string[]];
2115
2333
  baseColumn: never;
2116
2334
  identity: undefined;
2117
2335
  generated: undefined;
2118
2336
  }, {}, {}>;
2119
- limitUsd: import("drizzle-orm/pg-core").PgColumn<{
2120
- name: "limitUsd";
2121
- tableName: "model_budgets";
2122
- dataType: "number";
2123
- columnType: "PgDoublePrecision";
2124
- data: number;
2125
- driverParam: string | number;
2337
+ activatedAt: import("drizzle-orm/pg-core").PgColumn<{
2338
+ name: "activatedAt";
2339
+ tableName: "signing_keys";
2340
+ dataType: "string";
2341
+ columnType: "PgText";
2342
+ data: string;
2343
+ driverParam: string;
2126
2344
  notNull: false;
2127
2345
  hasDefault: false;
2128
2346
  isPrimaryKey: false;
2129
2347
  isAutoincrement: false;
2130
2348
  hasRuntimeDefault: false;
2131
- enumValues: undefined;
2349
+ enumValues: [string, ...string[]];
2132
2350
  baseColumn: never;
2133
2351
  identity: undefined;
2134
2352
  generated: undefined;
2135
2353
  }, {}, {}>;
2136
- limitTokens: import("drizzle-orm/pg-core").PgColumn<{
2137
- name: "limitTokens";
2138
- tableName: "model_budgets";
2139
- dataType: "number";
2140
- columnType: "PgBigInt53";
2141
- data: number;
2142
- driverParam: string | number;
2354
+ retiredAt: import("drizzle-orm/pg-core").PgColumn<{
2355
+ name: "retiredAt";
2356
+ tableName: "signing_keys";
2357
+ dataType: "string";
2358
+ columnType: "PgText";
2359
+ data: string;
2360
+ driverParam: string;
2143
2361
  notNull: false;
2144
2362
  hasDefault: false;
2145
2363
  isPrimaryKey: false;
2146
2364
  isAutoincrement: false;
2147
2365
  hasRuntimeDefault: false;
2148
- enumValues: undefined;
2366
+ enumValues: [string, ...string[]];
2149
2367
  baseColumn: never;
2150
2368
  identity: undefined;
2151
2369
  generated: undefined;
2152
2370
  }, {}, {}>;
2153
- updatedAt: import("drizzle-orm/pg-core").PgColumn<{
2154
- name: "updatedAt";
2155
- tableName: "model_budgets";
2371
+ revokedAt: import("drizzle-orm/pg-core").PgColumn<{
2372
+ name: "revokedAt";
2373
+ tableName: "signing_keys";
2156
2374
  dataType: "string";
2157
2375
  columnType: "PgText";
2158
2376
  data: string;
2159
2377
  driverParam: string;
2160
- notNull: true;
2378
+ notNull: false;
2161
2379
  hasDefault: false;
2162
2380
  isPrimaryKey: false;
2163
2381
  isAutoincrement: false;
@@ -2171,19 +2389,20 @@ export declare const modelBudgets: import("drizzle-orm/pg-core").PgTableWithColu
2171
2389
  dialect: 'pg';
2172
2390
  }>;
2173
2391
  /**
2174
- * The Tool Gate's keyed MCP calls (F4.1 G3): one row per call, written by the gates service
2175
- * before it calls the server and given the answer after. A re-send whose row has an answer
2176
- * gets it; one whose row has none, and that the gateway no longer runs, was lost with an
2177
- * earlier gateway and answers `uncertain`, so a call is never run twice. Rows are deleted a
2178
- * day after they settle.
2392
+ * The model usage ledger (P1.3): one row per model call a gate served, written after the call.
2393
+ * A second row for the same effect (a call the gate ran again after a gateway restart) is
2394
+ * flagged `duplicate`; both were billed. Budgets read their spend from it. Token counts are 0
2395
+ * when the provider sent none. `startedAt`, `endedAt` and `firstTokenMs` are the gate's own
2396
+ * timing of the call (R7.1, migration 0022); null on rows written before, and `firstTokenMs`
2397
+ * when the provider streamed nothing.
2179
2398
  */
2180
- export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithColumns<{
2181
- name: "tool_crossings";
2399
+ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumns<{
2400
+ name: "model_usage";
2182
2401
  schema: "nylorun";
2183
2402
  columns: {
2184
- key: import("drizzle-orm/pg-core").PgColumn<{
2185
- name: "key";
2186
- tableName: "tool_crossings";
2403
+ id: import("drizzle-orm/pg-core").PgColumn<{
2404
+ name: "id";
2405
+ tableName: "model_usage";
2187
2406
  dataType: "custom";
2188
2407
  columnType: "PgCustomColumn";
2189
2408
  data: string;
@@ -2200,11 +2419,11 @@ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithCol
2200
2419
  }, {}, {
2201
2420
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2202
2421
  }>;
2203
- hash: import("drizzle-orm/pg-core").PgColumn<{
2204
- name: "hash";
2205
- tableName: "tool_crossings";
2206
- dataType: "string";
2207
- columnType: "PgText";
2422
+ effectKey: import("drizzle-orm/pg-core").PgColumn<{
2423
+ name: "effectKey";
2424
+ tableName: "model_usage";
2425
+ dataType: "custom";
2426
+ columnType: "PgCustomColumn";
2208
2427
  data: string;
2209
2428
  driverParam: string;
2210
2429
  notNull: true;
@@ -2212,20 +2431,56 @@ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithCol
2212
2431
  isPrimaryKey: false;
2213
2432
  isAutoincrement: false;
2214
2433
  hasRuntimeDefault: false;
2215
- enumValues: [string, ...string[]];
2434
+ enumValues: undefined;
2435
+ baseColumn: never;
2436
+ identity: undefined;
2437
+ generated: undefined;
2438
+ }, {}, {
2439
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2440
+ }>;
2441
+ tokensReported: import("drizzle-orm/pg-core").PgColumn<{
2442
+ name: "tokensReported";
2443
+ tableName: "model_usage";
2444
+ dataType: "boolean";
2445
+ columnType: "PgBoolean";
2446
+ data: boolean;
2447
+ driverParam: boolean;
2448
+ notNull: false;
2449
+ hasDefault: false;
2450
+ isPrimaryKey: false;
2451
+ isAutoincrement: false;
2452
+ hasRuntimeDefault: false;
2453
+ enumValues: undefined;
2216
2454
  baseColumn: never;
2217
2455
  identity: undefined;
2218
2456
  generated: undefined;
2219
2457
  }, {}, {}>;
2220
- startedAt: import("drizzle-orm/pg-core").PgColumn<{
2221
- name: "startedAt";
2222
- tableName: "tool_crossings";
2458
+ costKnown: import("drizzle-orm/pg-core").PgColumn<{
2459
+ name: "costKnown";
2460
+ tableName: "model_usage";
2461
+ dataType: "boolean";
2462
+ columnType: "PgBoolean";
2463
+ data: boolean;
2464
+ driverParam: boolean;
2465
+ notNull: false;
2466
+ hasDefault: false;
2467
+ isPrimaryKey: false;
2468
+ isAutoincrement: false;
2469
+ hasRuntimeDefault: false;
2470
+ enumValues: undefined;
2471
+ baseColumn: never;
2472
+ identity: undefined;
2473
+ generated: undefined;
2474
+ }, {}, {}>;
2475
+ txid: import("drizzle-orm/pg-core").PgColumn<{
2476
+ name: "txid";
2477
+ tableName: "model_usage";
2223
2478
  dataType: "custom";
2224
2479
  columnType: "PgCustomColumn";
2225
2480
  data: string;
2226
- driverParam: string;
2481
+ driverParam: unknown;
2227
2482
  notNull: true;
2228
- hasDefault: false;
2483
+ hasDefault: true;
2229
2484
  isPrimaryKey: false;
2230
2485
  isAutoincrement: false;
2231
2486
  hasRuntimeDefault: false;
@@ -2236,14 +2491,14 @@ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithCol
2236
2491
  }, {}, {
2237
2492
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2238
2493
  }>;
2239
- settledAt: import("drizzle-orm/pg-core").PgColumn<{
2240
- name: "settledAt";
2241
- tableName: "tool_crossings";
2494
+ sessionId: import("drizzle-orm/pg-core").PgColumn<{
2495
+ name: "sessionId";
2496
+ tableName: "model_usage";
2242
2497
  dataType: "custom";
2243
2498
  columnType: "PgCustomColumn";
2244
2499
  data: string;
2245
2500
  driverParam: string;
2246
- notNull: false;
2501
+ notNull: true;
2247
2502
  hasDefault: false;
2248
2503
  isPrimaryKey: false;
2249
2504
  isAutoincrement: false;
@@ -2255,14 +2510,14 @@ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithCol
2255
2510
  }, {}, {
2256
2511
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2257
2512
  }>;
2258
- answer: import("drizzle-orm/pg-core").PgColumn<{
2259
- name: "answer";
2260
- tableName: "tool_crossings";
2513
+ turnId: import("drizzle-orm/pg-core").PgColumn<{
2514
+ name: "turnId";
2515
+ tableName: "model_usage";
2261
2516
  dataType: "custom";
2262
2517
  columnType: "PgCustomColumn";
2263
- data: unknown;
2264
- driverParam: unknown;
2265
- notNull: false;
2518
+ data: string;
2519
+ driverParam: string;
2520
+ notNull: true;
2266
2521
  hasDefault: false;
2267
2522
  isPrimaryKey: false;
2268
2523
  isAutoincrement: false;
@@ -2274,29 +2529,16 @@ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithCol
2274
2529
  }, {}, {
2275
2530
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2276
2531
  }>;
2277
- };
2278
- dialect: 'pg';
2279
- }>;
2280
- /**
2281
- * A sandbox resource (blueprint D39, F7.1): its id, kind, the spec resolved against the
2282
- * Tenant's limits when it was created, and the developer's labels. Sessions attach to it by id
2283
- * (the session body's `sandboxId`). Not the `sandboxes` document table, which holds the virtual
2284
- * backend's compute records, keyed by workspace key.
2285
- */
2286
- export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWithColumns<{
2287
- name: "sandbox_resources";
2288
- schema: "nylorun";
2289
- columns: {
2290
- id: import("drizzle-orm/pg-core").PgColumn<{
2291
- name: "id";
2292
- tableName: "sandbox_resources";
2532
+ agentId: import("drizzle-orm/pg-core").PgColumn<{
2533
+ name: "agentId";
2534
+ tableName: "model_usage";
2293
2535
  dataType: "custom";
2294
2536
  columnType: "PgCustomColumn";
2295
2537
  data: string;
2296
2538
  driverParam: string;
2297
2539
  notNull: true;
2298
2540
  hasDefault: false;
2299
- isPrimaryKey: true;
2541
+ isPrimaryKey: false;
2300
2542
  isAutoincrement: false;
2301
2543
  hasRuntimeDefault: false;
2302
2544
  enumValues: undefined;
@@ -2306,30 +2548,64 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2306
2548
  }, {}, {
2307
2549
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2308
2550
  }>;
2309
- kind: import("drizzle-orm/pg-core").PgColumn<{
2310
- name: "kind";
2311
- tableName: "sandbox_resources";
2551
+ provider: import("drizzle-orm/pg-core").PgColumn<{
2552
+ name: "provider";
2553
+ tableName: "model_usage";
2554
+ dataType: "string";
2555
+ columnType: "PgText";
2556
+ data: string;
2557
+ driverParam: string;
2558
+ notNull: false;
2559
+ hasDefault: false;
2560
+ isPrimaryKey: false;
2561
+ isAutoincrement: false;
2562
+ hasRuntimeDefault: false;
2563
+ enumValues: [string, ...string[]];
2564
+ baseColumn: never;
2565
+ identity: undefined;
2566
+ generated: undefined;
2567
+ }, {}, {}>;
2568
+ model: import("drizzle-orm/pg-core").PgColumn<{
2569
+ name: "model";
2570
+ tableName: "model_usage";
2312
2571
  dataType: "string";
2313
2572
  columnType: "PgText";
2314
- data: "pod" | "virtual";
2573
+ data: string;
2315
2574
  driverParam: string;
2575
+ notNull: false;
2576
+ hasDefault: false;
2577
+ isPrimaryKey: false;
2578
+ isAutoincrement: false;
2579
+ hasRuntimeDefault: false;
2580
+ enumValues: [string, ...string[]];
2581
+ baseColumn: never;
2582
+ identity: undefined;
2583
+ generated: undefined;
2584
+ }, {}, {}>;
2585
+ inputTokens: import("drizzle-orm/pg-core").PgColumn<{
2586
+ name: "inputTokens";
2587
+ tableName: "model_usage";
2588
+ dataType: "number";
2589
+ columnType: "PgInteger";
2590
+ data: number;
2591
+ driverParam: string | number;
2316
2592
  notNull: true;
2317
2593
  hasDefault: false;
2318
2594
  isPrimaryKey: false;
2319
2595
  isAutoincrement: false;
2320
2596
  hasRuntimeDefault: false;
2321
- enumValues: ["virtual", "pod"];
2597
+ enumValues: undefined;
2322
2598
  baseColumn: never;
2323
2599
  identity: undefined;
2324
2600
  generated: undefined;
2325
2601
  }, {}, {}>;
2326
- spec: import("drizzle-orm/pg-core").PgColumn<{
2327
- name: "spec";
2328
- tableName: "sandbox_resources";
2329
- dataType: "custom";
2330
- columnType: "PgCustomColumn";
2331
- data: unknown;
2332
- driverParam: unknown;
2602
+ outputTokens: import("drizzle-orm/pg-core").PgColumn<{
2603
+ name: "outputTokens";
2604
+ tableName: "model_usage";
2605
+ dataType: "number";
2606
+ columnType: "PgInteger";
2607
+ data: number;
2608
+ driverParam: string | number;
2333
2609
  notNull: true;
2334
2610
  hasDefault: false;
2335
2611
  isPrimaryKey: false;
@@ -2339,16 +2615,14 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2339
2615
  baseColumn: never;
2340
2616
  identity: undefined;
2341
2617
  generated: undefined;
2342
- }, {}, {
2343
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2344
- }>;
2345
- labels: import("drizzle-orm/pg-core").PgColumn<{
2346
- name: "labels";
2347
- tableName: "sandbox_resources";
2348
- dataType: "custom";
2349
- columnType: "PgCustomColumn";
2350
- data: unknown;
2351
- driverParam: unknown;
2618
+ }, {}, {}>;
2619
+ totalTokens: import("drizzle-orm/pg-core").PgColumn<{
2620
+ name: "totalTokens";
2621
+ tableName: "model_usage";
2622
+ dataType: "number";
2623
+ columnType: "PgInteger";
2624
+ data: number;
2625
+ driverParam: string | number;
2352
2626
  notNull: true;
2353
2627
  hasDefault: false;
2354
2628
  isPrimaryKey: false;
@@ -2358,16 +2632,14 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2358
2632
  baseColumn: never;
2359
2633
  identity: undefined;
2360
2634
  generated: undefined;
2361
- }, {}, {
2362
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2363
- }>;
2364
- createdAt: import("drizzle-orm/pg-core").PgColumn<{
2365
- name: "createdAt";
2366
- tableName: "sandbox_resources";
2367
- dataType: "custom";
2368
- columnType: "PgCustomColumn";
2369
- data: string;
2370
- driverParam: string;
2635
+ }, {}, {}>;
2636
+ cachedTokens: import("drizzle-orm/pg-core").PgColumn<{
2637
+ name: "cachedTokens";
2638
+ tableName: "model_usage";
2639
+ dataType: "number";
2640
+ columnType: "PgInteger";
2641
+ data: number;
2642
+ driverParam: string | number;
2371
2643
  notNull: true;
2372
2644
  hasDefault: false;
2373
2645
  isPrimaryKey: false;
@@ -2377,16 +2649,14 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2377
2649
  baseColumn: never;
2378
2650
  identity: undefined;
2379
2651
  generated: undefined;
2380
- }, {}, {
2381
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2382
- }>;
2383
- updatedAt: import("drizzle-orm/pg-core").PgColumn<{
2384
- name: "updatedAt";
2385
- tableName: "sandbox_resources";
2386
- dataType: "custom";
2387
- columnType: "PgCustomColumn";
2388
- data: string;
2389
- driverParam: string;
2652
+ }, {}, {}>;
2653
+ cacheWriteTokens: import("drizzle-orm/pg-core").PgColumn<{
2654
+ name: "cacheWriteTokens";
2655
+ tableName: "model_usage";
2656
+ dataType: "number";
2657
+ columnType: "PgInteger";
2658
+ data: number;
2659
+ driverParam: string | number;
2390
2660
  notNull: true;
2391
2661
  hasDefault: false;
2392
2662
  isPrimaryKey: false;
@@ -2396,17 +2666,15 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2396
2666
  baseColumn: never;
2397
2667
  identity: undefined;
2398
2668
  generated: undefined;
2399
- }, {}, {
2400
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2401
- }>;
2402
- k8sName: import("drizzle-orm/pg-core").PgColumn<{
2403
- name: "k8sName";
2404
- tableName: "sandbox_resources";
2405
- dataType: "custom";
2406
- columnType: "PgCustomColumn";
2407
- data: string;
2408
- driverParam: string;
2409
- notNull: false;
2669
+ }, {}, {}>;
2670
+ reasoningTokens: import("drizzle-orm/pg-core").PgColumn<{
2671
+ name: "reasoningTokens";
2672
+ tableName: "model_usage";
2673
+ dataType: "number";
2674
+ columnType: "PgInteger";
2675
+ data: number;
2676
+ driverParam: string | number;
2677
+ notNull: true;
2410
2678
  hasDefault: false;
2411
2679
  isPrimaryKey: false;
2412
2680
  isAutoincrement: false;
@@ -2415,18 +2683,16 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2415
2683
  baseColumn: never;
2416
2684
  identity: undefined;
2417
2685
  generated: undefined;
2418
- }, {}, {
2419
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2420
- }>;
2421
- volumeGen: import("drizzle-orm/pg-core").PgColumn<{
2422
- name: "volumeGen";
2423
- tableName: "sandbox_resources";
2686
+ }, {}, {}>;
2687
+ costUsd: import("drizzle-orm/pg-core").PgColumn<{
2688
+ name: "costUsd";
2689
+ tableName: "model_usage";
2424
2690
  dataType: "number";
2425
- columnType: "PgInteger";
2691
+ columnType: "PgDoublePrecision";
2426
2692
  data: number;
2427
2693
  driverParam: string | number;
2428
2694
  notNull: true;
2429
- hasDefault: true;
2695
+ hasDefault: false;
2430
2696
  isPrimaryKey: false;
2431
2697
  isAutoincrement: false;
2432
2698
  hasRuntimeDefault: false;
@@ -2435,43 +2701,60 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2435
2701
  identity: undefined;
2436
2702
  generated: undefined;
2437
2703
  }, {}, {}>;
2438
- desired: import("drizzle-orm/pg-core").PgColumn<{
2439
- name: "desired";
2440
- tableName: "sandbox_resources";
2704
+ duplicate: import("drizzle-orm/pg-core").PgColumn<{
2705
+ name: "duplicate";
2706
+ tableName: "model_usage";
2707
+ dataType: "boolean";
2708
+ columnType: "PgBoolean";
2709
+ data: boolean;
2710
+ driverParam: boolean;
2711
+ notNull: true;
2712
+ hasDefault: false;
2713
+ isPrimaryKey: false;
2714
+ isAutoincrement: false;
2715
+ hasRuntimeDefault: false;
2716
+ enumValues: undefined;
2717
+ baseColumn: never;
2718
+ identity: undefined;
2719
+ generated: undefined;
2720
+ }, {}, {}>;
2721
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
2722
+ name: "createdAt";
2723
+ tableName: "model_usage";
2441
2724
  dataType: "string";
2442
2725
  columnType: "PgText";
2443
- data: "deleted" | "running" | "suspended";
2726
+ data: string;
2444
2727
  driverParam: string;
2445
- notNull: false;
2728
+ notNull: true;
2446
2729
  hasDefault: false;
2447
2730
  isPrimaryKey: false;
2448
2731
  isAutoincrement: false;
2449
2732
  hasRuntimeDefault: false;
2450
- enumValues: ["running", "suspended", "deleted"];
2733
+ enumValues: [string, ...string[]];
2451
2734
  baseColumn: never;
2452
2735
  identity: undefined;
2453
2736
  generated: undefined;
2454
2737
  }, {}, {}>;
2455
- observed: import("drizzle-orm/pg-core").PgColumn<{
2456
- name: "observed";
2457
- tableName: "sandbox_resources";
2738
+ startedAt: import("drizzle-orm/pg-core").PgColumn<{
2739
+ name: "startedAt";
2740
+ tableName: "model_usage";
2458
2741
  dataType: "string";
2459
2742
  columnType: "PgText";
2460
- data: "creating" | "deleting" | "expired" | "failed" | "lost" | "running" | "suspended";
2743
+ data: string;
2461
2744
  driverParam: string;
2462
2745
  notNull: false;
2463
2746
  hasDefault: false;
2464
2747
  isPrimaryKey: false;
2465
2748
  isAutoincrement: false;
2466
2749
  hasRuntimeDefault: false;
2467
- enumValues: ["creating", "running", "suspended", "expired", "lost", "failed", "deleting"];
2750
+ enumValues: [string, ...string[]];
2468
2751
  baseColumn: never;
2469
2752
  identity: undefined;
2470
2753
  generated: undefined;
2471
2754
  }, {}, {}>;
2472
- podUid: import("drizzle-orm/pg-core").PgColumn<{
2473
- name: "podUid";
2474
- tableName: "sandbox_resources";
2755
+ endedAt: import("drizzle-orm/pg-core").PgColumn<{
2756
+ name: "endedAt";
2757
+ tableName: "model_usage";
2475
2758
  dataType: "string";
2476
2759
  columnType: "PgText";
2477
2760
  data: string;
@@ -2486,15 +2769,15 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2486
2769
  identity: undefined;
2487
2770
  generated: undefined;
2488
2771
  }, {}, {}>;
2489
- hostEpoch: import("drizzle-orm/pg-core").PgColumn<{
2490
- name: "hostEpoch";
2491
- tableName: "sandbox_resources";
2772
+ firstTokenMs: import("drizzle-orm/pg-core").PgColumn<{
2773
+ name: "firstTokenMs";
2774
+ tableName: "model_usage";
2492
2775
  dataType: "number";
2493
2776
  columnType: "PgInteger";
2494
2777
  data: number;
2495
2778
  driverParam: string | number;
2496
- notNull: true;
2497
- hasDefault: true;
2779
+ notNull: false;
2780
+ hasDefault: false;
2498
2781
  isPrimaryKey: false;
2499
2782
  isAutoincrement: false;
2500
2783
  hasRuntimeDefault: false;
@@ -2503,32 +2786,44 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2503
2786
  identity: undefined;
2504
2787
  generated: undefined;
2505
2788
  }, {}, {}>;
2506
- joinTokenHash: import("drizzle-orm/pg-core").PgColumn<{
2507
- name: "joinTokenHash";
2508
- tableName: "sandbox_resources";
2789
+ };
2790
+ dialect: 'pg';
2791
+ }>;
2792
+ /**
2793
+ * Model budgets (P1.3): hard caps the model gate checks before each call, at least one limit
2794
+ * set. One row per scope: `turn` and `tenant` use `*`, `agent` the agent id. `period` is the
2795
+ * UTC `day` or `month` the spend is counted over, or null for `turn`.
2796
+ */
2797
+ export declare const modelBudgets: import("drizzle-orm/pg-core").PgTableWithColumns<{
2798
+ name: "model_budgets";
2799
+ schema: "nylorun";
2800
+ columns: {
2801
+ scope: import("drizzle-orm/pg-core").PgColumn<{
2802
+ name: "scope";
2803
+ tableName: "model_budgets";
2509
2804
  dataType: "string";
2510
2805
  columnType: "PgText";
2511
- data: string;
2806
+ data: "agent" | "tenant" | "turn";
2512
2807
  driverParam: string;
2513
- notNull: false;
2808
+ notNull: true;
2514
2809
  hasDefault: false;
2515
2810
  isPrimaryKey: false;
2516
2811
  isAutoincrement: false;
2517
2812
  hasRuntimeDefault: false;
2518
- enumValues: [string, ...string[]];
2813
+ enumValues: ["tenant", "agent", "turn"];
2519
2814
  baseColumn: never;
2520
2815
  identity: undefined;
2521
2816
  generated: undefined;
2522
2817
  }, {}, {}>;
2523
- rev: import("drizzle-orm/pg-core").PgColumn<{
2524
- name: "rev";
2525
- tableName: "sandbox_resources";
2526
- dataType: "number";
2527
- columnType: "PgInteger";
2528
- data: number;
2529
- driverParam: string | number;
2818
+ scopeId: import("drizzle-orm/pg-core").PgColumn<{
2819
+ name: "scopeId";
2820
+ tableName: "model_budgets";
2821
+ dataType: "custom";
2822
+ columnType: "PgCustomColumn";
2823
+ data: string;
2824
+ driverParam: string;
2530
2825
  notNull: true;
2531
- hasDefault: true;
2826
+ hasDefault: false;
2532
2827
  isPrimaryKey: false;
2533
2828
  isAutoincrement: false;
2534
2829
  hasRuntimeDefault: false;
@@ -2536,31 +2831,33 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2536
2831
  baseColumn: never;
2537
2832
  identity: undefined;
2538
2833
  generated: undefined;
2539
- }, {}, {}>;
2540
- lastActiveAt: import("drizzle-orm/pg-core").PgColumn<{
2541
- name: "lastActiveAt";
2542
- tableName: "sandbox_resources";
2543
- dataType: "date";
2544
- columnType: "PgTimestamp";
2545
- data: Date;
2834
+ }, {}, {
2835
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2836
+ }>;
2837
+ period: import("drizzle-orm/pg-core").PgColumn<{
2838
+ name: "period";
2839
+ tableName: "model_budgets";
2840
+ dataType: "string";
2841
+ columnType: "PgText";
2842
+ data: "day" | "month";
2546
2843
  driverParam: string;
2547
2844
  notNull: false;
2548
2845
  hasDefault: false;
2549
2846
  isPrimaryKey: false;
2550
2847
  isAutoincrement: false;
2551
2848
  hasRuntimeDefault: false;
2552
- enumValues: undefined;
2849
+ enumValues: ["day", "month"];
2553
2850
  baseColumn: never;
2554
2851
  identity: undefined;
2555
2852
  generated: undefined;
2556
2853
  }, {}, {}>;
2557
- expiresAt: import("drizzle-orm/pg-core").PgColumn<{
2558
- name: "expiresAt";
2559
- tableName: "sandbox_resources";
2560
- dataType: "date";
2561
- columnType: "PgTimestamp";
2562
- data: Date;
2563
- driverParam: string;
2854
+ limitUsd: import("drizzle-orm/pg-core").PgColumn<{
2855
+ name: "limitUsd";
2856
+ tableName: "model_budgets";
2857
+ dataType: "number";
2858
+ columnType: "PgDoublePrecision";
2859
+ data: number;
2860
+ driverParam: string | number;
2564
2861
  notNull: false;
2565
2862
  hasDefault: false;
2566
2863
  isPrimaryKey: false;
@@ -2571,13 +2868,13 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2571
2868
  identity: undefined;
2572
2869
  generated: undefined;
2573
2870
  }, {}, {}>;
2574
- startedAt: import("drizzle-orm/pg-core").PgColumn<{
2575
- name: "startedAt";
2576
- tableName: "sandbox_resources";
2577
- dataType: "date";
2578
- columnType: "PgTimestamp";
2579
- data: Date;
2580
- driverParam: string;
2871
+ limitTokens: import("drizzle-orm/pg-core").PgColumn<{
2872
+ name: "limitTokens";
2873
+ tableName: "model_budgets";
2874
+ dataType: "number";
2875
+ columnType: "PgBigInt53";
2876
+ data: number;
2877
+ driverParam: string | number;
2581
2878
  notNull: false;
2582
2879
  hasDefault: false;
2583
2880
  isPrimaryKey: false;
@@ -2588,14 +2885,14 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2588
2885
  identity: undefined;
2589
2886
  generated: undefined;
2590
2887
  }, {}, {}>;
2591
- reason: import("drizzle-orm/pg-core").PgColumn<{
2592
- name: "reason";
2593
- tableName: "sandbox_resources";
2888
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
2889
+ name: "updatedAt";
2890
+ tableName: "model_budgets";
2594
2891
  dataType: "string";
2595
2892
  columnType: "PgText";
2596
2893
  data: string;
2597
2894
  driverParam: string;
2598
- notNull: false;
2895
+ notNull: true;
2599
2896
  hasDefault: false;
2600
2897
  isPrimaryKey: false;
2601
2898
  isAutoincrement: false;
@@ -2605,16 +2902,30 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2605
2902
  identity: undefined;
2606
2903
  generated: undefined;
2607
2904
  }, {}, {}>;
2608
- retiring: import("drizzle-orm/pg-core").PgColumn<{
2609
- name: "retiring";
2610
- tableName: "sandbox_resources";
2905
+ };
2906
+ dialect: 'pg';
2907
+ }>;
2908
+ /**
2909
+ * The Tool Gate's keyed MCP calls (F4.1 G3): one row per call, written by the gates service
2910
+ * before it calls the server and given the answer after. A re-send whose row has an answer
2911
+ * gets it; one whose row has none, and that the gateway no longer runs, was lost with an
2912
+ * earlier gateway and answers `uncertain`, so a call is never run twice. Rows are deleted a
2913
+ * day after they settle.
2914
+ */
2915
+ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithColumns<{
2916
+ name: "tool_crossings";
2917
+ schema: "nylorun";
2918
+ columns: {
2919
+ key: import("drizzle-orm/pg-core").PgColumn<{
2920
+ name: "key";
2921
+ tableName: "tool_crossings";
2611
2922
  dataType: "custom";
2612
2923
  columnType: "PgCustomColumn";
2613
2924
  data: string;
2614
2925
  driverParam: string;
2615
- notNull: false;
2926
+ notNull: true;
2616
2927
  hasDefault: false;
2617
- isPrimaryKey: false;
2928
+ isPrimaryKey: true;
2618
2929
  isAutoincrement: false;
2619
2930
  hasRuntimeDefault: false;
2620
2931
  enumValues: undefined;
@@ -2624,14 +2935,14 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2624
2935
  }, {}, {
2625
2936
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2626
2937
  }>;
2627
- volumeId: import("drizzle-orm/pg-core").PgColumn<{
2628
- name: "volumeId";
2629
- tableName: "sandbox_resources";
2938
+ hash: import("drizzle-orm/pg-core").PgColumn<{
2939
+ name: "hash";
2940
+ tableName: "tool_crossings";
2630
2941
  dataType: "string";
2631
2942
  columnType: "PgText";
2632
2943
  data: string;
2633
2944
  driverParam: string;
2634
- notNull: false;
2945
+ notNull: true;
2635
2946
  hasDefault: false;
2636
2947
  isPrimaryKey: false;
2637
2948
  isAutoincrement: false;
@@ -2641,6 +2952,63 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2641
2952
  identity: undefined;
2642
2953
  generated: undefined;
2643
2954
  }, {}, {}>;
2955
+ startedAt: import("drizzle-orm/pg-core").PgColumn<{
2956
+ name: "startedAt";
2957
+ tableName: "tool_crossings";
2958
+ dataType: "custom";
2959
+ columnType: "PgCustomColumn";
2960
+ data: string;
2961
+ driverParam: string;
2962
+ notNull: true;
2963
+ hasDefault: false;
2964
+ isPrimaryKey: false;
2965
+ isAutoincrement: false;
2966
+ hasRuntimeDefault: false;
2967
+ enumValues: undefined;
2968
+ baseColumn: never;
2969
+ identity: undefined;
2970
+ generated: undefined;
2971
+ }, {}, {
2972
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2973
+ }>;
2974
+ settledAt: import("drizzle-orm/pg-core").PgColumn<{
2975
+ name: "settledAt";
2976
+ tableName: "tool_crossings";
2977
+ dataType: "custom";
2978
+ columnType: "PgCustomColumn";
2979
+ data: string;
2980
+ driverParam: string;
2981
+ notNull: false;
2982
+ hasDefault: false;
2983
+ isPrimaryKey: false;
2984
+ isAutoincrement: false;
2985
+ hasRuntimeDefault: false;
2986
+ enumValues: undefined;
2987
+ baseColumn: never;
2988
+ identity: undefined;
2989
+ generated: undefined;
2990
+ }, {}, {
2991
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2992
+ }>;
2993
+ answer: import("drizzle-orm/pg-core").PgColumn<{
2994
+ name: "answer";
2995
+ tableName: "tool_crossings";
2996
+ dataType: "custom";
2997
+ columnType: "PgCustomColumn";
2998
+ data: unknown;
2999
+ driverParam: unknown;
3000
+ notNull: false;
3001
+ hasDefault: false;
3002
+ isPrimaryKey: false;
3003
+ isAutoincrement: false;
3004
+ hasRuntimeDefault: false;
3005
+ enumValues: undefined;
3006
+ baseColumn: never;
3007
+ identity: undefined;
3008
+ generated: undefined;
3009
+ }, {}, {
3010
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
3011
+ }>;
2644
3012
  };
2645
3013
  dialect: 'pg';
2646
3014
  }>;
@@ -2813,6 +3181,25 @@ export declare const artifacts: import("drizzle-orm/pg-core").PgTableWithColumns
2813
3181
  identity: undefined;
2814
3182
  generated: undefined;
2815
3183
  }, {}, {}>;
3184
+ environmentId: import("drizzle-orm/pg-core").PgColumn<{
3185
+ name: "environmentId";
3186
+ tableName: "artifacts";
3187
+ dataType: "custom";
3188
+ columnType: "PgCustomColumn";
3189
+ data: string;
3190
+ driverParam: string;
3191
+ notNull: false;
3192
+ hasDefault: false;
3193
+ isPrimaryKey: false;
3194
+ isAutoincrement: false;
3195
+ hasRuntimeDefault: false;
3196
+ enumValues: undefined;
3197
+ baseColumn: never;
3198
+ identity: undefined;
3199
+ generated: undefined;
3200
+ }, {}, {
3201
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
3202
+ }>;
2816
3203
  };
2817
3204
  dialect: 'pg';
2818
3205
  }>;
@@ -2930,14 +3317,14 @@ export declare const artifactVersions: import("drizzle-orm/pg-core").PgTableWith
2930
3317
  tableName: "artifact_versions";
2931
3318
  dataType: "string";
2932
3319
  columnType: "PgText";
2933
- data: "engine" | "export" | "upload";
3320
+ data: "engine" | "export" | "snapshot" | "upload";
2934
3321
  driverParam: string;
2935
3322
  notNull: true;
2936
3323
  hasDefault: false;
2937
3324
  isPrimaryKey: false;
2938
3325
  isAutoincrement: false;
2939
3326
  hasRuntimeDefault: false;
2940
- enumValues: ["upload", "engine", "export"];
3327
+ enumValues: ["upload", "engine", "export", "snapshot"];
2941
3328
  baseColumn: never;
2942
3329
  identity: undefined;
2943
3330
  generated: undefined;
@@ -3705,16 +4092,16 @@ export declare const sandboxSignals: import("drizzle-orm/pg-core").PgTableWithCo
3705
4092
  dialect: 'pg';
3706
4093
  }>;
3707
4094
  /**
3708
- * Each sandbox's lifecycle stream (`nylorun.sandbox-event/1`), numbered from 0 per sandbox id.
3709
- * Written only by the record module; not published to the stream relay.
4095
+ * Each Environment's lifecycle stream (`nylorun.environment-event/1`), numbered from 0 per
4096
+ * Environment id. Written only by the record module; not published to the stream relay.
3710
4097
  */
3711
- export declare const sandboxEvents: import("drizzle-orm/pg-core").PgTableWithColumns<{
3712
- name: "sandbox_events";
4098
+ export declare const environmentEvents: import("drizzle-orm/pg-core").PgTableWithColumns<{
4099
+ name: "environment_events";
3713
4100
  schema: "nylorun_streams";
3714
4101
  columns: {
3715
- sandboxId: import("drizzle-orm/pg-core").PgColumn<{
3716
- name: "sandboxId";
3717
- tableName: "sandbox_events";
4102
+ environmentId: import("drizzle-orm/pg-core").PgColumn<{
4103
+ name: "environmentId";
4104
+ tableName: "environment_events";
3718
4105
  dataType: "custom";
3719
4106
  columnType: "PgCustomColumn";
3720
4107
  data: string;
@@ -3733,7 +4120,7 @@ export declare const sandboxEvents: import("drizzle-orm/pg-core").PgTableWithCol
3733
4120
  }>;
3734
4121
  seq: import("drizzle-orm/pg-core").PgColumn<{
3735
4122
  name: "seq";
3736
- tableName: "sandbox_events";
4123
+ tableName: "environment_events";
3737
4124
  dataType: "number";
3738
4125
  columnType: "PgBigInt53";
3739
4126
  data: number;
@@ -3750,7 +4137,7 @@ export declare const sandboxEvents: import("drizzle-orm/pg-core").PgTableWithCol
3750
4137
  }, {}, {}>;
3751
4138
  type: import("drizzle-orm/pg-core").PgColumn<{
3752
4139
  name: "type";
3753
- tableName: "sandbox_events";
4140
+ tableName: "environment_events";
3754
4141
  dataType: "string";
3755
4142
  columnType: "PgText";
3756
4143
  data: string;
@@ -3767,7 +4154,7 @@ export declare const sandboxEvents: import("drizzle-orm/pg-core").PgTableWithCol
3767
4154
  }, {}, {}>;
3768
4155
  body: import("drizzle-orm/pg-core").PgColumn<{
3769
4156
  name: "body";
3770
- tableName: "sandbox_events";
4157
+ tableName: "environment_events";
3771
4158
  dataType: "custom";
3772
4159
  columnType: "PgCustomColumn";
3773
4160
  data: unknown;
@@ -3786,7 +4173,7 @@ export declare const sandboxEvents: import("drizzle-orm/pg-core").PgTableWithCol
3786
4173
  }>;
3787
4174
  committedAt: import("drizzle-orm/pg-core").PgColumn<{
3788
4175
  name: "committedAt";
3789
- tableName: "sandbox_events";
4176
+ tableName: "environment_events";
3790
4177
  dataType: "string";
3791
4178
  columnType: "PgTimestampString";
3792
4179
  data: string;
@@ -4034,11 +4421,14 @@ export type SigningKeyRow = typeof signingKeys.$inferSelect;
4034
4421
  export type ModelUsageRow = typeof modelUsage.$inferSelect;
4035
4422
  export type ModelBudgetRow = typeof modelBudgets.$inferSelect;
4036
4423
  export type ToolCrossingRow = typeof toolCrossings.$inferSelect;
4037
- export type SandboxResourceRow = typeof sandboxResources.$inferSelect;
4424
+ export type EnvironmentRowColumns = typeof environments.$inferSelect;
4038
4425
  export type ArtifactRow = typeof artifacts.$inferSelect;
4039
4426
  export type ArtifactVersionRow = typeof artifactVersions.$inferSelect;
4040
4427
  export type DefinitionFileRow = typeof definitionFiles.$inferSelect;
4041
- export type ModelUsageWrite = Omit<ModelUsageRow, "duplicate" | "txid" | "tokensReported" | "costKnown"> & {
4428
+ export type ModelUsageWrite = Omit<ModelUsageRow, "duplicate" | "txid" | "tokensReported" | "costKnown" | "startedAt" | "endedAt" | "firstTokenMs"> & {
4042
4429
  tokensReported?: boolean | null;
4043
4430
  costKnown?: boolean | null;
4431
+ startedAt?: string | null;
4432
+ endedAt?: string | null;
4433
+ firstTokenMs?: number | null;
4044
4434
  };