Complete (Completar texto)
El tipo complete evalua ejercicios donde el usuario escribe una palabra o frase en un espacio en blanco dentro de un texto. Acepta multiples respuestas alternativas correctas.
Estrategia de evaluacion
Identica a fill_blank: comparacion case-insensitive con trim. Si correctAnswer es un array, basta con que la respuesta del usuario coincida con cualquiera de las alternativas.
Cuando usarlo
Usa complete cuando el ejercicio presente un texto con espacios en blanco y pida al usuario que escriba la palabra correcta. Es equivalente a fill_blank pero semanticamente mas claro para ejercicios de “Completar el texto”.
Request
{ "exerciseId": "ex_complete_001", "area": "vocabulary", "type": "complete", "answer": "She", "correctAnswer": "She"}Con multiples alternativas
{ "exerciseId": "ex_complete_002", "area": "grammar", "type": "complete", "answer": "him", "correctAnswer": ["him", "He"]}Response
{ "correct": true, "score": 10, "feedback": "Correct!", "metadata": { "area": "grammar", "type": "complete" }}Ejemplo de ejercicio real
Texto del ejercicio:
Tom has a sister. ___ is very kind.
{ "exerciseId": "listening_u1_01", "area": "vocabulary", "type": "complete", "answer": "She", "correctAnswer": "She"}Notas
- La comparacion es case-insensitive:
"she"y"She"se consideran correctas. correctAnsweraceptastring(una sola respuesta) ostring[](multiples alternativas validas).- Si
correctAnswerno se envia, la evaluacion retornafalsecon feedback de error.