lllin000_PaperForge/paperforge/commands
LLLin000 4ff165ae49 feat(#38, #40): version history panel + @ Deep Search
#38: File Recovery-style version history panel with i18n (en/zh).
- _renderVersionMode() with paper list + timeline + restore/compare
- version-history.ts service for scan/restore/compare
- Paper mode [版本历史] button
- i18n strings for all panel text

#40: @ Deep Search with query rewrite + hybrid retrieval.
- query_rewrite.py: abbreviation expansion (28 terms) + synonyms (12)
- hybrid_search(): BM25 FTS5 + vec0 k-NN + score fusion (0.3/0.7)
- retrieve --deep flag routes to hybrid_search
- Graceful vec0 fallback (FTS5-only)
- 17 new tests

Co-authored-by: VersionPanel <agent>
Co-authored-by: DeepSearch <agent>
2026-07-10 01:01:48 +08:00
..
__init__.py fix: close 4 review gaps — registry, body/object-unit schemas, compat vector arm 2026-07-05 15:13:43 +08:00
agent_context.py feat: stabilize paperforge query planning 2026-05-27 21:20:15 +08:00
content_discovery.py fix: align paper lookup scope and command signatures 2026-07-05 15:16:26 +08:00
context.py style: ruff format pass across paperforge/ 2026-05-09 22:31:08 +08:00
dashboard.py chore: commit session work before hotfix switch 2026-05-18 22:47:30 +08:00
deep.py refactor: v2.1 contract hardening — PFResult unification, ErrorCode expansion, adapter cleanup, SyncService orchestration 2026-05-09 22:20:07 +08:00
embed.py feat: Phase 0, 1, 3a — legacy OCR fix, ChromaDB migration, search bar UI 2026-07-10 00:02:02 +08:00
memory.py chore: commit session work before hotfix switch 2026-05-18 22:47:30 +08:00
ocr.py feat: Phase 0, 1, 3a — legacy OCR fix, ChromaDB migration, search bar UI 2026-07-10 00:02:02 +08:00
paper_context.py feat: make paper lookup decomposed and coverage-scored 2026-07-05 14:14:03 +08:00
paper_lookup.py fix: align paper lookup scope and command signatures 2026-07-05 15:16:26 +08:00
paper_navigation.py fix: align paper lookup scope and command signatures 2026-07-05 15:16:26 +08:00
paper_status.py feat: make paper lookup decomposed and coverage-scored 2026-07-05 14:14:03 +08:00
project_log.py feat: add project-log CLI command with JSONL write + auto-render 2026-05-14 17:47:43 +08:00
prune.py feat(sync): auto-detect orphan papers after sync, show modal in Obsidian 2026-05-19 00:31:19 +08:00
query_plan.py feat: stabilize paperforge query planning 2026-05-27 21:20:15 +08:00
reading_log.py chore: commit session work before hotfix switch 2026-05-18 22:47:30 +08:00
repair.py fix: remove deprecated control_dir from doctor/setup/repair; enable repair button; fix UTF-8 encoding in doctor output 2026-05-10 01:50:24 +08:00
retrieve.py feat(#38, #40): version history panel + @ Deep Search 2026-07-10 01:01:48 +08:00
runtime_health.py chore: commit session work before hotfix switch 2026-05-18 22:47:30 +08:00
scoped_fetch.py fix: align paper lookup scope and command signatures 2026-07-05 15:16:26 +08:00
search.py feat: route Layer 4 gateway through body units and structure tree 2026-07-05 14:39:19 +08:00
status.py chore: commit session work before hotfix switch 2026-05-18 22:47:30 +08:00
sync.py feat: add OCR runtime preflight warnings for auto-rebuild 2026-06-05 11:03:22 +08:00