@morpho-dev/router 0.10.0 → 0.12.0

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 (60) hide show
  1. package/README.md +20 -5
  2. package/dist/cli.js +14944 -8994
  3. package/dist/drizzle/migrations/0031_sell-takeable-reindex.sql +254 -0
  4. package/dist/drizzle/migrations/0032_callback-type.sql +3 -0
  5. package/dist/drizzle/migrations/0033_obligation-id-bytes20.sql +255 -0
  6. package/dist/drizzle/migrations/0034_chain-checkpoints.sql +1 -0
  7. package/dist/drizzle/migrations/0035_chain-tip-hash-cas.sql +1 -0
  8. package/dist/drizzle/migrations/0036_pending-links.sql +22 -0
  9. package/dist/drizzle/migrations/0037_chain-finalized-anchor.sql +2 -0
  10. package/dist/drizzle/migrations/0038_add-obligation-rcf-threshold.sql +2 -0
  11. package/dist/drizzle/migrations/0039_add-offers-composite-indexes.sql +2 -0
  12. package/dist/drizzle/migrations/0040_drop-redundant-offers-indexes.sql +2 -0
  13. package/dist/drizzle/migrations/0041_add-group-winner-expression-index.sql +10 -0
  14. package/dist/drizzle/migrations/0042_contract-sync-v1.14.sql +284 -0
  15. package/dist/drizzle/migrations/0043_add-obligation-side-tick-index.sql +1 -0
  16. package/dist/drizzle/migrations/0044_index-audit-cleanup.sql +27 -0
  17. package/dist/drizzle/migrations/0045_add-lots-offsets-availability-indexes.sql +5 -0
  18. package/dist/drizzle/migrations/0046_add-offers-active-tick-index.sql +1 -0
  19. package/dist/drizzle/migrations/0047_add-offers-book-winners-index.sql +1 -0
  20. package/dist/drizzle/migrations/0048_covering-indexes-for-winners-queries.sql +34 -0
  21. package/dist/drizzle/migrations/0049_contract-sync-v1.15.sql +305 -0
  22. package/dist/drizzle/migrations/meta/0031_snapshot.json +1652 -0
  23. package/dist/drizzle/migrations/meta/0033_snapshot.json +1658 -0
  24. package/dist/drizzle/migrations/meta/0036_snapshot.json +1864 -0
  25. package/dist/drizzle/migrations/meta/0037_snapshot.json +1876 -0
  26. package/dist/drizzle/migrations/meta/0038_snapshot.json +1882 -0
  27. package/dist/drizzle/migrations/meta/0039_snapshot.json +1960 -0
  28. package/dist/drizzle/migrations/meta/0040_snapshot.json +1912 -0
  29. package/dist/drizzle/migrations/meta/0041_snapshot.json +1912 -0
  30. package/dist/drizzle/migrations/meta/0042_snapshot.json +1882 -0
  31. package/dist/drizzle/migrations/meta/0043_snapshot.json +1909 -0
  32. package/dist/drizzle/migrations/meta/0044_snapshot.json +1853 -0
  33. package/dist/drizzle/migrations/meta/0045_snapshot.json +1921 -0
  34. package/dist/drizzle/migrations/meta/0046_snapshot.json +1966 -0
  35. package/dist/drizzle/migrations/meta/0047_snapshot.json +2005 -0
  36. package/dist/drizzle/migrations/meta/0048_snapshot.json +2035 -0
  37. package/dist/drizzle/migrations/meta/0049_snapshot.json +2035 -0
  38. package/dist/drizzle/migrations/meta/_journal.json +133 -0
  39. package/dist/evm/bytecode/morpho.txt +1 -1
  40. package/dist/index.browser.d.mts +784 -282
  41. package/dist/index.browser.d.mts.map +1 -1
  42. package/dist/index.browser.mjs +1516 -675
  43. package/dist/index.browser.mjs.map +1 -1
  44. package/dist/index.node.d.mts +1676 -602
  45. package/dist/index.node.d.mts.map +1 -1
  46. package/dist/index.node.mjs +10121 -5251
  47. package/dist/index.node.mjs.map +1 -1
  48. package/dist/register-otel-hook.js +7 -0
  49. package/dist/server-D4xxddev.js +9573 -0
  50. package/dist/server.js +9617 -0
  51. package/docs/integrator.md +14 -24
  52. package/package.json +36 -29
  53. package/dist/index.browser.d.ts +0 -5007
  54. package/dist/index.browser.d.ts.map +0 -1
  55. package/dist/index.browser.js +0 -5825
  56. package/dist/index.browser.js.map +0 -1
  57. package/dist/index.node.d.ts +0 -8263
  58. package/dist/index.node.d.ts.map +0 -1
  59. package/dist/index.node.js +0 -12566
  60. package/dist/index.node.js.map +0 -1
