@jungjaehoon/mama-core 1.4.2 → 1.5.0

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.
Files changed (118) hide show
  1. package/db/migrations/026-create-canonical-entity-tables.sql +99 -0
  2. package/db/migrations/027-create-entity-review-support.sql +44 -0
  3. package/db/migrations/028-create-entity-audit-tables.sql +45 -0
  4. package/db/migrations/029-extend-entity-observations-observation-type.sql +60 -0
  5. package/db/migrations/030-case-first-memory-substrate.sql +901 -0
  6. package/db/migrations/031-wiki-page-index-provenance-columns.sql +2 -0
  7. package/dist/canonicalize.d.ts +38 -0
  8. package/dist/canonicalize.js +106 -0
  9. package/dist/cases/case-links.d.ts +116 -0
  10. package/dist/cases/case-links.js +794 -0
  11. package/dist/cases/composition-overrides.d.ts +90 -0
  12. package/dist/cases/composition-overrides.js +724 -0
  13. package/dist/cases/corrections.d.ts +156 -0
  14. package/dist/cases/corrections.js +1045 -0
  15. package/dist/cases/freshness.d.ts +57 -0
  16. package/dist/cases/freshness.js +283 -0
  17. package/dist/cases/live-state.d.ts +48 -0
  18. package/dist/cases/live-state.js +256 -0
  19. package/dist/cases/membership-explain.d.ts +56 -0
  20. package/dist/cases/membership-explain.js +140 -0
  21. package/dist/cases/membership-matcher.d.ts +23 -0
  22. package/dist/cases/membership-matcher.js +193 -0
  23. package/dist/cases/merge-split.d.ts +61 -0
  24. package/dist/cases/merge-split.js +368 -0
  25. package/dist/cases/role-inference.d.ts +10 -0
  26. package/dist/cases/role-inference.js +85 -0
  27. package/dist/cases/search-rollup.d.ts +23 -0
  28. package/dist/cases/search-rollup.js +225 -0
  29. package/dist/cases/sqlite-transaction.d.ts +10 -0
  30. package/dist/cases/sqlite-transaction.js +62 -0
  31. package/dist/cases/store.d.ts +74 -0
  32. package/dist/cases/store.js +816 -0
  33. package/dist/cases/target-ref.d.ts +25 -0
  34. package/dist/cases/target-ref.js +22 -0
  35. package/dist/cases/timeline-range.d.ts +6 -0
  36. package/dist/cases/timeline-range.js +322 -0
  37. package/dist/cases/tombstone-sweeper.d.ts +13 -0
  38. package/dist/cases/tombstone-sweeper.js +128 -0
  39. package/dist/cases/types.d.ts +244 -0
  40. package/dist/cases/types.js +47 -0
  41. package/dist/cases/wiki-page-index.d.ts +50 -0
  42. package/dist/cases/wiki-page-index.js +350 -0
  43. package/dist/connectors/event-index.d.ts +44 -0
  44. package/dist/connectors/event-index.js +366 -0
  45. package/dist/connectors/types.d.ts +69 -0
  46. package/dist/connectors/types.js +3 -0
  47. package/dist/db-manager.d.ts +4 -0
  48. package/dist/db-manager.js +10 -3
  49. package/dist/decision-formatter.d.ts +2 -0
  50. package/dist/decision-formatter.js +11 -8
  51. package/dist/embedding-server/mobile/daemon.d.ts +1 -0
  52. package/dist/embedding-server/mobile/daemon.js +11 -1
  53. package/dist/entities/audit-metrics.d.ts +73 -0
  54. package/dist/entities/audit-metrics.js +128 -0
  55. package/dist/entities/candidate-generator.d.ts +9 -0
  56. package/dist/entities/candidate-generator.js +436 -0
  57. package/dist/entities/entity-impact.d.ts +41 -0
  58. package/dist/entities/entity-impact.js +140 -0
  59. package/dist/entities/entity-linked-decision-counts.d.ts +2 -0
  60. package/dist/entities/entity-linked-decision-counts.js +29 -0
  61. package/dist/entities/entity-list.d.ts +23 -0
  62. package/dist/entities/entity-list.js +99 -0
  63. package/dist/entities/entity-orphan-list.d.ts +26 -0
  64. package/dist/entities/entity-orphan-list.js +91 -0
  65. package/dist/entities/entity-search.d.ts +21 -0
  66. package/dist/entities/entity-search.js +150 -0
  67. package/dist/entities/errors.d.ts +65 -0
  68. package/dist/entities/errors.js +124 -0
  69. package/dist/entities/exact-merge-backfill.d.ts +11 -0
  70. package/dist/entities/exact-merge-backfill.js +161 -0
  71. package/dist/entities/lineage-backfill.d.ts +12 -0
  72. package/dist/entities/lineage-backfill.js +101 -0
  73. package/dist/entities/lineage-store.d.ts +51 -0
  74. package/dist/entities/lineage-store.js +308 -0
  75. package/dist/entities/normalization.d.ts +14 -0
  76. package/dist/entities/normalization.js +63 -0
  77. package/dist/entities/policy-store.d.ts +17 -0
  78. package/dist/entities/policy-store.js +263 -0
  79. package/dist/entities/policy-types.d.ts +72 -0
  80. package/dist/entities/policy-types.js +59 -0
  81. package/dist/entities/projection.d.ts +8 -0
  82. package/dist/entities/projection.js +82 -0
  83. package/dist/entities/provenance-query.d.ts +33 -0
  84. package/dist/entities/provenance-query.js +167 -0
  85. package/dist/entities/read-identity.d.ts +31 -0
  86. package/dist/entities/read-identity.js +264 -0
  87. package/dist/entities/recall-bridge.d.ts +5 -0
  88. package/dist/entities/recall-bridge.js +171 -0
  89. package/dist/entities/resolution-engine.d.ts +15 -0
  90. package/dist/entities/resolution-engine.js +69 -0
  91. package/dist/entities/rollback-preview.d.ts +39 -0
  92. package/dist/entities/rollback-preview.js +235 -0
  93. package/dist/entities/source-locator.d.ts +3 -0
  94. package/dist/entities/source-locator.js +32 -0
  95. package/dist/entities/store.d.ts +75 -0
  96. package/dist/entities/store.js +465 -0
  97. package/dist/entities/types.d.ts +162 -0
  98. package/dist/entities/types.js +30 -0
  99. package/dist/index.d.ts +47 -2
  100. package/dist/index.js +66 -25
  101. package/dist/mama-api.d.ts +22 -1
  102. package/dist/mama-api.js +272 -64
  103. package/dist/memory/api.d.ts +28 -1
  104. package/dist/memory/api.js +293 -31
  105. package/dist/memory/types.d.ts +11 -2
  106. package/dist/search/feedback-store.d.ts +59 -0
  107. package/dist/search/feedback-store.js +211 -0
  108. package/dist/search/question-type.d.ts +5 -0
  109. package/dist/search/question-type.js +41 -0
  110. package/dist/search/ranker-features.d.ts +23 -0
  111. package/dist/search/ranker-features.js +104 -0
  112. package/dist/search/ranker-rescore.d.ts +31 -0
  113. package/dist/search/ranker-rescore.js +226 -0
  114. package/dist/search/ranker-trainer.d.ts +94 -0
  115. package/dist/search/ranker-trainer.js +860 -0
  116. package/dist/test-utils.d.ts +14 -0
  117. package/dist/test-utils.js +52 -0
  118. package/package.json +21 -3
