Welcome to the MongoDB community!
The documentation you referenced is specific to creating additional unique indexes for a sharded collection, although this may not be clear from a direct link to the page. MongoDB does not support unique indexes across shards, except when the unique index contains the full shard key as a prefix of the index.
If you are working with an unsharded collection, you can create unique indexes without the need for a proxy collection.
MongoDB does not have a fixed schema catalog, so there isn’t a strict requirement for all documents in a collection to have the same structure (or to keep track of migrations). You can impose schema validation requirements for insert/update operations using JSON Schema, but changing schema validation rules does not perform migrations of existing documents.
Depending on your use case, it may make sense to implement a migration strategy if your code is expecting identical schema in all documents. However, with flexible schema you have more control over the impact of migrations (instead of being limited to the “all-or-none” approach of a fixed schema).
For example, you could add a schema version to documents and migrate them incrementally when they are next read by your application (or as a background task). There’s also a
$jsonSchema query operator if you want to find documents matching a specific schema pattern.