Dragon Auto Alt
Generation and manual edits now report a failure when the alt text is not actually saved, and an empty AI reply is no longer counted as a success.
What's fixed in 1.0.10
- A failed save is reported as a failure. If WordPress refuses to write the alt text (a meta-caching or access-control plugin, or a database error), single and bulk generation no longer show "updated" for an image that still has no alt text. The bulk counter records it as failed, and the image keeps its place in the "without alt text" list.
- Empty AI replies are errors, not results. When a provider returns a 200 response with no description (a refusal, a safety block or an unexpected response shape), the image is reported as failed instead of being saved with empty alt text and counted as done. This applies to OpenAI, Anthropic Claude and Google Gemini.
- Manual updates report save failures. The plugin's manual alt-text update endpoint now returns an error when the save does not go through, instead of "Alt text updated!".
- Backslashes survive the save. Alt text containing a backslash (a file path, say) is now stored exactly as generated or typed. Previously the backslash was stripped on the way into the database.
- Non-JSON provider responses are handled. A 200 response whose body is not JSON (an HTML page from a proxy or gateway, or an empty body) now reports a clear error for that image instead of stopping generation with a fatal error.
- No fatal error on an unrecognised provider setting. Generation now returns a clear error if the configured provider is not one of the supported three.
- Alt text is confirmed in the media library before it counts as saved. A plugin or filter can intercept the save and report success without storing anything, so a run could report images updated while the alt text fields stayed empty (with the AI tokens already spent). The stored value is now read back and compared every time, for both bulk generation and editing a single image.
No settings, data or behaviour changes otherwise.
Housekeeping release: the readme changelog now covers 1.0.8. No functional change.
= 1.0.9 =
- Readme: changelog now covers 1.0.8, which shipped without an entry. No functional change.
Security & reliability: fixes a bulk-screen script-injection risk, tightens who can edit alt text, and makes generation work on staging/localhost.
= 1.0.8 =
- Security: AI responses and titles are now escaped in the bulk processor UI (prevents script injection); generating/editing alt text now requires edit rights on that specific image.
- Reliability: auto-generation on upload no longer blocks the upload and now runs in the background correctly; OpenAI images are sent inline so generation works on localhost, staging and password-protected sites.
- Hardening: the Google API key is sent as a header (not in the URL); API keys use authenticated encryption at rest.
Tested and verified on WordPress 7.1.
- Compatibility: tested up to WordPress 7.1.
- Fix: the first-run guidance panel now shows its intended styling.
Adds a full disclosure of what is sent to your chosen AI provider and when, a Delete-data-on-uninstall setting, and a server-side cap on bulk scan size.
Data safety: uninstalling the plugin now keeps your settings (including your API key) and generation history unless you explicitly opt in to deletion first — a reinstall picks up exactly where you left off. Your images' generated alt text is site content and is never removed either way. Opt in with wp option update dragonautoalt_delete_data_on_uninstall 1 before deleting if you want everything removed.
A guided first run, plus safer uninstall.
A new get-started panel walks the first-time setup end to end. Uninstalling also no longer deletes your settings unless you explicitly opt in.
The Auto Alt screens are back, wearing the new Dragon design system.
This release fixes a bug where the settings and bulk pages under Media could be unreachable ("Sorry, you are not allowed to access this page") because the menu registered too late. It also brings Dragon Core's design system: a consistent header, cleaner tables, and unified status colours.
No notes for this release.
No notes for this release.