@hot-updater/cloudflare 1.0.0-rc.32 → 1.0.0-rc.34

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.
package/dist/index.d.cts CHANGED
@@ -54,8 +54,6 @@ type BundleEventFailure = DatabaseJsonObject & {
54
54
  readonly origin_code?: string;
55
55
  readonly error_message?: string;
56
56
  readonly error_stack?: string;
57
- /** Android's `ApplicationExitInfo` reason for the process before this one. */
58
- readonly previous_process_exit?: string;
59
57
  };
60
58
  type DatabaseHttpResponse = DatabaseJsonObject & {
61
59
  readonly resource: "catalog" | "artifact";
@@ -78,8 +76,6 @@ type DatabaseBundleEventMetadata = DatabaseJsonObject & {
78
76
  readonly delivery?: "patch" | "manifest" | "archive" | "unknown";
79
77
  /** `UPDATE_DOWNLOADED`: a patch failed and the full files came instead. */
80
78
  readonly patch_fallback?: boolean;
81
- /** `RECOVERED`: Android's `ApplicationExitInfo` reason for the crashed process. */
82
- readonly previous_process_exit?: string;
83
79
  };
84
80
  type BundleEventRowBase = {
85
81
  readonly id: string;
@@ -204,8 +200,11 @@ type InsightsCoverage = {
204
200
  * which are kept.
205
201
  */
206
202
  interface ReleaseActivityMetrics {
203
+ /** Download reports of the release. */
207
204
  readonly downloads: number;
208
- readonly launches: number;
205
+ /** Apply reports of the release: installations that started running it. */
206
+ readonly applies: number;
207
+ /** Launches that crashed on the release and recovered to the one before. */
209
208
  readonly failedLaunches: number;
210
209
  }
211
210
  interface InsightsGetReleaseActivityInput {
@@ -305,17 +304,6 @@ interface InsightsUpdateFailures {
305
304
  };
306
305
  /** Over a time range: failures by stage and reason, most first. */
307
306
  readonly breakdown?: readonly InsightsFailureBreakdown[];
308
- /**
309
- * Over a time range: failed launches, and the recoveries whose crashed
310
- * process exited for a reason Android 11+ reported, by reason, most first.
311
- */
312
- readonly recoveries?: {
313
- readonly failedLaunches: number;
314
- readonly byExitReason: readonly {
315
- readonly exitReason: string;
316
- readonly events: number;
317
- }[];
318
- };
319
307
  }
320
308
  //#endregion
321
309
  //#region ../api-keys/dist/server/model.d.mts
@@ -483,7 +471,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
483
471
  readonly bucket_start_ms: {
484
472
  readonly type: "integer";
485
473
  };
486
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
474
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks", {
487
475
  readonly window: {
488
476
  readonly eq: readonly ["identity"];
489
477
  readonly sort: readonly ["bucket_start_ms"];
@@ -511,7 +499,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
511
499
  readonly bucket_start_ms: {
512
500
  readonly type: "integer";
513
501
  };
514
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
502
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks", {
515
503
  readonly window: {
516
504
  readonly eq: readonly ["identity"];
517
505
  readonly sort: readonly ["bucket_start_ms"];
@@ -539,7 +527,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
539
527
  readonly bucket_start_ms: {
540
528
  readonly type: "integer";
541
529
  };
542
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
530
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks" | "applies" | "failed_updates", {
543
531
  readonly window: {
544
532
  readonly eq: readonly ["identity"];
545
533
  readonly sort: readonly ["bucket_start_ms"];
package/dist/index.d.mts CHANGED
@@ -54,8 +54,6 @@ type BundleEventFailure = DatabaseJsonObject & {
54
54
  readonly origin_code?: string;
55
55
  readonly error_message?: string;
56
56
  readonly error_stack?: string;
57
- /** Android's `ApplicationExitInfo` reason for the process before this one. */
58
- readonly previous_process_exit?: string;
59
57
  };
60
58
  type DatabaseHttpResponse = DatabaseJsonObject & {
61
59
  readonly resource: "catalog" | "artifact";
@@ -78,8 +76,6 @@ type DatabaseBundleEventMetadata = DatabaseJsonObject & {
78
76
  readonly delivery?: "patch" | "manifest" | "archive" | "unknown";
79
77
  /** `UPDATE_DOWNLOADED`: a patch failed and the full files came instead. */
80
78
  readonly patch_fallback?: boolean;
81
- /** `RECOVERED`: Android's `ApplicationExitInfo` reason for the crashed process. */
82
- readonly previous_process_exit?: string;
83
79
  };
84
80
  type BundleEventRowBase = {
85
81
  readonly id: string;
@@ -204,8 +200,11 @@ type InsightsCoverage = {
204
200
  * which are kept.
205
201
  */
206
202
  interface ReleaseActivityMetrics {
203
+ /** Download reports of the release. */
207
204
  readonly downloads: number;
208
- readonly launches: number;
205
+ /** Apply reports of the release: installations that started running it. */
206
+ readonly applies: number;
207
+ /** Launches that crashed on the release and recovered to the one before. */
209
208
  readonly failedLaunches: number;
210
209
  }
211
210
  interface InsightsGetReleaseActivityInput {
@@ -305,17 +304,6 @@ interface InsightsUpdateFailures {
305
304
  };
306
305
  /** Over a time range: failures by stage and reason, most first. */
307
306
  readonly breakdown?: readonly InsightsFailureBreakdown[];
308
- /**
309
- * Over a time range: failed launches, and the recoveries whose crashed
310
- * process exited for a reason Android 11+ reported, by reason, most first.
311
- */
312
- readonly recoveries?: {
313
- readonly failedLaunches: number;
314
- readonly byExitReason: readonly {
315
- readonly exitReason: string;
316
- readonly events: number;
317
- }[];
318
- };
319
307
  }
320
308
  //#endregion
321
309
  //#region ../api-keys/dist/server/model.d.mts
@@ -483,7 +471,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
483
471
  readonly bucket_start_ms: {
484
472
  readonly type: "integer";
485
473
  };
486
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
474
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks", {
487
475
  readonly window: {
488
476
  readonly eq: readonly ["identity"];
489
477
  readonly sort: readonly ["bucket_start_ms"];
@@ -511,7 +499,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
511
499
  readonly bucket_start_ms: {
512
500
  readonly type: "integer";
513
501
  };
514
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
502
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks", {
515
503
  readonly window: {
516
504
  readonly eq: readonly ["identity"];
517
505
  readonly sort: readonly ["bucket_start_ms"];
@@ -539,7 +527,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
539
527
  readonly bucket_start_ms: {
540
528
  readonly type: "integer";
541
529
  };
542
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
530
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks" | "applies" | "failed_updates", {
543
531
  readonly window: {
544
532
  readonly eq: readonly ["identity"];
545
533
  readonly sort: readonly ["bucket_start_ms"];
@@ -42,8 +42,6 @@ type BundleEventFailure = DatabaseJsonObject & {
42
42
  readonly origin_code?: string;
43
43
  readonly error_message?: string;
44
44
  readonly error_stack?: string;
45
- /** Android's `ApplicationExitInfo` reason for the process before this one. */
46
- readonly previous_process_exit?: string;
47
45
  };
48
46
  type DatabaseHttpResponse = DatabaseJsonObject & {
49
47
  readonly resource: "catalog" | "artifact";
@@ -66,8 +64,6 @@ type DatabaseBundleEventMetadata = DatabaseJsonObject & {
66
64
  readonly delivery?: "patch" | "manifest" | "archive" | "unknown";
67
65
  /** `UPDATE_DOWNLOADED`: a patch failed and the full files came instead. */
68
66
  readonly patch_fallback?: boolean;
69
- /** `RECOVERED`: Android's `ApplicationExitInfo` reason for the crashed process. */
70
- readonly previous_process_exit?: string;
71
67
  };
72
68
  type BundleEventRowBase = {
73
69
  readonly id: string;
@@ -192,8 +188,11 @@ type InsightsCoverage = {
192
188
  * which are kept.
193
189
  */
194
190
  interface ReleaseActivityMetrics {
191
+ /** Download reports of the release. */
195
192
  readonly downloads: number;
196
- readonly launches: number;
193
+ /** Apply reports of the release: installations that started running it. */
194
+ readonly applies: number;
195
+ /** Launches that crashed on the release and recovered to the one before. */
197
196
  readonly failedLaunches: number;
198
197
  }
199
198
  interface InsightsGetReleaseActivityInput {
@@ -293,17 +292,6 @@ interface InsightsUpdateFailures {
293
292
  };
294
293
  /** Over a time range: failures by stage and reason, most first. */
295
294
  readonly breakdown?: readonly InsightsFailureBreakdown[];
296
- /**
297
- * Over a time range: failed launches, and the recoveries whose crashed
298
- * process exited for a reason Android 11+ reported, by reason, most first.
299
- */
300
- readonly recoveries?: {
301
- readonly failedLaunches: number;
302
- readonly byExitReason: readonly {
303
- readonly exitReason: string;
304
- readonly events: number;
305
- }[];
306
- };
307
295
  }
308
296
  //#endregion
309
297
  //#region ../api-keys/dist/server/model.d.mts
@@ -471,7 +459,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
471
459
  readonly bucket_start_ms: {
472
460
  readonly type: "integer";
473
461
  };
474
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
462
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks", {
475
463
  readonly window: {
476
464
  readonly eq: readonly ["identity"];
477
465
  readonly sort: readonly ["bucket_start_ms"];
@@ -499,7 +487,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
499
487
  readonly bucket_start_ms: {
500
488
  readonly type: "integer";
501
489
  };
502
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
490
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks", {
503
491
  readonly window: {
504
492
  readonly eq: readonly ["identity"];
505
493
  readonly sort: readonly ["bucket_start_ms"];
@@ -527,7 +515,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
527
515
  readonly bucket_start_ms: {
528
516
  readonly type: "integer";
529
517
  };
530
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
518
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks" | "applies" | "failed_updates", {
531
519
  readonly window: {
532
520
  readonly eq: readonly ["identity"];
533
521
  readonly sort: readonly ["bucket_start_ms"];
@@ -42,8 +42,6 @@ type BundleEventFailure = DatabaseJsonObject & {
42
42
  readonly origin_code?: string;
43
43
  readonly error_message?: string;
44
44
  readonly error_stack?: string;
45
- /** Android's `ApplicationExitInfo` reason for the process before this one. */
46
- readonly previous_process_exit?: string;
47
45
  };
48
46
  type DatabaseHttpResponse = DatabaseJsonObject & {
49
47
  readonly resource: "catalog" | "artifact";
@@ -66,8 +64,6 @@ type DatabaseBundleEventMetadata = DatabaseJsonObject & {
66
64
  readonly delivery?: "patch" | "manifest" | "archive" | "unknown";
67
65
  /** `UPDATE_DOWNLOADED`: a patch failed and the full files came instead. */
68
66
  readonly patch_fallback?: boolean;
69
- /** `RECOVERED`: Android's `ApplicationExitInfo` reason for the crashed process. */
70
- readonly previous_process_exit?: string;
71
67
  };
72
68
  type BundleEventRowBase = {
73
69
  readonly id: string;
@@ -192,8 +188,11 @@ type InsightsCoverage = {
192
188
  * which are kept.
193
189
  */
194
190
  interface ReleaseActivityMetrics {
191
+ /** Download reports of the release. */
195
192
  readonly downloads: number;
196
- readonly launches: number;
193
+ /** Apply reports of the release: installations that started running it. */
194
+ readonly applies: number;
195
+ /** Launches that crashed on the release and recovered to the one before. */
197
196
  readonly failedLaunches: number;
198
197
  }
199
198
  interface InsightsGetReleaseActivityInput {
@@ -293,17 +292,6 @@ interface InsightsUpdateFailures {
293
292
  };
294
293
  /** Over a time range: failures by stage and reason, most first. */
295
294
  readonly breakdown?: readonly InsightsFailureBreakdown[];
296
- /**
297
- * Over a time range: failed launches, and the recoveries whose crashed
298
- * process exited for a reason Android 11+ reported, by reason, most first.
299
- */
300
- readonly recoveries?: {
301
- readonly failedLaunches: number;
302
- readonly byExitReason: readonly {
303
- readonly exitReason: string;
304
- readonly events: number;
305
- }[];
306
- };
307
295
  }
308
296
  //#endregion
309
297
  //#region ../api-keys/dist/server/model.d.mts
@@ -471,7 +459,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
471
459
  readonly bucket_start_ms: {
472
460
  readonly type: "integer";
473
461
  };
474
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
462
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks", {
475
463
  readonly window: {
476
464
  readonly eq: readonly ["identity"];
477
465
  readonly sort: readonly ["bucket_start_ms"];
@@ -499,7 +487,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
499
487
  readonly bucket_start_ms: {
500
488
  readonly type: "integer";
501
489
  };
502
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
490
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks", {
503
491
  readonly window: {
504
492
  readonly eq: readonly ["identity"];
505
493
  readonly sort: readonly ["bucket_start_ms"];
@@ -527,7 +515,7 @@ declare const plugins: readonly [import("@hot-updater/plugin-core").HotUpdaterPl
527
515
  readonly bucket_start_ms: {
528
516
  readonly type: "integer";
529
517
  };
530
- }, "downloads" | "launches" | "failed_launches" | "failed_updates" | "patch_downloads" | "patch_fallbacks", {
518
+ }, "downloads" | "failed_launches" | "patch_downloads" | "patch_fallbacks" | "applies" | "failed_updates", {
531
519
  readonly window: {
532
520
  readonly eq: readonly ["identity"];
533
521
  readonly sort: readonly ["bucket_start_ms"];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@hot-updater/cloudflare",
3
3
  "type": "module",
4
- "version": "1.0.0-rc.32",
4
+ "version": "1.0.0-rc.34",
5
5
  "description": "React Native OTA solution for self-hosted",
6
6
  "main": "dist/index.cjs",
7
7
  "module": "dist/index.mjs",
@@ -56,10 +56,10 @@
56
56
  "cloudflare": "4.2.0",
57
57
  "hono": "4.12.34",
58
58
  "uuidv7": "^1.0.2",
59
- "@hot-updater/cli-tools": "1.0.0-rc.32",
60
- "@hot-updater/plugin-core": "1.0.0-rc.29",
61
- "@hot-updater/protocol": "1.0.0-rc.29",
62
- "@hot-updater/server": "1.0.0-rc.32"
59
+ "@hot-updater/cli-tools": "1.0.0-rc.34",
60
+ "@hot-updater/protocol": "1.0.0-rc.30",
61
+ "@hot-updater/plugin-core": "1.0.0-rc.30",
62
+ "@hot-updater/server": "1.0.0-rc.34"
63
63
  },
64
64
  "devDependencies": {
65
65
  "@cloudflare/vitest-pool-workers": "0.13.0",
@@ -75,7 +75,7 @@
75
75
  "vitest": "4.1.4",
76
76
  "wrangler": "^4.69.0",
77
77
  "xdg-app-paths": "^8.3.0",
78
- "@hot-updater/test-utils": "1.0.0-rc.30"
78
+ "@hot-updater/test-utils": "1.0.0-rc.32"
79
79
  },
80
80
  "scripts": {
81
81
  "build": "tsdown && pnpm build:worker",
package/sql/bundles.sql CHANGED
@@ -50,7 +50,7 @@ CREATE INDEX IF NOT EXISTS "bundle_event_heads_byUser" ON "bundle_event_heads" (
50
50
 
51
51
  CREATE INDEX IF NOT EXISTS "bundle_event_heads__retention" ON "bundle_event_heads" ("received_at_ms", "install_id");
52
52
 
53
- CREATE TABLE IF NOT EXISTS "insights_overview" ("identity" TEXT NOT NULL, "bucket_start_ms" INTEGER NOT NULL, "_shard" INTEGER NOT NULL, "downloads" INTEGER NOT NULL, "launches" INTEGER NOT NULL, "failed_launches" INTEGER NOT NULL, "failed_updates" INTEGER NOT NULL, "patch_downloads" INTEGER NOT NULL, "patch_fallbacks" INTEGER NOT NULL, "_v" INTEGER NOT NULL DEFAULT 0, PRIMARY KEY ("identity", "bucket_start_ms", "_shard"));
53
+ CREATE TABLE IF NOT EXISTS "insights_overview" ("identity" TEXT NOT NULL, "bucket_start_ms" INTEGER NOT NULL, "_shard" INTEGER NOT NULL, "downloads" INTEGER NOT NULL, "failed_launches" INTEGER NOT NULL, "patch_downloads" INTEGER NOT NULL, "patch_fallbacks" INTEGER NOT NULL, "_v" INTEGER NOT NULL DEFAULT 0, PRIMARY KEY ("identity", "bucket_start_ms", "_shard"));
54
54
 
55
55
  CREATE INDEX IF NOT EXISTS "insights_overview__retention" ON "insights_overview" ("bucket_start_ms", "identity", "_shard");
56
56
 
@@ -58,7 +58,7 @@ CREATE TABLE IF NOT EXISTS "insights_sketches" ("identity" TEXT NOT NULL, "bucke
58
58
 
59
59
  CREATE INDEX IF NOT EXISTS "insights_sketches__retention" ON "insights_sketches" ("bucket_start_ms", "identity", "_shard");
60
60
 
61
- CREATE TABLE IF NOT EXISTS "insights_overview_daily" ("identity" TEXT NOT NULL, "bucket_start_ms" INTEGER NOT NULL, "_shard" INTEGER NOT NULL, "downloads" INTEGER NOT NULL, "launches" INTEGER NOT NULL, "failed_launches" INTEGER NOT NULL, "failed_updates" INTEGER NOT NULL, "patch_downloads" INTEGER NOT NULL, "patch_fallbacks" INTEGER NOT NULL, "_v" INTEGER NOT NULL DEFAULT 0, PRIMARY KEY ("identity", "bucket_start_ms", "_shard"));
61
+ CREATE TABLE IF NOT EXISTS "insights_overview_daily" ("identity" TEXT NOT NULL, "bucket_start_ms" INTEGER NOT NULL, "_shard" INTEGER NOT NULL, "downloads" INTEGER NOT NULL, "failed_launches" INTEGER NOT NULL, "patch_downloads" INTEGER NOT NULL, "patch_fallbacks" INTEGER NOT NULL, "_v" INTEGER NOT NULL DEFAULT 0, PRIMARY KEY ("identity", "bucket_start_ms", "_shard"));
62
62
 
63
63
  CREATE INDEX IF NOT EXISTS "insights_overview_daily__retention" ON "insights_overview_daily" ("bucket_start_ms", "identity", "_shard");
64
64
 
@@ -66,7 +66,7 @@ CREATE TABLE IF NOT EXISTS "insights_sketches_daily" ("identity" TEXT NOT NULL,
66
66
 
67
67
  CREATE INDEX IF NOT EXISTS "insights_sketches_daily__retention" ON "insights_sketches_daily" ("bucket_start_ms", "identity", "_shard");
68
68
 
69
- CREATE TABLE IF NOT EXISTS "insights_overview_lifetime" ("identity" TEXT NOT NULL, "bucket_start_ms" INTEGER NOT NULL, "_shard" INTEGER NOT NULL, "downloads" INTEGER NOT NULL, "launches" INTEGER NOT NULL, "failed_launches" INTEGER NOT NULL, "failed_updates" INTEGER NOT NULL, "patch_downloads" INTEGER NOT NULL, "patch_fallbacks" INTEGER NOT NULL, "_v" INTEGER NOT NULL DEFAULT 0, PRIMARY KEY ("identity", "bucket_start_ms", "_shard"));
69
+ CREATE TABLE IF NOT EXISTS "insights_overview_lifetime" ("identity" TEXT NOT NULL, "bucket_start_ms" INTEGER NOT NULL, "_shard" INTEGER NOT NULL, "downloads" INTEGER NOT NULL, "failed_launches" INTEGER NOT NULL, "patch_downloads" INTEGER NOT NULL, "patch_fallbacks" INTEGER NOT NULL, "applies" INTEGER NOT NULL, "failed_updates" INTEGER NOT NULL, "_v" INTEGER NOT NULL DEFAULT 0, PRIMARY KEY ("identity", "bucket_start_ms", "_shard"));
70
70
 
71
71
  CREATE TABLE IF NOT EXISTS "insights_sketches_lifetime" ("identity" TEXT NOT NULL, "bucket_start_ms" INTEGER NOT NULL, "_shard" INTEGER NOT NULL, "failed_users" TEXT, "_v" INTEGER NOT NULL DEFAULT 0, PRIMARY KEY ("identity", "bucket_start_ms", "_shard"));
72
72
 
@@ -102,6 +102,6 @@ INSERT INTO "private_hot_updater_settings" ("key", "value", "_v") VALUES ('schem
102
102
 
103
103
  INSERT INTO "private_hot_updater_settings" ("key", "value", "_v") VALUES ('schema.core', '1.0.0', 0) ON CONFLICT ("key") DO UPDATE SET "value" = excluded."value";
104
104
 
105
- INSERT INTO "private_hot_updater_settings" ("key", "value", "_v") VALUES ('schema.insights', '1.2.0', 0) ON CONFLICT ("key") DO UPDATE SET "value" = excluded."value";
105
+ INSERT INTO "private_hot_updater_settings" ("key", "value", "_v") VALUES ('schema.insights', '1.0.0', 0) ON CONFLICT ("key") DO UPDATE SET "value" = excluded."value";
106
106
 
107
107
  INSERT INTO "private_hot_updater_settings" ("key", "value", "_v") VALUES ('schema.apiKeys', '1.0.0', 0) ON CONFLICT ("key") DO UPDATE SET "value" = excluded."value";
@@ -1 +1 @@
1
- This folder contains the built output assets for the worker "hot-updater" generated at 2026-10-05T13:29:29.173Z.
1
+ This folder contains the built output assets for the worker "hot-updater" generated at 2026-10-06T05:52:53.630Z.