golang recover() - За что отвечает функция восстановления

Перевод официальной документации:
Встроенная функция recover позволяет программе управлять поведением горутины, находящейся в состоянии паники.

Вызов recover внутри отложенной функции (но не в какой‑либо функции, вызываемой из неё) останавливает падение в панику — восстанавливает нормальный ход выполнения программы и извлекает значение ошибки, переданное в вызов panic.

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

До версии Go 1.21 функция recover также возвращала nil, если panic вызывался с аргументом nil. Подробнее см. в разделе о panic

Официальная документация по recover:
https://pkg.go.dev/builtin#recover