Propagate logger metadata in spawned task

I recently observed a strange error in some code using this pattern:

** (ArgumentError) argument error
logger.erl:621 :logger.set_process_metadata(:undefined)

I’m not familiar with Erlang but looking at the docs, it looks like it might not be technically safe because get_process_metadata can return :undefined whereas set_process_metadata only accepts a metadata map?