Specific problems from building this, written up with the details intact — timestamps, error text, what the fix actually was. Not a content marketing programme; there is no schedule and posts appear when something is worth writing down.
Your assistant will eventually say something it should not have. The four ways that happens, why filtering the input cannot catch them, and where the check actually has to go.
Pattern matching can prove text is unsafe. It can never prove text is safe. Getting that asymmetry wrong turns a safety product into a regular expression.