|
|
|
|
|
"""
|
|
|
Script to organize and archive extra files in the project root
|
|
|
"""
|
|
|
|
|
|
import os
|
|
|
import shutil
|
|
|
from pathlib import Path
|
|
|
|
|
|
|
|
|
ROOT = Path(".")
|
|
|
|
|
|
|
|
|
ESSENTIAL_FILES = {
|
|
|
"app.py",
|
|
|
"Dockerfile",
|
|
|
"requirements_hf.txt",
|
|
|
"requirements.txt",
|
|
|
"README.md",
|
|
|
"config.py",
|
|
|
"ai_models.py",
|
|
|
"api_server_extended.py",
|
|
|
"hf_unified_server.py",
|
|
|
"docker-compose.yml",
|
|
|
"pyproject.toml",
|
|
|
"package.json",
|
|
|
".gitignore",
|
|
|
".dockerignore",
|
|
|
}
|
|
|
|
|
|
|
|
|
ARCHIVE_MAP = {
|
|
|
"archive/html/": [
|
|
|
"admin_advanced.html",
|
|
|
"admin.html",
|
|
|
"admin.html.optimized",
|
|
|
"complete_dashboard.html",
|
|
|
"dashboard.html",
|
|
|
"hf_console.html",
|
|
|
"index.html",
|
|
|
"pool_management.html",
|
|
|
"simple_overview.html",
|
|
|
"unified_dashboard.html",
|
|
|
],
|
|
|
"archive/docs/": [
|
|
|
"ADMIN_DASHBOARD_COMPLETE.md",
|
|
|
"ADMIN_ROUTING_UPDATE_FA.md",
|
|
|
"APL_FINAL_SUMMARY.md",
|
|
|
"APL_USAGE_GUIDE.md",
|
|
|
"APP_DEPLOYMENT_GUIDE.md",
|
|
|
"APP_IMPLEMENTATION_SUMMARY.md",
|
|
|
"APP_PY_UPDATE_SUMMARY_FA.md",
|
|
|
"AUDIT_COMPLETION_REPORT.md",
|
|
|
"CHANGELOG.md",
|
|
|
"CRYPTOBERT_QUICK_REFERENCE.md",
|
|
|
"DEPENDENCY_FIX_SUMMARY.md",
|
|
|
"DEPLOYMENT_CHECK_REPORT.md",
|
|
|
"DEPLOYMENT_MASTER_GUIDE.md",
|
|
|
"FINAL_SUMMARY.md",
|
|
|
"FINAL_UI_ROUTING_REPORT.md",
|
|
|
"FIX_SUMMARY_LOGGING_SETUP.md",
|
|
|
"HEYSTIVE_README_FA.md",
|
|
|
"HF_DOCKER_FIX.md",
|
|
|
"HUGGINGFACE_API_GUIDE.md",
|
|
|
"HUGGINGFACE_DEPLOYMENT_PROMPT.md",
|
|
|
"HUGGINGFACE_DIAGNOSTIC_GUIDE.md",
|
|
|
"IMPLEMENTATION_FIXES.md",
|
|
|
"IMPLEMENTATION_SUMMARY_FA.md",
|
|
|
"MODELS_AS_DATA_SOURCES.md",
|
|
|
"PROFESSIONAL_DASHBOARD_GUIDE.md",
|
|
|
"PROVIDER_AUTO_DISCOVERY_REPORT.md",
|
|
|
"PROVIDERS_CONFIG_UPDATE_FA.md",
|
|
|
"QUICK_REFERENCE_GUIDE.md",
|
|
|
"QUICK_START.md",
|
|
|
"QUICK_START_ADMIN.md",
|
|
|
"QUICK_START_ADVANCED_UI.md",
|
|
|
"QUICK_START_PROFESSIONAL.md",
|
|
|
"QUICK_TEST_GUIDE.md",
|
|
|
"README_HF_INTEGRATION.md",
|
|
|
"README_HUGGINGFACE_API.md",
|
|
|
"ROUTING_CONNECTION_SUMMARY_FA.md",
|
|
|
"UI_ROUTING_SUMMARY_FA.md",
|
|
|
],
|
|
|
"archive/scripts/": [
|
|
|
"diagnostic.sh",
|
|
|
"test.sh",
|
|
|
"TEST_COMMANDS.sh",
|
|
|
"TEST_ENDPOINTS.sh",
|
|
|
"verify_deployment.sh",
|
|
|
"start_crypto_bank.sh",
|
|
|
"api-monitor.js",
|
|
|
"failover-manager.js",
|
|
|
],
|
|
|
"archive/servers/": [
|
|
|
"app_gradio.py",
|
|
|
"api_dashboard_backend.py",
|
|
|
"api_loader.py",
|
|
|
"enhanced_server.py",
|
|
|
"gradio_ultimate_dashboard.py",
|
|
|
"production_server.py",
|
|
|
"real_server.py",
|
|
|
"simple_server.py",
|
|
|
],
|
|
|
"archive/reports/": [
|
|
|
"PROVIDER_AUTO_DISCOVERY_REPORT.json",
|
|
|
"providers_config_extended.backup.json",
|
|
|
"DASHBOARD_READY.txt",
|
|
|
"START.txt",
|
|
|
"VIEW_IMPROVED_DASHBOARD.txt",
|
|
|
],
|
|
|
"archive/": [
|
|
|
"Dockerfile.zip",
|
|
|
"requirements_gradio.txt",
|
|
|
"collectors.py",
|
|
|
"database.py",
|
|
|
"monitor.py",
|
|
|
"scheduler.py",
|
|
|
"log_manager.py",
|
|
|
"auto_provider_loader.py",
|
|
|
"provider_fetch_helper.py",
|
|
|
"provider_manager.py",
|
|
|
"provider_validator.py",
|
|
|
"import_resources.py",
|
|
|
"test_aggregator.py",
|
|
|
"test_crypto_bank.py",
|
|
|
"test_integration.py",
|
|
|
"test_providers_real.py",
|
|
|
"test_routing.py",
|
|
|
"verify_implementation.py",
|
|
|
"all_apis_merged_2025.json",
|
|
|
"ultimate_crypto_pipeline_2025_NZasinich.json",
|
|
|
],
|
|
|
}
|
|
|
|
|
|
def main():
|
|
|
"""Main function to organize files"""
|
|
|
moved_count = 0
|
|
|
skipped_count = 0
|
|
|
|
|
|
print("π Starting file organization...")
|
|
|
print(f"π Root directory: {ROOT.absolute()}\n")
|
|
|
|
|
|
|
|
|
for archive_dir in ARCHIVE_MAP.keys():
|
|
|
archive_path = ROOT / archive_dir
|
|
|
archive_path.mkdir(parents=True, exist_ok=True)
|
|
|
print(f"β
Created directory: {archive_dir}")
|
|
|
|
|
|
|
|
|
for archive_dir, files in ARCHIVE_MAP.items():
|
|
|
archive_path = ROOT / archive_dir
|
|
|
|
|
|
for filename in files:
|
|
|
source = ROOT / filename
|
|
|
|
|
|
if not source.exists():
|
|
|
print(f"β οΈ File not found: {filename}")
|
|
|
skipped_count += 1
|
|
|
continue
|
|
|
|
|
|
|
|
|
if filename in ESSENTIAL_FILES:
|
|
|
print(f"βοΈ Skipping essential file: {filename}")
|
|
|
skipped_count += 1
|
|
|
continue
|
|
|
|
|
|
dest = archive_path / filename
|
|
|
|
|
|
try:
|
|
|
|
|
|
dest.parent.mkdir(parents=True, exist_ok=True)
|
|
|
|
|
|
|
|
|
shutil.move(str(source), str(dest))
|
|
|
print(f"β
Moved: {filename} β {archive_dir}")
|
|
|
moved_count += 1
|
|
|
except Exception as e:
|
|
|
print(f"β Error moving {filename}: {e}")
|
|
|
skipped_count += 1
|
|
|
|
|
|
print(f"\nπ Summary:")
|
|
|
print(f" β
Files moved: {moved_count}")
|
|
|
print(f" βοΈ Files skipped: {skipped_count}")
|
|
|
print(f"\n⨠File organization complete!")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
main()
|
|
|
|
|
|
|