I would expect the keyword list approach to work because it’s also used this way in the stdlib. For example, from docs_test.exs:
@doc "Callback doc"
@doc since: "1.2.3", color: :red, deprecated: "use baz/2 instead"
@doc color: :blue, stable: true
@callback foo(any) :: any
and
@doc deprecated: "Use Logger.delete_process_level(pid) instead"


















