@prosopo/provider 5.2.1 → 5.3.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.
Files changed (63) hide show
  1. package/.turbo/turbo-build$colon$cjs.log +17 -13
  2. package/.turbo/turbo-build$colon$tsc.log +27 -24
  3. package/.turbo/turbo-build.log +18 -14
  4. package/CHANGELOG.md +55 -0
  5. package/dist/api/captcha/getPuzzleCaptchaChallenge.d.ts.map +1 -1
  6. package/dist/api/captcha/getPuzzleCaptchaChallenge.js +11 -4
  7. package/dist/api/captcha/getPuzzleCaptchaChallenge.js.map +1 -1
  8. package/dist/api/captcha/maintenanceModeResponses.d.ts +1 -1
  9. package/dist/api/captcha/maintenanceModeResponses.d.ts.map +1 -1
  10. package/dist/api/captcha/maintenanceModeResponses.js +11 -6
  11. package/dist/api/captcha/maintenanceModeResponses.js.map +1 -1
  12. package/dist/api/captcha/submitPoWCaptchaSolution.d.ts.map +1 -1
  13. package/dist/api/captcha/submitPoWCaptchaSolution.js +4 -2
  14. package/dist/api/captcha/submitPoWCaptchaSolution.js.map +1 -1
  15. package/dist/api/captcha/trafficFilterRequestTime.d.ts +2 -1
  16. package/dist/api/captcha/trafficFilterRequestTime.d.ts.map +1 -1
  17. package/dist/api/captcha/trafficFilterRequestTime.js +1 -0
  18. package/dist/api/captcha/trafficFilterRequestTime.js.map +1 -1
  19. package/dist/api/ja4.d.ts.map +1 -1
  20. package/dist/api/ja4.js +14 -147
  21. package/dist/api/ja4.js.map +1 -1
  22. package/dist/cjs/api/captcha/getPuzzleCaptchaChallenge.cjs +11 -4
  23. package/dist/cjs/api/captcha/maintenanceModeResponses.cjs +11 -6
  24. package/dist/cjs/api/captcha/submitPoWCaptchaSolution.cjs +4 -2
  25. package/dist/cjs/api/captcha/trafficFilterRequestTime.cjs +1 -0
  26. package/dist/cjs/api/ja4.cjs +13 -147
  27. package/dist/cjs/tasks/dnsEvent/enrichDnsEvent.cjs +17 -11
  28. package/dist/cjs/tasks/frictionless/frictionlessTasks.cjs +2 -1
  29. package/dist/cjs/tasks/puzzle/backgroundBuffer.cjs +39 -0
  30. package/dist/cjs/tasks/puzzle/puzzleRenderer.cjs +78 -0
  31. package/dist/cjs/tasks/spam/checkTrafficFilter.cjs +62 -31
  32. package/dist/tasks/dnsEvent/enrichDnsEvent.d.ts.map +1 -1
  33. package/dist/tasks/dnsEvent/enrichDnsEvent.js +17 -11
  34. package/dist/tasks/dnsEvent/enrichDnsEvent.js.map +1 -1
  35. package/dist/tasks/frictionless/frictionlessTasks.d.ts.map +1 -1
  36. package/dist/tasks/frictionless/frictionlessTasks.js +2 -1
  37. package/dist/tasks/frictionless/frictionlessTasks.js.map +1 -1
  38. package/dist/tasks/puzzle/backgroundBuffer.d.ts +21 -0
  39. package/dist/tasks/puzzle/backgroundBuffer.d.ts.map +1 -0
  40. package/dist/tasks/puzzle/backgroundBuffer.js +37 -0
  41. package/dist/tasks/puzzle/backgroundBuffer.js.map +1 -0
  42. package/dist/tasks/puzzle/puzzleRenderer.d.ts +13 -0
  43. package/dist/tasks/puzzle/puzzleRenderer.d.ts.map +1 -0
  44. package/dist/tasks/puzzle/puzzleRenderer.js +75 -0
  45. package/dist/tasks/puzzle/puzzleRenderer.js.map +1 -0
  46. package/dist/tasks/spam/checkTrafficFilter.d.ts +3 -1
  47. package/dist/tasks/spam/checkTrafficFilter.d.ts.map +1 -1
  48. package/dist/tasks/spam/checkTrafficFilter.js +62 -32
  49. package/dist/tasks/spam/checkTrafficFilter.js.map +1 -1
  50. package/dist/tests/unit/api/captcha/maintenanceModeResponses.unit.test.js +8 -7
  51. package/dist/tests/unit/api/captcha/maintenanceModeResponses.unit.test.js.map +1 -1
  52. package/dist/tests/unit/api/captcha/maintenanceModeShortCircuit.unit.test.js +1 -1
  53. package/dist/tests/unit/api/captcha/maintenanceModeShortCircuit.unit.test.js.map +1 -1
  54. package/dist/tests/unit/api/captcha/trafficFilterRequestTime.unit.test.js +2 -1
  55. package/dist/tests/unit/api/captcha/trafficFilterRequestTime.unit.test.js.map +1 -1
  56. package/dist/tests/unit/tasks/dnsEvent/enrichDnsEvent.unit.test.js.map +1 -1
  57. package/dist/tests/unit/tasks/puzzle/backgroundBuffer.unit.test.d.ts +2 -0
  58. package/dist/tests/unit/tasks/puzzle/backgroundBuffer.unit.test.d.ts.map +1 -0
  59. package/dist/tests/unit/tasks/puzzle/backgroundBuffer.unit.test.js +84 -0
  60. package/dist/tests/unit/tasks/puzzle/backgroundBuffer.unit.test.js.map +1 -0
  61. package/dist/tests/unit/tasks/spam/checkTrafficFilter.unit.test.js +66 -4
  62. package/dist/tests/unit/tasks/spam/checkTrafficFilter.unit.test.js.map +1 -1
  63. package/package.json +16 -14
