Yeah I don't think this will work. Show me the actual json that this produces and why you need to use this.
Much better than previous iteration. But still a lot of room for improvement.
Why is all this config hardcoded? Shouldn't it be exposed in the Score's configuration? I think it should have defaults so that users are not forced to set everything by themselves but it should not be hardcoded.
Is this really required? This feels wrong, at least it would deserve a small comment explaining why you are ALWAYS instanciating a hardcoded NullReceiver
I like this solution for now, I think the best solution would be a dedicated cluster per tenant but it makes sense why we can't. I think the proposed solution works for our current scale.…
You missed the point of using a trait here. See my comment and refactor accordingly.
This defeats the purpose of using a trait. Also prevents extensibility by external users of Harmony.