package/dist/index.d.ts CHANGED
@@ -15,10 +15,31 @@ export { createAdapter, DatabaseAdapter, SQLiteAdapter, type AdapterConfig, type
15
15
  export { getSessionDecisions, incrementUsageSuccess, incrementUsageFailure, getDecisionById, traverseDecisionChain, DB_PATH, DB_DIR, LEGACY_DB_PATH, DEFAULT_DB_PATH, } from './memory-store.js';
16
16
  import mama from './mama-api.js';
17
17
  export { mama };
18
- export { MEMORY_SCOPE_KINDS, MEMORY_KINDS, MEMORY_STATUSES, MEMORY_EDGE_TYPES, createEmptyRecallBundle, type MemoryScopeKind, type MemoryKind, type MemoryStatus, type MemoryEdgeType, type MemoryScopeRef, type MemoryRecord, type MemoryEdge, type ProfileSnapshot, type RecallBundle, type ConversationMessage, type IngestConversationInput, type ExtractedMemoryUnit, type IngestConversationResult, } from './memory/types.js';
18
+ export { MEMORY_SCOPE_KINDS, MEMORY_KINDS, MEMORY_STATUSES, MEMORY_EDGE_TYPES, createEmptyRecallBundle, type MemoryScopeKind, type MemoryKind, type MemoryStatus, type MemoryEdgeType, type MemoryScopeRef, type MemoryRecord, type MemorySearchResultHit, type MemoryEdge, type ProfileSnapshot, type RecallBundle, type ConversationMessage, type IngestConversationInput, type ExtractedMemoryUnit, type IngestConversationResult, } from './memory/types.js';
19
19
  export { saveMemory, recallMemory, buildProfile, ingestMemory, evolveMemory, buildMemoryBootstrap, createAuditAck, recordMemoryAudit, ingestConversation, setExtractionFn, upsertChannelSummary, getChannelSummary, } from './memory/api.js';
20
20
  export { buildExtractionPrompt, parseExtractionResponse } from './memory/extraction-prompt.js';
21
- export { listRecentMemoryEvents } from './memory/event-store.js';
21
+ export { appendMemoryEvent, listRecentMemoryEvents } from './memory/event-store.js';
22
+ export * from './entities/types.js';
23
+ export * from './entities/errors.js';
24
+ export * from './entities/store.js';
25
+ export * from './entities/normalization.js';
26
+ export * from './entities/projection.js';
27
+ export * from './entities/recall-bridge.js';
28
+ export * from './entities/read-identity.js';
29
+ export * from './entities/audit-metrics.js';
30
+ export * from './entities/provenance-query.js';
31
+ export * from './entities/lineage-store.js';
32
+ export * from './entities/lineage-backfill.js';
33
+ export * from './entities/exact-merge-backfill.js';
34
+ export * from './entities/entity-search.js';
35
+ export * from './entities/entity-list.js';
36
+ export * from './entities/entity-orphan-list.js';
37
+ export * from './entities/entity-impact.js';
38
+ export * from './entities/rollback-preview.js';
39
+ export * from './entities/source-locator.js';
40
+ export * from './entities/policy-types.js';
41
+ export * from './entities/policy-store.js';
42
+ export { canonicalizeJSON, targetRefHash, CanonicalizeError, type CanonicalizeErrorCode, } from './canonicalize.js';
22
43
  export { loadConfig, getModelName, getEmbeddingDim, getCacheDir, updateConfig, getConfigPath, DEFAULT_CONFIG, type MAMAConfig, type ConfigUpdates, } from './config-loader.js';
23
44
  export { calculateRelevance, selectTopDecisions, formatTopNContext, testRelevanceScoring, type DecisionWithEmbedding, type QueryContext, type FormattedContext, type TestResult, } from './relevance-scorer.js';
24
45
  export { learnDecision, generateDecisionId, getPreviousDecision, createEdge, createSupersedesEdge, markSuperseded, calculateCombinedConfidence, detectRefinement, parseReasoningForRelationships, createEdgesFromReasoning, getSupersededChainDepth, updateConfidence, VALID_EDGE_TYPES, type EdgeType, type DecisionDetection, type ToolExecution, type SessionContext, type LearnDecisionResult, type ParsedRelationship, type EvidenceItem, } from './decision-tracker.js';
@@ -33,4 +54,28 @@ export { injectDecisionContext } from './memory-inject.js';
33
54
  export { analyzeIntent, extractTopicKeywords, type IntentResult, type AnalyzeOptions, } from './query-intent.js';
34
55
  export { generate, analyzeDecision, analyzeQueryIntent, isAvailable, listModels, DEFAULT_MODEL, FALLBACK_MODEL, type GenerateOptions, type DecisionAnalysisResult, type QueryIntentResult, } from './ollama-client.js';
35
56
  export { notifyInsight } from './notification-manager.js';
57
+ export * from './cases/types.js';
58
+ export * from './cases/store.js';
59
+ export * from './cases/role-inference.js';
60
+ export * from './cases/target-ref.js';
61
+ export * from './cases/corrections.js';
62
+ export * from './cases/sqlite-transaction.js';
63
+ export * from './cases/live-state.js';
64
+ export * from './cases/tombstone-sweeper.js';
65
+ export * from './cases/merge-split.js';
66
+ export * from './cases/membership-matcher.js';
67
+ export * from './cases/search-rollup.js';
68
+ export * from './cases/timeline-range.js';
69
+ export * from './cases/wiki-page-index.js';
70
+ export * from './cases/case-links.js';
71
+ export * from './cases/composition-overrides.js';
72
+ export * from './cases/freshness.js';
73
+ export * from './cases/membership-explain.js';
74
+ export * from './connectors/event-index.js';
75
+ export * from './connectors/types.js';
76
+ export * from './search/question-type.js';
77
+ export * from './search/feedback-store.js';
78
+ export * from './search/ranker-features.js';
79
+ export * from './search/ranker-trainer.js';
80
+ export * from './search/ranker-rescore.js';
36
81
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -8,15 +8,28 @@
8
8
  * @module mama-core
9
9
  * @version 1.0.0
10
10
  */
11
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
12
+ if (k2 === undefined) k2 = k;
13
+ var desc = Object.getOwnPropertyDescriptor(m, k);
14
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
15
+ desc = { enumerable: true, get: function() { return m[k]; } };
16
+ }
17
+ Object.defineProperty(o, k2, desc);
18
+ }) : (function(o, m, k, k2) {
19
+ if (k2 === undefined) k2 = k;
20
+ o[k2] = m[k];
21
+ }));
22
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
23
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
24
+ };
11
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
12
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
27
  };
