a7b796d3811d09ba72c91efca77f3080b51ec6eb
Previous plan/spec made honeypot a -5 weighted signal only. That is insufficient to force 'spam' when the submission also has a RU phone (+3), cyrillic name (+1), and meaningful text (+1) — a clean +5 cancels -5, yielding 'unclear'. The honeypot test (test_honeypot_forces_spam_ even_with_phone) caught this. Honeypot semantics: a filled hidden field is a bot by definition. No combination of positive signals can make it a legitimate client. Keeping the -5 weight on 'reasons' list for transparency, but adding a hard override that sets label='spam' at the end of classify(). Caught by TDD on Task 7. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Description
WordPress plugin: forwards CF7 spam submissions to Telegram with heuristic classification