Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Enables encrypted user embedding storage + cosine search with experimental /v1/rag endpoints for local/dev testing. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Use Sage's 20k default char_limit and reject oversized updates via /v1/agent/memory/blocks/:label. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Restructure agent chat to emit messages per-step via SSE instead of batching all messages into a single JSON response. This mirrors Sage's Signal delivery pattern: messages are sent immediately as produced, persisted synchronously (so the next step sees them in context), and embeddings update async. - Split process_message into prepare() + public step() so the handler drives the loop - Chat handler emits agent.message, agent.done, agent.error SSE events - Persistence moved from runtime to handler (send first, store sync, embed async) - Added ExecutedTool to carry tool results for handler-side persistence - Updated sage-in-maple doc to reflect conversations API isolation done Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Sage uses kimi-k2 as the default model with a 256k context window. The agent config was incorrectly defaulting to deepseek-r1-0528 with 100k context. Fixed in both the runtime code and the migration SQL. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
The get_or_create_agent_config helper in mod.rs still had the old deepseek-r1-0528 / 100k defaults. Extracted DEFAULT_MODEL, DEFAULT_CONTEXT_WINDOW, DEFAULT_COMPACTION_THRESHOLD as pub constants in runtime.rs and use them from both creation sites. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Adds encrypted attachment_text storage and a vision pre-step for input_image so agents and embeddings see [Uploaded Image: ...] descriptions. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
| user_id UUID NOT NULL REFERENCES users(uuid) ON DELETE CASCADE, | ||
|
|
||
| label TEXT NOT NULL, | ||
| description TEXT, |
There was a problem hiding this comment.
I don't think we need to persist description here. Probably best it is hardcoded into the code in case we need to configure this later
| label TEXT NOT NULL, | ||
| description TEXT, | ||
| value_enc BYTEA NOT NULL, | ||
| char_limit INTEGER NOT NULL DEFAULT 5000, |
There was a problem hiding this comment.
do we need to enforce char_limit at the db layer or allow it to be configured? another case for this just being hard coded.
Use custom rustPlatform from rust-overlay to match rust-toolchain.toml. Add outputHashes for baml-ids, minijinja, and rig-core git dependencies. Update PCR values for dev and prod. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
| conversation_id BIGINT REFERENCES conversations(id) ON DELETE SET NULL, | ||
|
|
||
| enabled BOOLEAN NOT NULL DEFAULT FALSE, | ||
| model TEXT NOT NULL DEFAULT 'kimi-k2-5', |
There was a problem hiding this comment.
remove kimi default from sql layer, we should always pass this in
Hide the primary Maple relationship behind a main agent thread while giving users focused subagent chats that share memory and code-owned runtime defaults. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Mirror the conversations API so clients can list agents and browse main-agent and subagent items with consistent cursor semantics. Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
No description provided.