Current Context The current focus is on optimizing the Signet daemon's embedding processing pipeline by migrating UMAP dimensionality reduction from the client-side browser to the server-side daemon, and ensuring the openclaw application maintains a healthy port configuration. Active Projects UMAP Server-Side Migration Location: `/home/nicholai/signet/signetai` (Bun monorepo) Status: Parallelization underway. Backend worker is processing tasks #1-4 (Migration creation, Projection module, API endpoint registration, Cache invalidation hooks). Frontend worker has completed rewriting the dashboard client to use the new server projection API and removing `umap-js`. Blockers: Waiting for backend worker completion of tasks #1-4 before final build/typecheck. Next Steps: Backend worker must finish implementation; remove `umap-js` from dashboard `package.json`; run final build and typecheck. Openclaw Port Configuration Location: System level. Status: Resolved. Port 8788 conflict between `workerd` and the `nextcloud-talk` plugin has been fixed. Next Steps: Monitor application health. Recent Work UMAP Performance Optimization: Successfully decomposed the migration task into parallelized sub-tasks. The migration file `010-umap-cache.ts` has been created and registered. The daemon endpoint `GET /api/embeddings/projection` is being implemented. Cache invalidation hooks are being added to `syncVecInsert` and related vector operations in `db-helpers.ts`. Dashboard Client Rewrite: The dashboard `api.ts` has been updated to fetch projection coordinates from the daemon instead of running UMAP locally. The `umap-js` package has been removed from `packages/cli/dashboard/package.json`. Technical Notes Code Standards: Strict TypeScript discipline: no `any` types, no `as` assertions (use typed variables), explicit return types on all exports. Monorepo Structure: Bun-based monorepo located at `/home/nicholai/signet/signetai`. Cache Invalidation: The `syncVecInsert` function in `db-helpers.ts` requires specific cache invalidation hooks to be added. Timeline Aggregation: The daemon processes `memory_history`, `memories`, and `connectors` tables with ISO timestamps. Signet Agent Profile: Confirmed location is `~/.agents/`. Rules & Warnings UI Image Handling: For any frontend image rendering or design tasks, Opus must handle the image context directly. Never delegate UI image work to subagents. Database Safety: Never delete from the production database without a backup. Refactoring Limits: Adhere to strict file size (max 700 LOC) and indentation (max 3 levels) constraints. Logging: Keep journal entries updated in the memory database regularly. - Agent Locations: The Signet agent profile resides at `~/.agents/`.