Skip to content

feat(#16): uteke-core HTTP integration — semantic search + auto-linking - #47

Merged
ajianaz merged 2 commits into
developfrom
feat/16-uteke-core-integration
Jun 22, 2026
Merged

feat(#16): uteke-core HTTP integration — semantic search + auto-linking#47
ajianaz merged 2 commits into
developfrom
feat/16-uteke-core-integration

Conversation

@ajianaz

@ajianaz ajianaz commented Jun 22, 2026

Copy link
Copy Markdown
Collaborator

Phase 2 Foundation — Uteke Server Integration

Implements #16 — replaces direct SQLite reads with HTTP API calls to uteke-serve for semantic search, cosine auto-linking, and graph data.

Architecture

CorIn (Svelte 5)
  └── Tauri IPC
       ├── Rust Commands
       │    ├── Direct DB (rusqlite) — fallback, Phase 1 mode
       │    └── UtekeClient (HTTP) — semantic search, auto-link ← NEW
       └── Uteke DB: ~/.uteke/uteke.db (read-only)

What's New

Backend:

  • uteke_client.rs — HTTP client with 15+ API methods (recall, search, remember, graph, rooms, etc.)
  • 6 new Tauri commands: uteke_server_status, uteke_recall, uteke_remember, uteke_forget, uteke_server_graph, uteke_server_stats
  • resolve_model_dir() — reuse ~/.uteke/models/ if Uteke installed, fallback to ~/.codecora/uteke/models/

Frontend:

  • utekeServer IPC wrappers in ipc.ts
  • Dashboard: server status badge (green pulse = online, hint = offline)
  • MemoryList: semantic search with fallback to FTS5
  • Settings: Uteke server connection panel with live stats

Security (Cora Review Fixed)

  • Clone UtekeClient outside mutex lock (no held lock during HTTP)
  • URL-encode query params via .query() (no string interpolation)
  • Check HTTP status on all endpoints (no silent failures)

Model Path Resolution

  1. ~/.uteke/models/embeddinggemma-q4/ — reuse Uteke (no dup download)
  2. ~/.codecora/uteke/models/embeddinggemma-q4/ — standalone copy

Testing

  • ✅ Rust: clippy + fmt + 9 tests pass
  • ✅ Frontend: svelte-check clean, vite build pass
  • ✅ Cora review: no issues found

ajianaz added 2 commits June 22, 2026 14:48
…g, model path resolution

- Add uteke_client.rs: HTTP client for uteke-serve API
- Add 6 new Tauri commands: uteke_server_status, uteke_recall,
  uteke_remember, uteke_forget, uteke_server_graph, uteke_server_stats
- Add reqwest dependency (rustls-tls, no OpenSSL)
- AppState: add uteke_client field (Option<UtekeClient>)
- Config: resolve_model_dir() — reuse ~/.uteke/models/ or ~/.codecora/uteke/models/
- Frontend: utekeServer IPC wrappers
- Dashboard: server status badge + semantic search indicator
- MemoryList: semantic search fallback (vector + FTS5 hybrid)
- Settings: Uteke server connection status panel
- GraphView: fix null safety + use local ref for data
…g, model path resolution

- Add uteke_client.rs: HTTP client for uteke-serve API
- Add 6 new Tauri commands: uteke_server_status, uteke_recall,
  uteke_remember, uteke_forget, uteke_server_graph, uteke_server_stats
- Add reqwest dependency (rustls-tls, no OpenSSL)
- AppState: add uteke_client field (Option<UtekeClient>)
- Config: resolve_model_dir() — reuse ~/.uteke/models/ or ~/.codecora/uteke/models/
- Frontend: utekeServer IPC wrappers
- Dashboard: server status badge + semantic search indicator
- MemoryList: semantic search fallback (vector + FTS5 hybrid)
- Settings: Uteke server connection status panel
- GraphView: fix null safety + use local ref for data

Cora review fixes: clone client outside mutex lock, URL-encode query
params, check HTTP status on all endpoints.
@coderabbitai

coderabbitai Bot commented Jun 22, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Free

Run ID: 25a92274-e285-4812-aa3f-aea24e979847

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Note

🎁 Summarized by CodeRabbit Free

Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login.

Comment @coderabbitai help to get the list of available commands and usage tips.

@ajianaz
ajianaz merged commit dcbec6a into develop Jun 22, 2026
10 checks passed
@ajianaz
ajianaz deleted the feat/16-uteke-core-integration branch June 22, 2026 07:55
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