ReviewOS

also looking at this

mail-os/mail

feat(antispam): harden inbound spam detection

#3
Merged chris wants to merge agent/spam-hardening into main
3 files +670 -90

Review threads live on the whole diff, not on one commit, so none are shown here - a thread's line means something in the branch's final form, and painting it into an intermediate step would put it on code it is not about.

pantry.lockmodified+53-31
Changes to pantry.lock
@@ -1,11 +1,7 @@
11{
22 "version": "1.0.0",
3 "lockfileVersion": 1,
3 "lockfileVersion": 2,
44 "workspaces": {
5 "packages/devtools": {
6 "name": "mail-devtools",
7 "version": "0.1.0"
8 },
95 "packages/cloud": {
106 "name": "mail-cloud",
117 "version": "0.1.0",
@@ -13,59 +9,85 @@
139 "ts-cloud": "link:ts-cloud"
1410 },
1511 "devDependencies": {
16 "typescript": "^5.9.3",
17 "@types/bun": "^1.3.0"
12 "@types/bun": "^1.3.0",
13 "typescript": "^5.9.3"
14 }
15 },
16 "packages/devtools": {
17 "name": "mail-devtools",
18 "version": "0.1.0",
19 "dependencies": {
20 "bun-plugin-stx": "^0.2.6"
1821 }
1922 },
2023 "packages/ts": {
2124 "name": "ts-mail",
22 "version": "0.28.0"
25 "version": "0.1.0"
26 },
27 "packages/webmail": {
28 "name": "mail-webmail",
29 "version": "0.0.1",
30 "dependencies": {
31 "bun-plugin-stx": "^0.2.6"
32 }
2333 }
2434 },
2535 "packages": {
26 "github:zig-utils/zig-bump@main": {
27 "name": "github:zig-utils/zig-bump",
28 "version": "main",
29 "source": "github"
36 "@types/bun@^1.3.0": {
37 "name": "@types/bun",
38 "version": "^1.3.0",
39 "source": "npm",
40 "dependencies": {
41 "bun-types": "1.3.10"
42 }
3043 },
31 "typescript@^5.9.3": {
32 "name": "typescript",
33 "version": "^5.9.3",
44 "bun-plugin-stx@^0.2.6": {
45 "name": "bun-plugin-stx",
46 "version": "^0.2.6",
3447 "source": "npm",
48 "dependencies": {
49 "@stacksjs/stx": "0.2.72",
50 "stx-router": "0.2.72"
51 },
3552 "bin": {
36 "tsc": "./bin/tsc",
37 "tsserver": "./bin/tsserver"
53 "serve": "./dist/serve.js",
54 "stx-serve": "./dist/serve.js"
3855 }
3956 },
57 "github:zig-utils/zig-bump@main": {
58 "name": "github:zig-utils/zig-bump",
59 "version": "main",
60 "source": "github"
61 },
4062 "github:zig-utils/zig-cli@main": {
4163 "name": "github:zig-utils/zig-cli",
4264 "version": "main",
4365 "source": "github"
4466 },
45 "@types/bun@1.3.10": {
46 "name": "@types/bun",
47 "version": "1.3.10",
48 "source": "npm",
49 "resolved": "https://registry.npmjs.org/@types/bun/-/bun-1.3.10.tgz",
50 "integrity": "sha512-0+rlrUrOrTSskibryHbvQkDOWRJwJZqZlxrUs1u4oOoTln8+WIXBPmAuCF35SWB2z4Zl3E84Nl/D0P7803nigQ==",
51 "dependencies": {
52 "bun-types": "1.3.10"
53 }
67 "github:zig-utils/zig-search-engine@main": {
68 "name": "github:zig-utils/zig-search-engine",
69 "version": "main",
70 "source": "github"
5471 },
5572 "github:zig-utils/zig-tls@main": {
5673 "name": "github:zig-utils/zig-tls",
5774 "version": "main",
5875 "source": "github"
5976 },
60 "ziglang.org@0.16.0-dev": {
61 "name": "ziglang.org",
62 "version": "0.16.0-dev",
63 "source": "pantry"
64 },
6577 "ts-cloud@link:ts-cloud": {
6678 "name": "ts-cloud",
6779 "version": "link:ts-cloud",
6880 "source": "npm"
81 },
82 "typescriptlang.org@^5.9.3": {
83 "name": "typescriptlang.org",
84 "version": "^5.9.3",
85 "source": "npm"
86 },
87 "ziglang.org@0.16.0-dev": {
88 "name": "ziglang.org",
89 "version": "0.16.0-dev",
90 "source": "pantry"
6991 }
7092 }
7193}