<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <br>
    <blockquote type="cite"
      cite="mid:66B2C6A6-0D53-4FB9-A0DB-37518206CD64@alchemistowl.org">
      <pre class="moz-quote-pre" wrap="">
Running it on the complete email.txt (which is not how amavis invokes SpamAssassin):

Aug 30 13:10:30.866 [73086] dbg: timing: total 7235 ms - init: 3338 (46.1%), parse: 28 (0.4%), extract_message_metadata: 266 (3.7%), get_uri_detail_list: 56 (0.8%), tests_pri_-1000: 106 (1.5%), compile_gen: 186 (2.6%), compile_eval: 39 (0.5%), tests_pri_-950: 5 (0.1%), tests_pri_-900: 6 (0.1%), tests_pri_-90: 5 (0.1%), tests_pri_0: 1419 (19.6%), check_spf: 63 (0.9%), dkim_load_modules: 40 (0.6%), check_dkim_signature: 14 (0.2%), check_dkim_adsp: 7 (0.1%), poll_dns_idle: 1876 (25.9%), tests_pri_20: 6 (0.1%), tests_pri_30: 6 (0.1%), check_pyzor: 0.37 (0.0%), tests_pri_500: 2024 (28.0%)

[...]

Aug 30 12:50:09 mailgate-fra-1 amavis[24524]: (24524-01) truncating a message passed to SA at 414138 bytes, orig 569545

[process gets killed after 5m]

Aug 30 12:54:48 mailgate-fra-1 amavis[24524]: (24524-01) (!)TempDir removal: tempdir is to be PRESERVED: /var/amavisd/tmp/amavis-20220830T125008-24524-HdayDdgJ

Any better debugging ideas?
</pre>
    </blockquote>
    Truncate the message for your manual test as amavis did. It is
    possible that a SpamAssassin rule regex heavily backtracks when it
    encounters end-of-input instead of what comes next naturally.<br>
  </body>
</html>