@prosopo/provider 5.19.3 → 5.19.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 (47) hide show
  1. package/.turbo/turbo-build$colon$cjs.log +9 -8
  2. package/.turbo/turbo-build$colon$tsc.log +28 -28
  3. package/.turbo/turbo-build.log +9 -8
  4. package/CHANGELOG.md +32 -0
  5. package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.d.ts.map +1 -1
  6. package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js +10 -2
  7. package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js.map +1 -1
  8. package/dist/api/captcha/getPuzzleCaptchaChallenge.d.ts +3 -0
  9. package/dist/api/captcha/getPuzzleCaptchaChallenge.d.ts.map +1 -1
  10. package/dist/api/captcha/getPuzzleCaptchaChallenge.js +23 -5
  11. package/dist/api/captcha/getPuzzleCaptchaChallenge.js.map +1 -1
  12. package/dist/api/captcha/submitPoWCaptchaSolution.d.ts.map +1 -1
  13. package/dist/api/captcha/submitPoWCaptchaSolution.js +12 -2
  14. package/dist/api/captcha/submitPoWCaptchaSolution.js.map +1 -1
  15. package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/handler.cjs +10 -2
  16. package/dist/cjs/api/captcha/getPuzzleCaptchaChallenge.cjs +22 -3
  17. package/dist/cjs/api/captcha/submitPoWCaptchaSolution.cjs +12 -2
  18. package/dist/cjs/tasks/frictionless/frictionlessTasks.cjs +1 -1
  19. package/dist/cjs/tasks/puzzle/puzzleRenderer.cjs +17 -8
  20. package/dist/cjs/utils/devicePlatform.cjs +9 -5
  21. package/dist/cjs/utils/mobileSignals.cjs +69 -0
  22. package/dist/tasks/frictionless/frictionlessTasks.d.ts.map +1 -1
  23. package/dist/tasks/frictionless/frictionlessTasks.js +1 -1
  24. package/dist/tasks/frictionless/frictionlessTasks.js.map +1 -1
  25. package/dist/tasks/puzzle/puzzleRenderer.d.ts +8 -1
  26. package/dist/tasks/puzzle/puzzleRenderer.d.ts.map +1 -1
  27. package/dist/tasks/puzzle/puzzleRenderer.js +16 -8
  28. package/dist/tasks/puzzle/puzzleRenderer.js.map +1 -1
  29. package/dist/tests/unit/api/captcha/puzzleTouchFloors.unit.test.d.ts +2 -0
  30. package/dist/tests/unit/api/captcha/puzzleTouchFloors.unit.test.d.ts.map +1 -0
  31. package/dist/tests/unit/api/captcha/puzzleTouchFloors.unit.test.js +210 -0
  32. package/dist/tests/unit/api/captcha/puzzleTouchFloors.unit.test.js.map +1 -0
  33. package/dist/tests/unit/utils/devicePlatform.unit.test.js +9 -8
  34. package/dist/tests/unit/utils/devicePlatform.unit.test.js.map +1 -1
  35. package/dist/tests/unit/utils/mobileSignals.unit.test.d.ts +2 -0
  36. package/dist/tests/unit/utils/mobileSignals.unit.test.d.ts.map +1 -0
  37. package/dist/tests/unit/utils/mobileSignals.unit.test.js +161 -0
  38. package/dist/tests/unit/utils/mobileSignals.unit.test.js.map +1 -0
  39. package/dist/utils/devicePlatform.d.ts +3 -3
  40. package/dist/utils/devicePlatform.d.ts.map +1 -1
  41. package/dist/utils/devicePlatform.js +9 -5
  42. package/dist/utils/devicePlatform.js.map +1 -1
  43. package/dist/utils/mobileSignals.d.ts +32 -0
  44. package/dist/utils/mobileSignals.d.ts.map +1 -0
  45. package/dist/utils/mobileSignals.js +68 -0
  46. package/dist/utils/mobileSignals.js.map +1 -0
  47. package/package.json +2 -2
@@ -60,7 +60,7 @@ ViteCommonJSConfig: .
60
60
  vite v8.1.5 building ssr environment for production...
61
61
  Bundle build started
62
62
  
63
- ✓ 136 modules transformed.
63
+ ✓ 137 modules transformed.
64
64
  rendering chunks...
65
65
  computing gzip size...
66
66
  dist/cjs/tasks/index.cjs 0.08 kB │ gzip: 0.07 kB
@@ -116,7 +116,7 @@ dist/cjs/tasks/audioAlternative.cjs 1
116
116
  dist/cjs/schedulers/updateSpamEmailDomains.cjs 1.64 kB │ gzip: 0.62 kB
117
117
  dist/cjs/utils/honeypot/encoders.cjs 1.66 kB │ gzip: 0.67 kB
118
118
  dist/cjs/api/admin/apiReplaceDetectorPoolEndpoint.cjs 1.67 kB │ gzip: 0.71 kB
119
- dist/cjs/utils/devicePlatform.cjs 1.72 kB │ gzip: 0.91 kB
119
+ dist/cjs/utils/devicePlatform.cjs 1.71 kB │ gzip: 0.89 kB
120
120
  dist/cjs/api/admin/apiGetSessionEndpoint.cjs 1.75 kB │ gzip: 0.82 kB
121
121
  dist/cjs/api/ja4Middleware.cjs 1.76 kB │ gzip: 0.79 kB
122
122
  dist/cjs/api/adminAuthOptions.cjs 1.77 kB │ gzip: 0.82 kB
@@ -140,6 +140,7 @@ dist/cjs/api/captcha/sealedAssetsResolver.cjs 2
140
140
  dist/cjs/tasks/audioCaptcha/audioTasks.cjs 2.44 kB │ gzip: 0.86 kB
141
141
  dist/cjs/api/captcha/interactiveCaptchaSolution.cjs 2.53 kB │ gzip: 0.91 kB
142
142
  dist/cjs/api/captcha/getIconOrderCaptchaChallenge.cjs 2.55 kB │ gzip: 0.81 kB
