Thanks for writing this! We shared a lot of the same sentiment about Helm/Tiller and were looking for a declarative way of application management over Helm’s imperative nature. When our search came up short, we decided to develop ArgoCD, which is a “GitOps” K8s deployment tool designed for multi-tenant clusters.
Helm 3 is definitely headed in the right direction by decomposing different aspects of Helm into reusable pieces. I find it very interesting about the choice of lua script, which is similar in concept to ksonnet-lib, but in the end is still imperative. Ksonnet/jsonnet has been working very well for us in handling our configuration management problem, and I personally prefer the hermetic nature of jsonnet, which causes least amount of surprises.