Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,15 @@
- [x] T11: Bot de Telegram como adapter (`infrastructure/bot/telegram_bot.py`, `AnswerFn` inyectado, completado 10 ago)
- [x] T12: Composition root `scripts/run_telegram_bot.py` con wiring hybrid+rerank (completado 11 ago)
- [x] T13: `answer_query` inyecta `retrieve: RetrieveFn` en vez de `store: VectorStore` (completado 11 ago)
- [x] T14: Fix — `test_extract_text_pdf` sin depender de un PDF no versionado (completado 12 ago)
- [x] T14: Fix — `test_extract_text_pdf` sin depender de un PDF no versionado
(marcado completado 12 ago, pero **no lo estaba**: seguía fallando en
clon limpio porque `_download_pdf` escribía a `data/papers/` sin crear
el directorio, y el test escribía sobre el `data/papers/` real del
repo. Corregido de verdad y verificado en un clon limpio real —
completado 13 ago)
- [x] T15: Fix — límite de 4096 caracteres por mensaje de Telegram (completado 12 ago)
- [x] T16: `scripts/ingest_documents.py` implementado — CLI delgado sobre `ingest_papers` (completado 12 ago)
- [ ] T17: Merge de la rama de V1 real a `main`
- [x] T17: Merge de la rama de V1 real a `main` (completado 13 ago, PR#4)

## Deuda técnica conocida
- [ ] `ingestion_service.py` (`application/`) importa `httpx`, `fitz` y
Expand Down
1 change: 1 addition & 0 deletions src/researchos/application/services/ingestion_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ async def _download_pdf(paper: Paper) -> Path:
response = await client.get(url)
response.raise_for_status()
# save pdf in local system
local_pdf_path.parent.mkdir(parents=True, exist_ok=True)
with open(local_pdf_path, "wb") as f:
f.write(response.content)

Expand Down
4 changes: 3 additions & 1 deletion tests/unit/application/test_ingestion_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,9 @@ def _fake_pdf_bytes() -> bytes:

@pytest.mark.unit
@pytest.mark.asyncio
async def test_extract_text_pdf():
async def test_extract_text_pdf(tmp_path: Path, monkeypatch: pytest.MonkeyPatch):
monkeypatch.setattr("researchos.application.services.ingestion_service.PAPERS_DIR", tmp_path)

paper = Paper(
source_id="1",
source="arxiv",
Expand Down
Loading