https://bz.apache.org/SpamAssassin/show_bug.cgi?id=7943
--- Comment #1 from Matija Nalis <mnalis-sa...@voyager.hr> --- One observation: it seems that "totscore" is not always being changed while "msgcount" is. Should it have been? Because, if it were changed at the same rate, then that formula *would* keep delta at zero, e.g.: dbg: TxRep: mn EMAILIP _formula delta = (total()=0.000 + msgscore=-10.210) / (1 + count()=0.000) - msgscore=-10.210 = 0.000 dbg: TxRep: mn EMAILIP _formula delta = (total()=-10.210 + msgscore=-10.210) / (1 + count()=1.000) - msgscore=-10.210 = 0.000 dbg: TxRep: mn EMAILIP _formula delta = (total()=-20.420 + msgscore=-10.210) / (1 + count()=2.000) - msgscore=-10.210 = 0.000 dbg: TxRep: mn EMAILIP _formula delta = (total()=-30.630 + msgscore=-10.210) / (1 + count()=3.000) - msgscore=-10.210 = 0.000 dbg: TxRep: mn EMAILIP _formula delta = (total()=-40.840 + msgscore=-10.210) / (1 + count()=4.000) - msgscore=-10.210 = 0.000 I've seen in code that calling add_score() is sometimes connected to (non-default) "txrep_autolearn 1". Enabling autolearn does indeed make "totscore" change, but in a wrong way too, and also "msgcount" gets increased by 2 instead of by 1. The miscalculation leading from ham to spam is still there, even with autolearn enabled though: +----------+---------------+------+----------+----------+----------+---------------------+ | username | email | ip | msgcount | totscore | signedby | last_hit | +----------+---------------+------+----------+----------+----------+---------------------+ | amavis | h...@hep.hr | none | 2 | -30.21 | spf | 2021-11-12 04:41:52 | | amavis | h...@hep.hr | none | 4 | -23.4033 | spf | 2021-11-12 04:43:22 | | amavis | h...@hep.hr | none | 6 | -22.042 | spf | 2021-11-12 04:43:58 | | amavis | h...@hep.hr | none | 8 | -21.4586 | spf | 2021-11-12 04:44:30 | | amavis | h...@hep.hr | none | 10 | -21.1344 | spf | 2021-11-12 04:44:59 | dbg: TxRep: mn EMAILIP _formula delta = (total()=0.000 + msgscore=-10.210) / (1 + count()=0.000) - msgscore=-10.210 = 0.000 dbg: TxRep: mn EMAILIP _formula delta = (total()=-30.210 + msgscore=-10.210) / (1 + count()=2.000) - msgscore=-10.210 = -3.263 dbg: TxRep: mn EMAILIP _formula delta = (total()=-23.403 + msgscore=-10.210) / (1 + count()=4.000) - msgscore=-10.210 = 3.487 dbg: TxRep: mn EMAILIP _formula delta = (total()=-22.042 + msgscore=-10.210) / (1 + count()=6.000) - msgscore=-10.210 = 5.603 dbg: TxRep: mn EMAILIP _formula delta = (total()=-21.459 + msgscore=-10.210) / (1 + count()=8.000) - msgscore=-10.210 = 6.691 3.3 TXREP TXREP: Score normalizing based on sender's reputation -- You are receiving this mail because: You are the assignee for the bug.