Skip to content

ANG-011:Incremental updates via workspace events - #16

Open
yugalkaushik wants to merge 1 commit into
devfrom
ANG-011
Open

ANG-011:Incremental updates via workspace events#16
yugalkaushik wants to merge 1 commit into
devfrom
ANG-011

Conversation

@yugalkaushik

Copy link
Copy Markdown
Collaborator
  1. Live updates without reopening the panel
  • Listens to Joplin workspace events: note changed, note selected, sync completed
  • When you edit a note, the graph updates automatically after a short delay instead of needing a manual refresh
  1. Two ways of detecting what changed
  • Uses Joplin's /events API with a saved cursor to catch new, updated, and deleted notes
  • When AI is on, also sweeps the getEmbeddings API with its own saved cursor to catch notes that got re-embedded
  • If AI is off, it just relies on /events for everything
  1. Graph is now cached on disk
  • The built graph itself (not just embeddings) is saved to a local SQLite database
  • Reopening the panel loads instantly from this cache instead of recomputing the whole graph from scratch
  1. Partial graph updates instead of full rebuilds
  • Added a diffing step that compares the old graph to the new one and figures out exactly which nodes and edges were added, changed, or removed
  • The webview applies just that small patch instead of tearing down and rebuilding the whole graph
  • Nodes that weren't touched keep their position on screen instead of jumping around on every edit
  1. Small logic changes to support all this
  • Tag edges now get a stable, order independent identity so they don't flicker during partial updates
  • The graph builder now assigns explicit IDs to edges so the diffing step can match them up between rebuilds

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant