lllin000_PaperForge/paperforge
Research Assistant 7c96b8e15a feat(23-01): create asset_index.py module with envelope, atomic writes, and build_index extraction
- New asset_index.py module with build_index(), get_index_path(), atomic_write_index()
- build_envelope() wraps items in versioned envelope (schema_version, generated_at, paper_count, items)
- atomic_write_index() uses tempfile.NamedTemporaryFile + os.replace for Windows-safe atomic writes
- Cross-process locking via filelock.FileLock with 10-second timeout
- build_index() extracted from sync.py run_index_refresh loop (lines 1686-1746)
- sync.py run_index_refresh() delegates to asset_index.build_index()
- Orphaned-record cleanup stays in sync.py
2026-05-04 00:34:54 +08:00
..
command_files feat: persistent OCR poll until completion; fix OpenCode commands for pip install; fix test hangs; add command_files to package 2026-04-27 22:52:03 +08:00
commands feat(22-01): wire config migration into sync command 2026-05-03 22:42:05 +08:00
plugin feat(22-02): add savePaperforgeJson() and clean stale path fields from plugin data.json on load 2026-05-03 22:56:13 +08:00
skills fix: correct UPDATEABLE_PATHS repo paths; plugin install uses vault-first source; exclude table images from figure-map matching 2026-04-28 23:58:02 +08:00
worker feat(23-01): create asset_index.py module with envelope, atomic writes, and build_index extraction 2026-05-04 00:34:54 +08:00
__init__.py chore: bump version to v1.4.14 2026-05-02 15:20:25 +08:00
__main__.py fix: VaultStep.__init__ missing step_id and checker in super() call 2026-04-27 19:49:36 +08:00
cli.py feat: paperforge status --json, plugin panel with OCR progress bar 2026-04-28 19:21:52 +08:00
config.py feat(22-03): add config source tracing to load_vault_config for CONF-03 inspection 2026-05-03 23:10:50 +08:00
logging_config.py chore: rename PaperForge Lite -> PaperForge across 27 files 2026-04-28 01:25:51 +08:00
ocr_diagnostics.py fix: add zotero_dir to paperforge_paths() for PDF resolution; fix L3 diagnostic to skip schema check without file upload 2026-04-27 21:12:29 +08:00
pdf_resolver.py fix: add creators/extra to load_export_rows row dict, fix journal key lookup for first_author/journal/IF in library-records; add first_author, journal, impact_factor columns to Base views; fix PDF storage/ subdirectory resolution 2026-04-27 20:25:35 +08:00
setup_wizard.py feat(22-03): setup wizard writes clean vault_config-only paperforge.json with schema_version 2026-05-03 23:07:38 +08:00