@nylorun/runtime 0.23.0-beta → 0.24.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 (252) hide show
  1. package/CHANGELOG.md +148 -0
  2. package/README.md +79 -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/endpoint.js +5 -1
  10. package/dist/api/a2a/routes.d.ts +2 -0
  11. package/dist/api/a2a/routes.js +2 -2
  12. package/dist/api/a2a/tasks.js +2 -1
  13. package/dist/api/ag-ui/endpoint.js +4 -2
  14. package/dist/api/ag-ui/history.js +4 -1
  15. package/dist/api/ag-ui/routes.d.ts +4 -1
  16. package/dist/api/ag-ui/routes.js +11 -10
  17. package/dist/api/ag-ui/translate.js +3 -2
  18. package/dist/api/components.d.ts +4953 -1204
  19. package/dist/api/components.js +25 -16
  20. package/dist/api/gate/keys.js +7 -1
  21. package/dist/api/gate/routes.d.ts +6 -0
  22. package/dist/api/gate/routes.js +39 -3
  23. package/dist/api/http/app.js +4 -4
  24. package/dist/api/http/define.d.ts +6 -0
  25. package/dist/api/http/define.js +13 -1
  26. package/dist/api/http/respond.js +1 -1
  27. package/dist/api/http/routes/artifacts.js +35 -8
  28. package/dist/api/http/routes/coverage.d.ts +9 -0
  29. package/dist/api/http/routes/coverage.js +34 -0
  30. package/dist/api/http/routes/environments.d.ts +11 -0
  31. package/dist/api/http/routes/environments.js +283 -0
  32. package/dist/api/http/routes/mcp.d.ts +1 -1
  33. package/dist/api/http/routes/mcp.js +2 -2
  34. package/dist/api/http/routes/me.js +1 -1
  35. package/dist/api/http/routes/reads.d.ts +45 -9
  36. package/dist/api/http/routes/reads.js +54 -5
  37. package/dist/api/http/routes/sessions.js +11 -6
  38. package/dist/api/http/routes/tenant.js +32 -10
  39. package/dist/api/openapi.js +31 -26
  40. package/dist/artifacts/disk.d.ts +59 -0
  41. package/dist/artifacts/disk.js +563 -0
  42. package/dist/artifacts/export.d.ts +1 -1
  43. package/dist/artifacts/export.js +2 -3
  44. package/dist/artifacts/folders.d.ts +6 -3
  45. package/dist/artifacts/folders.js +17 -12
  46. package/dist/artifacts/service.d.ts +2 -1
  47. package/dist/artifacts/service.js +6 -1
  48. package/dist/artifacts/workspace.d.ts +1 -1
  49. package/dist/artifacts/workspace.js +1 -1
  50. package/dist/core/flow-host.d.ts +2 -3
  51. package/dist/core/flow-host.js +3 -0
  52. package/dist/core/provider.d.ts +3 -2
  53. package/dist/core/provider.js +5 -37
  54. package/dist/core/sandbox-routes.d.ts +2 -21
  55. package/dist/core/sandbox-routes.js +10 -43
  56. package/dist/execution/types.d.ts +1 -1
  57. package/dist/gates/contract.d.ts +3 -24
  58. package/dist/gates/contract.js +1 -36
  59. package/dist/gates/egress-credentials.d.ts +9 -0
  60. package/dist/gates/egress-credentials.js +11 -4
  61. package/dist/gates/egress.d.ts +28 -1
  62. package/dist/gates/egress.js +115 -10
  63. package/dist/gates/fixture-model.d.ts +28 -0
  64. package/dist/gates/fixture-model.js +92 -0
  65. package/dist/gates/handler.js +4 -4
  66. package/dist/gates/http-tool.d.ts +6 -2
  67. package/dist/gates/http-tool.js +3 -5
  68. package/dist/gates/in-process.d.ts +5 -0
  69. package/dist/gates/in-process.js +12 -1
  70. package/dist/gates/journal.d.ts +30 -0
  71. package/dist/gates/journal.js +52 -0
  72. package/dist/gates/mcp-handler.d.ts +4 -0
  73. package/dist/gates/mcp-handler.js +5 -1
  74. package/dist/gates/meter.d.ts +10 -2
  75. package/dist/gates/meter.js +20 -5
  76. package/dist/gates/policy.d.ts +49 -0
  77. package/dist/gates/policy.js +134 -0
  78. package/dist/gates/tenant-vaults.d.ts +7 -7
  79. package/dist/gates/tenant-vaults.js +5 -5
  80. package/dist/gates/tool-calls.d.ts +10 -5
  81. package/dist/gates/tool-calls.js +28 -10
  82. package/dist/gates/tool-client.d.ts +8 -0
  83. package/dist/gates/tool-client.js +27 -11
  84. package/dist/gates/tool-contract.d.ts +10 -68
  85. package/dist/gates/tool-contract.js +1 -85
  86. package/dist/gates/tool-gate.d.ts +1 -1
  87. package/dist/harness/calls.d.ts +12 -5
  88. package/dist/harness/calls.js +21 -12
  89. package/dist/harness/executors.js +12 -9
  90. package/dist/harness/main.js +18 -5
  91. package/dist/harness/pod.d.ts +34 -0
  92. package/dist/harness/pod.js +41 -0
  93. package/dist/harness/service.d.ts +0 -1
  94. package/dist/harness/service.js +13 -5
  95. package/dist/harness/setup.d.ts +27 -0
  96. package/dist/harness/setup.js +150 -0
  97. package/dist/harness/ws-client.js +3 -2
  98. package/dist/harness/ws-port.d.ts +1 -5
  99. package/dist/harness/ws-port.js +1 -5
  100. package/dist/harness-api/in-process.js +3 -3
  101. package/dist/harness-api/record.d.ts +15 -1
  102. package/dist/harness-api/record.js +174 -44
  103. package/dist/harness-api/redact.d.ts +3 -0
  104. package/dist/harness-api/redact.js +45 -0
  105. package/dist/harness-api/server.d.ts +8 -0
  106. package/dist/harness-api/server.js +93 -13
  107. package/dist/harness-api/start.d.ts +10 -3
  108. package/dist/harness-api/start.js +40 -10
  109. package/dist/harness-api/tool-journal.d.ts +96 -0
  110. package/dist/harness-api/tool-journal.js +102 -0
  111. package/dist/harness-api/tool-status.d.ts +13 -0
  112. package/dist/harness-api/tool-status.js +26 -0
  113. package/dist/harness-api/workspace.d.ts +6 -3
  114. package/dist/harness-api/workspace.js +27 -11
  115. package/dist/harness-api/ws-server.d.ts +11 -3
  116. package/dist/harness-api/ws-server.js +94 -15
  117. package/dist/host/gates.d.ts +2 -1
  118. package/dist/host/gates.js +10 -2
  119. package/dist/host/main.js +54 -5
  120. package/dist/host/operate.js +67 -5
  121. package/dist/host/stack-config.d.ts +64 -0
  122. package/dist/host/stack-config.js +61 -1
  123. package/dist/keys/client.js +4 -1
  124. package/dist/keys/keys.d.ts +5 -5
  125. package/dist/keys/keys.js +5 -7
  126. package/dist/management-openapi.json +999 -2211
  127. package/dist/mcp/connect.d.ts +25 -20
  128. package/dist/mcp/connect.js +29 -30
  129. package/dist/mcp/pool.d.ts +2 -2
  130. package/dist/mcp/pool.js +1 -1
  131. package/dist/mcp/preview.d.ts +3 -3
  132. package/dist/mcp/preview.js +10 -20
  133. package/dist/mcp/snapshot.d.ts +5 -11
  134. package/dist/mcp/snapshot.js +6 -7
  135. package/dist/model/pi-model.js +8 -0
  136. package/dist/openapi.json +6955 -2526
  137. package/dist/reads/types.d.ts +16 -3
  138. package/dist/record/append.d.ts +3 -1
  139. package/dist/record/append.js +1 -0
  140. package/dist/record/envelope.d.ts +5 -1
  141. package/dist/record/envelope.js +7 -3
  142. package/dist/record/environment.d.ts +25 -0
  143. package/dist/record/environment.js +44 -0
  144. package/dist/record/index.d.ts +1 -1
  145. package/dist/record/index.js +1 -1
  146. package/dist/sandbox/disk-fs.d.ts +95 -0
  147. package/dist/sandbox/disk-fs.js +206 -0
  148. package/dist/sandbox/join.d.ts +17 -18
  149. package/dist/sandbox/join.js +42 -15
  150. package/dist/sandbox/manager.d.ts +16 -8
  151. package/dist/sandbox/manager.js +33 -17
  152. package/dist/sandbox/placement.d.ts +13 -12
  153. package/dist/sandbox/placement.js +29 -12
  154. package/dist/sandbox/pods/client.d.ts +6 -1
  155. package/dist/sandbox/pods/lifecycle.d.ts +28 -27
  156. package/dist/sandbox/pods/lifecycle.js +14 -26
  157. package/dist/sandbox/pods/reconcile.js +18 -12
  158. package/dist/sandbox/pods/spec.d.ts +15 -13
  159. package/dist/sandbox/pods/spec.js +16 -20
  160. package/dist/sandbox/records.d.ts +2 -2
  161. package/dist/sandbox/records.js +3 -3
  162. package/dist/sandbox/resolve.d.ts +35 -27
  163. package/dist/sandbox/resolve.js +66 -41
  164. package/dist/sandbox/session-sandbox.js +1 -1
  165. package/dist/sandbox/setup.d.ts +61 -0
  166. package/dist/sandbox/setup.js +123 -0
  167. package/dist/sandbox/share.d.ts +11 -21
  168. package/dist/sandbox/share.js +12 -41
  169. package/dist/sandbox/tenant-config.d.ts +12 -14
  170. package/dist/sandbox/tenant-config.js +12 -17
  171. package/dist/sandbox/types.d.ts +6 -0
  172. package/dist/store/postgres/drizzle/0020_environments.sql +63 -0
  173. package/dist/store/postgres/drizzle/0021_disk_versions.sql +7 -0
  174. package/dist/store/postgres/drizzle/0022_model_usage_timing.sql +5 -0
  175. package/dist/store/postgres/drizzle/0023_artifact_pages.sql +1 -0
  176. package/dist/store/postgres/drizzle/meta/_journal.json +28 -0
  177. package/dist/store/postgres/reads.js +117 -17
  178. package/dist/store/postgres/record-writer.d.ts +4 -4
  179. package/dist/store/postgres/record-writer.js +9 -9
  180. package/dist/store/postgres/record.d.ts +7 -0
  181. package/dist/store/postgres/record.js +23 -2
  182. package/dist/store/postgres/schema.d.ts +934 -761
  183. package/dist/store/postgres/schema.js +102 -73
  184. package/dist/store/postgres/store.js +119 -66
  185. package/dist/store/types.d.ts +109 -48
  186. package/dist/tenant/advance.d.ts +7 -6
  187. package/dist/tenant/advance.js +115 -42
  188. package/dist/tenant/artifact-tool.js +3 -4
  189. package/dist/tenant/commands.d.ts +15 -2
  190. package/dist/tenant/commands.js +93 -12
  191. package/dist/tenant/context.d.ts +48 -22
  192. package/dist/tenant/context.js +4 -15
  193. package/dist/tenant/effects.d.ts +1 -1
  194. package/dist/tenant/effects.js +37 -20
  195. package/dist/tenant/environments.d.ts +167 -0
  196. package/dist/tenant/environments.js +823 -0
  197. package/dist/tenant/harness-tokens.d.ts +21 -0
  198. package/dist/tenant/harness-tokens.js +61 -0
  199. package/dist/tenant/host-token.d.ts +1 -1
  200. package/dist/tenant/host-token.js +2 -4
  201. package/dist/tenant/identity-file.d.ts +4 -4
  202. package/dist/tenant/identity-file.js +17 -8
  203. package/dist/tenant/issuers.js +3 -3
  204. package/dist/tenant/principals.js +1 -1
  205. package/dist/tenant/reset.js +3 -3
  206. package/dist/tenant/runtime.d.ts +6 -1
  207. package/dist/tenant/runtime.js +7 -1
  208. package/dist/tenant/session.d.ts +3 -3
  209. package/dist/tenant/session.js +0 -14
  210. package/dist/tenant/sessions.d.ts +13 -13
  211. package/dist/tenant/sessions.js +61 -138
  212. package/dist/tenant/signing-keys.d.ts +5 -1
  213. package/dist/tenant/status.js +3 -3
  214. package/dist/tenant/sweep.js +12 -6
  215. package/dist/tenant/transcript.d.ts +210 -20
  216. package/dist/tenant/transcript.js +62 -11
  217. package/dist/tenant/turn-timing.d.ts +43 -0
  218. package/dist/tenant/turn-timing.js +39 -0
  219. package/dist/tenant/types.d.ts +2 -0
  220. package/dist/traces/ids.d.ts +42 -0
  221. package/dist/traces/ids.js +85 -0
  222. package/dist/traces/key.d.ts +6 -0
  223. package/dist/traces/key.js +37 -0
  224. package/dist/traces/map.d.ts +113 -0
  225. package/dist/traces/map.js +317 -0
  226. package/dist/traces/options.d.ts +7 -0
  227. package/dist/traces/options.js +1 -0
  228. package/dist/traces/otlp.d.ts +42 -0
  229. package/dist/traces/otlp.js +84 -0
  230. package/dist/traces/projector.d.ts +58 -0
  231. package/dist/traces/projector.js +200 -0
  232. package/dist/traces/read.d.ts +23 -0
  233. package/dist/traces/read.js +16 -0
  234. package/dist/vault/coverage.d.ts +26 -0
  235. package/dist/vault/coverage.js +64 -0
  236. package/dist/vault/error.d.ts +11 -1
  237. package/dist/vault/error.js +5 -1
  238. package/dist/vault/service.d.ts +47 -48
  239. package/dist/vault/service.js +321 -382
  240. package/dist/vault/sources.d.ts +5 -16
  241. package/dist/vault/sources.js +6 -8
  242. package/dist/version.d.ts +1 -1
  243. package/dist/version.js +2 -2
  244. package/package.json +13 -13
  245. package/dist/api/http/routes/sandboxes.d.ts +0 -9
  246. package/dist/api/http/routes/sandboxes.js +0 -153
  247. package/dist/api/http/routes/vaults.d.ts +0 -10
  248. package/dist/api/http/routes/vaults.js +0 -139
  249. package/dist/record/sandbox.d.ts +0 -25
  250. package/dist/record/sandbox.js +0 -43
  251. package/dist/tenant/sandboxes.d.ts +0 -123
  252. 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,123 +1185,78 @@ 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;
