feat!: align hot-path session memory with context-mode#2
Merged
Conversation
7a9bcb3 to
8561dbe
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 47 out of 101 changed files in this pull request and generated no new comments.
Comments suppressed due to low confidence (1)
src/config.ts:1
coerceConfiguredUrlreturnsurl.toString(), which normalizes URLs by adding a trailing/path when none is present (e.g.redis://host:6379becomesredis://host:6379/). This is an observable behavior change that can break downstream parsing if any caller expects the original URL string format. Consider preserving the originalcandidatewhen it already has an explicit scheme (and is valid), or stripping the default/path when the input did not include one.
import os from "node:os";
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
session_*runtime, with in-process bounded execution, file processing, local indexing/search, and per-root-session corpus storage on Redis/FalkorDB<session_memory>injection, and native-tool enforcement, while Graphiti stays asynchronous and off the hot pathKey Changes
session_*MCP surface from the plugin runtime:session_execute,session_execute_file,session_batch_execute,session_index,session_search,session_fetch_and_index,session_stats, andsession_doctortool.execute.before/tool.execute.after, including native-tool guidance, argument rewriting, denial paths, and routing outcome metadataSessionManager, the session MCP runtime, and corpus storage.github/workflows/publish.ymland.github/scripts/version.tsso publish gating, skip behavior, and tag/release creation stay consistent and idempotent even when npm publish is skippedTesting
src/services/session-mcp-runtime.test.ts,src/services/session-corpus.test.ts,src/services/tool-routing.test.ts,src/services/tool-guidance-cache.test.ts,src/services/tool-routing-outcome-cache.test.ts,src/handlers/tool-before.test.ts,src/handlers/tool-after.test.ts,src/session.test.ts, and related index/handler/service tests.github/scripts/version.test.tsNotes
session_*MCP runtime