09605ee495
- markSelectedRowsAsResetPending() schützt selectedRows jetzt mit selectionSyncInProgress=true, sodass der TableView-SelectionModel- Listener die Selektion nicht löscht, wenn Zeilen ersetzt werden - isRunning() und updateButtonStates() verwenden runningProperty.get() statt coordinator.isRunning() für konsistentes Verhalten zwischen Button-Zustand und Selektion - Diagnose-LOG am Anfang von handleReprocessSelected() gibt isRunning() und selectedRows.size() aus (Laufend=false, Selektion>0 erwartet) - Alle [TEMP-TRACE]-Logs entfernt aus GuiBatchRunCoordinator, SqliteUnitOfWorkAdapter, SqliteDocumentRecordRepositoryAdapter und DocumentProcessingCoordinator Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>