So mutation testing is able to create mutations that are not created by traditional mutations, these are mutations that are more dependent on contextual understanding of code which LLMs excel at. We do preprocessing on our side where we generate a minimal AST of all covered files and pass it to give the LLM a rich contextual understanding of the codebase, allowing us to generate good mutations. Also we make use of LiteLlm so it completely works with open source models too.
Hey our bad, the wording is not clear. We do make use of the AST to give the AI more context of the codebase.
Here is a YouTube video with a more in depth explanation of the benefits of using LLMs for mutation testing https://www.youtube.com/watch?v=8h4zpeK6LOA