Commit Graph
15 Commits
Author SHA1 Message Date
Renovate Bot 2b17a78b45 chore(deps): update dependency lxml to v6 2026-07-09 12:00:50 +00:00
ChemaVXandClaude Fable 5 397546a37a fix(deps): quita brotlicffi — hacía que aiohttp anunciara br por defecto
Build & Deploy ResearchOwl / build-and-push (push) Successful in 48s
Regresión de esta mañana: con un backend brotli instalado, aiohttp mete
'br' en el Accept-Encoding por defecto de toda sesión que no lo fija
(publish_draft, seo/autofill). Ghost/Cloudflare responde br y el decode
incremental roto de aiohttp 3.14.1 revienta al leer la respuesta de un
POST ya aceptado: el fallback re-publicaba → drafts duplicados y aviso
SEO perdido. Sin backend brotli nada anuncia br (el scraper ya lo quitó
de sus HEADERS explícitos en 57f341f).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-04 20:17:56 +00:00
ChemaVXandClaude Fable 5 6c807212a0 fix(scraper): brotlicffi en vez de Brotli — aiohttp 3.14 falla en streams br troceados
Build & Deploy ResearchOwl / build-and-push (push) Successful in 54s
Con Brotli puro, aiohttp 3.14.1 seguía sin decodificar algunos streams
br (disclosure.org, todaywhy.com: 'Can not decode content-encoding: br'
en 3/3 intentos, mientras httpx los decodifica bien). Con brotlicffi
(que aiohttp prefiere sobre Brotli) los mismos sitios decodifican al
primer intento — verificado en el pod con install efímero.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-04 11:20:04 +00:00
ChemaVXandClaude Fable 5 becc43f770 fix(scraper): instala Brotli — se perdían fuentes br en silencio
Build & Deploy ResearchOwl / build-and-push (push) Successful in 55s
HEADERS anuncia 'Accept-Encoding: gzip, deflate, br' pero aiohttp no
tenía backend brotli: cualquier web que respondiera br fallaba con
'Can not decode content-encoding: brotli' tras 3 reintentos (vistos
washingtontimes, defensescoop, disclosure.org en sesión de prueba).
Verificado local: con Brotli==1.1.0 ambos decodifican (200, encoding=br).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-04 11:16:00 +00:00
ChemaVXandClaude Fable 5 2cb0cf841c feat(deps): python-telegram-bot 21.5 -> 22.8
Build & Deploy ResearchOwl / build-and-push (push) Successful in 49s
Salto mayor revisado contra el changelog oficial:
- La 22.0 elimina lo deprecado en v20.x. De esa lista el bot solo usaba
  disable_web_page_preview (3 sitios), que ademas resulta seguir vivo
  como shim en 22.8 — se migra igualmente a link_preview_options, que
  es la API canonica desde Bot API 7.0.
- No usamos quote=, proxy_url, ni *_timeout en run_polling (el resto
  de eliminaciones). Python >=3.10 (imagen 3.12) y httpx >=0.27,<0.29
  (tenemos 0.28.1) OK.
- Verificado aislado: import de src.bot.bot sin DeprecationWarnings,
  8 tests en verde.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-03 15:17:21 +00:00
ChemaVXandClaude Fable 5 5876361ac7 chore(deps): pdfplumber 0.11.10 y python-dotenv 1.2.2
Build & Deploy ResearchOwl / build-and-push (push) Successful in 49s
Folda las dos ramas nuevas de Renovate (las 11 rancias ya las cerró
tras el bump b872d00).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-03 15:12:36 +00:00
ChemaVXandClaude Fable 5 b872d00efc chore(deps): bump 9 dependencias y eliminar fastapi/uvicorn sin uso
Build & Deploy ResearchOwl / build-and-push (push) Successful in 47s
Consolida el backlog de Renovate en un solo bump, ignorando las ramas
rancias que proponían downgrades (youtube-transcript-api, trafilatura,
sqlite-vec se quedan como están):

- aiohttp 3.10.0 -> 3.14.1
- httpx 0.27.0 -> 0.28.1 (PTB 21.5 requiere httpx~=0.27, que admite 0.28;
  el código solo usa AsyncClient(timeout=...), sin APIs eliminadas)
- beautifulsoup4 4.12.3 -> 4.15.0
- lxml 5.2.2 -> 5.4.0
- duckduckgo-search 6.2.6 -> 6.4.2
- aiosqlite 0.20.0 -> 0.22.1
- markdown 3.7 -> 3.10.2
- pydantic 2.8.0 -> 2.13.4 + pydantic-settings 2.4.0 -> 2.14.2
- fastapi y uvicorn eliminados: ningún módulo los importa

Verificado con install aislado (--target) + imports completos + pytest.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-03 07:38:27 +00:00
Renovate Bot 4bfd27db2c chore(deps): update dependency youtube-transcript-api to v0.6.3
Build & Deploy ResearchOwl / build-and-push (push) Successful in 1m5s
2026-05-29 12:00:36 +00:00
Renovate Botandchemavx 30509dab4a chore(deps): update dependency trafilatura to v1.12.2
Build & Deploy ResearchOwl / build-and-push (push) Successful in 45s
2026-05-28 12:00:45 +00:00
Renovate Bot f6ad57e3c7 chore(deps): update dependency sqlite-vec to v0.1.9
Build & Deploy ResearchOwl / build-and-push (push) Successful in 49s
2026-05-26 12:00:47 +00:00
Renovate Bot 2a9962a1bd chore(deps): update dependency pdfplumber to v0.11.9
Build & Deploy ResearchOwl / build-and-push (push) Successful in 46s
2026-05-25 18:00:36 +00:00
Renovate Bot 0e52b404bf chore(deps): update dependency feedparser to v6.0.12
Build & Deploy ResearchOwl / build-and-push (push) Successful in 53s
2026-05-21 12:00:29 +00:00
ChemaVX 4c7f5b521b feat: fase 3 — export PDF con reportlab + /export command
Build & Deploy ResearchOwl / build-and-push (push) Successful in 1m2s
2026-05-04 12:57:21 +00:00
ChemaVXandClaude Sonnet 4.6 d0e55ddb50 feat: Claude Haiku for relevance scoring, fallback to Ollama
Build & Deploy ResearchOwl / build-and-push (push) Successful in 45s
processor.py: split _score_quality into _score_with_claude and
  _score_with_ollama; if ANTHROPIC_API_KEY is set, use Claude Haiku
  (claude-haiku-4-5) with max_tokens=10 for fast, accurate 0-10
  relevance scoring; falls back to Ollama on any error

requirements.txt: add anthropic>=0.40.0

k8s: ANTHROPIC_API_KEY added to researchowl-secrets and mounted in
  deployment; QUALITY_THRESHOLD restored to 0.4 (Claude scoring
  is accurate enough to use the threshold)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 08:04:12 +00:00
ChemaVX ba08536337 feat: initial ResearchOwl
Build & Deploy ResearchOwl / build (push) Failing after 1m38s
2026-04-27 13:49:07 +00:00