@prosopo/cli 3.6.32 → 3.6.33
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.
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
> @prosopo/cli@3.6.
|
|
2
|
+
> @prosopo/cli@3.6.33 build:cjs
|
|
3
3
|
> NODE_ENV=${NODE_ENV:-development}; vite build --config vite.cjs.config.ts --mode $NODE_ENV
|
|
4
4
|
|
|
5
5
|
ViteCommonJSConfig: .
|
|
@@ -56,9 +56,9 @@ ViteCommonJSConfig: .
|
|
|
56
56
|
[36mvite v6.4.1 [32mbuilding SSR bundle for production...[36m[39m
|
|
57
57
|
Bundle build started
|
|
58
58
|
transforming...
|
|
59
|
-
[33mEntry module "src/commands/siteKeyRegister.ts" is using named and default exports together. Consumers of your bundle will have to use `..default` to access the default export, which may not be what you want. Use `output.exports: "named"` to disable this warning.[39m
|
|
60
59
|
Build end
|
|
61
60
|
[32m✓[39m 20 modules transformed.
|
|
61
|
+
[33mEntry module "src/commands/siteKeyRegister.ts" is using named and default exports together. Consumers of your bundle will have to use `..default` to access the default export, which may not be what you want. Use `output.exports: "named"` to disable this warning.[39m
|
|
62
62
|
rendering chunks...
|
|
63
63
|
[2mdist/cjs/[22m[36mcommands/version.cjs [39m[1m[2m0.48 kB[22m[1m[22m
|
|
64
64
|
[2mdist/cjs/[22m[36mindex.cjs [39m[1m[2m0.73 kB[22m[1m[22m
|
|
@@ -80,4 +80,4 @@ rendering chunks...
|
|
|
80
80
|
[2mdist/cjs/[22m[36mcommands/siteKeyRegister.cjs [39m[1m[2m3.75 kB[22m[1m[22m
|
|
81
81
|
[2mdist/cjs/[22m[36mprosopo.config.cjs [39m[1m[2m5.29 kB[22m[1m[22m
|
|
82
82
|
[2mdist/cjs/[22m[36mRateLimiter.cjs [39m[1m[2m5.48 kB[22m[1m[22m
|
|
83
|
-
[32m✓ built in
|
|
83
|
+
[32m✓ built in 227ms[39m
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
> @prosopo/cli@3.6.
|
|
2
|
+
> @prosopo/cli@3.6.33 build:tsc
|
|
3
3
|
> tsc --build --verbose
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
5:18:23 PM - Projects in this build:
|
|
6
6
|
* ../../dev/config/tsconfig.json
|
|
7
7
|
* ../locale/tsconfig.json
|
|
8
8
|
* ../util/tsconfig.json
|
|
@@ -28,53 +28,53 @@
|
|
|
28
28
|
* ../../dev/workspace/tsconfig.json
|
|
29
29
|
* tsconfig.json
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
5:18:23 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'
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
5:18:23 PM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/translationKey.ts' is older than output '../locale/tsconfig.tsbuildinfo'
|
|
34
34
|
|
|
35
|
-
|
|
35
|
+
5:18:23 PM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/url.ts' is older than output '../util/tsconfig.tsbuildinfo'
|
|
36
36
|
|
|
37
|
-
|
|
37
|
+
5:18:23 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'
|
|
38
38
|
|
|
39
|
-
|
|
39
|
+
5:18:23 PM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/procaptcha/api.ts' is older than output '../types/tsconfig.tsbuildinfo'
|
|
40
40
|
|
|
41
|
-
|
|
41
|
+
5:18:23 PM - Project '../api/tsconfig.json' is up to date because newest input '../api/src/index.ts' is older than output '../api/tsconfig.tsbuildinfo'
|
|
42
42
|
|
|
43
|
-
|
|
43
|
+
5:18:23 PM - Project '../logger/tsconfig.json' is up to date because newest input '../logger/src/index.ts' is older than output '../logger/tsconfig.tsbuildinfo'
|
|
44
44
|
|
|
45
|
-
|
|
45
|
+
5:18:23 PM - Project '../common/tsconfig.json' is up to date because newest input '../common/src/index.ts' is older than output '../common/tsconfig.tsbuildinfo'
|
|
46
46
|
|
|
47
|
-
|
|
47
|
+
5:18:23 PM - Project '../dotenv/tsconfig.json' is up to date because newest input '../dotenv/src/index.ts' is older than output '../dotenv/tsconfig.tsbuildinfo'
|
|
48
48
|
|
|
49
|
-
|
|
49
|
+
5:18:23 PM - Project '../ipinfo/tsconfig.json' is up to date because newest input '../ipinfo/src/IpInfoService.ts' is older than output '../ipinfo/tsconfig.tsbuildinfo'
|
|
50
50
|
|
|
51
|
-
|
|
51
|
+
5:18:23 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'
|
|
52
52
|
|
|
53
|
-
|
|
53
|
+
5:18:23 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'
|
|
54
54
|
|
|
55
|
-
|
|
55
|
+
5:18:23 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'
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
5:18:23 PM - Project '../types-database/tsconfig.json' is up to date because newest input '../types-database/src/types/captcha.ts' is older than output '../types-database/tsconfig.tsbuildinfo'
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
5:18:23 PM - Project '../database/tsconfig.json' is up to date because newest input '../database/src/tests/integration/ipInfoPersistence.integration.test.ts' is older than output '../database/tsconfig.tsbuildinfo'
|
|
60
60
|
|
|
61
|
-
|
|
61
|
+
5:18:23 PM - Project '../keyring/tsconfig.json' is up to date because newest input '../keyring/src/index.ts' is older than output '../keyring/tsconfig.tsbuildinfo'
|
|
62
62
|
|
|
63
|
-
|
|
63
|
+
5:18:23 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'
|
|
64
64
|
|
|
65
|
-
|
|
65
|
+
5:18:23 PM - Project '../env/tsconfig.json' is up to date because newest input '../env/src/env.ts' is older than output '../env/tsconfig.tsbuildinfo'
|
|
66
66
|
|
|
67
|
-
|
|
67
|
+
5:18:23 PM - Project '../api-express-router/tsconfig.json' is up to date because newest input '../api-express-router/src/apiExpressRouterFactory.ts' is older than output '../api-express-router/tsconfig.tsbuildinfo'
|
|
68
68
|
|
|
69
|
-
|
|
69
|
+
5:18:23 PM - Project '../datasets/tsconfig.json' is up to date because newest input '../datasets/src/index.ts' is older than output '../datasets/tsconfig.tsbuildinfo'
|
|
70
70
|
|
|
71
|
-
|
|
71
|
+
5:18:23 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'
|
|
72
72
|
|
|
73
|
-
|
|
73
|
+
5:18:23 PM - Project '../provider/tsconfig.json' is up to date because newest input '../provider/src/util.ts' is older than output '../provider/tsconfig.tsbuildinfo'
|
|
74
74
|
|
|
75
|
-
|
|
75
|
+
5:18:23 PM - Project '../../dev/workspace/tsconfig.json' is up to date because newest input '../../dev/workspace/src/index.ts' is older than output '../../dev/workspace/tsconfig.tsbuildinfo'
|
|
76
76
|
|
|
77
|
-
|
|
77
|
+
5:18:23 PM - Project 'tsconfig.json' is out of date because output file 'tsconfig.tsbuildinfo' does not exist
|
|
78
78
|
|
|
79
|
-
|
|
79
|
+
5:18:23 PM - Building project '/home/runner/work/captcha/captcha/packages/cli/tsconfig.json'...
|
|
80
80
|
|
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
|
|
2
|
-
> @prosopo/cli@3.6.
|
|
2
|
+
> @prosopo/cli@3.6.33 build
|
|
3
3
|
> npm run build:cross-env -- --mode ${NODE_ENV:-development}
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
> @prosopo/cli@3.6.
|
|
6
|
+
> @prosopo/cli@3.6.33 build:cross-env
|
|
7
7
|
> vite build --config vite.esm.config.ts --mode production
|
|
8
8
|
|
|
9
9
|
ViteEsmConfig: .
|
|
@@ -83,4 +83,4 @@ rendering chunks...
|
|
|
83
83
|
[2mdist/[22m[36mcommands/siteKeyRegister.js [39m[1m[2m3.61 kB[22m[1m[22m
|
|
84
84
|
[2mdist/[22m[36mprosopo.config.js [39m[1m[2m4.91 kB[22m[1m[22m
|
|
85
85
|
[2mdist/[22m[36mRateLimiter.js [39m[1m[2m5.25 kB[22m[1m[22m
|
|
86
|
-
[32m✓ built in
|
|
86
|
+
[32m✓ built in 310ms[39m
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# @prosopo/cli
|
|
2
2
|
|
|
3
|
+
## 3.6.33
|
|
4
|
+
### Patch Changes
|
|
5
|
+
|
|
6
|
+
- b24ea03: Caddy now SNI-routes :443 with caddy-l4. Pixel URL drops the :9362 port; HTTP-01 ACME renewals keep working via auto-managed :80.
|
|
7
|
+
- 3420831: DNS sidecar event merge: atomic dotted-path `$set` so DNS + HTTP legs co-occur on one session (was clobbering: prior projection omitted `dnsEvent`, every write started from `undefined`). Caddy now forwards PROXY-protocol v2 on the `*.t.{domain}` route and the sidecar (≥0.1.6) reads it, so `dnsEvent.peerIp` records the real client IP instead of the docker bridge address.
|
|
8
|
+
|
|
3
9
|
## 3.6.32
|
|
4
10
|
### Patch Changes
|
|
5
11
|
|
|
@@ -1763,7 +1763,7 @@ function O2e(e) {
|
|
|
1763
1763
|
}
|
|
1764
1764
|
return t.sort((n, i) => i.length - n.length), t;
|
|
1765
1765
|
}
|
|
1766
|
-
const b2e = typeof process < "u" ? "3.6.
|
|
1766
|
+
const b2e = typeof process < "u" ? "3.6.33" : void 0, mye = b2e || "dev", rP = new Array(256), gye = new Array(256 * 256);
|
|
1767
1767
|
for (let e = 0; e < 256; e++)
|
|
1768
1768
|
rP[e] = e.toString(16).padStart(2, "0");
|
|
1769
1769
|
for (let e = 0; e < 256; e++) {
|
|
@@ -91527,6 +91527,37 @@ class XM extends Tk {
|
|
|
91527
91527
|
});
|
|
91528
91528
|
}
|
|
91529
91529
|
}
|
|
91530
|
+
/**
|
|
91531
|
+
* Merge a DNS sidecar observation into the session's `dnsEvent` subdoc
|
|
91532
|
+
* using dotted-path `$set` so DNS-leg and HTTP-leg events on the same
|
|
91533
|
+
* session don't clobber each other. Replaces the prior read-modify-write
|
|
91534
|
+
* pattern that lost half the fields under any race (and 100% of the time
|
|
91535
|
+
* when the read projection didn't include `dnsEvent`).
|
|
91536
|
+
*
|
|
91537
|
+
* `receivedAtIfAbsent` is written only on the first hit for a session
|
|
91538
|
+
* via a `$cond` in an aggregation-pipeline update; later events leave
|
|
91539
|
+
* the original timestamp alone.
|
|
91540
|
+
*/
|
|
91541
|
+
async mergeSessionDnsEvent(t, r, n) {
|
|
91542
|
+
const i = {
|
|
91543
|
+
"dnsEvent.receivedAt": {
|
|
91544
|
+
$ifNull: ["$dnsEvent.receivedAt", n]
|
|
91545
|
+
},
|
|
91546
|
+
lastUpdatedTimestamp: /* @__PURE__ */ new Date(),
|
|
91547
|
+
pendingStage: !0
|
|
91548
|
+
};
|
|
91549
|
+
r.resolverIp !== void 0 && (i["dnsEvent.resolverIp"] = r.resolverIp), r.peerIp !== void 0 && (i["dnsEvent.peerIp"] = r.peerIp), r.pathValid !== void 0 && (i["dnsEvent.pathValid"] = r.pathValid);
|
|
91550
|
+
try {
|
|
91551
|
+
return (await this.tables.session.updateOne({ sessionId: t }, [
|
|
91552
|
+
{ $set: i }
|
|
91553
|
+
])).matchedCount > 0;
|
|
91554
|
+
} catch (s) {
|
|
91555
|
+
throw new ur("DATABASE.SESSION_GET_FAILED", {
|
|
91556
|
+
context: { error: s, sessionId: t },
|
|
91557
|
+
logger: this.logger
|
|
91558
|
+
});
|
|
91559
|
+
}
|
|
91560
|
+
}
|
|
91530
91561
|
/**
|
|
91531
91562
|
* Get an active session by user IP hash
|
|
91532
91563
|
* @param userSitekeyIpHash The hash of user, IP and sitekey combination
|
|
@@ -116561,9 +116592,13 @@ class uet {
|
|
|
116561
116592
|
return j_e;
|
|
116562
116593
|
}
|
|
116563
116594
|
}
|
|
116564
|
-
const cet = (e
|
|
116565
|
-
|
|
116566
|
-
|
|
116595
|
+
const cet = (e) => {
|
|
116596
|
+
if (e.kind === "dns")
|
|
116597
|
+
return { resolverIp: e.src_ip };
|
|
116598
|
+
const t = {
|
|
116599
|
+
peerIp: e.src_ip
|
|
116600
|
+
};
|
|
116601
|
+
return typeof e.path_valid == "boolean" && (t.pathValid = e.path_valid), t;
|
|
116567
116602
|
};
|
|
116568
116603
|
class fet {
|
|
116569
116604
|
constructor(t) {
|
|
@@ -116573,19 +116608,21 @@ class fet {
|
|
|
116573
116608
|
r = r || Nr("info", import.meta.url);
|
|
116574
116609
|
const { events: n } = t;
|
|
116575
116610
|
let i = 0, s = 0;
|
|
116576
|
-
|
|
116577
|
-
|
|
116578
|
-
|
|
116611
|
+
const o = /* @__PURE__ */ new Date();
|
|
116612
|
+
for (const a of n) {
|
|
116613
|
+
const u = a.jti;
|
|
116614
|
+
if (u)
|
|
116579
116615
|
try {
|
|
116580
|
-
const
|
|
116581
|
-
|
|
116582
|
-
|
|
116583
|
-
|
|
116584
|
-
|
|
116585
|
-
|
|
116616
|
+
const c = cet(a);
|
|
116617
|
+
await this.db.mergeSessionDnsEvent(
|
|
116618
|
+
u,
|
|
116619
|
+
c,
|
|
116620
|
+
o
|
|
116621
|
+
) && (i += 1);
|
|
116622
|
+
} catch (c) {
|
|
116586
116623
|
s += 1, r.warn(() => ({
|
|
116587
|
-
err:
|
|
116588
|
-
data: { sessionId:
|
|
116624
|
+
err: c,
|
|
116625
|
+
data: { sessionId: u, kind: a.kind },
|
|
116589
116626
|
msg: "Failed to merge DNS event into session"
|
|
116590
116627
|
}));
|
|
116591
116628
|
}
|