@iann29/rastro 0.1.0-alpha.3 → 0.1.0-alpha.4

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 (86) hide show
  1. package/README.md +264 -51
  2. package/agent/integration.md +651 -0
  3. package/agent/manifest.json +183 -0
  4. package/agent/manifest.schema.json +405 -0
  5. package/dist/client/federation.d.ts +205 -0
  6. package/dist/client/federation.d.ts.map +1 -0
  7. package/dist/client/federation.js +179 -0
  8. package/dist/client/federation.js.map +1 -0
  9. package/dist/client/index.d.ts +1600 -8
  10. package/dist/client/index.d.ts.map +1 -1
  11. package/dist/client/index.js +210 -2
  12. package/dist/client/index.js.map +1 -1
  13. package/dist/component/_generated/api.d.ts +4 -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 +151 -1
  17. package/dist/component/_generated/component.d.ts.map +1 -1
  18. package/dist/component/cardinality.d.ts +12 -0
  19. package/dist/component/cardinality.d.ts.map +1 -0
  20. package/dist/component/cardinality.js +94 -0
  21. package/dist/component/cardinality.js.map +1 -0
  22. package/dist/component/constants.d.ts +10 -0
  23. package/dist/component/constants.d.ts.map +1 -1
  24. package/dist/component/constants.js +10 -0
  25. package/dist/component/constants.js.map +1 -1
  26. package/dist/component/coverage.d.ts +18 -0
  27. package/dist/component/coverage.d.ts.map +1 -0
  28. package/dist/component/coverage.js +19 -0
  29. package/dist/component/coverage.js.map +1 -0
  30. package/dist/component/errors.d.ts +1 -1
  31. package/dist/component/errors.d.ts.map +1 -1
  32. package/dist/component/errors.js.map +1 -1
  33. package/dist/component/http.d.ts.map +1 -1
  34. package/dist/component/http.js +46 -8
  35. package/dist/component/http.js.map +1 -1
  36. package/dist/component/ingest.d.ts.map +1 -1
  37. package/dist/component/ingest.js +238 -18
  38. package/dist/component/ingest.js.map +1 -1
  39. package/dist/component/live.d.ts.map +1 -1
  40. package/dist/component/live.js +6 -3
  41. package/dist/component/live.js.map +1 -1
  42. package/dist/component/reports.d.ts +111 -2
  43. package/dist/component/reports.d.ts.map +1 -1
  44. package/dist/component/reports.js +639 -78
  45. package/dist/component/reports.js.map +1 -1
  46. package/dist/component/retention.d.ts +75 -1
  47. package/dist/component/retention.d.ts.map +1 -1
  48. package/dist/component/retention.js +517 -54
  49. package/dist/component/retention.js.map +1 -1
  50. package/dist/component/sanitize.d.ts +4 -1
  51. package/dist/component/sanitize.d.ts.map +1 -1
  52. package/dist/component/sanitize.js +9 -4
  53. package/dist/component/sanitize.js.map +1 -1
  54. package/dist/component/schema.d.ts +187 -1
  55. package/dist/component/schema.js +100 -1
  56. package/dist/component/schema.js.map +1 -1
  57. package/dist/component/sites.d.ts.map +1 -1
  58. package/dist/component/sites.js +5 -1
  59. package/dist/component/sites.js.map +1 -1
  60. package/dist/component/validators.d.ts +26 -1
  61. package/dist/component/validators.d.ts.map +1 -1
  62. package/dist/component/validators.js +7 -0
  63. package/dist/component/validators.js.map +1 -1
  64. package/docs/benchmarks/2026-08-20-realistic.md +4 -4
  65. package/docs/benchmarks/2026-08-21-formal-certification.md +333 -0
  66. package/docs/federation-setup.md +395 -0
  67. package/docs/federation.md +258 -0
  68. package/docs/upgrading.md +130 -0
  69. package/llms.txt +65 -0
  70. package/package.json +32 -6
  71. package/scripts/generate-federation-keys.mjs +20 -0
  72. package/src/component/_generated/api.ts +4 -0
  73. package/src/component/_generated/component.ts +211 -1
  74. package/src/component/cardinality.ts +116 -0
  75. package/src/component/constants.ts +10 -0
  76. package/src/component/coverage.ts +25 -0
  77. package/src/component/errors.ts +2 -1
  78. package/src/component/http.ts +76 -6
  79. package/src/component/ingest.ts +387 -12
  80. package/src/component/live.ts +8 -3
  81. package/src/component/reports.ts +891 -86
  82. package/src/component/retention.ts +624 -88
  83. package/src/component/sanitize.ts +15 -4
  84. package/src/component/schema.ts +110 -0
  85. package/src/component/sites.ts +5 -1
  86. package/src/component/validators.ts +8 -0
