@fgv/ts-agent-memory 5.1.0-36
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/.rush/temp/chunked-rush-logs/ts-agent-memory.build.chunks.jsonl +9 -0
- package/.rush/temp/f6a88bfdd66517ccb98c2c7ae1be6e6fe9e15d38.tar.log +282 -0
- package/.rush/temp/operation/build/all.log +9 -0
- package/.rush/temp/operation/build/log-chunks.jsonl +9 -0
- package/.rush/temp/operation/build/state.json +3 -0
- package/.rush/temp/shrinkwrap-deps.json +688 -0
- package/LICENSE +21 -0
- package/README.md +45 -0
- package/config/api-extractor.json +343 -0
- package/config/jest.config.json +14 -0
- package/config/rig.json +4 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/packlets/converters/bodyConverterRegistry.js +51 -0
- package/dist/packlets/converters/bodyConverterRegistry.js.map +1 -0
- package/dist/packlets/converters/envelopeConverter.js +159 -0
- package/dist/packlets/converters/envelopeConverter.js.map +1 -0
- package/dist/packlets/converters/index.js +7 -0
- package/dist/packlets/converters/index.js.map +1 -0
- package/dist/packlets/index/index.js +6 -0
- package/dist/packlets/index/index.js.map +1 -0
- package/dist/packlets/index/memoryIndex.js +170 -0
- package/dist/packlets/index/memoryIndex.js.map +1 -0
- package/dist/packlets/observe/index.js +7 -0
- package/dist/packlets/observe/index.js.map +1 -0
- package/dist/packlets/observe/memoryObservationStore.js +119 -0
- package/dist/packlets/observe/memoryObservationStore.js.map +1 -0
- package/dist/packlets/observe/observer.js +6 -0
- package/dist/packlets/observe/observer.js.map +1 -0
- package/dist/packlets/retrieve/hybridRetriever.js +135 -0
- package/dist/packlets/retrieve/hybridRetriever.js.map +1 -0
- package/dist/packlets/retrieve/index.js +12 -0
- package/dist/packlets/retrieve/index.js.map +1 -0
- package/dist/packlets/retrieve/linkTraversalRetriever.js +143 -0
- package/dist/packlets/retrieve/linkTraversalRetriever.js.map +1 -0
- package/dist/packlets/retrieve/recencyRetriever.js +33 -0
- package/dist/packlets/retrieve/recencyRetriever.js.map +1 -0
- package/dist/packlets/retrieve/retriever.js +110 -0
- package/dist/packlets/retrieve/retriever.js.map +1 -0
- package/dist/packlets/retrieve/semanticRetriever.js +86 -0
- package/dist/packlets/retrieve/semanticRetriever.js.map +1 -0
- package/dist/packlets/retrieve/structuredFilterRetriever.js +37 -0
- package/dist/packlets/retrieve/structuredFilterRetriever.js.map +1 -0
- package/dist/packlets/retrieve/tagRetriever.js +37 -0
- package/dist/packlets/retrieve/tagRetriever.js.map +1 -0
- package/dist/packlets/store/fileTreeMemoryStore.js +698 -0
- package/dist/packlets/store/fileTreeMemoryStore.js.map +1 -0
- package/dist/packlets/store/index.js +7 -0
- package/dist/packlets/store/index.js.map +1 -0
- package/dist/packlets/store/scopeEncoding.js +31 -0
- package/dist/packlets/store/scopeEncoding.js.map +1 -0
- package/dist/packlets/types/envelope.js +6 -0
- package/dist/packlets/types/envelope.js.map +1 -0
- package/dist/packlets/types/filenameSafety.js +52 -0
- package/dist/packlets/types/filenameSafety.js.map +1 -0
- package/dist/packlets/types/identityCodec.js +184 -0
- package/dist/packlets/types/identityCodec.js.map +1 -0
- package/dist/packlets/types/ids.js +67 -0
- package/dist/packlets/types/ids.js.map +1 -0
- package/dist/packlets/types/index.js +10 -0
- package/dist/packlets/types/index.js.map +1 -0
- package/dist/packlets/types/writePolicy.js +263 -0
- package/dist/packlets/types/writePolicy.js.map +1 -0
- package/dist/packlets/vector/inMemoryCosineIndex.js +150 -0
- package/dist/packlets/vector/inMemoryCosineIndex.js.map +1 -0
- package/dist/packlets/vector/index.js +7 -0
- package/dist/packlets/vector/index.js.map +1 -0
- package/dist/packlets/vector/vectorIndex.js +6 -0
- package/dist/packlets/vector/vectorIndex.js.map +1 -0
- package/dist/test/unit/converters/bodyConverterRegistry.test.js +72 -0
- package/dist/test/unit/converters/bodyConverterRegistry.test.js.map +1 -0
- package/dist/test/unit/converters/envelopeConverter.test.js +196 -0
- package/dist/test/unit/converters/envelopeConverter.test.js.map +1 -0
- package/dist/test/unit/index/memoryIndex.test.js +152 -0
- package/dist/test/unit/index/memoryIndex.test.js.map +1 -0
- package/dist/test/unit/observe/memoryObservationStore.test.js +118 -0
- package/dist/test/unit/observe/memoryObservationStore.test.js.map +1 -0
- package/dist/test/unit/retrieve/linkTraversalRetriever.test.js +182 -0
- package/dist/test/unit/retrieve/linkTraversalRetriever.test.js.map +1 -0
- package/dist/test/unit/retrieve/retrievers.test.js +506 -0
- package/dist/test/unit/retrieve/retrievers.test.js.map +1 -0
- package/dist/test/unit/store/embedOnWrite.test.js +260 -0
- package/dist/test/unit/store/embedOnWrite.test.js.map +1 -0
- package/dist/test/unit/store/fileTreeMemoryStore.test.js +647 -0
- package/dist/test/unit/store/fileTreeMemoryStore.test.js.map +1 -0
- package/dist/test/unit/store/observations.test.js +239 -0
- package/dist/test/unit/store/observations.test.js.map +1 -0
- package/dist/test/unit/store/scopeEncoding.test.js +24 -0
- package/dist/test/unit/store/scopeEncoding.test.js.map +1 -0
- package/dist/test/unit/types/identityCodec.test.js +187 -0
- package/dist/test/unit/types/identityCodec.test.js.map +1 -0
- package/dist/test/unit/types/ids.test.js +84 -0
- package/dist/test/unit/types/ids.test.js.map +1 -0
- package/dist/test/unit/types/writePolicy.test.js +241 -0
- package/dist/test/unit/types/writePolicy.test.js.map +1 -0
- package/dist/test/unit/vector/inMemoryCosineIndex.test.js +192 -0
- package/dist/test/unit/vector/inMemoryCosineIndex.test.js.map +1 -0
- package/dist/test/unit/vector/vectorIndex.test.js +42 -0
- package/dist/test/unit/vector/vectorIndex.test.js.map +1 -0
- package/dist/ts-agent-memory.d.ts +1901 -0
- package/dist/tsdoc-metadata.json +11 -0
- package/eslint.config.js +15 -0
- package/etc/ts-agent-memory.api.md +525 -0
- package/lib/index.d.ts +8 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +28 -0
- package/lib/index.js.map +1 -0
- package/lib/packlets/converters/bodyConverterRegistry.d.ts +64 -0
- package/lib/packlets/converters/bodyConverterRegistry.d.ts.map +1 -0
- package/lib/packlets/converters/bodyConverterRegistry.js +55 -0
- package/lib/packlets/converters/bodyConverterRegistry.js.map +1 -0
- package/lib/packlets/converters/envelopeConverter.d.ts +70 -0
- package/lib/packlets/converters/envelopeConverter.d.ts.map +1 -0
- package/lib/packlets/converters/envelopeConverter.js +166 -0
- package/lib/packlets/converters/envelopeConverter.js.map +1 -0
- package/lib/packlets/converters/index.d.ts +3 -0
- package/lib/packlets/converters/index.d.ts.map +1 -0
- package/lib/packlets/converters/index.js +23 -0
- package/lib/packlets/converters/index.js.map +1 -0
- package/lib/packlets/index/index.d.ts +2 -0
- package/lib/packlets/index/index.d.ts.map +1 -0
- package/lib/packlets/index/index.js +22 -0
- package/lib/packlets/index/index.js.map +1 -0
- package/lib/packlets/index/memoryIndex.d.ts +127 -0
- package/lib/packlets/index/memoryIndex.d.ts.map +1 -0
- package/lib/packlets/index/memoryIndex.js +174 -0
- package/lib/packlets/index/memoryIndex.js.map +1 -0
- package/lib/packlets/observe/index.d.ts +3 -0
- package/lib/packlets/observe/index.d.ts.map +1 -0
- package/lib/packlets/observe/index.js +23 -0
- package/lib/packlets/observe/index.js.map +1 -0
- package/lib/packlets/observe/memoryObservationStore.d.ts +91 -0
- package/lib/packlets/observe/memoryObservationStore.d.ts.map +1 -0
- package/lib/packlets/observe/memoryObservationStore.js +123 -0
- package/lib/packlets/observe/memoryObservationStore.js.map +1 -0
- package/lib/packlets/observe/observer.d.ts +110 -0
- package/lib/packlets/observe/observer.d.ts.map +1 -0
- package/lib/packlets/observe/observer.js +7 -0
- package/lib/packlets/observe/observer.js.map +1 -0
- package/lib/packlets/retrieve/hybridRetriever.d.ts +79 -0
- package/lib/packlets/retrieve/hybridRetriever.d.ts.map +1 -0
- package/lib/packlets/retrieve/hybridRetriever.js +140 -0
- package/lib/packlets/retrieve/hybridRetriever.js.map +1 -0
- package/lib/packlets/retrieve/index.d.ts +8 -0
- package/lib/packlets/retrieve/index.d.ts.map +1 -0
- package/lib/packlets/retrieve/index.js +28 -0
- package/lib/packlets/retrieve/index.js.map +1 -0
- package/lib/packlets/retrieve/linkTraversalRetriever.d.ts +61 -0
- package/lib/packlets/retrieve/linkTraversalRetriever.d.ts.map +1 -0
- package/lib/packlets/retrieve/linkTraversalRetriever.js +147 -0
- package/lib/packlets/retrieve/linkTraversalRetriever.js.map +1 -0
- package/lib/packlets/retrieve/recencyRetriever.d.ts +21 -0
- package/lib/packlets/retrieve/recencyRetriever.d.ts.map +1 -0
- package/lib/packlets/retrieve/recencyRetriever.js +37 -0
- package/lib/packlets/retrieve/recencyRetriever.js.map +1 -0
- package/lib/packlets/retrieve/retriever.d.ts +133 -0
- package/lib/packlets/retrieve/retriever.d.ts.map +1 -0
- package/lib/packlets/retrieve/retriever.js +119 -0
- package/lib/packlets/retrieve/retriever.js.map +1 -0
- package/lib/packlets/retrieve/semanticRetriever.d.ts +69 -0
- package/lib/packlets/retrieve/semanticRetriever.d.ts.map +1 -0
- package/lib/packlets/retrieve/semanticRetriever.js +90 -0
- package/lib/packlets/retrieve/semanticRetriever.js.map +1 -0
- package/lib/packlets/retrieve/structuredFilterRetriever.d.ts +22 -0
- package/lib/packlets/retrieve/structuredFilterRetriever.d.ts.map +1 -0
- package/lib/packlets/retrieve/structuredFilterRetriever.js +41 -0
- package/lib/packlets/retrieve/structuredFilterRetriever.js.map +1 -0
- package/lib/packlets/retrieve/tagRetriever.d.ts +22 -0
- package/lib/packlets/retrieve/tagRetriever.d.ts.map +1 -0
- package/lib/packlets/retrieve/tagRetriever.js +41 -0
- package/lib/packlets/retrieve/tagRetriever.js.map +1 -0
- package/lib/packlets/store/fileTreeMemoryStore.d.ts +327 -0
- package/lib/packlets/store/fileTreeMemoryStore.d.ts.map +1 -0
- package/lib/packlets/store/fileTreeMemoryStore.js +702 -0
- package/lib/packlets/store/fileTreeMemoryStore.js.map +1 -0
- package/lib/packlets/store/index.d.ts +3 -0
- package/lib/packlets/store/index.d.ts.map +1 -0
- package/lib/packlets/store/index.js +23 -0
- package/lib/packlets/store/index.js.map +1 -0
- package/lib/packlets/store/scopeEncoding.d.ts +19 -0
- package/lib/packlets/store/scopeEncoding.d.ts.map +1 -0
- package/lib/packlets/store/scopeEncoding.js +34 -0
- package/lib/packlets/store/scopeEncoding.js.map +1 -0
- package/lib/packlets/types/envelope.d.ts +119 -0
- package/lib/packlets/types/envelope.d.ts.map +1 -0
- package/lib/packlets/types/envelope.js +7 -0
- package/lib/packlets/types/envelope.js.map +1 -0
- package/lib/packlets/types/filenameSafety.d.ts +16 -0
- package/lib/packlets/types/filenameSafety.d.ts.map +1 -0
- package/lib/packlets/types/filenameSafety.js +55 -0
- package/lib/packlets/types/filenameSafety.js.map +1 -0
- package/lib/packlets/types/identityCodec.d.ts +136 -0
- package/lib/packlets/types/identityCodec.d.ts.map +1 -0
- package/lib/packlets/types/identityCodec.js +190 -0
- package/lib/packlets/types/identityCodec.js.map +1 -0
- package/lib/packlets/types/ids.d.ts +55 -0
- package/lib/packlets/types/ids.d.ts.map +1 -0
- package/lib/packlets/types/ids.js +70 -0
- package/lib/packlets/types/ids.js.map +1 -0
- package/lib/packlets/types/index.d.ts +6 -0
- package/lib/packlets/types/index.d.ts.map +1 -0
- package/lib/packlets/types/index.js +26 -0
- package/lib/packlets/types/index.js.map +1 -0
- package/lib/packlets/types/writePolicy.d.ts +213 -0
- package/lib/packlets/types/writePolicy.d.ts.map +1 -0
- package/lib/packlets/types/writePolicy.js +268 -0
- package/lib/packlets/types/writePolicy.js.map +1 -0
- package/lib/packlets/vector/inMemoryCosineIndex.d.ts +69 -0
- package/lib/packlets/vector/inMemoryCosineIndex.d.ts.map +1 -0
- package/lib/packlets/vector/inMemoryCosineIndex.js +154 -0
- package/lib/packlets/vector/inMemoryCosineIndex.js.map +1 -0
- package/lib/packlets/vector/index.d.ts +3 -0
- package/lib/packlets/vector/index.d.ts.map +1 -0
- package/lib/packlets/vector/index.js +23 -0
- package/lib/packlets/vector/index.js.map +1 -0
- package/lib/packlets/vector/vectorIndex.d.ts +68 -0
- package/lib/packlets/vector/vectorIndex.d.ts.map +1 -0
- package/lib/packlets/vector/vectorIndex.js +7 -0
- package/lib/packlets/vector/vectorIndex.js.map +1 -0
- package/lib/test/unit/converters/bodyConverterRegistry.test.d.ts +2 -0
- package/lib/test/unit/converters/bodyConverterRegistry.test.d.ts.map +1 -0
- package/lib/test/unit/converters/bodyConverterRegistry.test.js +74 -0
- package/lib/test/unit/converters/bodyConverterRegistry.test.js.map +1 -0
- package/lib/test/unit/converters/envelopeConverter.test.d.ts +2 -0
- package/lib/test/unit/converters/envelopeConverter.test.d.ts.map +1 -0
- package/lib/test/unit/converters/envelopeConverter.test.js +198 -0
- package/lib/test/unit/converters/envelopeConverter.test.js.map +1 -0
- package/lib/test/unit/index/memoryIndex.test.d.ts +2 -0
- package/lib/test/unit/index/memoryIndex.test.d.ts.map +1 -0
- package/lib/test/unit/index/memoryIndex.test.js +154 -0
- package/lib/test/unit/index/memoryIndex.test.js.map +1 -0
- package/lib/test/unit/observe/memoryObservationStore.test.d.ts +2 -0
- package/lib/test/unit/observe/memoryObservationStore.test.d.ts.map +1 -0
- package/lib/test/unit/observe/memoryObservationStore.test.js +120 -0
- package/lib/test/unit/observe/memoryObservationStore.test.js.map +1 -0
- package/lib/test/unit/retrieve/linkTraversalRetriever.test.d.ts +2 -0
- package/lib/test/unit/retrieve/linkTraversalRetriever.test.d.ts.map +1 -0
- package/lib/test/unit/retrieve/linkTraversalRetriever.test.js +184 -0
- package/lib/test/unit/retrieve/linkTraversalRetriever.test.js.map +1 -0
- package/lib/test/unit/retrieve/retrievers.test.d.ts +2 -0
- package/lib/test/unit/retrieve/retrievers.test.d.ts.map +1 -0
- package/lib/test/unit/retrieve/retrievers.test.js +508 -0
- package/lib/test/unit/retrieve/retrievers.test.js.map +1 -0
- package/lib/test/unit/store/embedOnWrite.test.d.ts +2 -0
- package/lib/test/unit/store/embedOnWrite.test.d.ts.map +1 -0
- package/lib/test/unit/store/embedOnWrite.test.js +262 -0
- package/lib/test/unit/store/embedOnWrite.test.js.map +1 -0
- package/lib/test/unit/store/fileTreeMemoryStore.test.d.ts +2 -0
- package/lib/test/unit/store/fileTreeMemoryStore.test.d.ts.map +1 -0
- package/lib/test/unit/store/fileTreeMemoryStore.test.js +649 -0
- package/lib/test/unit/store/fileTreeMemoryStore.test.js.map +1 -0
- package/lib/test/unit/store/observations.test.d.ts +2 -0
- package/lib/test/unit/store/observations.test.d.ts.map +1 -0
- package/lib/test/unit/store/observations.test.js +241 -0
- package/lib/test/unit/store/observations.test.js.map +1 -0
- package/lib/test/unit/store/scopeEncoding.test.d.ts +2 -0
- package/lib/test/unit/store/scopeEncoding.test.d.ts.map +1 -0
- package/lib/test/unit/store/scopeEncoding.test.js +26 -0
- package/lib/test/unit/store/scopeEncoding.test.js.map +1 -0
- package/lib/test/unit/types/identityCodec.test.d.ts +2 -0
- package/lib/test/unit/types/identityCodec.test.d.ts.map +1 -0
- package/lib/test/unit/types/identityCodec.test.js +189 -0
- package/lib/test/unit/types/identityCodec.test.js.map +1 -0
- package/lib/test/unit/types/ids.test.d.ts +2 -0
- package/lib/test/unit/types/ids.test.d.ts.map +1 -0
- package/lib/test/unit/types/ids.test.js +86 -0
- package/lib/test/unit/types/ids.test.js.map +1 -0
- package/lib/test/unit/types/writePolicy.test.d.ts +2 -0
- package/lib/test/unit/types/writePolicy.test.d.ts.map +1 -0
- package/lib/test/unit/types/writePolicy.test.js +243 -0
- package/lib/test/unit/types/writePolicy.test.js.map +1 -0
- package/lib/test/unit/vector/inMemoryCosineIndex.test.d.ts +2 -0
- package/lib/test/unit/vector/inMemoryCosineIndex.test.d.ts.map +1 -0
- package/lib/test/unit/vector/inMemoryCosineIndex.test.js +194 -0
- package/lib/test/unit/vector/inMemoryCosineIndex.test.js.map +1 -0
- package/lib/test/unit/vector/vectorIndex.test.d.ts +2 -0
- package/lib/test/unit/vector/vectorIndex.test.d.ts.map +1 -0
- package/lib/test/unit/vector/vectorIndex.test.js +44 -0
- package/lib/test/unit/vector/vectorIndex.test.js.map +1 -0
- package/package.json +81 -0
- package/rush-logs/ts-agent-memory.build.cache.log +3 -0
- package/rush-logs/ts-agent-memory.build.log +9 -0
- package/src/index.ts +12 -0
- package/src/packlets/converters/bodyConverterRegistry.ts +105 -0
- package/src/packlets/converters/envelopeConverter.ts +210 -0
- package/src/packlets/converters/index.ts +7 -0
- package/src/packlets/index/index.ts +6 -0
- package/src/packlets/index/memoryIndex.ts +268 -0
- package/src/packlets/observe/index.ts +7 -0
- package/src/packlets/observe/memoryObservationStore.ts +153 -0
- package/src/packlets/observe/observer.ts +119 -0
- package/src/packlets/retrieve/hybridRetriever.ts +181 -0
- package/src/packlets/retrieve/index.ts +12 -0
- package/src/packlets/retrieve/linkTraversalRetriever.ts +169 -0
- package/src/packlets/retrieve/recencyRetriever.ts +54 -0
- package/src/packlets/retrieve/retriever.ts +207 -0
- package/src/packlets/retrieve/semanticRetriever.ts +147 -0
- package/src/packlets/retrieve/structuredFilterRetriever.ts +58 -0
- package/src/packlets/retrieve/tagRetriever.ts +58 -0
- package/src/packlets/store/fileTreeMemoryStore.ts +1073 -0
- package/src/packlets/store/index.ts +7 -0
- package/src/packlets/store/scopeEncoding.ts +36 -0
- package/src/packlets/types/envelope.ts +138 -0
- package/src/packlets/types/filenameSafety.ts +57 -0
- package/src/packlets/types/identityCodec.ts +263 -0
- package/src/packlets/types/ids.ts +124 -0
- package/src/packlets/types/index.ts +10 -0
- package/src/packlets/types/writePolicy.ts +447 -0
- package/src/packlets/vector/inMemoryCosineIndex.ts +173 -0
- package/src/packlets/vector/index.ts +7 -0
- package/src/packlets/vector/vectorIndex.ts +78 -0
- package/src/test/unit/converters/bodyConverterRegistry.test.ts +89 -0
- package/src/test/unit/converters/envelopeConverter.test.ts +261 -0
- package/src/test/unit/index/memoryIndex.test.ts +187 -0
- package/src/test/unit/observe/memoryObservationStore.test.ts +158 -0
- package/src/test/unit/retrieve/linkTraversalRetriever.test.ts +230 -0
- package/src/test/unit/retrieve/retrievers.test.ts +662 -0
- package/src/test/unit/store/embedOnWrite.test.ts +346 -0
- package/src/test/unit/store/fileTreeMemoryStore.test.ts +875 -0
- package/src/test/unit/store/observations.test.ts +290 -0
- package/src/test/unit/store/scopeEncoding.test.ts +37 -0
- package/src/test/unit/types/identityCodec.test.ts +266 -0
- package/src/test/unit/types/ids.test.ts +94 -0
- package/src/test/unit/types/writePolicy.test.ts +325 -0
- package/src/test/unit/vector/inMemoryCosineIndex.test.ts +242 -0
- package/src/test/unit/vector/vectorIndex.test.ts +48 -0
- package/temp/build/lint/_eslint-5eVG3S6w.json +182 -0
- package/temp/build/typescript/ts_8nwakTlr.json +1 -0
- package/temp/ts-agent-memory.api.json +12438 -0
- package/temp/ts-agent-memory.api.md +525 -0
- package/tsconfig.json +8 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// This file is read by tools that parse documentation comments conforming to the TSDoc standard.
|
|
2
|
+
// It should be published with your NPM package. It should not be tracked by Git.
|
|
3
|
+
{
|
|
4
|
+
"tsdocVersion": "0.12",
|
|
5
|
+
"toolPackages": [
|
|
6
|
+
{
|
|
7
|
+
"packageName": "@microsoft/api-extractor",
|
|
8
|
+
"packageVersion": "7.58.7"
|
|
9
|
+
}
|
|
10
|
+
]
|
|
11
|
+
}
|
package/eslint.config.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// ESLint 9 flat config
|
|
2
|
+
const nodeProfile = require('@rushstack/eslint-config/flat/profile/node');
|
|
3
|
+
const packletsPlugin = require('@rushstack/eslint-config/flat/mixins/packlets');
|
|
4
|
+
const tsdocPlugin = require('@rushstack/eslint-config/flat/mixins/tsdoc');
|
|
5
|
+
|
|
6
|
+
module.exports = [
|
|
7
|
+
...nodeProfile,
|
|
8
|
+
packletsPlugin,
|
|
9
|
+
...tsdocPlugin,
|
|
10
|
+
{
|
|
11
|
+
rules: {
|
|
12
|
+
'@rushstack/packlets/mechanics': 'warn'
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
];
|
|
@@ -0,0 +1,525 @@
|
|
|
1
|
+
## API Report File for "@fgv/ts-agent-memory"
|
|
2
|
+
|
|
3
|
+
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
|
|
7
|
+
import { Brand } from '@fgv/ts-utils';
|
|
8
|
+
import { Converter } from '@fgv/ts-utils';
|
|
9
|
+
import { FileTree } from '@fgv/ts-json-base';
|
|
10
|
+
import { JsonSchema } from '@fgv/ts-json-base';
|
|
11
|
+
import { Logging } from '@fgv/ts-utils';
|
|
12
|
+
import { Result } from '@fgv/ts-utils';
|
|
13
|
+
|
|
14
|
+
// @public
|
|
15
|
+
export type AdmissionDecision = {
|
|
16
|
+
readonly decision: 'accept';
|
|
17
|
+
} | {
|
|
18
|
+
readonly decision: 'reject';
|
|
19
|
+
readonly reason: string;
|
|
20
|
+
} | {
|
|
21
|
+
readonly decision: 'cull-oldest';
|
|
22
|
+
readonly evict: ReadonlyArray<MemoryId>;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
// @public
|
|
26
|
+
export function assertPortableFilenameStem(stem: string): Result<string>;
|
|
27
|
+
|
|
28
|
+
// @public
|
|
29
|
+
export class BodyConverterRegistry implements IBodyConverterRegistry {
|
|
30
|
+
convert(kind: Kind, body: unknown): Result<unknown>;
|
|
31
|
+
static create(): Result<BodyConverterRegistry>;
|
|
32
|
+
getConverter(kind: Kind): Result<Converter<unknown>>;
|
|
33
|
+
has(kind: Kind): boolean;
|
|
34
|
+
register<T>(kind: Kind, converter: Converter<T>): void;
|
|
35
|
+
registerSchema<T>(kind: Kind, schema: JsonSchema.ISchemaValidator<T>): void;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// @public
|
|
39
|
+
export const Convert: {
|
|
40
|
+
readonly memoryId: Converter<MemoryId>;
|
|
41
|
+
readonly entityId: Converter<EntityId>;
|
|
42
|
+
readonly kind: Converter<Kind>;
|
|
43
|
+
readonly tag: Converter<Tag>;
|
|
44
|
+
readonly scopeKey: Converter<MemoryScopeKey>;
|
|
45
|
+
readonly linkType: Converter<LinkType>;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
// @public
|
|
49
|
+
export type DedupScope = 'content' | 'entity';
|
|
50
|
+
|
|
51
|
+
// @public
|
|
52
|
+
export const DEFAULT_DEDUP_SCOPE: DedupScope;
|
|
53
|
+
|
|
54
|
+
// @public
|
|
55
|
+
export function defaultMemoryScopeEncoding(scope: MemoryScopeKey): Result<string>;
|
|
56
|
+
|
|
57
|
+
// @public
|
|
58
|
+
export const edgeConverter: Converter<IEdge>;
|
|
59
|
+
|
|
60
|
+
// @public
|
|
61
|
+
export type EntityId = Brand<string, 'EntityId'>;
|
|
62
|
+
|
|
63
|
+
// @public
|
|
64
|
+
export const envelopeConverter: Converter<IMemoryEnvelope>;
|
|
65
|
+
|
|
66
|
+
// @public
|
|
67
|
+
export const envelopeYamlConverter: Converter<IMemoryEnvelope>;
|
|
68
|
+
|
|
69
|
+
// @public
|
|
70
|
+
export class FileTreeMemoryStore implements IMemoryStore {
|
|
71
|
+
static create(params: IFileTreeMemoryStoreCreateParams): Result<FileTreeMemoryStore>;
|
|
72
|
+
delete(kind: Kind, entityId: EntityId): Promise<Result<MemoryId>>;
|
|
73
|
+
get(kind: Kind, entityId: EntityId): Promise<Result<IMemoryRecord<unknown> | undefined>>;
|
|
74
|
+
getById(scope: MemoryScopeKey, id: MemoryId): Promise<Result<IMemoryRecord<unknown> | undefined>>;
|
|
75
|
+
list(filter?: IMemoryStoreListFilter): Promise<Result<ReadonlyArray<IMemoryRecord<unknown>>>>;
|
|
76
|
+
put(record: IMemoryRecord<unknown>): Promise<Result<IMemoryRecord<unknown>>>;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// @public
|
|
80
|
+
export function guardRetrieverCapabilities(query: IMemoryQuery, capabilities: IMemoryRetrieverCapabilities): Result<true>;
|
|
81
|
+
|
|
82
|
+
// @public
|
|
83
|
+
export class HybridRetriever implements IMemoryRetriever {
|
|
84
|
+
get capabilities(): IMemoryRetrieverCapabilities;
|
|
85
|
+
static create(retrievers: ReadonlyArray<IMemoryRetriever>, mergeStrategy: IMergeStrategy): Result<HybridRetriever>;
|
|
86
|
+
retrieve(query: IMemoryQuery): Promise<Result<ReadonlyArray<IMemoryRecord<unknown>>>>;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// @public
|
|
90
|
+
export interface IBodyConverterRegistry {
|
|
91
|
+
convert(kind: Kind, body: unknown): Result<unknown>;
|
|
92
|
+
getConverter(kind: Kind): Result<Converter<unknown>>;
|
|
93
|
+
has(kind: Kind): boolean;
|
|
94
|
+
register<T>(kind: Kind, converter: Converter<T>): void;
|
|
95
|
+
registerSchema<T>(kind: Kind, schema: JsonSchema.ISchemaValidator<T>): void;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// @public
|
|
99
|
+
export interface IEdge {
|
|
100
|
+
readonly confidence?: number;
|
|
101
|
+
readonly invalid_at?: number | null;
|
|
102
|
+
readonly provenance?: IProvenance;
|
|
103
|
+
readonly target: MemoryId;
|
|
104
|
+
readonly type: LinkType;
|
|
105
|
+
readonly valid_at?: number;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
// @public
|
|
109
|
+
export interface IFileTreeMemoryStoreCreateParams {
|
|
110
|
+
readonly clock?: () => number;
|
|
111
|
+
readonly codecs?: ReadonlyMap<Kind, IIdentityCodec>;
|
|
112
|
+
readonly defaultCodec?: IIdentityCodec;
|
|
113
|
+
readonly embed?: MemoryEmbedder;
|
|
114
|
+
readonly logger?: Logging.ILogger;
|
|
115
|
+
readonly observers?: ReadonlyArray<IMemoryObserver>;
|
|
116
|
+
readonly registry: IBodyConverterRegistry;
|
|
117
|
+
readonly root: FileTree.IMutableFileTreeDirectoryItem;
|
|
118
|
+
readonly scopeEncoding?: (scope: MemoryScopeKey) => Result<string>;
|
|
119
|
+
readonly vectorIndex?: IVectorIndex;
|
|
120
|
+
readonly writePolicies?: ReadonlyMap<Kind, IWritePolicy>;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
// @public
|
|
124
|
+
export interface IIdentityCodec {
|
|
125
|
+
decode(scope: MemoryScopeKey, encodedStem: string): Result<EntityId>;
|
|
126
|
+
encode(entityId: EntityId): Result<IIdentityCodecResult>;
|
|
127
|
+
verifyRoundTrip(scope: MemoryScopeKey, stem: string): Result<true>;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
// @public
|
|
131
|
+
export interface IIdentityCodecResult {
|
|
132
|
+
readonly idStem: string;
|
|
133
|
+
readonly isVersioned: boolean;
|
|
134
|
+
readonly scope: MemoryScopeKey;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
// @public
|
|
138
|
+
export interface IIndexedMemoryRecord {
|
|
139
|
+
readonly record: IMemoryRecord<unknown>;
|
|
140
|
+
readonly scope: MemoryScopeKey;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
// @public
|
|
144
|
+
export interface IMemoryCapCullPolicyParams {
|
|
145
|
+
readonly maxRecords?: number;
|
|
146
|
+
readonly mutableFields: ReadonlyArray<string>;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
// @public
|
|
150
|
+
export interface IMemoryEnvelope {
|
|
151
|
+
readonly contentHash: string;
|
|
152
|
+
readonly created: number;
|
|
153
|
+
readonly embeddingRef?: string | null;
|
|
154
|
+
readonly entityId: EntityId;
|
|
155
|
+
readonly id: MemoryId;
|
|
156
|
+
readonly kind: Kind;
|
|
157
|
+
readonly links: ReadonlyArray<IEdge>;
|
|
158
|
+
readonly provenance: IProvenance;
|
|
159
|
+
readonly seq: number;
|
|
160
|
+
readonly tags: ReadonlyArray<Tag>;
|
|
161
|
+
readonly temporal?: ITemporalBlock;
|
|
162
|
+
readonly updated: number;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
// @public
|
|
166
|
+
export interface IMemoryFileParts {
|
|
167
|
+
readonly body: string;
|
|
168
|
+
readonly frontmatter: string;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
// @public
|
|
172
|
+
export interface IMemoryIndex {
|
|
173
|
+
backlinks(target: MemoryId): ReadonlyArray<MemoryId>;
|
|
174
|
+
byKind(kind: Kind): ReadonlyArray<IMemoryRecord<unknown>>;
|
|
175
|
+
byRecency(): ReadonlyArray<IMemoryRecord<unknown>>;
|
|
176
|
+
byTag(tag: Tag): ReadonlyArray<IMemoryRecord<unknown>>;
|
|
177
|
+
entries(): ReadonlyArray<IIndexedMemoryRecord>;
|
|
178
|
+
patch(op: MemoryIndexPatchOp, entry: IIndexedMemoryRecord): Result<IIndexedMemoryRecord>;
|
|
179
|
+
rebuild(entries: ReadonlyArray<IIndexedMemoryRecord>): Result<number>;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
// @public
|
|
183
|
+
export interface IMemoryObservationQuery {
|
|
184
|
+
readonly kind?: Kind;
|
|
185
|
+
readonly limit?: number;
|
|
186
|
+
readonly outcome?: MemoryObservationOutcome;
|
|
187
|
+
readonly phase?: MemoryObservationPhase;
|
|
188
|
+
readonly scope?: MemoryScopeKey;
|
|
189
|
+
readonly since?: number;
|
|
190
|
+
readonly sinceSeq?: number;
|
|
191
|
+
readonly until?: number;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
// @public
|
|
195
|
+
export interface IMemoryObservationRecord {
|
|
196
|
+
readonly error?: string;
|
|
197
|
+
readonly id?: MemoryId;
|
|
198
|
+
readonly kind?: Kind;
|
|
199
|
+
readonly outcome: MemoryObservationOutcome;
|
|
200
|
+
readonly phase: MemoryObservationPhase;
|
|
201
|
+
readonly provenance?: IProvenance;
|
|
202
|
+
readonly querySnapshot?: Readonly<Record<string, unknown>>;
|
|
203
|
+
readonly scope?: MemoryScopeKey;
|
|
204
|
+
readonly seq: number;
|
|
205
|
+
readonly timestamp: number;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
// @public
|
|
209
|
+
export interface IMemoryObservationStoreCreateParams {
|
|
210
|
+
readonly maxRecords?: number;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
// @public
|
|
214
|
+
export interface IMemoryObserver {
|
|
215
|
+
readonly fireAndForget?: boolean;
|
|
216
|
+
observe(record: IMemoryObservationRecord): Promise<Result<unknown>>;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
// @public
|
|
220
|
+
export interface IMemoryQuery {
|
|
221
|
+
readonly asOf?: number;
|
|
222
|
+
readonly filter?: (record: IMemoryRecord<unknown>) => boolean;
|
|
223
|
+
readonly hops?: number;
|
|
224
|
+
readonly kind?: Kind;
|
|
225
|
+
readonly limit?: number;
|
|
226
|
+
readonly linkedFrom?: MemoryId;
|
|
227
|
+
readonly linkedTo?: MemoryId;
|
|
228
|
+
readonly scope?: MemoryScopeKey;
|
|
229
|
+
readonly semantic?: string;
|
|
230
|
+
readonly tag?: Tag;
|
|
231
|
+
readonly topK?: number;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
// @public
|
|
235
|
+
export interface IMemoryRecord<TBody = unknown> {
|
|
236
|
+
readonly body: TBody;
|
|
237
|
+
readonly envelope: IMemoryEnvelope;
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
// @public
|
|
241
|
+
export interface IMemoryRecordSource {
|
|
242
|
+
list(): Promise<Result<ReadonlyArray<IMemoryRecord<unknown>>>>;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
// @public
|
|
246
|
+
export interface IMemoryRetriever {
|
|
247
|
+
readonly capabilities: IMemoryRetrieverCapabilities;
|
|
248
|
+
retrieve(query: IMemoryQuery): Promise<Result<ReadonlyArray<IMemoryRecord<unknown>>>>;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
// @public
|
|
252
|
+
export interface IMemoryRetrieverCapabilities {
|
|
253
|
+
readonly supportsLinkTraversal: boolean;
|
|
254
|
+
readonly supportsSemanticRecall: boolean;
|
|
255
|
+
readonly supportsTemporalQuery: boolean;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
// @public
|
|
259
|
+
export interface IMemoryStore {
|
|
260
|
+
delete(kind: Kind, entityId: EntityId): Promise<Result<MemoryId>>;
|
|
261
|
+
get(kind: Kind, entityId: EntityId): Promise<Result<IMemoryRecord<unknown> | undefined>>;
|
|
262
|
+
getById(scope: MemoryScopeKey, id: MemoryId): Promise<Result<IMemoryRecord<unknown> | undefined>>;
|
|
263
|
+
list(filter?: IMemoryStoreListFilter): Promise<Result<ReadonlyArray<IMemoryRecord<unknown>>>>;
|
|
264
|
+
put(record: IMemoryRecord<unknown>): Promise<Result<IMemoryRecord<unknown>>>;
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
// @public
|
|
268
|
+
export interface IMemoryStoreListFilter {
|
|
269
|
+
readonly asOf?: number;
|
|
270
|
+
readonly kind?: Kind;
|
|
271
|
+
readonly scope?: MemoryScopeKey;
|
|
272
|
+
readonly tag?: Tag;
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
// @public
|
|
276
|
+
export interface IMergeStrategy {
|
|
277
|
+
merge(resultSets: ReadonlyArray<ReadonlyArray<IMemoryRecord<unknown>>>): Result<ReadonlyArray<IMemoryRecord<unknown>>>;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
// @public
|
|
281
|
+
export function indexedRecordMatchesQuery(entry: IIndexedMemoryRecord, query: IMemoryQuery): boolean;
|
|
282
|
+
|
|
283
|
+
// @public
|
|
284
|
+
export class InMemoryCosineIndex implements IVectorIndex {
|
|
285
|
+
add(id: MemoryId, vector: Float32Array): Promise<Result<string>>;
|
|
286
|
+
static create(): Result<InMemoryCosineIndex>;
|
|
287
|
+
query(vector: Float32Array, topK: number): Promise<Result<ReadonlyArray<IVectorQueryHit>>>;
|
|
288
|
+
rebuild(source: IMemoryRecordSource, embed: MemoryEmbedder): Promise<Result<number>>;
|
|
289
|
+
remove(id: MemoryId): Promise<Result<MemoryId>>;
|
|
290
|
+
get size(): number;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
// @public
|
|
294
|
+
export interface IProvenance {
|
|
295
|
+
readonly [key: string]: unknown;
|
|
296
|
+
readonly by?: string;
|
|
297
|
+
readonly confidence?: number;
|
|
298
|
+
readonly derivedFrom?: MemoryId;
|
|
299
|
+
readonly model?: string;
|
|
300
|
+
readonly source: ProvenanceSource;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
// @public
|
|
304
|
+
export interface ISemanticBackend {
|
|
305
|
+
readonly embedQuery: QueryEmbedder;
|
|
306
|
+
readonly vectorIndex: IVectorIndex;
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
// @public
|
|
310
|
+
export interface ISemanticRetrieverCreateParams {
|
|
311
|
+
readonly backend?: ISemanticBackend;
|
|
312
|
+
readonly index: IMemoryIndex;
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
// @public
|
|
316
|
+
export interface ITemporalBlock {
|
|
317
|
+
readonly invalid_at?: number | null;
|
|
318
|
+
readonly valid_at?: number;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
// @public
|
|
322
|
+
export interface IVectorIndex {
|
|
323
|
+
add(id: MemoryId, vector: Float32Array): Promise<Result<string>>;
|
|
324
|
+
query(vector: Float32Array, topK: number): Promise<Result<ReadonlyArray<IVectorQueryHit>>>;
|
|
325
|
+
remove(id: MemoryId): Promise<Result<MemoryId>>;
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
// @public
|
|
329
|
+
export interface IVectorQueryHit {
|
|
330
|
+
readonly id: MemoryId;
|
|
331
|
+
readonly score: number;
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
// @public
|
|
335
|
+
export interface IWritePolicy {
|
|
336
|
+
admit(incoming: IMemoryRecord<unknown>, existing: ReadonlyArray<IMemoryRecord<unknown>>): Result<AdmissionDecision>;
|
|
337
|
+
applyUpdate(existing: IMemoryRecord<unknown>, patch: Record<string, unknown>): Result<IMemoryRecord<unknown>>;
|
|
338
|
+
readonly dedupScope?: DedupScope;
|
|
339
|
+
readonly mutableFields: ReadonlyArray<string>;
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
// @public
|
|
343
|
+
export function joinFrontmatter(frontmatter: string, body: string): string;
|
|
344
|
+
|
|
345
|
+
// @public
|
|
346
|
+
export type Kind = Brand<string, 'Kind'>;
|
|
347
|
+
|
|
348
|
+
// @public
|
|
349
|
+
export class KnowledgeIdentityCodec implements IIdentityCodec {
|
|
350
|
+
decode(scope: MemoryScopeKey, encodedStem: string): Result<EntityId>;
|
|
351
|
+
encode(entityId: EntityId): Result<IIdentityCodecResult>;
|
|
352
|
+
static readonly scope: MemoryScopeKey;
|
|
353
|
+
verifyRoundTrip(scope: MemoryScopeKey, stem: string): Result<true>;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
// @public
|
|
357
|
+
export class KnowledgeLwwPolicy implements IWritePolicy {
|
|
358
|
+
admit(__incoming: IMemoryRecord<unknown>, __existing: ReadonlyArray<IMemoryRecord<unknown>>): Result<AdmissionDecision>;
|
|
359
|
+
applyUpdate(existing: IMemoryRecord<unknown>, patch: Record<string, unknown>): Result<IMemoryRecord<unknown>>;
|
|
360
|
+
static create(): Result<KnowledgeLwwPolicy>;
|
|
361
|
+
readonly dedupScope: DedupScope;
|
|
362
|
+
readonly mutableFields: ReadonlyArray<string>;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
// @public
|
|
366
|
+
export function limitRecords(records: ReadonlyArray<IMemoryRecord<unknown>>, limit?: number): ReadonlyArray<IMemoryRecord<unknown>>;
|
|
367
|
+
|
|
368
|
+
// @public
|
|
369
|
+
export const LINK_TRAVERSAL_NO_SEED_MESSAGE: string;
|
|
370
|
+
|
|
371
|
+
// @public
|
|
372
|
+
export const LINK_TRAVERSAL_UNWIRED_MESSAGE: string;
|
|
373
|
+
|
|
374
|
+
// @public
|
|
375
|
+
export class LinkTraversalRetriever implements IMemoryRetriever {
|
|
376
|
+
get capabilities(): IMemoryRetrieverCapabilities;
|
|
377
|
+
static create(index: IMemoryIndex): Result<LinkTraversalRetriever>;
|
|
378
|
+
retrieve(query: IMemoryQuery): Promise<Result<ReadonlyArray<IMemoryRecord<unknown>>>>;
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
// @public
|
|
382
|
+
export type LinkType = Brand<string, 'LinkType'>;
|
|
383
|
+
|
|
384
|
+
// @public
|
|
385
|
+
export class LtmIdentityCodec implements IIdentityCodec {
|
|
386
|
+
decode(scope: MemoryScopeKey, encodedStem: string): Result<EntityId>;
|
|
387
|
+
encode(entityId: EntityId): Result<IIdentityCodecResult>;
|
|
388
|
+
static readonly scope: MemoryScopeKey;
|
|
389
|
+
verifyRoundTrip(scope: MemoryScopeKey, stem: string): Result<true>;
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
// @public
|
|
393
|
+
export class MemoryCapCullPolicy implements IWritePolicy {
|
|
394
|
+
admit(__incoming: IMemoryRecord<unknown>, existing: ReadonlyArray<IMemoryRecord<unknown>>): Result<AdmissionDecision>;
|
|
395
|
+
applyUpdate(existing: IMemoryRecord<unknown>, patch: Record<string, unknown>): Result<IMemoryRecord<unknown>>;
|
|
396
|
+
static create(params: IMemoryCapCullPolicyParams): Result<MemoryCapCullPolicy>;
|
|
397
|
+
readonly dedupScope: DedupScope;
|
|
398
|
+
readonly mutableFields: ReadonlyArray<string>;
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
// @public
|
|
402
|
+
export type MemoryEmbedder = (record: IMemoryRecord<unknown>) => Promise<Result<Float32Array>>;
|
|
403
|
+
|
|
404
|
+
// @public
|
|
405
|
+
export type MemoryId = Brand<string, 'MemoryId'>;
|
|
406
|
+
|
|
407
|
+
// @public
|
|
408
|
+
export class MemoryIndex implements IMemoryIndex {
|
|
409
|
+
backlinks(target: MemoryId): ReadonlyArray<MemoryId>;
|
|
410
|
+
byKind(kind: Kind): ReadonlyArray<IMemoryRecord<unknown>>;
|
|
411
|
+
byRecency(): ReadonlyArray<IMemoryRecord<unknown>>;
|
|
412
|
+
byTag(tag: Tag): ReadonlyArray<IMemoryRecord<unknown>>;
|
|
413
|
+
static create(): Result<MemoryIndex>;
|
|
414
|
+
entries(): ReadonlyArray<IIndexedMemoryRecord>;
|
|
415
|
+
patch(op: MemoryIndexPatchOp, entry: IIndexedMemoryRecord): Result<IIndexedMemoryRecord>;
|
|
416
|
+
rebuild(entries: ReadonlyArray<IIndexedMemoryRecord>): Result<number>;
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
// @public
|
|
420
|
+
export type MemoryIndexPatchOp = 'put' | 'delete';
|
|
421
|
+
|
|
422
|
+
// @public
|
|
423
|
+
export type MemoryObservationOutcome = 'success' | 'failure';
|
|
424
|
+
|
|
425
|
+
// @public
|
|
426
|
+
export type MemoryObservationPhase = 'read' | 'write' | 'delete' | 'retrieve';
|
|
427
|
+
|
|
428
|
+
// @public
|
|
429
|
+
export class MemoryObservationStore implements IMemoryObserver {
|
|
430
|
+
clear(): void;
|
|
431
|
+
static create(params?: IMemoryObservationStoreCreateParams): Result<MemoryObservationStore>;
|
|
432
|
+
get lastSeq(): number;
|
|
433
|
+
observe(record: IMemoryObservationRecord): Promise<Result<unknown>>;
|
|
434
|
+
query(criteria?: IMemoryObservationQuery): ReadonlyArray<IMemoryObservationRecord>;
|
|
435
|
+
get size(): number;
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
// @public
|
|
439
|
+
export type MemoryScopeKey = Brand<string, 'MemoryScopeKey'>;
|
|
440
|
+
|
|
441
|
+
// @public
|
|
442
|
+
export class MtmIdentityCodec implements IIdentityCodec {
|
|
443
|
+
decode(scope: MemoryScopeKey, encodedStem: string): Result<EntityId>;
|
|
444
|
+
encode(entityId: EntityId): Result<IIdentityCodecResult>;
|
|
445
|
+
static readonly rootScopeSegment: string;
|
|
446
|
+
static readonly turnStemPrefix: string;
|
|
447
|
+
verifyRoundTrip(scope: MemoryScopeKey, stem: string): Result<true>;
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
// @public
|
|
451
|
+
export const NON_SEMANTIC_CAPABILITIES: IMemoryRetrieverCapabilities;
|
|
452
|
+
|
|
453
|
+
// @public
|
|
454
|
+
export function parseMemoryFile(raw: string, registry: IBodyConverterRegistry): Result<IMemoryRecord<unknown>>;
|
|
455
|
+
|
|
456
|
+
// @public
|
|
457
|
+
export const provenanceConverter: Converter<IProvenance>;
|
|
458
|
+
|
|
459
|
+
// @public
|
|
460
|
+
export type ProvenanceSource = 'agent' | 'host-ingest' | 'human' | (string & {});
|
|
461
|
+
|
|
462
|
+
// @public
|
|
463
|
+
export type QueryEmbedder = (text: string) => Promise<Result<Float32Array>>;
|
|
464
|
+
|
|
465
|
+
// @public
|
|
466
|
+
export function recencyCompare(a: IMemoryRecord<unknown>, b: IMemoryRecord<unknown>): number;
|
|
467
|
+
|
|
468
|
+
// @public
|
|
469
|
+
export class RecencyRetriever implements IMemoryRetriever {
|
|
470
|
+
get capabilities(): IMemoryRetrieverCapabilities;
|
|
471
|
+
static create(index: IMemoryIndex): Result<RecencyRetriever>;
|
|
472
|
+
retrieve(query: IMemoryQuery): Promise<Result<ReadonlyArray<IMemoryRecord<unknown>>>>;
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
// @public
|
|
476
|
+
export class ScoreUnionMergeStrategy implements IMergeStrategy {
|
|
477
|
+
static create(): Result<ScoreUnionMergeStrategy>;
|
|
478
|
+
merge(resultSets: ReadonlyArray<ReadonlyArray<IMemoryRecord<unknown>>>): Result<ReadonlyArray<IMemoryRecord<unknown>>>;
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
// @public
|
|
482
|
+
export function selectByQuery(entries: ReadonlyArray<IIndexedMemoryRecord>, query: IMemoryQuery): IMemoryRecord<unknown>[];
|
|
483
|
+
|
|
484
|
+
// @public
|
|
485
|
+
export const SEMANTIC_UNWIRED_MESSAGE: string;
|
|
486
|
+
|
|
487
|
+
// @public
|
|
488
|
+
export class SemanticRetriever implements IMemoryRetriever {
|
|
489
|
+
get capabilities(): IMemoryRetrieverCapabilities;
|
|
490
|
+
static create(params: ISemanticRetrieverCreateParams): Result<SemanticRetriever>;
|
|
491
|
+
retrieve(query: IMemoryQuery): Promise<Result<ReadonlyArray<IMemoryRecord<unknown>>>>;
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
// @public
|
|
495
|
+
export function serializeMemoryFile(envelope: IMemoryEnvelope, body: string): Result<string>;
|
|
496
|
+
|
|
497
|
+
// @public
|
|
498
|
+
export function splitFrontmatter(raw: string): Result<IMemoryFileParts>;
|
|
499
|
+
|
|
500
|
+
// @public
|
|
501
|
+
export class StructuredFilterRetriever implements IMemoryRetriever {
|
|
502
|
+
get capabilities(): IMemoryRetrieverCapabilities;
|
|
503
|
+
static create(index: IMemoryIndex): Result<StructuredFilterRetriever>;
|
|
504
|
+
retrieve(query: IMemoryQuery): Promise<Result<ReadonlyArray<IMemoryRecord<unknown>>>>;
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
// @public
|
|
508
|
+
export type Tag = Brand<string, 'Tag'>;
|
|
509
|
+
|
|
510
|
+
// @public
|
|
511
|
+
export class TagRetriever implements IMemoryRetriever {
|
|
512
|
+
get capabilities(): IMemoryRetrieverCapabilities;
|
|
513
|
+
static create(index: IMemoryIndex): Result<TagRetriever>;
|
|
514
|
+
retrieve(query: IMemoryQuery): Promise<Result<ReadonlyArray<IMemoryRecord<unknown>>>>;
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
// @public
|
|
518
|
+
export const temporalConverter: Converter<ITemporalBlock>;
|
|
519
|
+
|
|
520
|
+
// @public
|
|
521
|
+
export function temporalUnwiredMessage(kind?: Kind): string;
|
|
522
|
+
|
|
523
|
+
// (No @packageDocumentation comment for this package)
|
|
524
|
+
|
|
525
|
+
```
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from './packlets/types';
|
|
2
|
+
export * from './packlets/converters';
|
|
3
|
+
export * from './packlets/store';
|
|
4
|
+
export * from './packlets/index';
|
|
5
|
+
export * from './packlets/retrieve';
|
|
6
|
+
export * from './packlets/observe';
|
|
7
|
+
export * from './packlets/vector';
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC"}
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2026 Erik Fortune
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*/
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
18
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
__exportStar(require("./packlets/types"), exports);
|
|
22
|
+
__exportStar(require("./packlets/converters"), exports);
|
|
23
|
+
__exportStar(require("./packlets/store"), exports);
|
|
24
|
+
__exportStar(require("./packlets/index"), exports);
|
|
25
|
+
__exportStar(require("./packlets/retrieve"), exports);
|
|
26
|
+
__exportStar(require("./packlets/observe"), exports);
|
|
27
|
+
__exportStar(require("./packlets/vector"), exports);
|
|
28
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;AAEH,mDAAiC;AACjC,wDAAsC;AACtC,mDAAiC;AACjC,mDAAiC;AACjC,sDAAoC;AACpC,qDAAmC;AACnC,oDAAkC","sourcesContent":["/*\n * Copyright (c) 2026 Erik Fortune\n * SPDX-License-Identifier: MIT\n */\n\nexport * from './packlets/types';\nexport * from './packlets/converters';\nexport * from './packlets/store';\nexport * from './packlets/index';\nexport * from './packlets/retrieve';\nexport * from './packlets/observe';\nexport * from './packlets/vector';\n"]}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { Converter, Result } from '@fgv/ts-utils';
|
|
2
|
+
import { JsonSchema } from '@fgv/ts-json-base';
|
|
3
|
+
import { Kind } from '../types';
|
|
4
|
+
/**
|
|
5
|
+
* Registry of per-kind body Converters. Each memory {@link Kind} registers the
|
|
6
|
+
* validated shape of its body; the store dispatches an `unknown` body through
|
|
7
|
+
* the registered Converter on every write. Type-safe — no `any`.
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
export interface IBodyConverterRegistry {
|
|
11
|
+
/**
|
|
12
|
+
* Register a Converter for a kind. Replaces any prior registration for the
|
|
13
|
+
* same kind.
|
|
14
|
+
*/
|
|
15
|
+
register<T>(kind: Kind, converter: Converter<T>): void;
|
|
16
|
+
/**
|
|
17
|
+
* Register a `JsonSchema` validator (from `@fgv/ts-json-base`) for a kind —
|
|
18
|
+
* the schema IS a Validator. Replaces any prior registration for the same
|
|
19
|
+
* kind.
|
|
20
|
+
*/
|
|
21
|
+
registerSchema<T>(kind: Kind, schema: JsonSchema.ISchemaValidator<T>): void;
|
|
22
|
+
/** Returns `true` if a converter is registered for the kind. */
|
|
23
|
+
has(kind: Kind): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Get the raw converter registered for a kind. Fails if the kind is
|
|
26
|
+
* unregistered. Exposed for implementors that need to re-validate a patched
|
|
27
|
+
* body (e.g. a temporal-versioned policy's `applyUpdate`).
|
|
28
|
+
*/
|
|
29
|
+
getConverter(kind: Kind): Result<Converter<unknown>>;
|
|
30
|
+
/**
|
|
31
|
+
* Convert an `unknown` body value for the given kind. Fails with
|
|
32
|
+
* `no converter registered for kind '<k>'` when unregistered.
|
|
33
|
+
*/
|
|
34
|
+
convert(kind: Kind, body: unknown): Result<unknown>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Default in-memory {@link IBodyConverterRegistry}.
|
|
38
|
+
*
|
|
39
|
+
* @remarks
|
|
40
|
+
* Both `register` and `registerSchema` adapt the supplied converter/validator
|
|
41
|
+
* into a `Converter<unknown>` via `Converters.generic`, so the heterogeneous
|
|
42
|
+
* per-kind types are stored uniformly with no cast and no `any`. A
|
|
43
|
+
* `Converter<T>` is not structurally a `Converter<unknown>` (the `map` callback
|
|
44
|
+
* makes the type invariant), so the `generic` wrapper — whose callback returns
|
|
45
|
+
* `Result<T>` (assignable to `Result<unknown>`) — is the type-safe bridge.
|
|
46
|
+
* @public
|
|
47
|
+
*/
|
|
48
|
+
export declare class BodyConverterRegistry implements IBodyConverterRegistry {
|
|
49
|
+
private readonly _converters;
|
|
50
|
+
private constructor();
|
|
51
|
+
/** Family-convention factory. */
|
|
52
|
+
static create(): Result<BodyConverterRegistry>;
|
|
53
|
+
/** {@inheritDoc IBodyConverterRegistry.register} */
|
|
54
|
+
register<T>(kind: Kind, converter: Converter<T>): void;
|
|
55
|
+
/** {@inheritDoc IBodyConverterRegistry.registerSchema} */
|
|
56
|
+
registerSchema<T>(kind: Kind, schema: JsonSchema.ISchemaValidator<T>): void;
|
|
57
|
+
/** {@inheritDoc IBodyConverterRegistry.has} */
|
|
58
|
+
has(kind: Kind): boolean;
|
|
59
|
+
/** {@inheritDoc IBodyConverterRegistry.getConverter} */
|
|
60
|
+
getConverter(kind: Kind): Result<Converter<unknown>>;
|
|
61
|
+
/** {@inheritDoc IBodyConverterRegistry.convert} */
|
|
62
|
+
convert(kind: Kind, body: unknown): Result<unknown>;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=bodyConverterRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bodyConverterRegistry.d.ts","sourceRoot":"","sources":["../../../src/packlets/converters/bodyConverterRegistry.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAc,MAAM,EAAiB,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAEvD;;;;OAIG;IACH,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAE5E,gEAAgE;IAChE,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;IAEzB;;;;OAIG;IACH,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAErD;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;CACrD;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,qBAAsB,YAAW,sBAAsB;IAClE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgC;IAE5D,OAAO;IAIP,iCAAiC;WACnB,MAAM,IAAI,MAAM,CAAC,qBAAqB,CAAC;IAIrD,oDAAoD;IAC7C,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI;IAO7D,0DAA0D;IACnD,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,IAAI;IAOlF,+CAA+C;IACxC,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAI/B,wDAAwD;IACjD,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAQ3D,mDAAmD;IAC5C,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;CAG3D"}
|