14
28
  Object.defineProperty(exports, "__esModule", { value: true });
15
29
  exports.recallMemory = exports.saveMemory = exports.createEmptyRecallBundle = exports.MEMORY_EDGE_TYPES = exports.MEMORY_STATUSES = exports.MEMORY_KINDS = exports.MEMORY_SCOPE_KINDS = exports.mama = exports.DEFAULT_DB_PATH = exports.LEGACY_DB_PATH = exports.DB_DIR = exports.DB_PATH = exports.traverseDecisionChain = exports.getDecisionById = exports.incrementUsageFailure = exports.incrementUsageSuccess = exports.getSessionDecisions = exports.SQLiteAdapter = exports.DatabaseAdapter = exports.createAdapter = exports.reindexEmbeddings = exports.fts5Search = exports.getDbPath = exports.getPreparedStmt = exports.updateDecisionOutcome = exports.querySemanticEdges = exports.queryDecisionGraph = exports.insertDecisionWithEmbedding = exports.queryVectorSearch = exports.vectorSearch = exports.insertEmbedding = exports.closeDB = exports.getAdapter = exports.getDB = exports.initDB = exports.TIMEOUT_MS = exports.HOST = exports.DEFAULT_PORT = exports.getServerPort = exports.isServerRunning = exports.getServerStatus = exports.getEmbeddingFromServer = exports.EmbeddingCache = exports.MODEL_NAME = exports.EMBEDDING_DIM = exports.embeddingCache = exports.cosineSimilarity = exports.generateBatchEmbeddings = exports.generateEnhancedEmbedding = exports.generateEmbedding = void 0;
