- Removed email/password authentication and related settings from the plugin.
- Updated API connection logic to utilize only the API key for authentication.
- Simplified the admin interface by removing webhook-related settings and messages.
- Enhanced the settings page with improved UI and status indicators for API connection.
- Added a new REST API endpoint to check plugin status and connection health.
- Updated styles for a modernized look and feel across the admin interface.
- Updated the `IntegrationService` to perform connection tests using only the API key, removing reliance on username and app password.
- Simplified health check logic and improved error messaging for better clarity.
- Added functionality to revoke API keys in the `WordPressIntegrationForm` component.
- Enhanced site settings page with a site selector and improved integration status display.
- Cleaned up unused code and improved overall structure for better maintainability.
- Added a new API endpoint in the `IntegrationViewSet` to update the WordPress site structure, including post types and taxonomies.
- Implemented a function to retrieve the site structure and sync it to the IGNY8 backend after establishing a connection.
- Scheduled a daily cron job to keep the site structure updated.
- Enhanced the WordPress plugin to trigger synchronization upon successful API connection.
- Updated relevant files to support the new synchronization feature, improving integration capabilities.
- Enhanced the `error_response` function to support backward compatibility by normalizing arguments when positional arguments are misused.
- Updated various views to pass `None` for the `errors` parameter in `error_response` calls, ensuring consistent response formatting.
- Adjusted logging in `ContentSyncService` and `WordPressClient` to use debug level for expected 401 errors, improving log clarity.
- Removed deprecated fields from serializers and views, streamlining content management processes.
- Introduced `ContentTaxonomy` and `ContentAttribute` models for improved content categorization and attribute management.
- Updated `Content` model to support new fields for content format, cluster role, and external type.
- Refactored serializers and views to accommodate new models, including `ContentTaxonomySerializer` and `ContentAttributeSerializer`.
- Added new API endpoints for managing taxonomies and attributes, enhancing the content management capabilities.
- Updated admin interfaces for `Content`, `ContentTaxonomy`, and `ContentAttribute` to reflect new structures and improve usability.
- Implemented backward compatibility for existing attribute mappings.
- Enhanced filtering and search capabilities in the API for better content retrieval.
- Introduced a new Site Metadata endpoint (`GET /wp-json/igny8/v1/site-metadata/`) for retrieving available post types and taxonomies, including counts.
- Added API key input in the admin settings for authentication, with secure storage and revocation functionality.
- Implemented a toggle for enabling/disabling two-way sync operations.
- Updated documentation to reflect new features and usage examples.
- Enhanced permission checks for REST API calls to ensure secure access.
- Increased overall completion status to ~95% for both backend and frontend.
- Completed various UI enhancements including publish button logic, sidebar metadata display, and progress widgets.
- Finalized integration of metadata fields in Ideas and Tasks pages, along with validation and filtering capabilities.
- Updated documentation to reflect the latest changes and improvements in the metadata handling and UI components.
- Updated AI prompts to include metadata context, cluster roles, and product attributes for improved content generation.
- Enhanced GenerateContentFunction to incorporate taxonomy and keyword objects for richer context.
- Introduced new metadata fields in frontend components for better content organization and filtering.
- Added cluster match, taxonomy match, and relevance score to LinkResults for improved link management.
- Implemented metadata completeness scoring and recommended actions in AnalysisPreview for better content optimization.
- Updated API services to support new metadata structures and site progress tracking.
- Added entity metadata fields to the Tasks model, including entity_type, taxonomy, and cluster_role.
- Updated CandidateEngine to prioritize content relevance based on cluster mappings.
- Introduced metadata completeness scoring in ContentAnalyzer.
- Enhanced validation services to check for entity type and mapping completeness.
- Updated frontend components to display and validate new metadata fields.
- Implemented API endpoints for content validation and metadata persistence.
- Migrated existing data to populate new metadata fields for Tasks and Content.
- Changed migration dependencies in `0003_workflow_and_taxonomies.py` to reflect the correct order.
- Updated foreign key references from `account` to `tenant` in multiple migration files for consistency.
- Adjusted related names in foreign key fields to ensure proper relationships in the database schema.
- Introduced a new AI function `generate_page_content` to create structured content for website pages using JSON blocks.
- Updated `AIEngine` to handle the new function and return appropriate messages for content generation.
- Enhanced `PageGenerationService` to utilize the new AI function for generating page content based on blueprints.
- Modified `prompts.py` to include detailed content generation requirements for the new function.
- Updated site rendering logic to accommodate structured content blocks in various layouts.
- Updated `DebugScopedRateThrottle` to allow public access for blueprint list requests with site filters.
- Modified `SiteViewSet` and `SiteBlueprintViewSet` to permit public read access for list requests.
- Enhanced `loadSiteDefinition` to resolve site slugs to IDs, improving the loading process for site definitions.
- Improved error handling in `SiteDefinitionView` and `loadSiteDefinition` for better user feedback.
- Adjusted CSS styles for better layout and alignment in shared components.
- Added read-only access to shared frontend components in `docker-compose.app.yml`.
- Updated TypeScript configuration in `tsconfig.app.json` and `tsconfig.json` to support path mapping for shared components.
- Modified CSS imports in `index.css` to accommodate shared styles.
- Refactored layout rendering logic in `layoutRenderer.tsx` to utilize shared layout components for various site layouts.
- Improved template rendering in `templateEngine.tsx` by integrating shared block components for better consistency and maintainability.
- Added new CORS origins for local development and specific IP addresses in `settings.py`.
- Refactored API URL retrieval logic in `loadSiteDefinition.ts` and `fileAccess.ts` to auto-detect based on the current origin.
- Enhanced error handling in API calls and improved logging for better debugging.
- Updated `renderTemplate` function to support additional block types and improved rendering logic for various components in `templateEngine.tsx`.
- Introduced `igny8_sites` service in `docker-compose.app.yml` for serving deployed public sites.
- Updated `SitesRendererAdapter` to construct deployment URLs dynamically based on environment variables.
- Added `SiteDefinitionView` to provide a public API endpoint for retrieving deployed site definitions.
- Enhanced `loadSiteDefinition` function to prioritize API calls for site definitions over filesystem access.
- Updated frontend to utilize the new API endpoint for loading site definitions.
- Added a new method to fetch blueprints from the API, improving data retrieval for site structures.
- Updated the WizardPage component to include a progress modal for better user feedback during site structure generation.
- Refactored state management in builderStore to track structure generation tasks, enhancing the overall user experience.
- Replaced SyncIcon with RefreshCw in integration components for a more consistent iconography.
- Improved the site structure generation prompt in utils.py to provide clearer instructions for AI-driven site architecture.
- Introduced new models for Site Builder options, including BusinessType, AudienceProfile, BrandPersonality, and HeroImageryDirection.
- Added serializers and views to handle metadata for dropdowns in the Site Builder wizard.
- Updated the SiteBuilderWizard component to load and display metadata, improving user experience with dynamic options.
- Enhanced BusinessDetailsStep and StyleStep components to utilize new metadata for business types and brand personalities.
- Refactored state management in builderStore to include metadata loading and error handling.
- Updated API service to fetch Site Builder metadata, ensuring seamless integration with the frontend.
- Removed the separate `igny8_sites` service from Docker Compose, integrating its functionality into the main app.
- Updated the Site Builder components to enhance user experience, including improved loading states and error handling.
- Refactored routing and navigation in the Site Builder Wizard and Preview components for better clarity and usability.
- Adjusted test files to reflect changes in import paths and ensure compatibility with the new structure.
- Merged the site builder functionality into the main app, enhancing the SiteBuilderWizard component with new steps and improved UI.
- Updated the Docker Compose configuration by removing the separate site builder service and integrating its functionality into the igny8_sites service.
- Enhanced Vite configuration to support code-splitting for builder routes, optimizing loading times.
- Updated package dependencies to include new libraries for state management and form handling.
- Updated dropdown onChange handlers across multiple components to use direct value passing instead of event target value for improved clarity and consistency.
- Changed `url` to `site_url` in WordPress integration configuration for better semantic clarity.
- Enhanced Vite configuration to include `fast-deep-equal` for compatibility with `react-dnd`.
- Updated navigation paths in `SiteContentEditor` and `SiteList` for consistency with new routing structure.
- Changed `siteId` to `id` in `useParams` across multiple site-related components for consistency.
- Removed "Sites" from the sidebar settings menu.
- Updated navigation links in `SiteDashboard` to reflect new paths for integrations and deployments.
- Enhanced `SiteList` component with improved site management features, including modals for site creation and sector configuration.
- Added functionality to handle industry and sector selection for sites, with validation for maximum selections.
- Improved UI elements and alerts for better user experience in site management.
- Updated SiteSettings component to include a new 'Integrations' tab for managing WordPress integration.
- Added functionality to load, save, and sync WordPress integration settings.
- Integrated WordPressIntegrationCard and WordPressIntegrationModal for user interaction.
- Implemented URL parameter handling for tab navigation.
- Updated test cases in `test_universal_content_types.py`, `test_universal_content_linking.py`, and `test_universal_content_optimization.py` to initialize account credits for testing.
- Changed mock patch references to `run_ai_task` for consistency across tests.