1224
- isAutoincrement: false;
1225
- hasRuntimeDefault: false;
1226
- enumValues: undefined;
1227
- baseColumn: never;
1228
- identity: "always";
1229
- generated: undefined;
1230
- }, {}, {}>;
1231
- id: import("drizzle-orm/pg-core").PgColumn<{
1232
- name: "id";
1233
- tableName: "vault_audit";
1234
- dataType: "string";
1235
- columnType: "PgText";
1236
- data: string;
1237
- driverParam: string;
1238
- notNull: true;
1239
- hasDefault: false;
1240
- isPrimaryKey: false;
1241
- isAutoincrement: false;
1242
- hasRuntimeDefault: false;
1243
- enumValues: [string, ...string[]];
1244
- baseColumn: never;
1245
- identity: undefined;
1246
- generated: undefined;
1247
- }, {}, {}>;
1248
- at: import("drizzle-orm/pg-core").PgColumn<{
1249
- name: "at";
1250
- tableName: "vault_audit";
1251
- dataType: "string";
1252
- columnType: "PgText";
1253
- data: string;
1254
- driverParam: string;
1255
- notNull: true;
1256
- hasDefault: false;
1257
1215
  isPrimaryKey: false;
1258
1216
  isAutoincrement: false;
1259
1217
  hasRuntimeDefault: false;
1260
- enumValues: [string, ...string[]];
1218
+ enumValues: undefined;
1261
1219
  baseColumn: never;
1262
1220
  identity: undefined;
1263
1221
  generated: undefined;
1264
1222
  }, {}, {}>;
1265
- actor: import("drizzle-orm/pg-core").PgColumn<{
1266
- name: "actor";
1267
- tableName: "vault_audit";
1268
- dataType: "string";
1269
- columnType: "PgText";
1270
- 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;
1271
1229
  driverParam: string;
1272
- notNull: true;
1230
+ notNull: false;
1273
1231
  hasDefault: false;
1274
1232
  isPrimaryKey: false;
1275
1233
  isAutoincrement: false;
1276
1234
  hasRuntimeDefault: false;
1277
- enumValues: [string, ...string[]];
1235
+ enumValues: undefined;
1278
1236
  baseColumn: never;
1279
1237
  identity: undefined;
1280
1238
  generated: undefined;
1281
1239
  }, {}, {}>;
1282
- action: import("drizzle-orm/pg-core").PgColumn<{
1283
- name: "action";
1284
- tableName: "vault_audit";
1285
- dataType: "string";
1286
- columnType: "PgText";
1287
- 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;
1288
1246
  driverParam: string;
1289
- notNull: true;
1247
+ notNull: false;
1290
1248
  hasDefault: false;
1291
1249
  isPrimaryKey: false;
1292
1250
  isAutoincrement: false;
1293
1251
  hasRuntimeDefault: false;
1294
- enumValues: [string, ...string[]];
1252
+ enumValues: undefined;
1295
1253
  baseColumn: never;
1296
1254
  identity: undefined;
1297
1255
  generated: undefined;
1298
1256
  }, {}, {}>;
1299
- vaultId: import("drizzle-orm/pg-core").PgColumn<{
1300
- name: "vaultId";
1301
- tableName: "vault_audit";
1257
+ reason: import("drizzle-orm/pg-core").PgColumn<{
1258
+ name: "reason";
1259
+ tableName: "environments";
1302
1260
  dataType: "string";
1303
1261
  columnType: "PgText";
1304
1262
  data: string;
@@ -1313,11 +1271,11 @@ export declare const vaultAudit: import("drizzle-orm/pg-core").PgTableWithColumn
1313
1271
  identity: undefined;
1314
1272
  generated: undefined;
1315
1273
  }, {}, {}>;
1316
- credentialId: import("drizzle-orm/pg-core").PgColumn<{
1317
- name: "credentialId";
1318
- tableName: "vault_audit";
1319
- dataType: "string";
1320
- columnType: "PgText";
1274
+ retiring: import("drizzle-orm/pg-core").PgColumn<{
1275
+ name: "retiring";
1276
+ tableName: "environments";
1277
+ dataType: "custom";
1278
+ columnType: "PgCustomColumn";
1321
1279
  data: string;
1322
1280
  driverParam: string;
1323
1281
  notNull: false;
@@ -1325,14 +1283,16 @@ export declare const vaultAudit: import("drizzle-orm/pg-core").PgTableWithColumn
1325
1283
  isPrimaryKey: false;
1326
1284
  isAutoincrement: false;
1327
1285
  hasRuntimeDefault: false;
1328
- enumValues: [string, ...string[]];
1286
+ enumValues: undefined;
1329
1287
  baseColumn: never;
1330
1288
  identity: undefined;
1331
1289
  generated: undefined;
1332
- }, {}, {}>;
1333
- sessionId: import("drizzle-orm/pg-core").PgColumn<{
1334
- name: "sessionId";
1335
- tableName: "vault_audit";
1290
+ }, {}, {
1291
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1292
+ }>;
1293
+ volumeId: import("drizzle-orm/pg-core").PgColumn<{
1294
+ name: "volumeId";
1295
+ tableName: "environments";
1336
1296
  dataType: "string";
1337
1297
  columnType: "PgText";
1338
1298
  data: string;
@@ -1347,52 +1307,60 @@ export declare const vaultAudit: import("drizzle-orm/pg-core").PgTableWithColumn
1347
1307
  identity: undefined;
1348
1308
  generated: undefined;
1349
1309
  }, {}, {}>;
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;
1310
+ diskOp: import("drizzle-orm/pg-core").PgColumn<{
1311
+ name: "diskOp";
1312
+ tableName: "environments";
1313
+ dataType: "custom";
1314
+ columnType: "PgCustomColumn";
1315
+ data: unknown;
1316
+ driverParam: unknown;
1357
1317
  notNull: false;
1358
1318
  hasDefault: false;
1359
1319
  isPrimaryKey: false;
1360
1320
  isAutoincrement: false;
1361
1321
  hasRuntimeDefault: false;
1362
- enumValues: [string, ...string[]];
1322
+ enumValues: undefined;
1363
1323
  baseColumn: never;
1364
1324
  identity: undefined;
1365
1325
  generated: undefined;
1366
- }, {}, {}>;
1367
- outcome: import("drizzle-orm/pg-core").PgColumn<{
1368
- name: "outcome";
1369
- tableName: "vault_audit";
1370
- dataType: "string";
1371
- columnType: "PgText";
1372
- data: string;
1373
- driverParam: string;
1374
- notNull: true;
1326
+ }, {}, {
1327
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1328
+ }>;
1329
+ diskSeed: import("drizzle-orm/pg-core").PgColumn<{
1330
+ name: "diskSeed";
1331
+ tableName: "environments";
1332
+ dataType: "custom";
1333
+ columnType: "PgCustomColumn";
1334
+ data: unknown;
1335
+ driverParam: unknown;
1336
+ notNull: false;
1375
1337
  hasDefault: false;
1376
1338
  isPrimaryKey: false;
1377
1339
  isAutoincrement: false;
1378
1340
  hasRuntimeDefault: false;
1379
- enumValues: [string, ...string[]];
1341
+ enumValues: undefined;
1380
1342
  baseColumn: never;
1381
1343
  identity: undefined;
1382
1344
  generated: undefined;
1383
- }, {}, {}>;
1345
+ }, {}, {
1346
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1347
+ }>;
1384
1348
  };
1385
1349
  dialect: 'pg';
1386
1350
  }>;
