The memoized-methods change is the real story here. If you build schemas dynamically, e.g. per-request validators in middleware, cache the schema object itself and do not recreate it per request, or you still pay the memory cost on every call regardless of the per-schema shrink.