16
- exports.logLoading = exports.logInfo = exports.logError = exports.logFailed = exports.logComplete = exports.logProgress = exports.getTierBanner = exports.getTierDescription = exports.checkDatabase = exports.checkEmbeddings = exports.checkSQLite = exports.checkNodeVersion = exports.validateTier = exports.VALID_EDGE_TYPES = exports.updateConfidence = exports.getSupersededChainDepth = exports.createEdgesFromReasoning = exports.parseReasoningForRelationships = exports.detectRefinement = exports.calculateCombinedConfidence = exports.markSuperseded = exports.createSupersedesEdge = exports.createEdge = exports.getPreviousDecision = exports.generateDecisionId = exports.learnDecision = exports.testRelevanceScoring = exports.formatTopNContext = exports.selectTopDecisions = exports.calculateRelevance = exports.DEFAULT_CONFIG = exports.getConfigPath = exports.updateConfig = exports.getCacheDir = exports.getEmbeddingDim = exports.getModelName = exports.loadConfig = exports.listRecentMemoryEvents = exports.parseExtractionResponse = exports.buildExtractionPrompt = exports.getChannelSummary = exports.upsertChannelSummary = exports.setExtractionFn = exports.ingestConversation = exports.recordMemoryAudit = exports.createAuditAck = exports.buildMemoryBootstrap = exports.evolveMemory = exports.ingestMemory = exports.buildProfile = void 0;
17
- exports.analyzeQueryIntent = exports.analyzeDecision = exports.generate = exports.extractTopicKeywords = exports.analyzeIntent = exports.injectDecisionContext = exports.RECENT_WINDOW_MS = exports.PARTIAL_INDICATORS = exports.SUCCESS_INDICATORS = exports.FAILURE_INDICATORS = exports.onUserPromptSubmit = exports.markOutcome = exports.getEvidenceImpact = exports.calculateDurationDays = exports.getRecentDecision = exports.extractFailureReason = exports.matchesPartialIndicators = exports.matchesSuccessIndicators = exports.matchesFailureIndicators = exports.analyzeOutcome = exports.extractCodeExample = exports.extractQuickAnswer = exports.estimateTokens = exports.ensureTokenBudget = exports.formatTrustContext = exports.formatInstantAnswer = exports.formatTeaser = exports.formatList = exports.formatRecall = exports.formatLegacyContext = exports.formatContext = exports.isMAMAError = exports.wrapError = exports.ErrorCodes = exports.TimeoutError = exports.RateLimitError = exports.LinkError = exports.ConfigurationError = exports.EmbeddingError = exports.DatabaseError = exports.ValidationError = exports.NotFoundError = exports.MAMAError = exports.formatTimeAgo = exports.DebugLogger = exports.error = exports.warn = exports.info = exports.debug = exports.logSearching = void 0;
18
- exports.notifyInsight = exports.FALLBACK_MODEL = exports.DEFAULT_MODEL = exports.listModels = exports.isAvailable = void 0;
19
- // Embeddings
30
+ exports.logComplete = exports.logProgress = exports.getTierBanner = exports.getTierDescription = exports.checkDatabase = exports.checkEmbeddings = exports.checkSQLite = exports.checkNodeVersion = exports.validateTier = exports.VALID_EDGE_TYPES = exports.updateConfidence = exports.getSupersededChainDepth = exports.createEdgesFromReasoning = exports.parseReasoningForRelationships = exports.detectRefinement = exports.calculateCombinedConfidence = exports.markSuperseded = exports.createSupersedesEdge = exports.createEdge = exports.getPreviousDecision = exports.generateDecisionId = exports.learnDecision = exports.testRelevanceScoring = exports.formatTopNContext = exports.selectTopDecisions = exports.calculateRelevance = exports.DEFAULT_CONFIG = exports.getConfigPath = exports.updateConfig = exports.getCacheDir = exports.getEmbeddingDim = exports.getModelName = exports.loadConfig = exports.CanonicalizeError = exports.targetRefHash = exports.canonicalizeJSON = exports.listRecentMemoryEvents = exports.appendMemoryEvent = exports.parseExtractionResponse = exports.buildExtractionPrompt = exports.getChannelSummary = exports.upsertChannelSummary = exports.setExtractionFn = exports.ingestConversation = exports.recordMemoryAudit = exports.createAuditAck = exports.buildMemoryBootstrap = exports.evolveMemory = exports.ingestMemory = exports.buildProfile = void 0;
31
+ exports.analyzeIntent = exports.injectDecisionContext = exports.RECENT_WINDOW_MS = exports.PARTIAL_INDICATORS = exports.SUCCESS_INDICATORS = exports.FAILURE_INDICATORS = exports.onUserPromptSubmit = exports.markOutcome = exports.getEvidenceImpact = exports.calculateDurationDays = exports.getRecentDecision = exports.extractFailureReason = exports.matchesPartialIndicators = exports.matchesSuccessIndicators = exports.matchesFailureIndicators = exports.analyzeOutcome = exports.extractCodeExample = exports.extractQuickAnswer = exports.estimateTokens = exports.ensureTokenBudget = exports.formatTrustContext = exports.formatInstantAnswer = exports.formatTeaser = exports.formatList = exports.formatRecall = exports.formatLegacyContext = exports.formatContext = exports.isMAMAError = exports.wrapError = exports.ErrorCodes = exports.TimeoutError = exports.RateLimitError = exports.LinkError = exports.ConfigurationError = exports.EmbeddingError = exports.DatabaseError = exports.ValidationError = exports.NotFoundError = exports.MAMAError = exports.formatTimeAgo = exports.DebugLogger = exports.error = exports.warn = exports.info = exports.debug = exports.logSearching = exports.logLoading = exports.logInfo = exports.logError = exports.logFailed = void 0;
32
+ exports.notifyInsight = exports.FALLBACK_MODEL = exports.DEFAULT_MODEL = exports.listModels = exports.isAvailable = exports.analyzeQueryIntent = exports.analyzeDecision = exports.generate = exports.extractTopicKeywords = void 0;
20
33
  var embeddings_js_1 = require("./embeddings.js");
21
34
  Object.defineProperty(exports, "generateEmbedding", { enumerable: true, get: function () { return embeddings_js_1.generateEmbedding; } });
22
35
  Object.defineProperty(exports, "generateEnhancedEmbedding", { enumerable: true, get: function () { return embeddings_js_1.generateEnhancedEmbedding; } });
