You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Cross-cutting test gate for the pre-revamp quiz repair batch under epic #537. Lands inside each workstream PR (A–F), tracked here so nothing ships mocked-only.
Encryption round-trips through the routes: write via HTTP, read the raw column and assert ciphertext, read via the app and assert the original structure — for questions_json, answers_json, context_json.
Subcutaneous HTTP→real-DB coverage: generate (each difficulty including adaptive, boundary counts), answer, submit, replay 409, resume, history.
frontend/e2e/quiz.spec.ts (test(e2e): journey — quiz answer → mastery update (UI + DB) #393 journey) updated for any wire changes; the function-mode seam contract (correct labels B, C, A) and the #184 zero-question guard stay pinned; +0.09 mastery delta unchanged unless deliberately changed with a same-commit comment (see Workstream E).
Cross-cutting test gate for the pre-revamp quiz repair batch under epic #537. Lands inside each workstream PR (A–F), tracked here so nothing ships mocked-only.
Requirements (Chapter 1: deterministic, gates merges)
quiz_responseswrites are exactly the silent-failure class this suite exists to catch (quiz_context lost UNIQUE (user_id, concept_node_id) in 0025 — save_quiz_context's upsert 42P10s and the failure is swallowed #529 survived months because the failing write was only ever mocked).questions_json,answers_json,context_json.adaptive, boundary counts), answer, submit, replay 409, resume, history.frontend/e2e/quiz.spec.ts(test(e2e): journey — quiz answer → mastery update (UI + DB) #393 journey) updated for any wire changes; the function-mode seam contract (correct labels B, C, A) and the#184zero-question guard stay pinned;+0.09mastery delta unchanged unless deliberately changed with a same-commit comment (see Workstream E).save_quiz_contextthrows — the quiz_context lost UNIQUE (user_id, concept_node_id) in 0025 — save_quiz_context's upsert 42P10s and the failure is swallowed #529 class must be impossible to reintroduce quietly (re-raise in test envs per Workstream B).agents/function_handlers_e2e.pyhandler constants ↔ spec assertions ↔tests/test_e2e_function_handlers.pyin sync for any quiz agent-contract change.Done when
Workstreams A–F each merged with their slice of this coverage green across: hermetic suite, Chapter 1 Playwright lane, e2e oracles.