@@ -1,4 +1,4 @@
1
- import { CaptchaType, type IPInfoResponse, type IPInfoResult, type ITrafficCategoryPolicy, type ITrafficFilter, ResultReason } from "@prosopo/types";
1
+ import { CaptchaType, type IPInfoResponse, type IPInfoResult, type IPuzzleSettings, type ITrafficCategoryPolicy, type ITrafficFilter, ResultReason } from "@prosopo/types";
2
2
  export type TrafficBlockReason = ResultReason.VPN_BLOCKED | ResultReason.PROXY_BLOCKED | ResultReason.TOR_BLOCKED | ResultReason.ABUSER_BLOCKED | ResultReason.DATACENTER_BLOCKED | ResultReason.MOBILE_BLOCKED | ResultReason.SATELLITE_BLOCKED | ResultReason.CRAWLER_BLOCKED;
3
3
  export type TrafficCategory = "vpn" | "proxy" | "tor" | "abuser" | "datacenter" | "mobile" | "satellite" | "crawler";
4
4
  export declare const TRAFFIC_CATEGORIES: readonly TrafficCategory[];
@@ -17,12 +17,14 @@ export type TrafficCheckResult = {
17
17
  export declare const categoryToReason: (category: TrafficCategory) => TrafficBlockReason;
18
18
  export declare const isDatacenterAllowlisted: (ipInfo: IPInfoResult, allowlist: ReadonlyArray<string> | undefined) => boolean;
19
19
  export declare const isDatacenterDenylisted: (ipInfo: IPInfoResult, denylist: ReadonlyArray<string> | undefined) => boolean;
20
+ export declare const isEffectivelyDatacenter: (ipInfo: IPInfoResult, trafficFilter: Partial<ITrafficFilter>) => boolean;
20
21
  export declare const checkTrafficFilter: (ipInfo: IPInfoResponse | undefined, trafficFilter: Partial<ITrafficFilter>, extraIpInfos?: ReadonlyArray<IPInfoResponse | undefined>, dnsPathValid?: boolean) => TrafficCheckResult;
21
22
  export type ResolvedChallengePolicy = {
22
23
  captchaType?: CaptchaType;
23
24
  powDifficulty?: number;
24
25
  solvedImagesCount?: number;
25
26
  puzzleTolerance?: number;
27
+ puzzleSettings?: IPuzzleSettings;
26
28
  sourceCategories: TrafficCategory[];
27
29
  };
28
30
  export declare const resolveChallengePolicy: (matches: TrafficFilterMatch[]) => ResolvedChallengePolicy | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"checkTrafficFilter.d.ts","sourceRoot":"","sources":["../../../src/tasks/spam/checkTrafficFilter.ts"],"names":[],"mappings":"AAcA,OAAO,EACN,WAAW,EACX,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,YAAY,EAGZ,MAAM,gBAAgB,CAAC;AAExB,MAAM,MAAM,kBAAkB,GAC3B,YAAY,CAAC,WAAW,GACxB,YAAY,CAAC,aAAa,GAC1B,YAAY,CAAC,WAAW,GACxB,YAAY,CAAC,cAAc,GAC3B,YAAY,CAAC,kBAAkB,GAC/B,YAAY,CAAC,cAAc,GAC3B,YAAY,CAAC,iBAAiB,GAC9B,YAAY,CAAC,eAAe,CAAC;AAEhC,MAAM,MAAM,eAAe,GACxB,KAAK,GACL,OAAO,GACP,KAAK,GACL,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,WAAW,GACX,SAAS,CAAC;AAEb,eAAO,MAAM,kBAAkB,EAAE,SAAS,eAAe,EAS/C,CAAC;AAaX,MAAM,MAAM,kBAAkB,GAAG;IAChC,QAAQ,EAAE,eAAe,CAAC;IAC1B,MAAM,EAAE,sBAAsB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC3B;IAAE,SAAS,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,kBAAkB,EAAE,CAAA;CAAE,GACnD;IACA,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC7B,CAAC;AAEL,eAAO,MAAM,gBAAgB,aAClB,eAAe,KACvB,kBAAkD,CAAC;AAsCtD,eAAO,MAAM,uBAAuB,WAC3B,YAAY,aACT,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,KAC1C,OAAuD,CAAC;AAQ3D,eAAO,MAAM,sBAAsB,WAC1B,YAAY,YACV,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,KACzC,OAAsD,CAAC;AAiH1D,eAAO,MAAM,kBAAkB,WACtB,cAAc,GAAG,SAAS,iBACnB,OAAO,CAAC,cAAc,CAAC,iBACvB,aAAa,CAAC,cAAc,GAAG,SAAS,CAAC,iBACzC,OAAO,KACpB,kBAwBF,CAAC;AAiBF,MAAM,MAAM,uBAAuB,GAAG;IACrC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,gBAAgB,EAAE,eAAe,EAAE,CAAC;CACpC,CAAC;AASF,eAAO,MAAM,sBAAsB,YACzB,kBAAkB,EAAE,KAC3B,uBAAuB,GAAG,SA+C5B,CAAC"}