@@ -201,8 +201,47 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
201
201
  updatedAt: number;
202
202
  visits: number;
203
203
  }>;
204
+ metadata: {
205
+ basis: "dailyRollup" | "boundedLegacy";
206
+ coverage: {
207
+ availableFrom: number | null;
208
+ availableThrough: number | null;
209
+ generation: number | null;
210
+ retainedBefore: number | null;
211
+ state: "complete" | "partial" | "retained" | "unavailable";
212
+ };
213
+ range: {
214
+ boundary: "inclusive";
215
+ from: number;
216
+ timezone: "UTC";
217
+ to: number;
218
+ };
219
+ uniqueVisitors: {
220
+ basis: "estimatedUnique" | "exactLegacy";
221
+ exact: boolean;
222
+ };
223
+ };
204
224
  truncated: boolean;
205
225
  }, Name>;
226
+ dataCoverage: FunctionReference<"query", "internal", {
227
+ from: number;
228
+ siteId: string;
229
+ to: number;
230
+ }, {
231
+ datasets: Array<{
232
+ coverage: {
233
+ availableFrom: number | null;
234
+ availableThrough: number | null;
235
+ generation: number | null;
236
+ retainedBefore: number | null;
237
+ state: "complete" | "partial" | "retained" | "unavailable";
238
+ };
239
+ dataset: "overviewHour" | "overviewDay" | "events" | "sessions" | "conversions" | "goals" | "funnels" | "affiliates";
240
+ }>;
241
+ from: number;
242
+ siteId: string;
243
+ to: number;
244
+ }, Name>;
206
245
  funnelsReport: FunctionReference<"query", "internal", {
207
246
  from: number;
208
247
  siteId: string;
@@ -214,6 +253,22 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
214
253
  conversionWindowMs: number;
215
254
  createdAt: number;
216
255
  key: string;
256
+ metadata: {
257
+ basis: "dailyRollup" | "boundedLegacy";
258
+ coverage: {
259
+ availableFrom: number | null;
260
+ availableThrough: number | null;
261
+ generation: number | null;
262
+ retainedBefore: number | null;
263
+ state: "complete" | "partial" | "retained" | "unavailable";
264
+ };
265
+ range: {
266
+ boundary: "inclusive";
267
+ from: number;
268
+ timezone: "UTC";
269
+ to: number;
270
+ };
271
+ };
217
272
  name: string;
218
273
  siteId: string;
219
274
  steps: Array<{
@@ -249,6 +304,22 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
249
304
  updatedAt: number;
250
305
  valueCents: number;
251
306
  }>;
307
+ metadata: {
308
+ basis: "dailyRollup" | "boundedLegacy";
309
+ coverage: {
310
+ availableFrom: number | null;
311
+ availableThrough: number | null;
312
+ generation: number | null;
313
+ retainedBefore: number | null;
314
+ state: "complete" | "partial" | "retained" | "unavailable";
315
+ };
316
+ range: {
317
+ boundary: "inclusive";
318
+ from: number;
319
+ timezone: "UTC";
320
+ to: number;
321
+ };
322
+ };
252
323
  truncated: boolean;
253
324
  }, Name>;