@@ -25,10 +38,8 @@ Object.defineProperty(exports, "cosineSimilarity", { enumerable: true, get: func
25
38
  Object.defineProperty(exports, "embeddingCache", { enumerable: true, get: function () { return embeddings_js_1.embeddingCache; } });
26
39
  Object.defineProperty(exports, "EMBEDDING_DIM", { enumerable: true, get: function () { return embeddings_js_1.EMBEDDING_DIM; } });
27
40
  Object.defineProperty(exports, "MODEL_NAME", { enumerable: true, get: function () { return embeddings_js_1.MODEL_NAME; } });
28
- // Embedding cache
29
41
  var embedding_cache_js_1 = require("./embedding-cache.js");
30
42
  Object.defineProperty(exports, "EmbeddingCache", { enumerable: true, get: function () { return embedding_cache_js_1.EmbeddingCache; } });
31
- // Embedding client
32
43
  var embedding_client_js_1 = require("./embedding-client.js");
33
44
  Object.defineProperty(exports, "getEmbeddingFromServer", { enumerable: true, get: function () { return embedding_client_js_1.getEmbeddingFromServer; } });
34
45
  Object.defineProperty(exports, "getServerStatus", { enumerable: true, get: function () { return embedding_client_js_1.getServerStatus; } });
@@ -37,7 +48,6 @@ Object.defineProperty(exports, "getServerPort", { enumerable: true, get: functio
37
48
  Object.defineProperty(exports, "DEFAULT_PORT", { enumerable: true, get: function () { return embedding_client_js_1.DEFAULT_PORT; } });
38
49
  Object.defineProperty(exports, "HOST", { enumerable: true, get: function () { return embedding_client_js_1.HOST; } });
39
50
  Object.defineProperty(exports, "TIMEOUT_MS", { enumerable: true, get: function () { return embedding_client_js_1.TIMEOUT_MS; } });
40
- // Database manager
41
51
  var db_manager_js_1 = require("./db-manager.js");
42
52
  Object.defineProperty(exports, "initDB", { enumerable: true, get: function () { return db_manager_js_1.initDB; } });
43
53
  Object.defineProperty(exports, "getDB", { enumerable: true, get: function () { return db_manager_js_1.getDB; } });
@@ -54,12 +64,10 @@ Object.defineProperty(exports, "getPreparedStmt", { enumerable: true, get: funct
54
64
  Object.defineProperty(exports, "getDbPath", { enumerable: true, get: function () { return db_manager_js_1.getDbPath; } });
55
65
  Object.defineProperty(exports, "fts5Search", { enumerable: true, get: function () { return db_manager_js_1.fts5Search; } });
56
66
  Object.defineProperty(exports, "reindexEmbeddings", { enumerable: true, get: function () { return db_manager_js_1.reindexEmbeddings; } });
57
- // Database adapter
58
67
  var index_js_1 = require("./db-adapter/index.js");
59
68
  Object.defineProperty(exports, "createAdapter", { enumerable: true, get: function () { return index_js_1.createAdapter; } });
60
69
  Object.defineProperty(exports, "DatabaseAdapter", { enumerable: true, get: function () { return index_js_1.DatabaseAdapter; } });
61
70
  Object.defineProperty(exports, "SQLiteAdapter", { enumerable: true, get: function () { return index_js_1.SQLiteAdapter; } });
62
- // Memory store
63
71
  var memory_store_js_1 = require("./memory-store.js");
64
72
  Object.defineProperty(exports, "getSessionDecisions", { enumerable: true, get: function () { return memory_store_js_1.getSessionDecisions; } });
65
73
  Object.defineProperty(exports, "incrementUsageSuccess", { enumerable: true, get: function () { return memory_store_js_1.incrementUsageSuccess; } });
@@ -70,10 +78,8 @@ Object.defineProperty(exports, "DB_PATH", { enumerable: true, get: function () {
70
78
  Object.defineProperty(exports, "DB_DIR", { enumerable: true, get: function () { return memory_store_js_1.DB_DIR; } });
71
79
  Object.defineProperty(exports, "LEGACY_DB_PATH", { enumerable: true, get: function () { return memory_store_js_1.LEGACY_DB_PATH; } });
72
80
  Object.defineProperty(exports, "DEFAULT_DB_PATH", { enumerable: true, get: function () { return memory_store_js_1.DEFAULT_DB_PATH; } });
73
- // MAMA API
74
81
  const mama_api_js_1 = __importDefault(require("./mama-api.js"));
75
82
  exports.mama = mama_api_js_1.default;
76
- // Memory V2
77
83
  var types_js_1 = require("./memory/types.js");
78
84
  Object.defineProperty(exports, "MEMORY_SCOPE_KINDS", { enumerable: true, get: function () { return types_js_1.MEMORY_SCOPE_KINDS; } });
79
85
  Object.defineProperty(exports, "MEMORY_KINDS", { enumerable: true, get: function () { return types_js_1.MEMORY_KINDS; } });
@@ -97,8 +103,32 @@ var extraction_prompt_js_1 = require("./memory/extraction-prompt.js");
97
103
  Object.defineProperty(exports, "buildExtractionPrompt", { enumerable: true, get: function () { return extraction_prompt_js_1.buildExtractionPrompt; } });
98
104
  Object.defineProperty(exports, "parseExtractionResponse", { enumerable: true, get: function () { return extraction_prompt_js_1.parseExtractionResponse; } });
99
105
  var event_store_js_1 = require("./memory/event-store.js");
106
+ Object.defineProperty(exports, "appendMemoryEvent", { enumerable: true, get: function () { return event_store_js_1.appendMemoryEvent; } });
100
107
  Object.defineProperty(exports, "listRecentMemoryEvents", { enumerable: true, get: function () { return event_store_js_1.listRecentMemoryEvents; } });
101
- // Config loader
108
+ __exportStar(require("./entities/types.js"), exports);
109
+ __exportStar(require("./entities/errors.js"), exports);
110
+ __exportStar(require("./entities/store.js"), exports);
111
+ __exportStar(require("./entities/normalization.js"), exports);
112
+ __exportStar(require("./entities/projection.js"), exports);
113
+ __exportStar(require("./entities/recall-bridge.js"), exports);
114
+ __exportStar(require("./entities/read-identity.js"), exports);
115
+ __exportStar(require("./entities/audit-metrics.js"), exports);
116
+ __exportStar(require("./entities/provenance-query.js"), exports);
117
+ __exportStar(require("./entities/lineage-store.js"), exports);
118
+ __exportStar(require("./entities/lineage-backfill.js"), exports);
119
+ __exportStar(require("./entities/exact-merge-backfill.js"), exports);
120
+ __exportStar(require("./entities/entity-search.js"), exports);
121
+ __exportStar(require("./entities/entity-list.js"), exports);
122
+ __exportStar(require("./entities/entity-orphan-list.js"), exports);
123
+ __exportStar(require("./entities/entity-impact.js"), exports);
124
+ __exportStar(require("./entities/rollback-preview.js"), exports);
125
+ __exportStar(require("./entities/source-locator.js"), exports);
126
+ __exportStar(require("./entities/policy-types.js"), exports);
127
+ __exportStar(require("./entities/policy-store.js"), exports);
128
+ var canonicalize_js_1 = require("./canonicalize.js");
129
+ Object.defineProperty(exports, "canonicalizeJSON", { enumerable: true, get: function () { return canonicalize_js_1.canonicalizeJSON; } });
130
+ Object.defineProperty(exports, "targetRefHash", { enumerable: true, get: function () { return canonicalize_js_1.targetRefHash; } });
131
+ Object.defineProperty(exports, "CanonicalizeError", { enumerable: true, get: function () { return canonicalize_js_1.CanonicalizeError; } });
102
132
  var config_loader_js_1 = require("./config-loader.js");
103
133
  Object.defineProperty(exports, "loadConfig", { enumerable: true, get: function () { return config_loader_js_1.loadConfig; } });
104
134
  Object.defineProperty(exports, "getModelName", { enumerable: true, get: function () { return config_loader_js_1.getModelName; } });
@@ -107,13 +137,11 @@ Object.defineProperty(exports, "getCacheDir", { enumerable: true, get: function
107
137
  Object.defineProperty(exports, "updateConfig", { enumerable: true, get: function () { return config_loader_js_1.updateConfig; } });
108
138
  Object.defineProperty(exports, "getConfigPath", { enumerable: true, get: function () { return config_loader_js_1.getConfigPath; } });
109
139
  Object.defineProperty(exports, "DEFAULT_CONFIG", { enumerable: true, get: function () { return config_loader_js_1.DEFAULT_CONFIG; } });
110
- // Relevance scorer
111
140
  var relevance_scorer_js_1 = require("./relevance-scorer.js");
112
141
  Object.defineProperty(exports, "calculateRelevance", { enumerable: true, get: function () { return relevance_scorer_js_1.calculateRelevance; } });
113
142
  Object.defineProperty(exports, "selectTopDecisions", { enumerable: true, get: function () { return relevance_scorer_js_1.selectTopDecisions; } });
114
143
  Object.defineProperty(exports, "formatTopNContext", { enumerable: true, get: function () { return relevance_scorer_js_1.formatTopNContext; } });
115
144
  Object.defineProperty(exports, "testRelevanceScoring", { enumerable: true, get: function () { return relevance_scorer_js_1.testRelevanceScoring; } });
116
- // Decision tracker
117
145
  var decision_tracker_js_1 = require("./decision-tracker.js");
118
146
  Object.defineProperty(exports, "learnDecision", { enumerable: true, get: function () { return decision_tracker_js_1.learnDecision; } });
119
147
  Object.defineProperty(exports, "generateDecisionId", { enumerable: true, get: function () { return decision_tracker_js_1.generateDecisionId; } });
@@ -128,7 +156,6 @@ Object.defineProperty(exports, "createEdgesFromReasoning", { enumerable: true, g
128
156
  Object.defineProperty(exports, "getSupersededChainDepth", { enumerable: true, get: function () { return decision_tracker_js_1.getSupersededChainDepth; } });
129
157
  Object.defineProperty(exports, "updateConfidence", { enumerable: true, get: function () { return decision_tracker_js_1.updateConfidence; } });
130
158
  Object.defineProperty(exports, "VALID_EDGE_TYPES", { enumerable: true, get: function () { return decision_tracker_js_1.VALID_EDGE_TYPES; } });
131
- // Tier validator
132
159
  var tier_validator_js_1 = require("./tier-validator.js");
133
160
  Object.defineProperty(exports, "validateTier", { enumerable: true, get: function () { return tier_validator_js_1.validateTier; } });
134
161
  Object.defineProperty(exports, "checkNodeVersion", { enumerable: true, get: function () { return tier_validator_js_1.checkNodeVersion; } });
@@ -137,7 +164,6 @@ Object.defineProperty(exports, "checkEmbeddings", { enumerable: true, get: funct
137
164
  Object.defineProperty(exports, "checkDatabase", { enumerable: true, get: function () { return tier_validator_js_1.checkDatabase; } });
138
165
  Object.defineProperty(exports, "getTierDescription", { enumerable: true, get: function () { return tier_validator_js_1.getTierDescription; } });
139
166
  Object.defineProperty(exports, "getTierBanner", { enumerable: true, get: function () { return tier_validator_js_1.getTierBanner; } });
140
- // Progress indicator
141
167
  var progress_indicator_js_1 = require("./progress-indicator.js");
142
168
  Object.defineProperty(exports, "logProgress", { enumerable: true, get: function () { return progress_indicator_js_1.logProgress; } });
143
169
  Object.defineProperty(exports, "logComplete", { enumerable: true, get: function () { return progress_indicator_js_1.logComplete; } });
@@ -146,17 +172,14 @@ Object.defineProperty(exports, "logError", { enumerable: true, get: function ()
146
172
  Object.defineProperty(exports, "logInfo", { enumerable: true, get: function () { return progress_indicator_js_1.logInfo; } });
147
173
  Object.defineProperty(exports, "logLoading", { enumerable: true, get: function () { return progress_indicator_js_1.logLoading; } });
148
174
  Object.defineProperty(exports, "logSearching", { enumerable: true, get: function () { return progress_indicator_js_1.logSearching; } });
149
- // Debug logger
150
175
  var debug_logger_js_1 = require("./debug-logger.js");
151
176
  Object.defineProperty(exports, "debug", { enumerable: true, get: function () { return debug_logger_js_1.debug; } });
152
177
  Object.defineProperty(exports, "info", { enumerable: true, get: function () { return debug_logger_js_1.info; } });
153
178
  Object.defineProperty(exports, "warn", { enumerable: true, get: function () { return debug_logger_js_1.warn; } });
154
179
  Object.defineProperty(exports, "error", { enumerable: true, get: function () { return debug_logger_js_1.error; } });
155
180
  Object.defineProperty(exports, "DebugLogger", { enumerable: true, get: function () { return debug_logger_js_1.DebugLogger; } });
156
- // Time formatter
157
181
  var time_formatter_js_1 = require("./time-formatter.js");
158
182
  Object.defineProperty(exports, "formatTimeAgo", { enumerable: true, get: function () { return time_formatter_js_1.formatTimeAgo; } });
159
- // Errors
160
183
  var errors_js_1 = require("./errors.js");
161
184
  Object.defineProperty(exports, "MAMAError", { enumerable: true, get: function () { return errors_js_1.MAMAError; } });
162
185
  Object.defineProperty(exports, "NotFoundError", { enumerable: true, get: function () { return errors_js_1.NotFoundError; } });
@@ -170,7 +193,6 @@ Object.defineProperty(exports, "TimeoutError", { enumerable: true, get: function
170
193
  Object.defineProperty(exports, "ErrorCodes", { enumerable: true, get: function () { return errors_js_1.ErrorCodes; } });
171
194
  Object.defineProperty(exports, "wrapError", { enumerable: true, get: function () { return errors_js_1.wrapError; } });
172
195
  Object.defineProperty(exports, "isMAMAError", { enumerable: true, get: function () { return errors_js_1.isMAMAError; } });
173
- // Decision formatter
174
196
  var decision_formatter_js_1 = require("./decision-formatter.js");
175
197
  Object.defineProperty(exports, "formatContext", { enumerable: true, get: function () { return decision_formatter_js_1.formatContext; } });
176
198
  Object.defineProperty(exports, "formatLegacyContext", { enumerable: true, get: function () { return decision_formatter_js_1.formatLegacyContext; } });
@@ -183,7 +205,6 @@ Object.defineProperty(exports, "ensureTokenBudget", { enumerable: true, get: fun
183
205
  Object.defineProperty(exports, "estimateTokens", { enumerable: true, get: function () { return decision_formatter_js_1.estimateTokens; } });
184
206
  Object.defineProperty(exports, "extractQuickAnswer", { enumerable: true, get: function () { return decision_formatter_js_1.extractQuickAnswer; } });
185
207
  Object.defineProperty(exports, "extractCodeExample", { enumerable: true, get: function () { return decision_formatter_js_1.extractCodeExample; } });
186
- // Outcome tracker
187
208
  var outcome_tracker_js_1 = require("./outcome-tracker.js");
188
209
  Object.defineProperty(exports, "analyzeOutcome", { enumerable: true, get: function () { return outcome_tracker_js_1.analyzeOutcome; } });
189
210
  Object.defineProperty(exports, "matchesFailureIndicators", { enumerable: true, get: function () { return outcome_tracker_js_1.matchesFailureIndicators; } });
@@ -199,14 +220,11 @@ Object.defineProperty(exports, "FAILURE_INDICATORS", { enumerable: true, get: fu
199
220
  Object.defineProperty(exports, "SUCCESS_INDICATORS", { enumerable: true, get: function () { return outcome_tracker_js_1.SUCCESS_INDICATORS; } });
200
221
  Object.defineProperty(exports, "PARTIAL_INDICATORS", { enumerable: true, get: function () { return outcome_tracker_js_1.PARTIAL_INDICATORS; } });
201
222
  Object.defineProperty(exports, "RECENT_WINDOW_MS", { enumerable: true, get: function () { return outcome_tracker_js_1.RECENT_WINDOW_MS; } });
202
- // Memory inject
203
223
  var memory_inject_js_1 = require("./memory-inject.js");
204
224
  Object.defineProperty(exports, "injectDecisionContext", { enumerable: true, get: function () { return memory_inject_js_1.injectDecisionContext; } });
205
- // Query intent
206
225
  var query_intent_js_1 = require("./query-intent.js");
207
226
  Object.defineProperty(exports, "analyzeIntent", { enumerable: true, get: function () { return query_intent_js_1.analyzeIntent; } });
208
227
  Object.defineProperty(exports, "extractTopicKeywords", { enumerable: true, get: function () { return query_intent_js_1.extractTopicKeywords; } });
209
- // Ollama client
210
228
  var ollama_client_js_1 = require("./ollama-client.js");
211
229
  Object.defineProperty(exports, "generate", { enumerable: true, get: function () { return ollama_client_js_1.generate; } });
212
230
  Object.defineProperty(exports, "analyzeDecision", { enumerable: true, get: function () { return ollama_client_js_1.analyzeDecision; } });
@@ -215,7 +233,30 @@ Object.defineProperty(exports, "isAvailable", { enumerable: true, get: function
215
233
  Object.defineProperty(exports, "listModels", { enumerable: true, get: function () { return ollama_client_js_1.listModels; } });
216
234
  Object.defineProperty(exports, "DEFAULT_MODEL", { enumerable: true, get: function () { return ollama_client_js_1.DEFAULT_MODEL; } });
217
235
  Object.defineProperty(exports, "FALLBACK_MODEL", { enumerable: true, get: function () { return ollama_client_js_1.FALLBACK_MODEL; } });
218
- // Notification manager
219
236
  var notification_manager_js_1 = require("./notification-manager.js");
220
237
  Object.defineProperty(exports, "notifyInsight", { enumerable: true, get: function () { return notification_manager_js_1.notifyInsight; } });
238
+ __exportStar(require("./cases/types.js"), exports);
239
+ __exportStar(require("./cases/store.js"), exports);
240
+ __exportStar(require("./cases/role-inference.js"), exports);
241
+ __exportStar(require("./cases/target-ref.js"), exports);
242
+ __exportStar(require("./cases/corrections.js"), exports);
243
+ __exportStar(require("./cases/sqlite-transaction.js"), exports);
244
+ __exportStar(require("./cases/live-state.js"), exports);
245
+ __exportStar(require("./cases/tombstone-sweeper.js"), exports);
246
+ __exportStar(require("./cases/merge-split.js"), exports);
247
+ __exportStar(require("./cases/membership-matcher.js"), exports);
248
+ __exportStar(require("./cases/search-rollup.js"), exports);
249
+ __exportStar(require("./cases/timeline-range.js"), exports);
250
+ __exportStar(require("./cases/wiki-page-index.js"), exports);
251
+ __exportStar(require("./cases/case-links.js"), exports);
252
+ __exportStar(require("./cases/composition-overrides.js"), exports);
253
+ __exportStar(require("./cases/freshness.js"), exports);
254
+ __exportStar(require("./cases/membership-explain.js"), exports);
255
+ __exportStar(require("./connectors/event-index.js"), exports);
256
+ __exportStar(require("./connectors/types.js"), exports);
257
+ __exportStar(require("./search/question-type.js"), exports);
258
+ __exportStar(require("./search/feedback-store.js"), exports);
259
+ __exportStar(require("./search/ranker-features.js"), exports);
260
+ __exportStar(require("./search/ranker-trainer.js"), exports);
261
+ __exportStar(require("./search/ranker-rescore.js"), exports);
221
262
  //# sourceMappingURL=index.js.map
@@ -42,6 +42,18 @@ interface SaveParams {
42
42
  }>;
43
43
  /** ISO 8601 date string for when the event actually occurred (e.g. "2023-01-15") */
44
44
  event_date?: string | null;
45
+ timelineEvent?: {
46
+ id?: string;
47
+ entity_id?: string;
48
+ event_type: string;
49
+ role?: string | null;
50
+ valid_from?: number | null;
51
+ valid_to?: number | null;
52
+ observed_at?: number | null;
53
+ source_ref?: string | null;
54
+ summary: string;
55
+ details?: string | null;
56
+ };
45
57
  }
46
58
  /**
47
59
  * Similar decision result from search
@@ -52,8 +64,10 @@ interface SimilarDecision {
52
64
  decision: string;
53
65
  reasoning?: string;
54
66
  similarity?: number;
67
+ retrieval_score?: number | null;
55
68
  created_at?: number | string;
56
69
  event_date?: string | null;
70
+ event_datetime?: number | null;
57
71
  }
58
72
  /**
59
73
  * Search result from mama.search()
@@ -76,6 +90,7 @@ interface SearchResult {
76
90
  expanded_count: number;
77
91
  sources: Record<string, number>;
78
92
  } | null;
93
+ ranker: Record<string, unknown> | null;
79
94
  };
80
95
  }
81
96
  /**
@@ -85,6 +100,7 @@ export interface SuggestOptions {
85
100
  limit?: number;
86
101
  threshold?: number;
87
102
  format?: 'full' | 'teaser' | 'brief' | 'markdown';
103
+ rerankWithLearned?: boolean;
88
104
  recency_boost?: boolean | {
89
105
  weight?: number;
90
106
  scale?: number;
@@ -106,6 +122,9 @@ interface ReasoningGraphInfo {
106
122
  interface SaveResult {
107
123
  success: boolean;
108
124
  id: string;
125
+ saved_decision_id?: string;
126
+ timeline_event_id?: string | null;
127
+ timeline_event_ids?: string[];
109
128
  similar_decisions?: SimilarDecision[];
110
129
  warning?: string;
111
130
  collaboration_hint?: string;
@@ -405,7 +424,7 @@ export interface QualityReport {
405
424
  * outcome: 'success'
406
425
  * });
407
426
  */
408
- declare function save({ topic, decision, reasoning, confidence, type, outcome, failure_reason, limitation, trust_context: _trust_context, is_static, scopes: inputScopes, event_date, }: SaveParams): Promise<SaveResult>;
427
+ declare function save({ topic, decision, reasoning, confidence, type, outcome, failure_reason, limitation, trust_context: _trust_context, is_static, scopes: inputScopes, event_date, timelineEvent, }: SaveParams): Promise<SaveResult>;
409
428
  /**
410
429
  * Recall decisions by topic
411
430
  *
@@ -559,6 +578,8 @@ interface SuggestFunctionOptions {
559
578
  limit?: number;
560
579
  threshold?: number;
561
580
  useReranking?: boolean;
581
+ /** Phase 3 Task 33: apply learned offline ranker rescoring. */
582
+ rerankWithLearned?: boolean;
562
583
  recencyWeight?: number;
563
584
  recencyScale?: number;
564
585
  recencyDecay?: number;