Make metadata parsing thread-safe and async
Add a global mutex and call the C get_metadata to fill a MaybeUninit
Mp3Entry
in place to avoid thread-safety and dangling pointer issues. Export a
new
extern get_metadata symbol.
Run metadata FFI on Tokio's blocking pool (spawn_blocking) and reduce
the
audio scan concurrency to 1 to avoid unsafe concurrent calls.
Convert artists::update_metadata to async (remove background thread) and
await it from the server handler.
Improve Typesense client error logging for JSON parse failures.
Fix CLI PATH formatting to include the user's ~/.rockbox/bin and tidy
imports.