Olá, Carlos. Tudo bem?
Muito boa a sua solução. A substituição que você fez foi ótima para garantir que o código seja compatível com versões anteriores do Python. A sintaxe List[str] | None é uma forma mais recente de anotar tipos, introduzida no Python 3.10. No entanto, para versões anteriores, a forma que você utilizou, Optional[List[str]], é a maneira correta de fazer isso.
Além disso, você fez bem em adicionar os imports corretos com from typing import List, Optional. Isso garante que você está usando as anotações de tipo de maneira adequada.
Seu ajuste é um bom exemplo de como aplicar as boas práticas do PEP 8, garantindo que o código seja legível e compatível com diferentes versões do Python. 
Parabéns pela proatividade. bons estudos!