migrateConfig stamps a version string into config schemas. validateSchema then iterates the string's character indices, causing infinite recursion. Skip the 'version' key and guard against any non-object schema entries. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>