pdf-quiz-generator/backend
Daniel dbfdff90a1
Some checks failed
Tests / backend (push) Failing after 5s
Tests / frontend (push) Failing after 25s
Tests / e2e (push) Failing after 30s
fix: Reading is published, Editorial has its own address, and repeat works
Reading shows nobody drafts, not even an admin. An educator's unfinished
work sat among the published shelf with a tag on it, which made Reading
and Editorial two views of one list and left you unsure which you were
looking at. The list is published-only for everybody now, and the tag
and its style are gone with it — the badge stays on an article's own
page, where a draft can still be opened.

And Editorial has its own URL. /editorial/articles/:id renders the same
page, but the crumb reads "Editorial" and goes back to the queue.
Opening an article from the queue used to land on Reading's address, so
the only way out was the top of the published library — you lost your
place in the queue to look at one draft. Drafting from the reading page
lands there too, because a new draft is editorial work from the moment
it exists.

References from PubMed are fields, not a sentence. Every other
reference on an article is {title, author, pages} and the reader reads
those keys, so the flat line the PubMed path wrote drew as six blank
rows under a References heading: the DKA draft cited six real papers
and appeared to cite none. A paper now fills journal, year and PMID
instead of pages, and the PMID is a link to the record. Rows written
before this pull themselves apart on the way out rather than being
rewritten in the database, so the drafts that already exist heal
themselves.

Repeat session has never worked. The dialog asked the bank for mode
"study" — the name of the route it lands on — and the bank has "timed"
and "learning", so every repeat came back 422 and the dialog reported
its own house message, "Could not build that session", because the
detail was a list rather than a string. Both fixed: the right mode, and
a server that says something is quoted rather than swallowed.

And the objective named in "your performance analysis for Pediatrics
Boards" opens the objective picker. It was a link to the account page.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TqXevQJhxFrM7jJg82cgZN
2026-09-13 04:16:46 +02:00
..
alembic feat: a versioned API, refresh tokens, and an end-to-end stack that found four bugs 2026-09-13 01:23:38 +02:00
app fix: Reading is published, Editorial has its own address, and repeat works 2026-09-13 04:16:46 +02:00
scripts refactor: remove the LMS 2026-09-12 23:27:51 +02:00
tests fix: Reading is published, Editorial has its own address, and repeat works 2026-09-13 04:16:46 +02:00
.dockerignore Initial commit: PDF Quiz Generator app 2026-03-30 20:04:53 +00:00
.env.example feat: ground AI drafts in the library and PubMed, and mend the card system 2026-09-13 02:44:42 +02:00
alembic.ini Wire Alembic to live Postgres and fix startup DDL race 2026-04-14 04:49:23 +02:00
Dockerfile Initial commit: PDF Quiz Generator app 2026-03-30 20:04:53 +00:00
manage.py Cross-browser job tracking, hamburger fix, CLI extract, quiz delete keeps bank questions 2026-04-01 02:30:47 +02:00
requirements.txt fix: WebP figures, the openai SDK removed, and a voice a site can add to 2026-09-12 17:13:05 +02:00