The typeddict extra_items parameter is great for modelling JSON documents with extra keys, because we know that those extra keys will be strings, and the values will be JSON values. Unfortunately, mypy has been extremely slow in adding support for this feature, and it's not clear when it will be available. There are other issues with mypy, such as speed and correctness. So maybe we should look at an alternative. Both ty and pyrefly support typeddict extra items and are getting rapidly developed, so I would like to investigate using one (or both) for type-checking this codebase.
The typeddict extra_items parameter is great for modelling JSON documents with extra keys, because we know that those extra keys will be strings, and the values will be JSON values. Unfortunately, mypy has been extremely slow in adding support for this feature, and it's not clear when it will be available. There are other issues with mypy, such as speed and correctness. So maybe we should look at an alternative. Both ty and pyrefly support typeddict extra items and are getting rapidly developed, so I would like to investigate using one (or both) for type-checking this codebase.