There is a db with tables of genes. And these genes would need to be annotated based on the client's needs. So if a gene matches condition x, then add a new column y and value z to that gene. Every cancer is different, so we supplied every client with a template configuration file where they can insert their queries and supply it to our app.
The issues are that:
1) these queries have become so complex that they are now a language of their own and only the developer can be confident in making changes with some back and forth with the clinician. So the whole benefit of providing a config file that the client can edit seems to be lost now.
2) the difference between code and config is becoming blurred because the queries are too complex. For example, we use
pandas.query(), but soon we found out that it doesn't handle all our use cases and we now start to patch the query inserted by the client and replacing it on the fly with some inline code which does the job...
I imagine it will get only worse from now on and wonder what other solutions could be there.