diff --git a/apps/api/src/services/gameService.ts b/apps/api/src/services/gameService.ts index 7ecbdbe..542fba8 100644 --- a/apps/api/src/services/gameService.ts +++ b/apps/api/src/services/gameService.ts @@ -22,6 +22,7 @@ export const createGameSession = async ( correctAnswers.map(async (correctAnswer) => { const distractorTexts = await getDistractors( correctAnswer.termId, + correctAnswer.targetText, request.target_language, request.pos, request.difficulty, diff --git a/packages/db/src/models/termModel.ts b/packages/db/src/models/termModel.ts index 40fe706..1ffd56a 100644 --- a/packages/db/src/models/termModel.ts +++ b/packages/db/src/models/termModel.ts @@ -82,6 +82,7 @@ export const getGameTerms = async ( export const getDistractors = async ( excludeTermId: string, + excludeText: string, targetLanguage: SupportedLanguageCode, pos: SupportedPos, difficulty: DifficultyLevel, @@ -102,6 +103,7 @@ export const getDistractors = async ( eq(terms.pos, pos), eq(translations.difficulty, difficulty), ne(terms.id, excludeTermId), + ne(translations.text, excludeText), ), ) // TODO(post-mvp): same ORDER BY RANDOM() concern as getGameTerms — see comment there.