fix(training): use KURRENT_RECOGNITION label for sender-based block queries

scriptType is only set after OCR runs, which can't happen before we have
a trained model. Both sender-based queries now filter on the training label
instead, consistent with findEligibleKurrentBlocks.

Also adds missing test coverage for findManualKurrentBlocksByPerson and
countManualKurrentBlocksByPerson (4 cases + count parity check).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Marcel
2026-04-30 10:15:25 +02:00
committed by marcel
parent aae005d5e6
commit dd9c4d57ee
2 changed files with 96 additions and 2 deletions

View File

@@ -65,7 +65,7 @@ public interface TranscriptionBlockRepository extends JpaRepository<Transcriptio
JOIN Document d ON d.id = b.documentId
WHERE b.source = 'MANUAL'
AND d.sender.id = :personId
AND d.scriptType = 'HANDWRITING_KURRENT'
AND 'KURRENT_RECOGNITION' MEMBER OF d.trainingLabels
""")
long countManualKurrentBlocksByPerson(@Param("personId") UUID personId);
@@ -74,7 +74,7 @@ public interface TranscriptionBlockRepository extends JpaRepository<Transcriptio
JOIN Document d ON d.id = b.documentId
WHERE b.source = 'MANUAL'
AND d.sender.id = :personId
AND d.scriptType = 'HANDWRITING_KURRENT'
AND 'KURRENT_RECOGNITION' MEMBER OF d.trainingLabels
""")
List<TranscriptionBlock> findManualKurrentBlocksByPerson(@Param("personId") UUID personId);
}