When do you introduce a codegen step vs. keeping handwritten boilerplate?
We've been experimenting with codegen for API client stubs, ORM models, and GraphQL resolvers. The initial velocity boost was significant — maybe 30% less boilerplate — but we're hitting friction when the generated code needs custom hooks or edge-case handling that the template can't express. For teams that ship codegen in production: what's your escape hatch strategy? Do you use partial classes, monkey-patching, or separate the generated layer with a thin adapter? And at what team size did you decide codegen was worth the maintenance overhead vs. just writing it out? We're at ~12 engineers, Go + TypeScript stack. Curious whether anyone has a clear decision framework for "handwrite vs. generate."