> But linting and config validation are very different use cases. At a previous company I had test that loaded a set of configs from repo and made sure all of them were valid with app level logic.
Understandably so, especially when you might need, say, an AWS permission to actually validate a config (or are there other distinctions between the two that I'm not thinking of?)
I wasn't previously aware of treesitter, but it definitely looks like the type of thing we eventually want to do!
One of the things we currently do is run our own daemon and LSP proxy, so that we can share functionality between the CLI version of our tool and the VSCode extension. Right now we treat most linters as CLI black boxes, but we're looking at moving to treat more of them as LSP servers (we currently do this with eslint, but don't yet with ones like clangd or tflint).
And there is indeed more that we're building out! The other product that we're actively prototyping (and dogfooding) is our merge queue: https://trunk.io/products/merge.
Long-term, the vision for Trunk is to make development overall a more seamless experience, by actually tying together the various disparate tools that solve individual problems that we run into.