fix: Restore all files lost during destructive rebase

A previous `git pull --rebase origin main` dropped 177 local commits,
losing 3400+ files across admin-v2, backend, studio-v2, website,
klausur-service, and many other services. The partial restore attempt
(660295e2) only recovered some files.

This commit restores all missing files from pre-rebase ref 98933f5e
while preserving post-rebase additions (night-scheduler, night-mode UI,
NightModeWidget dashboard integration).

Restored features include:
- AI Module Sidebar (FAB), OCR Labeling, OCR Compare
- GPU Dashboard, RAG Pipeline, Magic Help
- Klausur-Korrektur (8 files), Abitur-Archiv (5+ files)
- Companion, Zeugnisse-Crawler, Screen Flow
- Full backend, studio-v2, website, klausur-service
- All compliance SDKs, agent-core, voice-service
- CI/CD configs, documentation, scripts

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-02-09 09:51:32 +01:00
parent f7487ee240
commit 21a844cb8a
1986 changed files with 744143 additions and 1731 deletions

81
backend/ai_processor.py Normal file
View File

@@ -0,0 +1,81 @@
"""
AI Processor - Legacy Import Wrapper
This file provides backward compatibility for code that imports from ai_processor.
All functionality has been moved to the ai_processor/ module.
Usage (new):
from ai_processor import analyze_scan_structure_with_ai
Usage (legacy, still works):
from ai_processor import analyze_scan_structure_with_ai
"""
# Re-export everything from the new modular structure
from ai_processor import (
# Configuration
BASE_DIR,
EINGANG_DIR,
BEREINIGT_DIR,
VISION_API,
# Utilities (with legacy aliases)
encode_image_to_data_url as _encode_image_to_data_url,
dummy_process_scan,
# Vision - Scan Analysis
analyze_scan_structure_with_ai,
describe_scan_with_ai,
remove_handwriting_from_scan,
build_clean_html_from_analysis,
# Generators - Multiple Choice
generate_mc_from_analysis,
# Generators - Cloze
generate_cloze_from_analysis,
# Generators - Q&A with Leitner
generate_qa_from_analysis,
update_leitner_progress,
get_next_review_items,
# Export - Print Versions
generate_print_version_qa,
generate_print_version_cloze,
generate_print_version_mc,
generate_print_version_worksheet,
# Visualization - Mindmap
generate_mindmap_data,
generate_mindmap_html,
save_mindmap_for_worksheet,
)
# Legacy function alias
from ai_processor import get_openai_api_key as _get_api_key
__all__ = [
# Configuration
"BASE_DIR",
"EINGANG_DIR",
"BEREINIGT_DIR",
"VISION_API",
# Legacy private functions
"_get_api_key",
"_encode_image_to_data_url",
# Vision
"analyze_scan_structure_with_ai",
"describe_scan_with_ai",
"remove_handwriting_from_scan",
"build_clean_html_from_analysis",
"dummy_process_scan",
# Generators
"generate_mc_from_analysis",
"generate_cloze_from_analysis",
"generate_qa_from_analysis",
"update_leitner_progress",
"get_next_review_items",
# Export
"generate_print_version_qa",
"generate_print_version_cloze",
"generate_print_version_mc",
"generate_print_version_worksheet",
# Visualization
"generate_mindmap_data",
"generate_mindmap_html",
"save_mindmap_for_worksheet",
]