143
+ dist/cjs/utils/mobileSignals.cjs 2.65 kB │ gzip: 0.98 kB
143
144
  dist/cjs/utils/dns.cjs 2.66 kB │ gzip: 1.02 kB
144
145
  dist/cjs/api/forwardVerify.cjs 2.66 kB │ gzip: 1.12 kB
145
146
  dist/cjs/tasks/puzzle/puzzleDifficulty.cjs 2.66 kB │ gzip: 1.10 kB
@@ -162,18 +163,18 @@ dist/cjs/services/ipComparison.cjs 4
162
163
  dist/cjs/compositeIpAddress.cjs 4.11 kB │ gzip: 1.69 kB
163
164
  dist/cjs/api/admin/apiToggleMaintenanceModeEndpoint.cjs 4.12 kB │ gzip: 1.48 kB
164
165
  dist/cjs/tasks/spam/checkSpamEmail.cjs 4.14 kB │ gzip: 1.14 kB
165
- dist/cjs/api/captcha/getPuzzleCaptchaChallenge.cjs 4.16 kB │ gzip: 1.25 kB
166
166
  dist/cjs/api/cpuProfiler.cjs 4.21 kB │ gzip: 1.78 kB
167
167
  dist/cjs/tasks/tasks.cjs 4.35 kB │ gzip: 1.13 kB
168
- dist/cjs/tasks/puzzle/puzzleRenderer.cjs 4.38 kB │ gzip: 1.56 kB
169
168
  dist/cjs/api/hardBlockVerdictCache.cjs 4.39 kB │ gzip: 1.74 kB
170
169
  dist/cjs/api/captcha/trafficFilterRequestTime.cjs 4.41 kB │ gzip: 1.58 kB
171
170
  dist/cjs/api/captcha/maintenanceModeResponses.cjs 4.53 kB │ gzip: 0.92 kB
171
+ dist/cjs/tasks/puzzle/puzzleRenderer.cjs 4.56 kB │ gzip: 1.60 kB
172
172
  dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/accessPolicy.cjs 4.56 kB │ gzip: 1.07 kB
173
173
  dist/cjs/pairs.cjs 4.64 kB │ gzip: 1.61 kB
174
174
  dist/cjs/tasks/captchaTypeSelection.cjs 4.75 kB │ gzip: 1.75 kB
175
175
  dist/cjs/tasks/dnsEvent/enrichDnsEvent.cjs 4.93 kB │ gzip: 1.78 kB
176
176
  dist/cjs/index.cjs 5.09 kB │ gzip: 1.06 kB
177
+ dist/cjs/api/captcha/getPuzzleCaptchaChallenge.cjs 5.38 kB │ gzip: 1.60 kB
177
178
  dist/cjs/tasks/detection/decoderPool.cjs 5.47 kB │ gzip: 2.06 kB
178
179
  dist/cjs/api/captcha.cjs 5.63 kB │ gzip: 1.52 kB
179
180
  dist/cjs/util/usageCounters.cjs 5.72 kB │ gzip: 2.03 kB
@@ -184,7 +185,7 @@ dist/cjs/api/healthzGeo.cjs 7
184
185
  dist/cjs/api/captcha/getImageCaptchaChallenge.cjs 7.75 kB │ gzip: 2.15 kB
185
186
  dist/cjs/tasks/spam/checkTrafficFilter.cjs 8.86 kB │ gzip: 2.87 kB
186
187
  dist/cjs/tasks/detection/bundlePool.cjs 9.29 kB │ gzip: 3.38 kB
187
- dist/cjs/api/captcha/submitPoWCaptchaSolution.cjs 9.33 kB │ gzip: 2.76 kB
188
+ dist/cjs/api/captcha/submitPoWCaptchaSolution.cjs 9.98 kB │ gzip: 2.88 kB
188
189
  dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.cjs 10.33 kB │ gzip: 1.82 kB
189
190
  dist/cjs/api/startProviderApi.cjs 12.23 kB │ gzip: 3.89 kB
190
191
  dist/cjs/tasks/client/clientTasks.cjs 12.31 kB │ gzip: 3.23 kB
@@ -194,13 +195,13 @@ dist/cjs/api/blacklistRequestInspector.cjs 13
194
195
  dist/cjs/api/metrics.cjs 13.94 kB │ gzip: 4.32 kB
195
196
  dist/cjs/tasks/interactiveCaptcha/interactiveCaptchaManager.cjs 19.37 kB │ gzip: 4.90 kB
196
197
  dist/cjs/api/verify.cjs 20.80 kB │ gzip: 3.69 kB
197
- dist/cjs/tasks/frictionless/frictionlessTasks.cjs 21.33 kB │ gzip: 5.59 kB
198
- dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/handler.cjs 23.38 kB │ gzip: 5.27 kB
198
+ dist/cjs/tasks/frictionless/frictionlessTasks.cjs 21.34 kB │ gzip: 5.59 kB
199
+ dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/handler.cjs 23.58 kB │ gzip: 5.31 kB
199
200
  dist/cjs/tasks/powCaptcha/powTasks.cjs 25.94 kB │ gzip: 6.23 kB
200
201
  dist/cjs/tasks/captchaManager.cjs 26.25 kB │ gzip: 7.65 kB
201
202
  dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs 28.74 kB │ gzip: 6.51 kB
202
203
 
