@iann29/rastro 0.1.0-alpha.10 → 0.1.0-alpha.12

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 (89) hide show
  1. package/README.md +215 -46
  2. package/agent/integration.md +186 -46
  3. package/agent/manifest.json +28 -10
  4. package/agent/manifest.schema.json +41 -8
  5. package/dist/client/federation.d.ts +156 -11
  6. package/dist/client/federation.d.ts.map +1 -1
  7. package/dist/client/federation.js +82 -4
  8. package/dist/client/federation.js.map +1 -1
  9. package/dist/client/index.d.ts +306 -97
  10. package/dist/client/index.d.ts.map +1 -1
  11. package/dist/client/index.js +116 -13
  12. package/dist/client/index.js.map +1 -1
  13. package/dist/component/_generated/api.d.ts +6 -0
  14. package/dist/component/_generated/api.d.ts.map +1 -1
  15. package/dist/component/_generated/api.js.map +1 -1
  16. package/dist/component/_generated/component.d.ts +26 -13
  17. package/dist/component/_generated/component.d.ts.map +1 -1
  18. package/dist/component/constants.d.ts +3 -0
  19. package/dist/component/constants.d.ts.map +1 -1
  20. package/dist/component/constants.js +6 -0
  21. package/dist/component/constants.js.map +1 -1
  22. package/dist/component/coverage.d.ts +8 -0
  23. package/dist/component/coverage.d.ts.map +1 -1
  24. package/dist/component/coverage.js +32 -6
  25. package/dist/component/coverage.js.map +1 -1
  26. package/dist/component/geo.d.ts +2 -0
  27. package/dist/component/geo.d.ts.map +1 -1
  28. package/dist/component/geo.js +56 -19
  29. package/dist/component/geo.js.map +1 -1
  30. package/dist/component/http.d.ts.map +1 -1
  31. package/dist/component/http.js +47 -27
  32. package/dist/component/http.js.map +1 -1
  33. package/dist/component/ingest.d.ts.map +1 -1
  34. package/dist/component/ingest.js +149 -295
  35. package/dist/component/ingest.js.map +1 -1
  36. package/dist/component/localTime.d.ts +25 -0
  37. package/dist/component/localTime.d.ts.map +1 -0
  38. package/dist/component/localTime.js +126 -0
  39. package/dist/component/localTime.js.map +1 -0
  40. package/dist/component/reports.d.ts +20 -13
  41. package/dist/component/reports.d.ts.map +1 -1
  42. package/dist/component/reports.js +158 -38
  43. package/dist/component/reports.js.map +1 -1
  44. package/dist/component/retention.js +26 -8
  45. package/dist/component/retention.js.map +1 -1
  46. package/dist/component/rollupStore.d.ts +320 -0
  47. package/dist/component/rollupStore.d.ts.map +1 -0
  48. package/dist/component/rollupStore.js +596 -0
  49. package/dist/component/rollupStore.js.map +1 -0
  50. package/dist/component/rollups.d.ts +20 -0
  51. package/dist/component/rollups.d.ts.map +1 -0
  52. package/dist/component/rollups.js +73 -0
  53. package/dist/component/rollups.js.map +1 -0
  54. package/dist/component/schema.d.ts +311 -5
  55. package/dist/component/schema.js +9 -0
  56. package/dist/component/schema.js.map +1 -1
  57. package/dist/component/sites.d.ts +12 -0
  58. package/dist/component/sites.d.ts.map +1 -1
  59. package/dist/component/sites.js +30 -0
  60. package/dist/component/sites.js.map +1 -1
  61. package/dist/component/validators.d.ts +24 -5
  62. package/dist/component/validators.d.ts.map +1 -1
  63. package/dist/component/validators.js +16 -1
  64. package/dist/component/validators.js.map +1 -1
  65. package/dist/tracker/generated.d.ts +3 -0
  66. package/dist/tracker/generated.d.ts.map +1 -1
  67. package/dist/tracker/generated.js +3 -0
  68. package/dist/tracker/generated.js.map +1 -1
  69. package/docs/federation-setup.md +93 -26
  70. package/docs/federation.md +120 -30
  71. package/docs/upgrading.md +103 -17
  72. package/llms.txt +6 -5
  73. package/package.json +2 -1
  74. package/src/component/_generated/api.ts +6 -0
  75. package/src/component/_generated/component.ts +27 -12
  76. package/src/component/constants.ts +6 -0
  77. package/src/component/coverage.ts +41 -6
  78. package/src/component/geo.ts +82 -28
  79. package/src/component/http.ts +60 -26
  80. package/src/component/ingest.ts +226 -425
  81. package/src/component/localTime.ts +167 -0
  82. package/src/component/reports.ts +222 -39
  83. package/src/component/retention.ts +25 -7
  84. package/src/component/rollupStore.ts +799 -0
  85. package/src/component/rollups.ts +82 -0
  86. package/src/component/schema.ts +17 -0
  87. package/src/component/sites.ts +32 -0
  88. package/src/component/validators.ts +20 -1
  89. package/src/tracker/generated.ts +12 -0
