Commit graph

1009 commits

Author SHA1 Message Date
Research Assistant
0dd374336b fix(plugin): add ocr_redo to overlayEntryWorkflowState for live dashboard updates 2026-06-01 12:48:34 +08:00
Research Assistant
fb7a97fa8d fix: always write ocr_redo field in frontmatter_note (defaults to false) 2026-06-01 12:47:57 +08:00
Research Assistant
22b32b766e test: update base view tests for merge_base_views delegate behavior 2026-06-01 12:46:36 +08:00
Research Assistant
4922c04dc1 fix: restore folder filter update in refresh_base after merge_base_views delegate 2026-06-01 12:39:02 +08:00
Research Assistant
6dcff4f2c6 fix: delegate refresh_base to merge_base_views, eliminating duplicate views and YAML corruption 2026-06-01 12:35:51 +08:00
Research Assistant
1be00fa812 fix: robust ocr_redo property insertion with cleanup and idempotency 2026-06-01 11:50:24 +08:00
Research Assistant
9b244f56cd fix: correct ocr_redo property insertion — find block end, avoid broken YAML 2026-06-01 11:48:14 +08:00
Research Assistant
73c99883d2 fix: add ocr_redo property to Base file properties section 2026-06-01 11:43:17 +08:00
Research Assistant
f2bee97a0a fix: address code review issues — fulltext_md_path clear, key validation, redo no auto-run, ribbon button 2026-06-01 11:36:29 +08:00
Research Assistant
ed95776edd feat: add 重做OCR ribbon button to plugin 2026-06-01 11:30:31 +08:00
Research Assistant
eeb4e8f85d feat: add paperforge ocr redo command for re-running OCR on marked papers 2026-06-01 11:29:06 +08:00
Research Assistant
6acfa8b5c2 fix: add ocr_redo to expected frontmatter fields in test 2026-06-01 11:25:24 +08:00
Research Assistant
fb646a1129 feat: add ocr_redo frontmatter field + sync preservation 2026-06-01 11:23:32 +08:00
Research Assistant
6eb0e2a2a1 feat: surgical append missing standard views to existing base files 2026-06-01 11:20:03 +08:00
Research Assistant
9278049669 fix: correct base filter syntax to Obsidian standard (== and double quotes) 2026-06-01 11:16:53 +08:00
Research Assistant
b2738ece47 feat: slim base views to 4, add ocr redo view 2026-06-01 11:09:38 +08:00
Research Assistant
b9689d1263 feat: bump PaddleOCR model from VL-1.5 to VL-1.6 2026-06-01 00:32:46 +08:00
Research Assistant
99e956f8c8 feat: wire layered OCR pipeline into render_page_blocks + fixture-backed integration tests 2026-06-01 00:10:04 +08:00
Research Assistant
db37aa0824 docs: describe layered OCR reading-order pipeline 2026-06-01 00:02:45 +08:00
Research Assistant
b8ac451c68 feat: add OCR emission layer and regression tests 2026-06-01 00:01:39 +08:00
Research Assistant
0042fb2c8b feat: add OCR layered modules (roles, body spine, layout, attach) 2026-06-01 00:01:05 +08:00
Research Assistant
3c262327ac fix: use REPO_ROOT absolute path in fixture inventory test 2026-05-31 23:55:32 +08:00
Research Assistant
b95ef282d4 test: add OCR reading-order fixture inventory 2026-05-31 23:52:55 +08:00
Research Assistant
cf9f143b06 bump: 1.5.13 -> 1.5.14 2026-05-31 20:56:15 +08:00
Research Assistant
de32f236a4 fix(sync): avoid prune crash when optional deps are missing 2026-05-31 20:55:17 +08:00
Research Assistant
3ff37b1702 test(ocr): add block order rendering regressions 2026-05-31 20:55:17 +08:00
Research Assistant
3ed73a434f fix(base): use configured folder filter for fresh base views 2026-05-31 20:55:16 +08:00
Research Assistant
8d9aef1516 test: preserve setup behavior without OCR key 2026-05-31 20:22:38 +08:00
Research Assistant
0cdf01d2b8 fix: run Zotero filesystem checks for all non-OCR step-3 paths 2026-05-31 20:21:36 +08:00
Research Assistant
45fd85ebcc fix: wire shouldBlockStep3 into _validateStep3 2026-05-31 20:18:32 +08:00
Research Assistant
282fb2fbbc feat: allow skipping OCR key during setup 2026-05-31 20:15:22 +08:00
Research Assistant
acb0c2bcb5 feat: preserve user tags during sync 2026-05-31 20:01:16 +08:00
Research Assistant
6039c78ff8 test: cover preserved frontmatter tags 2026-05-31 19:52:37 +08:00
Research Assistant
1b308c002f fix(ocr): use block_order primary + bbox validation to fix column interleaving
- block_sort_key() now sorts by block_order (from PaddleOCR API) as primary key,
  falling back to Y coordinate only when block_order is unavailable.