1
+ {"version":3,"file":"checkTrafficFilter.d.ts","sourceRoot":"","sources":["../../../src/tasks/spam/checkTrafficFilter.ts"],"names":[],"mappings":"AAcA,OAAO,EACN,WAAW,EACX,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,YAAY,EAGZ,MAAM,gBAAgB,CAAC;AAExB,MAAM,MAAM,kBAAkB,GAC3B,YAAY,CAAC,WAAW,GACxB,YAAY,CAAC,aAAa,GAC1B,YAAY,CAAC,WAAW,GACxB,YAAY,CAAC,cAAc,GAC3B,YAAY,CAAC,kBAAkB,GAC/B,YAAY,CAAC,cAAc,GAC3B,YAAY,CAAC,iBAAiB,GAC9B,YAAY,CAAC,eAAe,CAAC;AAEhC,MAAM,MAAM,eAAe,GACxB,KAAK,GACL,OAAO,GACP,KAAK,GACL,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,WAAW,GACX,SAAS,CAAC;AAEb,eAAO,MAAM,kBAAkB,EAAE,SAAS,eAAe,EAS/C,CAAC;AAaX,MAAM,MAAM,kBAAkB,GAAG;IAChC,QAAQ,EAAE,eAAe,CAAC;IAC1B,MAAM,EAAE,sBAAsB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC3B;IAAE,SAAS,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,kBAAkB,EAAE,CAAA;CAAE,GACnD;IACA,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC7B,CAAC;AAEL,eAAO,MAAM,gBAAgB,aAClB,eAAe,KACvB,kBAAkD,CAAC;AAgCtD,eAAO,MAAM,uBAAuB,WAC3B,YAAY,aACT,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,KAC1C,OAAuD,CAAC;AAQ3D,eAAO,MAAM,sBAAsB,WAC1B,YAAY,YACV,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,KACzC,OAAsD,CAAC;AAQ1D,eAAO,MAAM,uBAAuB,WAC3B,YAAY,iBACL,OAAO,CAAC,cAAc,CAAC,KACpC,OASF,CAAC;AAuHF,eAAO,MAAM,kBAAkB,WACtB,cAAc,GAAG,SAAS,iBACnB,OAAO,CAAC,cAAc,CAAC,iBACvB,aAAa,CAAC,cAAc,GAAG,SAAS,CAAC,iBACzC,OAAO,KACpB,kBAwBF,CAAC;AAiBF,MAAM,MAAM,uBAAuB,GAAG;IACrC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IAMzB,cAAc,CAAC,EAAE,eAAe,CAAC;IAEjC,gBAAgB,EAAE,eAAe,EAAE,CAAC;CACpC,CAAC;AASF,eAAO,MAAM,sBAAsB,YACzB,kBAAkB,EAAE,KAC3B,uBAAuB,GAAG,SAwD5B,CAAC"}
@@ -10,7 +10,6 @@ var CATEGORY_TO_REASON = {
10
10
  crawler: ResultReason.CRAWLER_BLOCKED
11
11
  };
12
12
  var categoryToReason = (category) => CATEGORY_TO_REASON[category];