@@ -0,0 +1,254 @@
1
+ CREATE TYPE "router_v1.12"."position_type" AS ENUM('erc20', 'vault_v1', 'debtOf', 'collateralOf');--> statement-breakpoint
2
+ CREATE TYPE "router_v1.12"."status_code" AS ENUM('VALID', 'SIMULATION_ERROR');--> statement-breakpoint
3
+ CREATE TABLE "router_v1.12"."callbacks" (
4
+ "id" varchar(66) PRIMARY KEY NOT NULL,
5
+ "position_chain_id" bigint NOT NULL,
6
+ "position_contract" varchar(66) NOT NULL,
7
+ "position_user" varchar(42) NOT NULL,
8
+ "position_type_id" integer NOT NULL,
9
+ "amount" numeric(78, 0)
10
+ );
11
+ --> statement-breakpoint
12
+ CREATE TABLE "router_v1.12"."chains" (
13
+ "chain_id" bigint NOT NULL,
14
+ "block_number" bigint NOT NULL,
15
+ "epoch" numeric(78, 0) DEFAULT '0' NOT NULL,
16
+ "updated_at" timestamp DEFAULT now() NOT NULL
17
+ );
18
+ --> statement-breakpoint
19
+ CREATE TABLE "router_v1.12"."collectors" (
20
+ "chain_id" bigint NOT NULL,
21
+ "name" text NOT NULL,
22
+ "block_number" bigint NOT NULL,
23
+ "epoch" numeric(78, 0) DEFAULT '0' NOT NULL,
24
+ "updated_at" timestamp DEFAULT now() NOT NULL
25
+ );
26
+ --> statement-breakpoint
27
+ CREATE TABLE "router_v1.12"."consumed_events" (
28
+ "event_id" varchar(128) PRIMARY KEY NOT NULL,
29
+ "chain_id" bigint NOT NULL,
30
+ "maker" varchar(42) NOT NULL,
31
+ "group" varchar(66) NOT NULL,
32
+ "amount" numeric(78, 0) NOT NULL,
33
+ "block_number" bigint NOT NULL,
34
+ "created_at" timestamp DEFAULT now() NOT NULL
35
+ );
36
+ --> statement-breakpoint
37
+ CREATE TABLE "router_v1.12"."groups" (
38
+ "chain_id" bigint NOT NULL,
39
+ "maker" varchar(42) NOT NULL,
40
+ "group" varchar(66) NOT NULL,
41
+ "consumed" numeric(78, 0) NOT NULL,
42
+ "block_number" bigint NOT NULL,
43
+ "updated_at" timestamp DEFAULT now() NOT NULL,
44
+ CONSTRAINT "groups_pk" PRIMARY KEY("chain_id","maker","group")
45
+ );
46
+ --> statement-breakpoint
47
+ CREATE TABLE "router_v1.12"."lots" (
48
+ "chain_id" bigint NOT NULL,
49
+ "user" varchar(42) NOT NULL,
50
+ "contract" varchar(66) NOT NULL,
51
+ "group" varchar(66) NOT NULL,
52
+ "obligation_id" varchar(66) NOT NULL,
53
+ "lower" numeric(78, 0) NOT NULL,
54
+ "upper" numeric(78, 0) NOT NULL,
55
+ CONSTRAINT "lots_pk" PRIMARY KEY("chain_id","user","contract","group","obligation_id")
56
+ );
57
+ --> statement-breakpoint
58
+ CREATE TABLE "router_v1.12"."lots_positions" (
59
+ "chain_id" bigint NOT NULL,
60
+ "contract" varchar(66) NOT NULL,
61
+ "user" varchar(42) NOT NULL,
62
+ "position_type_id" integer NOT NULL,
63
+ CONSTRAINT "lots_positions_pk" PRIMARY KEY("chain_id","contract","user")
64
+ );
65
+ --> statement-breakpoint
66
+ CREATE TABLE "router_v1.12"."merkle_paths" (
67
+ "offer_hash" varchar(66) NOT NULL,
68
+ "obligation_id" varchar(66) NOT NULL,
69
+ "tree_root" varchar(66) NOT NULL,
70
+ "proof_nodes" text NOT NULL,
71
+ "created_at" timestamp DEFAULT now() NOT NULL,
72
+ CONSTRAINT "merkle_paths_pk" PRIMARY KEY("offer_hash","obligation_id")
73
+ );
74
+ --> statement-breakpoint
75
+ CREATE TABLE "router_v1.12"."obligation_collaterals_v2" (
76
+ "obligation_key" varchar(66) NOT NULL,
77
+ "asset" varchar(42) NOT NULL,
78
+ "oracle_address" varchar(42) NOT NULL,
79
+ "lltv" bigint NOT NULL,
80
+ "collateral_index" integer NOT NULL,
81
+ "updated_at" timestamp DEFAULT now() NOT NULL,
82
+ CONSTRAINT "obligation_collaterals_v2_pk" PRIMARY KEY("obligation_key","asset")
83
+ );
84
+ --> statement-breakpoint
85
+ CREATE TABLE "router_v1.12"."obligation_id_keys" (
86
+ "obligation_id" varchar(66) PRIMARY KEY NOT NULL,
87
+ "obligation_key" varchar(66) NOT NULL,
88
+ "chain_id" bigint NOT NULL,
89
+ "morpho_v2" varchar(42) NOT NULL
90
+ );
91
+ --> statement-breakpoint
92
+ CREATE TABLE "router_v1.12"."obligations" (
93
+ "obligation_key" varchar(66) PRIMARY KEY NOT NULL,
94
+ "loan_token" varchar(42) NOT NULL,
95
+ "maturity" integer NOT NULL
96
+ );
97
+ --> statement-breakpoint
98
+ CREATE TABLE "router_v1.12"."offers" (
99
+ "hash" varchar(66) NOT NULL,
100
+ "obligation_id" varchar(66) NOT NULL,
101
+ "assets" numeric(78, 0) NOT NULL,
102
+ "obligation_units" numeric(78, 0) DEFAULT '0' NOT NULL,
103
+ "obligation_shares" numeric(78, 0) DEFAULT '0' NOT NULL,
104
+ "tick" integer NOT NULL,
105
+ "maturity" integer NOT NULL,
106
+ "expiry" integer NOT NULL,
107
+ "start" integer NOT NULL,
108
+ "group_chain_id" bigint NOT NULL,
109
+ "group_maker" varchar(42) NOT NULL,
110
+ "group_group" varchar(66) NOT NULL,
111
+ "session" varchar(66) NOT NULL,
112
+ "buy" boolean NOT NULL,
113
+ "callback_address" varchar(42) NOT NULL,
114
+ "callback_data" text NOT NULL,
115
+ "receiver_if_maker_is_seller" varchar(42),
116
+ "block_number" bigint NOT NULL,
117
+ "updated_at" timestamp DEFAULT now() NOT NULL,
118
+ CONSTRAINT "offers_pk" PRIMARY KEY("hash","obligation_id")
119
+ );
120
+ --> statement-breakpoint
121
+ CREATE TABLE "router_v1.12"."offers_callbacks" (
122
+ "offer_hash" varchar(66) NOT NULL,
123
+ "obligation_id" varchar(66) NOT NULL,
124
+ "callback_id" varchar(66),
125
+ CONSTRAINT "offers_callbacks_pk" PRIMARY KEY("offer_hash","obligation_id","callback_id")
126
+ );
127
+ --> statement-breakpoint
128
+ CREATE TABLE "router_v1.12"."offsets" (
129
+ "chain_id" bigint NOT NULL,
130
+ "user" varchar(42) NOT NULL,
131
+ "contract" varchar(66) NOT NULL,
132
+ "group" varchar(66) NOT NULL,
133
+ "obligation_id" varchar(66) NOT NULL,
134
+ "value" numeric(78, 0) NOT NULL,
135
+ CONSTRAINT "offsets_pk" PRIMARY KEY("chain_id","user","contract","group","obligation_id")
136
+ );
137
+ --> statement-breakpoint
138
+ CREATE TABLE "router_v1.12"."oracles" (
139
+ "chain_id" bigint NOT NULL,
140
+ "address" varchar(42) NOT NULL,
141
+ "price" numeric(78, 0),
142
+ "block_number" bigint NOT NULL,
143
+ "updated_at" timestamp DEFAULT now() NOT NULL,
144
+ CONSTRAINT "oracles_pk" PRIMARY KEY("chain_id","address")
145
+ );
146
+ --> statement-breakpoint
147
+ CREATE TABLE "router_v1.12"."position_types" (
148
+ "id" serial PRIMARY KEY NOT NULL,
149
+ "type" "router_v1.12"."position_type" NOT NULL
150
+ );
151
+ --> statement-breakpoint
152
+ CREATE TABLE "router_v1.12"."positions" (
153
+ "chain_id" bigint NOT NULL,
154
+ "contract" varchar(66) NOT NULL,
155
+ "user" varchar(42) NOT NULL,
156
+ "position_type_id" integer NOT NULL,
157
+ "balance" numeric(78, 0),
158
+ "asset" varchar(42) NOT NULL,
159
+ "block_number" bigint NOT NULL,
160
+ "updated_at" timestamp DEFAULT now() NOT NULL,
161
+ CONSTRAINT "positions_pk" PRIMARY KEY("chain_id","contract","user","position_type_id","asset")
162
+ );
163
+ --> statement-breakpoint
164
+ CREATE TABLE "router_v1.12"."status" (
165
+ "id" serial PRIMARY KEY NOT NULL,
166
+ "code" "router_v1.12"."status_code",
167
+ CONSTRAINT "status_code_unique" UNIQUE("code")
168
+ );
169
+ --> statement-breakpoint
170
+ CREATE TABLE "router_v1.12"."transfers" (
171
+ "event_id" varchar(128) PRIMARY KEY NOT NULL,
172
+ "chain_id" bigint NOT NULL,
173
+ "contract" varchar(66) NOT NULL,
174
+ "from" varchar(42) NOT NULL,
175
+ "to" varchar(42) NOT NULL,
176
+ "value" numeric(78, 0) NOT NULL,
177
+ "position_type_id" integer NOT NULL,
178
+ "asset" varchar(42) NOT NULL,
179
+ "block_number" bigint NOT NULL,
180
+ "created_at" timestamp DEFAULT now() NOT NULL
181
+ );
182
+ --> statement-breakpoint
183
+ CREATE TABLE "router_v1.12"."trees" (
184
+ "root" varchar(66) PRIMARY KEY NOT NULL,
185
+ "root_signature" varchar(132) NOT NULL,
186
+ "created_at" timestamp DEFAULT now() NOT NULL
187
+ );
188
+ --> statement-breakpoint
189
+ CREATE TABLE "router_v1.12"."validations" (
190
+ "offer_hash" varchar(66) NOT NULL,
191
+ "obligation_id" varchar(66) NOT NULL,
192
+ "status_id" integer NOT NULL,
193
+ "updated_at" timestamp DEFAULT now() NOT NULL,
194
+ CONSTRAINT "validations_pk" PRIMARY KEY("offer_hash","obligation_id")
195
+ );
196
+ --> statement-breakpoint
197
+ DROP TABLE "router_v1.11"."callbacks" CASCADE;--> statement-breakpoint
198
+ DROP TABLE "router_v1.11"."chains" CASCADE;--> statement-breakpoint
199
+ DROP TABLE "router_v1.11"."collectors" CASCADE;--> statement-breakpoint
200
+ DROP TABLE "router_v1.11"."consumed_events" CASCADE;--> statement-breakpoint
201
+ DROP TABLE "router_v1.11"."groups" CASCADE;--> statement-breakpoint
202
+ DROP TABLE "router_v1.11"."lots" CASCADE;--> statement-breakpoint
203
+ DROP TABLE "router_v1.11"."lots_positions" CASCADE;--> statement-breakpoint
204
+ DROP TABLE "router_v1.11"."merkle_paths" CASCADE;--> statement-breakpoint
205
+ DROP TABLE "router_v1.11"."obligation_collaterals_v2" CASCADE;--> statement-breakpoint
206
+ DROP TABLE "router_v1.11"."obligation_id_keys" CASCADE;--> statement-breakpoint
207
+ DROP TABLE "router_v1.11"."obligations" CASCADE;--> statement-breakpoint
208
+ DROP TABLE "router_v1.11"."offers" CASCADE;--> statement-breakpoint
209
+ DROP TABLE "router_v1.11"."offers_callbacks" CASCADE;--> statement-breakpoint
210
+ DROP TABLE "router_v1.11"."offsets" CASCADE;--> statement-breakpoint
211
+ DROP TABLE "router_v1.11"."oracles" CASCADE;--> statement-breakpoint
212
+ DROP TABLE "router_v1.11"."position_types" CASCADE;--> statement-breakpoint
213
+ DROP TABLE "router_v1.11"."positions" CASCADE;--> statement-breakpoint
214
+ DROP TABLE "router_v1.11"."status" CASCADE;--> statement-breakpoint
215
+ DROP TABLE "router_v1.11"."transfers" CASCADE;--> statement-breakpoint
216
+ DROP TABLE "router_v1.11"."trees" CASCADE;--> statement-breakpoint
217
+ DROP TABLE "router_v1.11"."validations" CASCADE;--> statement-breakpoint
218
+ CREATE UNIQUE INDEX "chains_chain_id_idx" ON "router_v1.12"."chains" USING btree ("chain_id");--> statement-breakpoint
219
+ ALTER TABLE "router_v1.12"."callbacks" ADD CONSTRAINT "callbacks_position_type_id_position_types_id_fk" FOREIGN KEY ("position_type_id") REFERENCES "router_v1.12"."position_types"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
220
+ ALTER TABLE "router_v1.12"."collectors" ADD CONSTRAINT "collectors_chain_id_chains_chain_id_fk" FOREIGN KEY ("chain_id") REFERENCES "router_v1.12"."chains"("chain_id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
221
+ ALTER TABLE "router_v1.12"."consumed_events" ADD CONSTRAINT "consumed_events_groups_fk" FOREIGN KEY ("chain_id","maker","group") REFERENCES "router_v1.12"."groups"("chain_id","maker","group") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
222
+ ALTER TABLE "router_v1.12"."lots" ADD CONSTRAINT "lots_lots_positions_fk" FOREIGN KEY ("chain_id","contract","user") REFERENCES "router_v1.12"."lots_positions"("chain_id","contract","user") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
223
+ ALTER TABLE "router_v1.12"."lots" ADD CONSTRAINT "lots_groups_fk" FOREIGN KEY ("chain_id","user","group") REFERENCES "router_v1.12"."groups"("chain_id","maker","group") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
224
+ ALTER TABLE "router_v1.12"."lots_positions" ADD CONSTRAINT "lots_positions_position_type_id_position_types_id_fk" FOREIGN KEY ("position_type_id") REFERENCES "router_v1.12"."position_types"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
225
+ ALTER TABLE "router_v1.12"."merkle_paths" ADD CONSTRAINT "merkle_paths_tree_root_trees_root_fk" FOREIGN KEY ("tree_root") REFERENCES "router_v1.12"."trees"("root") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
226
+ ALTER TABLE "router_v1.12"."merkle_paths" ADD CONSTRAINT "merkle_paths_offer_fk" FOREIGN KEY ("offer_hash","obligation_id") REFERENCES "router_v1.12"."offers"("hash","obligation_id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
227
+ ALTER TABLE "router_v1.12"."obligation_collaterals_v2" ADD CONSTRAINT "obligation_collaterals_v2_obligation_key_obligations_obligation_key_fk" FOREIGN KEY ("obligation_key") REFERENCES "router_v1.12"."obligations"("obligation_key") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
228
+ ALTER TABLE "router_v1.12"."obligation_id_keys" ADD CONSTRAINT "obligation_id_keys_obligation_key_obligations_obligation_key_fk" FOREIGN KEY ("obligation_key") REFERENCES "router_v1.12"."obligations"("obligation_key") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
229
+ ALTER TABLE "router_v1.12"."offers" ADD CONSTRAINT "offers_obligation_id_obligation_id_keys_obligation_id_fk" FOREIGN KEY ("obligation_id") REFERENCES "router_v1.12"."obligation_id_keys"("obligation_id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
230
+ ALTER TABLE "router_v1.12"."offers" ADD CONSTRAINT "offers_groups_fk" FOREIGN KEY ("group_chain_id","group_maker","group_group") REFERENCES "router_v1.12"."groups"("chain_id","maker","group") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
231
+ ALTER TABLE "router_v1.12"."offers_callbacks" ADD CONSTRAINT "offers_callbacks_offer_fk" FOREIGN KEY ("offer_hash","obligation_id") REFERENCES "router_v1.12"."offers"("hash","obligation_id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
232
+ ALTER TABLE "router_v1.12"."offsets" ADD CONSTRAINT "offsets_lots_positions_fk" FOREIGN KEY ("chain_id","contract","user") REFERENCES "router_v1.12"."lots_positions"("chain_id","contract","user") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
233
+ ALTER TABLE "router_v1.12"."positions" ADD CONSTRAINT "positions_position_type_id_position_types_id_fk" FOREIGN KEY ("position_type_id") REFERENCES "router_v1.12"."position_types"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
234
+ ALTER TABLE "router_v1.12"."transfers" ADD CONSTRAINT "transfers_position_type_id_position_types_id_fk" FOREIGN KEY ("position_type_id") REFERENCES "router_v1.12"."position_types"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
235
+ ALTER TABLE "router_v1.12"."transfers" ADD CONSTRAINT "transfers_positions_from_fk" FOREIGN KEY ("chain_id","contract","from","position_type_id","asset") REFERENCES "router_v1.12"."positions"("chain_id","contract","user","position_type_id","asset") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
236
+ ALTER TABLE "router_v1.12"."transfers" ADD CONSTRAINT "transfers_positions_to_fk" FOREIGN KEY ("chain_id","contract","to","position_type_id","asset") REFERENCES "router_v1.12"."positions"("chain_id","contract","user","position_type_id","asset") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
237
+ ALTER TABLE "router_v1.12"."validations" ADD CONSTRAINT "validations_status_id_status_id_fk" FOREIGN KEY ("status_id") REFERENCES "router_v1.12"."status"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
238
+ ALTER TABLE "router_v1.12"."validations" ADD CONSTRAINT "validations_offer_fk" FOREIGN KEY ("offer_hash","obligation_id") REFERENCES "router_v1.12"."offers"("hash","obligation_id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
239
+ CREATE UNIQUE INDEX "collectors_chain_name_idx" ON "router_v1.12"."collectors" USING btree ("chain_id","name");--> statement-breakpoint
240
+ CREATE INDEX "consumed_events_group_idx" ON "router_v1.12"."consumed_events" USING btree ("chain_id","maker","group");--> statement-breakpoint
241
+ CREATE INDEX "consumed_events_block_number_idx" ON "router_v1.12"."consumed_events" USING btree ("block_number");--> statement-breakpoint
242
+ CREATE INDEX "groups_chain_id_maker_group_consumed_idx" ON "router_v1.12"."groups" USING btree ("chain_id","maker","group","consumed");--> statement-breakpoint
243
+ CREATE INDEX "merkle_paths_tree_root_idx" ON "router_v1.12"."merkle_paths" USING btree ("tree_root");--> statement-breakpoint
244
+ CREATE INDEX "obligation_collaterals_v2_obligation_key_idx" ON "router_v1.12"."obligation_collaterals_v2" USING btree ("obligation_key");--> statement-breakpoint
245
+ CREATE INDEX "obligation_collaterals_v2_oracle_address_idx" ON "router_v1.12"."obligation_collaterals_v2" USING btree ("oracle_address");--> statement-breakpoint
246
+ CREATE INDEX "obligation_id_keys_obligation_key_idx" ON "router_v1.12"."obligation_id_keys" USING btree ("obligation_key");--> statement-breakpoint
247
+ CREATE INDEX "obligation_id_keys_chain_id_idx" ON "router_v1.12"."obligation_id_keys" USING btree ("chain_id");--> statement-breakpoint
248
+ CREATE INDEX "offers_group_fk_idx" ON "router_v1.12"."offers" USING btree ("group_chain_id","group_maker","group_group");--> statement-breakpoint
249
+ CREATE INDEX "offers_group_and_hash_idx" ON "router_v1.12"."offers" USING btree ("group_chain_id","group_maker","group_group","hash");--> statement-breakpoint
250
+ CREATE INDEX "offers_obligation_id_side_idx" ON "router_v1.12"."offers" USING btree ("obligation_id","buy");--> statement-breakpoint
251
+ CREATE INDEX "transfers_chain_contract_user_idx" ON "router_v1.12"."transfers" USING btree ("chain_id","contract","from","to","block_number");--> statement-breakpoint
252
+ CREATE INDEX "transfers_chain_type_block_idx" ON "router_v1.12"."transfers" USING btree ("chain_id","position_type_id","block_number");--> statement-breakpoint
253
+ DROP TYPE "router_v1.11"."position_type";--> statement-breakpoint
254
+ DROP TYPE "router_v1.11"."status_code";
@@ -0,0 +1,3 @@
1
+ CREATE TYPE "router_v1.12"."callback_type" AS ENUM('empty');--> statement-breakpoint
2
+ ALTER TABLE "router_v1.12"."callbacks" ADD COLUMN "type" "router_v1.12"."callback_type" NOT NULL DEFAULT 'empty';--> statement-breakpoint
3
+ ALTER TABLE "router_v1.12"."callbacks" DROP COLUMN "amount";
@@ -0,0 +1,255 @@
1
+ CREATE TYPE "router_v1.13"."callback_type" AS ENUM('empty');--> statement-breakpoint
2
+ CREATE TYPE "router_v1.13"."position_type" AS ENUM('erc20', 'vault_v1', 'debtOf', 'collateralOf');--> statement-breakpoint
3
+ CREATE TYPE "router_v1.13"."status_code" AS ENUM('VALID', 'SIMULATION_ERROR');--> statement-breakpoint
4
+ CREATE TABLE "router_v1.13"."callbacks" (
5
+ "id" varchar(66) PRIMARY KEY NOT NULL,
6
+ "position_chain_id" bigint NOT NULL,
7
+ "position_contract" varchar(66) NOT NULL,
8
+ "position_user" varchar(42) NOT NULL,
9
+ "position_type_id" integer NOT NULL,
10
+ "type" "router_v1.13"."callback_type" NOT NULL
11
+ );
12
+ --> statement-breakpoint
13
+ CREATE TABLE "router_v1.13"."chains" (
14
+ "chain_id" bigint NOT NULL,
15
+ "block_number" bigint NOT NULL,
16
+ "epoch" numeric(78, 0) DEFAULT '0' NOT NULL,
17
+ "updated_at" timestamp DEFAULT now() NOT NULL
18
+ );
19
+ --> statement-breakpoint
20
+ CREATE TABLE "router_v1.13"."collectors" (
21
+ "chain_id" bigint NOT NULL,
22
+ "name" text NOT NULL,
23
+ "block_number" bigint NOT NULL,
24
+ "epoch" numeric(78, 0) DEFAULT '0' NOT NULL,
25
+ "updated_at" timestamp DEFAULT now() NOT NULL
26
+ );
27
+ --> statement-breakpoint
28
+ CREATE TABLE "router_v1.13"."consumed_events" (
29
+ "event_id" varchar(128) PRIMARY KEY NOT NULL,
30
+ "chain_id" bigint NOT NULL,
31
+ "maker" varchar(42) NOT NULL,
32
+ "group" varchar(66) NOT NULL,
33
+ "amount" numeric(78, 0) NOT NULL,
34
+ "block_number" bigint NOT NULL,
35
+ "created_at" timestamp DEFAULT now() NOT NULL
36
+ );
37
+ --> statement-breakpoint
38
+ CREATE TABLE "router_v1.13"."groups" (
39
+ "chain_id" bigint NOT NULL,
40
+ "maker" varchar(42) NOT NULL,
41
+ "group" varchar(66) NOT NULL,
42
+ "consumed" numeric(78, 0) NOT NULL,
43
+ "block_number" bigint NOT NULL,
44
+ "updated_at" timestamp DEFAULT now() NOT NULL,
45
+ CONSTRAINT "groups_pk" PRIMARY KEY("chain_id","maker","group")
46
+ );
47
+ --> statement-breakpoint
48
+ CREATE TABLE "router_v1.13"."lots" (
49
+ "chain_id" bigint NOT NULL,
50
+ "user" varchar(42) NOT NULL,
51
+ "contract" varchar(66) NOT NULL,
52
+ "group" varchar(66) NOT NULL,
53
+ "obligation_id" varchar(42) NOT NULL,
54
+ "lower" numeric(78, 0) NOT NULL,
55
+ "upper" numeric(78, 0) NOT NULL,
56
+ CONSTRAINT "lots_pk" PRIMARY KEY("chain_id","user","contract","group","obligation_id")
57
+ );
58
+ --> statement-breakpoint
59
+ CREATE TABLE "router_v1.13"."lots_positions" (
60
+ "chain_id" bigint NOT NULL,
61
+ "contract" varchar(66) NOT NULL,
62
+ "user" varchar(42) NOT NULL,
63
+ "position_type_id" integer NOT NULL,
64
+ CONSTRAINT "lots_positions_pk" PRIMARY KEY("chain_id","contract","user")
65
+ );
66
+ --> statement-breakpoint
67
+ CREATE TABLE "router_v1.13"."merkle_paths" (
68
+ "offer_hash" varchar(66) NOT NULL,
69
+ "obligation_id" varchar(42) NOT NULL,
70
+ "tree_root" varchar(66) NOT NULL,
71
+ "proof_nodes" text NOT NULL,
72
+ "created_at" timestamp DEFAULT now() NOT NULL,
73
+ CONSTRAINT "merkle_paths_pk" PRIMARY KEY("offer_hash","obligation_id")
74
+ );
75
+ --> statement-breakpoint
76
+ CREATE TABLE "router_v1.13"."obligation_collaterals_v2" (
77
+ "obligation_key" varchar(66) NOT NULL,
78
+ "asset" varchar(42) NOT NULL,
79
+ "oracle_address" varchar(42) NOT NULL,
80
+ "lltv" bigint NOT NULL,
81
+ "collateral_index" integer NOT NULL,
82
+ "updated_at" timestamp DEFAULT now() NOT NULL,
83
+ CONSTRAINT "obligation_collaterals_v2_pk" PRIMARY KEY("obligation_key","asset")
84
+ );
85
+ --> statement-breakpoint
86
+ CREATE TABLE "router_v1.13"."obligation_id_keys" (
87
+ "obligation_id" varchar(42) PRIMARY KEY NOT NULL,
88
+ "obligation_key" varchar(66) NOT NULL,
89
+ "chain_id" bigint NOT NULL,
90
+ "morpho_v2" varchar(42) NOT NULL
91
+ );
92
+ --> statement-breakpoint
93
+ CREATE TABLE "router_v1.13"."obligations" (
94
+ "obligation_key" varchar(66) PRIMARY KEY NOT NULL,
95
+ "loan_token" varchar(42) NOT NULL,
96
+ "maturity" integer NOT NULL
97
+ );
98
+ --> statement-breakpoint
99
+ CREATE TABLE "router_v1.13"."offers" (
100
+ "hash" varchar(66) NOT NULL,
101
+ "obligation_id" varchar(42) NOT NULL,
102
+ "assets" numeric(78, 0) NOT NULL,
103
+ "obligation_units" numeric(78, 0) DEFAULT '0' NOT NULL,
104
+ "obligation_shares" numeric(78, 0) DEFAULT '0' NOT NULL,
105
+ "tick" integer NOT NULL,
106
+ "maturity" integer NOT NULL,
107
+ "expiry" integer NOT NULL,
108
+ "start" integer NOT NULL,
109
+ "group_chain_id" bigint NOT NULL,
110
+ "group_maker" varchar(42) NOT NULL,
111
+ "group_group" varchar(66) NOT NULL,
112
+ "session" varchar(66) NOT NULL,
113
+ "buy" boolean NOT NULL,
114
+ "callback_address" varchar(42) NOT NULL,
115
+ "callback_data" text NOT NULL,
116
+ "receiver_if_maker_is_seller" varchar(42),
117
+ "block_number" bigint NOT NULL,
118
+ "updated_at" timestamp DEFAULT now() NOT NULL,
119
+ CONSTRAINT "offers_pk" PRIMARY KEY("hash","obligation_id")
120
+ );
121
+ --> statement-breakpoint
122
+ CREATE TABLE "router_v1.13"."offers_callbacks" (
123
+ "offer_hash" varchar(66) NOT NULL,
124
+ "obligation_id" varchar(42) NOT NULL,
125
+ "callback_id" varchar(66),
126
+ CONSTRAINT "offers_callbacks_pk" PRIMARY KEY("offer_hash","obligation_id","callback_id")
127
+ );
128
+ --> statement-breakpoint
129
+ CREATE TABLE "router_v1.13"."offsets" (
130
+ "chain_id" bigint NOT NULL,
131
+ "user" varchar(42) NOT NULL,
132
+ "contract" varchar(66) NOT NULL,
133
+ "group" varchar(66) NOT NULL,
134
+ "obligation_id" varchar(42) NOT NULL,
135
+ "value" numeric(78, 0) NOT NULL,
136
+ CONSTRAINT "offsets_pk" PRIMARY KEY("chain_id","user","contract","group","obligation_id")
137
+ );
138
+ --> statement-breakpoint
139
+ CREATE TABLE "router_v1.13"."oracles" (
140
+ "chain_id" bigint NOT NULL,
141
+ "address" varchar(42) NOT NULL,
142
+ "price" numeric(78, 0),
143
+ "block_number" bigint NOT NULL,
144
+ "updated_at" timestamp DEFAULT now() NOT NULL,
145
+ CONSTRAINT "oracles_pk" PRIMARY KEY("chain_id","address")
146
+ );
147
+ --> statement-breakpoint
148
+ CREATE TABLE "router_v1.13"."position_types" (
149
+ "id" serial PRIMARY KEY NOT NULL,
150
+ "type" "router_v1.13"."position_type" NOT NULL
151
+ );
152
+ --> statement-breakpoint
153
+ CREATE TABLE "router_v1.13"."positions" (
154
+ "chain_id" bigint NOT NULL,
155
+ "contract" varchar(66) NOT NULL,
156
+ "user" varchar(42) NOT NULL,
157
+ "position_type_id" integer NOT NULL,
158
+ "balance" numeric(78, 0),
159
+ "asset" varchar(42) NOT NULL,
160
+ "block_number" bigint NOT NULL,
161
+ "updated_at" timestamp DEFAULT now() NOT NULL,
162
+ CONSTRAINT "positions_pk" PRIMARY KEY("chain_id","contract","user","position_type_id","asset")
163
+ );
164
+ --> statement-breakpoint
165
+ CREATE TABLE "router_v1.13"."status" (
166
+ "id" serial PRIMARY KEY NOT NULL,
167
+ "code" "router_v1.13"."status_code",
168
+ CONSTRAINT "status_code_unique" UNIQUE("code")
169
+ );
170
+ --> statement-breakpoint
171
+ CREATE TABLE "router_v1.13"."transfers" (
172
+ "event_id" varchar(128) PRIMARY KEY NOT NULL,
173
+ "chain_id" bigint NOT NULL,
174
+ "contract" varchar(66) NOT NULL,
175
+ "from" varchar(42) NOT NULL,
176
+ "to" varchar(42) NOT NULL,
177
+ "value" numeric(78, 0) NOT NULL,
178
+ "position_type_id" integer NOT NULL,
179
+ "asset" varchar(42) NOT NULL,
180
+ "block_number" bigint NOT NULL,
181
+ "created_at" timestamp DEFAULT now() NOT NULL
182
+ );
183
+ --> statement-breakpoint
184
+ CREATE TABLE "router_v1.13"."trees" (
185
+ "root" varchar(66) PRIMARY KEY NOT NULL,
186
+ "root_signature" varchar(132) NOT NULL,
187
+ "created_at" timestamp DEFAULT now() NOT NULL
188
+ );
189
+ --> statement-breakpoint
190
+ CREATE TABLE "router_v1.13"."validations" (
191
+ "offer_hash" varchar(66) NOT NULL,
192
+ "obligation_id" varchar(42) NOT NULL,
193
+ "status_id" integer NOT NULL,
194
+ "updated_at" timestamp DEFAULT now() NOT NULL,
195
+ CONSTRAINT "validations_pk" PRIMARY KEY("offer_hash","obligation_id")
196
+ );
197
+ --> statement-breakpoint
198
+ DROP TABLE "router_v1.12"."callbacks" CASCADE;--> statement-breakpoint
199
+ DROP TABLE "router_v1.12"."chains" CASCADE;--> statement-breakpoint
200
+ DROP TABLE "router_v1.12"."collectors" CASCADE;--> statement-breakpoint
201
+ DROP TABLE "router_v1.12"."consumed_events" CASCADE;--> statement-breakpoint
202
+ DROP TABLE "router_v1.12"."groups" CASCADE;--> statement-breakpoint
203
+ DROP TABLE "router_v1.12"."lots" CASCADE;--> statement-breakpoint
204
+ DROP TABLE "router_v1.12"."lots_positions" CASCADE;--> statement-breakpoint
205
+ DROP TABLE "router_v1.12"."merkle_paths" CASCADE;--> statement-breakpoint
206
+ DROP TABLE "router_v1.12"."obligation_collaterals_v2" CASCADE;--> statement-breakpoint
207
+ DROP TABLE "router_v1.12"."obligation_id_keys" CASCADE;--> statement-breakpoint
208
+ DROP TABLE "router_v1.12"."obligations" CASCADE;--> statement-breakpoint
209
+ DROP TABLE "router_v1.12"."offers" CASCADE;--> statement-breakpoint
210
+ DROP TABLE "router_v1.12"."offers_callbacks" CASCADE;--> statement-breakpoint
211
+ DROP TABLE "router_v1.12"."offsets" CASCADE;--> statement-breakpoint
212
+ DROP TABLE "router_v1.12"."oracles" CASCADE;--> statement-breakpoint
213
+ DROP TABLE "router_v1.12"."position_types" CASCADE;--> statement-breakpoint
214
+ DROP TABLE "router_v1.12"."positions" CASCADE;--> statement-breakpoint
215
+ DROP TABLE "router_v1.12"."status" CASCADE;--> statement-breakpoint
216
+ DROP TABLE "router_v1.12"."transfers" CASCADE;--> statement-breakpoint
217
+ DROP TABLE "router_v1.12"."trees" CASCADE;--> statement-breakpoint
218
+ DROP TABLE "router_v1.12"."validations" CASCADE;--> statement-breakpoint
219
+ CREATE UNIQUE INDEX "chains_chain_id_idx" ON "router_v1.13"."chains" USING btree ("chain_id");--> statement-breakpoint
220
+ ALTER TABLE "router_v1.13"."callbacks" ADD CONSTRAINT "callbacks_position_type_id_position_types_id_fk" FOREIGN KEY ("position_type_id") REFERENCES "router_v1.13"."position_types"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
221
+ ALTER TABLE "router_v1.13"."collectors" ADD CONSTRAINT "collectors_chain_id_chains_chain_id_fk" FOREIGN KEY ("chain_id") REFERENCES "router_v1.13"."chains"("chain_id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
222
+ ALTER TABLE "router_v1.13"."consumed_events" ADD CONSTRAINT "consumed_events_groups_fk" FOREIGN KEY ("chain_id","maker","group") REFERENCES "router_v1.13"."groups"("chain_id","maker","group") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
223
+ ALTER TABLE "router_v1.13"."lots" ADD CONSTRAINT "lots_lots_positions_fk" FOREIGN KEY ("chain_id","contract","user") REFERENCES "router_v1.13"."lots_positions"("chain_id","contract","user") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
224
+ ALTER TABLE "router_v1.13"."lots" ADD CONSTRAINT "lots_groups_fk" FOREIGN KEY ("chain_id","user","group") REFERENCES "router_v1.13"."groups"("chain_id","maker","group") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
225
+ ALTER TABLE "router_v1.13"."lots_positions" ADD CONSTRAINT "lots_positions_position_type_id_position_types_id_fk" FOREIGN KEY ("position_type_id") REFERENCES "router_v1.13"."position_types"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
226
+ ALTER TABLE "router_v1.13"."merkle_paths" ADD CONSTRAINT "merkle_paths_tree_root_trees_root_fk" FOREIGN KEY ("tree_root") REFERENCES "router_v1.13"."trees"("root") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
227
+ ALTER TABLE "router_v1.13"."merkle_paths" ADD CONSTRAINT "merkle_paths_offer_fk" FOREIGN KEY ("offer_hash","obligation_id") REFERENCES "router_v1.13"."offers"("hash","obligation_id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
228
+ ALTER TABLE "router_v1.13"."obligation_collaterals_v2" ADD CONSTRAINT "obligation_collaterals_v2_obligation_key_obligations_obligation_key_fk" FOREIGN KEY ("obligation_key") REFERENCES "router_v1.13"."obligations"("obligation_key") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
229
+ ALTER TABLE "router_v1.13"."obligation_id_keys" ADD CONSTRAINT "obligation_id_keys_obligation_key_obligations_obligation_key_fk" FOREIGN KEY ("obligation_key") REFERENCES "router_v1.13"."obligations"("obligation_key") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
230
+ ALTER TABLE "router_v1.13"."offers" ADD CONSTRAINT "offers_obligation_id_obligation_id_keys_obligation_id_fk" FOREIGN KEY ("obligation_id") REFERENCES "router_v1.13"."obligation_id_keys"("obligation_id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
231
+ ALTER TABLE "router_v1.13"."offers" ADD CONSTRAINT "offers_groups_fk" FOREIGN KEY ("group_chain_id","group_maker","group_group") REFERENCES "router_v1.13"."groups"("chain_id","maker","group") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
232
+ ALTER TABLE "router_v1.13"."offers_callbacks" ADD CONSTRAINT "offers_callbacks_offer_fk" FOREIGN KEY ("offer_hash","obligation_id") REFERENCES "router_v1.13"."offers"("hash","obligation_id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
233
+ ALTER TABLE "router_v1.13"."offsets" ADD CONSTRAINT "offsets_lots_positions_fk" FOREIGN KEY ("chain_id","contract","user") REFERENCES "router_v1.13"."lots_positions"("chain_id","contract","user") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
234
+ ALTER TABLE "router_v1.13"."positions" ADD CONSTRAINT "positions_position_type_id_position_types_id_fk" FOREIGN KEY ("position_type_id") REFERENCES "router_v1.13"."position_types"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
235
+ ALTER TABLE "router_v1.13"."transfers" ADD CONSTRAINT "transfers_position_type_id_position_types_id_fk" FOREIGN KEY ("position_type_id") REFERENCES "router_v1.13"."position_types"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
236
+ ALTER TABLE "router_v1.13"."transfers" ADD CONSTRAINT "transfers_positions_from_fk" FOREIGN KEY ("chain_id","contract","from","position_type_id","asset") REFERENCES "router_v1.13"."positions"("chain_id","contract","user","position_type_id","asset") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
237
+ ALTER TABLE "router_v1.13"."transfers" ADD CONSTRAINT "transfers_positions_to_fk" FOREIGN KEY ("chain_id","contract","to","position_type_id","asset") REFERENCES "router_v1.13"."positions"("chain_id","contract","user","position_type_id","asset") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
238
+ ALTER TABLE "router_v1.13"."validations" ADD CONSTRAINT "validations_status_id_status_id_fk" FOREIGN KEY ("status_id") REFERENCES "router_v1.13"."status"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
239
+ ALTER TABLE "router_v1.13"."validations" ADD CONSTRAINT "validations_offer_fk" FOREIGN KEY ("offer_hash","obligation_id") REFERENCES "router_v1.13"."offers"("hash","obligation_id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
240
+ CREATE UNIQUE INDEX "collectors_chain_name_idx" ON "router_v1.13"."collectors" USING btree ("chain_id","name");--> statement-breakpoint
241
+ CREATE INDEX "consumed_events_group_idx" ON "router_v1.13"."consumed_events" USING btree ("chain_id","maker","group");--> statement-breakpoint
242
+ CREATE INDEX "consumed_events_block_number_idx" ON "router_v1.13"."consumed_events" USING btree ("block_number");--> statement-breakpoint
243
+ CREATE INDEX "groups_chain_id_maker_group_consumed_idx" ON "router_v1.13"."groups" USING btree ("chain_id","maker","group","consumed");--> statement-breakpoint
244
+ CREATE INDEX "merkle_paths_tree_root_idx" ON "router_v1.13"."merkle_paths" USING btree ("tree_root");--> statement-breakpoint
245
+ CREATE INDEX "obligation_collaterals_v2_obligation_key_idx" ON "router_v1.13"."obligation_collaterals_v2" USING btree ("obligation_key");--> statement-breakpoint
246
+ CREATE INDEX "obligation_collaterals_v2_oracle_address_idx" ON "router_v1.13"."obligation_collaterals_v2" USING btree ("oracle_address");--> statement-breakpoint
247
+ CREATE INDEX "obligation_id_keys_obligation_key_idx" ON "router_v1.13"."obligation_id_keys" USING btree ("obligation_key");--> statement-breakpoint
248
+ CREATE INDEX "obligation_id_keys_chain_id_idx" ON "router_v1.13"."obligation_id_keys" USING btree ("chain_id");--> statement-breakpoint
249
+ CREATE INDEX "offers_group_fk_idx" ON "router_v1.13"."offers" USING btree ("group_chain_id","group_maker","group_group");--> statement-breakpoint
250
+ CREATE INDEX "offers_group_and_hash_idx" ON "router_v1.13"."offers" USING btree ("group_chain_id","group_maker","group_group","hash");--> statement-breakpoint
251
+ CREATE INDEX "offers_obligation_id_side_idx" ON "router_v1.13"."offers" USING btree ("obligation_id","buy");--> statement-breakpoint
252
+ CREATE INDEX "transfers_chain_contract_user_idx" ON "router_v1.13"."transfers" USING btree ("chain_id","contract","from","to","block_number");--> statement-breakpoint
253
+ CREATE INDEX "transfers_chain_type_block_idx" ON "router_v1.13"."transfers" USING btree ("chain_id","position_type_id","block_number");--> statement-breakpoint
254
+ DROP TYPE "router_v1.12"."position_type";--> statement-breakpoint
255
+ DROP TYPE "router_v1.12"."status_code";
@@ -0,0 +1 @@
1
+ ALTER TABLE "router_v1.13"."chains" ADD COLUMN "checkpoints" text DEFAULT '[]' NOT NULL;
@@ -0,0 +1 @@
1
+ ALTER TABLE "router_v1.13"."chains" ADD COLUMN "tip_hash" text;
@@ -0,0 +1,22 @@
1
+ CREATE TABLE "router_v1.13"."pending_links" (
2
+ "key" varchar(191) PRIMARY KEY NOT NULL,
3
+ "type" text NOT NULL,
4
+ "status" text NOT NULL,
5
+ "chain_id" bigint NOT NULL,
6
+ "event_id" varchar(128) NOT NULL,
7
+ "obligation_id" varchar(42) NOT NULL,
8
+ "collateral_index" integer NOT NULL,
9
+ "user" varchar(42) NOT NULL,
10
+ "amount" numeric(78, 0) NOT NULL,
11
+ "block_number" bigint NOT NULL,
12
+ "first_seen_block" bigint NOT NULL,
13
+ "last_tried_block" bigint,
14
+ "attempts" integer DEFAULT 0 NOT NULL,
15
+ "ignored_reason" text,
16
+ "resolved_at" timestamp,
17
+ "updated_at" timestamp DEFAULT now() NOT NULL
18
+ );
19
+ --> statement-breakpoint
20
+ CREATE INDEX "pending_links_chain_type_status_idx" ON "router_v1.13"."pending_links" USING btree ("chain_id","type","status");--> statement-breakpoint
21
+ CREATE INDEX "pending_links_pending_scan_idx" ON "router_v1.13"."pending_links" USING btree ("chain_id","type","status","first_seen_block");--> statement-breakpoint
22
+ CREATE INDEX "pending_links_event_id_idx" ON "router_v1.13"."pending_links" USING btree ("chain_id","event_id");
@@ -0,0 +1,2 @@
1
+ ALTER TABLE "router_v1.13"."chains" ADD COLUMN "finalized_block_number" bigint;--> statement-breakpoint
2
+ ALTER TABLE "router_v1.13"."chains" ADD COLUMN "finalized_block_hash" text;
@@ -0,0 +1,2 @@
1
+ ALTER TABLE "router_v1.13"."obligations" ADD COLUMN "rcf_threshold" numeric(78, 0) DEFAULT '0' NOT NULL;--> statement-breakpoint
2
+ ALTER TABLE "router_v1.13"."obligations" ALTER COLUMN "rcf_threshold" DROP DEFAULT;
@@ -0,0 +1,2 @@
1
+ CREATE INDEX "offers_obligation_side_group_idx" ON "router_v1.13"."offers" USING btree ("obligation_id","buy","group_chain_id","group_maker","group_group");--> statement-breakpoint
2
+ CREATE INDEX "offers_group_obligation_side_idx" ON "router_v1.13"."offers" USING btree ("group_chain_id","group_maker","group_group","obligation_id","buy");
@@ -0,0 +1,2 @@
1
+ DROP INDEX "router_v1.13"."offers_group_fk_idx";--> statement-breakpoint
2
+ DROP INDEX "router_v1.13"."offers_obligation_id_side_idx";
@@ -0,0 +1,10 @@
1
+ CREATE INDEX "offers_group_winner_expr_idx" ON "router_v1.13"."offers" (
2
+ "group_chain_id",
3
+ "group_maker",
4
+ "group_group",
5
+ "obligation_id",
6
+ "buy",
7
+ (CASE WHEN "buy" THEN -"tick" ELSE "tick" END),
8
+ "block_number",
9
+ "hash"
10
+ );