@@ -215,7 +215,7 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
215
215
  range: {
216
216
  boundary: "inclusive";
217
217
  from: number;
218
- timezone: "UTC";
218
+ timezone: string;
219
219
  to: number;
220
220
  };
221
221
  uniqueVisitors: {
@@ -238,7 +238,7 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
238
238
  retainedBefore: number | null;
239
239
  state: "complete" | "partial" | "retained" | "unavailable";
240
240
  };
241
- dataset: "overviewHour" | "overviewDay" | "events" | "sessions" | "conversions" | "goals" | "funnels" | "affiliates" | "vitals" | "siteMap";
241
+ dataset: "overviewHour" | "overviewDay" | "overviewLocalDay" | "events" | "sessions" | "conversions" | "goals" | "funnels" | "affiliates" | "vitals" | "siteMap";
242
242
  }>;
243
243
  from: number;
244
244
  siteId: string;
@@ -267,7 +267,7 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
267
267
  range: {
268
268
  boundary: "inclusive";
269
269
  from: number;
270
- timezone: "UTC";
270
+ timezone: string;
271
271
  to: number;
272
272
  };
273
273
  };
@@ -318,7 +318,7 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
318
318
  range: {
319
319
  boundary: "inclusive";
320
320
  from: number;
321
- timezone: "UTC";
321
+ timezone: string;
322
322
  to: number;
323
323
  };
324
324
  };
@@ -451,14 +451,14 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
451
451
  interval: "hour" | "day";
