akioweh / EducationPerfected

JS script to automatically answer Education Perfect tasks
33 stars 38 forks source link

Answer Parsing Edge Case #37

Open akioweh opened 2 years ago

akioweh commented 2 years ago

Imma properly document when the script fails to correctly answer a question

Case 1:

when there are multiple different answers for the same question (but only one is correct) e.g. what is your name? ==> comment t'appelles tu? what is your name? ==> comment vous appelez-vous?

EP tries to tell you which answer it is with a "starts with xxxx" hint

console log of two examples:

===== Details after Incorrect Answer: =====
Detected Question:
 => so-so (informal) (starts with "B")
Inputted Answer:
 => plus ou moins

Modal Question:
 => so-so (informal)
Modal Full Answer:
 => Bof
Modal Cut Answer:
 => Bof
Modal Detected Answered:
 => plus ou moins

===== Details after Incorrect Answer: =====
Detected Question:
 => what is your name? (informal) (starts with "comment t")
Inputted Answer:
 => comment vous appelez-vous ?

Modal Question:
 => what is your name? (informal)
Modal Full Answer:
 => comment t'appelles-tu ?
Modal Cut Answer:
 => comment t'appelles-tu ?
Modal Detected Answered:
 => comment vous appelez-vous ?

Possible solution

EP's hint using the starting letters are (hopefully) in a fixed format: (starts with "<whatever it starts with>") so, I can try to parse that too when reading the question

akioweh commented 2 years ago

Case 2:

similar to one, but EP tells you what it ends with

===== Details after Incorrect Answer: =====
Detected Question:
 => and you? (informal) (ends with "i ?")
Inputted Answer:
 => et vous ?

Modal Question:
 => and you? (informal)
Modal Full Answer:
 => et toi ?
Modal Cut Answer:
 => et toi ?
Modal Detected Answered:
 => et vous
akioweh commented 2 years ago

Case 3:

when a comma is required in the answer (usually, I split the answer at commas because it signifies a multi-part answer they usually only require one part)

===== Details after Incorrect Answer: =====
Detected Question:
 => please help me, help me please
Inputted Answer:
 => aidez-moi

Modal Question:
 => please help me; help me please
Modal Full Answer:
 => aidez-moi, s'il vous plaît
Modal Cut Answer:
 => aidez-moi
Modal Detected Answered:
 => aidez-moi

Posible Solution:

idk will have to see if I can tell whether I should split at commas