Skip to content

feat(authors): aliases, life years and era from Sefaria author topics - #107

Merged
kdroidFilter merged 1 commit into
masterfrom
feat/author-topics
Oct 8, 2026
Merged

kdroidFilter merged 1 commit into
masterfrom
feat/author-topics

Conversation

@kdroidFilter

Copy link
Copy Markdown
Owner

What

  • Schema: author gains birthYear, birthYearApprox, deathYear, deathYearApprox, era (Sefaria era code); new author_alias(authorId, alias). author.name is untouched (id natural key).
  • Sefaria importer: keeps each author's topic slug from the schema, reads authors.json from the export (feat: export authors.json with author topics SefariaExport#7) and fills the life data and aliases (the topic's Hebrew titles other than the name).
  • author_alias added to the patch tables and the logical content hash.

Verification

  • ./gradlew :generator-common:jvmTest :sefariasqlite:jvmTest :dao:jvmTest :delta-updater:jvmTest
  • Fixture (3 books, production build state): ids unchanged (משנה ברורה = 3243, author 10); author 10 gets 1839–1933, era AH, alias חפץ חיים.
  • Sefaria API probe of the 381 Sefaria authors: aliases for 235, death year for 334, era for 372.

Notes

  • Needs an export with authors.json: merge after the SefariaExport release that includes PR Add source tracking for books from manifest #7.
  • The empty-name author (id 36) of the old DB is already gone: those slugs resolve through missingHebrewAuthorNames.

🤖 Generated with Claude Code

Read authors.json (SefariaExport PR #7): for each Sefaria author slug,
store the other Hebrew titles in author_alias and the birth/death years
(+ approx flags) and era on author. author.name stays the raw name, the
natural key of its id. author_alias is tracked by the patch producer and
the logical content hash.

Signed-off-by: Elie Gambache <elyahou.hadass@gmail.com>
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