Fixes the blank sidebar panel (issue #1).
On startup the plugin probed for the bundled TTS helper using plugin-root-relative paths via utils.resolvePath(). IINA throws on any non-absolute path, and that call ran inside a top-level initializer — so the exception aborted the rest of the entry script, including the iina.window-loaded handler that loads the sidebar. The sidebar tab came up empty.
Why it hit users but not the dev machine: ttsNativeHelperPath defaults to empty, so a fresh install always fell through to the throwing relative probe. On development machines the saved absolute helper path short-circuited the ||, so the throwing branch never executed. That is also why rebuilding the bundle alone did not change anything.
The fix rejects relative paths, treats a resolvePath throw as "not found", and wraps preference loading so no settings read can abort startup again.
Verified by installing this build with an empty ttsNativeHelperPath (the new-user state): the previous The path should be an absolute path error is gone and the plugin runs to completion.