@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 +7 -19
- package/dist/index.d.mts +7 -19
- package/dist/worker/index.d.cts +7 -19
- package/dist/worker/index.d.mts +7 -19
- package/package.json +6 -6
- package/sql/bundles.sql +4 -4
- package/worker/dist/README.md +1 -1
- package/worker/dist/index.js +73 -120
- package/worker/dist/index.js.map +2 -2
- package/worker/migrations/0001_hot-updater_1.0.0.sql +4 -4
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
|
-
|
|
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" | "
|
|
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" | "
|
|
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" | "
|
|
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
|
-
|
|
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" | "
|
|
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" | "
|
|
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" | "
|
|
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/worker/index.d.cts
CHANGED
|
@@ -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
|
-
|
|
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" | "
|
|
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" | "
|
|
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" | "
|
|
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/dist/worker/index.d.mts
CHANGED
|
@@ -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
|
-
|
|
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" | "
|
|
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" | "
|
|
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" | "
|
|
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.
|
|
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.
|
|
60
|
-
"@hot-updater/
|
|
61
|
-
"@hot-updater/
|
|
62
|
-
"@hot-updater/server": "1.0.0-rc.
|
|
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.
|
|
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, "
|
|
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, "
|
|
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, "
|
|
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.
|
|
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";
|
package/worker/dist/README.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
This folder contains the built output assets for the worker "hot-updater" generated at 2026-10-
|
|
1
|
+
This folder contains the built output assets for the worker "hot-updater" generated at 2026-10-06T05:52:53.630Z.
|