Files
igny8/CHANGELOG.md
IGNY8 VPS (Salman) f10916bfab VErsion 1.3.2
2026-01-03 09:35:43 +00:00

1417 lines
54 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# IGNY8 Change Log
**Current Version:** 1.3.2
**Last Updated:** January 3, 2026
---
## Version History
| Version | Date | Summary |
|---------|------|---------|
| 1.3.2 | Jan 3, 2026 | **Major** - Publishing Scheduler, Onboarding Wizard, Content Calendar, Design System Consolidation, Site Dashboard redesign |
| 1.3.1 | Jan 2, 2026 | **Design System Consolidation** - Updated .rules with comprehensive design system & component rules, ESLint enforcement |
| 1.3.0 | Jan 1, 2026 | **Major** - Automation overhaul, AI provider integrations (Anthropic/Bria), Model Registry, Global Progress tracking, CSS globalization |
| 1.2.2 | Dec 28, 2025 | **NEW** - Full notifications page with filtering and bulk actions |
| 1.2.1 | Dec 28, 2025 | **Critical Fix** - AI task notifications now working |
| 1.2.0 | Dec 27, 2025 | **Final Launch Release** - Notifications system, Dashboard widgets, ThreeWidgetFooter, UI polish |
| 1.1.9 | Dec 27, 2025 | UI improvements - PageContext, SearchModal, AppHeader/Layout updates |
| 1.1.8 | Dec 27, 2025 | Section 6 SIDEBAR restructure - Dropdowns, breadcrumbs, navigation cleanup |
| 1.1.7 | Dec 27, 2025 | Section 5 HELP module - Support links, Documentation, FAQ updates |
| 1.1.6 | Dec 27, 2025 | Section 4 ACCOUNT modules - Profile API, Password Change, Billing improvements |
| 1.1.5 | Jan 2, 2025 | Section 3 WORKFLOW modules - Planner, Writer, Progress Modal fixes |
| 1.1.4 | Dec 27, 2025 | Section 2 SETUP modules - Add Keywords, Content Settings, Sites fixes |
| 1.1.3 | Dec 27, 2025 | Merged RULES.md into .rules |
| 1.1.2 | Dec 27, 2025 | Module status documentation, TODOS.md |
| 1.1.1 | Dec 27, 2025 | Simplified AI agent rules file |
| 1.1.0 | Dec 25, 2025 | UX overhaul, page consolidation, pre-launch audit |
| 1.0.5 | Dec 12, 2025 | Purchase Credits tab, UI reorganization |
| 1.0.4 | Dec 12, 2025 | Credit Activity tab, Cost Reference panel |
| 1.0.3 | Dec 12, 2025 | Usage Limits color variety, Cost Breakdown |
| 1.0.2 | Dec 12, 2025 | Usage Analytics consolidation, Design system |
| 1.0.1 | Dec 12, 2025 | Usage summary endpoint, Plan limits UI |
| 1.0.0 | Dec 12, 2025 | Initial production release |
---
## v1.3.2 - January 3, 2026
### Major Release: Publishing Scheduler, Onboarding Wizard & Content Calendar
This release introduces automated publishing scheduling, a streamlined onboarding wizard for new users, a content calendar for managing publishing schedules, comprehensive design system consolidation, and site-specific dashboard improvements.
---
### 📅 Publishing Scheduler System (NEW)
**Backend: Publishing Scheduler Tasks**
- **NEW FILE**: `backend/igny8_core/tasks/publishing_scheduler.py`
- `schedule_approved_content` - Hourly task that schedules approved content based on site's publishing settings
- `process_scheduled_publications` - Every 5 minutes, publishes content that's due
- `update_content_site_status` - Callback task for status updates after WordPress publish
- Calculates available slots based on publish_days, publish_time_slots, and daily/weekly/monthly limits
- Respects site-specific publishing limits
**Content Model Updates:**
- **NEW MIGRATION**: `0014_add_approved_status.py`
- Added `approved` status to Content model: `draft → review → approved → published`
- Created `ImagePrompts` proxy model
- **NEW MIGRATION**: `0015_add_publishing_scheduler_fields.py`
- `site_status` field: `not_published | scheduled | publishing | published | failed`
- `scheduled_publish_at` field: DateTime for scheduled publishing
- `site_status_updated_at` field: Timestamp for status tracking
**PublishingSettings Model (NEW):**
- **NEW MODEL**: `backend/igny8_core/business/integration/models.py`
- `auto_approval_enabled` - Auto-approve content after review
- `auto_publish_enabled` - Auto-publish approved content
- `daily_publish_limit`, `weekly_publish_limit`, `monthly_publish_limit`
- `publish_days` - JSON array of allowed days (mon, tue, wed, etc.)
- `publish_time_slots` - JSON array of times (09:00, 14:00, 18:00)
- Default: 3/day, 15/week, 50/month, Mon-Fri at 9am/2pm/6pm
**DefaultsService (NEW):**
- **NEW FILE**: `backend/igny8_core/business/integration/services/defaults_service.py`
- `create_site_with_defaults()` - Creates site with publishing and automation settings
- `apply_defaults_to_existing_site()` - Applies defaults to existing sites
- Optimized defaults for automated content publishing
**API Endpoints (NEW):**
- `GET /api/v1/integration/sites/{site_id}/publishing-settings/` - Get publishing settings
- `PUT/PATCH /api/v1/integration/sites/{site_id}/publishing-settings/` - Update settings
- `POST /api/v1/writer/content/{id}/schedule/` - Schedule content for publishing
- `POST /api/v1/writer/content/{id}/unschedule/` - Remove from schedule
- `GET /api/v1/writer/content/?status__in=` - Filter by multiple statuses
**Celery Beat Schedule:**
- Added `schedule-approved-content` task (hourly)
- Added `process-scheduled-publications` task (every 5 minutes)
---
### 🧙 Onboarding Wizard (NEW)
**NEW COMPONENTS**: `frontend/src/components/onboarding/`
**OnboardingWizard.tsx:**
- 5-step wizard for new user setup
- Manages wizard state and navigation
- Creates site with optimized defaults
**Step Components:**
- `Step1Welcome.tsx` - Welcome screen with feature overview
- `Step2AddSite.tsx` - Site creation with industry/sector selection
- Uses SelectDropdown for industry
- Badge-based sector selection (up to 5)
- Shows optimized defaults info card
- `Step3ConnectIntegration.tsx` - WordPress plugin installation
- API key display with copy button
- 4-step installation guide
- Connection test functionality
- Optional - can skip
- `Step4AddKeywords.tsx` - Initial keyword entry
- Multi-keyword input with paste support
- Keyword suggestions
- Optional - can skip
- `Step5Complete.tsx` - Success screen with next steps
- Setup summary
- Expected timeline
- Quick links to key areas
**Route:** `/setup/wizard` - New onboarding wizard page
---
### 📆 Content Calendar (NEW)
**NEW PAGE**: `frontend/src/pages/Publisher/ContentCalendar.tsx`
- Calendar view of scheduled content
- List view with drag-and-drop reordering
- Schedule/unschedule content
- View scheduled vs published vs approved content
- Month navigation
- Stats: scheduled, publishing, published counts
**Features:**
- Drag content from approved list to calendar dates
- Click to view content details
- Remove from queue functionality
- Publishing status badges (Scheduled, Publishing, Published, Failed)
- Real-time updates
**Route:** `/publisher/content-calendar` (main)
**Redirect:** `/sites/:id/publishing-queue``/publisher/content-calendar`
---
### 🎨 Design System Consolidation
**CSS Consolidation:**
- **NEW FILE**: `frontend/src/styles/design-system.css` (836 lines)
- Single source of truth for all design tokens
- Only 6 base hex values - everything else derived
- Tailwind default colors DISABLED
- Color scales: brand-*, success-*, warning-*, error-*, purple-*, gray-*
- Module-specific color schemes
- Dark mode support
- **DELETED FILES**:
- `frontend/src/styles/global.css`
- `frontend/src/styles/tokens.css`
- `frontend/src/index.css` (571 lines removed)
**ESLint Plugin (NEW):**
- **NEW FILE**: `frontend/eslint/eslint-plugin-igny8-design-system.cjs`
- `no-tailwind-default-colors` - Blocks blue-*, red-*, green-*, etc.
- `no-hardcoded-colors` - Blocks inline hex colors
- `no-lucide-imports` - Enforces local icon imports
- `no-icon-children` - Blocks children in icon components
**Module Color Scheme:**
- Planner (Keywords/Clusters/Ideas): Purple theme
- Writer (Tasks/Content/Images): Green theme
- Automation: Blue theme
- Publisher: Brand/Orange theme
- Unified visual distinction across pipeline
**Component Updates:**
- 100+ files updated for semantic color tokens
- All hardcoded Tailwind colors replaced
- All inline hex colors replaced
- Badge, Button, Card components updated
---
### 🏠 Site Dashboard Redesign
**Site Dashboard (`/sites/:id`):**
- **NEW**: SiteInfoBar component for site-specific pages
- **NEW**: Quick Actions grid (2-column card layout)
- **FIXED**: Race condition in Dashboard.tsx - async loadSiteData using stale closure
- AI Operations widget now loads real data from getDashboardStats API
- Proper site filtering for all widgets
**Site Settings Page:**
- Industry/Sector selector redesigned to match wizard style
- SelectDropdown for industry selection
- Badge-based sector selection with visual feedback
- Publishing Settings tab (NEW)
- Auto-approval toggle
- Auto-publish toggle
- Daily/Weekly/Monthly limits
- Publish days selection
- Time slots configuration
**Site List Page:**
- Enhanced site cards with setup progress
- WordPress connection status indicators
- Quick actions per site
---
### 📄 New Pages & Routes
| Route | File | Description |
|-------|------|-------------|
| `/setup/wizard` | `Setup/SetupWizard.tsx` | Onboarding wizard |
| `/publisher/content-calendar` | `Publisher/ContentCalendar.tsx` | Content calendar |
| `/ui-elements` | `UIElements.tsx` | Design system reference (internal) |
**Legacy Redirects:**
- `/sites/:id/publishing-queue``/publisher/content-calendar`
---
### 🔧 Backend Improvements
**New Migrations:**
- `0014_add_approved_status.py` - Content approved status
- `0015_add_publishing_scheduler_fields.py` - Scheduling fields
- `0003_add_publishing_settings.py` - PublishingSettings model
**Celery Configuration:**
- Added publishing scheduler tasks to celery beat
- New `tasks/__init__.py` consolidating all task imports
**WordPress Publishing:**
- Updated `publish_content_to_wordpress` to update `site_status`
- On success: site_status='published'
- On failure: site_status='failed'
---
### 🐛 Bug Fixes
**Dashboard:**
- Fixed race condition where async loadSiteData used stale siteId closure
- Now passes currentSiteId as parameter to loadSiteData function
- Fixed site 5 showing site 21 data issue
**Content Filtering:**
- Added `status__in` query parameter support for multiple status filtering
- Content serializer includes new `site_status` and `scheduled_publish_at` fields
**UI/UX:**
- Fixed industry/sector selector styling inconsistency
- Fixed Site Dashboard quick actions layout
- Fixed notification dropdown styling in dark mode
---
### 📚 Documentation Updates
**New Documentation:**
- `docs/30-FRONTEND/COMPONENT-SYSTEM.md` - Complete UI components reference
- `docs/30-FRONTEND/DESIGN-GUIDE.md` - Design system guidelines
- `docs/50-DEPLOYMENT/WORDPRESS-INTEGRATION-FLOW.md` - WordPress setup guide
- `docs/plans/FINAL-PRELAUNCH.md` - Pre-launch checklist
- `docs/plans/implemented/FRONTEND-AUDIT-PLAN.md` - Frontend audit plan
- `docs/plans/implemented/PUBLISHING-ONBOARDING-IMPLEMENTATION-PLAN.md` - Implementation plan
**Moved/Reorganized:**
- `IGNY8-APP.md``docs/00-SYSTEM/IGNY8-APP.md`
- `fixes-kb.md``docs/90-REFERENCE/FIXES-KB.md`
- Various plan docs → `docs/plans/implemented/`
**Updated Documentation:**
- `docs/INDEX.md` - Added new doc links, updated version
- `docs/30-FRONTEND/DESIGN-TOKENS.md` - Expanded with color scales
- `frontend/src/styles/README.md` - Updated for design-system.css
---
### 📁 Files Summary
**New Files (20+):**
```
backend/igny8_core/tasks/__init__.py
backend/igny8_core/tasks/publishing_scheduler.py
backend/igny8_core/business/integration/services/defaults_service.py
backend/igny8_core/modules/writer/migrations/0014_add_approved_status.py
backend/igny8_core/modules/writer/migrations/0015_add_publishing_scheduler_fields.py
backend/igny8_core/business/content/migrations/0003_add_publishing_settings.py
frontend/src/components/onboarding/OnboardingWizard.tsx
frontend/src/components/onboarding/steps/Step1Welcome.tsx
frontend/src/components/onboarding/steps/Step2AddSite.tsx
frontend/src/components/onboarding/steps/Step3ConnectIntegration.tsx
frontend/src/components/onboarding/steps/Step4AddKeywords.tsx
frontend/src/components/onboarding/steps/Step5Complete.tsx
frontend/src/components/onboarding/steps/index.ts
frontend/src/components/common/SiteInfoBar.tsx
frontend/src/components/ui/button/IconButton.tsx
frontend/src/components/ui/tooltip/CalendarItemTooltip.tsx
frontend/src/pages/Publisher/ContentCalendar.tsx
frontend/src/pages/Setup/SetupWizard.tsx
frontend/src/pages/UIElements.tsx
frontend/src/styles/design-system.css
frontend/eslint/eslint-plugin-igny8-design-system.cjs
frontend/audit-results/*.txt
```
**Major Changes (50+ files):**
- All frontend components updated for semantic colors
- Site Dashboard, Settings, Content pages redesigned
- Automation page color scheme updated
- 100+ files with color token replacements
**Deleted Files:**
- `frontend/src/styles/global.css`
- `frontend/src/styles/tokens.css`
- `frontend/src/index.css` (content moved to design-system.css)
- Various old logo files
- `docs/plans/final-fixes.md` (moved to implemented)
- `docs/plans/flexible-model-configuration-plan.md` (moved)
---
### Git Reference
```bash
# Commits since v1.3.0 (21 commits)
git log af408d0747429d94ab9168884c8f0e8e97add810..HEAD --oneline
# Key commits:
# f1ba0aa5 - Section 2 Completed
# 4d6ee214 - Section 2 Part 3
# e2d462d8 - Update dashboard and automation colors
# f28f641f - Components standardization 2
# e9606977 - Global Styling part 1
# f81fffc9 - Section 1 & 2 - Migration Run
# 03400169 - Section 3-8 - Migration Run
```
---
## v1.3.1 - January 2, 2026
### Design System Consolidation (Pre-Launch Section 1)
**Updated `.rules` file with comprehensive design system rules:**
- Added required doc reading: `COMPONENT-SYSTEM.md` mandatory for frontend work
- Added new Project Structure entries: Design Tokens, UI Components, Form Components, Icons paths
- Added complete Design System Rules section with color system (6 base colors only)
- Added Tailwind color classes allowed/banned list
- Added Component Rules section with required component mappings
- Added component quick reference with Button, InputField, Badge examples
- Added icon rules with import path and sizing guidelines
- Expanded coding rules from 14 to 20 rules (split backend/frontend)
- Added ESLint check step: `npm run lint` for design system violations
- Added comprehensive Don't Do section for frontend violations
- Updated Quick Checklist with separate Backend/Frontend sections
**Updated `DESIGN-GUIDE.md`:**
- Added Color System section with 6 base color tokens table
- Added Tailwind color utilities documentation (available vs disabled)
- Added color usage examples (correct vs wrong)
- Updated ESLint rules table with `no-icon-children` rule
- Added docker exec command for lint checking
- Updated last updated date
**Updated `frontend/DESIGN_SYSTEM.md`:**
- Updated status to "🔒 LOCKED"
- Updated last updated date
---
## v1.3.0 - January 1, 2026
### Major Release: Automation Overhaul & AI Provider Integrations
This release introduces significant improvements to the automation pipeline, adds support for multiple AI providers (Anthropic Claude, Bria AI), implements a centralized Model Registry for cost calculation, and includes comprehensive UI/UX improvements with CSS globalization.
---
### 🚀 Automation Pipeline Overhaul
**Complete Rewrite of Automation System:**
- Redesigned 7-stage automation pipeline with accurate progress tracking
- Added initial snapshot capture for proper progress percentage calculation
- Implemented incremental saves after each item for real-time UI updates
- Fixed progress calculation using stage-specific keys instead of summing all numeric values
- Stage 7 converted from "Manual Review Gate" to "Auto-Approve and Publish"
**New Components:**
- `GlobalProgressBar.tsx` - Full pipeline progress across all 7 stages with segmented visualization
- `CurrentProcessingCardV2.tsx` - Simplified real-time progress card
**Backend Improvements:**
- `automation_service.py` - Complete rewrite with proper item counting
- `_capture_initial_snapshot()` - Captures queue sizes at run start
- `_update_snapshot_after_stage()` - Updates counts for cascading stages
- Fixed `_get_processed_count()` to use stage-specific keys
- Credits now tracked via `CreditUsageLog` (matches billing source of truth)
- New `run_progress` API endpoint for unified progress data
**Stage Card UI Improvements:**
- New layout with icon, stage number, and function name in header
- Larger Pending/Processed counts with semantic colors
- Breathing circle indicator for active stages
- Progress bar with stage-specific gradient colors
- Credits and duration displayed inline
**Pipeline Overview Fixes:**
- Stage 1 pending now matches Keywords "New" count (removed `cluster__isnull` filter)
- Stage 3 uses `status='new'` instead of `status='approved'`
- Stage 4 uses `status='queued'` matching pipeline_overview
---
### 🤖 AI Provider Integrations
**Anthropic Claude Support:**
- Full integration with Claude API (claude-3-5-sonnet, claude-3-opus, claude-3-haiku)
- New `_make_anthropic_request()` method in AICore
- Cost calculation using ModelRegistry with fallback rates
- Token tracking (input/output) for accurate billing
- Added `anthropic_api_key` to GlobalIntegrationSettings
- Migration: `0013_add_anthropic_integration.py`
**Bria AI Image Generation:**
- Support for Bria AI image generation API
- New `_generate_image_bria()` method in AICore
- Models: bria-2.3, bria-2.3-fast, bria-2.2
- Added `bria_api_key` to GlobalIntegrationSettings
- Migration: `0012_add_bria_integration.py`
---
### 📊 Model Registry Service
**New Centralized Model Configuration:**
- `backend/igny8_core/ai/model_registry.py` - Central registry with caching
- Database-driven model configs via `AIModelConfig`
- Fallback to `constants.py` for backward compatibility
- 5-minute cache TTL for performance
**Features:**
- `ModelRegistry.get_model(model_id)` - Get config from cache/DB/constants
- `ModelRegistry.get_rate(model_id, rate_type)` - Get input/output/image rates
- `ModelRegistry.calculate_cost()` - Unified cost calculation
- `ModelRegistry.list_models()` - List all active models with filters
- `ModelRegistry.validate_model()` - Check if model is valid and active
**Migration:**
- `0009_seed_ai_model_configs.py` - Seeds initial model configurations
---
### 🎨 CSS Globalization & Design System
**Semantic Color Standardization:**
- Replaced hardcoded Tailwind colors with semantic tokens throughout:
- `blue-*``brand-*` (primary brand color)
- `green-*``success-*` (success states)
- `red-*``error-*` (error states)
- `yellow-*``warning-*` (warning states)
- `slate-*``gray-*` (neutral grays)
**Files Updated (100+ files):**
- All Automation components
- All Billing components
- All Auth components (SignIn, SignUp forms)
- All Marketing pages
- Account pages (Settings, Billing, Usage, Notifications)
- Planner, Writer, Thinker pages
- Common components (ProgressModal, ColumnSelector, etc.)
**CSS Cleanup:**
- Removed `igny8-colors.css` (617 lines deleted)
- Consolidated color definitions in `tokens.css`
- Updated `index.css` with streamlined utilities
---
### 📝 Prompt System Enhancements
**Prompt Prefix Tracking:**
- New prompt prefix system for tracking prompt source
- `##GP01-Clustering` (Global Prompt) vs `##CP01-Clustering` (Custom Prompt)
- `get_prompt_with_metadata()` returns prompt source information
- `get_prompt_prefix_for_function()` for tracking without full prompt fetch
**Prompt Types Added:**
- `PROMPT_PREFIX_MAP` with numbered prefixes for all 11 prompt types
- Enables tracking whether AI used global or customized prompts
---
### 📄 New Pages & Routes
**Legal Pages:**
- `frontend/src/pages/legal/Privacy.tsx` - Privacy Policy page
- `frontend/src/pages/legal/Terms.tsx` - Terms of Service page
- Routes added to App.tsx
---
### 🔧 Backend Improvements
**New Migrations:**
- `0006_automationrun_initial_snapshot.py` - Stores snapshot at run start
- `0008_global_payment_methods.py` - Global payment method support
- `0009_seed_ai_model_configs.py` - AI model configurations
- `0011_disable_phase2_modules.py` - Phase 2 module toggles
- `0012_add_bria_integration.py` - Bria AI integration settings
- `0013_add_anthropic_integration.py` - Anthropic integration settings
**API Enhancements:**
- New `run_progress` endpoint in automation views
- Account API expansions for usage tracking
- Billing API improvements for payment methods
**Planning Module:**
- Added `signals.py` for planning model signals
- Improved clustering service
- Fixed keyword status queries
---
### 🐛 Bug Fixes
**Automation:**
- Fixed progress percentage calculation (was summing all result values)
- Fixed Stage 1 pending count (was filtering by cluster__isnull)
- Fixed remaining count calculation during active processing
- Fixed credits tracking to use CreditUsageLog
**UI/UX:**
- Fixed PageHeader description rendering (removed from body, title in AppHeader)
- Fixed account page JSX syntax errors causing module import failures
- Fixed notification count display location
- Fixed duplicate headings on Plans & Billing page
**Backend:**
- Fixed content validation service
- Fixed clustering service dependencies
- Fixed writer admin configurations
---
### 📚 Documentation
**New Docs:**
- `docs/fixes/component-audit-report.md`
- `docs/fixes/design-verification-report.md`
- `docs/fixes/footer-widget-pagination-fix.md`
- `docs/fixes/phase2-module-activation.md`
- `docs/plans/MASTER-IMPLEMENTATION-PLAN.md`
- `docs/plans/flexible-model-configuration-plan.md`
- `docs/plans/final-fixes.md`
**Moved/Reorganized:**
- `TODOS.md``docs/plans/TODOS.md`
- `immediate-updates-completed.md``docs/immediate-updates-completed.md`
---
### Files Summary
**New Files (15):**
```
frontend/src/components/Automation/GlobalProgressBar.tsx (248 lines)
frontend/src/components/Automation/CurrentProcessingCardV2.tsx (344 lines)
frontend/src/pages/legal/Privacy.tsx (260 lines)
frontend/src/pages/legal/Terms.tsx (186 lines)
frontend/src/hooks/useWorkflowStats.ts (294 lines)
frontend/src/services/automationService.ts (71 lines)
backend/igny8_core/ai/model_registry.py (339 lines)
backend/igny8_core/business/planning/signals.py (130 lines)
backend/igny8_core/migrations/0006_automationrun_initial_snapshot.py
backend/igny8_core/business/billing/migrations/0008_global_payment_methods.py
backend/igny8_core/business/billing/migrations/0009_seed_ai_model_configs.py
backend/igny8_core/modules/system/migrations/0011_disable_phase2_modules.py
backend/igny8_core/modules/system/migrations/0012_add_bria_integration.py
backend/igny8_core/modules/system/migrations/0013_add_anthropic_integration.py
🚀 AUTOMATION PAGE MASTER FIX PLAN.md
```
**Major Changes (20+ files):**
- `frontend/src/pages/Automation/AutomationPage.tsx` - Complete UI overhaul
- `backend/igny8_core/ai/ai_core.py` - Anthropic & Bria integration (+557 lines)
- `backend/igny8_core/business/automation/services/automation_service.py` - Pipeline rewrite (+619 lines)
- `backend/igny8_core/business/automation/views.py` - New endpoints (+241 lines)
- `frontend/src/index.css` - CSS consolidation
- 100+ files updated for semantic color tokens
**Deleted Files:**
- `frontend/src/styles/igny8-colors.css` (617 lines)
- `COMPREHENSIVE-AUDIT-REPORT.md`
- Multiple test files in `frontend/src/__tests__/sites/`
- `to-do-s/` folder contents (migrated to docs)
---
### Git Reference
```bash
# Commits since v1.2.2 (20 commits)
git log 0605f650..HEAD --oneline
# Key commits:
# ea9125b8 - Automation revamp part 1
# 53fdebf7 - automation and ai and some planning and fixes
# c91175fd - styling css globalization
# 2af7bb72 - master plan implementation
# 89b64cd7 - modules widgets and colors and styling
# 0d3e25e5 - automation and other pages updates
```
---
## v1.2.2 - December 28, 2025
### Full Notifications Page Implementation
**Problem:**
- NotificationDropdown "View All Notifications" link was broken (404 error)
- Link pointed to `/notifications` which didn't exist
- No way to view full notification history or apply filters
- No bulk actions for managing notifications
**Solution:**
- Created comprehensive NotificationsPage at `/account/notifications`
- Added advanced filtering capabilities (severity, type, read status, site, date range)
- Implemented bulk actions (mark all as read)
- Integrated into sidebar navigation under ACCOUNT section
- Fixed broken link in NotificationDropdown
**Features:**
- **Filters:**
- Severity: info/success/warning/error
- Notification type: All AI operations, WordPress sync, credits, setup events
- Read status: all/unread/read
- Site: Filter by specific site
- Date range: From/to date filters
- **Actions:**
- Mark individual notifications as read
- Mark all as read (bulk)
- Delete individual notifications
- Navigate to action URL on click
- **UI:**
- Full notification history with proper styling
- Severity icons with color coding
- Relative timestamps with date-fns
- Site badges when applicable
- Unread badge in sidebar menu
- Empty states for no notifications/no matches
- Loading states with spinner
**Frontend Changes:**
- **NEW PAGE**: `frontend/src/pages/account/NotificationsPage.tsx`
- **Route Added**: `/account/notifications` in App.tsx
- **Sidebar**: Added Notifications menu item with Bell icon and unread count badge
- **Fixed**: NotificationDropdown link updated from `/notifications` to `/account/notifications`
**Documentation Updates:**
- `docs/30-FRONTEND/PAGES.md` - Added NotificationsPage with features
- `docs/10-MODULES/NOTIFICATIONS.md` - Updated with new page details, removed "broken link" warnings
- Version updated from v1.2.1 to v1.2.2
### Files Changed
- `frontend/src/pages/account/NotificationsPage.tsx` - NEW: Full notifications page
- `frontend/src/App.tsx` - Added notifications route and lazy import
- `frontend/src/components/header/NotificationDropdown.tsx` - Fixed link to /account/notifications
- `frontend/src/layout/AppSidebar.tsx` - Added Notifications menu item with Bell icon
- `docs/30-FRONTEND/PAGES.md` - Added NotificationsPage documentation
- `docs/10-MODULES/NOTIFICATIONS.md` - Updated with new page, fixed issues, version history
- `CHANGELOG.md` - Added this entry
### Files Added
```
frontend/src/pages/account/NotificationsPage.tsx (475 lines)
```
### Git Reference
```bash
git add frontend/src/pages/account/NotificationsPage.tsx frontend/src/App.tsx frontend/src/components/header/NotificationDropdown.tsx frontend/src/layout/AppSidebar.tsx docs/30-FRONTEND/PAGES.md docs/10-MODULES/NOTIFICATIONS.md CHANGELOG.md
git commit -m "feat: add full notifications page with filtering and bulk actions"
```
---
## v1.2.1 - December 28, 2025
### Critical Bug Fix - AI Task Notifications
**Problem:**
- Notifications system was implemented in v1.2.0 but notifications were never being created
- AI functions (clustering, idea generation, content generation, etc.) completed successfully but no notifications appeared in the dropdown
- NotificationService existed but was never called from AIEngine
**Root Cause:**
- `AIEngine.execute()` method completed successfully but never called `NotificationService`
- No notification creation in either success or failure paths
- Celery logs showed tasks completing but no notification records in database
**Solution:**
- Added `_create_success_notification()` method to AIEngine class
- Added `_create_failure_notification()` method to AIEngine class
- Integrated notification creation in `execute()` success path (after DONE phase)
- Integrated notification creation in `_handle_error()` failure path
- Used lazy imports to avoid Django app loading issues at module level
- Maps each AI function to appropriate NotificationService method:
- `auto_cluster``notify_clustering_complete/failed`
- `generate_ideas``notify_ideas_complete/failed`
- `generate_content``notify_content_complete/failed`
- `generate_image_prompts``notify_prompts_complete/failed`
- `generate_images``notify_images_complete/failed`
**Testing:**
- Celery worker restarted successfully with new code
- Notifications now created for both successful and failed AI operations
- Frontend notification dropdown will display notifications via existing API integration
**Documentation Added:**
- Created comprehensive `docs/10-MODULES/NOTIFICATIONS.md`
- Documents all notification types and triggers
- Includes frontend implementation details
- Lists all 15 notification types with message formats
- Debug commands and testing procedures
- Added to `docs/INDEX.md` module listing
- **Clarified:** No dedicated notifications page exists (only dropdown)
**Additional Fix - Keyword Import Notifications:**
- Added notification creation to `add_to_workflow` endpoint in KeywordViewSet
- When users add keywords to workflow, notification now appears
- Notification format: "Added X keywords to [site]"
- Lazy import pattern to avoid circular dependencies
### Files Changed
- `backend/igny8_core/ai/engine.py` - Added notification creation methods and integration points
- `backend/igny8_core/modules/planner/views.py` - Added notification for keyword import
- `docs/10-MODULES/NOTIFICATIONS.md` - NEW: Complete notifications module documentation
- `docs/INDEX.md` - Added Notifications module to index
### Files Added
```
docs/10-MODULES/NOTIFICATIONS.md
```
### Git Reference
```bash
git add backend/igny8_core/ai/engine.py backend/igny8_core/modules/planner/views.py docs/10-MODULES/NOTIFICATIONS.md docs/INDEX.md CHANGELOG.md
git commit -m "fix: AI task notifications + keyword import notifications + comprehensive docs"
```
---
## v1.2.0 - December 27, 2025
### Final Launch Release - Notifications, Dashboard, UI Polish
This release marks the final pre-launch state with comprehensive UI polish, real-time notifications, and dashboard overhaul.
**Backend: Notifications Module**
- **NEW MODULE**: `backend/igny8_core/business/notifications/`
- Models: `Notification`, `NotificationPreference`
- NotificationType choices: AI operations (cluster/ideas/content/images complete/failed), workflow events, WordPress sync, credits/billing, system
- Services: `NotificationService` for creating/managing notifications
- REST API: `/api/v1/notifications/` endpoints
- Registered in `settings.py` INSTALLED_APPS
- Added URL routing in `urls.py`
**Frontend: Notification System**
- **NEW STORE**: `notificationStore.ts` - Zustand store for notification management
- In-memory queue for optimistic UI
- API sync for persistent notifications
- Auto-dismissal with configurable timeout
- Read/unread state tracking
- Category-based filtering (ai_task, system, info)
- **NEW API SERVICE**: `notifications.api.ts`
- `fetchNotifications()`, `fetchUnreadCount()`
- `markNotificationRead()`, `markAllNotificationsRead()`
- `deleteNotification()`
- **UPDATED**: `NotificationDropdown.tsx` - Real notification integration
**Frontend: Dashboard Home Overhaul**
- **NEW WIDGETS** in `components/dashboard/`:
- `WorkflowPipelineWidget.tsx` - Visual flow: Sites → Keywords → Clusters → Ideas → Tasks → Drafts → Published
- `AIOperationsWidget.tsx` - Operation stats with time filter (7d/30d/90d)
- `RecentActivityWidget.tsx` - Activity feed with type icons
- `ContentVelocityWidget.tsx` - Week/Month/Total metrics table
- `AutomationStatusWidget.tsx` - Status, schedule, last/next run info
- `NeedsAttentionBar.tsx` - Alert bar for pending actions
- `QuickActionsWidget.tsx` - Quick action buttons
- `CreditAvailabilityWidget.tsx` - Credit balance display
- `OperationsCostsWidget.tsx` - Cost breakdown by operation type
- `SiteConfigWidget.tsx` - Site configuration status
- Updated `Home.tsx` to use new dashboard widgets with real data from APIs
**Frontend: ThreeWidgetFooter Component**
- **NEW COMPONENT**: `ThreeWidgetFooter.tsx` - 3-column footer for table pages
- Widget 1: Page Progress (metrics + progress bar)
- Widget 2: Module Stats (pipeline flow with arrows)
- Widget 3: Completion (tree structure for both modules)
- **NEW HOOK**: `useThreeWidgetFooter.ts` - Data preparation hook
- **IMPLEMENTED ON**: Keywords, Clusters, Ideas, Tasks, Content pages
**Frontend: Page Rename - Published → Approved**
- **RENAMED**: `Writer/Published.tsx``Writer/Approved.tsx`
- **RENAMED**: Config `published.config.tsx``approved.config.tsx`
- **ROUTE**: `/writer/approved` (legacy `/writer/published` redirects)
- Updated sidebar navigation label to "Approved"
**Frontend: Site Selectors**
- **NEW COMPONENTS**:
- `SingleSiteSelector.tsx` - Simple site dropdown
- `SiteWithAllSitesSelector.tsx` - Site selector with "All Sites" option
- Updated `SiteAndSectorSelector.tsx` for improved UX
- Enhanced `PageHeader.tsx` with badge props and breadcrumb support
**Backend: SiteSerializer Fixes**
- Fixed `has_integration` field to use `platform` field (not `integration_type`)
- Added missing serializer fields for frontend consumption
**Progress Modal Text Updates**
- Fixed placeholder "X" text in image prompt steps
- Improved step labels with actual counts when available
### Files Added
```
backend/igny8_core/business/notifications/
├── __init__.py
├── admin.py
├── apps.py
├── models.py
├── serializers.py
├── services.py
├── urls.py
├── views.py
└── migrations/0001_initial.py
frontend/src/components/dashboard/
├── AIOperationsWidget.tsx
├── AutomationStatusWidget.tsx
├── ContentVelocityWidget.tsx
├── CreditAvailabilityWidget.tsx
├── NeedsAttentionBar.tsx
├── OperationsCostsWidget.tsx
├── QuickActionsWidget.tsx
├── RecentActivityWidget.tsx
├── SiteConfigWidget.tsx
├── ThreeWidgetFooter.tsx
└── WorkflowPipelineWidget.tsx
frontend/src/components/common/
├── SingleSiteSelector.tsx
└── SiteWithAllSitesSelector.tsx
frontend/src/hooks/useThreeWidgetFooter.ts
frontend/src/services/notifications.api.ts
frontend/src/store/notificationStore.ts
```
### Files Modified
- `backend/igny8_core/settings.py` - Added notifications to INSTALLED_APPS
- `backend/igny8_core/urls.py` - Added notifications URL routing
- `backend/igny8_core/auth/serializers.py` - Fixed SiteSerializer fields
- `backend/igny8_core/ai/engine.py` - Progress tracking updates
- `frontend/src/App.tsx` - Route updates for approved page
- `frontend/src/layout/AppHeader.tsx` - Dashboard context support
- `frontend/src/layout/AppLayout.tsx` - Layout improvements
- `frontend/src/layout/AppSidebar.tsx` - Navigation label updates
- `frontend/src/pages/Dashboard/Home.tsx` - Complete dashboard overhaul
- `frontend/src/pages/Writer/*.tsx` - ThreeWidgetFooter integration
- `frontend/src/pages/Planner/*.tsx` - ThreeWidgetFooter integration
- `frontend/src/components/common/ProgressModal.tsx` - Text fixes
- `frontend/src/components/common/SiteCard.tsx` - Setup checklist updates
- `frontend/src/config/pages/*.config.tsx` - Column/action updates
- `frontend/src/config/routes.config.ts` - Route updates
- `frontend/src/context/PageContext.tsx` - Enhanced page context
- `frontend/src/icons/index.ts` - New icon exports
---
## v1.1.9 - December 27, 2025
### UI Infrastructure & Polish
**PageContext System**
- **NEW**: `PageContext.tsx` - React context for page-level state management
- Provides site filter, sector filter state to nested components
- Enables AppHeader to access current page info
**Search Modal**
- **NEW**: `SearchModal.tsx` - Global search modal component
- Cmd+K / Ctrl+K keyboard shortcut
- Search across pages, content, keywords
**Header & Layout Updates**
- Enhanced `AppHeader.tsx`:
- Site filter integration
- Breadcrumb support
- Search modal trigger
- Improved responsive behavior
- Updated `AppLayout.tsx`:
- Better sidebar/content coordination
- Dark mode improvements
- Updated `AppSidebar.tsx`:
- Module dropdown improvements
- Active state indicators
**Table Template Improvements**
- Enhanced `TablePageTemplate.tsx`:
- Better filter UI
- Improved empty states
- Column configuration updates
- Updated page configs for consistency
**Style Updates**
- `igny8-colors.css` - Token refinements
- Dark mode consistency improvements
### Files Added
- `frontend/src/components/common/SearchModal.tsx`
- `frontend/src/context/PageContext.tsx`
- `docs/30-FRONTEND/PAGE-REQUIREMENTS.md`
### Files Modified
- `frontend/src/layout/AppHeader.tsx`
- `frontend/src/layout/AppLayout.tsx`
- `frontend/src/layout/AppSidebar.tsx`
- `frontend/src/templates/TablePageTemplate.tsx`
- `frontend/src/pages/Planner/*.tsx`
- `frontend/src/pages/Writer/*.tsx`
- `frontend/src/styles/igny8-colors.css`
---
## v1.1.8 - December 27, 2025
### Section 6 Sidebar & Navigation Restructure
**Sidebar Module Changes:**
- **REMOVED** Linker from sidebar (module not ready for launch)
- **REMOVED** Optimizer from sidebar (module not ready for launch)
- **REORDERED** SETUP menu: Sites → Add Keywords → Content Settings → Thinker
**Sidebar Dropdown Navigation:**
- Added sub-item dropdowns for major modules in AppSidebar.tsx:
- **Planner**: Keywords, Clusters, Ideas
- **Writer**: Queue, Drafts, Images, Review, Published
- **Content Settings**: Content Generation, Publishing, Image Settings
- **Thinker**: Prompts, Author Profiles
- **Account Settings**: Account, Profile, Team
- **Plans & Billing**: Current Plan, Upgrade Plan, History
- **Usage Analytics**: Limits & Usage, Credit History, Activity Log
**URL-Based Tab Navigation:**
- Converted Account pages from useState tabs to URL-based navigation:
- `AccountSettingsPage.tsx` - `/account/settings`, `/account/settings/profile`, `/account/settings/team`
- `PlansAndBillingPage.tsx` - `/account/plans`, `/account/plans/upgrade`, `/account/plans/history`
- `UsageAnalyticsPage.tsx` - `/account/usage`, `/account/usage/credits`, `/account/usage/activity`
- `ContentSettingsPage.tsx` - `/account/content-settings`, `/account/content-settings/publishing`, `/account/content-settings/images`
- Added corresponding routes in App.tsx
**ModuleNavigationTabs Removal:**
- Removed redundant ModuleNavigationTabs from all pages (navigation now via sidebar):
- Planner: Keywords.tsx, Clusters.tsx, Ideas.tsx
- Writer: Tasks.tsx, Content.tsx, Images.tsx, Review.tsx, Published.tsx
- Thinker: Prompts.tsx, AuthorProfiles.tsx, Strategies.tsx, ImageTesting.tsx
- Sites: List.tsx
**Breadcrumb Navigation:**
- Added `breadcrumb` prop to PageHeader component
- Implemented breadcrumb display across all module pages
- Format: "Module / Page" (e.g., "Planner / Keywords", "Writer / Drafts")
**Files Modified:**
- `frontend/src/layout/AppSidebar.tsx` - Sidebar restructure with dropdowns
- `frontend/src/App.tsx` - Added sub-routes for URL-based navigation
- `frontend/src/components/common/PageHeader.tsx` - Added breadcrumb prop
- `frontend/src/pages/account/AccountSettingsPage.tsx` - URL-based tabs
- `frontend/src/pages/account/PlansAndBillingPage.tsx` - URL-based tabs
- `frontend/src/pages/account/UsageAnalyticsPage.tsx` - URL-based tabs
- `frontend/src/pages/account/ContentSettingsPage.tsx` - URL-based tabs
- `frontend/src/pages/Planner/*.tsx` - Removed tabs, added breadcrumb
- `frontend/src/pages/Writer/*.tsx` - Removed tabs, added breadcrumb
- `frontend/src/pages/Thinker/*.tsx` - Removed tabs, added breadcrumb
- `frontend/src/pages/Sites/List.tsx` - Removed tabs, added breadcrumb
---
## v1.1.7 - December 27, 2025
### Section 5 HELP Module Implementation
**Support Links Fixed (CRITICAL):**
- Fixed UserDropdown links going to `/profile` (404)
- "Edit profile" → `/account/settings`
- "Account settings" → `/account/settings`
- "Support" → `/help`
- Implemented Contact Support button with `mailto:support@igny8.com`
- Implemented Feature Request button with `mailto:feedback@igny8.com`
**Placeholder Pages Deleted (HIGH):**
- **DELETED** `pages/Help/Docs.tsx` - Empty placeholder
- **DELETED** `pages/Help/SystemTesting.tsx` - Empty placeholder
- **DELETED** `pages/Help/FunctionTesting.tsx` - Empty placeholder
- Removed routes `/help/docs`, `/help/system-testing`, `/help/function-testing` from App.tsx
**Documentation Added:**
- Added comprehensive Table of Contents with new sections
- Added Dashboard documentation section
- Added Setup Module documentation:
- Add Keywords (step-by-step guide)
- Content Settings (3 tabs explained)
- Sites Management (WordPress integration)
- Added Account & Billing documentation:
- Account Settings (Account, Profile, Team tabs)
- Plans & Billing (plan management, cancellation)
- Usage & Limits (credit tracking, alerts)
**FAQ Expanded:**
- Added 8 new FAQ items:
- How do credits work?
- What uses credits?
- How do I purchase more credits?
- How do I change my payment method?
- Can I cancel my subscription?
- How do I connect WordPress?
- Why isn't my content syncing to WordPress?
- Can I schedule automation to run at specific times?
- What happens if automation fails?
### Files Changed
- `frontend/src/App.tsx` - Removed placeholder help page imports/routes
- `frontend/src/components/header/UserDropdown.tsx` - Fixed all broken links
- `frontend/src/pages/Help/Help.tsx` - Added documentation sections, expanded FAQ, working support buttons
### Files Deleted
- `frontend/src/pages/Help/Docs.tsx`
- `frontend/src/pages/Help/SystemTesting.tsx`
- `frontend/src/pages/Help/FunctionTesting.tsx`
---
## v1.1.6 - December 27, 2025
### Section 4 ACCOUNT Modules Implementation
**Account Settings Page (`/account/settings`):**
- **Profile Tab**: Now loads user data from auth store (name, email, phone, timezone)
- **Password Change**: Added password change modal with validation
- Connects to `/v1/auth/change-password/` backend endpoint
- Validates minimum 8 characters, confirmation match
- Shows success/error feedback via toast
- Added `getUserProfile()`, `updateUserProfile()`, `changePassword()` to billing.api.ts
**Plans & Billing Page (`/account/plans`):**
- **Cancellation Confirmation Modal**: Cancel button now shows confirmation dialog
- Explains consequences: loss of features, 30-day credit preservation
- Requires explicit "Yes, Cancel Subscription" confirmation
- Prevents accidental cancellations
**Usage Analytics Page (`/account/usage`):**
- **Fixed Fake API Activity Data**: Removed hardcoded values
- Old: Hardcoded "98.5%" success rate, 1,234/567/342 endpoint calls
- New: Uses real `analytics?.usage_by_type` data
- Shows "Operations by Type" with actual credits/counts from backend
- Empty state when no operations recorded
**Cleanup:**
- **DELETED** `TeamManagementPage.tsx` - orphaned page (functionality exists in AccountSettingsPage Team tab)
- Legacy routes verified working: `/account/team``/account/settings`, `/settings/profile``/account/settings`
### Files Changed
- `frontend/src/services/billing.api.ts` - Added profile/password API functions
- `frontend/src/pages/account/AccountSettingsPage.tsx` - Password change modal, profile loading
- `frontend/src/pages/account/PlansAndBillingPage.tsx` - Cancellation confirmation modal
- `frontend/src/pages/account/UsageAnalyticsPage.tsx` - Real data for API Activity tab
### Files Deleted
- `frontend/src/pages/account/TeamManagementPage.tsx`
---
## v1.1.5 - January 2, 2025
### Section 3 WORKFLOW Modules Implementation
**Planner Module:**
- **DELETED** `KeywordOpportunities.tsx` - orphaned page, Add Keywords is source of truth
- Removed route `/planner/keyword-opportunities` from App.tsx
- Updated Clusters table to show ideas count badge: "X ideas" (green) or "No ideas" (gray)
- Made cluster name clickable in Ideas table - navigates to `/planner/clusters/:id`
**Writer Module:**
- Fixed duplicate tags/categories display in ContentView template
- Removed redundant tags/categories section that appeared below the main metadata
- Tags and categories now display only once in the Topic section
**Progress Modals:**
- Fixed placeholder "X" text in image prompt progress modals:
- Changed "Mapping Content for X Image Prompts" → "Mapping content for image prompts"
- Changed "Writing X Inarticle Image Prompts" → "Writing Inarticle Image Prompts"
- Changed "Featured Image and X Inarticle..." → "Image prompts ready for generation"
- All step labels now show actual counts when available, clean fallbacks otherwise
### Files Changed
- `frontend/src/App.tsx` - Removed KeywordOpportunities import/route
- `frontend/src/config/pages/clusters.config.tsx` - Ideas count badge styling
- `frontend/src/config/pages/ideas.config.tsx` - Clickable cluster link
- `frontend/src/templates/ContentViewTemplate.tsx` - Removed duplicate tags/categories
- `frontend/src/components/common/ProgressModal.tsx` - Fixed placeholder texts
- `docs/30-FRONTEND/PAGES.md` - Removed KeywordOpportunities references, updated version
- `docs/20-API/ENDPOINTS.md` - Added Content Settings API documentation
### Files Deleted
- `frontend/src/pages/Planner/KeywordOpportunities.tsx`
---
## v1.1.4 - December 27, 2025
### Section 2 SETUP Modules Implementation
**Add Keywords Page (`/setup/add-keywords`):**
- Added "Not Yet Added Only" filter toggle to show only keywords not in workflow
- Added keyword count summary: "X keywords in your workflow • Y available to add"
- Added "Next: Plan Your Content →" CTA button (appears after adding keywords)
- Added "Keyword Research coming soon!" teaser text
- Sector requirement tooltip already existed - no changes needed
**Content Settings Page (`/account/content-settings`):**
- **NEW Backend API**: Created `/v1/system/settings/content/<pk>/` endpoints
- `GET /v1/system/settings/content/content_generation/` - Retrieve settings
- `POST /v1/system/settings/content/content_generation/save/` - Save settings
- `GET /v1/system/settings/content/publishing/` - Retrieve settings
- `POST /v1/system/settings/content/publishing/save/` - Save settings
- Content Generation tab now persists: append_to_prompt, default_tone, default_length
- Publishing tab now persists: auto_publish_enabled, auto_sync_enabled
- Fixed false "saved" confirmation - now actually saves to backend
**Sites Module:**
- **NEW Component**: Created `SiteSetupChecklist` component showing setup progress
- Displays checklist: Site created, Industry/Sectors, WordPress integration, Keywords
- Progress bar with percentage
- "Complete Setup" button linking to first incomplete item
- "Ready to create content!" message when all complete
- Updated Site Dashboard to use SiteSetupChecklist instead of mock stats
- Removed mock statistics that showed all zeros
**Cleanup:**
- Deleted `pages/Sites/Manage.tsx` (redundant duplicate of List.tsx)
- Removed empty `pages/Sites/Builder/` folder structure
- Removed `/sites/manage` route from App.tsx
- Removed SiteManage lazy import from App.tsx
### Files Changed
- `frontend/src/pages/Setup/IndustriesSectorsKeywords.tsx`
- `frontend/src/pages/account/ContentSettingsPage.tsx`
- `frontend/src/pages/Sites/Dashboard.tsx`
- `frontend/src/App.tsx`
- `backend/igny8_core/modules/system/settings_views.py`
- `backend/igny8_core/modules/system/urls.py`
### Files Created
- `frontend/src/components/sites/SiteSetupChecklist.tsx`
### Files Deleted
- `frontend/src/pages/Sites/Manage.tsx`
- `frontend/src/pages/Sites/Builder/` (empty directory)
---
## v1.1.3 - December 27, 2025
### Changed
- **Merged RULES.md into .rules** - Single rules file for AI agents
- Added documentation rules section to `.rules`
- Deleted redundant `RULES.md` file
- Now only one rules file: `.rules`
---
## v1.1.2 - December 27, 2025
### Added
- **Module Status section** in `.rules` file showing active/inactive modules
- Linker, Optimizer marked as ⏸️ Inactive (Phase 2)
- SiteBuilder marked as ❌ Removed (deprecated)
- **TODOS.md** file for tracking deprecated code cleanup
- Template for logging SiteBuilder and other deprecated code
### Changed
- Updated "Don't Do" list with warnings about inactive modules and SiteBuilder
---
## v1.1.1 - December 27, 2025
### Changed
- **Rules File Overhaul**: Simplified `.rules` file for AI agents
- Reduced from 300+ lines to ~150 lines
- Added clear Docker container names and correct exec commands
- Added one-line rules format for quick reading
- Added quick reference table pointing to INDEX.md
- Removed verbose code examples (agents should read actual codebase)
- Added changelog format with git reference requirement
- **Added Data Scoping section** clarifying Global vs Account vs Site/Sector models
- Global settings (API keys, prompts, author profiles) are platform-wide, NOT account-scoped
- Site/Sector models (Keywords, Clusters, Content) need site+sector filtering
### Added
- **MODELS.md**: Added Data Scoping Overview table and Global Models section
- Documents `GlobalIntegrationSettings`, `GlobalAIPrompt`, `GlobalAuthorProfile`
- Clear distinction between Global/Account/Site scoped models
---
## v1.1.0 - December 25, 2025
### Major Changes
**Page Consolidation:**
- **AccountSettingsPage**: Consolidated into 3 tabs (Account, Profile, Team)
- Merged separate Team and Profile pages into single Account Settings page
- Removed redundant TeamManagement.tsx and ProfileSettings.tsx pages
- **ContentSettingsPage**: Rebuilt with 3 tabs (Content Generation, Publishing, Image Settings)
- Content Generation: Append to prompt, default tone, default length
- Publishing: WordPress auto-publish and sync toggles (removed Shopify/IGNY8)
- Image Settings: Quality, style, sizes, format settings
- **PlansAndBillingPage**: Simplified to 3 tabs (Plan, Upgrade, History)
- Removed duplicate Usage tab (Usage is separate page)
**Sidebar Navigation Cleanup:**
- Removed empty SETTINGS section label
- Moved AI Models to ACCOUNT section
- Removed version badge below logo
- Removed slogan widget from sidebar bottom
- Reduced vertical spacing between menu items
- Darkened group label colors for better visibility
- Removed Publishing menu item (moved to Content Settings tab)
- Removed Team, Profile, Import/Export menu items (consolidated)
**Route Updates:**
- Added redirects for legacy paths (/team, /profile, /import-export)
- Updated navigation to new consolidated pages
### Added
- **Pre-Launch Audit Document**: Comprehensive module-by-module audit
- 37 issues identified (10 critical, 14 high, 13 medium)
- Implementation phases defined
- Quick wins listed
- Orphaned files identified
### UX Improvements (Earlier in Dec 25)
- User-friendly text across all pages
- Improved Dashboard text per plan type
- Better descriptions in Planner, Writer, Automation modules
- Updated Sites and Add Keywords pages
- Improved Help documentation
### Fixed
- PlansAndBillingPage nested comment syntax error
- Button component consistency in Publishing settings
### Known Issues (from Audit)
- Content Generation/Publishing settings not connected to backend API
- Profile settings save is placeholder (no API)
- Password change button non-functional
- API Activity data is hardcoded
- Support buttons in Help have no handlers
## v1.0.5 - December 12, 2025
### Added
- **Purchase Credits Tab**: New dedicated tab in Plans & Billing
- Separated credit package purchases from Credits Overview
- Shows all available credit packages in horizontal scrollable layout
- Payment method requirement notice for users without payment methods
### Changed
- **Plans & Billing Tab Organization**: 4 tabs instead of 3
- Current Plan → Credits Overview → Purchase Credits → Billing History
- **Link Updates**: Purchase Credits buttons now link to correct tab
---
## v1.0.4 - December 12, 2025
### Added
- **Credit Activity Tab**: Transaction history in Usage Analytics
- **Credit Costs Reference Panel**: Shows cost per operation type
### Changed
- **Usage Analytics Reorganization**: 3 tabs (Limits & Usage, Activity, API Usage)
---
## v1.0.3 - December 12, 2025
### Added
- **Color Variety in Usage Limits**: Subtle color accents per limit type
- **Credit Cost Breakdown Panel**: Detailed cost analytics
### Changed
- **Plans & Billing Enhancement**: Cost analytics in Credits Overview tab
- **Comprehensive Color Refactoring**: All components use CSS variables
---
## v1.0.2 - December 12, 2025
### Changed
- **UI/UX Reorganization**: Consolidated Usage Analytics layout
- **Design System Enforcement**: Standardized IGNY8 brand colors
### Removed
- `frontend/src/styles/account-colors.css` - deprecated custom color file
---
## v1.0.1 - December 12, 2025
### Fixed
- Usage summary endpoint routing
### Added
- **Frontend Plan Limits Display**: Visual progress bars for all plan limits
- **IGNY8 Brand Styling**: Custom CSS design system
---
## v1.0.0 - December 12, 2025 (Initial Production Release)
### Core Features
**Multi-Tenancy System:**
- Complete account isolation with row-level security
- Multi-site management per account
- Sector-based content organization
- Role-based access control (Owner, Admin, Editor, Viewer)
**Planner Module:**
- Bulk keyword import (CSV)
- AI-powered keyword clustering (GPT-4)
- Global seed keyword database (50+ industries)
- Content idea generation from clusters
**Writer Module:**
- AI content generation (GPT-4)
- Task management and queuing
- Content taxonomy system
- Status workflow (draft, review, published)
**Image Generation:**
- DALL-E 3 and Runware providers
- Featured and in-article images
- Automatic alt text generation
**Automation Pipeline:**
- 7-stage automation (keywords → images)
- Scheduled runs (daily, weekly, monthly)
- Configurable batch sizes
**WordPress Integration:**
- One-click publishing
- Bidirectional sync
- Taxonomy synchronization
**Billing & Credits:**
- Usage-based credit system
- Plan-based limits
- Monthly usage tracking
### Tech Stack
- Django 5.x + DRF
- React 19 + TypeScript
- PostgreSQL + Redis
- Celery + Celery Beat
- Docker deployment
---
## Critical Bug Fixes - December 9, 2025
### Fixed
- **User Swapping Issue**: Redis sessions + NoCacheModelBackend + session integrity checks
- **HMR Navigation Errors**: Single top-level Suspense boundary for Routes
- **Registration Token Issue**: JWT tokens now returned on signup
---
## Pre-1.0 Development
### November-December 2025
- Initial development
- Multi-tenancy architecture
- AI integration (OpenAI, DALL-E, Runware)
- WordPress integration
- Automation pipeline
- Billing system
---
## Changelog Guidelines
When adding entries:
1. Use version format: `v{major}.{minor}.{patch}`
2. Categorize: Added, Changed, Fixed, Removed, Security
3. Include date
4. Reference related documentation if applicable
5. Note breaking changes prominently
**Update this file after every release or significant change.**