17 KiB
IGNY8 V2 — Master Execution Plan
Version: 1.1 | March 23, 2026
Status: Active — Execution Reference
Author: Salman (Alorig Systems) + Claude Opus
Execution Tool: Claude Code (SSH to VPS)
Source of Truth: Codebase at /data/app/igny8/ — all technical claims verified against actual code
1. What This Is
This is the single master document governing the complete IGNY8 V2 build — from infrastructure migration through SAG engine, all modules, WordPress ecosystem, business layer, and multi-app deployment. Every sub-phase references a dedicated build doc in this folder that Claude Code can pick up and execute independently.
2. Current State (Verified Against Codebase — March 23, 2026)
IGNY8 v1.8.4 is healthy and functionally production-ready.
2.1 Functional Status
| Area | Status |
|---|---|
| Settings save (content, publishing, profile) | ✅ Working |
| Password change | ✅ Working |
| Payments (Stripe/PayPal live, credits) | ✅ Working |
| Publishing flow (IGNY8 → WordPress) | ✅ Working |
| Security (Jan 2026 audit items) | ✅ Fixed |
| API Activity tracking | ⚠️ Placeholder data — only open item |
/system/ping/ & /system/sites/{id}/status/ |
Backend exists, frontend removed — wire when needed |
/writer/tasks/{id}/brief/ |
No current use case — v2 scope |
| Taxonomy sync, Linker/Optimizer, webhooks | Correctly scoped as v2 features, not bugs |
2.2 Verified Codebase Baseline
| Component | Verified Value |
|---|---|
| Django | >=5.2.7 (requirements.txt) |
| Python | 3.11-slim (Dockerfile) |
| Node | 18-alpine (Dockerfile.dev) |
| React | ^19.0.0 |
| TypeScript | ~5.7.2 |
| Vite | ^6.1.0 |
| Zustand | ^5.0.8 |
| Tailwind CSS | ^4.0.8 |
| Celery | >=5.3.0 |
| WP Plugin | IGNY8 WordPress Bridge v1.5.2 |
| Primary Key Strategy | BigAutoField (integer, NOT UUID) |
| AUTH_USER_MODEL | igny8_core_auth.User |
| DEFAULT_AUTO_FIELD | django.db.models.BigAutoField |
| Installed Apps | 34 Django apps |
| Middleware Stack | 13 middleware classes |
| Celery Beat Tasks | 14 scheduled tasks |
| AI Functions | 7 (auto_cluster, generate_ideas, generate_content, generate_images, generate_image_prompts, optimize_content, generate_site_structure) |
2.3 Container Inventory (docker-compose.app.yml — 7 containers)
| Container | Image | Host Port | Role |
|---|---|---|---|
| igny8_backend | igny8-backend:latest | 8011 | Django + Gunicorn (4 workers, 120s timeout) |
| igny8_frontend | igny8-frontend-dev:latest | 8021 | Vite dev server (port 5173 internal) |
| igny8_marketing_dev | igny8-marketing-dev:latest | 8023 | Marketing site dev server (port 5174 internal) |
| igny8_celery_worker | igny8-backend:latest | — | Celery worker (concurrency=4) |
| igny8_celery_beat | igny8-backend:latest | — | Celery beat scheduler |
| igny8_flower | igny8-backend:latest | 5555 | Celery monitoring |
Plus shared infra containers (external to app compose): postgres, redis, caddy, portainer, pgadmin, filebrowser
2.4 Existing Django Apps (34 in INSTALLED_APPS)
Business layer: automation, notifications, optimization, publishing, integration Module layer: planner (keywords/clusters/ideas), writer (tasks/content/images), billing, system, linker (inactive), optimizer (inactive), publisher, integration Auth & core: auth (Account, Site, Sector, User, Plan), ai, plugins, admin
2.5 Existing Models (key entities)
| App | Models |
|---|---|
| auth | Account, Plan, Subscription, Site, Sector, Industry, IndustrySector, SeedKeyword, User, SiteUserAccess |
| planning | Clusters (status: new/mapped), Keywords, ContentIdeas |
| content | Tasks, Content (content_type: post/page/product/taxonomy), ContentTaxonomy, ContentTaxonomyRelation, Images, ImagePrompts |
| automation | DefaultAutomationConfig, AutomationConfig (per-site), AutomationRun |
| integration | SiteIntegration, SyncEvent, PublishingSettings |
| publishing | PublishingRecord, DeploymentRecord |
| billing | CreditTransaction, CreditUsageLog, CreditCostConfig, AccountPaymentMethod, Payment, Invoice |
| system | IntegrationProvider, AIPrompt, IntegrationSettings, AuthorProfile |
| ai | AITaskLog |
| plugins | Plugin, PluginVersion, PluginDownload |
| notifications | Notification |
| optimization | OptimizationTask |
2.6 7-Stage Automation Pipeline
| Stage | Function | AI | Batch Size |
|---|---|---|---|
| 1 | Keywords → Clusters | Yes (auto_cluster) | 50 |
| 2 | Clusters → Ideas | Yes (generate_ideas) | 1 |
| 3 | Ideas → Tasks | No | 20 |
| 4 | Tasks → Content | Yes (generate_content) | 1 |
| 5 | Content → Image Prompts | Yes (generate_image_prompts) | 1 |
| 6 | Image Prompts → Images | Yes (generate_images) | 1 |
| 7 | Auto-approval → Publish | No | — |
2.7 What Does NOT Exist (common misconceptions from planning docs)
- No
sag/app — no SAGBlueprint, SAGAttribute, SAGCluster, or SectorAttributeTemplate models - No UUID primary keys — all models use BigAutoField (integer)
- No
sag_blueprintfield on Site model - No
blueprint_contextfield on Content or Tasks models - No
self_hosted_aiprovider in IntegrationProvider - No
/sag/site-analysisendpoint in the WordPress plugin - Content already has
content_type(post/page/product/taxonomy) andcontent_structure(article/guide/comparison/review/listicle/landing_page/etc) — these are not new fields - Linker & Optimizer modules exist in code but are inactive (behind feature flags)
Conclusion: Phase 0 is pure migration. No bug-fixing sprint needed. Current environment stays untouched — all new work on new server with zero downtime.
3. Architecture Overview
Current: Single VPS running IGNY8 app containers + shared Alorig infrastructure containers. App-level: 7 containers in docker-compose.app.yml (backend, frontend, marketing_dev, celery_worker, celery_beat, flower) + shared infra containers (postgres, redis, caddy, portainer, pgadmin, filebrowser). Of the 7 app containers, marketing_dev and flower are non-essential for production. Gitea self-hosted for git, no staging environment, no GitHub.
Target: New Hostinger KVM 4 (4 vCPU, 16GB RAM, 200GB NVMe) with shared Alorig infrastructure stack (PG, Redis, Caddy, Portainer). IGNY8 app runs 3 core containers (backend, celery_worker, celery_beat) + frontend served via Caddy. Same pattern for all other Alorig apps. Production + staging environments, GitHub for all repos, Cloudflare DNS, self-hosted AI on Vast.ai GPU.
IGNY8 v2 Transformation: From keyword-driven content generator → structure-first SAG-powered site architecture engine. Attributes first, not keywords first. Keywords emerge from attribute intersections across 45 industries, 449 sectors.
4. Technology Stack
| Layer | Current (v1.8.4) — Verified | V2 Addition |
|---|---|---|
| Backend | Django >=5.2.7, DRF, PostgreSQL (external), Redis (external), Celery >=5.3.0, Python 3.11 | SAG models, new module APIs |
| Frontend | React ^19.0.0, TypeScript ~5.7.2, Zustand ^5.0.8, Tailwind ^4.0.8, Vite ^6.1.0, Node 18 | Blueprint UI, wizard, dashboards |
| AI (Cloud) | OpenAI (via IntegrationProvider), Anthropic (via IntegrationSettings), Runware (images), DALL-E (images) | — |
| AI (Self-hosted) | — | Qwen3 (text), FLUX/SD (images), Wan 2.1 (video) via Vast.ai |
| WordPress | IGNY8 WordPress Bridge v1.5.2 | Plugin v2 (14 modules), Companion Theme, Toolkit |
| Infrastructure | Single VPS, Gitea self-hosted, no staging, Caddy reverse proxy | KVM 4 + Vast.ai GPU, GitHub, Cloudflare, prod + staging |
| DevOps | Manual | Claude Code via SSH |
5. Complete Execution Map
Phase 0 — Infrastructure & Migration
Goal: Healthy IGNY8 running on new server with staging, all repos on GitHub, legacy killed.
| Sub | Doc | What | Depends On |
|---|---|---|---|
| 0A | 00A-github-repo-consolidation.md |
All repos → 1 GitHub account, linked to Source-Codes/, remove Gitea | — |
| 0B | 00B-vps-provisioning.md |
New KVM 4, Cloudflare DNS, shared Docker infra (PG/Redis/Caddy/Portainer) | 0A |
| 0C | 00C-igny8-production-migration.md |
pg_dump → new server, Docker Compose, DNS cutover, zero downtime | 0B |
| 0D | 00D-staging-environment.md |
Staging environment: backend + celery_worker + celery_beat + frontend, separate DB (igny8_staging_db) + Redis DB 1 |
0C |
| 0E | 00E-legacy-cleanup.md |
Kill Gitea + non-essential containers (marketing_dev, flower, pgadmin, filebrowser), decommission old VPS | 0C |
| 0F | 00F-self-hosted-ai-infra.md |
Vast.ai GPU (2×RTX 3090) + SSH tunnel + LiteLLM + Ollama/Qwen3 + ComfyUI | 0B |
Phase 1 — SAG Core Engine
Goal: IGNY8 generates full site architectures from industry/sector selection (Case 2) and reverse-engineers existing sites (Case 1).
| Sub | Doc | What | Depends On |
|---|---|---|---|
| 1A | 01A-sag-data-foundation.md |
SAGBlueprint, SAGAttribute, SAGCluster, SectorAttributeTemplate — models + CRUD APIs | 0D |
| 1B | 01B-sector-attribute-templates.md |
Template loading, multi-sector merge, AI generation for 45 industries/449 sectors | 1A |
| 1C | 01C-cluster-formation-keyword-engine.md |
AI attribute intersection → clusters, type classification (7 types), 300-500+ keywords/site | 1B |
| 1D | 01D-setup-wizard-case2-new-site.md |
Wizard Step 3 (Site Structure), attribute review UI, blueprint preview, quick/detailed mode | 1C |
| 1E | 01E-blueprint-aware-pipeline.md |
Stage 0 (blueprint check), type-specific prompts, auto taxonomy assignment, priority ordering | 1D |
| 1F | 01F-existing-site-analysis-case1.md |
Plugin site crawl, AI attribute extraction, gap analysis, user confirmation, auto-tagging | 1E |
| 1G | 01G-sag-health-monitoring.md |
Health score (0-100), weekly Celery automation, blueprint evolution triggers, dashboard widget | 1F |
Phase 2 — Module Builds
Goal: All IGNY8 modules operational — content types, GSC, linking (internal + external), optimization, schema, social, video.
| Sub | Doc | What | Depends On |
|---|---|---|---|
| 2A | 02A-content-types-extension.md |
Pages, products, services, company, comparison, brand pages — each with own presets + prompts | 1E |
| 2B | 02B-taxonomy-term-content.md |
Term landing pages as first-class SEO pages, cluster mapping, rich content generation | 2A |
| 2C | 02C-gsc-integration.md |
OAuth, URL Inspection API (2K/day), auto-indexing, re-inspection schedule, search analytics, plugin sync | 1A (parallel) |
| 2D | 02D-linker-internal.md |
7 link types, scoring algorithm (5 factors), anchor strategy, density rules, audit + new content mode | 1G |
| 2E | 02E-linker-external-backlinks.md |
FatGrid API, PRNews.io, Linking News, EIN, campaign gen from blueprints, T1-T5 tiers, tipping point detection | 2D + 2C |
| 2F | 02F-optimizer.md |
Cluster-aligned rewriting, keyword coverage, heading restructure, schema gaps, before/after scoring, batch | 2B |
| 2G | 02G-rich-schema-serp.md |
10 JSON-LD types, on-page elements (TL;DR, TOC, tables, definitions, PAA), retroactive enhancement engine | 2A |
| 2H | 02H-socializer.md |
Native Django, 5 platforms (LinkedIn/Twitter/FB/IG/TikTok), OAuth, platform-specific adaptation, Stage 8, credits | 1E |
| 2I | 02I-video-creator.md |
Script gen from articles, TTS (cloud + self-hosted), FFmpeg composition, auto-subtitles, Stage 9 | 2H + 0F |
Phase 3 — WordPress Ecosystem
Goal: Complete WordPress product suite — standalone SEO plugin, connected premium mode, SAG-optimized theme, toolkit.
| Sub | Doc | What | Depends On |
|---|---|---|---|
| 3A | 03A-wp-plugin-standalone.md |
10 modules: SEO meta, schema, sitemap, redirects, intelligence, linker, socializer, analytics, SMTP, import | 2D + 2G |
| 3B | 03B-wp-plugin-connected.md |
API client, content sync, blueprint sync, taxonomy creation, cluster manager, structure visualization | 3A + 1G |
| 3C | 03C-companion-theme.md |
7 CPTs, 9 taxonomies, term landing pages, cluster hub templates, 15 section types, 50+ block patterns, 5 site-type starters | 3B |
| 3D | 03D-toolkit-plugin.md |
Performance (cache, critical CSS, image optimization), forms, security (firewall, hardening), SMTP, WooCommerce enhancements | 3C |
Phase 4 — Business Layer
Goal: Monetization infrastructure — managed services, agency tools, pricing aligned to feature releases.
| Sub | Doc | What | Depends On |
|---|---|---|---|
| 4A | 04A-managed-services.md |
Lite ($100/site/mo), Pro ($399/site/mo), backlink packages ($800-$8K/mo), client onboarding automation | 2E + 3B |
| 4B | 04B-whitelabel-reporting.md |
Agency dashboards, branded reports, white-label via Linking News | 4A |
| 4C | 04C-pricing-launch.md |
Plan pricing increase, WordPress.org plugin submission, go-to-market | 4B |
Phase 5 — Multi-App Deployment
Goal: Remaining 6 apps deployed on shared infrastructure, one at a time, monitoring RAM after each.
| Sub | Doc | What | Depends On |
|---|---|---|---|
| 5 | 05-other-apps-deployment.md |
Psydge → Snapify → Site Builder → Observer OS → AstroTiming → ASMS | Phase 4 complete |
Reference Documents (Appendices — not build docs)
| Doc | What | Source |
|---|---|---|
REF-sag-methodology.md |
Pure SAG theory, dimensional framework, clustering rules | SAG-Master-Document.md |
REF-industry-sector-list.md |
45 industries, 449 sectors, validation criteria | IGNY8-Industry-Sector-Master-List.md |
REF-niche-definition-process.md |
Template generation quality reference, hard constraints | SAG-Niche-Definition-Process.docx |
REF-current-state-v1.8.4.md |
Frozen baseline snapshot of v1.8.4 | IGNY8-Current-State.md + Platform Features docx |
SAGIndustry01HealthcareMedical.xlsx |
Healthcare SAG Excel template (formatting reference) | As-is |
6. Doc Structure Standard
Every build doc (00A through 05) follows this structure:
# [Phase.Sub] — Title
## 1. Current State
What exists today relevant to this sub-phase.
## 2. What to Build
Complete scope with acceptance criteria.
## 3. Data Models & APIs
New/modified models, endpoints, serializers.
## 4. Implementation Steps
Ordered steps Claude Code executes.
## 5. Dependencies & Cross-References
Which other docs this reads from or feeds into.
## 6. Acceptance Criteria
How to verify this sub-phase is complete.
## 7. Claude Code Instructions
Specific commands, file paths, test procedures.
Each doc is self-contained. Claude Code picks up one doc, reads it, executes it, verifies it — without needing to read the entire plan.
7. Source Doc Consolidation
After all V2-Execution-Docs are built, the following source locations get archived to Igny8/Archive/:
| Source Location | What's There | Action |
|---|---|---|
temp/IGNY8-Project-Files/ |
All planning docs (duplicates) | Archive entire folder |
Igny8 V2 New Final Plans/ |
SAG docs, plugin/theme plans, schema, linker, AI infra | Archive entire folder |
Live Docs on Server/igny8-app-docs/plans/ |
Future module plans, dev guides, GSC, socializer | Archive plans/ subfolder only |
Live Docs on Server/igny8-wp-plugin-docs/ |
Fix logs, audits, implementation plans | Keep as historical reference |
IGNY8-Complete-Platform-Features.docx |
Current feature inventory | Absorbed into REF-current-state, archive original |
Old plans November/ |
Superseded plans | Already archived, no action |
Live Docs operational folders stay untouched: 00-SYSTEM, 10-MODULES, 20-API, 30-FRONTEND, 40-WORKFLOWS, 50-DEPLOYMENT, 60-PLUGINS, 90-REFERENCE, audits.
8. Key Principles
- Codebase is the single source of truth — every technical claim in execution docs verified against actual code, not planning/reference docs
- Nothing working breaks — nullable fields, feature flags, staging first
- SAG is attribute-first — keywords are output, not input
- Same container pattern everywhere — backend + celery_worker + celery_beat per app, shared infra (PG/Redis/Caddy) across all Alorig apps
- Current environment never touched — all new work on new server
- All development via Claude Code — SSH to VPS, timelines compressed vs manual dev
- Each doc is self-contained — Claude Code executes one doc at a time without losing context
- Coexistence with existing models — new SAG models must define migration path for existing Clusters/Keywords/Content, not ignore them
- Monitor real usage — upgrade decisions are data-driven, not speculative
9. Timeline Estimate (Claude Code Execution)
| Phase | Scope | Estimated Duration |
|---|---|---|
| 0 | Infrastructure & Migration | 3-5 days |
| 1 | SAG Core Engine (7 sub-phases) | 2-3 weeks |
| 2 | Module Builds (9 modules) | 4-5 weeks |
| 3 | WordPress Ecosystem (4 products) | 3-4 weeks |
| 4 | Business Layer | 1 week |
| 5 | Other Apps | Ongoing, post-IGNY8 |
| Total (Phase 0-4) | IGNY8 complete | ~8-12 weeks |
Timelines assume focused execution without context-switching to client work.
This document is the single source of truth for IGNY8 V2 execution. All 34 sub-phase docs in this folder implement the plan defined here.