learning_ai_notes/backend
saravanakumardb1 fe3b0f9b3e feat(backend): add note intelligence — embeddings, auto-summarize, duplicates, suggest-links, knowledge gaps
Phase 2 of Smart Actions Roadmap:

- Create lib/embeddings.ts: embedText(), cosineSimilarity(), stripHtmlForEmbedding()
- Add embedding + summaryArtifactId fields to NoteDoc
- Create lib/note-hooks.ts: runPostSaveHooks() for background AI enrichment
  - backgroundEmbed: compute and store note embedding vectors
  - backgroundAutoSummarize: generate summary artifact for notes > 300 words
  - Both gated behind feature flags (notelett_auto_embed_enabled, notelett_auto_summarize_enabled)
- Add intelligence endpoints to note-prompts routes:
  - POST /api/notes/:id/suggest-tags (F5) — LLM-generated tag suggestions
  - POST /api/notes/:id/check-duplicates (F8) — cosine similarity duplicate detection
  - POST /api/notes/:id/suggest-links (F9) — related note suggestions
  - POST /api/workspaces/:wsId/knowledge-gaps (F12) — workspace gap analysis
  - POST /api/notes/compare (F14) — multi-note comparison
  - POST /api/notes/merge (F13) — multi-note merge
- Add 4 feature flags for intelligence features
- 9 new tests in embeddings.test.ts (cosine similarity, HTML stripping, embedText)
2026-04-06 08:10:26 -07:00
..
src feat(backend): add note intelligence — embeddings, auto-summarize, duplicates, suggest-links, knowledge gaps 2026-04-06 08:10:26 -07:00
.env.example chore(backend): add FIELD_ENCRYPT env vars to .env.example 2026-03-27 23:01:36 -07:00
Dockerfile fix(docker): remove hardcoded corporate proxy and jfrog registry from Dockerfiles 2026-03-24 11:10:33 -07:00
eslint.config.js chore(backend): add eslint config and lint script 2026-03-26 23:03:09 -07:00
package.json feat(backend): add note-prompts module with Smart Actions LLM integration 2026-04-06 08:01:42 -07:00
tsconfig.json feat(docker): migrate NoteLett to Gitea registry-backed Docker pattern 2026-03-23 20:11:12 -07:00
vitest.config.ts chore(backend): add vitest.config.ts 2026-03-26 23:10:12 -07:00