Add a “Default category” setting: pick the category ContentsOps posts are filed under. An explicit category list in the publish request takes precedence; with nothing configured the WordPress default category applies as before.
1.0.5
Rename all functions, classes, constants, options, script handles, post meta keys and the settings page slug to the unique contaihu prefix per the WordPress.org prefixing guidelines. Options stored under the old names are migrated automatically, so paired sites keep working.
Move the REST API to the contaihu/v1 namespace; the previous namespace keeps working as a deprecated alias for already-paired sites.
Load wp-admin/includes/image.php only right before generating attachment metadata and stop loading wp-admin/includes/file.php, which was not needed.
Update the Contributors list to the plugin owner account.
1.0.4
Declare compatibility with WordPress 7.0 (Tested up to).
Match the text domain to the wordpress.org plugin slug (contentsops-ai-humanizer-content-writer).
Restore real PHP 7.4 compatibility by removing PHP 8-only union type declarations.
Reject non-raster image uploads (e.g. SVG) on the media endpoint.
Sanitize incoming Authorization header and admin query flags.
Make the Reveal/Hide/Copied button labels translatable.
1.0.3
Fix WordPress.org plugin review rejection: Author URI pointed to the same URL as Plugin URI. Author URI now points to https://www.voxinity.io/.
1.0.2
Fix featured image not appearing in blog lists: detect the real image type from the binary and store it with the correct extension/MIME so the thumbnail renders and image sub-sizes are generated.
Fall back to the first inline image as the featured image when no featured media id is supplied.
1.0.0
Initial release: site-key auth, verify/media/posts endpoints, SEO meta (Yoast, Rank Math, native), Settings screen.