203
- ✓ built in 125ms
204
+ ✓ built in 156ms
204
205
  [copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodeBehavior.js to /home/runner/work/captcha/captcha/packages/provider/dist/cjs/tasks/detection/decodeBehavior.js
205
206
  [copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodePayload.js to /home/runner/work/captcha/captcha/packages/provider/dist/cjs/tasks/detection/decodePayload.js
206
207
  [copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodeSimd.js to /home/runner/work/captcha/captcha/packages/provider/dist/cjs/tasks/detection/decodeSimd.js
@@ -1,5 +1,5 @@
1
1
  $ tsc --build --verbose
2
- 2:44:16 PM - Projects in this build:
2
+ 1:10:44 PM - Projects in this build:
3
3
  * ../../dev/config/tsconfig.json
4
4
  * ../util/tsconfig.json
5
5
  * ../locale/tsconfig.json
@@ -27,57 +27,57 @@ $ tsc --build --verbose
27
27
  * ../web-bot-auth/tsconfig.json
28
28
  * tsconfig.json
29
29
 
30
- 2:44:16 PM - Project '../../dev/config/tsconfig.json' is up to date because newest input '../../dev/config/src/webpack/webpack.config.ts' is older than output '../../dev/config/tsconfig.tsbuildinfo'
30
+ 1:10:44 PM - Project '../../dev/config/tsconfig.json' is up to date because newest input '../../dev/config/src/webpack/webpack.config.ts' is older than output '../../dev/config/tsconfig.tsbuildinfo'
31
31
 
32
- 2:44:16 PM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/url.ts' is older than output '../util/tsconfig.tsbuildinfo'
32
+ 1:10:44 PM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/url.ts' is older than output '../util/tsconfig.tsbuildinfo'
33
33
 
34
- 2:44:16 PM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/process.ts' is older than output '../locale/tsconfig.tsbuildinfo'
34
+ 1:10:44 PM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/translationKey.ts' is older than output '../locale/tsconfig.tsbuildinfo'
35
35
 
36
- 2:44:16 PM - Project '../util-crypto/tsconfig.json' is up to date because newest input '../util-crypto/src/types.ts' is older than output '../util-crypto/tsconfig.tsbuildinfo'
36
+ 1:10:44 PM - Project '../util-crypto/tsconfig.json' is up to date because newest input '../util-crypto/src/types.ts' is older than output '../util-crypto/tsconfig.tsbuildinfo'
37
37
 
38
- 2:44:16 PM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/types.test-d.ts' is older than output '../types/tsconfig.tsbuildinfo'
38
+ 1:10:44 PM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/types.test-d.ts' is older than output '../types/tsconfig.tsbuildinfo'
39
39
 
40
- 2:44:16 PM - Project '../api/tsconfig.json' is up to date because newest input '../api/src/tests/apiHarness.ts' is older than output '../api/tsconfig.tsbuildinfo'
40
+ 1:10:44 PM - Project '../api/tsconfig.json' is up to date because newest input '../api/src/index.ts' is older than output '../api/tsconfig.tsbuildinfo'
41
41
 
42
- 2:44:16 PM - Project '../logger/tsconfig.json' is up to date because newest input '../logger/src/index.ts' is older than output '../logger/tsconfig.tsbuildinfo'
42
+ 1:10:44 PM - Project '../logger/tsconfig.json' is up to date because newest input '../logger/src/tests/loggerBrowser.unit.test.ts' is older than output '../logger/tsconfig.tsbuildinfo'
43
43
 
44
- 2:44:16 PM - Project '../api-route/tsconfig.json' is up to date because newest input '../api-route/src/apiRoutes.ts' is older than output '../api-route/tsconfig.tsbuildinfo'
44
+ 1:10:44 PM - Project '../api-route/tsconfig.json' is up to date because newest input '../api-route/src/tests/apiRoute.unit.test.ts' is older than output '../api-route/tsconfig.tsbuildinfo'
45
45
 
46
- 2:44:16 PM - Project '../common/tsconfig.json' is up to date because newest input '../common/src/index.ts' is older than output '../common/tsconfig.tsbuildinfo'
46
+ 1:10:44 PM - Project '../common/tsconfig.json' is up to date because newest input '../common/src/index.ts' is older than output '../common/tsconfig.tsbuildinfo'
47
47
 
48
- 2:44:16 PM - Project '../ipinfo/tsconfig.json' is up to date because newest input '../ipinfo/src/IpInfoService.ts' is older than output '../ipinfo/tsconfig.tsbuildinfo'
48
+ 1:10:44 PM - Project '../ipinfo/tsconfig.json' is up to date because newest input '../ipinfo/src/IpInfoService.ts' is older than output '../ipinfo/tsconfig.tsbuildinfo'
49
49
 
50
- 2:44:16 PM - Project '../redis-client/tsconfig.json' is up to date because newest input '../redis-client/src/index.ts' is older than output '../redis-client/tsconfig.tsbuildinfo'
50
+ 1:10:44 PM - Project '../redis-client/tsconfig.json' is up to date because newest input '../redis-client/src/redisClient.ts' is older than output '../redis-client/tsconfig.tsbuildinfo'
51
51
 
52
- 2:44:16 PM - Project '../user-access-policy/tsconfig.json' is up to date because newest input '../user-access-policy/src/transformRule.ts' is older than output '../user-access-policy/tsconfig.tsbuildinfo'
52
+ 1:10:44 PM - Project '../user-access-policy/tsconfig.json' is up to date because newest input '../user-access-policy/src/ruleRecord.ts' is older than output '../user-access-policy/tsconfig.tsbuildinfo'
53
53
 
54
- 2:44:16 PM - Project '../types-database/tsconfig.json' is up to date because newest input '../types-database/src/index.ts' is older than output '../types-database/tsconfig.tsbuildinfo'
54
+ 1:10:45 PM - Project '../types-database/tsconfig.json' is up to date because newest input '../types-database/src/index.ts' is older than output '../types-database/tsconfig.tsbuildinfo'
55
55
 
56
- 2:44:16 PM - Project '../database/tsconfig.json' is up to date because newest input '../database/src/tests/mongoGlobalSetup.ts' is older than output '../database/tsconfig.tsbuildinfo'
56
+ 1:10:45 PM - Project '../database/tsconfig.json' is up to date because newest input '../database/src/tests/unit/captchaLabel.unit.test.ts' is older than output '../database/tsconfig.tsbuildinfo'
57
57
 
58
- 2:44:16 PM - Project '../keyring/tsconfig.json' is up to date because newest input '../keyring/src/keyring/keyring.test.ts' is older than output '../keyring/tsconfig.tsbuildinfo'
58
+ 1:10:45 PM - Project '../keyring/tsconfig.json' is up to date because newest input '../keyring/src/index.ts' is older than output '../keyring/tsconfig.tsbuildinfo'
59
59
 
60
- 2:44:16 PM - Project '../types-env/tsconfig.json' is up to date because newest input '../types-env/src/env.ts' is older than output '../types-env/tsconfig.tsbuildinfo'
60
+ 1:10:45 PM - Project '../types-env/tsconfig.json' is up to date because newest input '../types-env/src/tests/typesEnv.test-d.ts' is older than output '../types-env/tsconfig.tsbuildinfo'
61
61
 
62
- 2:44:16 PM - Project '../env/tsconfig.json' is up to date because newest input '../env/src/tests/env.maintenance.unit.test.ts' is older than output '../env/tsconfig.tsbuildinfo'
62
+ 1:10:45 PM - Project '../env/tsconfig.json' is up to date because newest input '../env/src/env.ts' is older than output '../env/tsconfig.tsbuildinfo'
63
63
 
64
- 2:44:16 PM - Project '../api-express-router/tsconfig.json' is up to date because newest input '../api-express-router/src/tests/unit/apiExpressDefaultEndpointAdapter.unit.test.ts' is older than output '../api-express-router/tsconfig.tsbuildinfo'
64
+ 1:10:45 PM - Project '../api-express-router/tsconfig.json' is up to date because newest input '../api-express-router/src/errorHandler.ts' is older than output '../api-express-router/tsconfig.tsbuildinfo'
65
65
 
66
- 2:44:16 PM - Project '../puzzle-assets/tsconfig.json' is up to date because newest input '../puzzle-assets/src/background.ts' is older than output '../puzzle-assets/tsconfig.tsbuildinfo'
66
+ 1:10:45 PM - Project '../puzzle-assets/tsconfig.json' is up to date because newest input '../puzzle-assets/src/browser.ts' is older than output '../puzzle-assets/tsconfig.tsbuildinfo'
67
67
 
68
- 2:44:16 PM - Project '../audio-assets/tsconfig.json' is up to date because newest input '../audio-assets/src/distort.ts' is older than output '../audio-assets/tsconfig.tsbuildinfo'
68
+ 1:10:45 PM - Project '../audio-assets/tsconfig.json' is up to date because newest input '../audio-assets/src/distort.ts' is older than output '../audio-assets/tsconfig.tsbuildinfo'
69
69
 
70
- 2:44:16 PM - Project '../captcha-severity/tsconfig.json' is up to date because newest input '../captcha-severity/src/index.test.ts' is older than output '../captcha-severity/tsconfig.tsbuildinfo'
70
+ 1:10:45 PM - Project '../captcha-severity/tsconfig.json' is up to date because newest input '../captcha-severity/src/index.ts' is older than output '../captcha-severity/tsconfig.tsbuildinfo'
71
71
 
72
- 2:44:16 PM - Project '../datasets/tsconfig.json' is up to date because newest input '../datasets/src/tests/captcha.unit.test.ts' is older than output '../datasets/tsconfig.tsbuildinfo'
72
+ 1:10:45 PM - Project '../datasets/tsconfig.json' is up to date because newest input '../datasets/src/index.ts' is older than output '../datasets/tsconfig.tsbuildinfo'
73
73
 
74
- 2:44:16 PM - Project '../icon-order-assets/tsconfig.json' is up to date because newest input '../icon-order-assets/src/background.ts' is older than output '../icon-order-assets/tsconfig.tsbuildinfo'
74
+ 1:10:45 PM - Project '../icon-order-assets/tsconfig.json' is up to date because newest input '../icon-order-assets/src/background.ts' is older than output '../icon-order-assets/tsconfig.tsbuildinfo'
75
75
 
76
- 2:44:16 PM - Project '../load-balancer/tsconfig.json' is up to date because newest input '../load-balancer/src/balancer.ts' is older than output '../load-balancer/tsconfig.tsbuildinfo'
76
+ 1:10:45 PM - Project '../load-balancer/tsconfig.json' is up to date because newest input '../load-balancer/src/tests/productionProviderList.unit.test.ts' is older than output '../load-balancer/tsconfig.tsbuildinfo'
77
77
 
78
- 2:44:16 PM - Project '../web-bot-auth/tsconfig.json' is up to date because newest input '../web-bot-auth/src/index.ts' is older than output '../web-bot-auth/tsconfig.tsbuildinfo'
78
+ 1:10:45 PM - Project '../web-bot-auth/tsconfig.json' is up to date because newest input '../web-bot-auth/src/index.ts' is older than output '../web-bot-auth/tsconfig.tsbuildinfo'
79
79
 
80
- 2:44:16 PM - Project 'tsconfig.json' is out of date because output file 'tsconfig.tsbuildinfo' does not exist
80
+ 1:10:45 PM - Project 'tsconfig.json' is out of date because output file 'tsconfig.tsbuildinfo' does not exist
81
81
 
82
- 2:44:16 PM - Building project '/home/runner/work/captcha/captcha/packages/provider/tsconfig.json'...
82
+ 1:10:45 PM - Building project '/home/runner/work/captcha/captcha/packages/provider/tsconfig.json'...
83
83
 
@@ -61,7 +61,7 @@ ViteEsmConfig: .
61
61
  vite v8.1.5 building ssr environment for production...
62
62
  Bundle build started
63
63
  
64
- ✓ 136 modules transformed.
64
+ ✓ 137 modules transformed.
65
65
  rendering chunks...
66
66
  computing gzip size...
67
67
  dist/_virtual/_rolldown/runtime.js 0.04 kB │ gzip: 0.06 kB
@@ -118,10 +118,10 @@ dist/schedulers/updateSpamEmailDomains.js 1.52 k
118
118
  dist/api/admin/apiReplaceDetectorPoolEndpoint.js 1.57 kB │ gzip: 0.68 kB
119
119
  dist/api/ja4Middleware.js 1.59 kB │ gzip: 0.75 kB
120
120
  dist/utils/honeypot/encoders.js 1.62 kB │ gzip: 0.67 kB
121
+ dist/utils/devicePlatform.js 1.64 kB │ gzip: 0.87 kB
121
122
  dist/api/admin/apiGetSessionEndpoint.js 1.66 kB │ gzip: 0.80 kB
122
123
  dist/api/adminAuthOptions.js 1.67 kB │ gzip: 0.79 kB
123
124
  dist/tasks/imgCaptcha/imgCaptchaTasksUtils.js 1.67 kB │ gzip: 0.74 kB
124
- dist/utils/devicePlatform.js 1.68 kB │ gzip: 0.90 kB
125
125
  dist/api/admin/apiUpdateDecisionMachineEndpoint.js 1.68 kB │ gzip: 0.58 kB
126
126
  dist/utils/honeypot/phraseBank.js 1.69 kB │ gzip: 0.84 kB
127
127
  dist/api/handshakeTimingMiddleware.js 1.75 kB │ gzip: 0.69 kB
@@ -147,6 +147,7 @@ dist/api/captcha/checkSpamEmail.js 2.47 k
147
147
  dist/tasks/puzzle/puzzleDifficulty.js 2.50 kB │ gzip: 1.09 kB
148
148
  dist/api/forwardVerify.js 2.59 kB │ gzip: 1.10 kB
149
149
  dist/tasks/iconOrderCaptcha/iconOrderTasks.js 2.59 kB │ gzip: 0.98 kB
150
+ dist/utils/mobileSignals.js 2.60 kB │ gzip: 0.97 kB
150
151
  dist/api/captcha/submitImageCaptchaSolution.js 2.69 kB │ gzip: 1.03 kB
151
152
  dist/tasks/frictionless/ipMatch.js 2.72 kB │ gzip: 1.34 kB
152
153
  dist/api/admin/apiAdminRoutesProvider.js 2.78 kB │ gzip: 0.55 kB
@@ -160,21 +161,21 @@ dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.js 3.51 k
160
161
  dist/api/domainMiddleware.js 3.61 kB │ gzip: 1.24 kB
161
162
  dist/utils/tarpitPadding.js 3.67 kB │ gzip: 1.51 kB
162
163
  dist/tasks/puzzleCaptcha/puzzleTasks.js 3.67 kB │ gzip: 1.18 kB
163
- dist/api/captcha/getPuzzleCaptchaChallenge.js 3.79 kB │ gzip: 1.22 kB
164
164
  dist/tasks/spam/evaluateEmailSpamRules.js 3.84 kB │ gzip: 1.59 kB
165
165
  dist/api/admin/apiToggleMaintenanceModeEndpoint.js 3.85 kB │ gzip: 1.44 kB
166
166
  dist/compositeIpAddress.js 3.87 kB │ gzip: 1.66 kB
167
167
  dist/tasks/tasks.js 3.93 kB │ gzip: 1.07 kB
168
- dist/tasks/puzzle/puzzleRenderer.js 4.02 kB │ gzip: 1.53 kB
169
168
  dist/services/ipComparison.js 4.04 kB │ gzip: 1.21 kB
170
169
  dist/tasks/spam/checkSpamEmail.js 4.12 kB │ gzip: 1.12 kB
171
170
  dist/api/cpuProfiler.js 4.12 kB │ gzip: 1.77 kB
171
+ dist/tasks/puzzle/puzzleRenderer.js 4.16 kB │ gzip: 1.56 kB
172
172
  dist/api/captcha/trafficFilterRequestTime.js 4.20 kB │ gzip: 1.56 kB
173
173
  dist/api/hardBlockVerdictCache.js 4.26 kB │ gzip: 1.72 kB
174
174
  dist/pairs.js 4.27 kB │ gzip: 1.57 kB
175
175
  dist/tasks/captchaTypeSelection.js 4.30 kB │ gzip: 1.72 kB
176
176
  dist/api/captcha/getFrictionlessCaptchaChallenge/accessPolicy.js 4.35 kB │ gzip: 1.07 kB
177
177
  dist/tasks/dnsEvent/enrichDnsEvent.js 4.79 kB │ gzip: 1.76 kB
178
+ dist/api/captcha/getPuzzleCaptchaChallenge.js 4.92 kB │ gzip: 1.56 kB
178
179
  dist/api/captcha.js 5.02 kB │ gzip: 1.44 kB
179
180
  dist/tasks/detection/decoderPool.js 5.34 kB │ gzip: 2.02 kB
180
181
  dist/api/captcha/interactiveCaptchaChallenge.js 5.47 kB │ gzip: 1.77 kB
@@ -184,9 +185,9 @@ dist/api/captcha/getPoWCaptchaChallenge.js 6.25 k
184
185
  dist/api/healthzGeo.js 6.86 kB │ gzip: 2.68 kB
185
186
  dist/api/captcha/getImageCaptchaChallenge.js 6.90 kB │ gzip: 2.08 kB
186
187
  dist/tasks/spam/checkTrafficFilter.js 8.49 kB │ gzip: 2.84 kB
187
- dist/api/captcha/submitPoWCaptchaSolution.js 8.72 kB │ gzip: 2.71 kB
188
188
  dist/tasks/detection/bundlePool.js 8.86 kB │ gzip: 3.34 kB
189
189
  dist/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.js 9.36 kB │ gzip: 1.80 kB
190
+ dist/api/captcha/submitPoWCaptchaSolution.js 9.38 kB │ gzip: 2.83 kB
190
191
  dist/api/startProviderApi.js 10.45 kB │ gzip: 3.60 kB
191
192
  dist/tasks/client/clientTasks.js 11.83 kB │ gzip: 3.18 kB
192
193
  dist/tasks/decisionMachine/decisionMachineRunner.js 12.28 kB │ gzip: 3.85 kB
@@ -195,13 +196,13 @@ dist/api/blacklistRequestInspector.js 12.97 k
195
196
  dist/api/metrics.js 13.17 kB │ gzip: 4.27 kB
196
197
  dist/tasks/interactiveCaptcha/interactiveCaptchaManager.js 18.40 kB │ gzip: 4.85 kB
197
198
  dist/api/verify.js 18.64 kB │ gzip: 3.57 kB
198
- dist/tasks/frictionless/frictionlessTasks.js 20.58 kB │ gzip: 5.55 kB
199
- dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js 21.70 kB │ gzip: 5.16 kB
199
+ dist/tasks/frictionless/frictionlessTasks.js 20.59 kB │ gzip: 5.55 kB
200
+ dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js 21.90 kB │ gzip: 5.20 kB
200
201
  dist/tasks/powCaptcha/powTasks.js 24.47 kB │ gzip: 6.18 kB
201
202
  dist/tasks/captchaManager.js 25.68 kB │ gzip: 7.58 kB
202
203
  dist/tasks/imgCaptcha/imgCaptchaTasks.js 27.18 kB │ gzip: 6.46 kB
203
204
 
204
- ✓ built in 151ms
205
+ ✓ built in 152ms
205
206
  [copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodeBehavior.js to /home/runner/work/captcha/captcha/packages/provider/dist/tasks/detection/decodeBehavior.js
206
207
  [copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodePayload.js to /home/runner/work/captcha/captcha/packages/provider/dist/tasks/detection/decodePayload.js
207
208
  [copy-plugin] copying /home/runner/work/captcha/captcha/packages/provider/src/tasks/detection/decodeSimd.js to /home/runner/work/captcha/captcha/packages/provider/dist/tasks/detection/decodeSimd.js
package/CHANGELOG.md CHANGED
@@ -1,5 +1,37 @@
1
1
  # @prosopo/provider
2
2
 
3
+ ## 5.19.4
4
+ ### Patch Changes
5
+
6
+ - 5421e87: Follow-up to the mobile puzzle sizing. The easier placement target and larger
7
+ piece now need a device signal behind them, not just the platform the request
8
+ header claims. The difficulty ladder is unchanged.
9
+
10
+ A mobile-carrier address and a small packet size were also counted as two
11
+ separate pieces of evidence when the second mostly follows from the first. They
12
+ now count once between them, which stops a laptop tethered to a phone adding up
13
+ to a phone.
14
+ - a00fb86: Make the puzzle easier to solve on a phone.
15
+
16
+ Two changes. First, how we work out whether the user is on a phone at all: it
17
+ used to be read off the IP's mobile-carrier flag, which says what network the
18
+ address is on and not what device is holding it, so every phone on home Wi-Fi
19
+ or behind a VPN counted as a desktop. It is now weighed across everything the
20
+ request carries — the User-Agent, the `Sec-CH-UA-Mobile` and
21
+ `Sec-CH-UA-Platform` client hints, the carrier flag, the connection's MSS, the
22
+ in-app-browser flag, and the touch readings that arrive with a solved
23
+ challenge. Signals that disagree cancel out, so a desktop browser claiming a
24
+ phone's User-Agent still counts as a desktop, and a touchscreen laptop is no
25
+ longer mistaken for a phone.
26
+
27
+ Second, a phone is never asked for a placement more accurate than a fingertip
28
+ can give, nor handed a piece smaller than a fingertip covers. Both are applied
29
+ when the challenge is cut, so they hold whichever route set the difficulty —
30
+ the site's own setting, a traffic-filter policy, a routing machine, or
31
+ automatic escalation.
32
+ - Updated dependencies [a00fb86]
33
+ - @prosopo/captcha-severity@1.3.2
34
+
3
35
  ## 5.19.3
4
36
  ### Patch Changes
5
37
 
@@ -1 +1 @@
1
- {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/handler.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAEN,KAAK,kBAAkB,EACvB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;8BAoDtD,mBAAmB,0BACA,kBAAkB,WAGpC,OAAO,GAAG,gBAAgB,OAC1B,QAAQ,QACP,YAAY;AAPpB,wBAo/BG"}
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/handler.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAEN,KAAK,kBAAkB,EACvB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;8BAoDtD,mBAAmB,0BACA,kBAAkB,WAGpC,OAAO,GAAG,gBAAgB,OAC1B,QAAQ,QACP,YAAY;AAPpB,wBA0/BG"}
@@ -149,7 +149,11 @@ var handler_default = (env, userAccessRulesStorage) => async (req, res, next) =>
149
149
  ip: normalizedIp,
150
150
  ...dedupCountryCode && { countryCode: dedupCountryCode },
151
151
  score: dedup.session.score,
152
- platform: derivePlatform(dedupUserAgent, dedup.session.webView, { ...typeof dedupIsMobile === "boolean" && { isMobile: dedupIsMobile } }),
152
+ platform: derivePlatform(dedupUserAgent, dedup.session.webView, {
153
+ headers: dedupFlatHeaders,
154
+ ...typeof dedupIsMobile === "boolean" && { carrierNetwork: dedupIsMobile },
155
+ ...req.tcpMss !== void 0 && { tcpMss: req.tcpMss }
156
+ }),
153
157
  ...dedup.session.d !== void 0 && { d: dedup.session.d },
154
158
  raw: {
155
159
  headers: dedupFlatHeaders,
@@ -404,7 +408,11 @@ var handler_default = (env, userAccessRulesStorage) => async (req, res, next) =>
404
408
  imageMinRounds: clientRecord.settings.imageMinRounds,
405
409
  baseImageRounds: env.config.captchas.solved.count,
406
410
  puzzleMaxDifficulty: clientRecord.settings.puzzleMaxDifficulty,
407
- platform: derivePlatform(requestUserAgent, webView, { ...typeof ipInfoMobile === "boolean" && { isMobile: ipInfoMobile } }),
411
+ platform: derivePlatform(requestUserAgent, webView, {
412
+ headers: flatHeaders,
413
+ ...typeof ipInfoMobile === "boolean" && { carrierNetwork: ipInfoMobile },
414
+ ...req.tcpMss !== void 0 && { tcpMss: req.tcpMss }
415
+ }),
408
416
  ...d !== void 0 && { d },
409
417
  raw: {
410
418
  headers: flatHeaders,
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../../src/api/captcha/getFrictionlessCaptchaChallenge/handler.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
+ import { type GetPuzzleCaptchaResponse } from "@prosopo/types";
1
2
  import type { ProviderEnvironment } from "@prosopo/types-env";
2
3
  import type { AccessRulesStorage } from "@prosopo/user-access-policy";
4
+ import { type ChallengeIssueContext, type IssuedChallenge } from "./interactiveCaptchaChallenge.js";
5
+ export declare const issuePuzzleChallenge: ({ tasks, user, dapp, origin, clientSettings, sessionRecord, trafficVerdict, provenance, }: ChallengeIssueContext) => Promise<IssuedChallenge<GetPuzzleCaptchaResponse>>;
3
6
  declare const _default: (env: ProviderEnvironment, userAccessRulesStorage: AccessRulesStorage) => (req: import("express").Request & import("../../express.js").AugmentedRequest, res: import("express").Response, next: import("express").NextFunction) => Promise<void | import("express").Response<any, Record<string, any>>>;
4
7
  export default _default;
5
8
  //# sourceMappingURL=getPuzzleCaptchaChallenge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getPuzzleCaptchaChallenge.d.ts","sourceRoot":"","sources":["../../../src/api/captcha/getPuzzleCaptchaChallenge.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;8BA2JhE,mBAAmB,0BACA,kBAAkB;AAF3C,wBAUI"}
1
+ {"version":3,"file":"getPuzzleCaptchaChallenge.d.ts","sourceRoot":"","sources":["../../../src/api/captcha/getPuzzleCaptchaChallenge.ts"],"names":[],"mappings":"AAkBA,OAAO,EAGN,KAAK,wBAAwB,EAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAStE,OAAO,EACN,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EAEpB,MAAM,kCAAkC,CAAC;AAI1C,eAAO,MAAM,oBAAoB,8FAS9B,qBAAqB,KAAG,OAAO,CACjC,eAAe,CAAC,wBAAwB,CAAC,CAuKzC,CAAC;8BAGI,mBAAmB,0BACA,kBAAkB;AAF3C,wBAUI"}
@@ -1,16 +1,29 @@
1
- import { renderPuzzleImages, resolvePuzzlePieceSize, resolvePuzzleRenderSettings } from "../../tasks/puzzle/puzzleRenderer.js";
1
+ import { deriveMobileVerdict } from "../../utils/mobileSignals.js";
2
+ import { renderPuzzleImages, resolvePuzzlePieceScaleRange, resolvePuzzleRenderSettings, samplePuzzlePieceSize } from "../../tasks/puzzle/puzzleRenderer.js";
2
3
  import { interactiveChallengeHandler } from "./interactiveCaptchaChallenge.js";
3
4
  import { buildPuzzleMaintenanceResponse } from "./maintenanceModeResponses.js";
4
5
  import { isPuzzleImageSwitchAvailable } from "./getFrictionlessCaptchaChallenge/constants.js";
5
6
  import { ApiParams, CaptchaType } from "@prosopo/types";
7
+ import { easePieceScaleForTouch, easeToleranceForTouch } from "@prosopo/captcha-severity";
6
8
  import { DEFAULT_GEOMETRY } from "@prosopo/puzzle-assets";
7
9
  //#region src/api/captcha/getPuzzleCaptchaChallenge.ts
10
+ /** Exported for unit testing only; the default export is the entry point. */
8
11
  var issuePuzzleChallenge = async ({ tasks, user, dapp, origin, clientSettings, sessionRecord, trafficVerdict, provenance }) => {
9
12
  const challengeVerdict = trafficVerdict.kind === "challenge" ? trafficVerdict : void 0;
10
- const tolerance = challengeVerdict?.puzzleTolerance ?? sessionRecord?.puzzleTolerance ?? clientSettings?.settings?.puzzleTolerance;
13
+ const mobileVerdict = deriveMobileVerdict({
14
+ userAgent: provenance.headers["user-agent"],
15
+ headers: provenance.headers,
16
+ ...provenance.ipInfo?.isValid && { carrierNetwork: provenance.ipInfo.isMobile },
17
+ ...sessionRecord?.tcpMss !== void 0 && { tcpMss: sessionRecord.tcpMss },
18
+ ...sessionRecord?.webView !== void 0 && { webView: sessionRecord.webView }
19
+ });
20
+ const easeForTouch = mobileVerdict.isMobile && mobileVerdict.corroborated;
21
+ const requestedTolerance = challengeVerdict?.puzzleTolerance ?? sessionRecord?.puzzleTolerance ?? clientSettings?.settings?.puzzleTolerance;
22
+ const tolerance = easeForTouch && requestedTolerance !== void 0 ? easeToleranceForTouch(requestedTolerance) : requestedTolerance;
11
23
  const routedPuzzleSettings = challengeVerdict?.puzzleSettings ?? sessionRecord?.puzzle;
12
24
  const effectivePuzzleSettings = resolvePuzzleRenderSettings(clientSettings?.settings?.puzzle, routedPuzzleSettings);
13
- const effectivePieceSize = resolvePuzzlePieceSize(clientSettings?.settings?.puzzle, routedPuzzleSettings);
25
+ const pieceScaleRange = resolvePuzzlePieceScaleRange(clientSettings?.settings?.puzzle, routedPuzzleSettings);
26
+ const effectivePieceSize = samplePuzzlePieceSize(easeForTouch ? easePieceScaleForTouch(pieceScaleRange) : pieceScaleRange);
14
27
  const challenge = await tasks.puzzleCaptchaManager.getPuzzleCaptchaChallenge(user, dapp, origin, tolerance);
15
28
  await tasks.db.storePuzzleCaptchaRecord(challenge.challenge, {
16
29
  requestedAtTimestamp: challenge.requestedAtTimestamp,
@@ -45,7 +58,12 @@ var issuePuzzleChallenge = async ({ tasks, user, dapp, origin, clientSettings, s
45
58
  }));
46
59
  });
47
60
  return {
48
- logData: { tolerance: challenge.tolerance },
61
+ logData: {
62
+ tolerance: challenge.tolerance,
63
+ pieceSize: images.pieceSize,
64
+ mobileScore: mobileVerdict.score,
65
+ mobileCorroborated: mobileVerdict.corroborated ? 1 : 0
66
+ },
49
67
  response: {
50
68
  [ApiParams.status]: "ok",
51
69
  [ApiParams.challenge]: challenge.challenge,
@@ -68,4 +86,4 @@ var getPuzzleCaptchaChallenge_default = (env, userAccessRulesStorage) => interac
68
86
  issue: issuePuzzleChallenge
69
87
  });
70
88
  //#endregion
71
- export { getPuzzleCaptchaChallenge_default as default };
89
+ export { getPuzzleCaptchaChallenge_default as default, issuePuzzleChallenge };
@@ -1 +1 @@
1
- {"version":3,"file":"getPuzzleCaptchaChallenge.js","sourceRoot":"","sources":["../../../src/api/captcha/getPuzzleCaptchaChallenge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getPuzzleCaptchaChallenge.js","sourceRoot":"","sources":["../../../src/api/captcha/getPuzzleCaptchaChallenge.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"submitPoWCaptchaSolution.d.ts","sourceRoot":"","sources":["../../../src/api/captcha/submitPoWCaptchaSolution.ts"],"names":[],"mappings":"AAmBA,OAAO,EACN,WAAW,EAEX,KAAK,kBAAkB,EAEvB,KAAK,4BAA4B,EAMjC,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGzD,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAM7C,OAAO,EACN,KAAK,aAAa,EAGlB,MAAM,+BAA+B,CAAC;8BAKlB,mBAAmB,WAEjC,OAAO,GAAG,gBAAgB,OAC1B,QAAQ,QACP,YAAY;AAJpB,wBAuNG;AAWH,eAAO,MAAM,eAAe,UACpB,KAAK,UACJ;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,aAAa,CAAC,EAAE;QAAE,WAAW,EAAE,WAAW,CAAA;KAAE,CAAA;CAAE,aAChE,MAAM,yBAKM,aAAa,GAAG;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC7B,oBAMiB;IACjB,mBAAmB,CAAC,EAAE,kBAAkB,CAAC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC7B,KACC,OAAO,CAAC,4BAA4B,GAAG,SAAS,CAqKlD,CAAC"}
1
+ {"version":3,"file":"submitPoWCaptchaSolution.d.ts","sourceRoot":"","sources":["../../../src/api/captcha/submitPoWCaptchaSolution.ts"],"names":[],"mappings":"AAmBA,OAAO,EACN,WAAW,EAEX,KAAK,kBAAkB,EAEvB,KAAK,4BAA4B,EAMjC,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGzD,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAM7C,OAAO,EACN,KAAK,aAAa,EAGlB,MAAM,+BAA+B,CAAC;8BAKlB,mBAAmB,WAEjC,OAAO,GAAG,gBAAgB,OAC1B,QAAQ,QACP,YAAY;AAJpB,wBA6NG;AAWH,eAAO,MAAM,eAAe,UACpB,KAAK,UACJ;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,aAAa,CAAC,EAAE;QAAE,WAAW,EAAE,WAAW,CAAA;KAAE,CAAA;CAAE,aAChE,MAAM,yBAKM,aAAa,GAAG;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC7B,oBAMiB;IACjB,mBAAmB,CAAC,EAAE,kBAAkB,CAAC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC7B,KACC,OAAO,CAAC,4BAA4B,GAAG,SAAS,CAwLlD,CAAC"}
@@ -72,7 +72,11 @@ var submitPoWCaptchaSolution_default = (env) => async (req, res, next) => {
72
72
  tasks.powCaptchaManager.setPostPowContext({
73
73
  ip: req.ip || "",
74
74
  countryCode,
75
- platform: derivePlatform(userAgent, false),
75
+ platform: derivePlatform(userAgent, false, {
76
+ headers: flatHeaders,
77
+ ...req.ipInfo && "isValid" in req.ipInfo && req.ipInfo.isValid && { carrierNetwork: req.ipInfo.isMobile },
78
+ ...req.tcpMss !== void 0 && { tcpMss: req.tcpMss }
79
+ }),
76
80
  raw: {
77
81
  headers: flatHeaders,
78
82
  userAgent,
@@ -150,7 +154,13 @@ var buildEscalation = async (tasks, result, challenge, perConnectionSignals, sit
150
154
  const imageMaxRounds = siteConstraints?.imageMaxRounds ?? imageMaxRoundsDefault;
151
155
  const escalationPuzzleOverrides = (() => {
152
156
  if (escalatedType !== CaptchaType.puzzle) return void 0;
153
- const { isMobile } = derivePlatform(originSession.headers?.["user-agent"] ?? "", originSession.webView);
157
+ const { isMobile } = derivePlatform(originSession.headers?.["user-agent"] ?? "", originSession.webView, {
158
+ ...originSession.headers && { headers: originSession.headers },
159
+ ...originSession.ipInfo?.isValid && { carrierNetwork: originSession.ipInfo.isMobile },
160
+ ...originSession.tcpMss !== void 0 && { tcpMss: originSession.tcpMss },
161
+ ...powRecord.deviceCapability !== void 0 && { deviceCapability: powRecord.deviceCapability },
162
+ ...powRecord.behavioralDataPacked?.c2 !== void 0 && { touchEventCount: powRecord.behavioralDataPacked.c2.length }
163
+ });
154
164
  const level = severityToPuzzleDifficulty(routed.solvedImagesCount ?? originSession.solvedImagesCount, tasks.config.captchas.solved.count, resolveMaxEscalationLevel(siteConstraints?.puzzleMaxDifficulty, isMobile));
155
165
  if (level === 0) return void 0;
156
166
  const difficulty = samplePuzzleDifficulty(level, DEFAULT_RENDER_SETTINGS.holeDarken);