audits
This commit is contained in:
247
IGNY8_AI_AUDIT_PLAN.md
Normal file
247
IGNY8_AI_AUDIT_PLAN.md
Normal file
@@ -0,0 +1,247 @@
|
||||
# IGNY8 AI System Audit — Execution Plan
|
||||
|
||||
## Objective
|
||||
Perform a complete structural and functional audit of the IGNY8 AI subsystem exactly as it exists, without any modifications, renaming, or assumptions. Document all findings in a baseline report.
|
||||
|
||||
## Scope
|
||||
|
||||
### Primary Directory: `backend/igny8_core/ai/`
|
||||
**Core AI Files (15 files):**
|
||||
- `__init__.py` - Package initialization and exports
|
||||
- `admin.py` - Django admin configuration for AI models
|
||||
- `ai_core.py` - Core AI functionality
|
||||
- `apps.py` - Django app configuration
|
||||
- `base.py` - Base classes or utilities
|
||||
- `constants.py` - AI-related constants
|
||||
- `engine.py` - AI engine implementation
|
||||
- `models.py` - Database models for AI entities
|
||||
- `processor.py` - AI processing logic
|
||||
- `prompts.py` - Prompt templates and management
|
||||
- `registry.py` - Function/component registry
|
||||
- `settings.py` - AI-specific settings
|
||||
- `tasks.py` - Celery task definitions
|
||||
- `tracker.py` - Progress tracking and state management
|
||||
- `types.py` - Type definitions and schemas
|
||||
- `validators.py` - Validation logic
|
||||
|
||||
**AI Functions Subdirectory (5 files):**
|
||||
- `functions/__init__.py` - Function package exports
|
||||
- `functions/auto_cluster.py` - Automatic clustering functionality
|
||||
- `functions/generate_content.py` - Content generation logic
|
||||
- `functions/generate_ideas.py` - Idea generation logic
|
||||
- `functions/generate_images.py` - Image generation logic
|
||||
|
||||
### Related Directories
|
||||
|
||||
**`backend/igny8_core/utils/` (4 files):**
|
||||
- `ai_processor.py` - AI processing utilities
|
||||
- `content_normalizer.py` - Content normalization utilities
|
||||
- `queue_manager.py` - Queue management utilities
|
||||
- `wordpress.py` - WordPress integration utilities
|
||||
|
||||
**`backend/igny8_core/modules/` (AI-related files):**
|
||||
- `planner/tasks.py` - Planner module Celery tasks
|
||||
- `writer/tasks.py` - Writer module Celery tasks
|
||||
- `system/models.py` - System models (may contain AI settings)
|
||||
- `system/settings_models.py` - Settings models
|
||||
- `system/settings_views.py` - Settings views
|
||||
- `system/views.py` - System views
|
||||
- `system/utils.py` - System utilities
|
||||
|
||||
**Configuration Files:**
|
||||
- `backend/igny8_core/celery.py` - Celery configuration and task registration
|
||||
- `backend/igny8_core/settings.py` - Django settings (AI configuration loading)
|
||||
|
||||
## Audit Methodology
|
||||
|
||||
### Phase 1: File Inventory and Initial Reading
|
||||
1. Read all files in `backend/igny8_core/ai/` directory
|
||||
2. Read all files in `backend/igny8_core/ai/functions/` directory
|
||||
3. Read AI-related files in `backend/igny8_core/utils/`
|
||||
4. Read AI-related task files in `backend/igny8_core/modules/`
|
||||
5. Read configuration and integration files
|
||||
|
||||
### Phase 2: Function and Class Analysis
|
||||
1. Extract all function definitions with:
|
||||
- Function name
|
||||
- Parameters and types
|
||||
- Return values
|
||||
- Docstrings/documentation
|
||||
- Decorators (especially Celery tasks)
|
||||
2. Extract all class definitions with:
|
||||
- Class name
|
||||
- Inheritance hierarchy
|
||||
- Methods and their purposes
|
||||
- Class-level attributes
|
||||
3. Identify call sites for each function/class method
|
||||
|
||||
### Phase 3: Dependency Mapping
|
||||
1. Map import relationships:
|
||||
- Which files import from which files
|
||||
- External dependencies (libraries, Django, Celery)
|
||||
- Circular dependencies (if any)
|
||||
2. Create dependency graph/table showing:
|
||||
- Direct imports
|
||||
- Indirect dependencies
|
||||
- Shared utilities
|
||||
|
||||
### Phase 4: System Flow Analysis
|
||||
1. Trace request flow:
|
||||
- Frontend API endpoints → Views/Serializers
|
||||
- Views → Celery tasks
|
||||
- Celery tasks → AI functions
|
||||
- AI functions → External APIs/Models
|
||||
- Results → Database storage
|
||||
- Results → Response to frontend
|
||||
2. Document:
|
||||
- Entry points (API endpoints, admin actions, management commands)
|
||||
- Task queue flow (Celery task registration and execution)
|
||||
- State management (tracker, progress updates)
|
||||
- Error handling paths
|
||||
- Logging and debug output
|
||||
|
||||
### Phase 5: Integration Points Analysis
|
||||
1. **Celery Integration:**
|
||||
- Task registration in `celery.py`
|
||||
- Task decorators and configurations
|
||||
- Task routing and queues
|
||||
- Async execution patterns
|
||||
|
||||
2. **Database Integration:**
|
||||
- Models used by AI subsystem
|
||||
- Model relationships
|
||||
- Data persistence patterns
|
||||
- Query patterns
|
||||
|
||||
3. **Frontend Integration:**
|
||||
- API endpoints that trigger AI tasks
|
||||
- Serializers for AI data
|
||||
- Response formats
|
||||
- WebSocket/SSE for progress updates (if any)
|
||||
|
||||
4. **Configuration Integration:**
|
||||
- Settings loading (Django settings, environment variables)
|
||||
- Model/provider configuration
|
||||
- API key management
|
||||
- Feature flags or switches
|
||||
|
||||
5. **Debug Panel Integration:**
|
||||
- Debug logging mechanisms
|
||||
- Progress tracking
|
||||
- State inspection tools
|
||||
|
||||
### Phase 6: Redundancy and Pattern Identification
|
||||
1. Identify:
|
||||
- Duplicated code blocks
|
||||
- Similar functions with slight variations
|
||||
- Repeated patterns that could indicate consolidation opportunities
|
||||
- Unused or dead code
|
||||
- Overlapping responsibilities
|
||||
|
||||
2. Document patterns:
|
||||
- Common error handling approaches
|
||||
- Repeated validation logic
|
||||
- Similar processing pipelines
|
||||
- Shared utility patterns
|
||||
|
||||
### Phase 7: Documentation Compilation
|
||||
Create structured document with sections:
|
||||
1. **Current File Inventory** - List all files with brief role descriptions
|
||||
2. **Function Inventory** - Comprehensive list of all functions with descriptions
|
||||
3. **Class Inventory** - All classes and their purposes
|
||||
4. **Dependency Graph/Table** - Import relationships and dependencies
|
||||
5. **System Flow Description** - End-to-end flow documentation
|
||||
6. **Integration Points** - Detailed integration documentation
|
||||
7. **Identified Redundancies** - Patterns and duplications found
|
||||
8. **Summary of Potential Consolidation Areas** - Observations only (no refactoring proposals)
|
||||
|
||||
## Execution Rules
|
||||
|
||||
### Strict Guidelines:
|
||||
- ✅ **DO:** Read all code exactly as written
|
||||
- ✅ **DO:** Document what exists without modification
|
||||
- ✅ **DO:** Label any assumptions explicitly
|
||||
- ✅ **DO:** Trace actual code paths, not theoretical ones
|
||||
- ✅ **DO:** Include line numbers and file paths for references
|
||||
|
||||
### Prohibited Actions:
|
||||
- ❌ **DON'T:** Rename anything
|
||||
- ❌ **DON'T:** Merge or consolidate code
|
||||
- ❌ **DON'T:** Propose new architecture
|
||||
- ❌ **DON'T:** Suggest simplifications
|
||||
- ❌ **DON'T:** Make any code changes
|
||||
- ❌ **DON'T:** Create new files (except the audit document)
|
||||
- ❌ **DON'T:** Assume functionality without reading code
|
||||
|
||||
## Deliverable
|
||||
|
||||
**Document Title:** `IGNY8_AI_SYSTEM_AUDIT_BASELINE_REPORT.md`
|
||||
|
||||
**Structure:**
|
||||
```markdown
|
||||
# IGNY8 AI System Audit — Current Structure & Flow Mapping (Baseline Report)
|
||||
|
||||
## Executive Summary
|
||||
[Brief overview of findings]
|
||||
|
||||
## 1. Current File Inventory
|
||||
[Complete list with descriptions]
|
||||
|
||||
## 2. Function Inventory
|
||||
[All functions documented]
|
||||
|
||||
## 3. Class Inventory
|
||||
[All classes documented]
|
||||
|
||||
## 4. Dependency Graph/Table
|
||||
[Import relationships]
|
||||
|
||||
## 5. System Flow Description
|
||||
[End-to-end flows]
|
||||
|
||||
## 6. Integration Points
|
||||
[Celery, Database, Frontend, Configuration, Debug]
|
||||
|
||||
## 7. Identified Redundancies or Repetition
|
||||
[Patterns found]
|
||||
|
||||
## 8. Summary of Potential Consolidation Areas
|
||||
[Observations only]
|
||||
|
||||
## 9. Assumptions Made
|
||||
[Any assumptions explicitly labeled]
|
||||
|
||||
## 10. Appendix
|
||||
[Additional details, code snippets, etc.]
|
||||
```
|
||||
|
||||
## Execution Checklist
|
||||
|
||||
- [ ] Phase 1: Read all AI core files
|
||||
- [ ] Phase 1: Read all AI function files
|
||||
- [ ] Phase 1: Read all utility files
|
||||
- [ ] Phase 1: Read all module task files
|
||||
- [ ] Phase 1: Read configuration files
|
||||
- [ ] Phase 2: Extract and document all functions
|
||||
- [ ] Phase 2: Extract and document all classes
|
||||
- [ ] Phase 3: Map all import dependencies
|
||||
- [ ] Phase 4: Trace system flows
|
||||
- [ ] Phase 5: Document integration points
|
||||
- [ ] Phase 6: Identify redundancies
|
||||
- [ ] Phase 7: Compile final audit document
|
||||
|
||||
## Estimated File Count
|
||||
- **AI Core Files:** 15 files
|
||||
- **AI Functions:** 5 files
|
||||
- **Utilities:** 4 files
|
||||
- **Module Tasks:** 2 files
|
||||
- **System Module:** ~5 files
|
||||
- **Configuration:** 2 files
|
||||
- **Total:** ~33 files to analyze
|
||||
|
||||
## Notes
|
||||
- This is a discovery phase only
|
||||
- All findings must be based on actual code
|
||||
- No refactoring or improvements will be proposed
|
||||
- The goal is to understand the current state completely
|
||||
|
||||
Reference in New Issue
Block a user