Skip to content

Mastery tracking v2 - #161

Open
jshuao wants to merge 4 commits into
georgia-tech-db:mainfrom
jshuao:mastery-tracking-v2
Open

jshuao wants to merge 4 commits into
georgia-tech-db:mainfrom
jshuao:mastery-tracking-v2

Conversation

@jshuao

@jshuao jshuao commented Oct 21, 2026

Copy link
Copy Markdown

Added 3 commits.

The first ensures that the true/false question generation actually generates true/false questions instead of generating normal questions.

The second ensures that the model stays loaded between chat and practice mode.

The third adds mastery tracking to the new practice mode.

- Ask for a "statement" field and a True/False statement package, so
  small models stop returning questions; reject items that are still
  phrased as questions.
- When a generated package is rejected, regenerate it once and tell the
  model what was wrong, and log the reason as
  practice_question_validation_failed.
- Credit evidence quoted verbatim from a different supplied passage to
  that passage, and ignore stray PDF spaces before punctuation.
- Ask Ollama to keep the model loaded for 10 minutes after each request.
- Load the model in the background when Chat or Practice opens, and
  refresh it on activity at most every 4 minutes, so returning after a
  pause starts loading before the next request. Refreshing reuses the
  loaded context size so it never triggers a reload.
- Unload the models the app used when it quits.
- Record each checked True/False answer under the session's topic and
  derive mastery from the attempt log: a correct answer counts 1 (0.5
  with help), an incorrect answer counts 1 against.
- Show mastery in the topic bar, the progress review, and a "Topics to
  revisit" list on the topic picker, weakest first.
- Schema 13: one practice_attempts table. Databases with the schema 12
  attempt log and topic_mastery table are migrated.
questions count more towards mastery than older
questions.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant