Commit Graph

6 Commits

Author SHA1 Message Date
诺斯费拉图
f35196f3e5 fix: blocking scheduler calls and silent error swallowing
- Wrap all scheduler.sync_* calls in automation_routes.py with
  asyncio.get_running_loop().run_in_executor() to avoid blocking
  the async event loop
- Replace bare 'except: pass' in paper_search._save_papers_to_project
  with logging.warning
- Make API base URL configurable via RESEARCH_API_BASE_URL env var

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-13 20:55:10 +08:00
诺斯费拉图
38cd508974 fix: pre-landing review critical fixes
- Replace StaticPool with NullPool in db.py (concurrency write hazard)
- Replace asyncio.get_event_loop() with asyncio.get_running_loop()
  in _db_helpers.py (deprecated in Python 3.10+)
- Reorder routes in research_routes.py: specific
  /research/assets/{type}/{asset_id} before wildcard {path:.*}
- Add project_id ForeignKey to PaperAsset in models.py
- Add database indexes on frequently queried columns
  (library_status, updated_at, project_id, status, source_id)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-13 20:47:49 +08:00
诺斯费拉图
24d79c08e6 feat: add StyleAsset model and StyleProfileExtract node
- Add StyleAsset model to research_api/models.py for storing writing style profiles
- Add StyleAsset db helpers (sync + async) to research_api/routes/_db_helpers.py
- Add StyleAsset REST routes to research_api/routes/research_routes.py
2026-04-12 17:31:06 +08:00
诺斯费拉图
2199e56581 feat: add research API routes (aiohttp, projects, papers, claims, sources, feed) 2026-04-12 17:08:19 +08:00
诺斯费拉图
63df766808 feat: add research_api database and core models (Project, Intent, PaperAsset, ClaimAsset, Source, FeedItem) 2026-04-12 17:02:53 +08:00
诺斯费拉图
5c2c701fa1 feat: add research_comfy Phase 1 directory structure 2026-04-12 17:00:28 +08:00