memento-mcp-server 1.13.1-a2 → 1.13.1-a4
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/dist/client/index.d.ts +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/domains/anchor/services/anchor/anchor-cache-service.d.ts +77 -0
- package/dist/domains/anchor/services/anchor/anchor-cache-service.d.ts.map +1 -0
- package/dist/domains/anchor/services/anchor/anchor-cache-service.js +193 -0
- package/dist/domains/anchor/services/anchor/anchor-cache-service.js.map +1 -0
- package/dist/domains/anchor/services/anchor/anchor-interfaces.d.ts.map +1 -0
- package/dist/domains/anchor/services/anchor/anchor-interfaces.js.map +1 -0
- package/dist/domains/anchor/services/anchor/anchor-manager.d.ts +85 -0
- package/dist/domains/anchor/services/anchor/anchor-manager.d.ts.map +1 -0
- package/dist/domains/anchor/services/anchor/anchor-manager.js +241 -0
- package/dist/domains/anchor/services/anchor/anchor-manager.js.map +1 -0
- package/dist/domains/anchor/services/anchor/anchor-search-service.d.ts +131 -0
- package/dist/domains/anchor/services/anchor/anchor-search-service.d.ts.map +1 -0
- package/dist/domains/anchor/services/anchor/anchor-search-service.js +918 -0
- package/dist/domains/anchor/services/anchor/anchor-search-service.js.map +1 -0
- package/dist/domains/anchor/services/anchor/index.d.ts.map +1 -0
- package/dist/domains/anchor/services/anchor/index.js.map +1 -0
- package/dist/domains/anchor/tools/clear-anchor-tool.d.ts +10 -0
- package/dist/domains/anchor/tools/clear-anchor-tool.d.ts.map +1 -0
- package/dist/domains/anchor/tools/clear-anchor-tool.js +64 -0
- package/dist/domains/anchor/tools/clear-anchor-tool.js.map +1 -0
- package/dist/domains/anchor/tools/get-anchor-tool.d.ts +10 -0
- package/dist/domains/anchor/tools/get-anchor-tool.d.ts.map +1 -0
- package/dist/domains/anchor/tools/get-anchor-tool.js +91 -0
- package/dist/domains/anchor/tools/get-anchor-tool.js.map +1 -0
- package/dist/domains/anchor/tools/restore-anchors-tool.d.ts +11 -0
- package/dist/domains/anchor/tools/restore-anchors-tool.d.ts.map +1 -0
- package/dist/domains/anchor/tools/restore-anchors-tool.js +117 -0
- package/dist/domains/anchor/tools/restore-anchors-tool.js.map +1 -0
- package/dist/domains/anchor/tools/search-local-tool.d.ts +10 -0
- package/dist/domains/anchor/tools/search-local-tool.d.ts.map +1 -0
- package/dist/domains/anchor/tools/search-local-tool.js +134 -0
- package/dist/domains/anchor/tools/search-local-tool.js.map +1 -0
- package/dist/domains/anchor/tools/set-anchor-tool.d.ts +10 -0
- package/dist/domains/anchor/tools/set-anchor-tool.d.ts.map +1 -0
- package/dist/domains/anchor/tools/set-anchor-tool.js +70 -0
- package/dist/domains/anchor/tools/set-anchor-tool.js.map +1 -0
- package/dist/domains/embedding/providers/embedding-provider-factory.d.ts +69 -0
- package/dist/domains/embedding/providers/embedding-provider-factory.d.ts.map +1 -0
- package/dist/domains/embedding/providers/embedding-provider-factory.js +233 -0
- package/dist/domains/embedding/providers/embedding-provider-factory.js.map +1 -0
- package/dist/domains/embedding/providers/model-availability-service.d.ts +22 -0
- package/dist/domains/embedding/providers/model-availability-service.d.ts.map +1 -0
- package/dist/domains/embedding/providers/model-availability-service.js +140 -0
- package/dist/domains/embedding/providers/model-availability-service.js.map +1 -0
- package/dist/domains/embedding/services/embedding-migration-service.d.ts +24 -0
- package/dist/domains/embedding/services/embedding-migration-service.d.ts.map +1 -0
- package/dist/domains/embedding/services/embedding-migration-service.js +360 -0
- package/dist/domains/embedding/services/embedding-migration-service.js.map +1 -0
- package/dist/domains/embedding/services/embedding-service.d.ts.map +1 -0
- package/dist/domains/embedding/services/embedding-service.js +276 -0
- package/dist/domains/embedding/services/embedding-service.js.map +1 -0
- package/dist/domains/embedding/services/gemini-embedding-service.d.ts +84 -0
- package/dist/domains/embedding/services/gemini-embedding-service.d.ts.map +1 -0
- package/dist/domains/embedding/services/gemini-embedding-service.js +241 -0
- package/dist/domains/embedding/services/gemini-embedding-service.js.map +1 -0
- package/dist/domains/embedding/services/lightweight-embedding-service.d.ts +95 -0
- package/dist/domains/embedding/services/lightweight-embedding-service.d.ts.map +1 -0
- package/dist/domains/embedding/services/lightweight-embedding-service.js +264 -0
- package/dist/domains/embedding/services/lightweight-embedding-service.js.map +1 -0
- package/dist/domains/embedding/services/minilm-embedding-service.d.ts +93 -0
- package/dist/domains/embedding/services/minilm-embedding-service.d.ts.map +1 -0
- package/dist/domains/embedding/services/minilm-embedding-service.js.map +1 -0
- package/dist/domains/embedding/services/openai-embedding-service.d.ts +36 -0
- package/dist/domains/embedding/services/openai-embedding-service.d.ts.map +1 -0
- package/dist/domains/embedding/services/openai-embedding-service.js +192 -0
- package/dist/domains/embedding/services/openai-embedding-service.js.map +1 -0
- package/dist/domains/embedding/services/unified-embedding-service.d.ts +78 -0
- package/dist/domains/embedding/services/unified-embedding-service.d.ts.map +1 -0
- package/dist/domains/embedding/services/unified-embedding-service.js +208 -0
- package/dist/domains/embedding/services/unified-embedding-service.js.map +1 -0
- package/dist/domains/embedding/services/vector-compatibility-service.d.ts +68 -0
- package/dist/domains/embedding/services/vector-compatibility-service.d.ts.map +1 -0
- package/dist/domains/embedding/services/vector-compatibility-service.js.map +1 -0
- package/dist/domains/forgetting/algorithms/forgetting-algorithm.d.ts.map +1 -0
- package/dist/domains/forgetting/algorithms/forgetting-algorithm.js.map +1 -0
- package/dist/domains/forgetting/algorithms/spaced-repetition.d.ts.map +1 -0
- package/dist/domains/forgetting/algorithms/spaced-repetition.js.map +1 -0
- package/dist/domains/forgetting/factories/spaced-repetition.factory.d.ts +48 -0
- package/dist/domains/forgetting/factories/spaced-repetition.factory.d.ts.map +1 -0
- package/dist/domains/forgetting/factories/spaced-repetition.factory.js.map +1 -0
- package/dist/domains/forgetting/services/forgetting-policy-service.d.ts.map +1 -0
- package/dist/domains/forgetting/services/forgetting-policy-service.js +233 -0
- package/dist/domains/forgetting/services/forgetting-policy-service.js.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/interval-calculation.service.d.ts +38 -0
- package/dist/domains/forgetting/services/spaced-repetition/interval-calculation.service.d.ts.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/interval-calculation.service.js.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/optimal-interval.service.d.ts +56 -0
- package/dist/domains/forgetting/services/spaced-repetition/optimal-interval.service.d.ts.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/optimal-interval.service.js.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/performance-analysis.service.d.ts +48 -0
- package/dist/domains/forgetting/services/spaced-repetition/performance-analysis.service.d.ts.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/performance-analysis.service.js.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/priority-calculation.service.d.ts +53 -0
- package/dist/domains/forgetting/services/spaced-repetition/priority-calculation.service.d.ts.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/priority-calculation.service.js.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/recall-probability.service.d.ts +36 -0
- package/dist/domains/forgetting/services/spaced-repetition/recall-probability.service.d.ts.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/recall-probability.service.js.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/review-scheduling.service.d.ts +43 -0
- package/dist/domains/forgetting/services/spaced-repetition/review-scheduling.service.d.ts.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/review-scheduling.service.js.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/spaced-repetition-container.d.ts +69 -0
- package/dist/domains/forgetting/services/spaced-repetition/spaced-repetition-container.d.ts.map +1 -0
- package/dist/domains/forgetting/services/spaced-repetition/spaced-repetition-container.js.map +1 -0
- package/dist/domains/forgetting/tools/forgetting-stats-tool.d.ts +10 -0
- package/dist/domains/forgetting/tools/forgetting-stats-tool.d.ts.map +1 -0
- package/dist/domains/forgetting/tools/forgetting-stats-tool.js +37 -0
- package/dist/domains/forgetting/tools/forgetting-stats-tool.js.map +1 -0
- package/dist/domains/memory/repositories/core-memory-repository.d.ts.map +1 -0
- package/dist/domains/memory/repositories/core-memory-repository.js.map +1 -0
- package/dist/domains/memory/repositories/knowledge-vault-repository.d.ts.map +1 -0
- package/dist/domains/memory/repositories/knowledge-vault-repository.js.map +1 -0
- package/dist/domains/memory/services/core-memory-cache-service.d.ts.map +1 -0
- package/dist/domains/memory/services/core-memory-cache-service.js.map +1 -0
- package/dist/domains/memory/services/core-memory-service.d.ts.map +1 -0
- package/dist/domains/memory/services/core-memory-service.js.map +1 -0
- package/dist/domains/memory/services/knowledge-vault-service.d.ts.map +1 -0
- package/dist/domains/memory/services/knowledge-vault-service.js.map +1 -0
- package/dist/domains/memory/services/memory-embedding-service.d.ts +78 -0
- package/dist/domains/memory/services/memory-embedding-service.d.ts.map +1 -0
- package/dist/domains/memory/services/memory-embedding-service.js +341 -0
- package/dist/domains/memory/services/memory-embedding-service.js.map +1 -0
- package/dist/domains/memory/services/memory-neighbor-service.d.ts +81 -0
- package/dist/domains/memory/services/memory-neighbor-service.d.ts.map +1 -0
- package/dist/domains/memory/services/memory-neighbor-service.js +297 -0
- package/dist/domains/memory/services/memory-neighbor-service.js.map +1 -0
- package/dist/domains/memory/tools/cleanup-memory-tool.d.ts +10 -0
- package/dist/domains/memory/tools/cleanup-memory-tool.d.ts.map +1 -0
- package/dist/domains/memory/tools/cleanup-memory-tool.js +66 -0
- package/dist/domains/memory/tools/cleanup-memory-tool.js.map +1 -0
- package/dist/domains/memory/tools/forget-tool.d.ts +63 -0
- package/dist/domains/memory/tools/forget-tool.d.ts.map +1 -0
- package/dist/domains/memory/tools/forget-tool.js +340 -0
- package/dist/domains/memory/tools/forget-tool.js.map +1 -0
- package/dist/domains/memory/tools/get-memory-neighbors-tool.d.ts +26 -0
- package/dist/domains/memory/tools/get-memory-neighbors-tool.d.ts.map +1 -0
- package/dist/domains/memory/tools/get-memory-neighbors-tool.js +125 -0
- package/dist/domains/memory/tools/get-memory-neighbors-tool.js.map +1 -0
- package/dist/domains/memory/tools/memory-injection-prompt.d.ts +43 -0
- package/dist/domains/memory/tools/memory-injection-prompt.d.ts.map +1 -0
- package/dist/domains/memory/tools/memory-injection-prompt.js +332 -0
- package/dist/domains/memory/tools/memory-injection-prompt.js.map +1 -0
- package/dist/domains/memory/tools/pin-tool.d.ts +39 -0
- package/dist/domains/memory/tools/pin-tool.d.ts.map +1 -0
- package/dist/domains/memory/tools/pin-tool.js +211 -0
- package/dist/domains/memory/tools/pin-tool.js.map +1 -0
- package/dist/domains/memory/tools/recall-tool.d.ts +38 -0
- package/dist/domains/memory/tools/recall-tool.d.ts.map +1 -0
- package/dist/domains/memory/tools/recall-tool.js +709 -0
- package/dist/domains/memory/tools/recall-tool.js.map +1 -0
- package/dist/domains/memory/tools/remember-tool.d.ts +51 -0
- package/dist/domains/memory/tools/remember-tool.d.ts.map +1 -0
- package/dist/domains/memory/tools/remember-tool.js +722 -0
- package/dist/domains/memory/tools/remember-tool.js.map +1 -0
- package/dist/domains/memory/tools/unpin-tool.d.ts +43 -0
- package/dist/domains/memory/tools/unpin-tool.d.ts.map +1 -0
- package/dist/domains/memory/tools/unpin-tool.js +233 -0
- package/dist/domains/memory/tools/unpin-tool.js.map +1 -0
- package/dist/domains/monitoring/services/alert-notification-service.d.ts +16 -0
- package/dist/domains/monitoring/services/alert-notification-service.d.ts.map +1 -0
- package/dist/domains/monitoring/services/alert-notification-service.js.map +1 -0
- package/dist/domains/monitoring/services/error-logging-service.d.ts.map +1 -0
- package/dist/domains/monitoring/services/error-logging-service.js.map +1 -0
- package/dist/domains/monitoring/services/failure-detector.d.ts +120 -0
- package/dist/domains/monitoring/services/failure-detector.d.ts.map +1 -0
- package/dist/domains/monitoring/services/failure-detector.js +370 -0
- package/dist/domains/monitoring/services/failure-detector.js.map +1 -0
- package/dist/domains/monitoring/services/performance-alert-service.d.ts.map +1 -0
- package/dist/domains/monitoring/services/performance-alert-service.js.map +1 -0
- package/dist/domains/monitoring/services/performance-monitor.d.ts.map +1 -0
- package/dist/domains/monitoring/services/performance-monitor.js +802 -0
- package/dist/domains/monitoring/services/performance-monitor.js.map +1 -0
- package/dist/domains/monitoring/tools/error-stats.d.ts +93 -0
- package/dist/domains/monitoring/tools/error-stats.d.ts.map +1 -0
- package/dist/domains/monitoring/tools/error-stats.js.map +1 -0
- package/dist/domains/monitoring/tools/performance-alerts.d.ts +127 -0
- package/dist/domains/monitoring/tools/performance-alerts.d.ts.map +1 -0
- package/dist/domains/monitoring/tools/performance-alerts.js.map +1 -0
- package/dist/domains/monitoring/tools/performance-stats-tool.d.ts +10 -0
- package/dist/domains/monitoring/tools/performance-stats-tool.d.ts.map +1 -0
- package/dist/domains/monitoring/tools/performance-stats-tool.js +38 -0
- package/dist/domains/monitoring/tools/performance-stats-tool.js.map +1 -0
- package/dist/domains/monitoring/tools/resolve-error.d.ts +54 -0
- package/dist/domains/monitoring/tools/resolve-error.d.ts.map +1 -0
- package/dist/domains/monitoring/tools/resolve-error.js.map +1 -0
- package/dist/domains/relation/services/llm-based-relation-extractor.d.ts +157 -0
- package/dist/domains/relation/services/llm-based-relation-extractor.d.ts.map +1 -0
- package/dist/domains/relation/services/llm-based-relation-extractor.js +1350 -0
- package/dist/domains/relation/services/llm-based-relation-extractor.js.map +1 -0
- package/dist/domains/relation/services/relation-extractor.d.ts +73 -0
- package/dist/domains/relation/services/relation-extractor.d.ts.map +1 -0
- package/dist/domains/relation/services/relation-extractor.js +231 -0
- package/dist/domains/relation/services/relation-extractor.js.map +1 -0
- package/dist/domains/relation/services/relation-graph.d.ts +275 -0
- package/dist/domains/relation/services/relation-graph.d.ts.map +1 -0
- package/dist/domains/relation/services/relation-graph.js +869 -0
- package/dist/domains/relation/services/relation-graph.js.map +1 -0
- package/dist/domains/relation/services/relation-quality-validator.d.ts +211 -0
- package/dist/domains/relation/services/relation-quality-validator.d.ts.map +1 -0
- package/dist/domains/relation/services/relation-quality-validator.js +415 -0
- package/dist/domains/relation/services/relation-quality-validator.js.map +1 -0
- package/dist/domains/relation/services/rule-based-relation-extractor.d.ts +66 -0
- package/dist/domains/relation/services/rule-based-relation-extractor.d.ts.map +1 -0
- package/dist/domains/relation/services/rule-based-relation-extractor.js +258 -0
- package/dist/domains/relation/services/rule-based-relation-extractor.js.map +1 -0
- package/dist/domains/relation/tools/add-relation-tool.d.ts +34 -0
- package/dist/domains/relation/tools/add-relation-tool.d.ts.map +1 -0
- package/dist/domains/relation/tools/add-relation-tool.js +163 -0
- package/dist/domains/relation/tools/add-relation-tool.js.map +1 -0
- package/dist/domains/relation/tools/extract-relations-tool.d.ts +28 -0
- package/dist/domains/relation/tools/extract-relations-tool.d.ts.map +1 -0
- package/dist/domains/relation/tools/extract-relations-tool.js +159 -0
- package/dist/domains/relation/tools/extract-relations-tool.js.map +1 -0
- package/dist/domains/relation/tools/get-relations-tool.d.ts +34 -0
- package/dist/domains/relation/tools/get-relations-tool.d.ts.map +1 -0
- package/dist/domains/relation/tools/get-relations-tool.js +155 -0
- package/dist/domains/relation/tools/get-relations-tool.js.map +1 -0
- package/dist/domains/relation/tools/remove-relation-tool.d.ts +45 -0
- package/dist/domains/relation/tools/remove-relation-tool.d.ts.map +1 -0
- package/dist/domains/relation/tools/remove-relation-tool.js +142 -0
- package/dist/domains/relation/tools/remove-relation-tool.js.map +1 -0
- package/dist/domains/relation/tools/visualize-relations-tool.d.ts +46 -0
- package/dist/domains/relation/tools/visualize-relations-tool.d.ts.map +1 -0
- package/dist/domains/relation/tools/visualize-relations-tool.js +157 -0
- package/dist/domains/relation/tools/visualize-relations-tool.js.map +1 -0
- package/dist/domains/search/algorithms/hybrid-search-engine.d.ts +318 -0
- package/dist/domains/search/algorithms/hybrid-search-engine.d.ts.map +1 -0
- package/dist/domains/search/algorithms/hybrid-search-engine.js +1049 -0
- package/dist/domains/search/algorithms/hybrid-search-engine.js.map +1 -0
- package/dist/domains/search/algorithms/search-engine.d.ts +74 -0
- package/dist/domains/search/algorithms/search-engine.d.ts.map +1 -0
- package/dist/domains/search/algorithms/search-engine.js +432 -0
- package/dist/domains/search/algorithms/search-engine.js.map +1 -0
- package/dist/domains/search/algorithms/search-ranking.d.ts.map +1 -0
- package/dist/domains/search/algorithms/search-ranking.js.map +1 -0
- package/dist/domains/search/algorithms/vector-search-engine-migration.d.ts.map +1 -0
- package/dist/domains/search/algorithms/vector-search-engine-migration.js +198 -0
- package/dist/domains/search/algorithms/vector-search-engine-migration.js.map +1 -0
- package/dist/domains/search/algorithms/vector-search-engine-refactored.d.ts +56 -0
- package/dist/domains/search/algorithms/vector-search-engine-refactored.d.ts.map +1 -0
- package/dist/domains/search/algorithms/vector-search-engine-refactored.js.map +1 -0
- package/dist/domains/search/algorithms/vector-search-engine.d.ts.map +1 -0
- package/dist/domains/search/algorithms/vector-search-engine.js.map +1 -0
- package/dist/domains/search/factories/hybrid-search.factory.d.ts.map +1 -0
- package/dist/domains/search/factories/hybrid-search.factory.js +57 -0
- package/dist/domains/search/factories/hybrid-search.factory.js.map +1 -0
- package/dist/domains/search/factories/vector-search.factory.d.ts.map +1 -0
- package/dist/domains/search/factories/vector-search.factory.js +47 -0
- package/dist/domains/search/factories/vector-search.factory.js.map +1 -0
- package/dist/domains/search/repositories/vector-performance.repository.d.ts +25 -0
- package/dist/domains/search/repositories/vector-performance.repository.d.ts.map +1 -0
- package/dist/domains/search/repositories/vector-performance.repository.js +134 -0
- package/dist/domains/search/repositories/vector-performance.repository.js.map +1 -0
- package/dist/domains/search/repositories/vector-search.repository.d.ts +43 -0
- package/dist/domains/search/repositories/vector-search.repository.d.ts.map +1 -0
- package/dist/domains/search/repositories/vector-search.repository.js +377 -0
- package/dist/domains/search/repositories/vector-search.repository.js.map +1 -0
- package/dist/domains/search/services/vector-search/vector-index-manager.d.ts +27 -0
- package/dist/domains/search/services/vector-search/vector-index-manager.d.ts.map +1 -0
- package/dist/domains/search/services/vector-search/vector-index-manager.js.map +1 -0
- package/dist/domains/search/services/vector-search/vector-performance-tester.d.ts +30 -0
- package/dist/domains/search/services/vector-search/vector-performance-tester.d.ts.map +1 -0
- package/dist/domains/search/services/vector-search/vector-performance-tester.js +87 -0
- package/dist/domains/search/services/vector-search/vector-performance-tester.js.map +1 -0
- package/dist/domains/search/services/vector-search/vector-search-container.d.ts.map +1 -0
- package/dist/domains/search/services/vector-search/vector-search-container.js +74 -0
- package/dist/domains/search/services/vector-search/vector-search-container.js.map +1 -0
- package/dist/domains/search/services/vector-search/vector-search-facade.d.ts +63 -0
- package/dist/domains/search/services/vector-search/vector-search-facade.d.ts.map +1 -0
- package/dist/domains/search/services/vector-search/vector-search-facade.js +91 -0
- package/dist/domains/search/services/vector-search/vector-search-facade.js.map +1 -0
- package/dist/domains/search/services/vector-search/vector-search-result-normalizer.d.ts +6 -0
- package/dist/domains/search/services/vector-search/vector-search-result-normalizer.d.ts.map +1 -0
- package/dist/domains/search/services/vector-search/vector-search-result-normalizer.js.map +1 -0
- package/dist/domains/search/services/vector-search/vector-search.service.d.ts +33 -0
- package/dist/domains/search/services/vector-search/vector-search.service.d.ts.map +1 -0
- package/dist/domains/search/services/vector-search/vector-search.service.js +149 -0
- package/dist/domains/search/services/vector-search/vector-search.service.js.map +1 -0
- package/dist/infrastructure/async-optimizer.d.ts.map +1 -0
- package/dist/infrastructure/async-optimizer.js.map +1 -0
- package/dist/infrastructure/cache/cache-service.d.ts.map +1 -0
- package/dist/infrastructure/cache/cache-service.js.map +1 -0
- package/dist/infrastructure/consolidation-score-service.d.ts +80 -0
- package/dist/infrastructure/consolidation-score-service.d.ts.map +1 -0
- package/dist/infrastructure/consolidation-score-service.js.map +1 -0
- package/dist/infrastructure/database/database/init.d.ts.map +1 -0
- package/dist/infrastructure/database/database/init.js +444 -0
- package/dist/infrastructure/database/database/init.js.map +1 -0
- package/dist/infrastructure/database/database/migrate.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migrate.js +257 -0
- package/dist/infrastructure/database/database/migrate.js.map +1 -0
- package/dist/infrastructure/database/database/migration/backup-manager.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/backup-manager.js +181 -0
- package/dist/infrastructure/database/database/migration/backup-manager.js.map +1 -0
- package/dist/infrastructure/database/database/migration/dependency-validator.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/dependency-validator.js.map +1 -0
- package/dist/infrastructure/database/database/migration/migration-detector.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/migration-detector.js.map +1 -0
- package/dist/infrastructure/database/database/migration/migration-logger.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/migration-logger.js +168 -0
- package/dist/infrastructure/database/database/migration/migration-logger.js.map +1 -0
- package/dist/infrastructure/database/database/migration/migration-runner.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/migration-runner.js.map +1 -0
- package/dist/infrastructure/database/database/migration/migrations/002-mirix-schema-expansion.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/migrations/002-mirix-schema-expansion.js.map +1 -0
- package/dist/infrastructure/database/database/migration/migrations/003-consolidation-score-fields.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/migrations/003-consolidation-score-fields.js.map +1 -0
- package/dist/infrastructure/database/database/migration/migrations/004-anchor-table.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/migrations/004-anchor-table.js.map +1 -0
- package/dist/infrastructure/database/database/migration/migrations/005-relation-engine-schema.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/migrations/005-relation-engine-schema.js.map +1 -0
- package/dist/infrastructure/database/database/migration/migrations/006-fts5-reflection-notes.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/migrations/006-fts5-reflection-notes.js +467 -0
- package/dist/infrastructure/database/database/migration/migrations/006-fts5-reflection-notes.js.map +1 -0
- package/dist/infrastructure/database/database/migration/schema-version-manager.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/schema-version-manager.js +146 -0
- package/dist/infrastructure/database/database/migration/schema-version-manager.js.map +1 -0
- package/dist/infrastructure/database/database/migration/types.d.ts.map +1 -0
- package/dist/infrastructure/database/database/migration/types.js.map +1 -0
- package/dist/infrastructure/database/database-optimize-tool.d.ts +10 -0
- package/dist/infrastructure/database/database-optimize-tool.d.ts.map +1 -0
- package/dist/infrastructure/database/database-optimize-tool.js +64 -0
- package/dist/infrastructure/database/database-optimize-tool.js.map +1 -0
- package/dist/infrastructure/database/database-optimizer.d.ts.map +1 -0
- package/dist/infrastructure/database/database-optimizer.js +369 -0
- package/dist/infrastructure/database/database-optimizer.js.map +1 -0
- package/dist/infrastructure/database/migration-history-service.d.ts +14 -0
- package/dist/infrastructure/database/migration-history-service.d.ts.map +1 -0
- package/dist/infrastructure/database/migration-history-service.js.map +1 -0
- package/dist/infrastructure/database/migration-monitor-service.d.ts +24 -0
- package/dist/infrastructure/database/migration-monitor-service.d.ts.map +1 -0
- package/dist/infrastructure/database/migration-monitor-service.js.map +1 -0
- package/dist/infrastructure/reflexion-worker.d.ts +170 -0
- package/dist/infrastructure/reflexion-worker.d.ts.map +1 -0
- package/dist/infrastructure/reflexion-worker.js +635 -0
- package/dist/infrastructure/reflexion-worker.js.map +1 -0
- package/dist/infrastructure/scheduler/batch-scheduler.d.ts +195 -0
- package/dist/infrastructure/scheduler/batch-scheduler.d.ts.map +1 -0
- package/dist/infrastructure/scheduler/batch-scheduler.js +927 -0
- package/dist/infrastructure/scheduler/batch-scheduler.js.map +1 -0
- package/dist/scripts/check-migration-status.js +3 -3
- package/dist/scripts/check-migration-status.js.map +1 -1
- package/dist/scripts/copy-assets.js +2 -2
- package/dist/scripts/copy-assets.js.map +1 -1
- package/dist/server/bootstrap.d.ts +12 -12
- package/dist/server/bootstrap.d.ts.map +1 -1
- package/dist/server/bootstrap.js +16 -16
- package/dist/server/bootstrap.js.map +1 -1
- package/dist/server/handlers/anchor-map.handler.js +1 -1
- package/dist/server/handlers/anchor-map.handler.js.map +1 -1
- package/dist/server/http-server.d.ts +3 -3
- package/dist/server/http-server.d.ts.map +1 -1
- package/dist/server/http-server.js +13 -13
- package/dist/server/http-server.js.map +1 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +71 -51
- package/dist/server/index.js.map +1 -1
- package/dist/server/mcp-logger.d.ts +40 -0
- package/dist/server/mcp-logger.d.ts.map +1 -0
- package/dist/server/mcp-logger.js +139 -0
- package/dist/server/mcp-logger.js.map +1 -0
- package/dist/server/middleware/error-handler.middleware.js +2 -2
- package/dist/server/middleware/error-handler.middleware.js.map +1 -1
- package/dist/server/routes/admin.routes.js +11 -11
- package/dist/server/routes/admin.routes.js.map +1 -1
- package/dist/server/routes/api.routes.js +3 -3
- package/dist/server/routes/api.routes.js.map +1 -1
- package/dist/server/routes/mcp.routes.js +4 -4
- package/dist/server/routes/mcp.routes.js.map +1 -1
- package/dist/server/routes/tools.routes.js +1 -1
- package/dist/server/routes/tools.routes.js.map +1 -1
- package/dist/services/anchor-manager.d.ts +5 -5
- package/dist/services/anchor-manager.d.ts.map +1 -1
- package/dist/services/anchor-manager.js +7 -7
- package/dist/services/anchor-manager.js.map +1 -1
- package/dist/shared/config/environment.d.ts.map +1 -0
- package/dist/shared/config/environment.js.map +1 -0
- package/dist/shared/config/index.d.ts.map +1 -0
- package/dist/shared/config/index.js +81 -0
- package/dist/shared/config/index.js.map +1 -0
- package/dist/shared/config/ranking-weights-loader.d.ts.map +1 -0
- package/dist/shared/config/ranking-weights-loader.js.map +1 -0
- package/dist/shared/config/vector-search.config.d.ts.map +1 -0
- package/dist/shared/config/vector-search.config.js.map +1 -0
- package/dist/shared/constants/relation-constants.d.ts.map +1 -0
- package/dist/shared/constants/relation-constants.js.map +1 -0
- package/dist/shared/interfaces/database.interface.d.ts.map +1 -0
- package/dist/shared/interfaces/database.interface.js.map +1 -0
- package/dist/shared/interfaces/spaced-repetition.interface.d.ts.map +1 -0
- package/dist/shared/interfaces/spaced-repetition.interface.js.map +1 -0
- package/dist/shared/types/alerts.types.d.ts.map +1 -0
- package/dist/shared/types/alerts.types.js.map +1 -0
- package/dist/shared/types/consolidation-score.types.d.ts.map +1 -0
- package/dist/shared/types/consolidation-score.types.js.map +1 -0
- package/dist/shared/types/embedding-provider-monitoring.types.d.ts.map +1 -0
- package/dist/shared/types/embedding-provider-monitoring.types.js.map +1 -0
- package/dist/shared/types/embedding.types.d.ts.map +1 -0
- package/dist/shared/types/embedding.types.js.map +1 -0
- package/dist/shared/types/index.d.ts +141 -0
- package/dist/shared/types/index.d.ts.map +1 -0
- package/dist/shared/types/index.js.map +1 -0
- package/dist/shared/types/migration.types.d.ts.map +1 -0
- package/dist/shared/types/migration.types.js.map +1 -0
- package/dist/shared/types/relation-graph.d.ts.map +1 -0
- package/dist/shared/types/relation-graph.js.map +1 -0
- package/dist/shared/types/relation.d.ts.map +1 -0
- package/dist/shared/types/relation.js.map +1 -0
- package/dist/shared/types/spaced-repetition.types.d.ts.map +1 -0
- package/dist/shared/types/spaced-repetition.types.js.map +1 -0
- package/dist/shared/types/vector-search.types.d.ts.map +1 -0
- package/dist/shared/types/vector-search.types.js.map +1 -0
- package/dist/shared/utils/cache-key-generator.d.ts.map +1 -0
- package/dist/shared/utils/cache-key-generator.js.map +1 -0
- package/dist/shared/utils/configuration-validator.d.ts.map +1 -0
- package/dist/shared/utils/configuration-validator.js.map +1 -0
- package/dist/shared/utils/database.d.ts.map +1 -0
- package/dist/shared/utils/database.js.map +1 -0
- package/dist/shared/utils/environment-check.d.ts.map +1 -0
- package/dist/shared/utils/environment-check.js.map +1 -0
- package/dist/shared/utils/fts5-migration-status.d.ts.map +1 -0
- package/dist/shared/utils/fts5-migration-status.js.map +1 -0
- package/dist/shared/utils/logger.d.ts.map +1 -0
- package/dist/shared/utils/logger.js.map +1 -0
- package/dist/shared/utils/reflection-notes-merge.d.ts.map +1 -0
- package/dist/shared/utils/reflection-notes-merge.js.map +1 -0
- package/dist/shared/utils/reflection-notes-normalize.d.ts.map +1 -0
- package/dist/shared/utils/reflection-notes-normalize.js.map +1 -0
- package/dist/shared/utils/reflection-notes-schema.d.ts.map +1 -0
- package/dist/shared/utils/reflection-notes-schema.js.map +1 -0
- package/dist/shared/utils/relation-visualizer.d.ts.map +1 -0
- package/dist/shared/utils/relation-visualizer.js.map +1 -0
- package/dist/shared/utils/stopwords.d.ts.map +1 -0
- package/dist/shared/utils/stopwords.js.map +1 -0
- package/dist/shared/utils/type-guards.d.ts.map +1 -0
- package/dist/shared/utils/type-guards.js.map +1 -0
- package/dist/shared/utils/type-param-validator.d.ts.map +1 -0
- package/dist/shared/utils/type-param-validator.js.map +1 -0
- package/dist/shared/utils/write-coalescing.d.ts.map +1 -0
- package/dist/shared/utils/write-coalescing.js.map +1 -0
- package/dist/tools/index.d.ts +12 -12
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +12 -12
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/migrate-embeddings-tool.js +3 -3
- package/dist/tools/migrate-embeddings-tool.js.map +1 -1
- package/dist/workers/consolidation-score-worker.js +2 -2
- package/dist/workers/consolidation-score-worker.js.map +1 -1
- package/package.json +3 -2
- package/dist/algorithms/forgetting-algorithm.d.ts.map +0 -1
- package/dist/algorithms/forgetting-algorithm.js.map +0 -1
- package/dist/algorithms/hybrid-search-engine.d.ts +0 -318
- package/dist/algorithms/hybrid-search-engine.d.ts.map +0 -1
- package/dist/algorithms/hybrid-search-engine.js +0 -1042
- package/dist/algorithms/hybrid-search-engine.js.map +0 -1
- package/dist/algorithms/search-engine.d.ts +0 -74
- package/dist/algorithms/search-engine.d.ts.map +0 -1
- package/dist/algorithms/search-engine.js +0 -432
- package/dist/algorithms/search-engine.js.map +0 -1
- package/dist/algorithms/search-ranking.d.ts.map +0 -1
- package/dist/algorithms/search-ranking.js.map +0 -1
- package/dist/algorithms/spaced-repetition.d.ts.map +0 -1
- package/dist/algorithms/spaced-repetition.js.map +0 -1
- package/dist/algorithms/vector-search-engine-migration.d.ts.map +0 -1
- package/dist/algorithms/vector-search-engine-migration.js +0 -198
- package/dist/algorithms/vector-search-engine-migration.js.map +0 -1
- package/dist/algorithms/vector-search-engine-refactored.d.ts +0 -56
- package/dist/algorithms/vector-search-engine-refactored.d.ts.map +0 -1
- package/dist/algorithms/vector-search-engine-refactored.js.map +0 -1
- package/dist/algorithms/vector-search-engine.d.ts.map +0 -1
- package/dist/algorithms/vector-search-engine.js.map +0 -1
- package/dist/config/environment.d.ts.map +0 -1
- package/dist/config/environment.js.map +0 -1
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js +0 -80
- package/dist/config/index.js.map +0 -1
- package/dist/config/ranking-weights-loader.d.ts.map +0 -1
- package/dist/config/ranking-weights-loader.js.map +0 -1
- package/dist/config/vector-search.config.d.ts.map +0 -1
- package/dist/config/vector-search.config.js.map +0 -1
- package/dist/constants/relation-constants.d.ts.map +0 -1
- package/dist/constants/relation-constants.js.map +0 -1
- package/dist/database/init.d.ts.map +0 -1
- package/dist/database/init.js +0 -444
- package/dist/database/init.js.map +0 -1
- package/dist/database/migrate.d.ts.map +0 -1
- package/dist/database/migrate.js +0 -257
- package/dist/database/migrate.js.map +0 -1
- package/dist/database/migration/backup-manager.d.ts.map +0 -1
- package/dist/database/migration/backup-manager.js +0 -181
- package/dist/database/migration/backup-manager.js.map +0 -1
- package/dist/database/migration/dependency-validator.d.ts.map +0 -1
- package/dist/database/migration/dependency-validator.js.map +0 -1
- package/dist/database/migration/migration-detector.d.ts.map +0 -1
- package/dist/database/migration/migration-detector.js.map +0 -1
- package/dist/database/migration/migration-logger.d.ts.map +0 -1
- package/dist/database/migration/migration-logger.js +0 -168
- package/dist/database/migration/migration-logger.js.map +0 -1
- package/dist/database/migration/migration-runner.d.ts.map +0 -1
- package/dist/database/migration/migration-runner.js.map +0 -1
- package/dist/database/migration/migrations/002-mirix-schema-expansion.d.ts.map +0 -1
- package/dist/database/migration/migrations/002-mirix-schema-expansion.js.map +0 -1
- package/dist/database/migration/migrations/003-consolidation-score-fields.d.ts.map +0 -1
- package/dist/database/migration/migrations/003-consolidation-score-fields.js.map +0 -1
- package/dist/database/migration/migrations/004-anchor-table.d.ts.map +0 -1
- package/dist/database/migration/migrations/004-anchor-table.js.map +0 -1
- package/dist/database/migration/migrations/005-relation-engine-schema.d.ts.map +0 -1
- package/dist/database/migration/migrations/005-relation-engine-schema.js.map +0 -1
- package/dist/database/migration/migrations/006-fts5-reflection-notes.d.ts.map +0 -1
- package/dist/database/migration/migrations/006-fts5-reflection-notes.js +0 -467
- package/dist/database/migration/migrations/006-fts5-reflection-notes.js.map +0 -1
- package/dist/database/migration/schema-version-manager.d.ts.map +0 -1
- package/dist/database/migration/schema-version-manager.js +0 -146
- package/dist/database/migration/schema-version-manager.js.map +0 -1
- package/dist/database/migration/types.d.ts.map +0 -1
- package/dist/database/migration/types.js.map +0 -1
- package/dist/factories/hybrid-search.factory.d.ts.map +0 -1
- package/dist/factories/hybrid-search.factory.js +0 -57
- package/dist/factories/hybrid-search.factory.js.map +0 -1
- package/dist/factories/spaced-repetition.factory.d.ts +0 -48
- package/dist/factories/spaced-repetition.factory.d.ts.map +0 -1
- package/dist/factories/spaced-repetition.factory.js.map +0 -1
- package/dist/factories/vector-search.factory.d.ts.map +0 -1
- package/dist/factories/vector-search.factory.js +0 -47
- package/dist/factories/vector-search.factory.js.map +0 -1
- package/dist/interfaces/database.interface.d.ts.map +0 -1
- package/dist/interfaces/database.interface.js.map +0 -1
- package/dist/interfaces/spaced-repetition.interface.d.ts.map +0 -1
- package/dist/interfaces/spaced-repetition.interface.js.map +0 -1
- package/dist/repositories/core-memory-repository.d.ts.map +0 -1
- package/dist/repositories/core-memory-repository.js.map +0 -1
- package/dist/repositories/knowledge-vault-repository.d.ts.map +0 -1
- package/dist/repositories/knowledge-vault-repository.js.map +0 -1
- package/dist/repositories/vector-performance.repository.d.ts +0 -25
- package/dist/repositories/vector-performance.repository.d.ts.map +0 -1
- package/dist/repositories/vector-performance.repository.js +0 -134
- package/dist/repositories/vector-performance.repository.js.map +0 -1
- package/dist/repositories/vector-search.repository.d.ts +0 -43
- package/dist/repositories/vector-search.repository.d.ts.map +0 -1
- package/dist/repositories/vector-search.repository.js +0 -377
- package/dist/repositories/vector-search.repository.js.map +0 -1
- package/dist/services/alert-notification-service.d.ts +0 -16
- package/dist/services/alert-notification-service.d.ts.map +0 -1
- package/dist/services/alert-notification-service.js.map +0 -1
- package/dist/services/anchor/anchor-cache-service.d.ts +0 -77
- package/dist/services/anchor/anchor-cache-service.d.ts.map +0 -1
- package/dist/services/anchor/anchor-cache-service.js +0 -193
- package/dist/services/anchor/anchor-cache-service.js.map +0 -1
- package/dist/services/anchor/anchor-interfaces.d.ts.map +0 -1
- package/dist/services/anchor/anchor-interfaces.js.map +0 -1
- package/dist/services/anchor/anchor-manager.d.ts +0 -71
- package/dist/services/anchor/anchor-manager.d.ts.map +0 -1
- package/dist/services/anchor/anchor-manager.js +0 -205
- package/dist/services/anchor/anchor-manager.js.map +0 -1
- package/dist/services/anchor/anchor-search-service.d.ts +0 -131
- package/dist/services/anchor/anchor-search-service.d.ts.map +0 -1
- package/dist/services/anchor/anchor-search-service.js +0 -918
- package/dist/services/anchor/anchor-search-service.js.map +0 -1
- package/dist/services/anchor/index.d.ts.map +0 -1
- package/dist/services/anchor/index.js.map +0 -1
- package/dist/services/async-optimizer.d.ts.map +0 -1
- package/dist/services/async-optimizer.js.map +0 -1
- package/dist/services/batch-scheduler.d.ts +0 -195
- package/dist/services/batch-scheduler.d.ts.map +0 -1
- package/dist/services/batch-scheduler.js +0 -926
- package/dist/services/batch-scheduler.js.map +0 -1
- package/dist/services/cache-service.d.ts.map +0 -1
- package/dist/services/cache-service.js.map +0 -1
- package/dist/services/consolidation-score-service.d.ts +0 -80
- package/dist/services/consolidation-score-service.d.ts.map +0 -1
- package/dist/services/consolidation-score-service.js.map +0 -1
- package/dist/services/core-memory-cache-service.d.ts.map +0 -1
- package/dist/services/core-memory-cache-service.js.map +0 -1
- package/dist/services/core-memory-service.d.ts.map +0 -1
- package/dist/services/core-memory-service.js.map +0 -1
- package/dist/services/database-optimizer.d.ts.map +0 -1
- package/dist/services/database-optimizer.js +0 -369
- package/dist/services/database-optimizer.js.map +0 -1
- package/dist/services/embedding-migration-service.d.ts +0 -24
- package/dist/services/embedding-migration-service.d.ts.map +0 -1
- package/dist/services/embedding-migration-service.js +0 -360
- package/dist/services/embedding-migration-service.js.map +0 -1
- package/dist/services/embedding-provider-factory.d.ts +0 -69
- package/dist/services/embedding-provider-factory.d.ts.map +0 -1
- package/dist/services/embedding-provider-factory.js +0 -233
- package/dist/services/embedding-provider-factory.js.map +0 -1
- package/dist/services/embedding-service.d.ts.map +0 -1
- package/dist/services/embedding-service.js +0 -276
- package/dist/services/embedding-service.js.map +0 -1
- package/dist/services/error-logging-service.d.ts.map +0 -1
- package/dist/services/error-logging-service.js.map +0 -1
- package/dist/services/failure-detector.d.ts +0 -120
- package/dist/services/failure-detector.d.ts.map +0 -1
- package/dist/services/failure-detector.js +0 -370
- package/dist/services/failure-detector.js.map +0 -1
- package/dist/services/forgetting-policy-service.d.ts.map +0 -1
- package/dist/services/forgetting-policy-service.js +0 -233
- package/dist/services/forgetting-policy-service.js.map +0 -1
- package/dist/services/gemini-embedding-service.d.ts +0 -82
- package/dist/services/gemini-embedding-service.d.ts.map +0 -1
- package/dist/services/gemini-embedding-service.js +0 -239
- package/dist/services/gemini-embedding-service.js.map +0 -1
- package/dist/services/knowledge-vault-service.d.ts.map +0 -1
- package/dist/services/knowledge-vault-service.js.map +0 -1
- package/dist/services/lightweight-embedding-service.d.ts +0 -95
- package/dist/services/lightweight-embedding-service.d.ts.map +0 -1
- package/dist/services/lightweight-embedding-service.js +0 -264
- package/dist/services/lightweight-embedding-service.js.map +0 -1
- package/dist/services/llm-based-relation-extractor.d.ts +0 -156
- package/dist/services/llm-based-relation-extractor.d.ts.map +0 -1
- package/dist/services/llm-based-relation-extractor.js +0 -1350
- package/dist/services/llm-based-relation-extractor.js.map +0 -1
- package/dist/services/memory-embedding-service.d.ts +0 -78
- package/dist/services/memory-embedding-service.d.ts.map +0 -1
- package/dist/services/memory-embedding-service.js +0 -341
- package/dist/services/memory-embedding-service.js.map +0 -1
- package/dist/services/memory-neighbor-service.d.ts +0 -81
- package/dist/services/memory-neighbor-service.d.ts.map +0 -1
- package/dist/services/memory-neighbor-service.js +0 -297
- package/dist/services/memory-neighbor-service.js.map +0 -1
- package/dist/services/migration-history-service.d.ts +0 -14
- package/dist/services/migration-history-service.d.ts.map +0 -1
- package/dist/services/migration-history-service.js.map +0 -1
- package/dist/services/migration-monitor-service.d.ts +0 -24
- package/dist/services/migration-monitor-service.d.ts.map +0 -1
- package/dist/services/migration-monitor-service.js.map +0 -1
- package/dist/services/minilm-embedding-service.d.ts +0 -93
- package/dist/services/minilm-embedding-service.d.ts.map +0 -1
- package/dist/services/minilm-embedding-service.js.map +0 -1
- package/dist/services/model-availability-service.d.ts +0 -22
- package/dist/services/model-availability-service.d.ts.map +0 -1
- package/dist/services/model-availability-service.js +0 -140
- package/dist/services/model-availability-service.js.map +0 -1
- package/dist/services/openai-embedding-service.d.ts +0 -36
- package/dist/services/openai-embedding-service.d.ts.map +0 -1
- package/dist/services/openai-embedding-service.js +0 -192
- package/dist/services/openai-embedding-service.js.map +0 -1
- package/dist/services/performance-alert-service.d.ts.map +0 -1
- package/dist/services/performance-alert-service.js.map +0 -1
- package/dist/services/performance-monitor.d.ts.map +0 -1
- package/dist/services/performance-monitor.js +0 -802
- package/dist/services/performance-monitor.js.map +0 -1
- package/dist/services/reflexion-worker.d.ts +0 -170
- package/dist/services/reflexion-worker.d.ts.map +0 -1
- package/dist/services/reflexion-worker.js +0 -636
- package/dist/services/reflexion-worker.js.map +0 -1
- package/dist/services/relation-extractor.d.ts +0 -73
- package/dist/services/relation-extractor.d.ts.map +0 -1
- package/dist/services/relation-extractor.js +0 -231
- package/dist/services/relation-extractor.js.map +0 -1
- package/dist/services/relation-graph.d.ts +0 -275
- package/dist/services/relation-graph.d.ts.map +0 -1
- package/dist/services/relation-graph.js +0 -869
- package/dist/services/relation-graph.js.map +0 -1
- package/dist/services/relation-quality-validator.d.ts +0 -211
- package/dist/services/relation-quality-validator.d.ts.map +0 -1
- package/dist/services/relation-quality-validator.js +0 -415
- package/dist/services/relation-quality-validator.js.map +0 -1
- package/dist/services/rule-based-relation-extractor.d.ts +0 -66
- package/dist/services/rule-based-relation-extractor.d.ts.map +0 -1
- package/dist/services/rule-based-relation-extractor.js +0 -258
- package/dist/services/rule-based-relation-extractor.js.map +0 -1
- package/dist/services/spaced-repetition/interval-calculation.service.d.ts +0 -38
- package/dist/services/spaced-repetition/interval-calculation.service.d.ts.map +0 -1
- package/dist/services/spaced-repetition/interval-calculation.service.js.map +0 -1
- package/dist/services/spaced-repetition/optimal-interval.service.d.ts +0 -56
- package/dist/services/spaced-repetition/optimal-interval.service.d.ts.map +0 -1
- package/dist/services/spaced-repetition/optimal-interval.service.js.map +0 -1
- package/dist/services/spaced-repetition/performance-analysis.service.d.ts +0 -48
- package/dist/services/spaced-repetition/performance-analysis.service.d.ts.map +0 -1
- package/dist/services/spaced-repetition/performance-analysis.service.js.map +0 -1
- package/dist/services/spaced-repetition/priority-calculation.service.d.ts +0 -53
- package/dist/services/spaced-repetition/priority-calculation.service.d.ts.map +0 -1
- package/dist/services/spaced-repetition/priority-calculation.service.js.map +0 -1
- package/dist/services/spaced-repetition/recall-probability.service.d.ts +0 -36
- package/dist/services/spaced-repetition/recall-probability.service.d.ts.map +0 -1
- package/dist/services/spaced-repetition/recall-probability.service.js.map +0 -1
- package/dist/services/spaced-repetition/review-scheduling.service.d.ts +0 -43
- package/dist/services/spaced-repetition/review-scheduling.service.d.ts.map +0 -1
- package/dist/services/spaced-repetition/review-scheduling.service.js.map +0 -1
- package/dist/services/spaced-repetition/spaced-repetition-container.d.ts +0 -69
- package/dist/services/spaced-repetition/spaced-repetition-container.d.ts.map +0 -1
- package/dist/services/spaced-repetition/spaced-repetition-container.js.map +0 -1
- package/dist/services/unified-embedding-service.d.ts +0 -78
- package/dist/services/unified-embedding-service.d.ts.map +0 -1
- package/dist/services/unified-embedding-service.js +0 -208
- package/dist/services/unified-embedding-service.js.map +0 -1
- package/dist/services/vector-compatibility-service.d.ts +0 -68
- package/dist/services/vector-compatibility-service.d.ts.map +0 -1
- package/dist/services/vector-compatibility-service.js.map +0 -1
- package/dist/services/vector-search/vector-index-manager.d.ts +0 -27
- package/dist/services/vector-search/vector-index-manager.d.ts.map +0 -1
- package/dist/services/vector-search/vector-index-manager.js.map +0 -1
- package/dist/services/vector-search/vector-performance-tester.d.ts +0 -30
- package/dist/services/vector-search/vector-performance-tester.d.ts.map +0 -1
- package/dist/services/vector-search/vector-performance-tester.js +0 -87
- package/dist/services/vector-search/vector-performance-tester.js.map +0 -1
- package/dist/services/vector-search/vector-search-container.d.ts.map +0 -1
- package/dist/services/vector-search/vector-search-container.js +0 -74
- package/dist/services/vector-search/vector-search-container.js.map +0 -1
- package/dist/services/vector-search/vector-search-facade.d.ts +0 -63
- package/dist/services/vector-search/vector-search-facade.d.ts.map +0 -1
- package/dist/services/vector-search/vector-search-facade.js +0 -91
- package/dist/services/vector-search/vector-search-facade.js.map +0 -1
- package/dist/services/vector-search/vector-search-result-normalizer.d.ts +0 -6
- package/dist/services/vector-search/vector-search-result-normalizer.d.ts.map +0 -1
- package/dist/services/vector-search/vector-search-result-normalizer.js.map +0 -1
- package/dist/services/vector-search/vector-search.service.d.ts +0 -33
- package/dist/services/vector-search/vector-search.service.d.ts.map +0 -1
- package/dist/services/vector-search/vector-search.service.js +0 -149
- package/dist/services/vector-search/vector-search.service.js.map +0 -1
- package/dist/tools/add-relation-tool.d.ts +0 -34
- package/dist/tools/add-relation-tool.d.ts.map +0 -1
- package/dist/tools/add-relation-tool.js +0 -163
- package/dist/tools/add-relation-tool.js.map +0 -1
- package/dist/tools/cleanup-memory-tool.d.ts +0 -10
- package/dist/tools/cleanup-memory-tool.d.ts.map +0 -1
- package/dist/tools/cleanup-memory-tool.js +0 -66
- package/dist/tools/cleanup-memory-tool.js.map +0 -1
- package/dist/tools/clear-anchor-tool.d.ts +0 -10
- package/dist/tools/clear-anchor-tool.d.ts.map +0 -1
- package/dist/tools/clear-anchor-tool.js +0 -64
- package/dist/tools/clear-anchor-tool.js.map +0 -1
- package/dist/tools/database-optimize-tool.d.ts +0 -10
- package/dist/tools/database-optimize-tool.d.ts.map +0 -1
- package/dist/tools/database-optimize-tool.js +0 -64
- package/dist/tools/database-optimize-tool.js.map +0 -1
- package/dist/tools/error-stats.d.ts +0 -93
- package/dist/tools/error-stats.d.ts.map +0 -1
- package/dist/tools/error-stats.js.map +0 -1
- package/dist/tools/extract-relations-tool.d.ts +0 -28
- package/dist/tools/extract-relations-tool.d.ts.map +0 -1
- package/dist/tools/extract-relations-tool.js +0 -159
- package/dist/tools/extract-relations-tool.js.map +0 -1
- package/dist/tools/forget-tool.d.ts +0 -63
- package/dist/tools/forget-tool.d.ts.map +0 -1
- package/dist/tools/forget-tool.js +0 -340
- package/dist/tools/forget-tool.js.map +0 -1
- package/dist/tools/forgetting-stats-tool.d.ts +0 -10
- package/dist/tools/forgetting-stats-tool.d.ts.map +0 -1
- package/dist/tools/forgetting-stats-tool.js +0 -37
- package/dist/tools/forgetting-stats-tool.js.map +0 -1
- package/dist/tools/get-anchor-tool.d.ts +0 -10
- package/dist/tools/get-anchor-tool.d.ts.map +0 -1
- package/dist/tools/get-anchor-tool.js +0 -91
- package/dist/tools/get-anchor-tool.js.map +0 -1
- package/dist/tools/get-memory-neighbors-tool.d.ts +0 -26
- package/dist/tools/get-memory-neighbors-tool.d.ts.map +0 -1
- package/dist/tools/get-memory-neighbors-tool.js +0 -125
- package/dist/tools/get-memory-neighbors-tool.js.map +0 -1
- package/dist/tools/get-relations-tool.d.ts +0 -34
- package/dist/tools/get-relations-tool.d.ts.map +0 -1
- package/dist/tools/get-relations-tool.js +0 -155
- package/dist/tools/get-relations-tool.js.map +0 -1
- package/dist/tools/memory-injection-prompt.d.ts +0 -43
- package/dist/tools/memory-injection-prompt.d.ts.map +0 -1
- package/dist/tools/memory-injection-prompt.js +0 -332
- package/dist/tools/memory-injection-prompt.js.map +0 -1
- package/dist/tools/performance-alerts.d.ts +0 -127
- package/dist/tools/performance-alerts.d.ts.map +0 -1
- package/dist/tools/performance-alerts.js.map +0 -1
- package/dist/tools/performance-stats-tool.d.ts +0 -10
- package/dist/tools/performance-stats-tool.d.ts.map +0 -1
- package/dist/tools/performance-stats-tool.js +0 -38
- package/dist/tools/performance-stats-tool.js.map +0 -1
- package/dist/tools/pin-tool.d.ts +0 -39
- package/dist/tools/pin-tool.d.ts.map +0 -1
- package/dist/tools/pin-tool.js +0 -211
- package/dist/tools/pin-tool.js.map +0 -1
- package/dist/tools/recall-tool.d.ts +0 -38
- package/dist/tools/recall-tool.d.ts.map +0 -1
- package/dist/tools/recall-tool.js +0 -709
- package/dist/tools/recall-tool.js.map +0 -1
- package/dist/tools/remember-tool.d.ts +0 -51
- package/dist/tools/remember-tool.d.ts.map +0 -1
- package/dist/tools/remember-tool.js +0 -722
- package/dist/tools/remember-tool.js.map +0 -1
- package/dist/tools/remove-relation-tool.d.ts +0 -45
- package/dist/tools/remove-relation-tool.d.ts.map +0 -1
- package/dist/tools/remove-relation-tool.js +0 -142
- package/dist/tools/remove-relation-tool.js.map +0 -1
- package/dist/tools/resolve-error.d.ts +0 -54
- package/dist/tools/resolve-error.d.ts.map +0 -1
- package/dist/tools/resolve-error.js.map +0 -1
- package/dist/tools/restore-anchors-tool.d.ts +0 -11
- package/dist/tools/restore-anchors-tool.d.ts.map +0 -1
- package/dist/tools/restore-anchors-tool.js +0 -117
- package/dist/tools/restore-anchors-tool.js.map +0 -1
- package/dist/tools/search-local-tool.d.ts +0 -10
- package/dist/tools/search-local-tool.d.ts.map +0 -1
- package/dist/tools/search-local-tool.js +0 -97
- package/dist/tools/search-local-tool.js.map +0 -1
- package/dist/tools/set-anchor-tool.d.ts +0 -10
- package/dist/tools/set-anchor-tool.d.ts.map +0 -1
- package/dist/tools/set-anchor-tool.js +0 -70
- package/dist/tools/set-anchor-tool.js.map +0 -1
- package/dist/tools/unpin-tool.d.ts +0 -43
- package/dist/tools/unpin-tool.d.ts.map +0 -1
- package/dist/tools/unpin-tool.js +0 -233
- package/dist/tools/unpin-tool.js.map +0 -1
- package/dist/tools/visualize-relations-tool.d.ts +0 -46
- package/dist/tools/visualize-relations-tool.d.ts.map +0 -1
- package/dist/tools/visualize-relations-tool.js +0 -157
- package/dist/tools/visualize-relations-tool.js.map +0 -1
- package/dist/types/alerts.types.d.ts.map +0 -1
- package/dist/types/alerts.types.js.map +0 -1
- package/dist/types/consolidation-score.types.d.ts.map +0 -1
- package/dist/types/consolidation-score.types.js.map +0 -1
- package/dist/types/embedding-provider-monitoring.types.d.ts.map +0 -1
- package/dist/types/embedding-provider-monitoring.types.js.map +0 -1
- package/dist/types/embedding.types.d.ts.map +0 -1
- package/dist/types/embedding.types.js.map +0 -1
- package/dist/types/index.d.ts +0 -140
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js.map +0 -1
- package/dist/types/migration.types.d.ts.map +0 -1
- package/dist/types/migration.types.js.map +0 -1
- package/dist/types/relation-graph.d.ts.map +0 -1
- package/dist/types/relation-graph.js.map +0 -1
- package/dist/types/relation.d.ts.map +0 -1
- package/dist/types/relation.js.map +0 -1
- package/dist/types/spaced-repetition.types.d.ts.map +0 -1
- package/dist/types/spaced-repetition.types.js.map +0 -1
- package/dist/types/vector-search.types.d.ts.map +0 -1
- package/dist/types/vector-search.types.js.map +0 -1
- package/dist/utils/cache-key-generator.d.ts.map +0 -1
- package/dist/utils/cache-key-generator.js.map +0 -1
- package/dist/utils/configuration-validator.d.ts.map +0 -1
- package/dist/utils/configuration-validator.js.map +0 -1
- package/dist/utils/database.d.ts.map +0 -1
- package/dist/utils/database.js.map +0 -1
- package/dist/utils/environment-check.d.ts.map +0 -1
- package/dist/utils/environment-check.js.map +0 -1
- package/dist/utils/fts5-migration-status.d.ts.map +0 -1
- package/dist/utils/fts5-migration-status.js.map +0 -1
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/reflection-notes-merge.d.ts.map +0 -1
- package/dist/utils/reflection-notes-merge.js.map +0 -1
- package/dist/utils/reflection-notes-normalize.d.ts.map +0 -1
- package/dist/utils/reflection-notes-normalize.js.map +0 -1
- package/dist/utils/reflection-notes-schema.d.ts.map +0 -1
- package/dist/utils/reflection-notes-schema.js.map +0 -1
- package/dist/utils/relation-visualizer.d.ts.map +0 -1
- package/dist/utils/relation-visualizer.js.map +0 -1
- package/dist/utils/stopwords.d.ts.map +0 -1
- package/dist/utils/stopwords.js.map +0 -1
- package/dist/utils/type-guards.d.ts.map +0 -1
- package/dist/utils/type-guards.js.map +0 -1
- package/dist/utils/type-param-validator.d.ts.map +0 -1
- package/dist/utils/type-param-validator.js.map +0 -1
- package/dist/utils/write-coalescing.d.ts.map +0 -1
- package/dist/utils/write-coalescing.js.map +0 -1
- package/src/database/schema.sql +0 -304
- /package/dist/{services → domains/anchor/services}/anchor/anchor-interfaces.d.ts +0 -0
- /package/dist/{services → domains/anchor/services}/anchor/anchor-interfaces.js +0 -0
- /package/dist/{services → domains/anchor/services}/anchor/index.d.ts +0 -0
- /package/dist/{services → domains/anchor/services}/anchor/index.js +0 -0
- /package/dist/{services → domains/embedding/services}/embedding-service.d.ts +0 -0
- /package/dist/{services → domains/embedding/services}/minilm-embedding-service.js +0 -0
- /package/dist/{services → domains/embedding/services}/vector-compatibility-service.js +0 -0
- /package/dist/{algorithms → domains/forgetting/algorithms}/forgetting-algorithm.d.ts +0 -0
- /package/dist/{algorithms → domains/forgetting/algorithms}/forgetting-algorithm.js +0 -0
- /package/dist/{algorithms → domains/forgetting/algorithms}/spaced-repetition.d.ts +0 -0
- /package/dist/{algorithms → domains/forgetting/algorithms}/spaced-repetition.js +0 -0
- /package/dist/{factories → domains/forgetting/factories}/spaced-repetition.factory.js +0 -0
- /package/dist/{services → domains/forgetting/services}/forgetting-policy-service.d.ts +0 -0
- /package/dist/{services → domains/forgetting/services}/spaced-repetition/interval-calculation.service.js +0 -0
- /package/dist/{services → domains/forgetting/services}/spaced-repetition/optimal-interval.service.js +0 -0
- /package/dist/{services → domains/forgetting/services}/spaced-repetition/performance-analysis.service.js +0 -0
- /package/dist/{services → domains/forgetting/services}/spaced-repetition/priority-calculation.service.js +0 -0
- /package/dist/{services → domains/forgetting/services}/spaced-repetition/recall-probability.service.js +0 -0
- /package/dist/{services → domains/forgetting/services}/spaced-repetition/review-scheduling.service.js +0 -0
- /package/dist/{services → domains/forgetting/services}/spaced-repetition/spaced-repetition-container.js +0 -0
- /package/dist/{repositories → domains/memory/repositories}/core-memory-repository.d.ts +0 -0
- /package/dist/{repositories → domains/memory/repositories}/core-memory-repository.js +0 -0
- /package/dist/{repositories → domains/memory/repositories}/knowledge-vault-repository.d.ts +0 -0
- /package/dist/{repositories → domains/memory/repositories}/knowledge-vault-repository.js +0 -0
- /package/dist/{services → domains/memory/services}/core-memory-cache-service.d.ts +0 -0
- /package/dist/{services → domains/memory/services}/core-memory-cache-service.js +0 -0
- /package/dist/{services → domains/memory/services}/core-memory-service.d.ts +0 -0
- /package/dist/{services → domains/memory/services}/core-memory-service.js +0 -0
- /package/dist/{services → domains/memory/services}/knowledge-vault-service.d.ts +0 -0
- /package/dist/{services → domains/memory/services}/knowledge-vault-service.js +0 -0
- /package/dist/{services → domains/monitoring/services}/alert-notification-service.js +0 -0
- /package/dist/{services → domains/monitoring/services}/error-logging-service.d.ts +0 -0
- /package/dist/{services → domains/monitoring/services}/error-logging-service.js +0 -0
- /package/dist/{services → domains/monitoring/services}/performance-alert-service.d.ts +0 -0
- /package/dist/{services → domains/monitoring/services}/performance-alert-service.js +0 -0
- /package/dist/{services → domains/monitoring/services}/performance-monitor.d.ts +0 -0
- /package/dist/{tools → domains/monitoring/tools}/error-stats.js +0 -0
- /package/dist/{tools → domains/monitoring/tools}/performance-alerts.js +0 -0
- /package/dist/{tools → domains/monitoring/tools}/resolve-error.js +0 -0
- /package/dist/{algorithms → domains/search/algorithms}/search-ranking.d.ts +0 -0
- /package/dist/{algorithms → domains/search/algorithms}/search-ranking.js +0 -0
- /package/dist/{algorithms → domains/search/algorithms}/vector-search-engine-migration.d.ts +0 -0
- /package/dist/{algorithms → domains/search/algorithms}/vector-search-engine-refactored.js +0 -0
- /package/dist/{algorithms → domains/search/algorithms}/vector-search-engine.d.ts +0 -0
- /package/dist/{algorithms → domains/search/algorithms}/vector-search-engine.js +0 -0
- /package/dist/{factories → domains/search/factories}/hybrid-search.factory.d.ts +0 -0
- /package/dist/{factories → domains/search/factories}/vector-search.factory.d.ts +0 -0
- /package/dist/{services → domains/search/services}/vector-search/vector-index-manager.js +0 -0
- /package/dist/{services → domains/search/services}/vector-search/vector-search-container.d.ts +0 -0
- /package/dist/{services → domains/search/services}/vector-search/vector-search-result-normalizer.js +0 -0
- /package/dist/{services → infrastructure}/async-optimizer.d.ts +0 -0
- /package/dist/{services → infrastructure}/async-optimizer.js +0 -0
- /package/dist/{services → infrastructure/cache}/cache-service.d.ts +0 -0
- /package/dist/{services → infrastructure/cache}/cache-service.js +0 -0
- /package/dist/{services → infrastructure}/consolidation-score-service.js +0 -0
- /package/dist/{database → infrastructure/database/database}/init.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migrate.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/backup-manager.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/dependency-validator.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/dependency-validator.js +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migration-detector.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migration-detector.js +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migration-logger.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migration-runner.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migration-runner.js +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migrations/002-mirix-schema-expansion.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migrations/002-mirix-schema-expansion.js +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migrations/003-consolidation-score-fields.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migrations/003-consolidation-score-fields.js +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migrations/004-anchor-table.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migrations/004-anchor-table.js +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migrations/005-relation-engine-schema.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migrations/005-relation-engine-schema.js +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/migrations/006-fts5-reflection-notes.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/schema-version-manager.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/types.d.ts +0 -0
- /package/dist/{database → infrastructure/database/database}/migration/types.js +0 -0
- /package/dist/{services → infrastructure/database}/database-optimizer.d.ts +0 -0
- /package/dist/{services → infrastructure/database}/migration-history-service.js +0 -0
- /package/dist/{services → infrastructure/database}/migration-monitor-service.js +0 -0
- /package/dist/{config → shared/config}/environment.d.ts +0 -0
- /package/dist/{config → shared/config}/environment.js +0 -0
- /package/dist/{config → shared/config}/index.d.ts +0 -0
- /package/dist/{config → shared/config}/ranking-weights-loader.d.ts +0 -0
- /package/dist/{config → shared/config}/ranking-weights-loader.js +0 -0
- /package/dist/{config → shared/config}/vector-search.config.d.ts +0 -0
- /package/dist/{config → shared/config}/vector-search.config.js +0 -0
- /package/dist/{constants → shared/constants}/relation-constants.d.ts +0 -0
- /package/dist/{constants → shared/constants}/relation-constants.js +0 -0
- /package/dist/{interfaces → shared/interfaces}/database.interface.d.ts +0 -0
- /package/dist/{interfaces → shared/interfaces}/database.interface.js +0 -0
- /package/dist/{interfaces → shared/interfaces}/spaced-repetition.interface.d.ts +0 -0
- /package/dist/{interfaces → shared/interfaces}/spaced-repetition.interface.js +0 -0
- /package/dist/{types → shared/types}/alerts.types.d.ts +0 -0
- /package/dist/{types → shared/types}/alerts.types.js +0 -0
- /package/dist/{types → shared/types}/consolidation-score.types.d.ts +0 -0
- /package/dist/{types → shared/types}/consolidation-score.types.js +0 -0
- /package/dist/{types → shared/types}/embedding-provider-monitoring.types.d.ts +0 -0
- /package/dist/{types → shared/types}/embedding-provider-monitoring.types.js +0 -0
- /package/dist/{types → shared/types}/embedding.types.d.ts +0 -0
- /package/dist/{types → shared/types}/embedding.types.js +0 -0
- /package/dist/{types → shared/types}/index.js +0 -0
- /package/dist/{types → shared/types}/migration.types.d.ts +0 -0
- /package/dist/{types → shared/types}/migration.types.js +0 -0
- /package/dist/{types → shared/types}/relation-graph.d.ts +0 -0
- /package/dist/{types → shared/types}/relation-graph.js +0 -0
- /package/dist/{types → shared/types}/relation.d.ts +0 -0
- /package/dist/{types → shared/types}/relation.js +0 -0
- /package/dist/{types → shared/types}/spaced-repetition.types.d.ts +0 -0
- /package/dist/{types → shared/types}/spaced-repetition.types.js +0 -0
- /package/dist/{types → shared/types}/vector-search.types.d.ts +0 -0
- /package/dist/{types → shared/types}/vector-search.types.js +0 -0
- /package/dist/{utils → shared/utils}/cache-key-generator.d.ts +0 -0
- /package/dist/{utils → shared/utils}/cache-key-generator.js +0 -0
- /package/dist/{utils → shared/utils}/configuration-validator.d.ts +0 -0
- /package/dist/{utils → shared/utils}/configuration-validator.js +0 -0
- /package/dist/{utils → shared/utils}/database.d.ts +0 -0
- /package/dist/{utils → shared/utils}/database.js +0 -0
- /package/dist/{utils → shared/utils}/environment-check.d.ts +0 -0
- /package/dist/{utils → shared/utils}/environment-check.js +0 -0
- /package/dist/{utils → shared/utils}/fts5-migration-status.d.ts +0 -0
- /package/dist/{utils → shared/utils}/fts5-migration-status.js +0 -0
- /package/dist/{utils → shared/utils}/logger.d.ts +0 -0
- /package/dist/{utils → shared/utils}/logger.js +0 -0
- /package/dist/{utils → shared/utils}/reflection-notes-merge.d.ts +0 -0
- /package/dist/{utils → shared/utils}/reflection-notes-merge.js +0 -0
- /package/dist/{utils → shared/utils}/reflection-notes-normalize.d.ts +0 -0
- /package/dist/{utils → shared/utils}/reflection-notes-normalize.js +0 -0
- /package/dist/{utils → shared/utils}/reflection-notes-schema.d.ts +0 -0
- /package/dist/{utils → shared/utils}/reflection-notes-schema.js +0 -0
- /package/dist/{utils → shared/utils}/relation-visualizer.d.ts +0 -0
- /package/dist/{utils → shared/utils}/relation-visualizer.js +0 -0
- /package/dist/{utils → shared/utils}/stopwords.d.ts +0 -0
- /package/dist/{utils → shared/utils}/stopwords.js +0 -0
- /package/dist/{utils → shared/utils}/type-guards.d.ts +0 -0
- /package/dist/{utils → shared/utils}/type-guards.js +0 -0
- /package/dist/{utils → shared/utils}/type-param-validator.d.ts +0 -0
- /package/dist/{utils → shared/utils}/type-param-validator.js +0 -0
- /package/dist/{utils → shared/utils}/write-coalescing.d.ts +0 -0
- /package/dist/{utils → shared/utils}/write-coalescing.js +0 -0
package/dist/infrastructure/database/database/migration/migrations/006-fts5-reflection-notes.js
ADDED
|
@@ -0,0 +1,467 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Migration: 006 - FTS5 Reflection Notes Column
|
|
3
|
+
* Description: Create new FTS5 table (memory_item_fts_new) with reflection_notes column for Zero-Downtime migration
|
|
4
|
+
* Version: 6.0
|
|
5
|
+
* Date: 2025-01-XX
|
|
6
|
+
*
|
|
7
|
+
* This migration implements Step 1 of the Zero-Downtime migration strategy:
|
|
8
|
+
* - Creates memory_item_fts_new table with reflection_notes column
|
|
9
|
+
* - Does NOT re-index existing data (handled in Step 2)
|
|
10
|
+
* - Does NOT create triggers (handled in Step 3)
|
|
11
|
+
* - Does NOT replace tables (handled in Step 4)
|
|
12
|
+
*
|
|
13
|
+
* See docs/architecture/zero-downtime-fts5-migration.md for full migration strategy.
|
|
14
|
+
*/
|
|
15
|
+
import { readFileSync } from 'fs';
|
|
16
|
+
import { join, dirname } from 'path';
|
|
17
|
+
import { fileURLToPath } from 'url';
|
|
18
|
+
import { DependencyValidator } from '../dependency-validator.js';
|
|
19
|
+
import { normalizeReflectionNotes } from '../../../../../shared/utils/reflection-notes-normalize.js';
|
|
20
|
+
import { initializeMigrationStatusTable, setMigrationStatus, getMigrationStatus } from '../../../../../shared/utils/fts5-migration-status.js';
|
|
21
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
22
|
+
const __dirname = dirname(__filename);
|
|
23
|
+
/**
|
|
24
|
+
* FTS5 Reflection Notes Migration (Step 1: New Table Creation)
|
|
25
|
+
*
|
|
26
|
+
* This migration:
|
|
27
|
+
* 1. Creates memory_item_fts_new virtual table with reflection_notes column
|
|
28
|
+
* 2. Validates table creation
|
|
29
|
+
* 3. Does NOT re-index existing data (handled separately)
|
|
30
|
+
* 4. Does NOT create triggers (handled separately)
|
|
31
|
+
*/
|
|
32
|
+
export class FTS5ReflectionNotesMigration {
|
|
33
|
+
version = '6.0';
|
|
34
|
+
name = 'fts5-reflection-notes';
|
|
35
|
+
description = 'Create new FTS5 table (memory_item_fts_new) with reflection_notes column for Zero-Downtime migration';
|
|
36
|
+
/**
|
|
37
|
+
* Load SQL file content
|
|
38
|
+
*/
|
|
39
|
+
loadSQLFile(filename) {
|
|
40
|
+
const filePath = join(__dirname, filename);
|
|
41
|
+
return readFileSync(filePath, 'utf-8');
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Execute SQL script
|
|
45
|
+
* Removes transaction commands (BEGIN TRANSACTION, COMMIT) as MigrationRunner manages transactions
|
|
46
|
+
*/
|
|
47
|
+
executeSQL(db, sql) {
|
|
48
|
+
// MigrationRunner가 트랜잭션을 관리하므로 SQL에서 트랜잭션 명령 제거
|
|
49
|
+
let cleanedSQL = sql
|
|
50
|
+
// BEGIN TRANSACTION 제거
|
|
51
|
+
.replace(/BEGIN\s+TRANSACTION\s*;/gi, '')
|
|
52
|
+
// COMMIT 제거
|
|
53
|
+
.replace(/COMMIT\s*;/gi, '')
|
|
54
|
+
// PRAGMA foreign_keys 명령은 유지 (트랜잭션 외부에서도 작동)
|
|
55
|
+
.trim();
|
|
56
|
+
// 빈 줄 제거 및 정리
|
|
57
|
+
cleanedSQL = cleanedSQL
|
|
58
|
+
.split('\n')
|
|
59
|
+
.map(line => line.trim())
|
|
60
|
+
.filter(line => line.length > 0)
|
|
61
|
+
.join('\n');
|
|
62
|
+
if (cleanedSQL.length > 0) {
|
|
63
|
+
db.exec(cleanedSQL);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Check if virtual table exists
|
|
68
|
+
*/
|
|
69
|
+
virtualTableExists(db, tableName) {
|
|
70
|
+
const result = db.prepare(`
|
|
71
|
+
SELECT name FROM sqlite_master
|
|
72
|
+
WHERE type='table' AND name=?
|
|
73
|
+
`).get(tableName);
|
|
74
|
+
return !!result;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Validate before migration
|
|
78
|
+
*/
|
|
79
|
+
async validateBefore(db) {
|
|
80
|
+
// Check if memory_item table exists (required for content table reference)
|
|
81
|
+
const memoryItemExists = db.prepare(`
|
|
82
|
+
SELECT name FROM sqlite_master
|
|
83
|
+
WHERE type='table' AND name=?
|
|
84
|
+
`).get('memory_item');
|
|
85
|
+
if (!memoryItemExists) {
|
|
86
|
+
throw new Error('memory_item table does not exist. Cannot proceed with migration.');
|
|
87
|
+
}
|
|
88
|
+
// Check if migration has already been applied
|
|
89
|
+
if (this.virtualTableExists(db, 'memento_schema_version')) {
|
|
90
|
+
const version = db.prepare(`
|
|
91
|
+
SELECT version FROM memento_schema_version WHERE version = ?
|
|
92
|
+
`).get('6.0');
|
|
93
|
+
if (version) {
|
|
94
|
+
throw new Error('Migration 006 has already been applied. Current schema version: 6.0');
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
// Check if memory_item_fts_new table already exists (should not exist)
|
|
98
|
+
if (this.virtualTableExists(db, 'memory_item_fts_new')) {
|
|
99
|
+
throw new Error('memory_item_fts_new table already exists. Migration may have been partially applied.');
|
|
100
|
+
}
|
|
101
|
+
// Check if FTS5 is available
|
|
102
|
+
try {
|
|
103
|
+
db.exec('CREATE VIRTUAL TABLE IF NOT EXISTS test_fts5 USING fts5(content)');
|
|
104
|
+
db.exec('DROP TABLE IF EXISTS test_fts5');
|
|
105
|
+
}
|
|
106
|
+
catch (error) {
|
|
107
|
+
throw new Error('FTS5 is not available. Cannot proceed with migration.');
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Re-index existing data from memory_item to memory_item_fts_new
|
|
112
|
+
*
|
|
113
|
+
* This implements Step 2 of the Zero-Downtime migration strategy:
|
|
114
|
+
* - Processes data in batches (1000 records per batch)
|
|
115
|
+
* - Normalizes reflection_notes using normalizeReflectionNotes utility
|
|
116
|
+
* - Commits each batch separately for performance and safety
|
|
117
|
+
* - Logs progress every 10%
|
|
118
|
+
*/
|
|
119
|
+
async reindexExistingData(db) {
|
|
120
|
+
const BATCH_SIZE = 1000;
|
|
121
|
+
const BATCH_DELAY_MS = 10;
|
|
122
|
+
// Get total record count
|
|
123
|
+
const totalCount = db.prepare(`
|
|
124
|
+
SELECT COUNT(*) as count FROM memory_item
|
|
125
|
+
`).get();
|
|
126
|
+
const totalRecords = totalCount.count;
|
|
127
|
+
if (totalRecords === 0) {
|
|
128
|
+
// stderr로 로그 출력 (MCP 프로토콜 준수)
|
|
129
|
+
process.stderr.write('[Migration 006] No records to re-index\n');
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
// stderr로 로그 출력 (MCP 프로토콜 준수)
|
|
133
|
+
process.stderr.write(`[Migration 006] Starting re-indexing: ${totalRecords} records\n`);
|
|
134
|
+
let processedCount = 0;
|
|
135
|
+
let offset = 0;
|
|
136
|
+
let lastLoggedPercent = -1;
|
|
137
|
+
// Prepare statements
|
|
138
|
+
const selectStmt = db.prepare(`
|
|
139
|
+
SELECT rowid, content, tags, source, reflection_notes
|
|
140
|
+
FROM memory_item
|
|
141
|
+
ORDER BY rowid
|
|
142
|
+
LIMIT ? OFFSET ?
|
|
143
|
+
`);
|
|
144
|
+
const insertStmt = db.prepare(`
|
|
145
|
+
INSERT INTO memory_item_fts_new(rowid, content, tags, source, reflection_notes)
|
|
146
|
+
VALUES (?, ?, ?, ?, ?)
|
|
147
|
+
`);
|
|
148
|
+
// Process in batches
|
|
149
|
+
// Note: MigrationRunner가 이미 트랜잭션을 관리하므로 중첩 트랜잭션을 사용하지 않음
|
|
150
|
+
// 모든 배치 처리는 MigrationRunner의 단일 트랜잭션 내에서 실행됨
|
|
151
|
+
while (offset < totalRecords) {
|
|
152
|
+
try {
|
|
153
|
+
// Fetch batch
|
|
154
|
+
const batch = selectStmt.all(BATCH_SIZE, offset);
|
|
155
|
+
if (batch.length === 0) {
|
|
156
|
+
break;
|
|
157
|
+
}
|
|
158
|
+
// Insert each record with normalized reflection_notes
|
|
159
|
+
for (const record of batch) {
|
|
160
|
+
// Normalize reflection_notes for FTS5 indexing
|
|
161
|
+
const normalizedReflectionNotes = normalizeReflectionNotes(record.reflection_notes);
|
|
162
|
+
insertStmt.run(record.rowid, record.content, record.tags, record.source, normalizedReflectionNotes || null // Empty string becomes null
|
|
163
|
+
);
|
|
164
|
+
}
|
|
165
|
+
processedCount += batch.length;
|
|
166
|
+
offset += BATCH_SIZE;
|
|
167
|
+
// Log progress every 10%
|
|
168
|
+
const currentPercent = Math.floor((processedCount / totalRecords) * 100);
|
|
169
|
+
if (currentPercent >= lastLoggedPercent + 10 || processedCount === totalRecords) {
|
|
170
|
+
// stderr로 로그 출력 (MCP 프로토콜 준수)
|
|
171
|
+
process.stderr.write(`[Migration 006] Re-indexing progress: ${processedCount}/${totalRecords} (${currentPercent}%)\n`);
|
|
172
|
+
lastLoggedPercent = currentPercent;
|
|
173
|
+
}
|
|
174
|
+
// Delay between batches to minimize impact on other operations
|
|
175
|
+
if (offset < totalRecords) {
|
|
176
|
+
await new Promise(resolve => setTimeout(resolve, BATCH_DELAY_MS));
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
catch (error) {
|
|
180
|
+
// MigrationRunner가 트랜잭션을 관리하므로 여기서는 에러만 전파
|
|
181
|
+
throw new Error(`Re-indexing failed at batch starting at offset ${offset}: ${error instanceof Error ? error.message : String(error)}`);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
// stderr로 로그 출력 (MCP 프로토콜 준수)
|
|
185
|
+
process.stderr.write(`[Migration 006] Re-indexing completed: ${processedCount} records\n`);
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Create temporary dual triggers for synchronizing new writes during migration
|
|
189
|
+
*
|
|
190
|
+
* This implements Step 3 of the Zero-Downtime migration strategy:
|
|
191
|
+
* - Creates temporary triggers that insert into memory_item_fts_new
|
|
192
|
+
* - Existing triggers continue to insert into memory_item_fts
|
|
193
|
+
* - Both tables are kept in sync during migration
|
|
194
|
+
*
|
|
195
|
+
* Duplicate Insert Prevention:
|
|
196
|
+
* - FTS5 automatically handles duplicate rowid inserts (updates existing record)
|
|
197
|
+
* - Triggers fire only once per INSERT/UPDATE/DELETE event, so duplicates are unlikely
|
|
198
|
+
* - Transaction-level duplicate prevention is handled at application level
|
|
199
|
+
*
|
|
200
|
+
* Note: reflection_notes normalization is applied using normalize_reflection_notes function.
|
|
201
|
+
*/
|
|
202
|
+
createDualTriggers(db) {
|
|
203
|
+
// stderr로 로그 출력 (MCP 프로토콜 준수)
|
|
204
|
+
process.stderr.write('[Migration 006] Creating temporary dual triggers...\n');
|
|
205
|
+
// Register normalize_reflection_notes function before creating triggers
|
|
206
|
+
this.registerNormalizeFunction(db);
|
|
207
|
+
// INSERT trigger: Insert new records into memory_item_fts_new with normalization
|
|
208
|
+
// FTS5 automatically handles duplicate rowid: if rowid exists, it updates the record
|
|
209
|
+
db.exec(`
|
|
210
|
+
CREATE TRIGGER IF NOT EXISTS memory_item_fts_insert_new AFTER INSERT ON memory_item BEGIN
|
|
211
|
+
INSERT INTO memory_item_fts_new(rowid, content, tags, source, reflection_notes)
|
|
212
|
+
VALUES (new.rowid, new.content, new.tags, new.source, normalize_reflection_notes(new.reflection_notes));
|
|
213
|
+
END
|
|
214
|
+
`);
|
|
215
|
+
// UPDATE trigger: Update records in memory_item_fts_new with normalization
|
|
216
|
+
// Delete old record first, then insert new record
|
|
217
|
+
db.exec(`
|
|
218
|
+
CREATE TRIGGER IF NOT EXISTS memory_item_fts_update_new AFTER UPDATE ON memory_item BEGIN
|
|
219
|
+
-- Delete old record
|
|
220
|
+
INSERT INTO memory_item_fts_new(memory_item_fts_new, rowid, content, tags, source, reflection_notes)
|
|
221
|
+
VALUES('delete', old.rowid, old.content, old.tags, old.source, normalize_reflection_notes(old.reflection_notes));
|
|
222
|
+
-- Insert new record
|
|
223
|
+
INSERT INTO memory_item_fts_new(rowid, content, tags, source, reflection_notes)
|
|
224
|
+
VALUES (new.rowid, new.content, new.tags, new.source, normalize_reflection_notes(new.reflection_notes));
|
|
225
|
+
END
|
|
226
|
+
`);
|
|
227
|
+
// DELETE trigger: Delete records from memory_item_fts_new with normalization
|
|
228
|
+
db.exec(`
|
|
229
|
+
CREATE TRIGGER IF NOT EXISTS memory_item_fts_delete_new AFTER DELETE ON memory_item BEGIN
|
|
230
|
+
INSERT INTO memory_item_fts_new(memory_item_fts_new, rowid, content, tags, source, reflection_notes)
|
|
231
|
+
VALUES('delete', old.rowid, old.content, old.tags, old.source, normalize_reflection_notes(old.reflection_notes));
|
|
232
|
+
END
|
|
233
|
+
`);
|
|
234
|
+
// stderr로 로그 출력 (MCP 프로토콜 준수)
|
|
235
|
+
process.stderr.write('[Migration 006] Temporary dual triggers created\n');
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Drop temporary dual triggers
|
|
239
|
+
* Used for rollback or cleanup
|
|
240
|
+
*/
|
|
241
|
+
dropDualTriggers(db) {
|
|
242
|
+
db.exec('DROP TRIGGER IF EXISTS memory_item_fts_insert_new');
|
|
243
|
+
db.exec('DROP TRIGGER IF EXISTS memory_item_fts_update_new');
|
|
244
|
+
db.exec('DROP TRIGGER IF EXISTS memory_item_fts_delete_new');
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Check if trigger exists
|
|
248
|
+
*/
|
|
249
|
+
triggerExists(db, triggerName) {
|
|
250
|
+
const result = db.prepare(`
|
|
251
|
+
SELECT name FROM sqlite_master
|
|
252
|
+
WHERE type='trigger' AND name=?
|
|
253
|
+
`).get(triggerName);
|
|
254
|
+
return !!result;
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Register normalize_reflection_notes user-defined function
|
|
258
|
+
* This function must be registered before triggers that use it
|
|
259
|
+
*
|
|
260
|
+
* Note: SQLite does not support dropping user-defined functions directly.
|
|
261
|
+
* If the function already exists and is in use by active statements,
|
|
262
|
+
* registering it again will fail with "unable to delete/modify user-function due to active statements".
|
|
263
|
+
*
|
|
264
|
+
* To avoid this, we check if the function is already registered and skip re-registration.
|
|
265
|
+
*/
|
|
266
|
+
functionRegistered = false;
|
|
267
|
+
registerNormalizeFunction(db) {
|
|
268
|
+
// 함수가 이미 등록되어 있으면 재등록하지 않음 (active statements 에러 방지)
|
|
269
|
+
if (this.functionRegistered) {
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
try {
|
|
273
|
+
db.function('normalize_reflection_notes', {
|
|
274
|
+
deterministic: true,
|
|
275
|
+
varargs: false
|
|
276
|
+
}, (reflectionNotes) => {
|
|
277
|
+
return normalizeReflectionNotes(reflectionNotes);
|
|
278
|
+
});
|
|
279
|
+
this.functionRegistered = true;
|
|
280
|
+
}
|
|
281
|
+
catch (error) {
|
|
282
|
+
// 함수 등록 실패 시 에러를 다시 던짐 (마이그레이션 실패 처리)
|
|
283
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
284
|
+
if (errorMessage.includes('active statements')) {
|
|
285
|
+
// prepared statement가 활성화되어 있는 경우
|
|
286
|
+
// 함수가 이미 등록되어 있다고 가정하고 계속 진행
|
|
287
|
+
process.stderr.write(`⚠️ 함수 등록 스킵 (이미 등록됨 또는 active statements): ${errorMessage}\n`);
|
|
288
|
+
this.functionRegistered = true; // 재시도 방지
|
|
289
|
+
return;
|
|
290
|
+
}
|
|
291
|
+
throw error;
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
/**
|
|
295
|
+
* Perform atomic table replacement
|
|
296
|
+
*
|
|
297
|
+
* This implements Step 4 of the Zero-Downtime migration strategy:
|
|
298
|
+
* - Drops existing triggers
|
|
299
|
+
* - Drops temporary dual triggers
|
|
300
|
+
* - Drops existing FTS5 table
|
|
301
|
+
* - Renames new table to original name
|
|
302
|
+
* - Creates new triggers with reflection_notes support and normalization
|
|
303
|
+
*
|
|
304
|
+
* All operations are performed in a single transaction for atomicity.
|
|
305
|
+
*/
|
|
306
|
+
performAtomicTableReplacement(db) {
|
|
307
|
+
// stderr로 로그 출력 (MCP 프로토콜 준수)
|
|
308
|
+
process.stderr.write('[Migration 006] Performing atomic table replacement...\n');
|
|
309
|
+
// Register normalize_reflection_notes function before creating triggers
|
|
310
|
+
this.registerNormalizeFunction(db);
|
|
311
|
+
// MigrationRunner가 트랜잭션을 관리하므로 여기서는 트랜잭션을 시작하지 않음
|
|
312
|
+
// All operations are performed within the existing transaction managed by MigrationRunner
|
|
313
|
+
// 1. Drop existing triggers
|
|
314
|
+
db.exec('DROP TRIGGER IF EXISTS memory_item_fts_insert');
|
|
315
|
+
db.exec('DROP TRIGGER IF EXISTS memory_item_fts_update');
|
|
316
|
+
db.exec('DROP TRIGGER IF EXISTS memory_item_fts_delete');
|
|
317
|
+
// 2. Drop temporary dual triggers
|
|
318
|
+
this.dropDualTriggers(db);
|
|
319
|
+
// 3. Drop existing FTS5 table
|
|
320
|
+
db.exec('DROP TABLE IF EXISTS memory_item_fts');
|
|
321
|
+
// 4. Rename new table to original name
|
|
322
|
+
db.exec('ALTER TABLE memory_item_fts_new RENAME TO memory_item_fts');
|
|
323
|
+
// 5. Create new triggers with reflection_notes support and normalization
|
|
324
|
+
// Note: normalize_reflection_notes function must be registered before this migration
|
|
325
|
+
db.exec(`
|
|
326
|
+
CREATE TRIGGER memory_item_fts_insert AFTER INSERT ON memory_item BEGIN
|
|
327
|
+
INSERT INTO memory_item_fts(rowid, content, tags, source, reflection_notes)
|
|
328
|
+
VALUES (new.rowid, new.content, new.tags, new.source, normalize_reflection_notes(new.reflection_notes));
|
|
329
|
+
END
|
|
330
|
+
`);
|
|
331
|
+
db.exec(`
|
|
332
|
+
CREATE TRIGGER memory_item_fts_update AFTER UPDATE ON memory_item BEGIN
|
|
333
|
+
INSERT INTO memory_item_fts(memory_item_fts, rowid, content, tags, source, reflection_notes)
|
|
334
|
+
VALUES('delete', old.rowid, old.content, old.tags, old.source, normalize_reflection_notes(old.reflection_notes));
|
|
335
|
+
INSERT INTO memory_item_fts(rowid, content, tags, source, reflection_notes)
|
|
336
|
+
VALUES (new.rowid, new.content, new.tags, new.source, normalize_reflection_notes(new.reflection_notes));
|
|
337
|
+
END
|
|
338
|
+
`);
|
|
339
|
+
db.exec(`
|
|
340
|
+
CREATE TRIGGER memory_item_fts_delete AFTER DELETE ON memory_item BEGIN
|
|
341
|
+
INSERT INTO memory_item_fts(memory_item_fts, rowid, content, tags, source, reflection_notes)
|
|
342
|
+
VALUES('delete', old.rowid, old.content, old.tags, old.source, normalize_reflection_notes(old.reflection_notes));
|
|
343
|
+
END
|
|
344
|
+
`);
|
|
345
|
+
// stderr로 로그 출력 (MCP 프로토콜 준수)
|
|
346
|
+
process.stderr.write('[Migration 006] Atomic table replacement completed\n');
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* Execute migration (Up)
|
|
350
|
+
*/
|
|
351
|
+
async up(db) {
|
|
352
|
+
// Initialize migration status table
|
|
353
|
+
initializeMigrationStatusTable(db);
|
|
354
|
+
// Update status to 'in_progress'
|
|
355
|
+
setMigrationStatus(db, 'in_progress');
|
|
356
|
+
try {
|
|
357
|
+
// Step 1: Load and execute SQL script (create new table)
|
|
358
|
+
const sqlScript = this.loadSQLFile('006-fts5-reflection-notes.sql');
|
|
359
|
+
this.executeSQL(db, sqlScript);
|
|
360
|
+
// Step 2: Re-index existing data
|
|
361
|
+
await this.reindexExistingData(db);
|
|
362
|
+
// Step 3: Create temporary dual triggers
|
|
363
|
+
this.createDualTriggers(db);
|
|
364
|
+
// Step 4: Perform atomic table replacement
|
|
365
|
+
this.performAtomicTableReplacement(db);
|
|
366
|
+
// Update status to 'completed'
|
|
367
|
+
setMigrationStatus(db, 'completed');
|
|
368
|
+
// Note: Schema version is recorded by MigrationRunner, not here
|
|
369
|
+
// MigrationRunner.recordVersion() will be called after successful migration
|
|
370
|
+
//
|
|
371
|
+
// Note: This migration implements Steps 1, 2, 3, and 4 of the Zero-Downtime migration strategy.
|
|
372
|
+
// Trigger update with reflection_notes normalization (Step 3.8) is handled separately.
|
|
373
|
+
}
|
|
374
|
+
catch (error) {
|
|
375
|
+
// Update status to 'failed' on error
|
|
376
|
+
setMigrationStatus(db, 'failed', error instanceof Error ? error.message : String(error));
|
|
377
|
+
throw error; // Re-throw to trigger rollback
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Rollback migration (Down)
|
|
382
|
+
*/
|
|
383
|
+
async down(db) {
|
|
384
|
+
// Drop temporary dual triggers
|
|
385
|
+
this.dropDualTriggers(db);
|
|
386
|
+
// Drop the new FTS5 table
|
|
387
|
+
db.exec('DROP TABLE IF EXISTS memory_item_fts_new');
|
|
388
|
+
// Update status to 'pending' (재시도 가능하도록)
|
|
389
|
+
try {
|
|
390
|
+
setMigrationStatus(db, 'pending');
|
|
391
|
+
}
|
|
392
|
+
catch (error) {
|
|
393
|
+
// 상태 업데이트 실패는 무시 (롤백은 계속 진행)
|
|
394
|
+
// stderr로 로그 출력 (MCP 프로토콜 준수)
|
|
395
|
+
process.stderr.write(`⚠️ 마이그레이션 상태 롤백 실패: ${error instanceof Error ? error.message : String(error)}\n`);
|
|
396
|
+
}
|
|
397
|
+
// Remove schema version record
|
|
398
|
+
db.prepare('DELETE FROM memento_schema_version WHERE version = ?').run('6.0');
|
|
399
|
+
}
|
|
400
|
+
/**
|
|
401
|
+
* Validate after migration
|
|
402
|
+
*/
|
|
403
|
+
async validateAfter(db) {
|
|
404
|
+
// After atomic table replacement, memory_item_fts_new should not exist
|
|
405
|
+
// and memory_item_fts should exist with reflection_notes column
|
|
406
|
+
// Verify memory_item_fts table exists (renamed from memory_item_fts_new)
|
|
407
|
+
if (!this.virtualTableExists(db, 'memory_item_fts')) {
|
|
408
|
+
throw new Error('memory_item_fts table was not created or renamed');
|
|
409
|
+
}
|
|
410
|
+
// Verify memory_item_fts_new table does not exist (should be renamed)
|
|
411
|
+
if (this.virtualTableExists(db, 'memory_item_fts_new')) {
|
|
412
|
+
throw new Error('memory_item_fts_new table still exists (should be renamed to memory_item_fts)');
|
|
413
|
+
}
|
|
414
|
+
// Verify table structure by checking if it's a virtual table
|
|
415
|
+
const tableInfo = db.prepare(`
|
|
416
|
+
SELECT sql FROM sqlite_master
|
|
417
|
+
WHERE type='table' AND name='memory_item_fts'
|
|
418
|
+
`).get();
|
|
419
|
+
if (!tableInfo) {
|
|
420
|
+
throw new Error('memory_item_fts table information not found');
|
|
421
|
+
}
|
|
422
|
+
// Verify reflection_notes column is included in the table definition
|
|
423
|
+
if (!tableInfo.sql.includes('reflection_notes')) {
|
|
424
|
+
throw new Error('reflection_notes column was not included in memory_item_fts table');
|
|
425
|
+
}
|
|
426
|
+
// Verify content table reference
|
|
427
|
+
if (!tableInfo.sql.includes("content='memory_item'")) {
|
|
428
|
+
throw new Error("content table reference 'memory_item' was not found in memory_item_fts table");
|
|
429
|
+
}
|
|
430
|
+
// Verify content_rowid reference
|
|
431
|
+
if (!tableInfo.sql.includes("content_rowid='rowid'")) {
|
|
432
|
+
throw new Error("content_rowid='rowid' was not found in memory_item_fts table");
|
|
433
|
+
}
|
|
434
|
+
// Verify new triggers were created (temporary dual triggers should be removed)
|
|
435
|
+
const requiredTriggers = [
|
|
436
|
+
'memory_item_fts_insert',
|
|
437
|
+
'memory_item_fts_update',
|
|
438
|
+
'memory_item_fts_delete'
|
|
439
|
+
];
|
|
440
|
+
for (const triggerName of requiredTriggers) {
|
|
441
|
+
if (!this.triggerExists(db, triggerName)) {
|
|
442
|
+
throw new Error(`New trigger ${triggerName} was not created`);
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
// Verify temporary dual triggers were removed
|
|
446
|
+
const temporaryTriggers = [
|
|
447
|
+
'memory_item_fts_insert_new',
|
|
448
|
+
'memory_item_fts_update_new',
|
|
449
|
+
'memory_item_fts_delete_new'
|
|
450
|
+
];
|
|
451
|
+
for (const triggerName of temporaryTriggers) {
|
|
452
|
+
if (this.triggerExists(db, triggerName)) {
|
|
453
|
+
throw new Error(`Temporary dual trigger ${triggerName} still exists (should be removed)`);
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
// Verify existing dependencies are intact using DependencyValidator
|
|
457
|
+
const dependencyReport = await DependencyValidator.validateAll(db);
|
|
458
|
+
if (!dependencyReport.success) {
|
|
459
|
+
const errors = dependencyReport.results
|
|
460
|
+
.filter(r => !r.success)
|
|
461
|
+
.map(r => `${r.name}: ${r.error}`)
|
|
462
|
+
.join('; ');
|
|
463
|
+
throw new Error(`Dependency validation failed: ${errors}`);
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
//# sourceMappingURL=006-fts5-reflection-notes.js.map
|
package/dist/infrastructure/database/database/migration/migrations/006-fts5-reflection-notes.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"006-fts5-reflection-notes.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/database/database/migration/migrations/006-fts5-reflection-notes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-version-manager.d.ts","sourceRoot":"","sources":["../../../../../src/infrastructure/database/database/migration/schema-version-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGhD;;GAEG;AACH,qBAAa,oBAAoB;IACnB,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,QAAQ,CAAC,QAAQ;IAIzC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAkB1B;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgBjD;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAc7C;;OAEG;IACG,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAczD;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB1D;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYnD;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAmBjD"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 스키마 버전 관리자
|
|
3
|
+
*
|
|
4
|
+
* memento_schema_version 테이블을 사용하여 스키마 버전을 추적하고 관리합니다.
|
|
5
|
+
*/
|
|
6
|
+
import { DatabaseUtils } from '../../../../shared/utils/database.js';
|
|
7
|
+
/**
|
|
8
|
+
* 스키마 버전 관리자
|
|
9
|
+
*/
|
|
10
|
+
export class SchemaVersionManager {
|
|
11
|
+
db;
|
|
12
|
+
constructor(db) {
|
|
13
|
+
this.db = db;
|
|
14
|
+
this.ensureVersionTable();
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* 스키마 버전 테이블 생성 (없는 경우)
|
|
18
|
+
*/
|
|
19
|
+
ensureVersionTable() {
|
|
20
|
+
try {
|
|
21
|
+
DatabaseUtils.run(this.db, `
|
|
22
|
+
CREATE TABLE IF NOT EXISTS memento_schema_version (
|
|
23
|
+
version TEXT PRIMARY KEY,
|
|
24
|
+
applied_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
25
|
+
migration_name TEXT NOT NULL,
|
|
26
|
+
checksum TEXT,
|
|
27
|
+
applied_by TEXT DEFAULT 'system',
|
|
28
|
+
description TEXT
|
|
29
|
+
)
|
|
30
|
+
`);
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
console.error('❌ 스키마 버전 테이블 생성 실패:', error);
|
|
34
|
+
throw error;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* 현재 스키마 버전 조회
|
|
39
|
+
*/
|
|
40
|
+
async getCurrentVersion() {
|
|
41
|
+
try {
|
|
42
|
+
const result = DatabaseUtils.get(this.db, `
|
|
43
|
+
SELECT version
|
|
44
|
+
FROM memento_schema_version
|
|
45
|
+
ORDER BY applied_at DESC
|
|
46
|
+
LIMIT 1
|
|
47
|
+
`);
|
|
48
|
+
return result?.version || null;
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
// 테이블이 없는 경우 null 반환
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* 모든 적용된 버전 목록 조회
|
|
57
|
+
*/
|
|
58
|
+
async getAppliedVersions() {
|
|
59
|
+
try {
|
|
60
|
+
const results = DatabaseUtils.all(this.db, `
|
|
61
|
+
SELECT version
|
|
62
|
+
FROM memento_schema_version
|
|
63
|
+
ORDER BY applied_at ASC
|
|
64
|
+
`);
|
|
65
|
+
return results.map((r) => r.version);
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
return [];
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* 특정 버전이 적용되었는지 확인
|
|
73
|
+
*/
|
|
74
|
+
async isVersionApplied(version) {
|
|
75
|
+
try {
|
|
76
|
+
const result = DatabaseUtils.get(this.db, `
|
|
77
|
+
SELECT version
|
|
78
|
+
FROM memento_schema_version
|
|
79
|
+
WHERE version = ?
|
|
80
|
+
`, [version]);
|
|
81
|
+
return !!result;
|
|
82
|
+
}
|
|
83
|
+
catch (error) {
|
|
84
|
+
return false;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* 스키마 버전 기록
|
|
89
|
+
*/
|
|
90
|
+
async recordVersion(version) {
|
|
91
|
+
try {
|
|
92
|
+
DatabaseUtils.run(this.db, `
|
|
93
|
+
INSERT INTO memento_schema_version (version, migration_name, checksum, applied_by, description)
|
|
94
|
+
VALUES (?, ?, ?, ?, ?)
|
|
95
|
+
`, [
|
|
96
|
+
version.version,
|
|
97
|
+
version.migrationName,
|
|
98
|
+
version.checksum || null,
|
|
99
|
+
version.appliedBy || 'system',
|
|
100
|
+
version.description || null
|
|
101
|
+
]);
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
console.error(`❌ 스키마 버전 기록 실패 (${version.version}):`, error);
|
|
105
|
+
throw error;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* 스키마 버전 삭제 (롤백 시 사용)
|
|
110
|
+
*/
|
|
111
|
+
async removeVersion(version) {
|
|
112
|
+
try {
|
|
113
|
+
DatabaseUtils.run(this.db, `
|
|
114
|
+
DELETE FROM memento_schema_version
|
|
115
|
+
WHERE version = ?
|
|
116
|
+
`, [version]);
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
console.error(`❌ 스키마 버전 삭제 실패 (${version}):`, error);
|
|
120
|
+
throw error;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* 모든 스키마 버전 정보 조회
|
|
125
|
+
*/
|
|
126
|
+
async getAllVersions() {
|
|
127
|
+
try {
|
|
128
|
+
const results = DatabaseUtils.all(this.db, `
|
|
129
|
+
SELECT version, applied_at, migration_name, checksum, applied_by
|
|
130
|
+
FROM memento_schema_version
|
|
131
|
+
ORDER BY applied_at ASC
|
|
132
|
+
`);
|
|
133
|
+
return results.map((r) => ({
|
|
134
|
+
version: r.version,
|
|
135
|
+
appliedAt: new Date(r.applied_at),
|
|
136
|
+
migrationName: r.migration_name,
|
|
137
|
+
checksum: r.checksum || undefined,
|
|
138
|
+
appliedBy: r.applied_by || 'system'
|
|
139
|
+
}));
|
|
140
|
+
}
|
|
141
|
+
catch (error) {
|
|
142
|
+
return [];
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=schema-version-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-version-manager.js","sourceRoot":"","sources":["../../../../../src/infrastructure/database/database/migration/schema-version-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAErE;;GAEG;AACH,MAAM,OAAO,oBAAoB;IACX;IAApB,YAAoB,EAAqB;QAArB,OAAE,GAAF,EAAE,CAAmB;QACvC,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACK,kBAAkB;QACxB,IAAI,CAAC;YACH,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;;;;;;;;;OAS1B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;YAC5C,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;;;;;OAKzC,CAAC,CAAC;YAEH,OAAO,MAAM,EAAE,OAAO,IAAI,IAAI,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,qBAAqB;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB;QACtB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;;;;OAI1C,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,OAAe;QACpC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;;;;OAIzC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;YAEd,OAAO,CAAC,CAAC,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,OAAsB;QACxC,IAAI,CAAC;YACH,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;;;OAG1B,EAAE;gBACD,OAAO,CAAC,OAAO;gBACf,OAAO,CAAC,aAAa;gBACrB,OAAO,CAAC,QAAQ,IAAI,IAAI;gBACxB,OAAO,CAAC,SAAS,IAAI,QAAQ;gBAC7B,OAAO,CAAC,WAAW,IAAI,IAAI;aAC5B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,mBAAmB,OAAO,CAAC,OAAO,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,OAAe;QACjC,IAAI,CAAC;YACH,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;;;OAG1B,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,mBAAmB,OAAO,IAAI,EAAE,KAAK,CAAC,CAAC;YACrD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;;;;OAI1C,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;gBAC9B,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;gBACjC,aAAa,EAAE,CAAC,CAAC,cAAc;gBAC/B,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,SAAS;gBACjC,SAAS,EAAE,CAAC,CAAC,UAAU,IAAI,QAAQ;aACpC,CAAC,CAAC,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/infrastructure/database/database/migration/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzC;;;OAGG;IACH,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3C;;;;OAIG;IACH,cAAc,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErD;;;;OAIG;IACH,aAAa,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrD;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,SAAS,EAAE,IAAI,CAAC;IAEhB;;OAEG;IACH,OAAO,CAAC,EAAE,IAAI,CAAC;IAEf;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,SAAS,EAAE,IAAI,CAAC;IAEhB;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/infrastructure/database/database/migration/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Database Optimize Tool - 데이터베이스 최적화 도구
|
|
3
|
+
*/
|
|
4
|
+
import { BaseTool } from '../../tools/base-tool.js';
|
|
5
|
+
import type { ToolContext, ToolResult } from '../../tools/types.js';
|
|
6
|
+
export declare class DatabaseOptimizeTool extends BaseTool {
|
|
7
|
+
constructor();
|
|
8
|
+
handle(params: any, context: ToolContext): Promise<ToolResult>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=database-optimize-tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database-optimize-tool.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/database/database-optimize-tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAQpE,qBAAa,oBAAqB,SAAQ,QAAQ;;IAuB1C,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;CAyCrE"}
|