No description
The refreshSavedFilesAfterAnalysis() function was correctly filtering the initial fetch by client, but the three retry attempts in the loop were missing the client filter parameter. This caused the first API call to correctly return only the selected client's files, but the subsequent three calls to return all files. Fixed by adding client filter to all refresh attempts in the loop. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> |
||
|---|---|---|
| __pycache__ | ||
| backend | ||
| config | ||
| frontend | ||
| output | ||
| uploads | ||
| .gitignore | ||
| ai_qc.service | ||
| apache_config.conf | ||
| AUTH_FIX_GUIDE.md | ||
| backend_backup_20251206_153116.tar.gz | ||
| CLAUDE.md | ||
| CLEANUP_SUMMARY.md | ||
| config.env | ||
| debug_mode.txt | ||
| DEPLOYMENT_RESTRUCTURE.md | ||
| DEPLOYMENT_STEPS.md | ||
| DEV_PROD_SETUP.md | ||
| FOLDER_STRUCTURE.md | ||
| headless_curl_examples.sh | ||
| MIGRATION_CHECKLIST.md | ||
| MIGRATION_GUIDE.md | ||
| MIGRATION_SUMMARY.md | ||
| msal_pkce_flow.md | ||
| README.md | ||
| REORGANIZATION_COMPLETE.md | ||
| requirements.txt | ||
| server.log | ||
| server_debug.log | ||
| web_ui.html | ||
Visual AI QC - Repository Structure
⚠️ Important: Work in backend/ Directory
All development and production code is now in the backend/ directory.
Directory Structure
ai_qc/
├── backend/ # 👈 MAIN APPLICATION - Work here!
│ ├── api_server.py # Flask application
│ ├── llm_config.py # LLM configuration (Gemini model settings)
│ ├── profile_config.py # Profile management
│ ├── visual_qc_apps/ # QC check modules (33 checks)
│ ├── profiles/ # QC profile configurations (6 profiles)
│ ├── brand_guidelines/ # Reference assets
│ ├── scripts/ # Deployment scripts
│ ├── config/ # Environment configs
│ ├── uploads/ # File uploads (production)
│ ├── output/ # Generated reports (production)
│ └── ... # All other application files
│
├── frontend/ # Frontend-only deployment (optional)
├── config/ # Legacy config (deprecated)
└── CLAUDE.md # Development guide
Quick Start
Local Development
cd backend/
./scripts/run-local.sh
# Access at http://localhost:7183
Production Deployment
# SSH to production server
ssh user@server
# Deploy backend to /opt/ai_qc
cd /opt/ai_qc
git pull origin main
cd backend
sudo systemctl restart ai_qc.service
Why This Structure?
Previously, we had duplicate files in both root and backend/ directories, causing sync issues. Now:
✅ Single source of truth: All code in backend/
✅ No sync issues: No duplicate files to keep in sync
✅ Clear structure: Production deploys from backend/
✅ Simpler workflow: One place to make changes
Documentation
- Full Documentation: See
backend/CLAUDE.md - Deployment Guide: See
backend/DEV_PROD_SETUP.md - API Endpoints: See
backend/README.md
Making Changes
- Navigate to
backend/ - Make your changes
- Test locally with
./scripts/run-local.sh - Commit and push
- Deploy to production:
git pullon server
🚀 Always work in the backend/ directory!