452
452
  metadata: {
453
453
  breakdowns: {
454
- topBrowsers: "eventVolume";
455
- topCampaigns: "eventVolume";
456
- topCountries: "eventVolume";
457
- topDevices: "eventVolume";
454
+ topBrowsers: "pageviews" | "sessions" | "eventVolume";
455
+ topCampaigns: "pageviews" | "sessions" | "eventVolume";
456
+ topCountries: "pageviews" | "sessions" | "eventVolume";
457
+ topDevices: "pageviews" | "sessions" | "eventVolume";
458
458
  topEvents: "eventVolume";
459
459
  topGoals: "goalCompletionVolume";
460
- topPages: "eventVolume";
461
- topSources: "eventVolume";
460
+ topPages: "pageviews" | "sessions" | "eventVolume";
461
+ topSources: "pageviews" | "sessions" | "eventVolume";
462
462
  };
463
463
  coverage: {
464
464
  availableFrom: number | null;
@@ -467,6 +467,7 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
467
467
  retainedBefore: number | null;
468
468
  state: "complete" | "partial" | "retained" | "unavailable";
469
469
  };
470
+ engagement: "counted" | "unavailable";
470
471
  features: {
471
472
  botDetection: "userAgent";
472
473
  errorInsights: "unsupported";
@@ -476,7 +477,7 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
476
477
  range: {
477
478
  boundary: "inclusive";
478
479
  from: number;
479
- timezone: "UTC";
480
+ timezone: string;
480
481
  to: number;
481
482
  };
482
483
  visitors: {
@@ -489,9 +490,12 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
489
490
  };
490
491
  timeSeries: Array<{
491
492
  clicks: number;
493
+ continuedSessions: number;
492
494
  conversions: number;
493
495
  customEvents: number;
496
+ durationMs: number;
494
497
  events: number;
498
+ newVisitors: number;
495
499
  outboundClicks: number;
496
500
  pageviews: number;
497
501
  revenueCents: number;
@@ -542,9 +546,12 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
542
546
  }>;
543
547
  totals: {
544
548
  clicks: number;
549
+ continuedSessions: number;
545
550
  conversions: number;
546
551
  customEvents: number;
552
+ durationMs: number;
547
553
  events: number;
554
+ newVisitors: number;
548
555
  outboundClicks: number;
549
556
  pageviews: number;
550
557
  revenueCents: number;
@@ -621,7 +628,7 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
621
628
  range: {
622
629
  boundary: "inclusive";
623
630
  from: number;
624
- timezone: "UTC";
631
+ timezone: string;
625
632
  to: number;
626
633
  };
627
634
  visitors: {
@@ -710,7 +717,7 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
710
717
  range: {
711
718
  boundary: "inclusive";
712
719
  from: number;
713
- timezone: "UTC";
720
+ timezone: string;
714
721
  to: number;
715
722
  };
716
723
  };
@@ -843,6 +850,12 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
843
850
  timezone?: string;
844
851
  updatedAt: number;
845
852
  }>, Name>;
853
+ localDays: FunctionReference<"query", "internal", {
854
+ siteId: string;
855
+ }, {
856
+ since: number;
857
+ timezone: string;
858
+ } | null, Name>;
846
859
  update: FunctionReference<"mutation", "internal", {
847
860
  cookieless?: boolean;
848
861
  currency?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/component/_generated/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/component/_generated/component.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,9 @@ export declare const FEATURE_REPORT_DOCUMENT_RESERVE = 500;
38
38
  export declare const REPORT_ROLLUP_SHARDS = 2;
39
39
  export declare const ROLLUP_SAFETY_DELAY_MS: number;
40
40
  export declare const RETENTION_LEASE_MS = 60000;
41
+ export declare const ROLLUP_FOLD_BATCH_DOCS = 200;
42
+ export declare const ROLLUP_FOLD_MAX_ROWS = 1500;
43
+ export declare const ROLLUP_FOLD_LEASE_MS = 60000;
41
44
  export declare const VITAL_HISTOGRAM_EDGES: number[];
42
45
  export declare const MAX_VITAL_VALUE = 600000;
43
46
  export declare const VITAL_PAGE_SLOTS = 48;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/component/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,eAAe,QAAY,CAAC;AACzC,eAAO,MAAM,6BAA6B,MAAM,CAAC;AACjD,eAAO,MAAM,oBAAoB,QAAS,CAAC;AAC3C,eAAO,MAAM,4BAA4B,QAAa,CAAC;AACvD,eAAO,MAAM,kBAAkB,OAAQ,CAAC;AACxC,eAAO,MAAM,gCAAgC,MAAM,CAAC;AACpD,eAAO,MAAM,+BAA+B,QAAa,CAAC;AAC1D,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAC1C,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAC1C,eAAO,MAAM,sBAAsB,OAAQ,CAAC;AAC5C,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAC9C,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,cAAc,KAAK,CAAC;AACjC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,yBAAyB,QAAkB,CAAC;AACzD,eAAO,MAAM,6BAA6B,OAAQ,CAAC;AACnD,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAClD,eAAO,MAAM,kBAAkB,OAAQ,CAAC;AACxC,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,uBAAuB,OAAQ,CAAC;AAC7C,eAAO,MAAM,2BAA2B,QAAkB,CAAC;AAC3D,eAAO,MAAM,+BAA+B,MAAM,CAAC;AACnD,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,sBAAsB,QAAa,CAAC;AACjD,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAIzC,eAAO,MAAM,qBAAqB,UAGjC,CAAC;AACF,eAAO,MAAM,eAAe,SAAU,CAAC;AACvC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,sBAAsB,OAAQ,CAAC;AAC5C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,eAAO,MAAM,MAAM,WAAa,CAAC;AACjC,eAAO,MAAM,OAAO,UAAY,CAAC;AACjC,eAAO,MAAM,SAAS,QAAS,CAAC;AAChC,eAAO,MAAM,4BAA4B,WAAS,CAAC;AACnD,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAQtC,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAC/C,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,iBAAiB,OAAQ,CAAC;AACvC,eAAO,MAAM,oBAAoB,YAAY,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/component/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,eAAe,QAAY,CAAC;AACzC,eAAO,MAAM,6BAA6B,MAAM,CAAC;AACjD,eAAO,MAAM,oBAAoB,QAAS,CAAC;AAC3C,eAAO,MAAM,4BAA4B,QAAa,CAAC;AACvD,eAAO,MAAM,kBAAkB,OAAQ,CAAC;AACxC,eAAO,MAAM,gCAAgC,MAAM,CAAC;AACpD,eAAO,MAAM,+BAA+B,QAAa,CAAC;AAC1D,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAC1C,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAC1C,eAAO,MAAM,sBAAsB,OAAQ,CAAC;AAC5C,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAC9C,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,cAAc,KAAK,CAAC;AACjC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,yBAAyB,QAAkB,CAAC;AACzD,eAAO,MAAM,6BAA6B,OAAQ,CAAC;AACnD,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAClD,eAAO,MAAM,kBAAkB,OAAQ,CAAC;AACxC,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,uBAAuB,OAAQ,CAAC;AAC7C,eAAO,MAAM,2BAA2B,QAAkB,CAAC;AAC3D,eAAO,MAAM,+BAA+B,MAAM,CAAC;AACnD,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,sBAAsB,QAAa,CAAC;AACjD,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAIzC,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,oBAAoB,OAAQ,CAAC;AAC1C,eAAO,MAAM,oBAAoB,QAAS,CAAC;AAI3C,eAAO,MAAM,qBAAqB,UAGjC,CAAC;AACF,eAAO,MAAM,eAAe,SAAU,CAAC;AACvC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,sBAAsB,OAAQ,CAAC;AAC5C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,eAAO,MAAM,MAAM,WAAa,CAAC;AACjC,eAAO,MAAM,OAAO,UAAY,CAAC;AACjC,eAAO,MAAM,SAAS,QAAS,CAAC;AAChC,eAAO,MAAM,4BAA4B,WAAS,CAAC;AACnD,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAQtC,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAC/C,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,iBAAiB,OAAQ,CAAC;AACvC,eAAO,MAAM,oBAAoB,YAAY,CAAC"}
@@ -38,6 +38,12 @@ export const FEATURE_REPORT_DOCUMENT_RESERVE = 500;
38
38
  export const REPORT_ROLLUP_SHARDS = 2;
39
39
  export const ROLLUP_SAFETY_DELAY_MS = 5 * 60_000;
40
40
  export const RETENTION_LEASE_MS = 60_000;
41
+ // Report rollups are folded by one leased job per site (see rollupStore.ts).
42
+ // A run takes at most this many queued batches, stops early once the merged
43
+ // deltas would touch this many rows, and holds its lease for this long.
44
+ export const ROLLUP_FOLD_BATCH_DOCS = 200;
45
+ export const ROLLUP_FOLD_MAX_ROWS = 1_500;
46
+ export const ROLLUP_FOLD_LEASE_MS = 60_000;
41
47
  // Shared Web Vitals histogram edges. Every Google rating threshold (LCP
42
48
  // 2500/4000, CLS×1000 100/250, INP 200/500, FCP 1800/3000, TTFB 800/1800) is
43
49
  // an edge, so rating counts stay exact while one layout serves all metrics.
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/component/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/component/constants.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,9 @@ export declare function ensureAnalyticsControl(ctx: MutationCtx, siteId: Id<"sit
6
6
  }>): Promise<{
7
7
  _creationTime: number;
8
8
  _id: import("convex/values").GenericId<"analyticsCoverage">;
9
+ countersSince?: number | undefined;
9
10
  generation: 1;
11
+ localDaySince?: number | undefined;
10
12
  retained: {
11
13
  before: number;
12
14
  dataset: string;
@@ -16,4 +18,10 @@ export declare function ensureAnalyticsControl(ctx: MutationCtx, siteId: Id<"sit
16
18
  siteMapSince?: number | undefined;
17
19
  updatedAt: number;
18
20
  }>;
21
+ /**
22
+ * A site's local-day buckets are computed in its timezone at ingest, so a
23
+ * changed timezone restarts their coverage: rows before the change belong to
24
+ * the old zone's days and must not answer for the new one.
25
+ */
26
+ export declare function resetLocalDayCoverage(ctx: MutationCtx, siteId: Id<"sites">, now: number): Promise<void>;
19
27
  //# sourceMappingURL=coverage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"coverage.d.ts","sourceRoot":"","sources":["../../src/component/coverage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAG1D,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EACnB,GAAG,EAAE,MAAM,EACX,QAAQ,GAAE,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAM;;;;;;;;;;;;GA2B1D"}
1
+ {"version":3,"file":"coverage.d.ts","sourceRoot":"","sources":["../../src/component/coverage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAG1D,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EACnB,GAAG,EAAE,MAAM,EACX,QAAQ,GAAE,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAM;;;;;;;;;;;;;;GA6C1D;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,EACnB,GAAG,EAAE,MAAM,iBAOZ"}
@@ -5,26 +5,52 @@ export async function ensureAnalyticsControl(ctx, siteId, now, retained = []) {
5
5
  .withIndex("by_siteId", (range) => range.eq("siteId", siteId))
6
6
  .unique();
7
7
  if (existing) {
8
- if (existing.siteMapSince !== undefined)
8
+ // A site that predates a feature starts that feature's coverage at the
9
+ // first ingest after the upgrade, with the same safety delay as rollups:
10
+ // the site map rows, and the alpha.11 counters (pageviews and sessions
11
+ // per dimension slot; duration, continued sessions and new visitors per
12
+ // bucket).
13
+ const stamps = {};
14
+ if (existing.siteMapSince === undefined) {
15
+ stamps.siteMapSince = now + ROLLUP_SAFETY_DELAY_MS;
16
+ }
17
+ if (existing.countersSince === undefined) {
18
+ stamps.countersSince = now + ROLLUP_SAFETY_DELAY_MS;
19
+ }
20
+ if (existing.localDaySince === undefined) {
21
+ stamps.localDaySince = now + ROLLUP_SAFETY_DELAY_MS;
22
+ }
23
+ if (Object.keys(stamps).length === 0)
9
24
  return existing;
10
- // A site that predates the site map starts its map coverage at the first
11
- // ingest after the upgrade; the same safety delay applies as for rollups.
12
- const siteMapSince = now + ROLLUP_SAFETY_DELAY_MS;
13
25
  await ctx.db.patch("analyticsCoverage", existing._id, {
14
- siteMapSince,
26
+ ...stamps,
15
27
  updatedAt: now,
16
28
  });
17
- return { ...existing, siteMapSince, updatedAt: now };
29
+ return { ...existing, ...stamps, updatedAt: now };
18
30
  }
19
31
  const fields = {
20
32
  siteId,
21
33
  generation: 1,
22
34
  rollupCompleteFrom: now + ROLLUP_SAFETY_DELAY_MS,
23
35
  siteMapSince: now + ROLLUP_SAFETY_DELAY_MS,
36
+ countersSince: now + ROLLUP_SAFETY_DELAY_MS,
37
+ localDaySince: now + ROLLUP_SAFETY_DELAY_MS,
24
38
  retained,
25
39
  updatedAt: now,
26
40
  };
27
41
  const _id = await ctx.db.insert("analyticsCoverage", fields);
28
42
  return { ...fields, _id, _creationTime: now };
29
43
  }
44
+ /**
45
+ * A site's local-day buckets are computed in its timezone at ingest, so a
46
+ * changed timezone restarts their coverage: rows before the change belong to
47
+ * the old zone's days and must not answer for the new one.
48
+ */
49
+ export async function resetLocalDayCoverage(ctx, siteId, now) {
50
+ const control = await ensureAnalyticsControl(ctx, siteId, now);
51
+ await ctx.db.patch("analyticsCoverage", control._id, {
52
+ localDaySince: now + ROLLUP_SAFETY_DELAY_MS,
53
+ updatedAt: now,
54
+ });
55
+ }
30
56
  //# sourceMappingURL=coverage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"coverage.js","sourceRoot":"","sources":["../../src/component/coverage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,GAAgB,EAChB,MAAmB,EACnB,GAAW,EACX,QAAQ,GAA+C,EAAE;IAEzD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,EAAE;SAC1B,KAAK,CAAC,mBAAmB,CAAC;SAC1B,SAAS,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;SAC7D,MAAM,EAAE,CAAC;IACZ,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,QAAQ,CAAC,YAAY,KAAK,SAAS;YAAE,OAAO,QAAQ,CAAC;QACzD,yEAAyE;QACzE,0EAA0E;QAC1E,MAAM,YAAY,GAAG,GAAG,GAAG,sBAAsB,CAAC;QAClD,MAAM,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,EAAE,QAAQ,CAAC,GAAG,EAAE;YACpD,YAAY;YACZ,SAAS,EAAE,GAAG;SACf,CAAC,CAAC;QACH,OAAO,EAAE,GAAG,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;IACvD,CAAC;IACD,MAAM,MAAM,GAAG;QACb,MAAM;QACN,UAAU,EAAE,CAAU;QACtB,kBAAkB,EAAE,GAAG,GAAG,sBAAsB;QAChD,YAAY,EAAE,GAAG,GAAG,sBAAsB;QAC1C,QAAQ;QACR,SAAS,EAAE,GAAG;KACf,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAC7D,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"coverage.js","sourceRoot":"","sources":["../../src/component/coverage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,GAAgB,EAChB,MAAmB,EACnB,GAAW,EACX,QAAQ,GAA+C,EAAE;IAEzD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,EAAE;SAC1B,KAAK,CAAC,mBAAmB,CAAC;SAC1B,SAAS,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;SAC7D,MAAM,EAAE,CAAC;IACZ,IAAI,QAAQ,EAAE,CAAC;QACb,uEAAuE;QACvE,yEAAyE;QACzE,uEAAuE;QACvE,wEAAwE;QACxE,WAAW;QACX,MAAM,MAAM,GAIR,EAAE,CAAC;QACP,IAAI,QAAQ,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,CAAC,YAAY,GAAG,GAAG,GAAG,sBAAsB,CAAC;QACrD,CAAC;QACD,IAAI,QAAQ,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,CAAC,aAAa,GAAG,GAAG,GAAG,sBAAsB,CAAC;QACtD,CAAC;QACD,IAAI,QAAQ,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,CAAC,aAAa,GAAG,GAAG,GAAG,sBAAsB,CAAC;QACtD,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,QAAQ,CAAC;QACtD,MAAM,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,EAAE,QAAQ,CAAC,GAAG,EAAE;YACpD,GAAG,MAAM;YACT,SAAS,EAAE,GAAG;SACf,CAAC,CAAC;QACH,OAAO,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;IACpD,CAAC;IACD,MAAM,MAAM,GAAG;QACb,MAAM;QACN,UAAU,EAAE,CAAU;QACtB,kBAAkB,EAAE,GAAG,GAAG,sBAAsB;QAChD,YAAY,EAAE,GAAG,GAAG,sBAAsB;QAC1C,aAAa,EAAE,GAAG,GAAG,sBAAsB;QAC3C,aAAa,EAAE,GAAG,GAAG,sBAAsB;QAC3C,QAAQ;QACR,SAAS,EAAE,GAAG;KACf,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAC7D,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;AAChD,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,GAAgB,EAChB,MAAmB,EACnB,GAAW;IAEX,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/D,MAAM,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAG,EAAE;QACnD,aAAa,EAAE,GAAG,GAAG,sBAAsB;QAC3C,SAAS,EAAE,GAAG;KACf,CAAC,CAAC;AACL,CAAC"}
@@ -30,6 +30,7 @@ export declare const claimEnrichment: import("convex/server").RegisteredMutation
30
30
  sessionId: string;
31
31
  timestamp: number;
32
32
  priorCountry: string;
33
+ pageview: boolean;
33
34
  }[];
34
35
  }>>;
35
36
  export declare const applyEnrichment: import("convex/server").RegisteredMutation<"internal", {
@@ -40,6 +41,7 @@ export declare const applyEnrichment: import("convex/server").RegisteredMutation
40
41
  longitude?: number | undefined;
41
42
  };
42
43
  events: {
44
+ pageview?: boolean | undefined;
43
45
  priorCountry: string;
44
46
  sessionId: string;
45
47
  timestamp: number;
@@ -1 +1 @@
1
- {"version":3,"file":"geo.d.ts","sourceRoot":"","sources":["../../src/component/geo.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAE5E,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,CAAC;AACjD,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,OAAO,GAAG,cAAc,CAAC;AAChE,MAAM,MAAM,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAC;AACtE,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,WAAW,GAAG,aAAa,CAAC;AAEpE,KAAK,UAAU,GAAG,IAAI,CACpB,aAAa,EACb,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,CAC9C,CAAC;AAEF,KAAK,OAAO,GAAG,CACb,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAC7B,IAAI,CAAC,EAAE,WAAW,KACf,OAAO,CAAC,QAAQ,CAAC,CAAC;AA2BvB,eAAO,MAAM,KAAK;;;;;;;;GAmChB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;mBAqIX,MAAM;mBACN,MAAM;sBACH,MAAM;;GA4BxB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;mBAyD1B,CAAC;AAEH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAQjE;AAED,wBAAgB,WAAW,CACzB,QAAQ,EAAE,aAAa,GAAG,SAAS,EACnC,KAAK,EAAE,MAAM,GAAG,SAAS,GACxB,WAAW,CAIb;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE;IAC7C,IAAI,EAAE;QACJ,kBAAkB,IAAI,OAAO,CAAC;YAC5B,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;YAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;SAC1B,CAAC,CAAC;KACJ,CAAC;CACH,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAQ3D;AAED,wBAAsB,YAAY,CAChC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CA0BjC;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAOpD;AAED,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,OAAO,EAAE,OAAO,EAChB,UAAU,UAAQ,GACjB;IAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAqB/C;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,UAAU,EAAE,OAAO,GAClB,OAAO,CAET"}
1
+ {"version":3,"file":"geo.d.ts","sourceRoot":"","sources":["../../src/component/geo.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAE5E,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,CAAC;AACjD,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,OAAO,GAAG,cAAc,CAAC;AAChE,MAAM,MAAM,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAC;AACtE,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,WAAW,GAAG,aAAa,CAAC;AAEpE,KAAK,UAAU,GAAG,IAAI,CACpB,aAAa,EACb,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,CAC9C,CAAC;AAEF,KAAK,OAAO,GAAG,CACb,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAC7B,IAAI,CAAC,EAAE,WAAW,KACf,OAAO,CAAC,QAAQ,CAAC,CAAC;AA4BvB,eAAO,MAAM,KAAK;;;;;;;;GAmChB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;mBA2IX,MAAM;mBACN,MAAM;sBACH,MAAM;kBACV,OAAO;;GA6BrB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;mBA+D1B,CAAC;AAEH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAQjE;AAED,wBAAgB,WAAW,CACzB,QAAQ,EAAE,aAAa,GAAG,SAAS,EACnC,KAAK,EAAE,MAAM,GAAG,SAAS,GACxB,WAAW,CAIb;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE;IAC7C,IAAI,EAAE;QACJ,kBAAkB,IAAI,OAAO,CAAC;YAC5B,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;YAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;SAC1B,CAAC,CAAC;KACJ,CAAC;CACH,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAQ3D;AAED,wBAAsB,YAAY,CAChC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CA0BjC;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAOpD;AAED,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,OAAO,EAAE,OAAO,EAChB,UAAU,UAAQ,GACjB;IAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAqB/C;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,UAAU,EAAE,OAAO,GAClB,OAAO,CAET"}
@@ -4,6 +4,7 @@ import { AGGREGATE_SHARDS, DAY_MS, DIMENSION_SLOTS, HOURLY_AGGREGATE_SHARDS, HOU
4
4
  import { eventBatchKey, eventBucketStart } from "./eventStore.js";
5
5
  import { isPlainRecord } from "./guards.js";
6
6
  import { sanitizeContext, stableHash } from "./sanitize.js";
7
+ import { localDayStart, localDayTimezone } from "./localTime.js";
7
8
  import { trackerEventValidator } from "./validators.js";
8
9
  const GEOIP_TIMEOUT_MS = 1_500;
9
10
  const MAX_ENRICHMENT_SESSIONS = 4;
@@ -20,6 +21,7 @@ const geoAggregateEventValidator = v.object({
20
21
  sessionId: v.string(),
21
22
  timestamp: v.number(),
22
23
  priorCountry: v.string(),
24
+ pageview: v.optional(v.boolean()),
23
25
  });
24
26
  export const probe = internalAction({
25
27
  args: { ip: v.optional(v.string()) },
@@ -93,7 +95,10 @@ export const claimEnrichment = internalMutation({
93
95
  .filter((event) => group.eventIds.has(event.eventId))
94
96
  .map((event) => [
95
97
  event.eventId,
96
- event.aggregateCountry ?? event.country,
98
+ {
99
+ country: event.aggregateCountry ?? event.country,
100
+ pageview: event.type === "pageview",
101
+ },
97
102
  ]))));
98
103
  }));
99
104
  const eligible = [];
@@ -164,15 +169,16 @@ export const claimEnrichment = internalMutation({
164
169
  continue;
165
170
  }
166
171
  seenEvents.add(key);
167
- const priorCountry = persistedEvents
172
+ const persisted = persistedEvents
168
173
  .get(eventBatchKey(event.sessionId, eventBucketStart(event.timestamp)))
169
174
  ?.get(event.eventId);
170
- if (priorCountry === undefined)
175
+ if (persisted?.country === undefined)
171
176
  continue;
172
177
  correctionEvents.push({
173
178
  sessionId: event.sessionId,
174
179
  timestamp: event.timestamp,
175
- priorCountry,
180
+ priorCountry: persisted.country,
181
+ pageview: persisted.pageview,
176
182
  });
177
183
  }
178
184
  return { sessionIds, events: correctionEvents };
@@ -193,7 +199,10 @@ export const applyEnrichment = internalMutation({
193
199
  return 0;
194
200
  }
195
201
  const context = sanitizeContext(args.context);
202
+ const site = await ctx.db.get("sites", args.siteId);
203
+ const timezone = localDayTimezone(site?.timezone);
196
204
  const sessionCountries = new Map();
205
+ const sessionStarts = new Map();
197
206
  let updated = 0;
198
207
  for (const sessionId of new Set(args.sessionIds)) {
199
208
  const session = await ctx.db
@@ -205,6 +214,7 @@ export const applyEnrichment = internalMutation({
205
214
  const sessionCountry = session.country ?? context.country;
206
215
  if (sessionCountry)
207
216
  sessionCountries.set(sessionId, sessionCountry);
217
+ sessionStarts.set(sessionId, session.startedAt);
208
218
  const sessionGeo = missingGeo(session, context);
209
219
  if (Object.keys(sessionGeo).length > 0) {
210
220
  await ctx.db.patch("sessions", session._id, sessionGeo);
@@ -222,7 +232,7 @@ export const applyEnrichment = internalMutation({
222
232
  updated += 1;
223
233
  }
224
234
  if (sessionCountries.size > 0) {
225
- await correctCountryAggregates(ctx, args.siteId, args.events, sessionCountries);
235
+ await correctCountryAggregates(ctx, args.siteId, args.events, sessionCountries, sessionStarts, timezone);
226
236
  }
227
237
  return updated;
228
238
  },
@@ -414,15 +424,19 @@ function normalizeForwardedIp(value) {
414
424
  }
415
425
  return normalized || undefined;
416
426
  }
417
- async function correctCountryAggregates(ctx, siteId, events, sessionCountries) {
427
+ async function correctCountryAggregates(ctx, siteId, events, sessionCountries, sessionStarts, timezone) {
418
428
  const corrections = new Map();
429
+ const granularities = timezone
430
+ ? ["hour", "day", "localDay"]
431
+ : ["hour", "day"];
419
432
  for (const event of events) {
420
433
  const country = sessionCountries.get(event.sessionId);
421
434
  if (!country || country === event.priorCountry)
422
435
  continue;
423
- for (const granularity of ["hour", "day"]) {
424
- const interval = granularity === "hour" ? HOUR_MS : DAY_MS;
425
- const bucketStart = Math.floor(event.timestamp / interval) * interval;
436
+ for (const granularity of granularities) {
437
+ const bucketStart = granularity === "localDay" && timezone
438
+ ? localDayStart(event.timestamp, timezone)
439
+ : Math.floor(event.timestamp / (granularity === "hour" ? HOUR_MS : DAY_MS)) * (granularity === "hour" ? HOUR_MS : DAY_MS);
426
440
  const shard = stableHash(event.sessionId) %
427
441
  (granularity === "hour" ? HOURLY_AGGREGATE_SHARDS : AGGREGATE_SHARDS);
428
442
  const key = `${granularity}:${bucketStart}:${shard}`;
@@ -437,8 +451,14 @@ async function correctCountryAggregates(ctx, siteId, events, sessionCountries) {
437
451
  from: event.priorCountry,
438
452
  to: country,
439
453
  count: 0,
454
+ pageviews: 0,
455
+ sessions: 0,
440
456
  };
441
457
  move.count += 1;
458
+ move.pageviews += Number(event.pageview === true);
459
+ // The session counter was folded with the session's first event, so it
460
+ // moves with the bucket that holds that event and no other.
461
+ move.sessions += Number(sessionStarts.get(event.sessionId) === event.timestamp);
442
462
  correction.moves.set(moveKey, move);
443
463
  corrections.set(key, correction);
444
464
  }
@@ -457,7 +477,7 @@ async function correctCountryAggregates(ctx, siteId, events, sessionCountries) {
457
477
  let dimensions = bucket.dimensions;
458
478
  let changed = false;
459
479
  for (const move of correction.moves.values()) {
460
- const corrected = moveCountryCount(dimensions, move.from, move.to, move.count);
480
+ const corrected = moveCountryCount(dimensions, move);
461
481
  if (corrected) {
462
482
  dimensions = corrected;
463
483
  changed = true;
@@ -468,7 +488,7 @@ async function correctCountryAggregates(ctx, siteId, events, sessionCountries) {
468
488
  }
469
489
  }
470
490
  }
471
- function moveCountryCount(current, from, to, requested) {
491
+ function moveCountryCount(current, { from, to, ...requested }) {
472
492
  const dimensions = current.map((slot) => ({ ...slot }));
473
493
  let sourceIndex = dimensions.findIndex((slot) => slot.type === "country" && slot.value === from);
474
494
  if (sourceIndex < 0) {
@@ -477,16 +497,24 @@ function moveCountryCount(current, from, to, requested) {
477
497
  if (sourceIndex < 0)
478
498
  return undefined;
479
499
  const source = dimensions[sourceIndex];
480
- const moved = Math.min(source.count, requested);
481
- if (moved <= 0)
500
+ const moved = {
501
+ count: Math.min(source.count, requested.count),
502
+ pageviews: Math.min(source.pageviews ?? 0, requested.pageviews),
503
+ sessions: Math.min(source.sessions ?? 0, requested.sessions),
504
+ };
505
+ if (moved.count <= 0)
482
506
  return undefined;
483
- source.count -= moved;
507
+ source.count -= moved.count;
508
+ if (source.pageviews !== undefined)
509
+ source.pageviews -= moved.pageviews;
510
+ if (source.sessions !== undefined)
511
+ source.sessions -= moved.sessions;
484
512
  if (source.count === 0 && source.revenueCents === 0) {
485
513
  dimensions.splice(sourceIndex, 1);
486
514
  }
487
515
  const target = dimensions.find((slot) => slot.type === "country" && slot.value === to);
488
516
  if (target) {
489
- target.count += moved;
517
+ addCountryMove(target, moved);
490
518
  return dimensions;
491
519
  }
492
520
  const countrySlots = dimensions.filter((slot) => slot.type === "country");
@@ -499,14 +527,16 @@ function moveCountryCount(current, from, to, requested) {
499
527
  type: "country",
500
528
  slot,
501
529
  value: to,
502
- count: moved,
530
+ count: moved.count,
503
531
  revenueCents: 0,
532
+ pageviews: moved.pageviews,
533
+ sessions: moved.sessions,
504
534
  });
505
535
  return dimensions;
506
536
  }
507
537
  const overflow = countrySlots.find((slot) => slot.value === "(other)");
508
538
  if (overflow) {
509
- overflow.count += moved;
539
+ addCountryMove(overflow, moved);
510
540
  return dimensions;
511
541
  }
512
542
  const occupied = new Set(countrySlots.map((slot) => slot.slot));
@@ -518,8 +548,10 @@ function moveCountryCount(current, from, to, requested) {
518
548
  type: "country",
519
549
  slot,
520
550
  value: "(other)",
521
- count: moved,
551
+ count: moved.count,
522
552
  revenueCents: 0,
553
+ pageviews: moved.pageviews,
554
+ sessions: moved.sessions,
523
555
  });
524
556
  return dimensions;
525
557
  }
@@ -529,9 +561,14 @@ function moveCountryCount(current, from, to, requested) {
529
561
  replacement = candidate;
530
562
  }
531
563
  replacement.value = "(other)";
532
- replacement.count += moved;
564
+ addCountryMove(replacement, moved);
533
565
  return dimensions;
534
566
  }
567
+ function addCountryMove(slot, moved) {
568
+ slot.count += moved.count;
569
+ slot.pageviews = (slot.pageviews ?? 0) + moved.pageviews;
570
+ slot.sessions = (slot.sessions ?? 0) + moved.sessions;
571
+ }
535
572
  function missingGeo(existing, context) {
536
573
  const coordinates = (existing.latitude === undefined || existing.longitude === undefined) &&
537
574
  context.latitude !== undefined &&