Version 1.9.0

This commit is contained in:
IGNY8 VPS (Salman)
2026-01-20 07:58:48 +00:00
parent bc50b022f1
commit 257b6817f1
9 changed files with 241 additions and 176 deletions

View File

@@ -1,7 +1,7 @@
# IGNY8 Change Log
**Current Version:** 1.8.2
**Last Updated:** January 19, 2026
**Current Version:** 1.8.3
**Last Updated:** January 20, 2026
---
@@ -9,6 +9,7 @@
| Version | Date | Summary |
|---------|------|---------|
| 1.8.3 | Jan 20, 2026 | **Billing System Standardization** - Two-pool credit system (plan + bonus), industry-standard renewal workflow (no advance notice for Stripe/PayPal), simplified bank transfer flow (3 emails), Payment Logs in admin, WebhookEvent logging for all payment types |
| 1.8.2 | Jan 19, 2026 | **Keywords Library Redesign & Sector Filtering** - Complete Keywords Library page overhaul with sector metric cards, Smart Suggestions, cascading filters, sector-specific keyword filtering, UI/UX improvements, and backend sector_ids parameter support |
| 1.8.1 | Jan 18, 2026 | **Automation Scheduling Overhaul** - Hourly scheduling (replaces 15-min windows), DefaultAutomationConfig singleton for centralized defaults, test mode for admin testing, Reset button fetches from backend, new migrations 0009-0012 |
| 1.8.0 | Jan 17, 2026 | **Major** - Unified Settings Consolidation: AI & Automation settings merged into Site Settings > Automation tab; Navigation Refactor Complete; Automation Overview & Run Detail pages; Publishing & Scheduling UX improvements; Skip Stage configuration; Content Calendar fixes |
@@ -49,6 +50,126 @@
---
## v1.8.3 - January 20, 2026
### Billing System Standardization & Two-Pool Credit System
This release implements industry-standard billing practices and introduces the two-pool credit system for clearer credit management.
---
### 💳 Two-Pool Credit System
**Architecture:**
- `account.credits` = Plan credits (from subscription, resets on renewal)
- `account.bonus_credits` = Purchased credits (NEVER expire, NEVER reset)
**Deduction Priority:**
1. Plan credits consumed FIRST
2. Bonus credits consumed only when plan credits = 0
**Key Behaviors:**
| Event | Plan Credits | Bonus Credits |
|-------|--------------|---------------|
| Payment success | Reset to plan amount | No change |
| No payment (24h) | Reset to 0 | No change |
| Late payment | Reset to plan amount | No change |
**Implementation:**
- All deduction logic centralized in `CreditService.deduct_credits()`
- AI functions unchanged - they call the same credit check/deduct methods
- Transparent to all consumers - two-pool logic is internal only
---
### 🔄 Renewal Workflow Standardization
**Stripe/PayPal (Auto-Pay) - Industry Standard:**
- **No advance notice** (like Netflix, Spotify, Adobe)
- Day 0: Auto-charge attempt
- Success: Receipt email + credits reset to plan amount
- Failure: Retry notification, Stripe retries 4x over 7 days
- Day +7: Expired if all retries fail
**Bank Transfer (Manual Pay) - Simplified 3-Email Flow:**
- Day -3: Invoice created + Email sent
- Day 0: Renewal day reminder (if unpaid)
- Day +1: Urgent reminder + credits reset to 0
- Day +7: Subscription expired
---
### 📋 Admin Improvements
**Payment Logs in Admin Sidebar:**
- Added "Payment Logs" link under Plans & Billing menu
- Quick access to WebhookEvent records
**WebhookEvent Logging:**
- All payment types now logged to WebhookEvent model:
- Stripe webhooks (existing)
- PayPal webhooks (existing)
- Bank transfer approvals (NEW)
- Manual payment events (NEW)
---
### 🔧 Celery Task Updates
**Renamed Tasks:**
| Old Name | New Name | Purpose |
|----------|----------|---------|
| `send_renewal_notices` | `create_bank_transfer_invoices` | Invoice 3 days before (bank transfer only) |
| `send_invoice_reminders` | `send_renewal_day_reminders` | Day 0 reminder (bank transfer) |
**Combined Tasks:**
- `send_day_after_reminders` now handles both Day +1 reminder AND credit reset
- Removed separate `reset_unpaid_renewal_credits` task
**Updated Schedule:**
| Task | Schedule | Purpose |
|------|----------|---------|
| `create_bank_transfer_invoices` | Daily 09:00 | Invoice 3 days before |
| `process_subscription_renewals` | Daily 00:05 | Auto-pay renewals |
| `send_renewal_day_reminders` | Daily 10:00 | Day 0 reminder |
| `send_day_after_reminders` | Daily 09:15 | Day +1 urgent + credit reset |
| `check_expired_renewals` | Daily 00:15 | Expire after 7-day grace |
---
### 📚 Documentation Updates
**Updated Files:**
- `docs/10-MODULES/BILLING-PAYMENTS-COMPLETE.md` - Primary billing reference
- `docs/10-MODULES/BILLING.md` - Added two-pool section
- `docs/90-REFERENCE/BILLING-SYSTEM-MASTER.md` - Complete rewrite
- `docs/90-REFERENCE/PAYMENT-SYSTEM.md` - Updated header
- `docs/INDEX.md` - Updated billing links
- `docs/40-WORKFLOWS/CONTENT-PIPELINE.md` - Fixed credit terminology
- `docs/10-MODULES/PLANNER.md` - Fixed credit cost descriptions
- `docs/10-MODULES/WRITER.md` - Fixed credit cost descriptions
**Key Documentation Changes:**
- Removed outdated "idea credit", "content credit", "image credit" terminology
- Updated to unified credit system based on AIModelConfig
- Credit costs now reference `tokens_per_credit` and `credits_per_image`
---
### Files Modified
**Backend:**
- `igny8_core/settings.py` - Added Payment Logs to admin sidebar
- `igny8_core/celery.py` - Updated task schedule
- `business/billing/billing_views.py` - Added WebhookEvent logging
- `modules/billing/views.py` - Added payment approval logging
- `business/billing/tasks/subscription_renewal.py` - Refactored tasks
**Documentation:**
- 8 documentation files updated for two-pool system
---
## v1.8.2 - January 19, 2026
### Keywords Library Complete Redesign & Sector-Specific Filtering