- Fix assets_fts triggers: the external-content FTS5 table was updated
with plain UPDATE/DELETE, so every rename or move failed with
"database disk image is malformed" and the watcher fell back to
delete + re-index, losing ratings, tags and collections. Use the FTS5
'delete' command, limit the update trigger to filename/subfolder and
repair existing databases (plus an FTS rebuild) at startup.
- Wait for the prompt history entry before post-execution ingestion:
ComfyUI fires on_prompt_end before task_done() stores history, so
outputs of prompts queued from the API or another client could be
missed.
- Scan prune only removes assets whose absence is confirmed; a stat
error or an unreadable scan root no longer deletes user data. Report
pruned assets instead of SQLite change counts.
- Emit mjr-assets-removed for watcher deletes and scan prunes and
mjr-asset-updated for moves so open grids update in place.
- Annotate mjr-scan-complete with origin and needs_refresh; reload the
grid once when live events cannot cover a change and summarise a
finished directory scan in one ComfyUI core toast.
- Document the comparison with ComfyUI core's asset system.