@bobfrankston/mailx-store 0.1.130 → 0.1.133
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +5 -5
- package/store.js +9 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bobfrankston/mailx-store",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.133",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
},
|
|
10
10
|
"license": "ISC",
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@bobfrankston/mailx-types": "^0.1.
|
|
13
|
-
"@bobfrankston/mailx-settings": "^0.1.
|
|
12
|
+
"@bobfrankston/mailx-types": "^0.1.108",
|
|
13
|
+
"@bobfrankston/mailx-settings": "^0.1.103",
|
|
14
14
|
"@bobfrankston/mailx-bus": "^0.1.2",
|
|
15
15
|
"mailparser": "^3.7.2"
|
|
16
16
|
},
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
},
|
|
30
30
|
".transformedSnapshot": {
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@bobfrankston/mailx-types": "^0.1.
|
|
33
|
-
"@bobfrankston/mailx-settings": "^0.1.
|
|
32
|
+
"@bobfrankston/mailx-types": "^0.1.108",
|
|
33
|
+
"@bobfrankston/mailx-settings": "^0.1.103",
|
|
34
34
|
"@bobfrankston/mailx-bus": "^0.1.2",
|
|
35
35
|
"mailparser": "^3.7.2"
|
|
36
36
|
}
|
package/store.js
CHANGED
|
@@ -128,6 +128,13 @@ export class Store {
|
|
|
128
128
|
invalidateConfigCaches() {
|
|
129
129
|
this._allowlistCache = null;
|
|
130
130
|
this._settingsCache = null;
|
|
131
|
+
// 2026-09-30 — Claude Code (Opus 5.5). A parsed entry carries the trust
|
|
132
|
+
// findings, spam score and remote-content decision computed from the
|
|
133
|
+
// allowlist AT PARSE TIME, and only remoteAllowed/isFlagged are
|
|
134
|
+
// re-derived on a cache hit. So after "Stop warning about …" or any
|
|
135
|
+
// other trust button, reopening the same message in the same session
|
|
136
|
+
// showed the old banner. The config changed; the verdicts go with it.
|
|
137
|
+
this.parsedLru.clear();
|
|
131
138
|
}
|
|
132
139
|
/** Set on read-only Store instances (the db-worker serving UI reads):
|
|
133
140
|
* receives (rowId, bodyText) when getMessage parses a body whose FTS
|
|
@@ -583,6 +590,8 @@ export class Store {
|
|
|
583
590
|
trustedLists: (allowList.trustedLists || []).map((l) => (l || "").toLowerCase()),
|
|
584
591
|
// "‹sender› via ‹relay›" pairs; count only when the relay signed (2026-09-10).
|
|
585
592
|
trustedSendersVia: (allowList.trustedSendersVia || []).map((v) => (v || "").toLowerCase()),
|
|
593
|
+
// Link hosts vouched for; count only on a proved sender (2026-09-30).
|
|
594
|
+
trustedLinkHosts: (allowList.trustedLinkHosts || []).map((h) => (h || "").toLowerCase()),
|
|
586
595
|
};
|
|
587
596
|
const trust = assessMessageTrust(trustInput);
|
|
588
597
|
// The server's score travels separately from the findings: a finding is
|