a) AI-Phase ohne API-Key — analyzer.py:95-144
Bei use_ai=True und fehlendem ANTHROPIC_API_KEY schlaegt jeder API-Call fehl, wird per except: continue geschluckt. Frontend zeigt "fertig" - User glaubt KI lief.
b) HEIC-Upload ohne pillow-heif — server.py:21-26,157
Wenn _HEIF_SUPPORTED=False, wird HEIC raw gespeichert. Browser und cv2 koennen das nicht lesen.
c) Export-Skips — server.py:426-441
Pro Bild try/except Exception: pass. done zaehlt weiter. User merkt nicht, dass Bilder fehlen.
Fix
a) Vor Phase 4 API-Key pruefen, klar im Status melden (ai_failed: true)
b) HEIC ohne Support -> 415 mit Hinweis
c) failed_paths im Job-Status sammeln und im Frontend anzeigen
## Probleme
**a) AI-Phase ohne API-Key** — `analyzer.py:95-144`
Bei `use_ai=True` und fehlendem `ANTHROPIC_API_KEY` schlaegt jeder API-Call fehl, wird per `except: continue` geschluckt. Frontend zeigt "fertig" - User glaubt KI lief.
**b) HEIC-Upload ohne pillow-heif** — `server.py:21-26,157`
Wenn `_HEIF_SUPPORTED=False`, wird HEIC raw gespeichert. Browser und cv2 koennen das nicht lesen.
**c) Export-Skips** — `server.py:426-441`
Pro Bild `try/except Exception: pass`. `done` zaehlt weiter. User merkt nicht, dass Bilder fehlen.
## Fix
- a) Vor Phase 4 API-Key pruefen, klar im Status melden (`ai_failed: true`)
- b) HEIC ohne Support -> 415 mit Hinweis
- c) `failed_paths` im Job-Status sammeln und im Frontend anzeigen
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Probleme
a) AI-Phase ohne API-Key —
analyzer.py:95-144Bei
use_ai=Trueund fehlendemANTHROPIC_API_KEYschlaegt jeder API-Call fehl, wird perexcept: continuegeschluckt. Frontend zeigt "fertig" - User glaubt KI lief.b) HEIC-Upload ohne pillow-heif —
server.py:21-26,157Wenn
_HEIF_SUPPORTED=False, wird HEIC raw gespeichert. Browser und cv2 koennen das nicht lesen.c) Export-Skips —
server.py:426-441Pro Bild
try/except Exception: pass.donezaehlt weiter. User merkt nicht, dass Bilder fehlen.Fix
ai_failed: true)failed_pathsim Job-Status sammeln und im Frontend anzeigenFix in drei Teilen umgesetzt:
a) AI-Phase
_run_analyze_jobprueft API-Key vor Phase 4 (leer / Platzhalteryour_*/ Laenge < 30)ai_skipped-Feld im Status-Result mit klarer Begruendungalert("Hinweis: ...")wennai_skippedgesetzt istb) HEIC-Upload
/uploadlehnt HEIC ohne pillow-heif nicht mehr lautlos abskipped: [{name, reason}]mit Reasons:unsupported_extensiontoo_largeheif_unsupportedheic_decode_failed: ...c) Export-Skips
_run_export_jobsammelt fehlgeschlagene Pfade infailed: [{path, error}]failedArray zurueckfailed.length > 0Manueller Test:
use_ai=truemit.env-Platzhalteryour_anthropic_api_key_here->ai_skipped: "...Platzhalter/ungueltig...".