A nice feature could be the ability to build queries based on user-agent "age"
Eg: pattern@ua/chrome < 3y (not sure about the syntax) to verify that the Google Chrome version isn't older than 3 years.
This can be achieved by fetching the most common user-agent strings for the 4 major browsers (Chrome, Firefox, Safari, Edge) and associated release date in a form understandable by requestctl/hiddenparma.
Open questions:
- What's the ideal format to list this kind of information that would be easy for HAProxy/Varnish to match? (eg. maps for HAProxy or Varnish, or even simpler, just a file with a list of "improbable" UA)
- How to keep this updated? Given the kind of usage, we can also think to update it manually every 6/12 months without causing too much troubles, assuming that we find a way to compare "newer" and "older" browsers