254
325
  listConversions: FunctionReference<"query", "internal", {
@@ -373,6 +444,43 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
373
444
  currency: string;
374
445
  from: number;
375
446
  interval: "hour" | "day";
447
+ metadata: {
448
+ breakdowns: {
449
+ topBrowsers: "eventVolume";
450
+ topCountries: "eventVolume";
451
+ topDevices: "eventVolume";
452
+ topEvents: "eventVolume";
453
+ topGoals: "goalCompletionVolume";
454
+ topPages: "eventVolume";
455
+ topSources: "eventVolume";
456
+ };
457
+ coverage: {
458
+ availableFrom: number | null;
459
+ availableThrough: number | null;
460
+ generation: number | null;
461
+ retainedBefore: number | null;
462
+ state: "complete" | "partial" | "retained" | "unavailable";
463
+ };
464
+ features: {
465
+ botDetection: "unsupported";
466
+ errorInsights: "unsupported";
467
+ outboundLinks: "eventVolume";
468
+ sessionReplay: "unsupported";
469
+ };
470
+ range: {
471
+ boundary: "inclusive";
472
+ from: number;
473
+ timezone: "UTC";
474
+ to: number;
475
+ };
476
+ visitors: {
477
+ basis: "estimatedUnique" | "bucketOccurrences";
478
+ exact: boolean;
479
+ legacyIncomplete: boolean;
480
+ precision: number | null;
481
+ sketchVersion: number | null;
482
+ };
483
+ };
376
484
  timeSeries: Array<{
377
485
  clicks: number;
378
486
  conversions: number;
@@ -517,12 +625,54 @@ export type ComponentApi<Name extends string | undefined = string | undefined> =
517
625
  cleanup: FunctionReference<"mutation", "internal", {
518
626
  batchSize?: number;
519
627
  before: number;
520
- kind: "events" | "sessions" | "conversions" | "goalCompletions" | "aggregateHour" | "aggregateDay" | "funnelProgress" | "funnelSteps" | "affiliateStats" | "attributions" | "liveSessions" | "ingestWindows" | "siteIngestWindows";
628
+ kind: "events" | "sessions" | "conversions" | "goalCompletions" | "aggregateHour" | "aggregateDay" | "funnelProgress" | "funnelSteps" | "affiliateStats" | "goalRollups" | "funnelRollups" | "affiliateRollups" | "attributions" | "liveSessions" | "ingestWindows" | "siteIngestWindows";
521
629
  siteId: string;
522
630
  }, {
631
+ before: number;
523
632
  deleted: number;
524
633
  hasMore: boolean;
525
634
  }, Name>;
635
+ disablePolicy: FunctionReference<"mutation", "internal", {
636
+ siteId: string;
637
+ }, null, Name>;
638
+ runPolicy: FunctionReference<"mutation", "internal", {
639
+ batchSize?: number;
640
+ kind: "events" | "sessions" | "conversions" | "goalCompletions" | "aggregateHour" | "aggregateDay" | "funnelProgress" | "funnelSteps" | "affiliateStats" | "goalRollups" | "funnelRollups" | "affiliateRollups" | "attributions" | "liveSessions" | "ingestWindows" | "siteIngestWindows";
641
+ siteId: string;
642
+ }, {
643
+ before: number;
644
+ deleted: number;
645
+ hasMore: boolean;
646
+ }, Name>;
647
+ setPolicy: FunctionReference<"mutation", "internal", {
648
+ aggregatesDays: number;
649
+ conversionsDays: number;
650
+ eventsDays: number;
651
+ reportsDays: number;
652
+ sessionsDays: number;
653
+ siteId: string;
654
+ }, null, Name>;
655
+ status: FunctionReference<"query", "internal", {
656
+ siteId: string;
657
+ }, {
658
+ backlog: number;
659
+ jobs: Array<{
660
+ before: number;
661
+ deleted: number;
662
+ kind: "events" | "sessions" | "conversions" | "goalCompletions" | "aggregateHour" | "aggregateDay" | "funnelProgress" | "funnelSteps" | "affiliateStats" | "goalRollups" | "funnelRollups" | "affiliateRollups" | "attributions" | "liveSessions" | "ingestWindows" | "siteIngestWindows";
663
+ scheduledAt: number | null;
664
+ status: "pending" | "running" | "complete";
665
+ updatedAt: number;
666
+ }>;
667
+ policy: {
668
+ aggregatesDays: number;
669
+ conversionsDays: number;
670
+ eventsDays: number;
671
+ reportsDays: number;
672
+ sessionsDays: number;
673
+ updatedAt: number;
674
+ } | null;
675
+ }, Name>;
526
676
  };
527
677
  sites: {
528
678
  create: FunctionReference<"mutation", "internal", {
@@ -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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"}
@@ -0,0 +1,12 @@
1
+ declare const SKETCH_VERSION: 1;
2
+ export type VisitorSketch = {
3
+ version: typeof SKETCH_VERSION;
4
+ precision: number;
5
+ registers: ArrayBuffer;
6
+ };
7
+ export declare function createVisitorSketch(precision?: number): VisitorSketch;
8
+ export declare function addVisitor(sketch: VisitorSketch, visitorId: string): VisitorSketch;
9
+ export declare function unionVisitorSketches(left: VisitorSketch, right: VisitorSketch): VisitorSketch;
10
+ export declare function estimateVisitors(sketch: VisitorSketch): number;
11
+ export {};
12
+ //# sourceMappingURL=cardinality.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cardinality.d.ts","sourceRoot":"","sources":["../../src/component/cardinality.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,cAAc,EAAG,CAAU,CAAC;AAGlC,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,OAAO,cAAc,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,WAAW,CAAC;CACxB,CAAC;AAEF,wBAAgB,mBAAmB,CACjC,SAAS,SAAoB,GAC5B,aAAa,CASf;AAED,wBAAgB,UAAU,CACxB,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,GAChB,aAAa,CASf;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,aAAa,GACnB,aAAa,CAkBf;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAqB9D"}
@@ -0,0 +1,94 @@
1
+ const SKETCH_VERSION = 1;
2
+ const DEFAULT_PRECISION = 6;
3
+ export function createVisitorSketch(precision = DEFAULT_PRECISION) {
4
+ if (!Number.isSafeInteger(precision) || precision < 4 || precision > 10) {
5
+ throw new Error("visitor sketch precision must be between 4 and 10");
6
+ }
7
+ return {
8
+ version: SKETCH_VERSION,
9
+ precision,
10
+ registers: new Uint8Array(1 << precision).buffer,
11
+ };
12
+ }
13
+ export function addVisitor(sketch, visitorId) {
14
+ const registers = checkedRegisters(sketch).slice();
15
+ const hash = fnv1a64(visitorId);
16
+ const remainingBits = 64 - sketch.precision;
17
+ const index = Number(hash >> BigInt(remainingBits));
18
+ const remaining = hash & ((1n << BigInt(remainingBits)) - 1n);
19
+ const rank = leadingZeroRank(remaining, remainingBits);
20
+ registers[index] = Math.max(registers[index] ?? 0, rank);
21
+ return { ...sketch, registers: registers.buffer };
22
+ }
23
+ export function unionVisitorSketches(left, right) {
24
+ const leftRegisters = checkedRegisters(left);
25
+ const rightRegisters = checkedRegisters(right);
26
+ if (left.version !== right.version ||
27
+ left.precision !== right.precision ||
28
+ leftRegisters.length !== rightRegisters.length) {
29
+ throw new Error("visitor sketches are incompatible");
30
+ }
31
+ const registers = leftRegisters.slice();
32
+ for (let index = 0; index < registers.length; index += 1) {
33
+ registers[index] = Math.max(registers[index] ?? 0, rightRegisters[index] ?? 0);
34
+ }
35
+ return { ...left, registers: registers.buffer };
36
+ }
37
+ export function estimateVisitors(sketch) {
38
+ const registers = checkedRegisters(sketch);
39
+ const count = registers.length;
40
+ const alpha = count === 16
41
+ ? 0.673
42
+ : count === 32
43
+ ? 0.697
44
+ : count === 64
45
+ ? 0.709
46
+ : 0.7213 / (1 + 1.079 / count);
47
+ let denominator = 0;
48
+ let empty = 0;
49
+ for (const register of registers) {
50
+ denominator += 2 ** -register;
51
+ if (register === 0)
52
+ empty += 1;
53
+ }
54
+ let estimate = (alpha * count * count) / denominator;
55
+ if (estimate <= 2.5 * count && empty > 0) {
56
+ estimate = count * Math.log(count / empty);
57
+ }
58
+ return Math.max(0, Math.round(estimate));
59
+ }
60
+ function checkedRegisters(sketch) {
61
+ if (sketch.version !== SKETCH_VERSION) {
62
+ throw new Error("unsupported visitor sketch version");
63
+ }
64
+ const registers = new Uint8Array(sketch.registers);
65
+ if (registers.length !== 1 << sketch.precision) {
66
+ throw new Error("visitor sketch has invalid register storage");
67
+ }
68
+ return registers;
69
+ }
70
+ function leadingZeroRank(value, bits) {
71
+ if (value === 0n)
72
+ return bits + 1;
73
+ let rank = 1;
74
+ for (let bit = bits - 1; bit >= 0; bit -= 1) {
75
+ if ((value & (1n << BigInt(bit))) !== 0n)
76
+ break;
77
+ rank += 1;
78
+ }
79
+ return rank;
80
+ }
81
+ function fnv1a64(value) {
82
+ let hash = 0xcbf29ce484222325n;
83
+ for (const byte of new TextEncoder().encode(value)) {
84
+ hash ^= BigInt(byte);
85
+ hash = BigInt.asUintN(64, hash * 0x100000001b3n);
86
+ }
87
+ hash ^= hash >> 33n;
88
+ hash = BigInt.asUintN(64, hash * 0xff51afd7ed558ccdn);
89
+ hash ^= hash >> 33n;
90
+ hash = BigInt.asUintN(64, hash * 0xc4ceb9fe1a85ec53n);
91
+ hash ^= hash >> 33n;
92
+ return hash;
93
+ }
94
+ //# sourceMappingURL=cardinality.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cardinality.js","sourceRoot":"","sources":["../../src/component/cardinality.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,16 @@ export declare const JOURNEY_READ_BYTE_RESERVE: number;
28
28
  export declare const JOURNEY_READ_DOCUMENT_RESERVE = 1000;
29
29
  export declare const MAX_RETENTION_BATCH = 500;
30
30
  export declare const MAX_OVERVIEW_AGGREGATE_ROWS = 13000;
31
+ export declare const MAX_REPORT_BUCKETS = 5000;
32
+ export declare const MAX_FEATURE_ROLLUP_DAYS = 90;
33
+ export declare const MAX_FEATURE_ROLLUP_ROWS = 5000;
34
+ export declare const FEATURE_REPORT_BYTE_RESERVE: number;
35
+ export declare const FEATURE_REPORT_DOCUMENT_RESERVE = 500;
36
+ export declare const REPORT_ROLLUP_SHARDS = 2;
37
+ export declare const ROLLUP_SAFETY_DELAY_MS: number;
38
+ export declare const RETENTION_LEASE_MS = 60000;
31
39
  export declare const DAY_MS = 86400000;
32
40
  export declare const HOUR_MS = 3600000;
41
+ export declare const MINUTE_MS = 60000;
42
+ export declare const RETENTION_POLICY_INTERVAL_MS = 86400000;
33
43
  //# sourceMappingURL=constants.d.ts.map
@@ -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,sBAAsB,OAAQ,CAAC;AAC5C,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;AAElD,eAAO,MAAM,MAAM,WAAa,CAAC;AACjC,eAAO,MAAM,OAAO,UAAY,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,sBAAsB,OAAQ,CAAC;AAC5C,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;AAEzC,eAAO,MAAM,MAAM,WAAa,CAAC;AACjC,eAAO,MAAM,OAAO,UAAY,CAAC;AACjC,eAAO,MAAM,SAAS,QAAS,CAAC;AAChC,eAAO,MAAM,4BAA4B,WAAS,CAAC"}
@@ -28,6 +28,16 @@ export const JOURNEY_READ_BYTE_RESERVE = 4 * 1024 * 1024;
28
28
  export const JOURNEY_READ_DOCUMENT_RESERVE = 1_000;
29
29
  export const MAX_RETENTION_BATCH = 500;
30
30
  export const MAX_OVERVIEW_AGGREGATE_ROWS = 13_000;
31
+ export const MAX_REPORT_BUCKETS = 5_000;
32
+ export const MAX_FEATURE_ROLLUP_DAYS = 90;
33
+ export const MAX_FEATURE_ROLLUP_ROWS = 5_000;
34
+ export const FEATURE_REPORT_BYTE_RESERVE = 2 * 1024 * 1024;
35
+ export const FEATURE_REPORT_DOCUMENT_RESERVE = 500;
36
+ export const REPORT_ROLLUP_SHARDS = 2;
37
+ export const ROLLUP_SAFETY_DELAY_MS = 5 * 60_000;
38
+ export const RETENTION_LEASE_MS = 60_000;
31
39
  export const DAY_MS = 86_400_000;
32
40
  export const HOUR_MS = 3_600_000;
41
+ export const MINUTE_MS = 60_000;
42
+ export const RETENTION_POLICY_INTERVAL_MS = DAY_MS;
33
43
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/component/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AACnC,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACxC,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC;AACzC,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,CAAC;AACjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAC3C,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,GAAG,IAAI,CAAC;AACvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC;AACxC,MAAM,CAAC,MAAM,gCAAgC,GAAG,GAAG,CAAC;AACpD,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAG,GAAG,IAAI,CAAC;AAC1D,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAC1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,CAAC;AAC5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AACpC,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAClC,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AACnC,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AACvC,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AACnC,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC;AACjC,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AACnC,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AACzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AACtC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AACzD,MAAM,CAAC,MAAM,6BAA6B,GAAG,KAAK,CAAC;AACnD,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,MAAM,CAAC,MAAM,2BAA2B,GAAG,MAAM,CAAC;AAElD,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAAC;AACjC,MAAM,CAAC,MAAM,OAAO,GAAG,SAAS,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/component/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AACnC,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACxC,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC;AACzC,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,CAAC;AACjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAC3C,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,GAAG,IAAI,CAAC;AACvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC;AACxC,MAAM,CAAC,MAAM,gCAAgC,GAAG,GAAG,CAAC;AACpD,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAG,GAAG,IAAI,CAAC;AAC1D,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAC1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,CAAC;AAC5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AACpC,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAClC,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AACnC,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AACvC,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AACnC,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC;AACjC,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AACnC,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AACzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AACtC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AACzD,MAAM,CAAC,MAAM,6BAA6B,GAAG,KAAK,CAAC;AACnD,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,MAAM,CAAC,MAAM,2BAA2B,GAAG,MAAM,CAAC;AAClD,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC;AACxC,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAC7C,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAC3D,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAG,CAAC;AACnD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC;AACtC,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAG,MAAM,CAAC;AACjD,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAAC;AACjC,MAAM,CAAC,MAAM,OAAO,GAAG,SAAS,CAAC;AACjC,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC;AAChC,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { Id } from "./_generated/dataModel.js";
2
+ import type { MutationCtx } from "./_generated/server.js";
3
+ export declare function ensureAnalyticsControl(ctx: MutationCtx, siteId: Id<"sites">, now: number, retained?: Array<{
4
+ dataset: string;
5
+ before: number;
6
+ }>): Promise<{
7
+ _creationTime: number;
8
+ _id: import("convex/values").GenericId<"analyticsCoverage">;
9
+ generation: 1;
10
+ retained: {
11
+ before: number;
12
+ dataset: string;
13
+ }[];
14
+ rollupCompleteFrom: number;
15
+ siteId: import("convex/values").GenericId<"sites">;
16
+ updatedAt: number;
17
+ }>;
18
+ //# sourceMappingURL=coverage.d.ts.map
@@ -0,0 +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;;;;;;;;;;;GAgB1D"}
@@ -0,0 +1,19 @@
1
+ import { ROLLUP_SAFETY_DELAY_MS } from "./constants.js";
2
+ export async function ensureAnalyticsControl(ctx, siteId, now, retained = []) {
3
+ const existing = await ctx.db
4
+ .query("analyticsCoverage")
5
+ .withIndex("by_siteId", (range) => range.eq("siteId", siteId))
6
+ .unique();
7
+ if (existing)
8
+ return existing;
9
+ const fields = {
10
+ siteId,
11
+ generation: 1,
12
+ rollupCompleteFrom: now + ROLLUP_SAFETY_DELAY_MS,
13
+ retained,
14
+ updatedAt: now,
15
+ };
16
+ const _id = await ctx.db.insert("analyticsCoverage", fields);
17
+ return { ...fields, _id, _creationTime: now };
18
+ }
19
+ //# sourceMappingURL=coverage.js.map
@@ -0,0 +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;QAAE,OAAO,QAAQ,CAAC;IAC9B,MAAM,MAAM,GAAG;QACb,MAAM;QACN,UAAU,EAAE,CAAU;QACtB,kBAAkB,EAAE,GAAG,GAAG,sBAAsB;QAChD,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,3 +1,3 @@
1
- export type RastroErrorCode = "NOT_FOUND" | "INVALID_ARGUMENT" | "INVALID_SITE" | "ORIGIN_NOT_ALLOWED" | "BATCH_TOO_LARGE" | "LIMIT_EXCEEDED" | "CONFLICT" | "CURRENCY_MISMATCH" | "RATE_LIMITED";
1
+ export type RastroErrorCode = "NOT_FOUND" | "INVALID_ARGUMENT" | "INVALID_SITE" | "ORIGIN_NOT_ALLOWED" | "BATCH_TOO_LARGE" | "LIMIT_EXCEEDED" | "CONFLICT" | "CURRENCY_MISMATCH" | "RATE_LIMITED" | "REPORT_INCOMPLETE";
2
2
  export declare function fail(code: RastroErrorCode, message: string, details?: Record<string, string | number | boolean | null>): never;
3
3
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/component/errors.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,eAAe,GACvB,WAAW,GACX,kBAAkB,GAClB,cAAc,GACd,oBAAoB,GACpB,iBAAiB,GACjB,gBAAgB,GAChB,UAAU,GACV,mBAAmB,GACnB,cAAc,CAAC;AAEnB,wBAAgB,IAAI,CAClB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,GACzD,KAAK,CAEP"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/component/errors.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,eAAe,GACvB,WAAW,GACX,kBAAkB,GAClB,cAAc,GACd,oBAAoB,GACpB,iBAAiB,GACjB,gBAAgB,GAChB,UAAU,GACV,mBAAmB,GACnB,cAAc,GACd,mBAAmB,CAAC;AAExB,wBAAgB,IAAI,CAClB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,GACzD,KAAK,CAEP"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/component/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAa5C,MAAM,UAAU,IAAI,CAClB,IAAqB,EACrB,OAAe,EACf,OAA0D;IAE1D,MAAM,IAAI,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC;AACrE,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/component/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAc5C,MAAM,UAAU,IAAI,CAClB,IAAqB,EACrB,OAAe,EACf,OAA0D;IAE1D,MAAM,IAAI,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC;AACrE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/component/http.ts"],"names":[],"mappings":"AA+BA,QAAA,MAAM,IAAI,oCAAe,CAAC;eA+dX,IAAI"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/component/http.ts"],"names":[],"mappings":"AAgCA,QAAA,MAAM,IAAI,oCAAe,CAAC;eAoiBX,IAAI"}
@@ -2,7 +2,7 @@ import { httpRouter } from "convex/server";
2
2
  import { ConvexError } from "convex/values";
3
3
  import { api, internal } from "./_generated/api.js";
4
4
  import { env, httpAction } from "./_generated/server.js";
5
- import { MAX_BATCH_BYTES, MAX_BATCH_EVENT_GROUPS, MAX_BATCH_EVENTS, } from "./constants.js";
5
+ import { MAX_BATCH_BYTES, MAX_BATCH_EVENT_GROUPS, MAX_BATCH_EVENTS, RATE_LIMIT_WINDOW_MS, } from "./constants.js";
6
6
  import { classifyIp, geoIpDailyLimit, geoIpStatus, isTrustedProxyRequest, readRequestMetadata, resolveClientIp, resolveGeoIp, } from "./geo.js";
7
7
  import { isPlainRecord } from "./guards.js";
8
8
  import { sanitizeEvent } from "./sanitize.js";
@@ -13,10 +13,12 @@ http.route({
13
13
  path: "/events",
14
14
  method: "POST",
15
15
  handler: httpAction(async (ctx, request) => {
16
+ const requestId = crypto.randomUUID();
16
17
  const origin = request.headers.get("origin");
17
- if (!origin)
18
- return json({ error: { code: "ORIGIN_REQUIRED" } }, 400);
19
- const headers = corsHeaders(origin);
18
+ if (!origin) {
19
+ return json({ error: { code: "ORIGIN_REQUIRED" } }, 400, requestIdHeaders(requestId));
20
+ }
21
+ const headers = corsHeaders(origin, requestId);
20
22
  const contentLength = Number(request.headers.get("content-length"));
21
23
  if (Number.isFinite(contentLength) && contentLength > MAX_BATCH_BYTES) {
22
24
  return json({ error: { code: "BATCH_TOO_LARGE", limitBytes: MAX_BATCH_BYTES } }, 413, headers);
@@ -61,6 +63,7 @@ http.route({
61
63
  "ready") {
62
64
  const events = enrichmentCandidateEvents(payload.events);
63
65
  if (events) {
66
+ let stage = "claim";
64
67
  try {
65
68
  const claim = await ctx.runMutation(internal.geo.claimEnrichment, {
66
69
  siteId: payload.siteId,
@@ -68,8 +71,10 @@ http.route({
68
71
  dailyLimit: geoIpDailyLimit(env.RASTRO_GEOIP_DAILY_LIMIT),
69
72
  });
70
73
  if (claim.sessionIds.length > 0) {
74
+ stage = "resolve";
71
75
  const providerGeo = await resolveGeoIp(clientIp.ip, env.RASTRO_GEOIP_PROVIDER, env.RASTRO_GEOIP_TOKEN);
72
76
  if (providerGeo) {
77
+ stage = "apply";
73
78
  await ctx.runMutation(internal.geo.applyEnrichment, {
74
79
  siteId: payload.siteId,
75
80
  sessionIds: claim.sessionIds,
@@ -77,10 +82,13 @@ http.route({
77
82
  context: providerGeo,
78
83
  });
79
84
  }
85
+ else {
86
+ logGeoIpFailure(requestId, stage, env.RASTRO_GEOIP_PROVIDER);
87
+ }
80
88
  }
81
89
  }
82
90
  catch {
83
- // Analytics ingestion remains available if optional enrichment fails.
91
+ logGeoIpFailure(requestId, stage, env.RASTRO_GEOIP_PROVIDER);
84
92
  }
85
93
  }
86
94
  }
@@ -94,9 +102,15 @@ http.route({
94
102
  : data.code === "RATE_LIMITED"
95
103
  ? 429
96
104
  : 400;
97
- return json({ error: data }, status, headers);
105
+ return json({ error: data }, status, status === 429
106
+ ? {
107
+ ...headers,
108
+ "Retry-After": String(Math.ceil(RATE_LIMIT_WINDOW_MS / 1_000)),
109
+ }
110
+ : headers);
98
111
  }
99
- return json({ error: { code: "INVALID_REQUEST" } }, 400, headers);
112
+ logInternalHttpError(requestId);
113
+ return json({ error: { code: "INTERNAL_ERROR", requestId } }, 500, headers);
100
114
  }
101
115
  }),
102
116
  });
@@ -396,12 +410,36 @@ function classifyUserAgent(userAgent) {
396
410
  : "desktop";
397
411
  return { browser, os, device };
398
412
  }
399
- function corsHeaders(origin) {
413
+ function logInternalHttpError(requestId) {
414
+ console.error(JSON.stringify({
415
+ level: "error",
416
+ event: "rastro.http.internal_error",
417
+ requestId,
418
+ route: "/events",
419
+ method: "POST",
420
+ }));
421
+ }
422
+ function logGeoIpFailure(requestId, stage, provider) {
423
+ console.warn(JSON.stringify({
424
+ level: "warn",
425
+ event: "rastro.geoip.failure",
426
+ requestId,
427
+ route: "/events",
428
+ stage,
429
+ provider,
430
+ }));
431
+ }
432
+ function requestIdHeaders(requestId) {
433
+ return { "X-Request-ID": requestId };
434
+ }
435
+ function corsHeaders(origin, requestId) {
400
436
  return {
401
437
  "Access-Control-Allow-Origin": origin,
402
438
  "Access-Control-Allow-Methods": "POST, OPTIONS",
403
439
  "Access-Control-Allow-Headers": "Content-Type",
440
+ "Access-Control-Expose-Headers": "X-Request-ID, Retry-After",
404
441
  "Access-Control-Max-Age": "86400",
442
+ ...(requestId ? requestIdHeaders(requestId) : {}),
405
443
  Vary: "Origin",
406
444
  };
407
445
  }