Implements codex/ingest.py with: - OpenAlex primary / Semantic Scholar fallback metadata fetch - Abstract dense embedding (zero-vector for missing abstracts) - Idempotent paper upsert (ON CONFLICT DO UPDATE) - Source file parsing (.tex via latex_to_text, .pdf via nougat + grobid) - Chunk deletion + bulk re-insert with dense embeddings - Citation merge from OpenAlex/S2 API and GROBID PDF refs (dedup via set) - 7 tests covering basic, tex, pdf, not-found, idempotent, arxiv-fallback, and no-abstract scenarios (all mocked, offline) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
0 lines
0 B
Python
0 lines
0 B
Python
The file is empty.