- Added validate_block_order() to verify sort results with bbox geometry:
  - Detects excessive column switches (more than 3) and falls back to
    column-major reading order (left col then right col, each sorted by Y).
  - Within each column, re-sorts blocks by Y if block_order places them
    in non-monotonic order.
- Fixes 2-column PDFs where text blocks from left and right columns were
  interleaved due to Y-coordinate sorting (affected 85% of OCR'd papers).
2026-05-31 19:02:29 +08:00
Research Assistant
1434d046ca feat: stabilize paperforge query planning 2026-05-27 21:20:15 +08:00
Research Assistant
e271ca0813 fix: improve search accuracy with multi-token LIKE and guided agent search queries
- _like_query: split multi-token queries into per-field AND matching
- lookup_paper: same multi-token AND for title lookup
- read-known-paper.md: restructure Step 1 by known-info type (zotero_key,
  DOI, author+year, title keyword, fuzzy)
- discover-papers.md Arm 2: note on author+year search pattern
- retrieval-routing.md Arm 2: same author+year search guidance
2026-05-25 16:42:11 +08:00
Research Assistant
9cc5e566c6 chore: add 1.5.13 to versions.json 2026-05-25 12:25:30 +08:00
Research Assistant
28b98fd6f9 bump: 1.5.12 -> 1.5.13 2026-05-25 12:25:12 +08:00
Research Assistant
ce3be5b03d fix(plugin): add missing .plugins level in plugin lookup; throttle Notice spam in _runAction 2026-05-25 12:19:47 +08:00
Research Assistant
3cd9f6066e fix: remove v prefix from git tag references in install URLs; update versions.json 2026-05-25 11:45:11 +08:00
Research Assistant
0c08666904 bump: 1.5.11 -> 1.5.12 2026-05-25 11:43:11 +08:00
Research Assistant
aff1766d9e chore: remove stale root files (_check_deploy.py, command/) 2026-05-24 20:08:27 +08:00
Research Assistant
4e84bfd19f test: clean up brittle and low-value tests
- Remove 4 broken Python test files (ld_deep x3, path_normalization)
- Fix 2 vector_db tests to mock get_collection instead of chromadb.PersistentClient
- Remove 2 JS test files (settings-panels, vector-ready — trivial)
- Trim 3 buildRuntimeInstallCommand tests from errors.test.ts
- Narrow CI unit-tests to only run tests/unit/ (gate-level)
2026-05-24 20:00:47 +08:00
Research Assistant
c8c2d4cf75 Revert "test: clean up brittle and low-value tests"
This reverts commit 66849758a9.
2026-05-24 19:59:24 +08:00
Research Assistant
66849758a9 test: clean up brittle and low-value tests
- Remove 4 broken Python test files (ld_deep x3, path_normalization)
- Fix 2 vector_db tests to use correct mock target (get_collection)
- Remove 2 JS test files (settings-panels, vector-ready — trivial)
- Trim 3 buildRuntimeInstallCommand tests from errors.test.ts
- Narrow CI unit-tests to only run tests/unit/ (gate-level)
2026-05-24 19:59:14 +08:00
Research Assistant
f27efe19b1 ci: add npm run build step to release/publish workflows
After TS migration, main.js is now a build artifact from src/main.ts.
Both workflows must build the plugin before creating the release artifact.
2026-05-24 19:54:51 +08:00
Research Assistant
6c096fd49c feat(plugin): migrate monolithic main.js to modular TypeScript source tree
Extract 4977-line main.js into 9 focused TypeScript modules under src/:
- src/main.ts (thin lifecycle entry, ~324 lines)
- src/services/memory-state.ts, python-bridge.ts
- src/views/dashboard.ts, modals.ts
- src/settings.ts, constants.ts, i18n.ts
- src/utils/disclosure.ts

Build with esbuild → main.js (CJS). All 48 tests passing.
2026-05-24 19:49:11 +08:00
Research Assistant
db6eea9a0a chore(plugin): finalize TS migration -- delete legacy testable.js 2026-05-24 17:33:22 +08:00
Research Assistant
3ccf5c424e test(plugin): migrate runtime test to TypeScript 2026-05-24 17:32:01 +08:00
Research Assistant
2ef0db1b05 test(plugin): migrate vector-ready test to TypeScript 2026-05-24 17:29:11 +08:00