codebase-context 1.2.2 → 1.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +292 -87
- package/dist/analyzers/angular/index.d.ts +1 -1
- package/dist/analyzers/angular/index.d.ts.map +1 -1
- package/dist/analyzers/angular/index.js +298 -309
- package/dist/analyzers/angular/index.js.map +1 -1
- package/dist/analyzers/generic/index.d.ts +1 -2
- package/dist/analyzers/generic/index.d.ts.map +1 -1
- package/dist/analyzers/generic/index.js +93 -60
- package/dist/analyzers/generic/index.js.map +1 -1
- package/dist/constants/codebase-context.d.ts +8 -0
- package/dist/constants/codebase-context.d.ts.map +1 -0
- package/dist/constants/codebase-context.js +10 -0
- package/dist/constants/codebase-context.js.map +1 -0
- package/dist/constants/git-patterns.d.ts +12 -0
- package/dist/constants/git-patterns.d.ts.map +1 -0
- package/dist/constants/git-patterns.js +11 -0
- package/dist/constants/git-patterns.js.map +1 -0
- package/dist/core/analyzer-registry.d.ts.map +1 -1
- package/dist/core/analyzer-registry.js +8 -8
- package/dist/core/analyzer-registry.js.map +1 -1
- package/dist/core/indexer.d.ts +11 -1
- package/dist/core/indexer.d.ts.map +1 -1
- package/dist/core/indexer.js +359 -157
- package/dist/core/indexer.js.map +1 -1
- package/dist/core/manifest.d.ts +39 -0
- package/dist/core/manifest.d.ts.map +1 -0
- package/dist/core/manifest.js +86 -0
- package/dist/core/manifest.js.map +1 -0
- package/dist/core/search-quality.d.ts +10 -0
- package/dist/core/search-quality.d.ts.map +1 -0
- package/dist/core/search-quality.js +64 -0
- package/dist/core/search-quality.js.map +1 -0
- package/dist/core/search.d.ts +17 -1
- package/dist/core/search.d.ts.map +1 -1
- package/dist/core/search.js +303 -104
- package/dist/core/search.js.map +1 -1
- package/dist/embeddings/openai.d.ts.map +1 -1
- package/dist/embeddings/openai.js +2 -2
- package/dist/embeddings/openai.js.map +1 -1
- package/dist/embeddings/transformers.d.ts +1 -1
- package/dist/embeddings/transformers.d.ts.map +1 -1
- package/dist/embeddings/transformers.js +19 -15
- package/dist/embeddings/transformers.js.map +1 -1
- package/dist/embeddings/types.d.ts +1 -1
- package/dist/embeddings/types.d.ts.map +1 -1
- package/dist/embeddings/types.js +3 -3
- package/dist/embeddings/types.js.map +1 -1
- package/dist/errors/index.d.ts +8 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +11 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/index.d.ts +7 -29
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1125 -362
- package/dist/index.js.map +1 -1
- package/dist/lib.d.ts +18 -18
- package/dist/lib.d.ts.map +1 -1
- package/dist/lib.js +23 -23
- package/dist/lib.js.map +1 -1
- package/dist/memory/git-memory.d.ts +9 -0
- package/dist/memory/git-memory.d.ts.map +1 -0
- package/dist/memory/git-memory.js +51 -0
- package/dist/memory/git-memory.js.map +1 -0
- package/dist/memory/store.d.ts +38 -0
- package/dist/memory/store.d.ts.map +1 -0
- package/dist/memory/store.js +136 -0
- package/dist/memory/store.js.map +1 -0
- package/dist/patterns/semantics.d.ts +4 -0
- package/dist/patterns/semantics.d.ts.map +1 -0
- package/dist/patterns/semantics.js +24 -0
- package/dist/patterns/semantics.js.map +1 -0
- package/dist/preflight/evidence-lock.d.ts +50 -0
- package/dist/preflight/evidence-lock.d.ts.map +1 -0
- package/dist/preflight/evidence-lock.js +130 -0
- package/dist/preflight/evidence-lock.js.map +1 -0
- package/dist/preflight/query-scope.d.ts +3 -0
- package/dist/preflight/query-scope.d.ts.map +1 -0
- package/dist/preflight/query-scope.js +40 -0
- package/dist/preflight/query-scope.js.map +1 -0
- package/dist/resources/uri.d.ts +5 -0
- package/dist/resources/uri.d.ts.map +1 -0
- package/dist/resources/uri.js +15 -0
- package/dist/resources/uri.js.map +1 -0
- package/dist/storage/lancedb.d.ts +1 -0
- package/dist/storage/lancedb.d.ts.map +1 -1
- package/dist/storage/lancedb.js +51 -34
- package/dist/storage/lancedb.js.map +1 -1
- package/dist/storage/types.d.ts +5 -0
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/storage/types.js +2 -1
- package/dist/storage/types.js.map +1 -1
- package/dist/types/index.d.ts +47 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/dist/utils/chunking.d.ts.map +1 -1
- package/dist/utils/chunking.js +10 -9
- package/dist/utils/chunking.js.map +1 -1
- package/dist/utils/dependency-detection.d.ts +18 -0
- package/dist/utils/dependency-detection.d.ts.map +1 -0
- package/dist/utils/dependency-detection.js +102 -0
- package/dist/utils/dependency-detection.js.map +1 -0
- package/dist/utils/git-dates.d.ts +1 -0
- package/dist/utils/git-dates.d.ts.map +1 -1
- package/dist/utils/git-dates.js +23 -3
- package/dist/utils/git-dates.js.map +1 -1
- package/dist/utils/language-detection.d.ts.map +1 -1
- package/dist/utils/language-detection.js +69 -17
- package/dist/utils/language-detection.js.map +1 -1
- package/dist/utils/usage-tracker.d.ts +2 -2
- package/dist/utils/usage-tracker.d.ts.map +1 -1
- package/dist/utils/usage-tracker.js +67 -38
- package/dist/utils/usage-tracker.js.map +1 -1
- package/dist/utils/workspace-detection.d.ts +32 -0
- package/dist/utils/workspace-detection.d.ts.map +1 -0
- package/dist/utils/workspace-detection.js +107 -0
- package/dist/utils/workspace-detection.js.map +1 -0
- package/package.json +122 -97
- package/dist/core/file-watcher.d.ts +0 -63
- package/dist/core/file-watcher.d.ts.map +0 -1
- package/dist/core/file-watcher.js +0 -210
- package/dist/core/file-watcher.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -36
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js +0 -111
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/pattern-detector.d.ts +0 -41
- package/dist/utils/pattern-detector.d.ts.map +0 -1
- package/dist/utils/pattern-detector.js +0 -101
- package/dist/utils/pattern-detector.js.map +0 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/lib.d.ts
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Library entry point for codebase-context
|
|
2
|
+
* Library entry point for codebase-context
|
|
3
3
|
*
|
|
4
|
-
* This
|
|
5
|
-
* For the MCP server, import from 'codebase-context
|
|
4
|
+
* This exports the core logic for use as a library.
|
|
5
|
+
* For the MCP server, import from 'codebase-context/server' or run the CLI.
|
|
6
6
|
*
|
|
7
7
|
* @example
|
|
8
8
|
* ```typescript
|
|
9
9
|
* import {
|
|
10
|
-
*
|
|
11
|
-
*
|
|
10
|
+
* ProjectAnalyzer,
|
|
11
|
+
* VectorStorage,
|
|
12
12
|
* analyzerRegistry,
|
|
13
13
|
* AngularAnalyzer,
|
|
14
14
|
* GenericAnalyzer
|
|
15
|
-
* } from 'codebase-context
|
|
15
|
+
* } from 'codebase-context';
|
|
16
16
|
*
|
|
17
17
|
* // Register analyzers
|
|
18
18
|
* analyzerRegistry.register(new AngularAnalyzer());
|
|
@@ -30,16 +30,16 @@
|
|
|
30
30
|
* const results = await searcher.search('how do we handle errors?');
|
|
31
31
|
* ```
|
|
32
32
|
*/
|
|
33
|
-
export { CodebaseIndexer, type IndexerOptions } from
|
|
34
|
-
export { CodebaseSearcher, type SearchOptions } from
|
|
35
|
-
export { AnalyzerRegistry, analyzerRegistry
|
|
36
|
-
export { getEmbeddingProvider, TransformersEmbeddingProvider, type EmbeddingProvider, type EmbeddingConfig, DEFAULT_EMBEDDING_CONFIG
|
|
37
|
-
export { getStorageProvider, LanceDBStorageProvider, type VectorStorageProvider, type StorageConfig, type CodeChunkWithEmbedding, DEFAULT_STORAGE_CONFIG
|
|
38
|
-
export { AngularAnalyzer } from
|
|
39
|
-
export { GenericAnalyzer } from
|
|
40
|
-
export { isCodeFile, isBinaryFile, detectLanguage, isTestFile, isDocumentationFile, getSupportedExtensions
|
|
41
|
-
export { createChunksFromCode, calculateComplexity, mergeSmallChunks, type ChunkingOptions
|
|
42
|
-
export type { FrameworkAnalyzer, AnalysisResult, CodeComponent, ImportStatement, ExportStatement, Dependency, DependencyCategory, ArchitecturalLayer, CodeChunk, ChunkMetadata, CodebaseMetadata, FrameworkInfo, LanguageInfo, ArchitectureInfo, ModuleInfo, ProjectStructure, PackageInfo, CodebaseStatistics, StyleGuide, StyleRule, CodeExample, DocumentationFile, DocumentationSection, SearchQuery, SearchFilters, SearchResult, TextHighlight, IndexingProgress, IndexingPhase, IndexingError, IndexingStats, AnalyzerConfig, CodebaseConfig, Decorator, Property, Method, Parameter
|
|
33
|
+
export { CodebaseIndexer, type IndexerOptions } from './core/indexer.js';
|
|
34
|
+
export { CodebaseSearcher, type SearchOptions } from './core/search.js';
|
|
35
|
+
export { AnalyzerRegistry, analyzerRegistry } from './core/analyzer-registry.js';
|
|
36
|
+
export { getEmbeddingProvider, TransformersEmbeddingProvider, type EmbeddingProvider, type EmbeddingConfig, DEFAULT_EMBEDDING_CONFIG } from './embeddings/index.js';
|
|
37
|
+
export { getStorageProvider, LanceDBStorageProvider, type VectorStorageProvider, type StorageConfig, type CodeChunkWithEmbedding, DEFAULT_STORAGE_CONFIG } from './storage/index.js';
|
|
38
|
+
export { AngularAnalyzer } from './analyzers/angular/index.js';
|
|
39
|
+
export { GenericAnalyzer } from './analyzers/generic/index.js';
|
|
40
|
+
export { isCodeFile, isBinaryFile, detectLanguage, isTestFile, isDocumentationFile, getSupportedExtensions } from './utils/language-detection.js';
|
|
41
|
+
export { createChunksFromCode, calculateComplexity, mergeSmallChunks, type ChunkingOptions } from './utils/chunking.js';
|
|
42
|
+
export type { FrameworkAnalyzer, AnalysisResult, CodeComponent, ImportStatement, ExportStatement, Dependency, DependencyCategory, ArchitecturalLayer, CodeChunk, ChunkMetadata, CodebaseMetadata, FrameworkInfo, LanguageInfo, ArchitectureInfo, ModuleInfo, ProjectStructure, PackageInfo, CodebaseStatistics, StyleGuide, StyleRule, CodeExample, DocumentationFile, DocumentationSection, SearchQuery, SearchFilters, SearchResult, TextHighlight, IndexingProgress, IndexingPhase, IndexingError, IndexingStats, AnalyzerConfig, CodebaseConfig, Decorator, Property, Method, Parameter } from './types/index.js';
|
|
43
43
|
/**
|
|
44
44
|
* Convenience function to create a fully configured indexer with default analyzers
|
|
45
45
|
*
|
|
@@ -47,12 +47,12 @@ export type { FrameworkAnalyzer, AnalysisResult, CodeComponent, ImportStatement,
|
|
|
47
47
|
* @param options - Optional indexer configuration
|
|
48
48
|
* @returns A configured CodebaseIndexer instance
|
|
49
49
|
*/
|
|
50
|
-
export declare function createIndexer(rootPath: string, options?: Partial<Omit<import(
|
|
50
|
+
export declare function createIndexer(rootPath: string, options?: Partial<Omit<import('./core/indexer.js').IndexerOptions, 'rootPath'>>): import('./core/indexer.js').CodebaseIndexer;
|
|
51
51
|
/**
|
|
52
52
|
* Convenience function to create a searcher for an indexed codebase
|
|
53
53
|
*
|
|
54
54
|
* @param rootPath - Path to the indexed project root
|
|
55
55
|
* @returns A configured CodebaseSearcher instance
|
|
56
56
|
*/
|
|
57
|
-
export declare function createSearcher(rootPath: string): import(
|
|
57
|
+
export declare function createSearcher(rootPath: string): import('./core/search.js').CodebaseSearcher;
|
|
58
58
|
//# sourceMappingURL=lib.d.ts.map
|
package/dist/lib.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAGH,OAAO,EAAE,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAGH,OAAO,EAAE,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEzE,OAAO,EAAE,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAIjF,OAAO,EACL,oBAAoB,EACpB,6BAA6B,EAC7B,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,wBAAwB,EACzB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC3B,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAI/D,OAAO,EACL,UAAU,EACV,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAC;AAG7B,YAAY,EAEV,iBAAiB,EAGjB,cAAc,EACd,aAAa,EACb,eAAe,EACf,eAAe,EACf,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAGlB,SAAS,EACT,aAAa,EAGb,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAGlB,UAAU,EACV,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EAGpB,WAAW,EACX,aAAa,EACb,YAAY,EACZ,aAAa,EAGb,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,aAAa,EAGb,cAAc,EACd,cAAc,EAGd,SAAS,EACT,QAAQ,EACR,MAAM,EACN,SAAS,EACV,MAAM,kBAAkB,CAAC;AAE1B;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,mBAAmB,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC,GAC9E,OAAO,mBAAmB,EAAE,eAAe,CAa7C;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,kBAAkB,EAAE,gBAAgB,CAE5F"}
|
package/dist/lib.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Library entry point for codebase-context
|
|
2
|
+
* Library entry point for codebase-context
|
|
3
3
|
*
|
|
4
|
-
* This
|
|
5
|
-
* For the MCP server, import from 'codebase-context
|
|
4
|
+
* This exports the core logic for use as a library.
|
|
5
|
+
* For the MCP server, import from 'codebase-context/server' or run the CLI.
|
|
6
6
|
*
|
|
7
7
|
* @example
|
|
8
8
|
* ```typescript
|
|
9
9
|
* import {
|
|
10
|
-
*
|
|
11
|
-
*
|
|
10
|
+
* ProjectAnalyzer,
|
|
11
|
+
* VectorStorage,
|
|
12
12
|
* analyzerRegistry,
|
|
13
13
|
* AngularAnalyzer,
|
|
14
14
|
* GenericAnalyzer
|
|
15
|
-
* } from 'codebase-context
|
|
15
|
+
* } from 'codebase-context';
|
|
16
16
|
*
|
|
17
17
|
* // Register analyzers
|
|
18
18
|
* analyzerRegistry.register(new AngularAnalyzer());
|
|
@@ -31,19 +31,24 @@
|
|
|
31
31
|
* ```
|
|
32
32
|
*/
|
|
33
33
|
// Core classes
|
|
34
|
-
export { CodebaseIndexer } from
|
|
35
|
-
|
|
36
|
-
export {
|
|
34
|
+
export { CodebaseIndexer } from './core/indexer.js';
|
|
35
|
+
import { CodebaseIndexer } from './core/indexer.js';
|
|
36
|
+
export { CodebaseSearcher } from './core/search.js';
|
|
37
|
+
import { CodebaseSearcher } from './core/search.js';
|
|
38
|
+
export { AnalyzerRegistry, analyzerRegistry } from './core/analyzer-registry.js';
|
|
39
|
+
import { analyzerRegistry } from './core/analyzer-registry.js';
|
|
37
40
|
// Embedding providers
|
|
38
|
-
export { getEmbeddingProvider, TransformersEmbeddingProvider, DEFAULT_EMBEDDING_CONFIG
|
|
41
|
+
export { getEmbeddingProvider, TransformersEmbeddingProvider, DEFAULT_EMBEDDING_CONFIG } from './embeddings/index.js';
|
|
39
42
|
// Storage providers
|
|
40
|
-
export { getStorageProvider, LanceDBStorageProvider, DEFAULT_STORAGE_CONFIG
|
|
43
|
+
export { getStorageProvider, LanceDBStorageProvider, DEFAULT_STORAGE_CONFIG } from './storage/index.js';
|
|
41
44
|
// Framework analyzers
|
|
42
|
-
export { AngularAnalyzer } from
|
|
43
|
-
|
|
45
|
+
export { AngularAnalyzer } from './analyzers/angular/index.js';
|
|
46
|
+
import { AngularAnalyzer } from './analyzers/angular/index.js';
|
|
47
|
+
export { GenericAnalyzer } from './analyzers/generic/index.js';
|
|
48
|
+
import { GenericAnalyzer } from './analyzers/generic/index.js';
|
|
44
49
|
// Utilities
|
|
45
|
-
export { isCodeFile, isBinaryFile, detectLanguage, isTestFile, isDocumentationFile, getSupportedExtensions
|
|
46
|
-
export { createChunksFromCode, calculateComplexity, mergeSmallChunks
|
|
50
|
+
export { isCodeFile, isBinaryFile, detectLanguage, isTestFile, isDocumentationFile, getSupportedExtensions } from './utils/language-detection.js';
|
|
51
|
+
export { createChunksFromCode, calculateComplexity, mergeSmallChunks } from './utils/chunking.js';
|
|
47
52
|
/**
|
|
48
53
|
* Convenience function to create a fully configured indexer with default analyzers
|
|
49
54
|
*
|
|
@@ -52,20 +57,16 @@ export { createChunksFromCode, calculateComplexity, mergeSmallChunks, } from "./
|
|
|
52
57
|
* @returns A configured CodebaseIndexer instance
|
|
53
58
|
*/
|
|
54
59
|
export function createIndexer(rootPath, options) {
|
|
55
|
-
const { CodebaseIndexer } = require("./core/indexer.js");
|
|
56
|
-
const { AngularAnalyzer } = require("./analyzers/angular/index.js");
|
|
57
|
-
const { GenericAnalyzer } = require("./analyzers/generic/index.js");
|
|
58
|
-
const { analyzerRegistry } = require("./core/analyzer-registry.js");
|
|
59
60
|
// Register default analyzers if not already registered
|
|
60
|
-
if (!analyzerRegistry.get(
|
|
61
|
+
if (!analyzerRegistry.get('angular')) {
|
|
61
62
|
analyzerRegistry.register(new AngularAnalyzer());
|
|
62
63
|
}
|
|
63
|
-
if (!analyzerRegistry.get(
|
|
64
|
+
if (!analyzerRegistry.get('generic')) {
|
|
64
65
|
analyzerRegistry.register(new GenericAnalyzer());
|
|
65
66
|
}
|
|
66
67
|
return new CodebaseIndexer({
|
|
67
68
|
rootPath,
|
|
68
|
-
...options
|
|
69
|
+
...options
|
|
69
70
|
});
|
|
70
71
|
}
|
|
71
72
|
/**
|
|
@@ -75,7 +76,6 @@ export function createIndexer(rootPath, options) {
|
|
|
75
76
|
* @returns A configured CodebaseSearcher instance
|
|
76
77
|
*/
|
|
77
78
|
export function createSearcher(rootPath) {
|
|
78
|
-
const { CodebaseSearcher } = require("./core/search.js");
|
|
79
79
|
return new CodebaseSearcher(rootPath);
|
|
80
80
|
}
|
|
81
81
|
//# sourceMappingURL=lib.js.map
|
package/dist/lib.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,eAAe;AACf,OAAO,EAAE,eAAe,EAAuB,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAsB,MAAM,kBAAkB,CAAC;AACxE,OAAO,
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,eAAe;AACf,OAAO,EAAE,eAAe,EAAuB,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAsB,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,sBAAsB;AACtB,OAAO,EACL,oBAAoB,EACpB,6BAA6B,EAG7B,wBAAwB,EACzB,MAAM,uBAAuB,CAAC;AAE/B,oBAAoB;AACpB,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EAItB,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAE5B,sBAAsB;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,YAAY;AACZ,OAAO,EACL,UAAU,EACV,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAEjB,MAAM,qBAAqB,CAAC;AA4D7B;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAC3B,QAAgB,EAChB,OAA+E;IAE/E,uDAAuD;IACvD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACrC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,eAAe,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACrC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,eAAe,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,IAAI,eAAe,CAAC;QACzB,QAAQ;QACR,GAAG,OAAO;KACX,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,OAAO,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Memory } from '../types/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Parse one git log line in format:
|
|
4
|
+
* <iso-date>\t<short-hash> <subject>
|
|
5
|
+
* Returns a normalized Memory when the subject matches supported commit patterns.
|
|
6
|
+
*/
|
|
7
|
+
export declare function parseGitLogLineToMemory(line: string): Memory | null;
|
|
8
|
+
export declare function parseGitLogToMemories(log: string): Memory[];
|
|
9
|
+
//# sourceMappingURL=git-memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-memory.d.ts","sourceRoot":"","sources":["../../src/memory/git-memory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAIhD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgCnE;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAS3D"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { createHash } from 'crypto';
|
|
2
|
+
import { GIT_COMMIT_PATTERNS } from '../constants/git-patterns.js';
|
|
3
|
+
const MIN_COMMIT_MESSAGE_LENGTH = 10;
|
|
4
|
+
/**
|
|
5
|
+
* Parse one git log line in format:
|
|
6
|
+
* <iso-date>\t<short-hash> <subject>
|
|
7
|
+
* Returns a normalized Memory when the subject matches supported commit patterns.
|
|
8
|
+
*/
|
|
9
|
+
export function parseGitLogLineToMemory(line) {
|
|
10
|
+
const tabIdx = line.indexOf('\t');
|
|
11
|
+
if (tabIdx === -1)
|
|
12
|
+
return null;
|
|
13
|
+
const commitDateRaw = line.substring(0, tabIdx).trim();
|
|
14
|
+
const hashAndSubject = line.substring(tabIdx + 1).trim();
|
|
15
|
+
if (!commitDateRaw || !hashAndSubject)
|
|
16
|
+
return null;
|
|
17
|
+
const commitMs = Date.parse(commitDateRaw);
|
|
18
|
+
if (!Number.isFinite(commitMs))
|
|
19
|
+
return null;
|
|
20
|
+
for (const pattern of GIT_COMMIT_PATTERNS) {
|
|
21
|
+
if (!pattern.prefix.test(hashAndSubject))
|
|
22
|
+
continue;
|
|
23
|
+
const message = hashAndSubject.replace(/^[a-f0-9]+ /i, '').trim();
|
|
24
|
+
if (message.length < MIN_COMMIT_MESSAGE_LENGTH)
|
|
25
|
+
return null;
|
|
26
|
+
const hashContent = `git:${pattern.type}:${pattern.category}:${message}`;
|
|
27
|
+
const id = createHash('sha256').update(hashContent).digest('hex').substring(0, 12);
|
|
28
|
+
return {
|
|
29
|
+
id,
|
|
30
|
+
type: pattern.type,
|
|
31
|
+
category: pattern.category,
|
|
32
|
+
memory: message,
|
|
33
|
+
reason: 'Auto-extracted from git commit history',
|
|
34
|
+
date: new Date(commitMs).toISOString(),
|
|
35
|
+
source: 'git'
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
export function parseGitLogToMemories(log) {
|
|
41
|
+
if (!log.trim())
|
|
42
|
+
return [];
|
|
43
|
+
const memories = [];
|
|
44
|
+
for (const line of log.split('\n')) {
|
|
45
|
+
const parsed = parseGitLogLineToMemory(line);
|
|
46
|
+
if (parsed)
|
|
47
|
+
memories.push(parsed);
|
|
48
|
+
}
|
|
49
|
+
return memories;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=git-memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-memory.js","sourceRoot":"","sources":["../../src/memory/git-memory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAGnE,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAErC;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,MAAM,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAE/B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACzD,IAAI,CAAC,aAAa,IAAI,CAAC,cAAc;QAAE,OAAO,IAAI,CAAC;IAEnD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IAE5C,KAAK,MAAM,OAAO,IAAI,mBAAmB,EAAE,CAAC;QAC1C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;YAAE,SAAS;QAEnD,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAClE,IAAI,OAAO,CAAC,MAAM,GAAG,yBAAyB;YAAE,OAAO,IAAI,CAAC;QAE5D,MAAM,WAAW,GAAG,OAAO,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,EAAE,CAAC;QACzE,MAAM,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAEnF,OAAO;YACL,EAAE;YACF,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,wCAAwC;YAChD,IAAI,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE;YACtC,MAAM,EAAE,KAAK;SACd,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAE3B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,MAAM;YAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { Memory, MemoryCategory, MemoryType } from '../types/index.js';
|
|
2
|
+
export type MemoryFilters = {
|
|
3
|
+
category?: MemoryCategory;
|
|
4
|
+
type?: MemoryType;
|
|
5
|
+
query?: string;
|
|
6
|
+
};
|
|
7
|
+
export declare function normalizeMemory(raw: unknown): Memory | null;
|
|
8
|
+
export declare function normalizeMemories(raw: unknown): Memory[];
|
|
9
|
+
export declare function readMemoriesFile(memoryPath: string): Promise<Memory[]>;
|
|
10
|
+
export declare function writeMemoriesFile(memoryPath: string, memories: Memory[]): Promise<void>;
|
|
11
|
+
export declare function appendMemoryFile(memoryPath: string, memory: Memory): Promise<{
|
|
12
|
+
status: 'added' | 'duplicate';
|
|
13
|
+
memory: Memory;
|
|
14
|
+
}>;
|
|
15
|
+
export declare function filterMemories(memories: Memory[], filters: MemoryFilters): Memory[];
|
|
16
|
+
export declare function sortMemoriesByRecency(memories: Memory[]): Memory[];
|
|
17
|
+
export interface MemoryWithConfidence extends Memory {
|
|
18
|
+
effectiveConfidence: number;
|
|
19
|
+
stale: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Compute confidence decay: confidence = 2^(-age_days / half_life)
|
|
23
|
+
* Conventions never decay. Memories below 0.3 are flagged stale.
|
|
24
|
+
*/
|
|
25
|
+
export declare function computeConfidence(memory: Memory, now?: Date): {
|
|
26
|
+
effectiveConfidence: number;
|
|
27
|
+
stale: boolean;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Enrich an array of memories with confidence decay metadata.
|
|
31
|
+
*/
|
|
32
|
+
export declare function withConfidence(memories: Memory[], now?: Date): MemoryWithConfidence[];
|
|
33
|
+
export declare function applyUnfilteredLimit(memories: Memory[], filters: MemoryFilters, limit: number): {
|
|
34
|
+
memories: Memory[];
|
|
35
|
+
truncated: boolean;
|
|
36
|
+
totalCount: number;
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/memory/store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAa5E,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAMF,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAoB3D;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,EAAE,CAQxD;AAED,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAO5E;AAED,wBAAsB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAG7F;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,MAAM,EAAE,OAAO,GAAG,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAO5D;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,aAAa,GAAG,MAAM,EAAE,CAkBnF;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAWlE;AAcD,MAAM,WAAW,oBAAqB,SAAQ,MAAM;IAClD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,GAAG,CAAC,EAAE,IAAI,GACT;IAAE,mBAAmB,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAajD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,IAAI,GAAG,oBAAoB,EAAE,CAKrF;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,GACZ;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAUhE"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { promises as fs } from 'fs';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
function isRecord(value) {
|
|
4
|
+
return typeof value === 'object' && value !== null;
|
|
5
|
+
}
|
|
6
|
+
export function normalizeMemory(raw) {
|
|
7
|
+
if (!isRecord(raw))
|
|
8
|
+
return null;
|
|
9
|
+
const m = raw;
|
|
10
|
+
const id = typeof m.id === 'string' ? m.id : undefined;
|
|
11
|
+
const type = typeof m.type === 'string' ? m.type : 'decision';
|
|
12
|
+
const category = typeof m.category === 'string' ? m.category : undefined;
|
|
13
|
+
const memory = typeof m.memory === 'string'
|
|
14
|
+
? m.memory
|
|
15
|
+
: typeof m.decision === 'string'
|
|
16
|
+
? m.decision
|
|
17
|
+
: undefined;
|
|
18
|
+
const reason = typeof m.reason === 'string' ? m.reason : undefined;
|
|
19
|
+
const date = typeof m.date === 'string' ? m.date : undefined;
|
|
20
|
+
if (!id || !category || !memory || !reason || !date)
|
|
21
|
+
return null;
|
|
22
|
+
const source = m.source === 'git' ? 'git' : undefined;
|
|
23
|
+
return { id, type, category, memory, reason, date, ...(source && { source }) };
|
|
24
|
+
}
|
|
25
|
+
export function normalizeMemories(raw) {
|
|
26
|
+
if (!Array.isArray(raw))
|
|
27
|
+
return [];
|
|
28
|
+
const out = [];
|
|
29
|
+
for (const item of raw) {
|
|
30
|
+
const normalized = normalizeMemory(item);
|
|
31
|
+
if (normalized)
|
|
32
|
+
out.push(normalized);
|
|
33
|
+
}
|
|
34
|
+
return out;
|
|
35
|
+
}
|
|
36
|
+
export async function readMemoriesFile(memoryPath) {
|
|
37
|
+
try {
|
|
38
|
+
const content = await fs.readFile(memoryPath, 'utf-8');
|
|
39
|
+
return normalizeMemories(JSON.parse(content));
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
return [];
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
export async function writeMemoriesFile(memoryPath, memories) {
|
|
46
|
+
await fs.mkdir(path.dirname(memoryPath), { recursive: true });
|
|
47
|
+
await fs.writeFile(memoryPath, JSON.stringify(memories, null, 2));
|
|
48
|
+
}
|
|
49
|
+
export async function appendMemoryFile(memoryPath, memory) {
|
|
50
|
+
const existing = await readMemoriesFile(memoryPath);
|
|
51
|
+
const found = existing.find((m) => m.id === memory.id);
|
|
52
|
+
if (found)
|
|
53
|
+
return { status: 'duplicate', memory: found };
|
|
54
|
+
existing.push(memory);
|
|
55
|
+
await writeMemoriesFile(memoryPath, existing);
|
|
56
|
+
return { status: 'added', memory };
|
|
57
|
+
}
|
|
58
|
+
export function filterMemories(memories, filters) {
|
|
59
|
+
const { category, type, query } = filters;
|
|
60
|
+
let filtered = memories;
|
|
61
|
+
if (type)
|
|
62
|
+
filtered = filtered.filter((m) => m.type === type);
|
|
63
|
+
if (category)
|
|
64
|
+
filtered = filtered.filter((m) => m.category === category);
|
|
65
|
+
if (query) {
|
|
66
|
+
const terms = query.toLowerCase().split(/\s+/).filter(Boolean);
|
|
67
|
+
if (terms.length > 0) {
|
|
68
|
+
filtered = filtered.filter((m) => {
|
|
69
|
+
const haystack = `${m.memory} ${m.reason}`.toLowerCase();
|
|
70
|
+
return terms.some((t) => haystack.includes(t));
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return filtered;
|
|
75
|
+
}
|
|
76
|
+
export function sortMemoriesByRecency(memories) {
|
|
77
|
+
const withIndex = memories.map((m, i) => ({ m, i }));
|
|
78
|
+
withIndex.sort((a, b) => {
|
|
79
|
+
const ad = Date.parse(a.m.date);
|
|
80
|
+
const bd = Date.parse(b.m.date);
|
|
81
|
+
const aTime = Number.isFinite(ad) ? ad : 0;
|
|
82
|
+
const bTime = Number.isFinite(bd) ? bd : 0;
|
|
83
|
+
if (aTime !== bTime)
|
|
84
|
+
return bTime - aTime;
|
|
85
|
+
return a.i - b.i;
|
|
86
|
+
});
|
|
87
|
+
return withIndex.map((x) => x.m);
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Half-life in days per memory type.
|
|
91
|
+
* Convention memories never decay (Infinity).
|
|
92
|
+
* Decisions may be revisited. Gotchas and failures get fixed.
|
|
93
|
+
*/
|
|
94
|
+
const HALF_LIFE_DAYS = {
|
|
95
|
+
convention: Infinity,
|
|
96
|
+
decision: 180,
|
|
97
|
+
gotcha: 90,
|
|
98
|
+
failure: 90
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* Compute confidence decay: confidence = 2^(-age_days / half_life)
|
|
102
|
+
* Conventions never decay. Memories below 0.3 are flagged stale.
|
|
103
|
+
*/
|
|
104
|
+
export function computeConfidence(memory, now) {
|
|
105
|
+
const halfLife = HALF_LIFE_DAYS[memory.type] ?? 180;
|
|
106
|
+
if (!Number.isFinite(halfLife)) {
|
|
107
|
+
return { effectiveConfidence: 1.0, stale: false };
|
|
108
|
+
}
|
|
109
|
+
const memDate = Date.parse(memory.date);
|
|
110
|
+
if (!Number.isFinite(memDate)) {
|
|
111
|
+
return { effectiveConfidence: 0, stale: true };
|
|
112
|
+
}
|
|
113
|
+
const ageDays = ((now ?? new Date()).getTime() - memDate) / (1000 * 60 * 60 * 24);
|
|
114
|
+
const confidence = Math.pow(2, -ageDays / halfLife);
|
|
115
|
+
const rounded = Math.round(confidence * 100) / 100;
|
|
116
|
+
return { effectiveConfidence: rounded, stale: rounded < 0.3 };
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Enrich an array of memories with confidence decay metadata.
|
|
120
|
+
*/
|
|
121
|
+
export function withConfidence(memories, now) {
|
|
122
|
+
return memories.map((m) => ({
|
|
123
|
+
...m,
|
|
124
|
+
...computeConfidence(m, now)
|
|
125
|
+
}));
|
|
126
|
+
}
|
|
127
|
+
export function applyUnfilteredLimit(memories, filters, limit) {
|
|
128
|
+
const totalCount = memories.length;
|
|
129
|
+
const hasFilters = Boolean(filters.category || filters.type || (filters.query && filters.query.trim()));
|
|
130
|
+
if (hasFilters || totalCount <= limit) {
|
|
131
|
+
return { memories, truncated: false, totalCount };
|
|
132
|
+
}
|
|
133
|
+
const sorted = sortMemoriesByRecency(memories);
|
|
134
|
+
return { memories: sorted.slice(0, limit), truncated: true, totalCount };
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/memory/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AAoBxB,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAY;IAC1C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAChC,MAAM,CAAC,GAAG,GAAgB,CAAC;IAE3B,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACvD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,IAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;IAC9E,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,QAA2B,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7F,MAAM,MAAM,GACV,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;QAC1B,CAAC,CAAC,CAAC,CAAC,MAAM;QACV,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;YAC9B,CAAC,CAAC,CAAC,CAAC,QAAQ;YACZ,CAAC,CAAC,SAAS,CAAC;IAClB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IACnE,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAE7D,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEjE,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAE,KAAe,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AACjF,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,GAAY;IAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;QACvB,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,UAAU;YAAE,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,UAAkB;IACvD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACvD,OAAO,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,UAAkB,EAAE,QAAkB;IAC5E,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9D,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAkB,EAClB,MAAc;IAEd,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC;IACvD,IAAI,KAAK;QAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACzD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtB,MAAM,iBAAiB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC9C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,QAAkB,EAAE,OAAsB;IACvE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC1C,IAAI,QAAQ,GAAG,QAAQ,CAAC;IAExB,IAAI,IAAI;QAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC7D,IAAI,QAAQ;QAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;IAEzE,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC/D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC/B,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC;gBACzD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAkB;IACtD,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACrD,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,IAAI,KAAK,KAAK,KAAK;YAAE,OAAO,KAAK,GAAG,KAAK,CAAC;QAC1C,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC;IACH,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACnC,CAAC;AAED;;;;GAIG;AACH,MAAM,cAAc,GAA2B;IAC7C,UAAU,EAAE,QAAQ;IACpB,QAAQ,EAAE,GAAG;IACb,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;CACZ,CAAC;AAOF;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAc,EACd,GAAU;IAEV,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;IACpD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,mBAAmB,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IACpD,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,OAAO,EAAE,mBAAmB,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACjD,CAAC;IACD,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IAClF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IACnD,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,GAAG,EAAE,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,QAAkB,EAAE,GAAU;IAC3D,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1B,GAAG,CAAC;QACJ,GAAG,iBAAiB,CAAC,CAAC,EAAE,GAAG,CAAC;KAC7B,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,QAAkB,EAClB,OAAsB,EACtB,KAAa;IAEb,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;IACnC,MAAM,UAAU,GAAG,OAAO,CACxB,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAC5E,CAAC;IACF,IAAI,UAAU,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;QACtC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IACpD,CAAC;IACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAC3E,CAAC"}
|