I am learning email sieve programming to protect my sanity. Turns out, there is an entire programming language dedicated to filtering incoming emails.

Since I use Proton Mail, I thought I could test their Lumo LLM chatbot to see if it can help at building Sieve filters. It failed. From the beginning, it assumed tags and folders were different things, and insisted I use tag "Priority High"; to mark important and urgent stuff high priority. Rookie mistake!

In case you didn't know, emails started out as basic text files people send to each other on the same mainframe. Email recipients can store those .eml files however they would like. Sieve language never differentiated "folders", "tags", "categories" etc. All those things are actually just labels that insists to act differently. They all use fileinto expression. For instance, you want to tag a utility bill email as ToDo, and also move it into "Bills" folder,require "fileinto"; if address :matches "From" "@utilitycompany.com" { fileinto "ToDo"; fileinto "Bills"; }
Further reads:
Great sieve reference by Thomas Schmid: https://thsmi.github.io/sieve-reference/en/
Sieve features on Proton Mail: https://proton.me/support/sieve-advanced-custom-filters
Envelope vs Header in email: https://www.xeams.com/difference-envelope-header.htm

#Email #Sieve #SieveProgramming #LLMFail
Sieve Language Reference