Commit graph

286 commits

Author SHA1 Message Date
Research Assistant
492c87ac9b fix: refresh path uses DOM pages with setLayerDimensions alignment 2026-05-20 18:41:21 +08:00
Research Assistant
16a24cb14c debug: add rebuild visible layers counter log 2026-05-20 18:39:15 +08:00
Research Assistant
f6ac93859b fix: clean up dangling catch ghost code, add handle diagnostic log 2026-05-20 18:38:23 +08:00
Research Assistant
6618824253 fix: refresh overlays via _rebuildVisibleLayers on create/delete 2026-05-20 18:35:06 +08:00
Research Assistant
b228f4d472 fix: color swatch click creates annotation, overlay cleanup on file switch 2026-05-20 18:32:53 +08:00
Research Assistant
6642306262 feat: color picker, selection-to-create PDF coords, pypdf import guard 2026-05-20 18:31:02 +08:00
Research Assistant
489b29ff24 feat: overlay visible, fix popover dismiss, clean up debug code 2026-05-20 18:22:11 +08:00
Research Assistant
b7133b7ada feat: drive overlay repaint from PDF viewer events with internal handle resolution 2026-05-20 18:15:42 +08:00
Research Assistant
1b79c369ca feat: add PDF.js internal overlay guards and tests 2026-05-20 18:14:32 +08:00
Research Assistant
262541598f test: lock annotation cache and viewport helper contracts 2026-05-20 18:13:32 +08:00
Research Assistant
918e96f2c1 fix: use exact PDF page sizes for overlay mapping 2026-05-20 17:50:28 +08:00
Research Assistant
97b777ab8b fix: use PDF page dimensions for coordinate normalization 2026-05-20 17:11:45 +08:00
Research Assistant
8800a3c8b3 fix: use full field names in annotation cache, render only on new page 2026-05-20 17:05:41 +08:00
Research Assistant
d5e7b2a5be fix: debounce page observer to prevent render spam 2026-05-20 17:03:50 +08:00
Research Assistant
bbf34f22f7 fix: match cache pos key instead of position_json 2026-05-20 17:03:27 +08:00
Research Assistant
7068b38d26 fix: add missing _annotationCache declaration and match by attachmentKey 2026-05-20 17:01:46 +08:00
Research Assistant
f5a7bf3469 feat: JSON annotation cache for plugin (no subprocess on reads) 2026-05-20 17:00:34 +08:00
Research Assistant
723e5fc5a4 fix: inline AnnotationDB class, remove local require 2026-05-20 16:55:19 +08:00
Research Assistant
1aa2b26837 refactor: use sql.js instead of subprocess for annotation reads 2026-05-20 16:53:53 +08:00
Research Assistant
e5f0c1f956 fix: extract annotations array from data envelope, add --pdf-path to create 2026-05-20 16:42:59 +08:00
Research Assistant
e809722a03 fix: correct annotation overlay coordinate normalization and pdf-path resolution 2026-05-20 16:27:00 +08:00
Research Assistant
e66e7ed2d3 feat: add local annotation editing 2026-05-20 16:02:44 +08:00
Research Assistant
8e63f72847 feat: render annotation overlays 2026-05-20 16:00:51 +08:00
Research Assistant
d399a8838d feat: add pdf overlay patch lifecycle 2026-05-20 15:59:24 +08:00
Research Assistant
06e6485e46 feat: add annotation plugin bridge 2026-05-20 15:57:31 +08:00
Research Assistant
7692149705 feat: add annotation plugin helpers 2026-05-20 15:56:09 +08:00
Research Assistant
946102bb9e bump: 1.5.8 -> 1.5.9 2026-05-19 15:44:52 +08:00
Research Assistant
90fddfe967 chore: update versions.json for 1.5.6-1.5.8 2026-05-19 01:35:02 +08:00
Research Assistant
4b7ceefb5a chore: bump version to 1.5.8 2026-05-19 01:34:40 +08:00
Research Assistant
2c20138fd0 fix(plugin): finish orphan modal i18n for all remaining strings 2026-05-19 01:33:23 +08:00
Research Assistant
14e6872ec9 feat(plugin): i18n for orphan modal, label tweaks 2026-05-19 01:28:14 +08:00
Research Assistant
da92c1acc6 fix(manifest): remove 'Obsidian' from description (plugin review requirement) 2026-05-19 00:56:26 +08:00
Research Assistant
90edb2e902 chore: bump version to 1.5.7 (1.5.6 version name taken on PyPI) 2026-05-19 00:48:59 +08:00
Research Assistant
1047c9851d chore: bump version to 1.5.6 2026-05-19 00:31:32 +08:00
Research Assistant
798e048a8d feat(sync): auto-detect orphan papers after sync, show modal in Obsidian
- prune.py: _enrich_orphan_preview() reads note frontmatter for metadata
- sync_service.py: always run dry-run prune, include in result
- sync.py: write sync-orphan-state.json for plugin consumption
- main.js: add checkOrphanState() + PaperForgeOrphanModal with select/toggle
- styles.css: orphan modal styles (list, tags, dimmed rows)
- cli.py: add --keys to prune command for targeted deletion
2026-05-19 00:31:19 +08:00
Research Assistant
528a8255bf chore: commit session work before hotfix switch 2026-05-18 22:47:30 +08:00
Research Assistant
febaacbcd4 chore: bump version to 1.5.6rc5 2026-05-18 22:00:58 +08:00
Research Assistant
9f013b4cff feat(plugin): render discussion card from .md with MarkdownRenderer 2026-05-18 21:12:06 +08:00
Research Assistant
5ba9ac92c3 feat(discussion): remove JSON output and markdown escaping 2026-05-18 21:09:54 +08:00
Research Assistant
cef93fa588 fix: close review findings for auto-sync, sync PFResult, and global actions
Remove invalid sync --key path from OCR auto-refresh, surface memory rebuild
failures in sync PFResult instead of swallowing them, and complete the
persistent Global action group with Status + Repair.
2026-05-16 23:48:34 +08:00
Research Assistant
f2046e381d feat: progressive disclosure UX (Package D)
Staged setup wizard gating: OCR key and Zotero data no longer block first sync.
Persistent core action visibility: Sync, OCR, Doctor always on Global/Home.
Collapsed Advanced section in Settings for Memory Layer + Vector DB.
OCR/Zotero keys downgraded from blocking validation to optional warnings.
2026-05-16 22:54:05 +08:00
Research Assistant
ed95e0f565 feat: runtime contract hardening + skill/command truth alignment (Package A+B)
Atomic snapshots, canonical index mutation serialization, sync post-clean truth,
plugin path config-awareness, embed stop signal honesty, full snapshot bootstrap,
pf_ prefix unification, workflow command/lifecycle/path corrections,
mechanical/cognitive route separation with unknown-command guard.
2026-05-16 22:38:43 +08:00
Research Assistant
53736ab841 fix: i18n hardcoded English, use cached Python, execFile for pip/cache 2026-05-16 00:57:34 +08:00
Research Assistant
f8631c4545 i18n: update openai key desc — model is user-defined below 2026-05-16 00:41:25 +08:00
Research Assistant
d3ef8062e5 fix: add missing require execFile + instant UI clear on mode toggle 2026-05-16 00:34:09 +08:00
Research Assistant
31ae09fac9 feat: make API mode the default (dropdown order + settings default) 2026-05-16 00:28:10 +08:00
Research Assistant
ae57e081a1 i18n: mode-specific dep install/missing text (API→openai only, local→all three) 2026-05-16 00:19:56 +08:00
Research Assistant
dc25b2fa35 fix: detach embed build process from settings tab (survive close) 2026-05-16 00:12:09 +08:00
Research Assistant
18c3ef9ab0 fix: regenerate vector runtime snapshot on vector mode toggle 2026-05-16 00:05:44 +08:00
Research Assistant
406f41700e fix: mode-aware dep check and install (API→openai only, local→chromadb+sentence-transformers) 2026-05-16 00:03:30 +08:00