Troubleshooting
Diagnose Solitude 4 builds, ES modules, PJAX, data files, search, and comments.
If a problem began while updating a 3.x blog, complete Upgrade to 4.0 before isolating individual modules.
Build and configuration
- Run
hexo cleanand regenerate. - Validate YAML indentation in both configuration files.
- Compare top-level theme keys with the v4.0.0 default configuration.
- Disable only the most recently enabled module and reproduce the error.
ES modules and CDN
- Confirm that
main.jsis loaded withtype="module". - Inspect the first failed dynamic import in the browser network panel.
- Ensure every first-party file comes from the same Solitude version.
- Preserve the complete relative
source/js/directory tree on a custom CDN. - Do not rewrite module URLs to isolated flattened filenames.
PJAX accumulation
Navigate repeatedly between the same two pages. Duplicate dialogs, players, callbacks, or network requests usually indicate custom code that registers permanent resources on every afterNavigate. Subscribe once, then use the page-scoped cleanup methods in Browser API.
Data and integration checks
- Confirm YAML data is an array or object matching the feature guide, not a generic
itemswrapper. - Verify
/links.jsonwhen friend-link asynchronous mode is active. - Verify
/search.xmlbefore debugging the local search UI. - Test provider URLs and domain allowlists from the deployed origin.
- Check that only supported providers are used for recent comments and PV counts.
When reporting a problem, include the Solitude version, Hexo and Node versions, relevant configuration with secrets removed, the generated URL, and the first console or network error.
