@iann29/rastro 0.7.0 → 0.8.1
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/README.md +63 -0
- package/agent/integration.md +11 -0
- package/agent/manifest.json +4 -4
- package/dist/client/federation.d.ts +34 -9
- package/dist/client/federation.d.ts.map +1 -1
- package/dist/client/federation.js +14 -2
- package/dist/client/federation.js.map +1 -1
- package/dist/client/index.d.ts +350 -3
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +90 -5
- package/dist/client/index.js.map +1 -1
- package/dist/component/_generated/api.d.ts +2 -0
- package/dist/component/_generated/api.d.ts.map +1 -1
- package/dist/component/_generated/api.js.map +1 -1
- package/dist/component/_generated/component.d.ts +158 -0
- package/dist/component/_generated/component.d.ts.map +1 -1
- package/dist/component/constants.d.ts +5 -0
- package/dist/component/constants.d.ts.map +1 -1
- package/dist/component/constants.js +8 -0
- package/dist/component/constants.js.map +1 -1
- package/dist/component/leads.d.ts +190 -0
- package/dist/component/leads.d.ts.map +1 -0
- package/dist/component/leads.js +689 -0
- package/dist/component/leads.js.map +1 -0
- package/dist/component/reports.d.ts.map +1 -1
- package/dist/component/reports.js +56 -31
- package/dist/component/reports.js.map +1 -1
- package/dist/component/schema.d.ts +119 -0
- package/dist/component/schema.js +39 -1
- package/dist/component/schema.js.map +1 -1
- package/dist/component/validators.d.ts +693 -0
- package/dist/component/validators.d.ts.map +1 -1
- package/dist/component/validators.js +129 -0
- package/dist/component/validators.js.map +1 -1
- package/dist/tracker/generated.d.ts +1 -1
- package/dist/tracker/generated.js +1 -1
- package/docs/federation-setup.md +29 -0
- package/docs/upgrading.md +42 -0
- package/llms.txt +2 -0
- package/package.json +6 -6
- package/src/component/_generated/api.ts +2 -0
- package/src/component/_generated/component.ts +181 -0
- package/src/component/constants.ts +8 -0
- package/src/component/leads.ts +823 -0
- package/src/component/reports.ts +84 -40
- package/src/component/schema.ts +45 -0
- package/src/component/validators.ts +164 -0
- package/src/tracker/generated.ts +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leads.js","sourceRoot":"","sources":["../../src/component/leads.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reports.d.ts","sourceRoot":"","sources":["../../src/component/reports.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,2BAA2B,CAAC;AAoMzD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"reports.d.ts","sourceRoot":"","sources":["../../src/component/reports.ts"],"names":[],"mappings":"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"}
|
|
@@ -279,7 +279,14 @@ export const overview = query({
|
|
|
279
279
|
: granularity === "day"
|
|
280
280
|
? "overviewDay"
|
|
281
281
|
: "overviewLocalDay";
|
|
282
|
-
|
|
282
|
+
// Buckets before a retention boundary are gone: read from it, and the
|
|
283
|
+
// coverage below reports the range as partial.
|
|
284
|
+
const readFrom = await readableFrom(ctx, siteIds, [overviewDataset], from);
|
|
285
|
+
// Cleanup keeps whole the bucket that holds the boundary (a local day
|
|
286
|
+
// around a UTC cutoff), so reading starts at that bucket, not the instant.
|
|
287
|
+
const firstReadBucket = Math.max(firstBucket, localDays
|
|
288
|
+
? localDayStart(readFrom, siteTimezone)
|
|
289
|
+
: Math.floor(readFrom / intervalMs) * intervalMs);
|
|
283
290
|
for (const siteId of siteIds) {
|
|
284
291
|
// Iterated rather than taken whole: within the row budget a busy range
|
|
285
292
|
// can still cross the bytes a query may read. Values are length-capped,
|
|
@@ -292,7 +299,7 @@ export const overview = query({
|
|
|
292
299
|
.withIndex("by_siteId_and_granularity_and_bucketStart", (range) => range
|
|
293
300
|
.eq("siteId", siteId)
|
|
294
301
|
.eq("granularity", granularity)
|
|
295
|
-
.gte("bucketStart",
|
|
302
|
+
.gte("bucketStart", firstReadBucket)
|
|
296
303
|
.lte("bucketStart", lastBucket))) {
|
|
297
304
|
buckets.push(bucket);
|
|
298
305
|
if (buckets.length > perSiteLimit)
|
|
@@ -852,7 +859,7 @@ export const listSessions = query({
|
|
|
852
859
|
returns: paginationResultValidator(sessionDocumentValidator),
|
|
853
860
|
handler: async (ctx, args) => {
|
|
854
861
|
validateRange(args.from, args.to, MAX_REPORT_RANGE_DAYS);
|
|
855
|
-
await
|
|
862
|
+
const readFrom = await readableFrom(ctx, [args.siteId], ["sessions"], args.from);
|
|
856
863
|
const pagination = parseKeysetPagination(args.paginationOpts, {
|
|
857
864
|
kind: "sessions",
|
|
858
865
|
siteId: String(args.siteId),
|
|
@@ -875,7 +882,7 @@ export const listSessions = query({
|
|
|
875
882
|
.query("sessions")
|
|
876
883
|
.withIndex("by_siteId_and_lastSeenAt", (range) => range
|
|
877
884
|
.eq("siteId", args.siteId)
|
|
878
|
-
.gte("lastSeenAt",
|
|
885
|
+
.gte("lastSeenAt", readFrom)
|
|
879
886
|
.lt("lastSeenAt", pagination.cursor.timestamp))
|
|
880
887
|
.order("desc")
|
|
881
888
|
.take(take - rows.length)));
|
|
@@ -886,7 +893,7 @@ export const listSessions = query({
|
|
|
886
893
|
.query("sessions")
|
|
887
894
|
.withIndex("by_siteId_and_lastSeenAt", (range) => range
|
|
888
895
|
.eq("siteId", args.siteId)
|
|
889
|
-
.gte("lastSeenAt",
|
|
896
|
+
.gte("lastSeenAt", readFrom)
|
|
890
897
|
.lte("lastSeenAt", args.to))
|
|
891
898
|
.order("desc")
|
|
892
899
|
.take(take)));
|
|
@@ -911,7 +918,7 @@ export const sessionJourney = query({
|
|
|
911
918
|
returns: paginationResultValidator(eventDocumentValidator),
|
|
912
919
|
handler: async (ctx, args) => {
|
|
913
920
|
validateRange(args.from, args.to, MAX_REPORT_RANGE_DAYS);
|
|
914
|
-
await
|
|
921
|
+
const readFrom = await readableFrom(ctx, [args.siteId], ["events"], args.from);
|
|
915
922
|
const pagination = parseJourneyPagination(args.paginationOpts, {
|
|
916
923
|
kind: "events",
|
|
917
924
|
siteId: String(args.siteId),
|
|
@@ -922,7 +929,7 @@ export const sessionJourney = query({
|
|
|
922
929
|
const rows = await loadSessionJourneyEvents(ctx, {
|
|
923
930
|
siteId: args.siteId,
|
|
924
931
|
sessionId: args.sessionId,
|
|
925
|
-
from:
|
|
932
|
+
from: readFrom,
|
|
926
933
|
to: args.to,
|
|
927
934
|
cursor: pagination.cursor,
|
|
928
935
|
resultLimit: pagination.numItems + 1,
|
|
@@ -941,7 +948,7 @@ export const listConversions = query({
|
|
|
941
948
|
returns: paginationResultValidator(conversionDocumentValidator),
|
|
942
949
|
handler: async (ctx, args) => {
|
|
943
950
|
validateRange(args.from, args.to, MAX_REPORT_RANGE_DAYS);
|
|
944
|
-
await
|
|
951
|
+
const readFrom = await readableFrom(ctx, [args.siteId], ["conversions"], args.from);
|
|
945
952
|
const pagination = parseKeysetPagination(args.paginationOpts, {
|
|
946
953
|
kind: "conversions",
|
|
947
954
|
siteId: String(args.siteId),
|
|
@@ -964,7 +971,7 @@ export const listConversions = query({
|
|
|
964
971
|
.query("conversions")
|
|
965
972
|
.withIndex("by_siteId_and_timestamp", (range) => range
|
|
966
973
|
.eq("siteId", args.siteId)
|
|
967
|
-
.gte("timestamp",
|
|
974
|
+
.gte("timestamp", readFrom)
|
|
968
975
|
.lt("timestamp", pagination.cursor.timestamp))
|
|
969
976
|
.order("desc")
|
|
970
977
|
.take(take - rows.length)));
|
|
@@ -975,7 +982,7 @@ export const listConversions = query({
|
|
|
975
982
|
.query("conversions")
|
|
976
983
|
.withIndex("by_siteId_and_timestamp", (range) => range
|
|
977
984
|
.eq("siteId", args.siteId)
|
|
978
|
-
.gte("timestamp",
|
|
985
|
+
.gte("timestamp", readFrom)
|
|
979
986
|
.lte("timestamp", args.to))
|
|
980
987
|
.order("desc")
|
|
981
988
|
.take(take)));
|
|
@@ -998,7 +1005,7 @@ export const visitorJourney = query({
|
|
|
998
1005
|
handler: async (ctx, args) => {
|
|
999
1006
|
const siteIds = validateSiteIds(args.siteIds);
|
|
1000
1007
|
validateRange(args.from, args.to, MAX_REPORT_RANGE_DAYS);
|
|
1001
|
-
await
|
|
1008
|
+
const readFrom = await readableFrom(ctx, siteIds, ["events"], args.from);
|
|
1002
1009
|
const limit = args.limit ?? 200;
|
|
1003
1010
|
if (!Number.isSafeInteger(limit) ||
|
|
1004
1011
|
limit < 1 ||
|
|
@@ -1012,7 +1019,7 @@ export const visitorJourney = query({
|
|
|
1012
1019
|
rows.push(...(await loadVisitorJourneyEvents(ctx, {
|
|
1013
1020
|
siteId,
|
|
1014
1021
|
visitorId,
|
|
1015
|
-
from:
|
|
1022
|
+
from: readFrom,
|
|
1016
1023
|
to: cutoff,
|
|
1017
1024
|
resultLimit: limit,
|
|
1018
1025
|
})));
|
|
@@ -1060,12 +1067,12 @@ export const goalsReport = query({
|
|
|
1060
1067
|
}
|
|
1061
1068
|
}
|
|
1062
1069
|
else {
|
|
1063
|
-
await
|
|
1070
|
+
const readFrom = await readableFrom(ctx, [args.siteId], ["goalCompletions"], args.from);
|
|
1064
1071
|
const completions = await ctx.db
|
|
1065
1072
|
.query("goalCompletions")
|
|
1066
1073
|
.withIndex("by_siteId_and_timestamp", (range) => range
|
|
1067
1074
|
.eq("siteId", args.siteId)
|
|
1068
|
-
.gte("timestamp",
|
|
1075
|
+
.gte("timestamp", readFrom)
|
|
1069
1076
|
.lte("timestamp", args.to))
|
|
1070
1077
|
.take(MAX_REPORT_BUCKETS + 1);
|
|
1071
1078
|
failIfIncomplete(completions, MAX_REPORT_BUCKETS, "goal completions");
|
|
@@ -1123,9 +1130,9 @@ export const funnelsReport = query({
|
|
|
1123
1130
|
const rollups = useRollups
|
|
1124
1131
|
? await loadFunnelDailyRollups(ctx, args.siteId, funnels.map((funnel) => funnel._id), args.from, args.to)
|
|
1125
1132
|
: null;
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1133
|
+
const stepsFrom = rollups
|
|
1134
|
+
? args.from
|
|
1135
|
+
: await readableFrom(ctx, [args.siteId], ["funnelSteps"], args.from);
|
|
1129
1136
|
const reportCoverage = await coverageForRange(ctx, [args.siteId], args.from, args.to, {
|
|
1130
1137
|
datasets: [rollups ? "funnelRollups" : "funnelSteps"],
|
|
1131
1138
|
complete: true,
|
|
@@ -1148,7 +1155,7 @@ export const funnelsReport = query({
|
|
|
1148
1155
|
.withIndex("by_siteId_and_funnelId_and_bucketStart", (range) => range
|
|
1149
1156
|
.eq("siteId", args.siteId)
|
|
1150
1157
|
.eq("funnelId", funnel._id)
|
|
1151
|
-
.gte("bucketStart", Math.floor(
|
|
1158
|
+
.gte("bucketStart", Math.floor(stepsFrom / DAY_MS) * DAY_MS)
|
|
1152
1159
|
.lte("bucketStart", Math.floor(args.to / DAY_MS) * DAY_MS))
|
|
1153
1160
|
.take(MAX_REPORT_BUCKETS + 1);
|
|
1154
1161
|
if (!rollups) {
|
|
@@ -1237,19 +1244,19 @@ export const affiliatesReport = query({
|
|
|
1237
1244
|
}
|
|
1238
1245
|
}
|
|
1239
1246
|
else {
|
|
1240
|
-
await
|
|
1247
|
+
const readFrom = await readableFrom(ctx, [args.siteId], ["affiliateStats", "sessions"], args.from);
|
|
1241
1248
|
const stats = await ctx.db
|
|
1242
1249
|
.query("affiliateDailyStats")
|
|
1243
1250
|
.withIndex("by_siteId_and_bucketStart", (range) => range
|
|
1244
1251
|
.eq("siteId", args.siteId)
|
|
1245
|
-
.gte("bucketStart", Math.floor(
|
|
1252
|
+
.gte("bucketStart", Math.floor(readFrom / DAY_MS) * DAY_MS)
|
|
1246
1253
|
.lte("bucketStart", Math.floor(args.to / DAY_MS) * DAY_MS))
|
|
1247
1254
|
.take(MAX_REPORT_BUCKETS + 1);
|
|
1248
1255
|
const sessions = await ctx.db
|
|
1249
1256
|
.query("sessions")
|
|
1250
1257
|
.withIndex("by_siteId_and_startedAt", (range) => range
|
|
1251
1258
|
.eq("siteId", args.siteId)
|
|
1252
|
-
.gte("startedAt",
|
|
1259
|
+
.gte("startedAt", readFrom)
|
|
1253
1260
|
.lte("startedAt", args.to))
|
|
1254
1261
|
.take(MAX_REPORT_BUCKETS + 1);
|
|
1255
1262
|
failIfIncomplete(stats, MAX_REPORT_BUCKETS, "affiliate stat buckets");
|
|
@@ -1345,12 +1352,12 @@ export const vitalsReport = query({
|
|
|
1345
1352
|
handler: async (ctx, args) => {
|
|
1346
1353
|
validateRange(args.from, args.to, MAX_FEATURE_ROLLUP_DAYS);
|
|
1347
1354
|
requireAlignedRange(args.from, args.to, DAY_MS, "vitals report");
|
|
1348
|
-
await
|
|
1355
|
+
const readFrom = await readableFrom(ctx, [args.siteId], ["vitalRollups"], args.from);
|
|
1349
1356
|
const rows = await ctx.db
|
|
1350
1357
|
.query("vitalRollups")
|
|
1351
1358
|
.withIndex("by_siteId_and_bucketStart", (range) => range
|
|
1352
1359
|
.eq("siteId", args.siteId)
|
|
1353
|
-
.gte("bucketStart",
|
|
1360
|
+
.gte("bucketStart", readFrom)
|
|
1354
1361
|
.lte("bucketStart", args.to))
|
|
1355
1362
|
.take(MAX_VITALS_REPORT_ROWS + 1);
|
|
1356
1363
|
failIfIncomplete(rows, MAX_VITALS_REPORT_ROWS, "vital rollups");
|
|
@@ -1630,24 +1637,42 @@ async function coverageForRange(ctx, siteIds, from, to, options) {
|
|
|
1630
1637
|
retainedBefore,
|
|
1631
1638
|
};
|
|
1632
1639
|
}
|
|
1640
|
+
/**
|
|
1641
|
+
* Where a report may start reading `sources` for these sites: `from`, or the
|
|
1642
|
+
* latest retention boundary when a cleanup or a policy already purged the data
|
|
1643
|
+
* before it. Reports read from here and let `coverageForRange` say `partial`
|
|
1644
|
+
* (or `unavailable` when the whole range is gone) instead of failing: a range
|
|
1645
|
+
* that begins before the retained data is a question with a partial answer,
|
|
1646
|
+
* not an error. Rows before the boundary are deleted anyway; clamping keeps a
|
|
1647
|
+
* cleanup still in progress from leaking a half-purged slice into the answer.
|
|
1648
|
+
*/
|
|
1649
|
+
/**
|
|
1650
|
+
* Money is the exception. The commission summary has no coverage to say
|
|
1651
|
+
* "partial", and a retained period summed as zero would read as money that
|
|
1652
|
+
* never came in: it refuses instead.
|
|
1653
|
+
*/
|
|
1633
1654
|
async function assertSourceAvailable(ctx, siteIds, sources, from) {
|
|
1655
|
+
const readFrom = await readableFrom(ctx, siteIds, sources, from);
|
|
1656
|
+
if (readFrom > from) {
|
|
1657
|
+
fail("REPORT_INCOMPLETE", "requested report range intersects retained data", {
|
|
1658
|
+
retainedBefore: readFrom,
|
|
1659
|
+
});
|
|
1660
|
+
}
|
|
1661
|
+
}
|
|
1662
|
+
async function readableFrom(ctx, siteIds, sources, from) {
|
|
1634
1663
|
const rows = await Promise.all(siteIds.map((siteId) => ctx.db
|
|
1635
1664
|
.query("analyticsCoverage")
|
|
1636
1665
|
.withIndex("by_siteId", (range) => range.eq("siteId", siteId))
|
|
1637
1666
|
.unique()));
|
|
1638
|
-
|
|
1667
|
+
let cutoff = from;
|
|
1668
|
+
for (const row of rows) {
|
|
1639
1669
|
for (const retained of row?.retained ?? []) {
|
|
1640
1670
|
if (sources.some((source) => source === retained.dataset)) {
|
|
1641
|
-
|
|
1671
|
+
cutoff = Math.max(cutoff, retained.before);
|
|
1642
1672
|
}
|
|
1643
1673
|
}
|
|
1644
|
-
return latest;
|
|
1645
|
-
}, null);
|
|
1646
|
-
if (cutoff !== null && from < cutoff) {
|
|
1647
|
-
fail("REPORT_INCOMPLETE", "requested report range intersects retained data", {
|
|
1648
|
-
retainedBefore: cutoff,
|
|
1649
|
-
});
|
|
1650
1674
|
}
|
|
1675
|
+
return cutoff;
|
|
1651
1676
|
}
|
|
1652
1677
|
async function datasetCoverageForRange(ctx, siteId, dataset, from, to) {
|
|
1653
1678
|
if (dataset === "siteMap") {
|