Conversation
This reverts commit 36f0de2.
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.
Description
Implements a hippocampus-inspired memory system for CodeSpy that maintains transferable context across runs, enabling agents to reuse structural understanding and constants. The system includes a Distiller and Cartographer for trajectory analysis and memory curation, with configurable token budgets and filesystem/S3 storage. The pipeline is updated to pass inherited context memory between stages, and configuration is expanded to support per-signature memory settings and new reasoning parameters.
Changelog
Added
ContextSafewrapper with automatic RLM fallback)ScopeIdentifier)tools/storage/) with filesystem and S3 backendsminimal|low|medium|high) — maps to provider-native parameters (Anthropic thinking budget, OpenAI reasoning_effort)max_tokensoutput token budget (replacesmax_reasoning_tokens)Security
_resolve_pathdecodes percent-encoded input before validation (catches%2e%2e,%2f..%2f— CWE-22)json-repairpinned to >=0.56.0 (GHSA-xf7x-x43h-rpqh)litellmfloor raised to ^1.84.0 (excludes known-vulnerable versions)gitpythonfloor raised to >=3.1.41 (excludes CVE-affected versions)markdownifyfloor raised to >=0.14.0 (excludes known-vulnerable versions)Changed
MergeRequestmodel renamed toPullRequest(backward-compat alias removed)ReviewContext.merge_requestfield →pull_request(compat property removed)mr_url→pr_url;fetch_merge_request()→fetch_pull_request()build_mr_from_diff()→build_pr_from_diff()ReviewResultfields:mr_number→pr_number,mr_title→pr_title,mr_url→pr_urlreview_prparameter renamed:mr_url→pr_urltools/filesystemmodule moved totools/storage/filesystem(import path changed)max_context_sizeandmax_reasoning_tokensenv vars replaced byreasoning_effort,temperature, andmax_tokens*-max-context-size,*-max-reasoning-tokens(replaced by*-reasoning-effort)dspydependency: ^3.1.3 → ^3.3.0mcpdependency: >=1.0.0 → >=1.29.0,<2.0.0litellmdependency: ^1.81.6 → ^1.84.0gitpythondependency: >=3.1.0 → >=3.1.41json-repairdependency: ^0.55.1 → >=0.56.0markdownifydependency: >=0.13.0 → >=0.14.0ScopeResolvermodule)Summarizermodule with config keysummary)ReviewMetadatamodel introduced to reduce parameter proliferationContextSafewrapperdocs/, simplified TOCcodespy.yamlexpanded with memory, reasoning, and per-signature configuration (194 → 326 lines)Removed
ScopeIdentifiermodule (replaced byScopeResolver)tools/filesystem/__init__.py(replaced bytools/storage/abstraction)default_max_context_sizeanddefault_max_reasoning_tokenssettingsMAX_CONTEXT_SIZEandMAX_REASONING_TOKENSenv vars (replaced byREASONING_EFFORTandMAX_TOKENS)MergeRequestbackward-compat alias_would_overflow_context()methods