> Also source generators don't compose, so any source generation that we would want to use would need to take advantage of the JSON source generator
This is the biggest challenge I see, there are times where either Expression.Compile or T4 still 'feels' cleaner than sourcegen.
Well in system text json the api keeps the same and you „only“ need to pass an autogenerated meta object its basically the same api you just need to pass another object instead of an generic Parameter. But yeah its a change.
That's not an optimization, that's a programming model change.