13
- var isActive = (policy) => policy !== void 0;
14
13
  var matchesDatacenterNameList = (ipInfo, list) => {
15
14
  if (!list || list.length === 0) return false;
16
15
  const candidates = [];
@@ -29,6 +28,11 @@ var matchesDatacenterNameList = (ipInfo, list) => {
29
28
  };
30
29
  var isDatacenterAllowlisted = (ipInfo, allowlist) => matchesDatacenterNameList(ipInfo, allowlist);
31
30
  var isDatacenterDenylisted = (ipInfo, denylist) => matchesDatacenterNameList(ipInfo, denylist);
31
+ var isEffectivelyDatacenter = (ipInfo, trafficFilter) => {
32
+ if (!ipInfo.isDatacenter) return false;
33
+ if (isDatacenterDenylisted(ipInfo, trafficFilter.datacenterNameDenylist)) return true;
34
+ return ipInfo.providerType !== "isp" && !isDatacenterAllowlisted(ipInfo, trafficFilter.datacenterNameAllowlist);
35
+ };
32
36
  var push = (matches, category, policy) => {
33
37
  if (policy) matches.push({
34
38
  category,
@@ -38,21 +42,41 @@ var push = (matches, category, policy) => {
38
42
  var evaluateIpInfo = (ipInfo, trafficFilter, isDnsExtra = false) => {
39
43
  const matches = [];
40
44
  if (!ipInfo || !ipInfo.isValid) return matches;
41
- if (isActive(trafficFilter.vpn) && ipInfo.isVPN) push(matches, "vpn", trafficFilter.vpn);
42
- if (isActive(trafficFilter.proxy) && ipInfo.isProxy) push(matches, "proxy", trafficFilter.proxy);
43
- if (isActive(trafficFilter.tor) && ipInfo.isTor) push(matches, "tor", trafficFilter.tor);
44
- if (isActive(trafficFilter.abuser) && ipInfo.isAbuser) {
45
+ if (ipInfo.isTor) {
46
+ push(matches, "tor", trafficFilter.tor);
47
+ return matches;
48
+ }
49
+ if (ipInfo.isVPN) {
50
+ push(matches, "vpn", trafficFilter.vpn);
51
+ return matches;
52
+ }
53
+ if (ipInfo.isProxy) {
54
+ push(matches, "proxy", trafficFilter.proxy);
55
+ return matches;
56
+ }
57
+ if (isEffectivelyDatacenter(ipInfo, trafficFilter)) {
58
+ push(matches, "datacenter", trafficFilter.datacenter);
59
+ return matches;
60
+ }
61
+ if (ipInfo.isAbuser) {
45
62
  const threshold = trafficFilter.abuserScoreThreshold ?? trafficFilterAbuserScoreThresholdDefault;
46
- if (Math.max(ipInfo.abuserScore ?? 0, ipInfo.companyAbuserScore ?? 0) >= threshold) push(matches, "abuser", trafficFilter.abuser);
63
+ if (Math.max(ipInfo.abuserScore ?? 0, ipInfo.companyAbuserScore ?? 0) >= threshold) {
64
+ push(matches, "abuser", trafficFilter.abuser);
65
+ return matches;
66
+ }
47
67
  }
48
- const datacenterSuppressedByCategory = ipInfo.isVPN && !isActive(trafficFilter.vpn) || ipInfo.isProxy && !isActive(trafficFilter.proxy) || ipInfo.isTor && !isActive(trafficFilter.tor) || ipInfo.isCrawler && !isActive(trafficFilter.crawler);
49
- if (isActive(trafficFilter.datacenter) && ipInfo.isDatacenter) {
50
- if (isDatacenterDenylisted(ipInfo, trafficFilter.datacenterNameDenylist)) push(matches, "datacenter", trafficFilter.datacenter);
51
- else if (ipInfo.providerType !== "isp" && !datacenterSuppressedByCategory && !isDatacenterAllowlisted(ipInfo, trafficFilter.datacenterNameAllowlist)) push(matches, "datacenter", trafficFilter.datacenter);
68
+ if (ipInfo.isCrawler && !isDnsExtra) {
69
+ push(matches, "crawler", trafficFilter.crawler);
70
+ return matches;
71
+ }
72
+ if (ipInfo.isSatellite) {
73
+ push(matches, "satellite", trafficFilter.satellite);
74
+ return matches;
75
+ }
76
+ if (ipInfo.isMobile) {
77
+ push(matches, "mobile", trafficFilter.mobile);
78
+ return matches;
52
79
  }
53
- if (isActive(trafficFilter.mobile) && ipInfo.isMobile) push(matches, "mobile", trafficFilter.mobile);
54
- if (isActive(trafficFilter.satellite) && ipInfo.isSatellite) push(matches, "satellite", trafficFilter.satellite);
55
- if (!isDnsExtra && isActive(trafficFilter.crawler) && ipInfo.isCrawler) push(matches, "crawler", trafficFilter.crawler);
56
80
  return matches;
57
81
  };
58
82
  /**
@@ -61,26 +85,26 @@ var evaluateIpInfo = (ipInfo, trafficFilter, isDnsExtra = false) => {
61
85
  * carries the policy `action` — `block` fires at submit time; `challenge`
62
86
  * fires at request time to override captcha type + params.
63
87
  *
64
- * Cross-category rule: the datacenter category is suppressed when the IP
65
- * carries a more specific category the operator has not configured — VPN,
66
- * proxy, Tor, or crawler. All four legitimately sit on datacenter
67
- * infrastructure, so "datacenter" (a scraping rule) shouldn't catch them
68
- * out the back door.
69
- *
70
- * Extras-only rule: the crawler check is skipped on DNS extras. Public
71
- * DNS resolvers share IP space with search crawlers.
72
- *
73
- * The datacenter rule also honours `datacenterNameAllowlist`: consumer
74
- * relays route through datacenter ranges and are reported as
75
- * `is_datacenter=true` by upstream but the exiting users are real humans.
88
+ * Per-IP precedence: within a single IP, the highest-precedence flag set on
89
+ * that IP wins and is the only category that emits a match. Order (highest
90
+ * first): Tor, VPN, proxy, datacenter, abuser, crawler, satellite, mobile.
91
+ * If the operator hasn't configured a policy for that top flag, the IP
92
+ * passes cleanly — lower flags are not consulted. So an IP that's flagged
93
+ * as both VPN and proxy is only acted on if the operator has a VPN policy.
76
94
  *
77
- * The datacenter rule also short-circuits when upstream classifies the
78
- * provider as an ISP (`providerType === "isp"`). Consumer ISPs are
79
- * sometimes flagged `is_datacenter=true` upstream, but the ranges behind
80
- * those ASNs carry ordinary end-users.
95
+ * Qualifying conditions: a flag that fails its qualifier does not "own"
96
+ * the IP and evaluation falls through to the next flag. The abuser flag
97
+ * needs `abuserScore` (or `companyAbuserScore`) at or above
98
+ * `abuserScoreThreshold`; the datacenter flag needs the IP to not be an
99
+ * ISP (`providerType !== "isp"`) or to be on `datacenterNameDenylist`,
100
+ * and to not be on `datacenterNameAllowlist`; the crawler flag is skipped
101
+ * on DNS extras because public DNS resolvers share IP space with search
102
+ * crawlers.
81
103
  *
82
- * The ISP short-circuit and the allowlist are both overridden by
83
- * `datacenterNameDenylist`.
104
+ * Datacenter name lists: `datacenterNameAllowlist` lets operators opt named
105
+ * consumer relays (e.g. iCloud Private Relay) out of the datacenter rule;
106
+ * `datacenterNameDenylist` opts named providers back in even when the ISP
107
+ * heuristic would exempt them.
84
108
  *
85
109
  * When `trafficFilter.skipExtrasOnValidDnsPath` is on and the catcher
86
110
  * confirmed the DNS path matched the connection path (`pathValid: true`),
@@ -128,18 +152,24 @@ var resolveChallengePolicy = (matches) => {
128
152
  let powDifficulty;
129
153
  let solvedImagesCount;
130
154
  let puzzleTolerance;
155
+ let puzzleSettings;
131
156
  for (const m of challenges) {
132
157
  if (m.policy.powDifficulty !== void 0) powDifficulty = powDifficulty === void 0 ? m.policy.powDifficulty : Math.max(powDifficulty, m.policy.powDifficulty);
133
158
  if (m.policy.solvedImagesCount !== void 0) solvedImagesCount = solvedImagesCount === void 0 ? m.policy.solvedImagesCount : Math.max(solvedImagesCount, m.policy.solvedImagesCount);
134
159
  if (m.policy.puzzleTolerance !== void 0) puzzleTolerance = puzzleTolerance === void 0 ? m.policy.puzzleTolerance : Math.min(puzzleTolerance, m.policy.puzzleTolerance);
160
+ if (m.policy.puzzle) puzzleSettings = {
161
+ ...puzzleSettings ?? {},
162
+ ...m.policy.puzzle
163
+ };
135
164
  }
136
165
  return {
137
166
  captchaType: winningCaptchaType,
138
167
  powDifficulty,
139
168
  solvedImagesCount,
140
169
  puzzleTolerance,
170
+ puzzleSettings,
141
171
  sourceCategories: challenges.map((m) => m.category)
142
172
  };
143
173
  };
144
174
  //#endregion
145
- export { categoryToReason, checkTrafficFilter, isDatacenterAllowlisted, isDatacenterDenylisted, resolveChallengePolicy };
175
+ export { categoryToReason, checkTrafficFilter, isDatacenterAllowlisted, isDatacenterDenylisted, isEffectivelyDatacenter, resolveChallengePolicy };
@@ -1 +1 @@
1
- {"version":3,"file":"checkTrafficFilter.js","sourceRoot":"","sources":["../../../src/tasks/spam/checkTrafficFilter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkTrafficFilter.js","sourceRoot":"","sources":["../../../src/tasks/spam/checkTrafficFilter.ts"],"names":[],"mappings":"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"}
@@ -44,14 +44,15 @@ describe("maintenanceModeResponses", () => {
44
44
  });
45
45
  });
46
46
  describe("buildPuzzleMaintenanceResponse", () => {
47
- it("returns a forgiving puzzle (large tolerance) so any drop completes", () => {
48
- const r = buildPuzzleMaintenanceResponse("user-addr", "dapp-addr");
47
+ it("returns rendered imagery rather than coordinates", async () => {
48
+ const r = await buildPuzzleMaintenanceResponse("user-addr", "dapp-addr");
49
49
  expect(r[ApiParams.status]).toBe("ok");
50
- expect(r[ApiParams.tolerance]).toBeGreaterThanOrEqual(1000);
51
- expect(r[ApiParams.targetX]).toBe(100);
52
- expect(r[ApiParams.targetY]).toBe(100);
53
- expect(r[ApiParams.originX]).toBe(0);
54
- expect(r[ApiParams.originY]).toBe(0);
50
+ expect(r[ApiParams.background]).toMatch(/^data:image\/webp;base64,/);
51
+ expect(r[ApiParams.piece]).toMatch(/^data:image\/webp;base64,/);
52
+ expect(r[ApiParams.pieceSize]).toBeGreaterThan(0);
53
+ expect(JSON.stringify(r)).not.toContain("targetX");
54
+ expect(r[ApiParams.originX]).toBe(60);
55
+ expect(r[ApiParams.originY]).toBe(100);
55
56
  expect(r[ApiParams.challenge].split(POW_SEPARATOR)).toHaveLength(4);
56
57
  expect(r[ApiParams.signature][ApiParams.provider][ApiParams.challenge]).toBe("");
57
58
  });
@@ -1 +1 @@
1
- {"version":3,"file":"maintenanceModeResponses.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/api/captcha/maintenanceModeResponses.unit.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"maintenanceModeResponses.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/api/captcha/maintenanceModeResponses.unit.test.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACN,oCAAoC,EACpC,oCAAoC,EACpC,2BAA2B,EAC3B,8BAA8B,GAC9B,MAAM,qDAAqD,CAAC;AAE7D,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACzC,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;QACrD,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;YAC1E,MAAM,CAAC,GAAG,oCAAoC,CAC7C,WAAW,CAAC,GAAG,EACf,gBAAgB,CAChB,CAAC;YACF,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACvD,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrD,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;YAClE,MAAM,CAAC,GAAG,oCAAoC,CAC7C,WAAW,CAAC,MAAM,EAClB,gBAAgB,CAChB,CAAC;YAIF,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CACrC,oEAAoE,CACpE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACvD,MAAM,CAAC,GAAG,oCAAoC,CAC7C,WAAW,CAAC,KAAK,EACjB,SAAS,CACT,CAAC;YACF,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YAClD,MAAM,CAAC,GAAG,oCAAoC,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACrE,MAAM,CAAC,GAAG,oCAAoC,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACrE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;YACvE,MAAM,CAAC,GAAG,2BAA2B,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAChE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACpE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAC;YACzE,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrD,MAAM,CACL,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAC/D,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YACnC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC1B,MAAM,CAAC,GAAG,2BAA2B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAChD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACzB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,EAAE,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,CAAC,EAAE,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC/C,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,CAAC,GAAG,MAAM,8BAA8B,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACzE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;YACrE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;YAChE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YAElD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YACnD,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACpE,MAAM,CACL,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAC/D,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;QACrD,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;YACrE,MAAM,CAAC,GAAG,oCAAoC,CAC7C,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,GAAG,EAAE,CAC5B,CAAC;YACF,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;YACjE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;YACxE,MAAM,CAAC,GAAG,oCAAoC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YAG7D,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC9C,MAAM,CAAC,GAAG,oCAAoC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YAC7D,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -117,7 +117,7 @@ describe("maintenance mode short-circuit", () => {
117
117
  expect(res.json).toHaveBeenCalledTimes(1);
118
118
  const body = res.json.mock.calls[0]?.[0];
119
119
  expect(body[ApiParams.status]).toBe("ok");
120
- expect(body[ApiParams.tolerance]).toBeGreaterThanOrEqual(1000);
120
+ expect(body[ApiParams.background]).toMatch(/^data:image\/webp;base64,/);
121
121
  expect(body[ApiParams.challenge].split(POW_SEPARATOR)).toHaveLength(4);
122
122
  expect(mockedDbMethods.getClientRecord).not.toHaveBeenCalled();
123
123
  expect(mockedDbMethods.storePuzzleCaptchaRecord).not.toHaveBeenCalled();
@@ -1 +1 @@
1
- {"version":3,"file":"maintenanceModeShortCircuit.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/api/captcha/maintenanceModeShortCircuit.unit.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"maintenanceModeShortCircuit.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/api/captcha/maintenanceModeShortCircuit.unit.test.ts"],"names":[],"mappings":"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"}
@@ -73,7 +73,7 @@ describe("applyTrafficFilterAtRequestTime", () => {
73
73
  sourceCategories: ["vpn"],
74
74
  });
75
75
  });
76
- it("collapses multiple challenge matches to the strictest captchaType (image > puzzle > pow)", () => {
76
+ it("uses the top-precedence category's captchaType when several flags are set", () => {
77
77
  const verdict = applyTrafficFilterAtRequestTime(ipInfo({ isVPN: true, isProxy: true, isTor: true }), {
78
78
  vpn: {
79
79
  action: TrafficFilterAction.Challenge,
@@ -94,6 +94,7 @@ describe("applyTrafficFilterAtRequestTime", () => {
94
94
  kind: "challenge",
95
95
  captchaType: CaptchaType.image,
96
96
  solvedImagesCount: 6,
97
+ sourceCategories: ["tor"],
97
98
  });
98
99
  });
99
100
  });
@@ -1 +1 @@
1
- {"version":3,"file":"trafficFilterRequestTime.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/api/captcha/trafficFilterRequestTime.unit.test.ts"],"names":[],"mappings":"AAcA,OAAO,EAAe,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EACN,WAAW,EAIX,mBAAmB,GACnB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EACN,+BAA+B,EAC/B,+BAA+B,GAC/B,MAAM,qDAAqD,CAAC;AAG7D,MAAM,MAAM,GAAW,SAAS,CAAC,OAAO,EAAE,+BAA+B,CAAC,CAAC;AAE3E,MAAM,MAAM,GAAG,CAAC,YAAmC,EAAE,EAAgB,EAAE,CAAC,CAAC;IACxE,EAAE,EAAE,SAAS;IACb,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,KAAK;IACd,YAAY,EAAE,KAAK;IACnB,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,KAAK;IAChB,GAAG,SAAS;CACZ,CAAC,CAAC;AAEH,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAChD,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QAClE,MAAM,CACL,+BAA+B,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,CAAC,CACnE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACrD,MAAM,aAAa,GAA4B;YAC9C,GAAG,EAAE,EAAE,MAAM,EAAE,mBAAmB,CAAC,KAAK,EAAE;SAC1C,CAAC;QACF,MAAM,CACL,+BAA+B,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,aAAa,CAAC,CACxE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kGAAkG,EAAE,GAAG,EAAE;QAM3G,MAAM,CACL,+BAA+B,CAC9B,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,EAC5C,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,mBAAmB,CAAC,KAAK,EAAE,EAAE,CAC9C,CACD,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mGAAmG,EAAE,GAAG,EAAE;QAK5G,MAAM,CACL,+BAA+B,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE;YACxD,GAAG,EAAE,EAAE,MAAM,EAAE,mBAAmB,CAAC,KAAK,EAAE;SAC1C,CAAC,CACF,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QAClE,MAAM,CACL,+BAA+B,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE;YACxD,GAAG,EAAE;gBACJ,MAAM,EAAE,mBAAmB,CAAC,SAAS;gBACrC,WAAW,EAAE,WAAW,CAAC,KAAK;gBAC9B,iBAAiB,EAAE,CAAC;aACpB;SACD,CAAC,CACF,CAAC,aAAa,CAAC;YACf,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,WAAW,CAAC,KAAK;YAC9B,iBAAiB,EAAE,CAAC;YACpB,gBAAgB,EAAE,CAAC,KAAK,CAAC;SACzB,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sGAAsG,EAAE,GAAG,EAAE;QAC/G,MAAM,CACL,+BAA+B,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE;YACxD,GAAG,EAAE;gBACJ,MAAM,EAAE,mBAAmB,CAAC,SAAS;gBACrC,aAAa,EAAE,CAAC;aAChB;SACD,CAAC,CACF,CAAC,aAAa,CAAC;YACf,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,SAAS;YACtB,aAAa,EAAE,CAAC;SAChB,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yHAAyH,EAAE,GAAG,EAAE;QAKlI,MAAM,CACL,+BAA+B,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE;YACvE,GAAG,EAAE;gBACJ,MAAM,EAAE,mBAAmB,CAAC,SAAS;gBACrC,WAAW,EAAE,WAAW,CAAC,GAAG;aAC5B;YACD,KAAK,EAAE,EAAE,MAAM,EAAE,mBAAmB,CAAC,KAAK,EAAE;SAC5C,CAAC,CACF,CAAC,aAAa,CAAC;YACf,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,WAAW,CAAC,GAAG;YAC5B,gBAAgB,EAAE,CAAC,KAAK,CAAC;SACzB,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0FAA0F,EAAE,GAAG,EAAE;QACnG,MAAM,OAAO,GAAG,+BAA+B,CAC9C,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EACnD;YACC,GAAG,EAAE;gBACJ,MAAM,EAAE,mBAAmB,CAAC,SAAS;gBACrC,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,aAAa,EAAE,CAAC;aAChB;YACD,KAAK,EAAE;gBACN,MAAM,EAAE,mBAAmB,CAAC,SAAS;gBACrC,WAAW,EAAE,WAAW,CAAC,MAAM;aAC/B;YACD,GAAG,EAAE;gBACJ,MAAM,EAAE,mBAAmB,CAAC,SAAS;gBACrC,WAAW,EAAE,WAAW,CAAC,KAAK;gBAC9B,iBAAiB,EAAE,CAAC;aACpB;SACD,EACD,MAAM,CACN,CAAC;QACF,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC;YAC7B,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,WAAW,CAAC,KAAK;YAC9B,iBAAiB,EAAE,CAAC;SACpB,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,CAAC,cAAc,GAAG,CAAC,EAAgB,EAAE,CACzD,CAAC;IACA,OAAO,EAAE,KAAK;IACd,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE;QACT,OAAO,EAAE,CAAC,aAAa,CAAC;QACxB,cAAc;KACd;CAED,CAAQ,CAAC;AAEX,MAAM,2BAA2B,GAAG,GAAG,EAAE;IACxC,MAAM,UAAU,GAAG;QAClB,MAAM,EAAE,IAAI;KACiC,CAAC;IAC/C,OAAO;QACN,gBAAgB,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC;QAC/C,cAAc,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC;QAC7C,iBAAiB,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC;KAKhD,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,GAAG,EAAE;IACxB,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACb,CAAC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAyB,CAAC;IAC1E,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;AACtC,CAAC,CAAC;AAEF,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAChD,MAAM,IAAI,GAAG,kDAAkD,CAAC;IAChE,MAAM,WAAW,GAAG,EAAE,CAAC;IACvB,MAAM,iBAAiB,GAAG,MAAM,CAAC;IAEjC,EAAE,CAAC,qFAAqF,EAAE,KAAK,IAAI,EAAE;QACpG,MAAM,EAAE,GAAG,2BAA2B,EAAE,CAAC;QACzC,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,MAAM,+BAA+B,CACpD;YACC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACzB,mBAAmB,EAAE,EAAE;YACvB,YAAY,EAAE,YAAY,EAAE;YAC5B,iBAAiB;YACjB,IAAI;YACJ,MAAM,EAAE,MAAM,EAAE;YAChB,WAAW;YACX,MAAM;SACN,EACD,GAAG,CACH,CAAC;QACF,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5C,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACnD,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACjD,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kJAAkJ,EAAE,GAAG,EAAE;QAK3J,MAAM,kBAAkB,GAEN,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACnC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sGAAsG,EAAE,KAAK,IAAI,EAAE;QACrH,MAAM,EAAE,GAAG,2BAA2B,EAAE,CAAC;QACzC,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,MAAM,+BAA+B,CACpD;YACC,OAAO,EAAE;gBACR,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,WAAW,CAAC,KAAK;gBAC9B,iBAAiB,EAAE,EAAE;gBACrB,gBAAgB,EAAE,CAAC,KAAK,CAAC;aACzB;YACD,mBAAmB,EAAE,EAAE;YACvB,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;YAC7B,iBAAiB;YACjB,IAAI;YACJ,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YAC/B,WAAW;YACX,MAAM;SACN,EACD,GAAG,CACH,CAAC;QACF,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,EAAE,GAAG,2BAA2B,EAAE,CAAC;QACzC,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,EAAE,CAAC;QAC9B,MAAM,+BAA+B,CACpC;YACC,OAAO,EAAE;gBACR,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,aAAa,EAAE,CAAC;gBAChB,gBAAgB,EAAE,CAAC,OAAO,CAAC;aAC3B;YACD,mBAAmB,EAAE,EAAE;YACvB,YAAY,EAAE,YAAY,EAAE;YAC5B,iBAAiB;YACjB,IAAI;YACJ,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YACjC,WAAW;YACX,MAAM;SACN,EACD,GAAG,CACH,CAAC;QACF,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,EAAE,GAAG,2BAA2B,EAAE,CAAC;QACzC,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,EAAE,CAAC;QAC9B,MAAM,+BAA+B,CACpC;YACC,OAAO,EAAE;gBACR,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,WAAW,CAAC,MAAM;gBAC/B,eAAe,EAAE,EAAE;gBACnB,gBAAgB,EAAE,CAAC,KAAK,CAAC;aACzB;YACD,mBAAmB,EAAE,EAAE;YACvB,YAAY,EAAE,YAAY,EAAE;YAC5B,iBAAiB;YACjB,IAAI;YACJ,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YAC/B,WAAW;YACX,MAAM;SACN,EACD,GAAG,CACH,CAAC;QACF,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACjD,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0FAA0F,EAAE,KAAK,IAAI,EAAE;QACzG,MAAM,EAAE,GAAG,2BAA2B,EAAE,CAAC;QACzC,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,MAAM,+BAA+B,CACpD;YACC,OAAO,EAAE;gBACR,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,SAAS;gBACtB,aAAa,EAAE,CAAC;gBAChB,gBAAgB,EAAE,CAAC,KAAK,CAAC;aACzB;YACD,mBAAmB,EAAE,EAAE;YACvB,YAAY,EAAE,YAAY,EAAE;YAC5B,iBAAiB;YACjB,IAAI;YACJ,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YAC/B,WAAW;YACX,MAAM;SACN,EACD,GAAG,CACH,CAAC;QACF,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5C,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACnD,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACjD,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"trafficFilterRequestTime.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/api/captcha/trafficFilterRequestTime.unit.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"enrichDnsEvent.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/dnsEvent/enrichDnsEvent.unit.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"enrichDnsEvent.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/dnsEvent/enrichDnsEvent.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=backgroundBuffer.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backgroundBuffer.unit.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/puzzle/backgroundBuffer.unit.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,84 @@
1
+ import { afterEach, describe, expect, it } from "vitest";
2
+ import { createPuzzleBackgroundBuffer, getPuzzleBackgroundBuffer, initPuzzleBackgroundBuffer, resetPuzzleBackgroundBuffer, } from "../../../../tasks/puzzle/backgroundBuffer.js";
3
+ const GEOMETRY = { width: 40, height: 30, notchSize: 12 };
4
+ afterEach(() => {
5
+ resetPuzzleBackgroundBuffer();
6
+ });
7
+ describe("puzzle background buffer", () => {
8
+ it("primes to capacity so the first request pays nothing", () => {
9
+ const buffer = createPuzzleBackgroundBuffer({
10
+ capacity: 4,
11
+ geometry: GEOMETRY,
12
+ });
13
+ expect(buffer.depth()).toBe(4);
14
+ buffer.stop();
15
+ });
16
+ it("never hands the same background out twice", () => {
17
+ const buffer = createPuzzleBackgroundBuffer({
18
+ capacity: 6,
19
+ geometry: GEOMETRY,
20
+ refillIntervalMs: 1_000_000,
21
+ });
22
+ const seen = new Set();
23
+ for (let i = 0; i < 6; i++) {
24
+ const image = buffer.take();
25
+ expect(image).not.toBeNull();
26
+ if (!image)
27
+ throw new Error("unreachable");
28
+ const digest = image.data.toString("base64");
29
+ expect(seen.has(digest)).toBe(false);
30
+ seen.add(digest);
31
+ }
32
+ expect(seen.size).toBe(6);
33
+ buffer.stop();
34
+ });
35
+ it("drains as it is consumed", () => {
36
+ const buffer = createPuzzleBackgroundBuffer({
37
+ capacity: 3,
38
+ geometry: GEOMETRY,
39
+ refillIntervalMs: 1_000_000,
40
+ });
41
+ buffer.take();
42
+ expect(buffer.depth()).toBe(2);
43
+ buffer.take();
44
+ buffer.take();
45
+ expect(buffer.depth()).toBe(0);
46
+ buffer.stop();
47
+ });
48
+ it("still serves a background when it has run dry, and counts the starvation", () => {
49
+ const buffer = createPuzzleBackgroundBuffer({
50
+ capacity: 1,
51
+ geometry: GEOMETRY,
52
+ refillIntervalMs: 1_000_000,
53
+ });
54
+ buffer.take();
55
+ expect(buffer.starvations()).toBe(0);
56
+ const image = buffer.take();
57
+ expect(image).not.toBeNull();
58
+ expect(buffer.starvations()).toBe(1);
59
+ buffer.stop();
60
+ });
61
+ it("exposes a process-wide buffer only once initialised", () => {
62
+ expect(getPuzzleBackgroundBuffer()).toBeNull();
63
+ const buffer = initPuzzleBackgroundBuffer({
64
+ capacity: 2,
65
+ geometry: GEOMETRY,
66
+ });
67
+ expect(getPuzzleBackgroundBuffer()).toBe(buffer);
68
+ resetPuzzleBackgroundBuffer();
69
+ expect(getPuzzleBackgroundBuffer()).toBeNull();
70
+ });
71
+ it("replaces the previous buffer on re-init", () => {
72
+ const first = initPuzzleBackgroundBuffer({
73
+ capacity: 2,
74
+ geometry: GEOMETRY,
75
+ });
76
+ const second = initPuzzleBackgroundBuffer({
77
+ capacity: 2,
78
+ geometry: GEOMETRY,
79
+ });
80
+ expect(second).not.toBe(first);
81
+ expect(getPuzzleBackgroundBuffer()).toBe(second);
82
+ });
83
+ });
84
+ //# sourceMappingURL=backgroundBuffer.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backgroundBuffer.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/puzzle/backgroundBuffer.unit.test.ts"],"names":[],"mappings":"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"}
@@ -101,9 +101,12 @@ describe("checkTrafficFilter", () => {
101
101
  const result = checkTrafficFilter(baseInfo({ isDatacenter: true, isTor: true }), { ...allBlocked, tor: undefined });
102
102
  expect(result).toMatchObject({ isBlocked: false });
103
103
  });
104
- it("does not block crawler-on-datacenter IPs when blockDatacenter is on but blockCrawler is off", () => {
104
+ it("blocks crawler-on-datacenter IPs as datacenter even when crawler policy is off", () => {
105
105
  const result = checkTrafficFilter(baseInfo({ isDatacenter: true, isCrawler: true }), { ...allBlocked, crawler: undefined });
106
- expect(result).toMatchObject({ isBlocked: false });
106
+ expect(result).toMatchObject({
107
+ isBlocked: true,
108
+ reason: "API.DATACENTER_BLOCKED",
109
+ });
107
110
  });
108
111
  it("still blocks raw datacenter (non-VPN) IPs when blockDatacenter is on and blockVpn is off", () => {
109
112
  const result = checkTrafficFilter(baseInfo({ isDatacenter: true, isVPN: false }), { ...allBlocked, vpn: undefined });
@@ -281,7 +284,7 @@ describe("checkTrafficFilter", () => {
281
284
  ]);
282
285
  expect(result).toMatchObject({ isBlocked: false });
283
286
  });
284
- it("applies crawler-datacenter suppression to extra IPs when blockCrawler is off", () => {
287
+ it("blocks crawler-on-datacenter extras as datacenter even when crawler policy is off", () => {
285
288
  const noCrawlerBlock = {
286
289
  ...allBlocked,
287
290
  crawler: undefined,
@@ -293,7 +296,10 @@ describe("checkTrafficFilter", () => {
293
296
  isDatacenter: true,
294
297
  }),
295
298
  ]);
296
- expect(result).toMatchObject({ isBlocked: false });
299
+ expect(result).toMatchObject({
300
+ isBlocked: true,
301
+ reason: "API.DATACENTER_BLOCKED",
302
+ });
297
303
  });
298
304
  });
299
305
  describe("datacenterNameAllowlist", () => {
@@ -599,6 +605,62 @@ describe("checkTrafficFilter", () => {
599
605
  });
600
606
  });
601
607
  });
608
+ describe("per-IP precedence", () => {
609
+ it("picks Tor over every other flag when all are set", () => {
610
+ const result = checkTrafficFilter(baseInfo({
611
+ isTor: true,
612
+ isVPN: true,
613
+ isProxy: true,
614
+ isDatacenter: true,
615
+ isAbuser: true,
616
+ isCrawler: true,
617
+ isSatellite: true,
618
+ isMobile: true,
619
+ }), allBlocked);
620
+ expect(result).toMatchObject({
621
+ isBlocked: true,
622
+ reason: "API.TOR_BLOCKED",
623
+ });
624
+ });
625
+ it("does not block a VPN+proxy IP when only the proxy policy is set", () => {
626
+ const result = checkTrafficFilter(baseInfo({ isVPN: true, isProxy: true }), { ...allBlocked, vpn: undefined });
627
+ expect(result).toMatchObject({ isBlocked: false });
628
+ });
629
+ it("blocks a datacenter+abuser IP as datacenter (datacenter outranks abuser)", () => {
630
+ const result = checkTrafficFilter(baseInfo({
631
+ isDatacenter: true,
632
+ isAbuser: true,
633
+ abuserScore: 1,
634
+ }), allBlocked);
635
+ expect(result).toMatchObject({
636
+ isBlocked: true,
637
+ reason: "API.DATACENTER_BLOCKED",
638
+ });
639
+ });
640
+ it("falls through when the top flag disqualifies itself (abuser score below threshold)", () => {
641
+ const result = checkTrafficFilter(baseInfo({
642
+ isAbuser: true,
643
+ abuserScore: 0.01,
644
+ companyAbuserScore: 0.01,
645
+ isMobile: true,
646
+ }), { ...allBlocked, abuserScoreThreshold: 0.5 });
647
+ expect(result).toMatchObject({
648
+ isBlocked: true,
649
+ reason: "API.MOBILE_BLOCKED",
650
+ });
651
+ });
652
+ it("falls through when the top flag disqualifies itself (datacenter suppressed by ISP heuristic)", () => {
653
+ const result = checkTrafficFilter(baseInfo({
654
+ isDatacenter: true,
655
+ providerType: "isp",
656
+ isMobile: true,
657
+ }), allBlocked);
658
+ expect(result).toMatchObject({
659
+ isBlocked: true,
660
+ reason: "API.MOBILE_BLOCKED",
661
+ });
662
+ });
663
+ });
602
664
  describe("skipExtrasOnValidDnsPath", () => {
603
665
  it("skips the extras evaluation when the catcher confirmed a valid DNS path and the setting is on", () => {
604
666
  const result = checkTrafficFilter(baseInfo({ ip: "192.0.2.1" }), { ...allBlocked, skipExtrasOnValidDnsPath: true }, [