в
можно ли пропускать расширение в download атрибуте тега a, чтобы оно бралось автоматически

о
можете пропускать расширение в атрибуте download тега <a>. Браузер автоматически определит правильный формат исходного файла и добавит нужное расширение к сохраненному файлу. [1, 2]

Как происходит

Если хотите изменить название при скачивании, вам достаточно указать только его новое имя. [1]

<a href="/files/server_name.pdf" download="my_report">Donload</a>

Этот файл скачается как my_report.pdf. Браузер возьмет расширение из ссылки (href) и добавит его к новому имени. [1]

Важные правила
Исходный файл: Браузер всегда смотрит на реальный тип файла (например, application/pdf), который отдает сервер. На его основе и выбирается расширение. [1, 2]
Пустое значение: Можете вообще не писать имя файла в атрибуте, а просто оставить download пустым. Тогда файл сохранится под своим оригинальным именем. [1]

<a href="/files/document.docx" download>Download</a>

Важные ограничения

Firefox: В браузере Firefox атрибут download работает только для файлов, которые лежат на том же домене, что и основной сайт. Если ссылка ведет на другой сайт (домен), браузер откроет файл в новой вкладке вместо скачивания. [1, 2]
Chrome и другие: Эти браузеры позволяют скачивать файлы с внешних сайтов, менять имена (указывать другое в download) они запрещают из safe соображений. В таком случае атрибут download будет проигнорирован, и файл сохранит свое исходное серверное имя.

Если  есть конкретный код или планируете скачивать файлы определенного типа (например, картинки или динамически создаваемые файлы), можно написать правильный синтаксис для такого случая.