1387
- export declare const vaultIdempotency: import("drizzle-orm/pg-core").PgTableWithColumns<{
1388
- name: "vault_idempotency";
1351
+ /**
1352
+ * A vault (D56): the host model's (`id = 'host'`), or one Environment's, created and deleted with
1353
+ * it (`environment_id`, unique, deleted with the Environment's row). No other vault exists.
1354
+ */
1355
+ export declare const vaults: import("drizzle-orm/pg-core").PgTableWithColumns<{
1356
+ name: "vaults";
1389
1357
  schema: "nylorun";
1390
1358
  columns: {
1391
1359
  id: import("drizzle-orm/pg-core").PgColumn<{
1392
1360
  name: "id";
1393
- tableName: "vault_idempotency";
1394
- dataType: "string";
1395
- columnType: "PgText";
1361
+ tableName: "vaults";
1362
+ dataType: "custom";
1363
+ columnType: "PgCustomColumn";
1396
1364
  data: string;
1397
1365
  driverParam: string;
1398
1366
  notNull: true;
@@ -1400,14 +1368,16 @@ export declare const vaultIdempotency: import("drizzle-orm/pg-core").PgTableWith
1400
1368
  isPrimaryKey: true;
1401
1369
  isAutoincrement: false;
1402
1370
  hasRuntimeDefault: false;
1403
- enumValues: [string, ...string[]];
1371
+ enumValues: undefined;
1404
1372
  baseColumn: never;
1405
1373
  identity: undefined;
1406
1374
  generated: undefined;
1407
- }, {}, {}>;
1408
- bodyHash: import("drizzle-orm/pg-core").PgColumn<{
1409
- name: "bodyHash";
1410
- tableName: "vault_idempotency";
1375
+ }, {}, {
1376
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1377
+ }>;
1378
+ name: import("drizzle-orm/pg-core").PgColumn<{
1379
+ name: "name";
1380
+ tableName: "vaults";
1411
1381
  dataType: "string";
1412
1382
  columnType: "PgText";
1413
1383
  data: string;
@@ -1422,14 +1392,14 @@ export declare const vaultIdempotency: import("drizzle-orm/pg-core").PgTableWith
1422
1392
  identity: undefined;
1423
1393
  generated: undefined;
1424
1394
  }, {}, {}>;
1425
- response: import("drizzle-orm/pg-core").PgColumn<{
1426
- name: "response";
1427
- tableName: "vault_idempotency";
1395
+ metadataJson: import("drizzle-orm/pg-core").PgColumn<{
1396
+ name: "metadataJson";
1397
+ tableName: "vaults";
1428
1398
  dataType: "string";
1429
1399
  columnType: "PgText";
1430
1400
  data: string;
1431
1401
  driverParam: string;
1432
- notNull: true;
1402
+ notNull: false;
1433
1403
  hasDefault: false;
1434
1404
  isPrimaryKey: false;
1435
1405
  isAutoincrement: false;
@@ -1439,61 +1409,55 @@ export declare const vaultIdempotency: import("drizzle-orm/pg-core").PgTableWith
1439
1409
  identity: undefined;
1440
1410
  generated: undefined;
1441
1411
  }, {}, {}>;
1442
- };
1443
- dialect: 'pg';
1444
- }>;
1445
- export declare const tenantSettings: import("drizzle-orm/pg-core").PgTableWithColumns<{
1446
- name: "tenant_settings";
1447
- schema: "nylorun";
1448
- columns: {
1449
- key: import("drizzle-orm/pg-core").PgColumn<{
1450
- name: "key";
1451
- tableName: "tenant_settings";
1452
- dataType: "string";
1453
- columnType: "PgText";
1412
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1413
+ name: "createdAt";
1414
+ tableName: "vaults";
1415
+ dataType: "custom";
1416
+ columnType: "PgCustomColumn";
1454
1417
  data: string;
1455
1418
  driverParam: string;
1456
1419
  notNull: true;
1457
1420
  hasDefault: false;
1458
- isPrimaryKey: true;
1421
+ isPrimaryKey: false;
1459
1422
  isAutoincrement: false;
1460
1423
  hasRuntimeDefault: false;
1461
- enumValues: [string, ...string[]];
1424
+ enumValues: undefined;
1462
1425
  baseColumn: never;
1463
1426
  identity: undefined;
1464
1427
  generated: undefined;
1465
- }, {}, {}>;
1466
- value: import("drizzle-orm/pg-core").PgColumn<{
1467
- name: "value";
1468
- tableName: "tenant_settings";
1469
- dataType: "string";
1470
- columnType: "PgText";
1428
+ }, {}, {
1429
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1430
+ }>;
1431
+ environmentId: import("drizzle-orm/pg-core").PgColumn<{
1432
+ name: "environmentId";
1433
+ tableName: "vaults";
1434
+ dataType: "custom";
1435
+ columnType: "PgCustomColumn";
1471
1436
  data: string;
1472
1437
  driverParam: string;
1473
- notNull: true;
1438
+ notNull: false;
1474
1439
  hasDefault: false;
1475
1440
  isPrimaryKey: false;
1476
1441
  isAutoincrement: false;
1477
1442
  hasRuntimeDefault: false;
1478
- enumValues: [string, ...string[]];
1443
+ enumValues: undefined;
1479
1444
  baseColumn: never;
1480
1445
  identity: undefined;
1481
1446
  generated: undefined;
1482
- }, {}, {}>;
1447
+ }, {}, {
1448
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1449
+ }>;
1483
1450
  };
1484
1451
  dialect: 'pg';
1485
1452
  }>;
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";
1453
+ /** A credential of a vault: its binding in the clear, its secret sealed. */
1454
+ export declare const vaultCredentials: import("drizzle-orm/pg-core").PgTableWithColumns<{
1455
+ name: "vault_credentials";
1492
1456
  schema: "nylorun";
1493
1457
  columns: {
1494
1458
  id: import("drizzle-orm/pg-core").PgColumn<{
1495
1459
  name: "id";
1496
- tableName: "signing_keys";
1460
+ tableName: "vault_credentials";
1497
1461
  dataType: "custom";
1498
1462
  columnType: "PgCustomColumn";
1499
1463
  data: string;
@@ -1510,52 +1474,122 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1510
1474
  }, {}, {
1511
1475
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1512
1476
  }>;
1513
- state: import("drizzle-orm/pg-core").PgColumn<{
1514
- name: "state";
1515
- tableName: "signing_keys";
1477
+ vaultId: import("drizzle-orm/pg-core").PgColumn<{
1478
+ name: "vaultId";
1479
+ tableName: "vault_credentials";
1516
1480
  dataType: "string";
1517
1481
  columnType: "PgText";
1518
- data: "current" | "previous" | "revoked" | "standby";
1482
+ data: string;
1519
1483
  driverParam: string;
1520
1484
  notNull: true;
1521
1485
  hasDefault: false;
1522
1486
  isPrimaryKey: false;
1523
1487
  isAutoincrement: false;
1524
1488
  hasRuntimeDefault: false;
1525
- enumValues: ["standby", "current", "previous", "revoked"];
1489
+ enumValues: [string, ...string[]];
1526
1490
  baseColumn: never;
1527
1491
  identity: undefined;
1528
1492
  generated: undefined;
1529
1493
  }, {}, {}>;
1530
- alg: import("drizzle-orm/pg-core").PgColumn<{
1531
- name: "alg";
1532
- tableName: "signing_keys";
1494
+ name: import("drizzle-orm/pg-core").PgColumn<{
1495
+ name: "name";
1496
+ tableName: "vault_credentials";
1533
1497
  dataType: "string";
1534
1498
  columnType: "PgText";
1535
- data: "ES256";
1499
+ data: string;
1536
1500
  driverParam: string;
1537
1501
  notNull: true;
1538
1502
  hasDefault: false;
1539
1503
  isPrimaryKey: false;
1540
1504
  isAutoincrement: false;
1541
1505
  hasRuntimeDefault: false;
1542
- enumValues: ["ES256"];
1506
+ enumValues: [string, ...string[]];
1543
1507
  baseColumn: never;
1544
1508
  identity: undefined;
1545
1509
  generated: undefined;
1546
1510
  }, {}, {}>;
1547
- publicJwk: import("drizzle-orm/pg-core").PgColumn<{
1548
- name: "publicJwk";
1549
- tableName: "signing_keys";
1511
+ type: import("drizzle-orm/pg-core").PgColumn<{
1512
+ name: "type";
1513
+ tableName: "vault_credentials";
1550
1514
  dataType: "string";
1551
1515
  columnType: "PgText";
1552
- data: string;
1516
+ data: "bearer" | "environment_secret" | "environment_variable" | "headers" | "model";
1517
+ driverParam: string;
1518
+ notNull: true;
1519
+ hasDefault: false;
1520
+ isPrimaryKey: false;
1521
+ isAutoincrement: false;
1522
+ hasRuntimeDefault: false;
1523
+ enumValues: ["bearer", "headers", "environment_secret", "environment_variable", "model"];
1524
+ baseColumn: never;
1525
+ identity: undefined;
1526
+ generated: undefined;
1527
+ }, {}, {}>;
1528
+ bindingJson: import("drizzle-orm/pg-core").PgColumn<{
1529
+ name: "bindingJson";
1530
+ tableName: "vault_credentials";
1531
+ dataType: "string";
1532
+ columnType: "PgText";
1533
+ data: string;
1534
+ driverParam: string;
1535
+ notNull: true;
1536
+ hasDefault: false;
1537
+ isPrimaryKey: false;
1538
+ isAutoincrement: false;
1539
+ hasRuntimeDefault: false;
1540
+ enumValues: [string, ...string[]];
1541
+ baseColumn: never;
1542
+ identity: undefined;
1543
+ generated: undefined;
1544
+ }, {}, {}>;
1545
+ expiresAt: import("drizzle-orm/pg-core").PgColumn<{
1546
+ name: "expiresAt";
1547
+ tableName: "vault_credentials";
1548
+ dataType: "string";
1549
+ columnType: "PgText";
1550
+ data: string;
1551
+ driverParam: string;
1552
+ notNull: false;
1553
+ hasDefault: false;
1554
+ isPrimaryKey: false;
1555
+ isAutoincrement: false;
1556
+ hasRuntimeDefault: false;
1557
+ enumValues: [string, ...string[]];
1558
+ baseColumn: never;
1559
+ identity: undefined;
1560
+ generated: undefined;
1561
+ }, {}, {}>;
1562
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1563
+ name: "createdAt";
1564
+ tableName: "vault_credentials";
1565
+ dataType: "custom";
1566
+ columnType: "PgCustomColumn";
1567
+ data: string;
1553
1568
  driverParam: string;
1554
1569
  notNull: true;
1555
1570
  hasDefault: false;
1556
1571
  isPrimaryKey: false;
1557
1572
  isAutoincrement: false;
1558
1573
  hasRuntimeDefault: false;
1574
+ enumValues: undefined;
1575
+ baseColumn: never;
1576
+ identity: undefined;
1577
+ generated: undefined;
1578
+ }, {}, {
1579
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1580
+ }>;
1581
+ rotatedAt: import("drizzle-orm/pg-core").PgColumn<{
1582
+ name: "rotatedAt";
1583
+ tableName: "vault_credentials";
1584
+ dataType: "string";
1585
+ columnType: "PgText";
1586
+ data: string;
1587
+ driverParam: string;
1588
+ notNull: false;
1589
+ hasDefault: false;
1590
+ isPrimaryKey: false;
1591
+ isAutoincrement: false;
1592
+ hasRuntimeDefault: false;
1559
1593
  enumValues: [string, ...string[]];
1560
1594
  baseColumn: never;
1561
1595
  identity: undefined;
@@ -1563,7 +1597,7 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1563
1597
  }, {}, {}>;
1564
1598
  kekId: import("drizzle-orm/pg-core").PgColumn<{
1565
1599
  name: "kekId";
1566
- tableName: "signing_keys";
1600
+ tableName: "vault_credentials";
1567
1601
  dataType: "string";
1568
1602
  columnType: "PgText";
1569
1603
  data: string;
@@ -1580,7 +1614,7 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1580
1614
  }, {}, {}>;
1581
1615
  nonce: import("drizzle-orm/pg-core").PgColumn<{
1582
1616
  name: "nonce";
1583
- tableName: "signing_keys";
1617
+ tableName: "vault_credentials";
1584
1618
  dataType: "custom";
1585
1619
  columnType: "PgCustomColumn";
1586
1620
  data: Uint8Array<ArrayBufferLike>;
@@ -1599,7 +1633,7 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1599
1633
  }>;
1600
1634
  ciphertext: import("drizzle-orm/pg-core").PgColumn<{
1601
1635
  name: "ciphertext";
1602
- tableName: "signing_keys";
1636
+ tableName: "vault_credentials";
1603
1637
  dataType: "custom";
1604
1638
  columnType: "PgCustomColumn";
1605
1639
  data: Uint8Array<ArrayBufferLike>;
@@ -1618,7 +1652,7 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1618
1652
  }>;
1619
1653
  wrappedDek: import("drizzle-orm/pg-core").PgColumn<{
1620
1654
  name: "wrappedDek";
1621
- tableName: "signing_keys";
1655
+ tableName: "vault_credentials";
1622
1656
  dataType: "custom";
1623
1657
  columnType: "PgCustomColumn";
1624
1658
  data: Uint8Array<ArrayBufferLike>;
@@ -1635,9 +1669,33 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1635
1669
  }, {}, {
1636
1670
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1637
1671
  }>;
1638
- createdAt: import("drizzle-orm/pg-core").PgColumn<{
1639
- name: "createdAt";
1640
- tableName: "signing_keys";
1672
+ };
1673
+ dialect: 'pg';
1674
+ }>;
1675
+ export declare const vaultAudit: import("drizzle-orm/pg-core").PgTableWithColumns<{
1676
+ name: "vault_audit";
1677
+ schema: "nylorun";
1678
+ columns: {
1679
+ ord: import("drizzle-orm/pg-core").PgColumn<{
1680
+ name: "ord";
1681
+ tableName: "vault_audit";
1682
+ dataType: "number";
1683
+ columnType: "PgBigInt53";
1684
+ data: number;
1685
+ driverParam: string | number;
1686
+ notNull: true;
1687
+ hasDefault: true;
1688
+ isPrimaryKey: true;
1689
+ isAutoincrement: false;
1690
+ hasRuntimeDefault: false;
1691
+ enumValues: undefined;
1692
+ baseColumn: never;
1693
+ identity: "always";
1694
+ generated: undefined;
1695
+ }, {}, {}>;
1696
+ id: import("drizzle-orm/pg-core").PgColumn<{
1697
+ name: "id";
1698
+ tableName: "vault_audit";
1641
1699
  dataType: "string";
1642
1700
  columnType: "PgText";
1643
1701
  data: string;
@@ -1652,14 +1710,14 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1652
1710
  identity: undefined;
1653
1711
  generated: undefined;
1654
1712
  }, {}, {}>;
1655
- activatedAt: import("drizzle-orm/pg-core").PgColumn<{
1656
- name: "activatedAt";
1657
- tableName: "signing_keys";
1713
+ at: import("drizzle-orm/pg-core").PgColumn<{
1714
+ name: "at";
1715
+ tableName: "vault_audit";
1658
1716
  dataType: "string";
1659
1717
  columnType: "PgText";
1660
1718
  data: string;
1661
1719
  driverParam: string;
1662
- notNull: false;
1720
+ notNull: true;
1663
1721
  hasDefault: false;
1664
1722
  isPrimaryKey: false;
1665
1723
  isAutoincrement: false;
@@ -1669,14 +1727,14 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1669
1727
  identity: undefined;
1670
1728
  generated: undefined;
1671
1729
  }, {}, {}>;
1672
- retiredAt: import("drizzle-orm/pg-core").PgColumn<{
1673
- name: "retiredAt";
1674
- tableName: "signing_keys";
1730
+ actor: import("drizzle-orm/pg-core").PgColumn<{
1731
+ name: "actor";
1732
+ tableName: "vault_audit";
1675
1733
  dataType: "string";
1676
1734
  columnType: "PgText";
1677
1735
  data: string;
1678
1736
  driverParam: string;
1679
- notNull: false;
1737
+ notNull: true;
1680
1738
  hasDefault: false;
1681
1739
  isPrimaryKey: false;
1682
1740
  isAutoincrement: false;
@@ -1686,14 +1744,14 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1686
1744
  identity: undefined;
1687
1745
  generated: undefined;
1688
1746
  }, {}, {}>;
1689
- revokedAt: import("drizzle-orm/pg-core").PgColumn<{
1690
- name: "revokedAt";
1691
- tableName: "signing_keys";
1747
+ action: import("drizzle-orm/pg-core").PgColumn<{
1748
+ name: "action";
1749
+ tableName: "vault_audit";
1692
1750
  dataType: "string";
1693
1751
  columnType: "PgText";
1694
1752
  data: string;
1695
1753
  driverParam: string;
1696
- notNull: false;
1754
+ notNull: true;
1697
1755
  hasDefault: false;
1698
1756
  isPrimaryKey: false;
1699
1757
  isAutoincrement: false;
@@ -1703,134 +1761,120 @@ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColum
1703
1761
  identity: undefined;
1704
1762
  generated: undefined;
1705
1763
  }, {}, {}>;
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";
1764
+ vaultId: import("drizzle-orm/pg-core").PgColumn<{
1765
+ name: "vaultId";
1766
+ tableName: "vault_audit";
1767
+ dataType: "string";
1768
+ columnType: "PgText";
1724
1769
  data: string;
1725
1770
  driverParam: string;
1726
- notNull: true;
1771
+ notNull: false;
1727
1772
  hasDefault: false;
1728
- isPrimaryKey: true;
1773
+ isPrimaryKey: false;
1729
1774
  isAutoincrement: false;
1730
1775
  hasRuntimeDefault: false;
1731
- enumValues: undefined;
1776
+ enumValues: [string, ...string[]];
1732
1777
  baseColumn: never;
1733
1778
  identity: undefined;
1734
1779
  generated: undefined;
1735
- }, {}, {
1736
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1737
- }>;
1738
- effectKey: import("drizzle-orm/pg-core").PgColumn<{
1739
- name: "effectKey";
1740
- tableName: "model_usage";
1741
- dataType: "custom";
1742
- columnType: "PgCustomColumn";
1780
+ }, {}, {}>;
1781
+ credentialId: import("drizzle-orm/pg-core").PgColumn<{
1782
+ name: "credentialId";
1783
+ tableName: "vault_audit";
1784
+ dataType: "string";
1785
+ columnType: "PgText";
1743
1786
  data: string;
1744
1787
  driverParam: string;
1745
- notNull: true;
1788
+ notNull: false;
1746
1789
  hasDefault: false;
1747
1790
  isPrimaryKey: false;
1748
1791
  isAutoincrement: false;
1749
1792
  hasRuntimeDefault: false;
1750
- enumValues: undefined;
1793
+ enumValues: [string, ...string[]];
1751
1794
  baseColumn: never;
1752
1795
  identity: undefined;
1753
1796
  generated: undefined;
1754
- }, {}, {
1755
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1756
- }>;
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;
1797
+ }, {}, {}>;
1798
+ sessionId: import("drizzle-orm/pg-core").PgColumn<{
1799
+ name: "sessionId";
1800
+ tableName: "vault_audit";
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;
1815
+ target: import("drizzle-orm/pg-core").PgColumn<{
1816
+ name: "target";
1817
+ tableName: "vault_audit";
1818
+ dataType: "string";
1819
+ columnType: "PgText";
1820
+ data: string;
1821
+ driverParam: string;
1781
1822
  notNull: false;
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";
1794
- dataType: "custom";
1795
- columnType: "PgCustomColumn";
1832
+ outcome: import("drizzle-orm/pg-core").PgColumn<{
1833
+ name: "outcome";
1834
+ tableName: "vault_audit";
1835
+ dataType: "string";
1836
+ columnType: "PgText";
1796
1837
  data: string;
1797
- driverParam: unknown;
1838
+ driverParam: string;
1798
1839
  notNull: true;
1799
- hasDefault: true;
1840
+ hasDefault: false;
1800
1841
  isPrimaryKey: false;
1801
1842
  isAutoincrement: false;
1802
1843
  hasRuntimeDefault: false;
1803
- enumValues: undefined;
1844
+ enumValues: [string, ...string[]];
1804
1845
  baseColumn: never;
1805
1846
  identity: undefined;
1806
1847
  generated: undefined;
1807
- }, {}, {
1808
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1809
- }>;
1810
- sessionId: import("drizzle-orm/pg-core").PgColumn<{
1811
- name: "sessionId";
1812
- tableName: "model_usage";
1813
- dataType: "custom";
1814
- columnType: "PgCustomColumn";
1848
+ }, {}, {}>;
1849
+ };
1850
+ dialect: 'pg';
1851
+ }>;
1852
+ export declare const vaultIdempotency: import("drizzle-orm/pg-core").PgTableWithColumns<{
1853
+ name: "vault_idempotency";
1854
+ schema: "nylorun";
1855
+ columns: {
1856
+ id: import("drizzle-orm/pg-core").PgColumn<{
1857
+ name: "id";
1858
+ tableName: "vault_idempotency";
1859
+ dataType: "string";
1860
+ columnType: "PgText";
1815
1861
  data: string;
1816
1862
  driverParam: string;
1817
1863
  notNull: true;
1818
1864
  hasDefault: false;
1819
- isPrimaryKey: false;
1865
+ isPrimaryKey: true;
1820
1866
  isAutoincrement: false;
1821
1867
  hasRuntimeDefault: false;
1822
- enumValues: undefined;
1868
+ enumValues: [string, ...string[]];
1823
1869
  baseColumn: never;
1824
1870
  identity: undefined;
1825
1871
  generated: undefined;
1826
- }, {}, {
1827
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1828
- }>;
1829
- turnId: import("drizzle-orm/pg-core").PgColumn<{
1830
- name: "turnId";
1831
- tableName: "model_usage";
1832
- dataType: "custom";
1833
- columnType: "PgCustomColumn";
1872
+ }, {}, {}>;
1873
+ bodyHash: import("drizzle-orm/pg-core").PgColumn<{
1874
+ name: "bodyHash";
1875
+ tableName: "vault_idempotency";
1876
+ dataType: "string";
1877
+ columnType: "PgText";
1834
1878
  data: string;
1835
1879
  driverParam: string;
1836
1880
  notNull: true;
@@ -1838,18 +1882,16 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1838
1882
  isPrimaryKey: false;
1839
1883
  isAutoincrement: false;
1840
1884
  hasRuntimeDefault: false;
1841
- enumValues: undefined;
1885
+ enumValues: [string, ...string[]];
1842
1886
  baseColumn: never;
1843
1887
  identity: undefined;
1844
1888
  generated: undefined;
1845
- }, {}, {
1846
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1847
- }>;
1848
- agentId: import("drizzle-orm/pg-core").PgColumn<{
1849
- name: "agentId";
1850
- tableName: "model_usage";
1851
- dataType: "custom";
1852
- columnType: "PgCustomColumn";
1889
+ }, {}, {}>;
1890
+ response: import("drizzle-orm/pg-core").PgColumn<{
1891
+ name: "response";
1892
+ tableName: "vault_idempotency";
1893
+ dataType: "string";
1894
+ columnType: "PgText";
1853
1895
  data: string;
1854
1896
  driverParam: string;
1855
1897
  notNull: true;
@@ -1857,23 +1899,28 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1857
1899
  isPrimaryKey: false;
1858
1900
  isAutoincrement: false;
1859
1901
  hasRuntimeDefault: false;
1860
- enumValues: undefined;
1902
+ enumValues: [string, ...string[]];
1861
1903
  baseColumn: never;
1862
1904
  identity: undefined;
1863
1905
  generated: undefined;
1864
- }, {}, {
1865
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1866
- }>;
1867
- provider: import("drizzle-orm/pg-core").PgColumn<{
1868
- name: "provider";
1869
- tableName: "model_usage";
1906
+ }, {}, {}>;
1907
+ };
1908
+ dialect: 'pg';
1909
+ }>;
1910
+ export declare const tenantSettings: import("drizzle-orm/pg-core").PgTableWithColumns<{
1911
+ name: "tenant_settings";
1912
+ schema: "nylorun";
1913
+ columns: {
1914
+ key: import("drizzle-orm/pg-core").PgColumn<{
1915
+ name: "key";
1916
+ tableName: "tenant_settings";
1870
1917
  dataType: "string";
1871
1918
  columnType: "PgText";
1872
1919
  data: string;
1873
1920
  driverParam: string;
1874
- notNull: false;
1921
+ notNull: true;
1875
1922
  hasDefault: false;
1876
- isPrimaryKey: false;
1923
+ isPrimaryKey: true;
1877
1924
  isAutoincrement: false;
1878
1925
  hasRuntimeDefault: false;
1879
1926
  enumValues: [string, ...string[]];
@@ -1881,14 +1928,14 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1881
1928
  identity: undefined;
1882
1929
  generated: undefined;
1883
1930
  }, {}, {}>;
1884
- model: import("drizzle-orm/pg-core").PgColumn<{
1885
- name: "model";
1886
- tableName: "model_usage";
1931
+ value: import("drizzle-orm/pg-core").PgColumn<{
1932
+ name: "value";
1933
+ tableName: "tenant_settings";
1887
1934
  dataType: "string";
1888
1935
  columnType: "PgText";
1889
1936
  data: string;
1890
1937
  driverParam: string;
1891
- notNull: false;
1938
+ notNull: true;
1892
1939
  hasDefault: false;
1893
1940
  isPrimaryKey: false;
1894
1941
  isAutoincrement: false;
@@ -1898,98 +1945,111 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1898
1945
  identity: undefined;
1899
1946
  generated: undefined;
1900
1947
  }, {}, {}>;
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;
1948
+ };
1949
+ dialect: 'pg';
1950
+ }>;
1951
+ /**
1952
+ * The Tenant's signing keys (capability links, run and host tokens): the
1953
+ * private half sealed, the public JWK not.
1954
+ */
1955
+ export declare const signingKeys: import("drizzle-orm/pg-core").PgTableWithColumns<{
1956
+ name: "signing_keys";
1957
+ schema: "nylorun";
1958
+ columns: {
1959
+ id: import("drizzle-orm/pg-core").PgColumn<{
1960
+ name: "id";
1961
+ tableName: "signing_keys";
1962
+ dataType: "custom";
1963
+ columnType: "PgCustomColumn";
1964
+ data: string;
1965
+ driverParam: string;
1908
1966
  notNull: true;
1909
1967
  hasDefault: false;
1910
- isPrimaryKey: false;
1968
+ isPrimaryKey: true;
1911
1969
  isAutoincrement: false;
1912
1970
  hasRuntimeDefault: false;
1913
1971
  enumValues: undefined;
1914
1972
  baseColumn: never;
1915
1973
  identity: undefined;
1916
1974
  generated: undefined;
1917
- }, {}, {}>;
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;
1975
+ }, {}, {
1976
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
1977
+ }>;
1978
+ state: import("drizzle-orm/pg-core").PgColumn<{
1979
+ name: "state";
1980
+ tableName: "signing_keys";
1981
+ dataType: "string";
1982
+ columnType: "PgText";
1983
+ data: "current" | "previous" | "revoked" | "standby";
1984
+ driverParam: string;
1925
1985
  notNull: true;
1926
1986
  hasDefault: false;
1927
1987
  isPrimaryKey: false;
1928
1988
  isAutoincrement: false;
1929
1989
  hasRuntimeDefault: false;
1930
- enumValues: undefined;
1990
+ enumValues: ["standby", "current", "previous", "revoked"];
1931
1991
  baseColumn: never;
1932
1992
  identity: undefined;
1933
1993
  generated: undefined;
1934
1994
  }, {}, {}>;
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;
1995
+ alg: import("drizzle-orm/pg-core").PgColumn<{
1996
+ name: "alg";
1997
+ tableName: "signing_keys";
1998
+ dataType: "string";
1999
+ columnType: "PgText";
2000
+ data: "ES256";
2001
+ driverParam: string;
1942
2002
  notNull: true;
1943
2003
  hasDefault: false;
1944
2004
  isPrimaryKey: false;
1945
2005
  isAutoincrement: false;
1946
2006
  hasRuntimeDefault: false;
1947
- enumValues: undefined;
2007
+ enumValues: ["ES256"];
1948
2008
  baseColumn: never;
1949
2009
  identity: undefined;
1950
2010
  generated: undefined;
1951
2011
  }, {}, {}>;
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;
2012
+ publicJwk: import("drizzle-orm/pg-core").PgColumn<{
2013
+ name: "publicJwk";
2014
+ tableName: "signing_keys";
2015
+ dataType: "string";
2016
+ columnType: "PgText";
2017
+ data: string;
2018
+ driverParam: string;
1959
2019
  notNull: true;
1960
2020
  hasDefault: false;
1961
2021
  isPrimaryKey: false;
1962
2022
  isAutoincrement: false;
1963
2023
  hasRuntimeDefault: false;
1964
- enumValues: undefined;
2024
+ enumValues: [string, ...string[]];
1965
2025
  baseColumn: never;
1966
2026
  identity: undefined;
1967
2027
  generated: undefined;
1968
2028
  }, {}, {}>;
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;
2029
+ kekId: import("drizzle-orm/pg-core").PgColumn<{
2030
+ name: "kekId";
2031
+ tableName: "signing_keys";
2032
+ dataType: "string";
2033
+ columnType: "PgText";
2034
+ data: string;
2035
+ driverParam: string;
1976
2036
  notNull: true;
1977
2037
  hasDefault: false;
1978
2038
  isPrimaryKey: false;
1979
2039
  isAutoincrement: false;
1980
2040
  hasRuntimeDefault: false;
1981
- enumValues: undefined;
2041
+ enumValues: [string, ...string[]];
1982
2042
  baseColumn: never;
1983
2043
  identity: undefined;
1984
2044
  generated: undefined;
1985
2045
  }, {}, {}>;
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;
2046
+ nonce: import("drizzle-orm/pg-core").PgColumn<{
2047
+ name: "nonce";
2048
+ tableName: "signing_keys";
2049
+ dataType: "custom";
2050
+ columnType: "PgCustomColumn";
2051
+ data: Uint8Array<ArrayBufferLike>;
2052
+ driverParam: Buffer<ArrayBufferLike>;
1993
2053
  notNull: true;
1994
2054
  hasDefault: false;
1995
2055
  isPrimaryKey: false;
@@ -1999,14 +2059,16 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
1999
2059
  baseColumn: never;
2000
2060
  identity: undefined;
2001
2061
  generated: undefined;
2002
- }, {}, {}>;
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;
2062
+ }, {}, {
2063
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2064
+ }>;
2065
+ ciphertext: import("drizzle-orm/pg-core").PgColumn<{
2066
+ name: "ciphertext";
2067
+ tableName: "signing_keys";
2068
+ dataType: "custom";
2069
+ columnType: "PgCustomColumn";
2070
+ data: Uint8Array<ArrayBufferLike>;
2071
+ driverParam: Buffer<ArrayBufferLike>;
2010
2072
  notNull: true;
2011
2073
  hasDefault: false;
2012
2074
  isPrimaryKey: false;
@@ -2016,14 +2078,16 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
2016
2078
  baseColumn: never;
2017
2079
  identity: undefined;
2018
2080
  generated: undefined;
2019
- }, {}, {}>;
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;
2081
+ }, {}, {
2082
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2083
+ }>;
2084
+ wrappedDek: import("drizzle-orm/pg-core").PgColumn<{
2085
+ name: "wrappedDek";
2086
+ tableName: "signing_keys";
2087
+ dataType: "custom";
2088
+ columnType: "PgCustomColumn";
2089
+ data: Uint8Array<ArrayBufferLike>;
2090
+ driverParam: Buffer<ArrayBufferLike>;
2027
2091
  notNull: true;
2028
2092
  hasDefault: false;
2029
2093
  isPrimaryKey: false;
@@ -2033,10 +2097,12 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
2033
2097
  baseColumn: never;
2034
2098
  identity: undefined;
2035
2099
  generated: undefined;
2036
- }, {}, {}>;
2100
+ }, {}, {
2101
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2102
+ }>;
2037
2103
  createdAt: import("drizzle-orm/pg-core").PgColumn<{
2038
2104
  name: "createdAt";
2039
- tableName: "model_usage";
2105
+ tableName: "signing_keys";
2040
2106
  dataType: "string";
2041
2107
  columnType: "PgText";
2042
2108
  data: string;
@@ -2051,113 +2117,48 @@ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumn
2051
2117
  identity: undefined;
2052
2118
  generated: undefined;
2053
2119
  }, {}, {}>;
2054
- };
2055
- dialect: 'pg';
2056
- }>;
2057
- /**
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`.
2061
- */
2062
- export declare const modelBudgets: import("drizzle-orm/pg-core").PgTableWithColumns<{
2063
- name: "model_budgets";
2064
- schema: "nylorun";
2065
- columns: {
2066
- scope: import("drizzle-orm/pg-core").PgColumn<{
2067
- name: "scope";
2068
- tableName: "model_budgets";
2069
- dataType: "string";
2070
- columnType: "PgText";
2071
- data: "agent" | "tenant" | "turn";
2072
- driverParam: string;
2073
- notNull: true;
2074
- hasDefault: false;
2075
- isPrimaryKey: false;
2076
- isAutoincrement: false;
2077
- hasRuntimeDefault: false;
2078
- enumValues: ["tenant", "agent", "turn"];
2079
- baseColumn: never;
2080
- identity: undefined;
2081
- generated: undefined;
2082
- }, {}, {}>;
2083
- scopeId: import("drizzle-orm/pg-core").PgColumn<{
2084
- name: "scopeId";
2085
- tableName: "model_budgets";
2086
- dataType: "custom";
2087
- columnType: "PgCustomColumn";
2088
- data: string;
2089
- driverParam: string;
2090
- notNull: true;
2091
- hasDefault: false;
2092
- isPrimaryKey: false;
2093
- isAutoincrement: false;
2094
- hasRuntimeDefault: false;
2095
- enumValues: undefined;
2096
- baseColumn: never;
2097
- identity: undefined;
2098
- generated: undefined;
2099
- }, {}, {
2100
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2101
- }>;
2102
- period: import("drizzle-orm/pg-core").PgColumn<{
2103
- name: "period";
2104
- tableName: "model_budgets";
2120
+ activatedAt: import("drizzle-orm/pg-core").PgColumn<{
2121
+ name: "activatedAt";
2122
+ tableName: "signing_keys";
2105
2123
  dataType: "string";
2106
2124
  columnType: "PgText";
2107
- data: "day" | "month";
2108
- driverParam: string;
2109
- notNull: false;
2110
- hasDefault: false;
2111
- isPrimaryKey: false;
2112
- isAutoincrement: false;
2113
- hasRuntimeDefault: false;
2114
- enumValues: ["day", "month"];
2115
- baseColumn: never;
2116
- identity: undefined;
2117
- generated: undefined;
2118
- }, {}, {}>;
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;
2125
+ data: string;
2126
+ driverParam: string;
2126
2127
  notNull: false;
2127
2128
  hasDefault: false;
2128
2129
  isPrimaryKey: false;
2129
2130
  isAutoincrement: false;
2130
2131
  hasRuntimeDefault: false;
2131
- enumValues: undefined;
2132
+ enumValues: [string, ...string[]];
2132
2133
  baseColumn: never;
2133
2134
  identity: undefined;
2134
2135
  generated: undefined;
2135
2136
  }, {}, {}>;
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;
2137
+ retiredAt: import("drizzle-orm/pg-core").PgColumn<{
2138
+ name: "retiredAt";
2139
+ tableName: "signing_keys";
2140
+ dataType: "string";
2141
+ columnType: "PgText";
2142
+ data: string;
2143
+ driverParam: string;
2143
2144
  notNull: false;
2144
2145
  hasDefault: false;
2145
2146
  isPrimaryKey: false;
2146
2147
  isAutoincrement: false;
2147
2148
  hasRuntimeDefault: false;
2148
- enumValues: undefined;
2149
+ enumValues: [string, ...string[]];
2149
2150
  baseColumn: never;
2150
2151
  identity: undefined;
2151
2152
  generated: undefined;
2152
2153
  }, {}, {}>;
2153
- updatedAt: import("drizzle-orm/pg-core").PgColumn<{
2154
- name: "updatedAt";
2155
- tableName: "model_budgets";
2154
+ revokedAt: import("drizzle-orm/pg-core").PgColumn<{
2155
+ name: "revokedAt";
2156
+ tableName: "signing_keys";
2156
2157
  dataType: "string";
2157
2158
  columnType: "PgText";
2158
2159
  data: string;
2159
2160
  driverParam: string;
2160
- notNull: true;
2161
+ notNull: false;
2161
2162
  hasDefault: false;
2162
2163
  isPrimaryKey: false;
2163
2164
  isAutoincrement: false;
@@ -2171,19 +2172,20 @@ export declare const modelBudgets: import("drizzle-orm/pg-core").PgTableWithColu
2171
2172
  dialect: 'pg';
2172
2173
  }>;
2173
2174
  /**
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.
2175
+ * The model usage ledger (P1.3): one row per model call a gate served, written after the call.
2176
+ * A second row for the same effect (a call the gate ran again after a gateway restart) is
2177
+ * flagged `duplicate`; both were billed. Budgets read their spend from it. Token counts are 0
2178
+ * when the provider sent none. `startedAt`, `endedAt` and `firstTokenMs` are the gate's own
2179
+ * timing of the call (R7.1, migration 0022); null on rows written before, and `firstTokenMs`
2180
+ * when the provider streamed nothing.
2179
2181
  */
2180
- export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithColumns<{
2181
- name: "tool_crossings";
2182
+ export declare const modelUsage: import("drizzle-orm/pg-core").PgTableWithColumns<{
2183
+ name: "model_usage";
2182
2184
  schema: "nylorun";
2183
2185
  columns: {
2184
- key: import("drizzle-orm/pg-core").PgColumn<{
2185
- name: "key";
2186
- tableName: "tool_crossings";
2186
+ id: import("drizzle-orm/pg-core").PgColumn<{
2187
+ name: "id";
2188
+ tableName: "model_usage";
2187
2189
  dataType: "custom";
2188
2190
  columnType: "PgCustomColumn";
2189
2191
  data: string;
@@ -2200,11 +2202,11 @@ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithCol
2200
2202
  }, {}, {
2201
2203
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2202
2204
  }>;
2203
- hash: import("drizzle-orm/pg-core").PgColumn<{
2204
- name: "hash";
2205
- tableName: "tool_crossings";
2206
- dataType: "string";
2207
- columnType: "PgText";
2205
+ effectKey: import("drizzle-orm/pg-core").PgColumn<{
2206
+ name: "effectKey";
2207
+ tableName: "model_usage";
2208
+ dataType: "custom";
2209
+ columnType: "PgCustomColumn";
2208
2210
  data: string;
2209
2211
  driverParam: string;
2210
2212
  notNull: true;
@@ -2212,20 +2214,56 @@ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithCol
2212
2214
  isPrimaryKey: false;
2213
2215
  isAutoincrement: false;
2214
2216
  hasRuntimeDefault: false;
2215
- enumValues: [string, ...string[]];
2217
+ enumValues: undefined;
2218
+ baseColumn: never;
2219
+ identity: undefined;
2220
+ generated: undefined;
2221
+ }, {}, {
2222
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2223
+ }>;
2224
+ tokensReported: import("drizzle-orm/pg-core").PgColumn<{
2225
+ name: "tokensReported";
2226
+ tableName: "model_usage";
2227
+ dataType: "boolean";
2228
+ columnType: "PgBoolean";
2229
+ data: boolean;
2230
+ driverParam: boolean;
2231
+ notNull: false;
2232
+ hasDefault: false;
2233
+ isPrimaryKey: false;
2234
+ isAutoincrement: false;
2235
+ hasRuntimeDefault: false;
2236
+ enumValues: undefined;
2216
2237
  baseColumn: never;
2217
2238
  identity: undefined;
2218
2239
  generated: undefined;
2219
2240
  }, {}, {}>;
2220
- startedAt: import("drizzle-orm/pg-core").PgColumn<{
2221
- name: "startedAt";
2222
- tableName: "tool_crossings";
2241
+ costKnown: import("drizzle-orm/pg-core").PgColumn<{
2242
+ name: "costKnown";
2243
+ tableName: "model_usage";
2244
+ dataType: "boolean";
2245
+ columnType: "PgBoolean";
2246
+ data: boolean;
2247
+ driverParam: boolean;
2248
+ notNull: false;
2249
+ hasDefault: false;
2250
+ isPrimaryKey: false;
2251
+ isAutoincrement: false;
2252
+ hasRuntimeDefault: false;
2253
+ enumValues: undefined;
2254
+ baseColumn: never;
2255
+ identity: undefined;
2256
+ generated: undefined;
2257
+ }, {}, {}>;
2258
+ txid: import("drizzle-orm/pg-core").PgColumn<{
2259
+ name: "txid";
2260
+ tableName: "model_usage";
2223
2261
  dataType: "custom";
2224
2262
  columnType: "PgCustomColumn";
2225
2263
  data: string;
2226
- driverParam: string;
2264
+ driverParam: unknown;
2227
2265
  notNull: true;
2228
- hasDefault: false;
2266
+ hasDefault: true;
2229
2267
  isPrimaryKey: false;
2230
2268
  isAutoincrement: false;
2231
2269
  hasRuntimeDefault: false;
@@ -2236,14 +2274,14 @@ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithCol
2236
2274
  }, {}, {
2237
2275
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2238
2276
  }>;
2239
- settledAt: import("drizzle-orm/pg-core").PgColumn<{
2240
- name: "settledAt";
2241
- tableName: "tool_crossings";
2277
+ sessionId: import("drizzle-orm/pg-core").PgColumn<{
2278
+ name: "sessionId";
2279
+ tableName: "model_usage";
2242
2280
  dataType: "custom";
2243
2281
  columnType: "PgCustomColumn";
2244
2282
  data: string;
2245
2283
  driverParam: string;
2246
- notNull: false;
2284
+ notNull: true;
2247
2285
  hasDefault: false;
2248
2286
  isPrimaryKey: false;
2249
2287
  isAutoincrement: false;
@@ -2255,14 +2293,14 @@ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithCol
2255
2293
  }, {}, {
2256
2294
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2257
2295
  }>;
2258
- answer: import("drizzle-orm/pg-core").PgColumn<{
2259
- name: "answer";
2260
- tableName: "tool_crossings";
2296
+ turnId: import("drizzle-orm/pg-core").PgColumn<{
2297
+ name: "turnId";
2298
+ tableName: "model_usage";
2261
2299
  dataType: "custom";
2262
2300
  columnType: "PgCustomColumn";
2263
- data: unknown;
2264
- driverParam: unknown;
2265
- notNull: false;
2301
+ data: string;
2302
+ driverParam: string;
2303
+ notNull: true;
2266
2304
  hasDefault: false;
2267
2305
  isPrimaryKey: false;
2268
2306
  isAutoincrement: false;
@@ -2274,29 +2312,16 @@ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithCol
2274
2312
  }, {}, {
2275
2313
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2276
2314
  }>;
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";
2315
+ agentId: import("drizzle-orm/pg-core").PgColumn<{
2316
+ name: "agentId";
2317
+ tableName: "model_usage";
2293
2318
  dataType: "custom";
2294
2319
  columnType: "PgCustomColumn";
2295
2320
  data: string;
2296
2321
  driverParam: string;
2297
2322
  notNull: true;
2298
2323
  hasDefault: false;
2299
- isPrimaryKey: true;
2324
+ isPrimaryKey: false;
2300
2325
  isAutoincrement: false;
2301
2326
  hasRuntimeDefault: false;
2302
2327
  enumValues: undefined;
@@ -2306,30 +2331,64 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2306
2331
  }, {}, {
2307
2332
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2308
2333
  }>;
2309
- kind: import("drizzle-orm/pg-core").PgColumn<{
2310
- name: "kind";
2311
- tableName: "sandbox_resources";
2334
+ provider: import("drizzle-orm/pg-core").PgColumn<{
2335
+ name: "provider";
2336
+ tableName: "model_usage";
2337
+ dataType: "string";
2338
+ columnType: "PgText";
2339
+ data: string;
2340
+ driverParam: string;
2341
+ notNull: false;
2342
+ hasDefault: false;
2343
+ isPrimaryKey: false;
2344
+ isAutoincrement: false;
2345
+ hasRuntimeDefault: false;
2346
+ enumValues: [string, ...string[]];
2347
+ baseColumn: never;
2348
+ identity: undefined;
2349
+ generated: undefined;
2350
+ }, {}, {}>;
2351
+ model: import("drizzle-orm/pg-core").PgColumn<{
2352
+ name: "model";
2353
+ tableName: "model_usage";
2312
2354
  dataType: "string";
2313
2355
  columnType: "PgText";
2314
- data: "pod" | "virtual";
2356
+ data: string;
2315
2357
  driverParam: string;
2358
+ notNull: false;
2359
+ hasDefault: false;
2360
+ isPrimaryKey: false;
2361
+ isAutoincrement: false;
2362
+ hasRuntimeDefault: false;
2363
+ enumValues: [string, ...string[]];
2364
+ baseColumn: never;
2365
+ identity: undefined;
2366
+ generated: undefined;
2367
+ }, {}, {}>;
2368
+ inputTokens: import("drizzle-orm/pg-core").PgColumn<{
2369
+ name: "inputTokens";
2370
+ tableName: "model_usage";
2371
+ dataType: "number";
2372
+ columnType: "PgInteger";
2373
+ data: number;
2374
+ driverParam: string | number;
2316
2375
  notNull: true;
2317
2376
  hasDefault: false;
2318
2377
  isPrimaryKey: false;
2319
2378
  isAutoincrement: false;
2320
2379
  hasRuntimeDefault: false;
2321
- enumValues: ["virtual", "pod"];
2380
+ enumValues: undefined;
2322
2381
  baseColumn: never;
2323
2382
  identity: undefined;
2324
2383
  generated: undefined;
2325
2384
  }, {}, {}>;
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;
2385
+ outputTokens: import("drizzle-orm/pg-core").PgColumn<{
2386
+ name: "outputTokens";
2387
+ tableName: "model_usage";
2388
+ dataType: "number";
2389
+ columnType: "PgInteger";
2390
+ data: number;
2391
+ driverParam: string | number;
2333
2392
  notNull: true;
2334
2393
  hasDefault: false;
2335
2394
  isPrimaryKey: false;
@@ -2339,16 +2398,14 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2339
2398
  baseColumn: never;
2340
2399
  identity: undefined;
2341
2400
  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;
2401
+ }, {}, {}>;
2402
+ totalTokens: import("drizzle-orm/pg-core").PgColumn<{
2403
+ name: "totalTokens";
2404
+ tableName: "model_usage";
2405
+ dataType: "number";
2406
+ columnType: "PgInteger";
2407
+ data: number;
2408
+ driverParam: string | number;
2352
2409
  notNull: true;
2353
2410
  hasDefault: false;
2354
2411
  isPrimaryKey: false;
@@ -2358,16 +2415,14 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2358
2415
  baseColumn: never;
2359
2416
  identity: undefined;
2360
2417
  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;
2418
+ }, {}, {}>;
2419
+ cachedTokens: import("drizzle-orm/pg-core").PgColumn<{
2420
+ name: "cachedTokens";
2421
+ tableName: "model_usage";
2422
+ dataType: "number";
2423
+ columnType: "PgInteger";
2424
+ data: number;
2425
+ driverParam: string | number;
2371
2426
  notNull: true;
2372
2427
  hasDefault: false;
2373
2428
  isPrimaryKey: false;
@@ -2377,16 +2432,14 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2377
2432
  baseColumn: never;
2378
2433
  identity: undefined;
2379
2434
  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;
2435
+ }, {}, {}>;
2436
+ cacheWriteTokens: import("drizzle-orm/pg-core").PgColumn<{
2437
+ name: "cacheWriteTokens";
2438
+ tableName: "model_usage";
2439
+ dataType: "number";
2440
+ columnType: "PgInteger";
2441
+ data: number;
2442
+ driverParam: string | number;
2390
2443
  notNull: true;
2391
2444
  hasDefault: false;
2392
2445
  isPrimaryKey: false;
@@ -2396,17 +2449,15 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2396
2449
  baseColumn: never;
2397
2450
  identity: undefined;
2398
2451
  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;
2452
+ }, {}, {}>;
2453
+ reasoningTokens: import("drizzle-orm/pg-core").PgColumn<{
2454
+ name: "reasoningTokens";
2455
+ tableName: "model_usage";
2456
+ dataType: "number";
2457
+ columnType: "PgInteger";
2458
+ data: number;
2459
+ driverParam: string | number;
2460
+ notNull: true;
2410
2461
  hasDefault: false;
2411
2462
  isPrimaryKey: false;
2412
2463
  isAutoincrement: false;
@@ -2415,18 +2466,16 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2415
2466
  baseColumn: never;
2416
2467
  identity: undefined;
2417
2468
  generated: undefined;
2418
- }, {}, {
2419
- pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2420
- }>;
2421
- volumeGen: import("drizzle-orm/pg-core").PgColumn<{
2422
- name: "volumeGen";
2423
- tableName: "sandbox_resources";
2469
+ }, {}, {}>;
2470
+ costUsd: import("drizzle-orm/pg-core").PgColumn<{
2471
+ name: "costUsd";
2472
+ tableName: "model_usage";
2424
2473
  dataType: "number";
2425
- columnType: "PgInteger";
2474
+ columnType: "PgDoublePrecision";
2426
2475
  data: number;
2427
2476
  driverParam: string | number;
2428
2477
  notNull: true;
2429
- hasDefault: true;
2478
+ hasDefault: false;
2430
2479
  isPrimaryKey: false;
2431
2480
  isAutoincrement: false;
2432
2481
  hasRuntimeDefault: false;
@@ -2435,43 +2484,60 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2435
2484
  identity: undefined;
2436
2485
  generated: undefined;
2437
2486
  }, {}, {}>;
2438
- desired: import("drizzle-orm/pg-core").PgColumn<{
2439
- name: "desired";
2440
- tableName: "sandbox_resources";
2487
+ duplicate: import("drizzle-orm/pg-core").PgColumn<{
2488
+ name: "duplicate";
2489
+ tableName: "model_usage";
2490
+ dataType: "boolean";
2491
+ columnType: "PgBoolean";
2492
+ data: boolean;
2493
+ driverParam: boolean;
2494
+ notNull: true;
2495
+ hasDefault: false;
2496
+ isPrimaryKey: false;
2497
+ isAutoincrement: false;
2498
+ hasRuntimeDefault: false;
2499
+ enumValues: undefined;
2500
+ baseColumn: never;
2501
+ identity: undefined;
2502
+ generated: undefined;
2503
+ }, {}, {}>;
2504
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
2505
+ name: "createdAt";
2506
+ tableName: "model_usage";
2441
2507
  dataType: "string";
2442
2508
  columnType: "PgText";
2443
- data: "deleted" | "running" | "suspended";
2509
+ data: string;
2444
2510
  driverParam: string;
2445
- notNull: false;
2511
+ notNull: true;
2446
2512
  hasDefault: false;
2447
2513
  isPrimaryKey: false;
2448
2514
  isAutoincrement: false;
2449
2515
  hasRuntimeDefault: false;
2450
- enumValues: ["running", "suspended", "deleted"];
2516
+ enumValues: [string, ...string[]];
2451
2517
  baseColumn: never;
2452
2518
  identity: undefined;
2453
2519
  generated: undefined;
2454
2520
  }, {}, {}>;
2455
- observed: import("drizzle-orm/pg-core").PgColumn<{
2456
- name: "observed";
2457
- tableName: "sandbox_resources";
2521
+ startedAt: import("drizzle-orm/pg-core").PgColumn<{
2522
+ name: "startedAt";
2523
+ tableName: "model_usage";
2458
2524
  dataType: "string";
2459
2525
  columnType: "PgText";
2460
- data: "creating" | "deleting" | "expired" | "failed" | "lost" | "running" | "suspended";
2526
+ data: string;
2461
2527
  driverParam: string;
2462
2528
  notNull: false;
2463
2529
  hasDefault: false;
2464
2530
  isPrimaryKey: false;
2465
2531
  isAutoincrement: false;
2466
2532
  hasRuntimeDefault: false;
2467
- enumValues: ["creating", "running", "suspended", "expired", "lost", "failed", "deleting"];
2533
+ enumValues: [string, ...string[]];
2468
2534
  baseColumn: never;
2469
2535
  identity: undefined;
2470
2536
  generated: undefined;
2471
2537
  }, {}, {}>;
2472
- podUid: import("drizzle-orm/pg-core").PgColumn<{
2473
- name: "podUid";
2474
- tableName: "sandbox_resources";
2538
+ endedAt: import("drizzle-orm/pg-core").PgColumn<{
2539
+ name: "endedAt";
2540
+ tableName: "model_usage";
2475
2541
  dataType: "string";
2476
2542
  columnType: "PgText";
2477
2543
  data: string;
@@ -2486,15 +2552,15 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2486
2552
  identity: undefined;
2487
2553
  generated: undefined;
2488
2554
  }, {}, {}>;
2489
- hostEpoch: import("drizzle-orm/pg-core").PgColumn<{
2490
- name: "hostEpoch";
2491
- tableName: "sandbox_resources";
2555
+ firstTokenMs: import("drizzle-orm/pg-core").PgColumn<{
2556
+ name: "firstTokenMs";
2557
+ tableName: "model_usage";
2492
2558
  dataType: "number";
2493
2559
  columnType: "PgInteger";
2494
2560
  data: number;
2495
2561
  driverParam: string | number;
2496
- notNull: true;
2497
- hasDefault: true;
2562
+ notNull: false;
2563
+ hasDefault: false;
2498
2564
  isPrimaryKey: false;
2499
2565
  isAutoincrement: false;
2500
2566
  hasRuntimeDefault: false;
@@ -2503,32 +2569,44 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2503
2569
  identity: undefined;
2504
2570
  generated: undefined;
2505
2571
  }, {}, {}>;
2506
- joinTokenHash: import("drizzle-orm/pg-core").PgColumn<{
2507
- name: "joinTokenHash";
2508
- tableName: "sandbox_resources";
2572
+ };
2573
+ dialect: 'pg';
2574
+ }>;
2575
+ /**
2576
+ * Model budgets (P1.3): hard caps the model gate checks before each call, at least one limit
2577
+ * set. One row per scope: `turn` and `tenant` use `*`, `agent` the agent id. `period` is the
2578
+ * UTC `day` or `month` the spend is counted over, or null for `turn`.
2579
+ */
2580
+ export declare const modelBudgets: import("drizzle-orm/pg-core").PgTableWithColumns<{
2581
+ name: "model_budgets";
2582
+ schema: "nylorun";
2583
+ columns: {
2584
+ scope: import("drizzle-orm/pg-core").PgColumn<{
2585
+ name: "scope";
2586
+ tableName: "model_budgets";
2509
2587
  dataType: "string";
2510
2588
  columnType: "PgText";
2511
- data: string;
2589
+ data: "agent" | "tenant" | "turn";
2512
2590
  driverParam: string;
2513
- notNull: false;
2591
+ notNull: true;
2514
2592
  hasDefault: false;
2515
2593
  isPrimaryKey: false;
2516
2594
  isAutoincrement: false;
2517
2595
  hasRuntimeDefault: false;
2518
- enumValues: [string, ...string[]];
2596
+ enumValues: ["tenant", "agent", "turn"];
2519
2597
  baseColumn: never;
2520
2598
  identity: undefined;
2521
2599
  generated: undefined;
2522
2600
  }, {}, {}>;
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;
2601
+ scopeId: import("drizzle-orm/pg-core").PgColumn<{
2602
+ name: "scopeId";
2603
+ tableName: "model_budgets";
2604
+ dataType: "custom";
2605
+ columnType: "PgCustomColumn";
2606
+ data: string;
2607
+ driverParam: string;
2530
2608
  notNull: true;
2531
- hasDefault: true;
2609
+ hasDefault: false;
2532
2610
  isPrimaryKey: false;
2533
2611
  isAutoincrement: false;
2534
2612
  hasRuntimeDefault: false;
@@ -2536,31 +2614,33 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2536
2614
  baseColumn: never;
2537
2615
  identity: undefined;
2538
2616
  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;
2617
+ }, {}, {
2618
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2619
+ }>;
2620
+ period: import("drizzle-orm/pg-core").PgColumn<{
2621
+ name: "period";
2622
+ tableName: "model_budgets";
2623
+ dataType: "string";
2624
+ columnType: "PgText";
2625
+ data: "day" | "month";
2546
2626
  driverParam: string;
2547
2627
  notNull: false;
2548
2628
  hasDefault: false;
2549
2629
  isPrimaryKey: false;
2550
2630
  isAutoincrement: false;
2551
2631
  hasRuntimeDefault: false;
2552
- enumValues: undefined;
2632
+ enumValues: ["day", "month"];
2553
2633
  baseColumn: never;
2554
2634
  identity: undefined;
2555
2635
  generated: undefined;
2556
2636
  }, {}, {}>;
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;
2637
+ limitUsd: import("drizzle-orm/pg-core").PgColumn<{
2638
+ name: "limitUsd";
2639
+ tableName: "model_budgets";
2640
+ dataType: "number";
2641
+ columnType: "PgDoublePrecision";
2642
+ data: number;
2643
+ driverParam: string | number;
2564
2644
  notNull: false;
2565
2645
  hasDefault: false;
2566
2646
  isPrimaryKey: false;
@@ -2571,13 +2651,13 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2571
2651
  identity: undefined;
2572
2652
  generated: undefined;
2573
2653
  }, {}, {}>;
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;
2654
+ limitTokens: import("drizzle-orm/pg-core").PgColumn<{
2655
+ name: "limitTokens";
2656
+ tableName: "model_budgets";
2657
+ dataType: "number";
2658
+ columnType: "PgBigInt53";
2659
+ data: number;
2660
+ driverParam: string | number;
2581
2661
  notNull: false;
2582
2662
  hasDefault: false;
2583
2663
  isPrimaryKey: false;
@@ -2588,14 +2668,14 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2588
2668
  identity: undefined;
2589
2669
  generated: undefined;
2590
2670
  }, {}, {}>;
2591
- reason: import("drizzle-orm/pg-core").PgColumn<{
2592
- name: "reason";
2593
- tableName: "sandbox_resources";
2671
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
2672
+ name: "updatedAt";
2673
+ tableName: "model_budgets";
2594
2674
  dataType: "string";
2595
2675
  columnType: "PgText";
2596
2676
  data: string;
2597
2677
  driverParam: string;
2598
- notNull: false;
2678
+ notNull: true;
2599
2679
  hasDefault: false;
2600
2680
  isPrimaryKey: false;
2601
2681
  isAutoincrement: false;
@@ -2605,16 +2685,30 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2605
2685
  identity: undefined;
2606
2686
  generated: undefined;
2607
2687
  }, {}, {}>;
2608
- retiring: import("drizzle-orm/pg-core").PgColumn<{
2609
- name: "retiring";
2610
- tableName: "sandbox_resources";
2688
+ };
2689
+ dialect: 'pg';
2690
+ }>;
2691
+ /**
2692
+ * The Tool Gate's keyed MCP calls (F4.1 G3): one row per call, written by the gates service
2693
+ * before it calls the server and given the answer after. A re-send whose row has an answer
2694
+ * gets it; one whose row has none, and that the gateway no longer runs, was lost with an
2695
+ * earlier gateway and answers `uncertain`, so a call is never run twice. Rows are deleted a
2696
+ * day after they settle.
2697
+ */
2698
+ export declare const toolCrossings: import("drizzle-orm/pg-core").PgTableWithColumns<{
2699
+ name: "tool_crossings";
2700
+ schema: "nylorun";
2701
+ columns: {
2702
+ key: import("drizzle-orm/pg-core").PgColumn<{
2703
+ name: "key";
2704
+ tableName: "tool_crossings";
2611
2705
  dataType: "custom";
2612
2706
  columnType: "PgCustomColumn";
2613
2707
  data: string;
2614
2708
  driverParam: string;
2615
- notNull: false;
2709
+ notNull: true;
2616
2710
  hasDefault: false;
2617
- isPrimaryKey: false;
2711
+ isPrimaryKey: true;
2618
2712
  isAutoincrement: false;
2619
2713
  hasRuntimeDefault: false;
2620
2714
  enumValues: undefined;
@@ -2624,14 +2718,14 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2624
2718
  }, {}, {
2625
2719
  pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2626
2720
  }>;
2627
- volumeId: import("drizzle-orm/pg-core").PgColumn<{
2628
- name: "volumeId";
2629
- tableName: "sandbox_resources";
2721
+ hash: import("drizzle-orm/pg-core").PgColumn<{
2722
+ name: "hash";
2723
+ tableName: "tool_crossings";
2630
2724
  dataType: "string";
2631
2725
  columnType: "PgText";
2632
2726
  data: string;
2633
2727
  driverParam: string;
2634
- notNull: false;
2728
+ notNull: true;
2635
2729
  hasDefault: false;
2636
2730
  isPrimaryKey: false;
2637
2731
  isAutoincrement: false;
@@ -2641,6 +2735,63 @@ export declare const sandboxResources: import("drizzle-orm/pg-core").PgTableWith
2641
2735
  identity: undefined;
2642
2736
  generated: undefined;
2643
2737
  }, {}, {}>;
2738
+ startedAt: import("drizzle-orm/pg-core").PgColumn<{
2739
+ name: "startedAt";
2740
+ tableName: "tool_crossings";
2741
+ dataType: "custom";
2742
+ columnType: "PgCustomColumn";
2743
+ data: string;
2744
+ driverParam: string;
2745
+ notNull: true;
2746
+ hasDefault: false;
2747
+ isPrimaryKey: false;
2748
+ isAutoincrement: false;
2749
+ hasRuntimeDefault: false;
2750
+ enumValues: undefined;
2751
+ baseColumn: never;
2752
+ identity: undefined;
2753
+ generated: undefined;
2754
+ }, {}, {
2755
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2756
+ }>;
2757
+ settledAt: import("drizzle-orm/pg-core").PgColumn<{
2758
+ name: "settledAt";
2759
+ tableName: "tool_crossings";
2760
+ dataType: "custom";
2761
+ columnType: "PgCustomColumn";
2762
+ data: string;
2763
+ driverParam: string;
2764
+ notNull: false;
2765
+ hasDefault: false;
2766
+ isPrimaryKey: false;
2767
+ isAutoincrement: false;
2768
+ hasRuntimeDefault: false;
2769
+ enumValues: undefined;
2770
+ baseColumn: never;
2771
+ identity: undefined;
2772
+ generated: undefined;
2773
+ }, {}, {
2774
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2775
+ }>;
2776
+ answer: import("drizzle-orm/pg-core").PgColumn<{
2777
+ name: "answer";
2778
+ tableName: "tool_crossings";
2779
+ dataType: "custom";
2780
+ columnType: "PgCustomColumn";
2781
+ data: unknown;
2782
+ driverParam: unknown;
2783
+ notNull: false;
2784
+ hasDefault: false;
2785
+ isPrimaryKey: false;
2786
+ isAutoincrement: false;
2787
+ hasRuntimeDefault: false;
2788
+ enumValues: undefined;
2789
+ baseColumn: never;
2790
+ identity: undefined;
2791
+ generated: undefined;
2792
+ }, {}, {
2793
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2794
+ }>;
2644
2795
  };
2645
2796
  dialect: 'pg';
2646
2797
  }>;
@@ -2813,6 +2964,25 @@ export declare const artifacts: import("drizzle-orm/pg-core").PgTableWithColumns
2813
2964
  identity: undefined;
2814
2965
  generated: undefined;
2815
2966
  }, {}, {}>;
2967
+ environmentId: import("drizzle-orm/pg-core").PgColumn<{
2968
+ name: "environmentId";
2969
+ tableName: "artifacts";
2970
+ dataType: "custom";
2971
+ columnType: "PgCustomColumn";
2972
+ data: string;
2973
+ driverParam: string;
2974
+ notNull: false;
2975
+ hasDefault: false;
2976
+ isPrimaryKey: false;
2977
+ isAutoincrement: false;
2978
+ hasRuntimeDefault: false;
2979
+ enumValues: undefined;
2980
+ baseColumn: never;
2981
+ identity: undefined;
2982
+ generated: undefined;
2983
+ }, {}, {
2984
+ pgColumnBuilderBrand: 'PgCustomColumnBuilderBrand';
2985
+ }>;
2816
2986
  };
2817
2987
  dialect: 'pg';
2818
2988
  }>;
@@ -2930,14 +3100,14 @@ export declare const artifactVersions: import("drizzle-orm/pg-core").PgTableWith
2930
3100
  tableName: "artifact_versions";
2931
3101
  dataType: "string";
2932
3102
  columnType: "PgText";
2933
- data: "engine" | "export" | "upload";
3103
+ data: "engine" | "export" | "snapshot" | "upload";
2934
3104
  driverParam: string;
2935
3105
  notNull: true;
2936
3106
  hasDefault: false;
2937
3107
  isPrimaryKey: false;
2938
3108
  isAutoincrement: false;
2939
3109
  hasRuntimeDefault: false;
2940
- enumValues: ["upload", "engine", "export"];
3110
+ enumValues: ["upload", "engine", "export", "snapshot"];
2941
3111
  baseColumn: never;
2942
3112
  identity: undefined;
2943
3113
  generated: undefined;
@@ -3705,16 +3875,16 @@ export declare const sandboxSignals: import("drizzle-orm/pg-core").PgTableWithCo
3705
3875
  dialect: 'pg';
3706
3876
  }>;
3707
3877
  /**
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.
3878
+ * Each Environment's lifecycle stream (`nylorun.environment-event/1`), numbered from 0 per
3879
+ * Environment id. Written only by the record module; not published to the stream relay.
3710
3880
  */
3711
- export declare const sandboxEvents: import("drizzle-orm/pg-core").PgTableWithColumns<{
3712
- name: "sandbox_events";
3881
+ export declare const environmentEvents: import("drizzle-orm/pg-core").PgTableWithColumns<{
3882
+ name: "environment_events";
3713
3883
  schema: "nylorun_streams";
3714
3884
  columns: {
3715
- sandboxId: import("drizzle-orm/pg-core").PgColumn<{
3716
- name: "sandboxId";
3717
- tableName: "sandbox_events";
3885
+ environmentId: import("drizzle-orm/pg-core").PgColumn<{
3886
+ name: "environmentId";
3887
+ tableName: "environment_events";
3718
3888
  dataType: "custom";
3719
3889
  columnType: "PgCustomColumn";
3720
3890
  data: string;
@@ -3733,7 +3903,7 @@ export declare const sandboxEvents: import("drizzle-orm/pg-core").PgTableWithCol
3733
3903
  }>;
3734
3904
  seq: import("drizzle-orm/pg-core").PgColumn<{
3735
3905
  name: "seq";
3736
- tableName: "sandbox_events";
3906
+ tableName: "environment_events";
3737
3907
  dataType: "number";
3738
3908
  columnType: "PgBigInt53";
3739
3909
  data: number;
@@ -3750,7 +3920,7 @@ export declare const sandboxEvents: import("drizzle-orm/pg-core").PgTableWithCol
3750
3920
  }, {}, {}>;
3751
3921
  type: import("drizzle-orm/pg-core").PgColumn<{
3752
3922
  name: "type";
3753
- tableName: "sandbox_events";
3923
+ tableName: "environment_events";
3754
3924
  dataType: "string";
3755
3925
  columnType: "PgText";
3756
3926
  data: string;
@@ -3767,7 +3937,7 @@ export declare const sandboxEvents: import("drizzle-orm/pg-core").PgTableWithCol
3767
3937
  }, {}, {}>;
3768
3938
  body: import("drizzle-orm/pg-core").PgColumn<{
3769
3939
  name: "body";
3770
- tableName: "sandbox_events";
3940
+ tableName: "environment_events";
3771
3941
  dataType: "custom";
3772
3942
  columnType: "PgCustomColumn";
3773
3943
  data: unknown;
@@ -3786,7 +3956,7 @@ export declare const sandboxEvents: import("drizzle-orm/pg-core").PgTableWithCol
3786
3956
  }>;
3787
3957
  committedAt: import("drizzle-orm/pg-core").PgColumn<{
3788
3958
  name: "committedAt";
3789
- tableName: "sandbox_events";
3959
+ tableName: "environment_events";
3790
3960
  dataType: "string";
3791
3961
  columnType: "PgTimestampString";
3792
3962
  data: string;
@@ -4034,11 +4204,14 @@ export type SigningKeyRow = typeof signingKeys.$inferSelect;
4034
4204
  export type ModelUsageRow = typeof modelUsage.$inferSelect;
4035
4205
  export type ModelBudgetRow = typeof modelBudgets.$inferSelect;
4036
4206
  export type ToolCrossingRow = typeof toolCrossings.$inferSelect;
4037
- export type SandboxResourceRow = typeof sandboxResources.$inferSelect;
4207
+ export type EnvironmentRowColumns = typeof environments.$inferSelect;
4038
4208
  export type ArtifactRow = typeof artifacts.$inferSelect;
4039
4209
  export type ArtifactVersionRow = typeof artifactVersions.$inferSelect;
4040
4210
  export type DefinitionFileRow = typeof definitionFiles.$inferSelect;
4041
- export type ModelUsageWrite = Omit<ModelUsageRow, "duplicate" | "txid" | "tokensReported" | "costKnown"> & {
4211
+ export type ModelUsageWrite = Omit<ModelUsageRow, "duplicate" | "txid" | "tokensReported" | "costKnown" | "startedAt" | "endedAt" | "firstTokenMs"> & {
4042
4212
  tokensReported?: boolean | null;
4043
4213
  costKnown?: boolean | null;
4214
+ startedAt?: string | null;
4215
+ endedAt?: string | null;
4216
+ firstTokenMs?: number | null;
4044
4217
  };