feat: add learner memory ingestion

This commit is contained in:
user
2026-04-26 16:34:52 +09:00
parent 4a4240fea2
commit 600acf7303
23 changed files with 931 additions and 24 deletions

View File

@@ -4,11 +4,13 @@ import (
"context"
"testing"
"tutor/internal/learnermemory"
"tutor/internal/workflows"
)
func TestDiagnosticSessionAnswerFlow(t *testing.T) {
service := NewService(NewMemoryStore(), workflows.NewStubRunner())
memory := learnermemory.NewService(learnermemory.NewMemoryStore())
service := NewService(NewMemoryStore(), workflows.NewStubRunner(), memory)
session, err := service.CreateSession(context.Background(), CreateSessionInput{
UserID: "user-1",
@@ -53,10 +55,22 @@ func TestDiagnosticSessionAnswerFlow(t *testing.T) {
if len(loaded.Answers) != 1 {
t.Fatalf("answers = %d, want 1", len(loaded.Answers))
}
snapshot, err := memory.Snapshot(session.UserID)
if err != nil {
t.Fatalf("memory snapshot error: %v", err)
}
if len(snapshot.Mastery) == 0 {
t.Fatal("expected memory mastery updates")
}
if len(snapshot.Mastery[0].Evidence) == 0 {
t.Fatal("expected memory evidence")
}
}
func TestDiagnosticSessionCompletesAfterAllQuestionsAnswered(t *testing.T) {
service := NewService(NewMemoryStore(), workflows.NewStubRunner())
memory := learnermemory.NewService(learnermemory.NewMemoryStore())
service := NewService(NewMemoryStore(), workflows.NewStubRunner(), memory)
session, err := service.CreateSession(context.Background(), CreateSessionInput{
UserID: "user-1",