Commit Graph

5 Commits

Author SHA1 Message Date
Roberto Musso
2cb2f0e4e8 feat: integrate vectordb for note embeddings
- Added `vectordb` as a dependency in `package.json`.
- Implemented `embedText` function in `src/main/ai/embeddings.ts` to handle text embeddings using GitHub Copilot OAuth token or OpenAI token.
- Created `vectordb.ts` for managing LanceDB connection and embedding notes with upsert strategy.
- Updated `index.ts` to initialize vector database and migrate existing notes on app ready.
- Modified `router/index.ts` to fire-and-forget embedding calls on note creation and updates.
- Enhanced `progress.txt` with detailed implementation notes and learnings regarding the integration.
2026-02-24 21:34:48 +01:00
Roberto Musso
00a43e0fbc feat: Integrate GitHub Copilot SDK and LangChain for provider-independent orchestration
- Added @github/copilot-sdk and related dependencies for GitHub Copilot integration.
- Implemented ChatCopilot adapter for LangChain compatibility.
- Created LLM factory to return provider-specific models (OpenAI, Anthropic, Copilot).
- Developed Orchestrator agent using LangGraph for intent routing and context assembly.
- Enhanced IPC communication for streaming AI responses to the renderer.
- Updated progress documentation with implementation details and learnings.
2026-02-23 17:58:00 +01:00
Roberto Musso
c1aa6829c9 feat: add task comments feature with CRUD operations
- Introduced a new `task_comments` table in the database schema.
- Implemented task comments API endpoints for listing, creating, and deleting comments.
- Enhanced the task detail dialog to display comments and allow users to add new comments.
- Updated task row component to handle click events for viewing task details.
- Added a theme provider to manage light/dark mode across the application.
- Refactored Milkdown editor to use Crepe for improved markdown editing experience.
- Updated global styles to accommodate new editor and theme changes.
- Enhanced task filtering and sorting functionality in the tasks page.
2026-02-23 12:54:14 +01:00
Roberto Musso
8a869f90ad feat: US-002 — SQLite + Drizzle ORM schema and migrations
- Install better-sqlite3 + drizzle-orm as runtime deps; drizzle-kit + @types/better-sqlite3 as devDeps
- Define 5 tables in src/main/db/schema.ts: clients, projects, tasks, checkpoints, notes
- All IDs are TEXT (UUID); types inferred via InferSelectModel/InferInsertModel
- initDb() in src/main/db/index.ts opens adiuva.db at app.getPath('userData'), runs CREATE TABLE IF NOT EXISTS (non-destructive push), enables WAL mode
- Call initDb() in main process app ready handler
- Externalize better-sqlite3 in vite.main.config.mts; add AutoUnpackNativesPlugin to forge.config.ts
- Add drizzle.config.ts for drizzle-kit CLI support

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-19 16:37:24 +01:00
Roberto Musso
f6cc8bb23a feat: US-001 — scaffold NeuralDesk Electron + React app
- electron-forge 7 + Vite plugin (vite-typescript template)
- React 19 + TypeScript 5 strict mode
- TanStack Router with file-based routing (4 routes: /, /timeline, /tasks, /projects)
- Tailwind CSS 3 + PostCSS with Figma design tokens (sidebar, primary, muted)
- Framer Motion, Lucide React, shadcn/ui utilities (cn, CVA, clsx, twMerge)
- AppShell layout: 240px sidebar with collapse toggle, active route highlighting
- Vite configs use .mts extension to avoid ESM/CJS conflict with electron-forge
- Full package build verified (linux x64)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-19 15:28:31 +01:00