@memberjunction/db-auto-doc 6.1.4 → 6.2.0-edge.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/DBAutoDocAPI.d.ts +23 -0
- package/dist/api/DBAutoDocAPI.d.ts.map +1 -1
- package/dist/api/DBAutoDocAPI.js +20 -4
- package/dist/api/DBAutoDocAPI.js.map +1 -1
- package/dist/commands/export.js +4 -4
- package/dist/commands/generate-queries.js +11 -11
- package/dist/core/AnalysisEngine.d.ts +37 -0
- package/dist/core/AnalysisEngine.d.ts.map +1 -1
- package/dist/core/AnalysisEngine.js +60 -16
- package/dist/core/AnalysisEngine.js.map +1 -1
- package/dist/core/AnalysisOrchestrator.d.ts +2 -0
- package/dist/core/AnalysisOrchestrator.d.ts.map +1 -1
- package/dist/core/AnalysisOrchestrator.js +33 -29
- package/dist/core/AnalysisOrchestrator.js.map +1 -1
- package/dist/core/BackpropagationEngine.d.ts +7 -0
- package/dist/core/BackpropagationEngine.d.ts.map +1 -1
- package/dist/core/BackpropagationEngine.js +10 -2
- package/dist/core/BackpropagationEngine.js.map +1 -1
- package/dist/core/ConvergenceDetector.d.ts +4 -0
- package/dist/core/ConvergenceDetector.d.ts.map +1 -1
- package/dist/core/ConvergenceDetector.js +10 -2
- package/dist/core/ConvergenceDetector.js.map +1 -1
- package/dist/core/GuardrailsManager.d.ts +16 -0
- package/dist/core/GuardrailsManager.d.ts.map +1 -1
- package/dist/core/GuardrailsManager.js +40 -8
- package/dist/core/GuardrailsManager.js.map +1 -1
- package/dist/database/Database.d.ts +25 -0
- package/dist/database/Database.d.ts.map +1 -1
- package/dist/database/Database.js +46 -10
- package/dist/database/Database.js.map +1 -1
- package/dist/database/TopologicalSorter.d.ts +4 -0
- package/dist/database/TopologicalSorter.d.ts.map +1 -1
- package/dist/database/TopologicalSorter.js +10 -2
- package/dist/database/TopologicalSorter.js.map +1 -1
- package/dist/database/index.d.ts +1 -1
- package/dist/database/index.d.ts.map +1 -1
- package/dist/database/index.js +1 -1
- package/dist/database/index.js.map +1 -1
- package/dist/discovery/BridgeViewSQLGenerator.d.ts +28 -14
- package/dist/discovery/BridgeViewSQLGenerator.d.ts.map +1 -1
- package/dist/discovery/BridgeViewSQLGenerator.js +62 -31
- package/dist/discovery/BridgeViewSQLGenerator.js.map +1 -1
- package/dist/discovery/ColumnClusterer.d.ts +11 -5
- package/dist/discovery/ColumnClusterer.d.ts.map +1 -1
- package/dist/discovery/ColumnClusterer.js +21 -9
- package/dist/discovery/ColumnClusterer.js.map +1 -1
- package/dist/discovery/ColumnNormalizer.d.ts +28 -16
- package/dist/discovery/ColumnNormalizer.d.ts.map +1 -1
- package/dist/discovery/ColumnNormalizer.js +35 -27
- package/dist/discovery/ColumnNormalizer.js.map +1 -1
- package/dist/discovery/ColumnStatsCache.d.ts +37 -0
- package/dist/discovery/ColumnStatsCache.d.ts.map +1 -1
- package/dist/discovery/ColumnStatsCache.js +87 -23
- package/dist/discovery/ColumnStatsCache.js.map +1 -1
- package/dist/discovery/Composer.d.ts +14 -4
- package/dist/discovery/Composer.d.ts.map +1 -1
- package/dist/discovery/Composer.js +28 -20
- package/dist/discovery/Composer.js.map +1 -1
- package/dist/discovery/DiscoveryEngine.d.ts +16 -8
- package/dist/discovery/DiscoveryEngine.d.ts.map +1 -1
- package/dist/discovery/DiscoveryEngine.js +43 -27
- package/dist/discovery/DiscoveryEngine.js.map +1 -1
- package/dist/discovery/DiscoveryTriggerAnalyzer.d.ts +20 -0
- package/dist/discovery/DiscoveryTriggerAnalyzer.d.ts.map +1 -1
- package/dist/discovery/DiscoveryTriggerAnalyzer.js +27 -7
- package/dist/discovery/DiscoveryTriggerAnalyzer.js.map +1 -1
- package/dist/discovery/EmbeddingProvider.d.ts +6 -4
- package/dist/discovery/EmbeddingProvider.d.ts.map +1 -1
- package/dist/discovery/EmbeddingProvider.js +7 -3
- package/dist/discovery/EmbeddingProvider.js.map +1 -1
- package/dist/discovery/EnumCandidateGate.d.ts +15 -11
- package/dist/discovery/EnumCandidateGate.d.ts.map +1 -1
- package/dist/discovery/EnumCandidateGate.js +21 -13
- package/dist/discovery/EnumCandidateGate.js.map +1 -1
- package/dist/discovery/FKDetector.d.ts +4 -0
- package/dist/discovery/FKDetector.d.ts.map +1 -1
- package/dist/discovery/FKDetector.js +10 -2
- package/dist/discovery/FKDetector.js.map +1 -1
- package/dist/discovery/FKGraphWalker.d.ts +27 -18
- package/dist/discovery/FKGraphWalker.d.ts.map +1 -1
- package/dist/discovery/FKGraphWalker.js +30 -26
- package/dist/discovery/FKGraphWalker.js.map +1 -1
- package/dist/discovery/LLMDiscoveryValidator.d.ts +2 -0
- package/dist/discovery/LLMDiscoveryValidator.d.ts.map +1 -1
- package/dist/discovery/LLMDiscoveryValidator.js +28 -24
- package/dist/discovery/LLMDiscoveryValidator.js.map +1 -1
- package/dist/discovery/LLMSanityChecker.d.ts +5 -3
- package/dist/discovery/LLMSanityChecker.d.ts.map +1 -1
- package/dist/discovery/LLMSanityChecker.js +16 -12
- package/dist/discovery/LLMSanityChecker.js.map +1 -1
- package/dist/discovery/OrganicKeyDetector.d.ts +12 -4
- package/dist/discovery/OrganicKeyDetector.d.ts.map +1 -1
- package/dist/discovery/OrganicKeyDetector.js +36 -27
- package/dist/discovery/OrganicKeyDetector.js.map +1 -1
- package/dist/discovery/OrganicKeyTranslator.d.ts +9 -0
- package/dist/discovery/OrganicKeyTranslator.d.ts.map +1 -1
- package/dist/discovery/OrganicKeyTranslator.js +15 -7
- package/dist/discovery/OrganicKeyTranslator.js.map +1 -1
- package/dist/discovery/PKDetector.d.ts +4 -0
- package/dist/discovery/PKDetector.d.ts.map +1 -1
- package/dist/discovery/PKDetector.js +10 -2
- package/dist/discovery/PKDetector.js.map +1 -1
- package/dist/discovery/SemanticPhase.d.ts +3 -1
- package/dist/discovery/SemanticPhase.d.ts.map +1 -1
- package/dist/discovery/SemanticPhase.js +55 -51
- package/dist/discovery/SemanticPhase.js.map +1 -1
- package/dist/discovery/StructuralPhase.d.ts +9 -3
- package/dist/discovery/StructuralPhase.d.ts.map +1 -1
- package/dist/discovery/StructuralPhase.js +13 -6
- package/dist/discovery/StructuralPhase.js.map +1 -1
- package/dist/discovery/TransitiveBridgeDetector.d.ts +21 -15
- package/dist/discovery/TransitiveBridgeDetector.d.ts.map +1 -1
- package/dist/discovery/TransitiveBridgeDetector.js +62 -51
- package/dist/discovery/TransitiveBridgeDetector.js.map +1 -1
- package/dist/drivers/BaseAutoDocDriver.d.ts +20 -8
- package/dist/drivers/BaseAutoDocDriver.d.ts.map +1 -1
- package/dist/drivers/BaseAutoDocDriver.js +10 -2
- package/dist/drivers/BaseAutoDocDriver.js.map +1 -1
- package/dist/generators/AdditionalSchemaInfoGenerator.d.ts +9 -7
- package/dist/generators/AdditionalSchemaInfoGenerator.d.ts.map +1 -1
- package/dist/generators/AdditionalSchemaInfoGenerator.js +13 -9
- package/dist/generators/AdditionalSchemaInfoGenerator.js.map +1 -1
- package/dist/generators/CSVGenerator.d.ts +2 -0
- package/dist/generators/CSVGenerator.d.ts.map +1 -1
- package/dist/generators/CSVGenerator.js +5 -1
- package/dist/generators/CSVGenerator.js.map +1 -1
- package/dist/generators/HTMLGenerator.d.ts +2 -0
- package/dist/generators/HTMLGenerator.d.ts.map +1 -1
- package/dist/generators/HTMLGenerator.js +5 -1
- package/dist/generators/HTMLGenerator.js.map +1 -1
- package/dist/generators/MarkdownGenerator.d.ts +2 -0
- package/dist/generators/MarkdownGenerator.d.ts.map +1 -1
- package/dist/generators/MarkdownGenerator.js +5 -1
- package/dist/generators/MarkdownGenerator.js.map +1 -1
- package/dist/generators/MermaidGenerator.d.ts +4 -0
- package/dist/generators/MermaidGenerator.d.ts.map +1 -1
- package/dist/generators/MermaidGenerator.js +11 -3
- package/dist/generators/MermaidGenerator.js.map +1 -1
- package/dist/generators/ReportGenerator.d.ts +2 -0
- package/dist/generators/ReportGenerator.d.ts.map +1 -1
- package/dist/generators/ReportGenerator.js +5 -1
- package/dist/generators/ReportGenerator.js.map +1 -1
- package/dist/generators/SQLGenerator.d.ts +2 -0
- package/dist/generators/SQLGenerator.d.ts.map +1 -1
- package/dist/generators/SQLGenerator.js +5 -1
- package/dist/generators/SQLGenerator.js.map +1 -1
- package/dist/generators/SampleQueryGenerator.d.ts +2 -0
- package/dist/generators/SampleQueryGenerator.d.ts.map +1 -1
- package/dist/generators/SampleQueryGenerator.js +22 -18
- package/dist/generators/SampleQueryGenerator.js.map +1 -1
- package/dist/prompts/PromptEngine.d.ts +26 -0
- package/dist/prompts/PromptEngine.d.ts.map +1 -1
- package/dist/prompts/PromptEngine.js +22 -6
- package/dist/prompts/PromptEngine.js.map +1 -1
- package/dist/prompts/PromptFileLoader.d.ts +9 -1
- package/dist/prompts/PromptFileLoader.d.ts.map +1 -1
- package/dist/prompts/PromptFileLoader.js +19 -3
- package/dist/prompts/PromptFileLoader.js.map +1 -1
- package/dist/state/IterationTracker.d.ts +31 -0
- package/dist/state/IterationTracker.d.ts.map +1 -1
- package/dist/state/IterationTracker.js +66 -14
- package/dist/state/IterationTracker.js.map +1 -1
- package/dist/state/StateManager.d.ts +35 -0
- package/dist/state/StateManager.d.ts.map +1 -1
- package/dist/state/StateManager.js +66 -14
- package/dist/state/StateManager.js.map +1 -1
- package/dist/state/StateValidator.d.ts +4 -0
- package/dist/state/StateValidator.d.ts.map +1 -1
- package/dist/state/StateValidator.js +12 -4
- package/dist/state/StateValidator.js.map +1 -1
- package/dist/types/discovery.d.ts +14 -14
- package/dist/types/organic-keys.d.ts +16 -12
- package/dist/types/organic-keys.d.ts.map +1 -1
- package/dist/types/organic-keys.js +15 -7
- package/dist/types/organic-keys.js.map +1 -1
- package/dist/types/sample-queries.d.ts +13 -13
- package/dist/utils/config-loader.d.ts +6 -0
- package/dist/utils/config-loader.d.ts.map +1 -1
- package/dist/utils/config-loader.js +15 -3
- package/dist/utils/config-loader.js.map +1 -1
- package/dist/utils/ensureArray.d.ts +2 -0
- package/dist/utils/ensureArray.d.ts.map +1 -1
- package/dist/utils/ensureArray.js +5 -1
- package/dist/utils/ensureArray.js.map +1 -1
- package/dist/utils/json.d.ts +6 -0
- package/dist/utils/json.d.ts.map +1 -1
- package/dist/utils/json.js +20 -8
- package/dist/utils/json.js.map +1 -1
- package/dist/utils/llm-factory.d.ts +6 -0
- package/dist/utils/llm-factory.d.ts.map +1 -1
- package/dist/utils/llm-factory.js +15 -3
- package/dist/utils/llm-factory.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnNormalizer.js","sourceRoot":"","sources":["../../src/discovery/ColumnNormalizer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ColumnNormalizer.js","sourceRoot":"","sources":["../../src/discovery/ColumnNormalizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAG5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AA0DrD,MAAM,OAAO,eAAe;IAGxB,YAA6B,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;QAC3C,IAAI,CAAC,GAAG,GAAG,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrE,CAAC;IAED,uEAAuE;IAChE,KAAK,CAAC,cAAc,CACvB,KAA8B,EAC9B,UAAU,GAAG,CAAC;QAMd,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzE,CAAC;QAED,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAe;YACvB,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAC1B,QAAQ,EAAE;gBACN,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE;gBAC1C,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE;aACxC;YACD,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,CAAC;YAC3C,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS;YACxC,cAAc,EAAE,MAAM;SACzB,CAAC;QAEF,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,SAAS,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAClD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;YACrD,IAAI,MAA8B,CAAC;YACnC,IAAI,CAAC;gBACD,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACnD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,SAAS,GAAG,mBAAoB,GAAa,CAAC,OAAO,EAAE,CAAC;gBACxD,SAAS;YACb,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAClB,SAAS,GAAG,oBAAoB,MAAM,CAAC,YAAY,IAAI,SAAS,EAAE,CAAC;gBACnE,SAAS;YACb,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;YAClE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC;YACjC,SAAS,GAAG;gBACR,KAAK,EAAE,SAAS,CAAC,KAAK,GAAG,CAAC,KAAK,EAAE,WAAW,IAAI,CAAC,CAAC;gBAClD,KAAK,EAAE,SAAS,CAAC,KAAK,GAAG,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC;gBACnD,MAAM,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,KAAK,EAAE,gBAAgB,IAAI,CAAC,CAAC;aAC5D,CAAC;YAEF,IAAI,MAAM,GAA4B,IAAI,CAAC;YAC3C,IAAI,CAAC;gBACD,MAAM,GAAG,iBAAiB,CAAmB,OAAO,CAAC,CAAC;YAC1D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,SAAS,GAAG,qBAAsB,GAAa,CAAC,OAAO,qBAAqB,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;gBACpG,IAAI,OAAO,GAAG,UAAU;oBAAE,SAAS;gBACnC,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;YAC1E,CAAC;YACD,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5C,SAAS,GAAG,kDAAkD,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;gBACtF,IAAI,OAAO,GAAG,UAAU;oBAAE,SAAS;gBACnC,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;YAC1E,CAAC;YAED,kEAAkE;YAClE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9E,MAAM,UAAU,GAAuB,EAAE,CAAC;YAC1C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;oBAAE,SAAS;gBACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;gBACxD,IAAI,CAAC,QAAQ;oBAAE,SAAS,CAAC,uCAAuC;gBAChE,UAAU,CAAC,IAAI,CAAC;oBACZ,GAAG,QAAQ;oBACX,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;oBACpC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,IAAI,eAAe;oBACrE,6BAA6B,EAAE,mBAAmB,CAAC,KAAK,CAAC,6BAA6B,CAAC;oBACvF,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,IAAI,EAAE;oBACxD,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB;oBAC9C,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;oBACrC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;iBACnC,CAAC,CAAC;YACP,CAAC;YACD,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAC7C,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,IAAI,+BAA+B,EAAE,CAAC;IAC7G,CAAC;IAED,8CAA8C;IACvC,KAAK,CAAC,cAAc,CACvB,KAA8B,EAC9B,UAAU,GAAG,CAAC;QAMhB,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAChD,CAAC;IAED,4DAA4D;IACrD,KAAK,CAAC,YAAY,CACrB,MAAiC,EACjC,OAA0B,EAAE;QAE5B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;QAErD,MAAM,aAAa,GAAuB,EAAE,CAAC;QAC7C,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,KAAK,IAAI,EAAE;YAC3D,OAAO,IAAI,EAAE,CAAC;gBACV,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;gBACrB,IAAI,GAAG,IAAI,MAAM,CAAC,MAAM;oBAAE,OAAO;gBACjC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC;gBAC7D,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACxB,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACxB,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBAE1B,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;oBACjB,MAAM,EAAE,CAAC;gBACb,CAAC;qBAAM,CAAC;oBACJ,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;wBAC3B,IAAI,CAAC,CAAC,kBAAkB;4BAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;4BAC3C,QAAQ,EAAE,CAAC;oBACpB,CAAC;gBACL,CAAC;gBACD,SAAS,EAAE,CAAC;gBACZ,IAAI,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAChD,CAAC;QACL,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3B,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC;IAC7F,CAAC;IAED,4CAA4C;IACrC,KAAK,CAAC,YAAY,CACrB,MAAiC,EACjC,OAA0B,EAAE;QAE9B,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;CACJ;AAED,+EAA+E;AAE/E,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCA2JY,CAAC;AAEnC;;;;;;GAMG;AACH,SAAS,mBAAmB,CAAC,IAAwB;IACjD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,GAAG,GAAG,IAAI,CAAC;IACf,iCAAiC;IACjC,IAAI,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,GAAG,CAAC,OAAO,CAAC,0BAA0B,EAAE,eAAe,CAAC,CAAC;IACpE,CAAC;IACD,wFAAwF;IACxF,sCAAsC;IACtC,KAAK,MAAM,KAAK,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;QAClD,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE,GAAG,CAAC,CAAC;QAC7C,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACf,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;YACvC,MAAM,CAAC,wDAAwD;QACnE,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAqBD,+EAA+E;AAE/E,SAAS,eAAe,CAAC,KAA8B;IACnD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACpD,IAAI,KAAK,CAAC,iBAAiB;QAAE,KAAK,CAAC,IAAI,CAAC,mBAAmB,QAAQ,CAAC,KAAK,CAAC,iBAAiB,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IACrG,IAAI,KAAK,CAAC,gBAAgB;QAAE,KAAK,CAAC,IAAI,CAAC,mBAAmB,QAAQ,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IACnG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;IACjD,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtM,IAAI,CAAC,CAAC,mBAAmB;YAAE,KAAK,CAAC,IAAI,CAAC,sBAAsB,QAAQ,CAAC,CAAC,CAAC,mBAAmB,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACpG,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY;iBACzB,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;iBACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;iBACnD,IAAI,CAAC,IAAI,CAAC,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,mBAAmB,OAAO,GAAG,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,oFAAoF,CAAC,CAAC;IACjG,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,OAAO,CAAC,CAAS;IACtB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IACpB,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IACpB,OAAO,CAAC,CAAC;AACb,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS,EAAE,CAAS;IAClC,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAClB,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACtD,CAAC"}
|
|
@@ -17,53 +17,82 @@ export declare class ColumnStatsCache {
|
|
|
17
17
|
/**
|
|
18
18
|
* Store column statistics
|
|
19
19
|
*/
|
|
20
|
+
SetColumnStats(stats: CachedColumnStats): void;
|
|
21
|
+
/** @deprecated Use {@link SetColumnStats}. */
|
|
20
22
|
setColumnStats(stats: CachedColumnStats): void;
|
|
21
23
|
/**
|
|
22
24
|
* Get column statistics
|
|
23
25
|
*/
|
|
26
|
+
GetColumnStats(schemaName: string, tableName: string, columnName: string): CachedColumnStats | undefined;
|
|
27
|
+
/** @deprecated Use {@link GetColumnStats}. */
|
|
24
28
|
getColumnStats(schemaName: string, tableName: string, columnName: string): CachedColumnStats | undefined;
|
|
25
29
|
/**
|
|
26
30
|
* Get all column statistics for a table
|
|
27
31
|
*/
|
|
32
|
+
GetTableStats(schemaName: string, tableName: string): TableStatsCache | undefined;
|
|
33
|
+
/** @deprecated Use {@link GetTableStats}. */
|
|
28
34
|
getTableStats(schemaName: string, tableName: string): TableStatsCache | undefined;
|
|
29
35
|
/**
|
|
30
36
|
* Get all columns in a table
|
|
31
37
|
*/
|
|
38
|
+
GetTableColumns(schemaName: string, tableName: string): CachedColumnStats[];
|
|
39
|
+
/** @deprecated Use {@link GetTableColumns}. */
|
|
32
40
|
getTableColumns(schemaName: string, tableName: string): CachedColumnStats[];
|
|
33
41
|
/**
|
|
34
42
|
* Check if column stats exist
|
|
35
43
|
*/
|
|
44
|
+
HasColumnStats(schemaName: string, tableName: string, columnName: string): boolean;
|
|
45
|
+
/** @deprecated Use {@link HasColumnStats}. */
|
|
36
46
|
hasColumnStats(schemaName: string, tableName: string, columnName: string): boolean;
|
|
37
47
|
/**
|
|
38
48
|
* Check if table stats exist
|
|
39
49
|
*/
|
|
50
|
+
HasTableStats(schemaName: string, tableName: string): boolean;
|
|
51
|
+
/** @deprecated Use {@link HasTableStats}. */
|
|
40
52
|
hasTableStats(schemaName: string, tableName: string): boolean;
|
|
41
53
|
/**
|
|
42
54
|
* Get all tables with cached stats
|
|
43
55
|
*/
|
|
56
|
+
GetAllTables(): TableStatsCache[];
|
|
57
|
+
/** @deprecated Use {@link GetAllTables}. */
|
|
44
58
|
getAllTables(): TableStatsCache[];
|
|
45
59
|
/**
|
|
46
60
|
* Find columns matching a pattern across all tables
|
|
47
61
|
* Useful for finding potential FK relationships
|
|
48
62
|
*/
|
|
63
|
+
FindColumnsMatching(predicate: (stats: CachedColumnStats) => boolean): CachedColumnStats[];
|
|
64
|
+
/** @deprecated Use {@link FindColumnsMatching}. */
|
|
49
65
|
findColumnsMatching(predicate: (stats: CachedColumnStats) => boolean): CachedColumnStats[];
|
|
50
66
|
/**
|
|
51
67
|
* Find columns with similar names across tables
|
|
52
68
|
* Example: Find all columns named "*_id" or "*ID"
|
|
53
69
|
*/
|
|
70
|
+
FindColumnsByNamePattern(pattern: RegExp): CachedColumnStats[];
|
|
71
|
+
/** @deprecated Use {@link FindColumnsByNamePattern}. */
|
|
54
72
|
findColumnsByNamePattern(pattern: RegExp): CachedColumnStats[];
|
|
55
73
|
/**
|
|
56
74
|
* Find highly unique columns (potential PKs)
|
|
57
75
|
*/
|
|
76
|
+
FindUniqueColumns(minUniqueness?: number): CachedColumnStats[];
|
|
77
|
+
/** @deprecated Use {@link FindUniqueColumns}. */
|
|
58
78
|
findUniqueColumns(minUniqueness?: number): CachedColumnStats[];
|
|
59
79
|
/**
|
|
60
80
|
* Find columns with same name across multiple tables
|
|
61
81
|
* Returns Map of columnName -> array of CachedColumnStats
|
|
62
82
|
*/
|
|
83
|
+
FindDuplicateColumnNames(): Map<string, CachedColumnStats[]>;
|
|
84
|
+
/** @deprecated Use {@link FindDuplicateColumnNames}. */
|
|
63
85
|
findDuplicateColumnNames(): Map<string, CachedColumnStats[]>;
|
|
64
86
|
/**
|
|
65
87
|
* Get cache statistics
|
|
66
88
|
*/
|
|
89
|
+
GetCacheStats(): {
|
|
90
|
+
totalTables: number;
|
|
91
|
+
totalColumns: number;
|
|
92
|
+
totalStatsBytes: number;
|
|
93
|
+
avgColumnsPerTable: number;
|
|
94
|
+
};
|
|
95
|
+
/** @deprecated Use {@link GetCacheStats}. */
|
|
67
96
|
getCacheStats(): {
|
|
68
97
|
totalTables: number;
|
|
69
98
|
totalColumns: number;
|
|
@@ -73,19 +102,27 @@ export declare class ColumnStatsCache {
|
|
|
73
102
|
/**
|
|
74
103
|
* Clear all cached stats
|
|
75
104
|
*/
|
|
105
|
+
Clear(): void;
|
|
106
|
+
/** @deprecated Use {@link Clear}. */
|
|
76
107
|
clear(): void;
|
|
77
108
|
/**
|
|
78
109
|
* Export cache to JSON for persistence in state file
|
|
79
110
|
*/
|
|
111
|
+
ToStateJSON(): import('../types/state.js').ColumnStatisticsCache;
|
|
112
|
+
/** @deprecated Use {@link ToStateJSON}. */
|
|
80
113
|
toStateJSON(): import('../types/state.js').ColumnStatisticsCache;
|
|
81
114
|
/**
|
|
82
115
|
* Import cache from state JSON
|
|
83
116
|
*/
|
|
117
|
+
FromStateJSON(data: import('../types/state.js').ColumnStatisticsCache): void;
|
|
118
|
+
/** @deprecated Use {@link FromStateJSON}. */
|
|
84
119
|
fromStateJSON(data: import('../types/state.js').ColumnStatisticsCache): void;
|
|
85
120
|
/**
|
|
86
121
|
* Merge cached stats into schema column definitions
|
|
87
122
|
* Replaces separate columnStatistics cache with embedded stats
|
|
88
123
|
*/
|
|
124
|
+
MergeIntoSchemas(schemas: import('../types/state.js').SchemaDefinition[]): void;
|
|
125
|
+
/** @deprecated Use {@link MergeIntoSchemas}. */
|
|
89
126
|
mergeIntoSchemas(schemas: import('../types/state.js').SchemaDefinition[]): void;
|
|
90
127
|
}
|
|
91
128
|
//# sourceMappingURL=ColumnStatsCache.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnStatsCache.d.ts","sourceRoot":"","sources":["../../src/discovery/ColumnStatsCache.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE3E,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,UAAU,CAA2C;IAE7D;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,OAAO,CAAC,YAAY;IAQpB;;OAEG;IACI,cAAc,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;IAkBrD;;OAEG;IACI,cAAc,CACnB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,iBAAiB,GAAG,SAAS;IAMhC;;OAEG;IACI,aAAa,CAClB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,eAAe,GAAG,SAAS;IAK9B;;OAEG;IACI,eAAe,CACpB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,iBAAiB,EAAE;IAKtB;;OAEG;IACI,cAAc,CACnB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO;IAIV;;OAEG;IACI,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAIpE;;OAEG;IACI,YAAY,IAAI,eAAe,EAAE;IAIxC;;;OAGG;IACI,mBAAmB,CACxB,SAAS,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,GAC/C,iBAAiB,EAAE;IActB;;;OAGG;IACI,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,EAAE;IAIrE;;OAEG;IACI,iBAAiB,CAAC,aAAa,GAAE,MAAa,GAAG,iBAAiB,EAAE;IAM3E;;;OAGG;IACI,wBAAwB,IAAI,GAAG,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAiBnE;;OAEG;IACI,aAAa,IAAI;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,kBAAkB,EAAE,MAAM,CAAC;KAC5B;IAmBD;;OAEG;IACI,KAAK,IAAI,IAAI;IAIpB;;OAEG;IACI,WAAW,IAAI,OAAO,mBAAmB,EAAE,qBAAqB;IA2BvE;;OAEG;IACI,aAAa,CAAC,IAAI,EAAE,OAAO,mBAAmB,EAAE,qBAAqB,GAAG,IAAI;IAmBnF;;;OAGG;IACI,gBAAgB,CAAC,OAAO,EAAE,OAAO,mBAAmB,EAAE,gBAAgB,EAAE,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"ColumnStatsCache.d.ts","sourceRoot":"","sources":["../../src/discovery/ColumnStatsCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,66 +22,94 @@ export class ColumnStatsCache {
|
|
|
22
22
|
/**
|
|
23
23
|
* Store column statistics
|
|
24
24
|
*/
|
|
25
|
-
|
|
25
|
+
SetColumnStats(stats) {
|
|
26
26
|
const tableKey = this.getTableKey(stats.schemaName, stats.tableName);
|
|
27
27
|
let tableStats = this.tableCache.get(tableKey);
|
|
28
28
|
if (!tableStats) {
|
|
29
29
|
tableStats = {
|
|
30
30
|
schemaName: stats.schemaName,
|
|
31
31
|
tableName: stats.tableName,
|
|
32
|
-
|
|
32
|
+
TotalRows: stats.totalRows,
|
|
33
33
|
columns: new Map(),
|
|
34
|
-
|
|
34
|
+
ComputedAt: stats.computedAt
|
|
35
35
|
};
|
|
36
36
|
this.tableCache.set(tableKey, tableStats);
|
|
37
37
|
}
|
|
38
38
|
tableStats.columns.set(stats.columnName, stats);
|
|
39
39
|
}
|
|
40
|
+
/** @deprecated Use {@link SetColumnStats}. */
|
|
41
|
+
setColumnStats(stats) {
|
|
42
|
+
return this.SetColumnStats(stats);
|
|
43
|
+
}
|
|
40
44
|
/**
|
|
41
45
|
* Get column statistics
|
|
42
46
|
*/
|
|
43
|
-
|
|
47
|
+
GetColumnStats(schemaName, tableName, columnName) {
|
|
44
48
|
const tableKey = this.getTableKey(schemaName, tableName);
|
|
45
49
|
const tableStats = this.tableCache.get(tableKey);
|
|
46
50
|
return tableStats?.columns.get(columnName);
|
|
47
51
|
}
|
|
52
|
+
/** @deprecated Use {@link GetColumnStats}. */
|
|
53
|
+
getColumnStats(schemaName, tableName, columnName) {
|
|
54
|
+
return this.GetColumnStats(schemaName, tableName, columnName);
|
|
55
|
+
}
|
|
48
56
|
/**
|
|
49
57
|
* Get all column statistics for a table
|
|
50
58
|
*/
|
|
51
|
-
|
|
59
|
+
GetTableStats(schemaName, tableName) {
|
|
52
60
|
const tableKey = this.getTableKey(schemaName, tableName);
|
|
53
61
|
return this.tableCache.get(tableKey);
|
|
54
62
|
}
|
|
63
|
+
/** @deprecated Use {@link GetTableStats}. */
|
|
64
|
+
getTableStats(schemaName, tableName) {
|
|
65
|
+
return this.GetTableStats(schemaName, tableName);
|
|
66
|
+
}
|
|
55
67
|
/**
|
|
56
68
|
* Get all columns in a table
|
|
57
69
|
*/
|
|
58
|
-
|
|
59
|
-
const tableStats = this.
|
|
70
|
+
GetTableColumns(schemaName, tableName) {
|
|
71
|
+
const tableStats = this.GetTableStats(schemaName, tableName);
|
|
60
72
|
return tableStats ? Array.from(tableStats.columns.values()) : [];
|
|
61
73
|
}
|
|
74
|
+
/** @deprecated Use {@link GetTableColumns}. */
|
|
75
|
+
getTableColumns(schemaName, tableName) {
|
|
76
|
+
return this.GetTableColumns(schemaName, tableName);
|
|
77
|
+
}
|
|
62
78
|
/**
|
|
63
79
|
* Check if column stats exist
|
|
64
80
|
*/
|
|
81
|
+
HasColumnStats(schemaName, tableName, columnName) {
|
|
82
|
+
return this.GetColumnStats(schemaName, tableName, columnName) !== undefined;
|
|
83
|
+
}
|
|
84
|
+
/** @deprecated Use {@link HasColumnStats}. */
|
|
65
85
|
hasColumnStats(schemaName, tableName, columnName) {
|
|
66
|
-
return this.
|
|
86
|
+
return this.HasColumnStats(schemaName, tableName, columnName);
|
|
67
87
|
}
|
|
68
88
|
/**
|
|
69
89
|
* Check if table stats exist
|
|
70
90
|
*/
|
|
91
|
+
HasTableStats(schemaName, tableName) {
|
|
92
|
+
return this.GetTableStats(schemaName, tableName) !== undefined;
|
|
93
|
+
}
|
|
94
|
+
/** @deprecated Use {@link HasTableStats}. */
|
|
71
95
|
hasTableStats(schemaName, tableName) {
|
|
72
|
-
return this.
|
|
96
|
+
return this.HasTableStats(schemaName, tableName);
|
|
73
97
|
}
|
|
74
98
|
/**
|
|
75
99
|
* Get all tables with cached stats
|
|
76
100
|
*/
|
|
77
|
-
|
|
101
|
+
GetAllTables() {
|
|
78
102
|
return Array.from(this.tableCache.values());
|
|
79
103
|
}
|
|
104
|
+
/** @deprecated Use {@link GetAllTables}. */
|
|
105
|
+
getAllTables() {
|
|
106
|
+
return this.GetAllTables();
|
|
107
|
+
}
|
|
80
108
|
/**
|
|
81
109
|
* Find columns matching a pattern across all tables
|
|
82
110
|
* Useful for finding potential FK relationships
|
|
83
111
|
*/
|
|
84
|
-
|
|
112
|
+
FindColumnsMatching(predicate) {
|
|
85
113
|
const results = [];
|
|
86
114
|
for (const tableStats of this.tableCache.values()) {
|
|
87
115
|
for (const columnStats of tableStats.columns.values()) {
|
|
@@ -92,24 +120,36 @@ export class ColumnStatsCache {
|
|
|
92
120
|
}
|
|
93
121
|
return results;
|
|
94
122
|
}
|
|
123
|
+
/** @deprecated Use {@link FindColumnsMatching}. */
|
|
124
|
+
findColumnsMatching(predicate) {
|
|
125
|
+
return this.FindColumnsMatching(predicate);
|
|
126
|
+
}
|
|
95
127
|
/**
|
|
96
128
|
* Find columns with similar names across tables
|
|
97
129
|
* Example: Find all columns named "*_id" or "*ID"
|
|
98
130
|
*/
|
|
131
|
+
FindColumnsByNamePattern(pattern) {
|
|
132
|
+
return this.FindColumnsMatching(stats => pattern.test(stats.columnName));
|
|
133
|
+
}
|
|
134
|
+
/** @deprecated Use {@link FindColumnsByNamePattern}. */
|
|
99
135
|
findColumnsByNamePattern(pattern) {
|
|
100
|
-
return this.
|
|
136
|
+
return this.FindColumnsByNamePattern(pattern);
|
|
101
137
|
}
|
|
102
138
|
/**
|
|
103
139
|
* Find highly unique columns (potential PKs)
|
|
104
140
|
*/
|
|
141
|
+
FindUniqueColumns(minUniqueness = 0.95) {
|
|
142
|
+
return this.FindColumnsMatching(stats => stats.uniqueness >= minUniqueness && stats.nullCount === 0);
|
|
143
|
+
}
|
|
144
|
+
/** @deprecated Use {@link FindUniqueColumns}. */
|
|
105
145
|
findUniqueColumns(minUniqueness = 0.95) {
|
|
106
|
-
return this.
|
|
146
|
+
return this.FindUniqueColumns(minUniqueness);
|
|
107
147
|
}
|
|
108
148
|
/**
|
|
109
149
|
* Find columns with same name across multiple tables
|
|
110
150
|
* Returns Map of columnName -> array of CachedColumnStats
|
|
111
151
|
*/
|
|
112
|
-
|
|
152
|
+
FindDuplicateColumnNames() {
|
|
113
153
|
const columnMap = new Map();
|
|
114
154
|
for (const tableStats of this.tableCache.values()) {
|
|
115
155
|
for (const columnStats of tableStats.columns.values()) {
|
|
@@ -121,10 +161,14 @@ export class ColumnStatsCache {
|
|
|
121
161
|
// Filter to only columns that appear in multiple tables
|
|
122
162
|
return new Map(Array.from(columnMap.entries()).filter(([_, stats]) => stats.length > 1));
|
|
123
163
|
}
|
|
164
|
+
/** @deprecated Use {@link FindDuplicateColumnNames}. */
|
|
165
|
+
findDuplicateColumnNames() {
|
|
166
|
+
return this.FindDuplicateColumnNames();
|
|
167
|
+
}
|
|
124
168
|
/**
|
|
125
169
|
* Get cache statistics
|
|
126
170
|
*/
|
|
127
|
-
|
|
171
|
+
GetCacheStats() {
|
|
128
172
|
let totalColumns = 0;
|
|
129
173
|
let totalStatsBytes = 0;
|
|
130
174
|
for (const tableStats of this.tableCache.values()) {
|
|
@@ -139,16 +183,24 @@ export class ColumnStatsCache {
|
|
|
139
183
|
avgColumnsPerTable: this.tableCache.size > 0 ? totalColumns / this.tableCache.size : 0
|
|
140
184
|
};
|
|
141
185
|
}
|
|
186
|
+
/** @deprecated Use {@link GetCacheStats}. */
|
|
187
|
+
getCacheStats() {
|
|
188
|
+
return this.GetCacheStats();
|
|
189
|
+
}
|
|
142
190
|
/**
|
|
143
191
|
* Clear all cached stats
|
|
144
192
|
*/
|
|
145
|
-
|
|
193
|
+
Clear() {
|
|
146
194
|
this.tableCache.clear();
|
|
147
195
|
}
|
|
196
|
+
/** @deprecated Use {@link Clear}. */
|
|
197
|
+
clear() {
|
|
198
|
+
return this.Clear();
|
|
199
|
+
}
|
|
148
200
|
/**
|
|
149
201
|
* Export cache to JSON for persistence in state file
|
|
150
202
|
*/
|
|
151
|
-
|
|
203
|
+
ToStateJSON() {
|
|
152
204
|
let totalColumns = 0;
|
|
153
205
|
const tables = {};
|
|
154
206
|
for (const [key, tableStats] of this.tableCache.entries()) {
|
|
@@ -157,7 +209,7 @@ export class ColumnStatsCache {
|
|
|
157
209
|
tables[key] = {
|
|
158
210
|
schemaName: tableStats.schemaName,
|
|
159
211
|
tableName: tableStats.tableName,
|
|
160
|
-
totalRows: tableStats.
|
|
212
|
+
totalRows: tableStats.TotalRows,
|
|
161
213
|
columns
|
|
162
214
|
};
|
|
163
215
|
}
|
|
@@ -169,11 +221,15 @@ export class ColumnStatsCache {
|
|
|
169
221
|
tables
|
|
170
222
|
};
|
|
171
223
|
}
|
|
224
|
+
/** @deprecated Use {@link ToStateJSON}. */
|
|
225
|
+
toStateJSON() {
|
|
226
|
+
return this.ToStateJSON();
|
|
227
|
+
}
|
|
172
228
|
/**
|
|
173
229
|
* Import cache from state JSON
|
|
174
230
|
*/
|
|
175
|
-
|
|
176
|
-
this.
|
|
231
|
+
FromStateJSON(data) {
|
|
232
|
+
this.Clear();
|
|
177
233
|
for (const [key, tableEntry] of Object.entries(data.tables)) {
|
|
178
234
|
const columnMap = new Map();
|
|
179
235
|
for (const col of tableEntry.columns) {
|
|
@@ -182,17 +238,21 @@ export class ColumnStatsCache {
|
|
|
182
238
|
this.tableCache.set(key, {
|
|
183
239
|
schemaName: tableEntry.schemaName,
|
|
184
240
|
tableName: tableEntry.tableName,
|
|
185
|
-
|
|
241
|
+
TotalRows: tableEntry.totalRows,
|
|
186
242
|
columns: columnMap,
|
|
187
|
-
|
|
243
|
+
ComputedAt: data.computedAt
|
|
188
244
|
});
|
|
189
245
|
}
|
|
190
246
|
}
|
|
247
|
+
/** @deprecated Use {@link FromStateJSON}. */
|
|
248
|
+
fromStateJSON(data) {
|
|
249
|
+
return this.FromStateJSON(data);
|
|
250
|
+
}
|
|
191
251
|
/**
|
|
192
252
|
* Merge cached stats into schema column definitions
|
|
193
253
|
* Replaces separate columnStatistics cache with embedded stats
|
|
194
254
|
*/
|
|
195
|
-
|
|
255
|
+
MergeIntoSchemas(schemas) {
|
|
196
256
|
for (const schema of schemas) {
|
|
197
257
|
for (const table of schema.tables) {
|
|
198
258
|
const cacheKey = `${schema.name}.${table.name}`;
|
|
@@ -223,5 +283,9 @@ export class ColumnStatsCache {
|
|
|
223
283
|
}
|
|
224
284
|
}
|
|
225
285
|
}
|
|
286
|
+
/** @deprecated Use {@link MergeIntoSchemas}. */
|
|
287
|
+
mergeIntoSchemas(schemas) {
|
|
288
|
+
return this.MergeIntoSchemas(schemas);
|
|
289
|
+
}
|
|
226
290
|
}
|
|
227
291
|
//# sourceMappingURL=ColumnStatsCache.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnStatsCache.js","sourceRoot":"","sources":["../../src/discovery/ColumnStatsCache.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,OAAO,gBAAgB;IAA7B;QACU,eAAU,GAAiC,IAAI,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"ColumnStatsCache.js","sourceRoot":"","sources":["../../src/discovery/ColumnStatsCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,10 +21,10 @@ export interface ComposerResult {
|
|
|
21
21
|
/** Clusters with isFKRedundant filled in — callers that persist the cluster list
|
|
22
22
|
* (e.g. detector → state.json → dashboard) should use THIS, not the pre-compose
|
|
23
23
|
* input, otherwise the flag is silently lost. */
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
AnnotatedClusters: OrganicKeyCluster[];
|
|
25
|
+
Emitted: number;
|
|
26
|
+
FlaggedFKRedundant: number;
|
|
27
|
+
Summary: {
|
|
28
28
|
outputSchemas: number;
|
|
29
29
|
outputTables: number;
|
|
30
30
|
outputKeys: number;
|
|
@@ -38,6 +38,8 @@ export interface ComposerResult {
|
|
|
38
38
|
* declared foreign key — kept but flagged, not dropped). Matching transitive bridges are
|
|
39
39
|
* attached as spokes. Returns the JSON plus the annotated clusters and emit counts.
|
|
40
40
|
*/
|
|
41
|
+
export declare function Compose(clusters: OrganicKeyCluster[], bridges: TransitiveBridgeFinding[]): ComposerResult;
|
|
42
|
+
/** @deprecated Use {@link Compose}. */
|
|
41
43
|
export declare function compose(clusters: OrganicKeyCluster[], bridges: TransitiveBridgeFinding[]): ComposerResult;
|
|
42
44
|
/**
|
|
43
45
|
* A cluster is FK-redundant when ALL non-PK members are declared FKs pointing
|
|
@@ -52,6 +54,14 @@ export declare function compose(clusters: OrganicKeyCluster[], bridges: Transiti
|
|
|
52
54
|
*/
|
|
53
55
|
declare function isFKRedundant(cluster: OrganicKeyCluster): boolean;
|
|
54
56
|
/** Re-export for tests / observability. */
|
|
57
|
+
export declare const TestHooks: {
|
|
58
|
+
isFKRedundant: typeof isFKRedundant;
|
|
59
|
+
};
|
|
60
|
+
/** @deprecated Use {@link TestHooks}. */
|
|
61
|
+
export declare const Test__: {
|
|
62
|
+
isFKRedundant: typeof isFKRedundant;
|
|
63
|
+
};
|
|
64
|
+
/** @deprecated Use {@link TestHooks}. */
|
|
55
65
|
export declare const __test__: {
|
|
56
66
|
isFKRedundant: typeof isFKRedundant;
|
|
57
67
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Composer.d.ts","sourceRoot":"","sources":["../../src/discovery/Composer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACtF,OAAO,EACH,yBAAyB,EAI5B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAExE,4GAA4G;AAC5G,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,yBAAyB,CAAC;IAClC;;sDAEkD;IAClD,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;CACtG;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CACnB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,EAAE,uBAAuB,EAAE,GACnC,cAAc,CA0ChB;AAED;;;;;;;;;;GAUG;AACH,iBAAS,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAiB1D;AAED,2CAA2C;AAC3C,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"Composer.d.ts","sourceRoot":"","sources":["../../src/discovery/Composer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACtF,OAAO,EACH,yBAAyB,EAI5B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAExE,4GAA4G;AAC5G,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,yBAAyB,CAAC;IAClC;;sDAEkD;IAClD,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;CACtG;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CACnB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,EAAE,uBAAuB,EAAE,GACnC,cAAc,CA0ChB;AAED,uCAAuC;AACvC,wBAAgB,OAAO,CACnB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,EAAE,uBAAuB,EAAE,GACnC,cAAc,CAEhB;AAED;;;;;;;;;;GAUG;AACH,iBAAS,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAiB1D;AAED,2CAA2C;AAC3C,eAAO,MAAM,SAAS;;CAAoB,CAAC;AAE3C,yCAAyC;AACzC,eAAO,MAAM,MAAM;;CAAY,CAAC;AAEhC,yCAAyC;AACzC,eAAO,MAAM,QAAQ;;CAAY,CAAC;AAClC,YAAY,EAAE,uBAAuB,EAAE,CAAC"}
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* The dashboard surfaces a "hide FK-redundant" filter so users get the lookup-
|
|
13
13
|
* table-PK noise out of view without losing the underlying candidates.
|
|
14
14
|
*/
|
|
15
|
-
import {
|
|
15
|
+
import { TranslateClusters, CountOutputEntries, } from './OrganicKeyTranslator.js';
|
|
16
16
|
/**
|
|
17
17
|
* Compose detected clusters + transitive bridges into the PR #2193 emit JSON.
|
|
18
18
|
*
|
|
@@ -20,7 +20,7 @@ import { translateClusters, countOutputEntries, } from './OrganicKeyTranslator.j
|
|
|
20
20
|
* declared foreign key — kept but flagged, not dropped). Matching transitive bridges are
|
|
21
21
|
* attached as spokes. Returns the JSON plus the annotated clusters and emit counts.
|
|
22
22
|
*/
|
|
23
|
-
export function
|
|
23
|
+
export function Compose(clusters, bridges) {
|
|
24
24
|
let flaggedCount = 0;
|
|
25
25
|
const annotated = clusters.map((c) => {
|
|
26
26
|
const redundant = isFKRedundant(c);
|
|
@@ -34,27 +34,27 @@ export function compose(clusters, bridges) {
|
|
|
34
34
|
hubKeys.add(`${m.schema}.${m.table}.${m.column}`);
|
|
35
35
|
}
|
|
36
36
|
const spokes = bridges
|
|
37
|
-
.filter((b) => hubKeys.has(`${b.
|
|
37
|
+
.filter((b) => hubKeys.has(`${b.HubSchema}.${b.HubTable}.${b.HubKeyFields[0]}`))
|
|
38
38
|
.map((b) => ({
|
|
39
|
-
hubSchema: b.
|
|
40
|
-
hubTable: b.
|
|
41
|
-
hubKeyFields: b.
|
|
42
|
-
spokeSchema: b.
|
|
43
|
-
spokeTable: b.
|
|
44
|
-
transitiveView: { Name: b.
|
|
45
|
-
transitiveMatchFieldNames: [b.
|
|
46
|
-
transitiveOutputFieldName: b.
|
|
47
|
-
relatedEntityJoinFieldName: b.
|
|
48
|
-
hubConcept: b.
|
|
39
|
+
hubSchema: b.HubSchema,
|
|
40
|
+
hubTable: b.HubTable,
|
|
41
|
+
hubKeyFields: b.HubKeyFields,
|
|
42
|
+
spokeSchema: b.SpokeSchema,
|
|
43
|
+
spokeTable: b.SpokeTable,
|
|
44
|
+
transitiveView: { Name: b.View.ViewName, SchemaName: b.View.schemaName, SQL: b.View.Sql },
|
|
45
|
+
transitiveMatchFieldNames: [b.View.HubKeyField],
|
|
46
|
+
transitiveOutputFieldName: b.View.SpokeOutputField,
|
|
47
|
+
relatedEntityJoinFieldName: b.View.SpokeJoinField,
|
|
48
|
+
hubConcept: b.HubConcept,
|
|
49
49
|
}));
|
|
50
|
-
const output =
|
|
51
|
-
const counts =
|
|
50
|
+
const output = TranslateClusters(annotated, spokes);
|
|
51
|
+
const counts = CountOutputEntries(output);
|
|
52
52
|
return {
|
|
53
53
|
output,
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
54
|
+
AnnotatedClusters: annotated,
|
|
55
|
+
Emitted: annotated.length,
|
|
56
|
+
FlaggedFKRedundant: flaggedCount,
|
|
57
|
+
Summary: {
|
|
58
58
|
outputSchemas: counts.schemas,
|
|
59
59
|
outputTables: counts.tables,
|
|
60
60
|
outputKeys: counts.keys,
|
|
@@ -62,6 +62,10 @@ export function compose(clusters, bridges) {
|
|
|
62
62
|
},
|
|
63
63
|
};
|
|
64
64
|
}
|
|
65
|
+
/** @deprecated Use {@link Compose}. */
|
|
66
|
+
export function compose(clusters, bridges) {
|
|
67
|
+
return Compose(clusters, bridges);
|
|
68
|
+
}
|
|
65
69
|
/**
|
|
66
70
|
* A cluster is FK-redundant when ALL non-PK members are declared FKs pointing
|
|
67
71
|
* at the same target column (typically the PK member of the cluster). PR #2193
|
|
@@ -91,5 +95,9 @@ function isFKRedundant(cluster) {
|
|
|
91
95
|
return true;
|
|
92
96
|
}
|
|
93
97
|
/** Re-export for tests / observability. */
|
|
94
|
-
export const
|
|
98
|
+
export const TestHooks = { isFKRedundant };
|
|
99
|
+
/** @deprecated Use {@link TestHooks}. */
|
|
100
|
+
export const Test__ = TestHooks;
|
|
101
|
+
/** @deprecated Use {@link TestHooks}. */
|
|
102
|
+
export const __test__ = TestHooks;
|
|
95
103
|
//# sourceMappingURL=Composer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Composer.js","sourceRoot":"","sources":["../../src/discovery/Composer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Composer.js","sourceRoot":"","sources":["../../src/discovery/Composer.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,18 +8,18 @@ import { SchemaDefinition, DatabaseDocumentation } from '../types/state.js';
|
|
|
8
8
|
import { RelationshipDiscoveryPhase, DiscoveryTriggerAnalysis } from '../types/discovery.js';
|
|
9
9
|
import { RelationshipDiscoveryConfig, AIConfig } from '../types/config.js';
|
|
10
10
|
export interface DiscoveryEngineOptions {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
Driver: BaseAutoDocDriver;
|
|
12
|
+
Config: RelationshipDiscoveryConfig;
|
|
13
|
+
AiConfig: AIConfig;
|
|
14
14
|
schemas: SchemaDefinition[];
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
OnProgress?: (message: string, data?: any) => void;
|
|
16
|
+
OnCheckpoint?: (phase: RelationshipDiscoveryPhase) => Promise<void>;
|
|
17
17
|
}
|
|
18
18
|
export interface DiscoveryResult {
|
|
19
|
-
|
|
19
|
+
Phase: RelationshipDiscoveryPhase;
|
|
20
20
|
guardrailsReached: boolean;
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
GuardrailReason?: string;
|
|
22
|
+
StatsCache: ColumnStatsCache;
|
|
23
23
|
}
|
|
24
24
|
export declare class DiscoveryEngine {
|
|
25
25
|
private driver;
|
|
@@ -37,14 +37,20 @@ export declare class DiscoveryEngine {
|
|
|
37
37
|
/**
|
|
38
38
|
* Get the column statistics cache
|
|
39
39
|
*/
|
|
40
|
+
GetStatsCache(): ColumnStatsCache;
|
|
41
|
+
/** @deprecated Use {@link GetStatsCache}. */
|
|
40
42
|
getStatsCache(): ColumnStatsCache;
|
|
41
43
|
/**
|
|
42
44
|
* Analyze if discovery should be triggered based on schema state
|
|
43
45
|
*/
|
|
46
|
+
AnalyzeTrigger(): DiscoveryTriggerAnalysis;
|
|
47
|
+
/** @deprecated Use {@link AnalyzeTrigger}. */
|
|
44
48
|
analyzeTrigger(): DiscoveryTriggerAnalysis;
|
|
45
49
|
/**
|
|
46
50
|
* Execute the discovery process
|
|
47
51
|
*/
|
|
52
|
+
Discover(maxTokens: number, triggerAnalysis: DiscoveryTriggerAnalysis, existingPhase?: RelationshipDiscoveryPhase): Promise<DiscoveryResult>;
|
|
53
|
+
/** @deprecated Use {@link Discover}. */
|
|
48
54
|
discover(maxTokens: number, triggerAnalysis: DiscoveryTriggerAnalysis, existingPhase?: RelationshipDiscoveryPhase): Promise<DiscoveryResult>;
|
|
49
55
|
/**
|
|
50
56
|
* Initialize discovery phase
|
|
@@ -97,6 +103,8 @@ export declare class DiscoveryEngine {
|
|
|
97
103
|
/**
|
|
98
104
|
* Apply discovered relationships to state
|
|
99
105
|
*/
|
|
106
|
+
ApplyDiscoveriesToState(state: DatabaseDocumentation, phase: RelationshipDiscoveryPhase): void;
|
|
107
|
+
/** @deprecated Use {@link ApplyDiscoveriesToState}. */
|
|
100
108
|
applyDiscoveriesToState(state: DatabaseDocumentation, phase: RelationshipDiscoveryPhase): void;
|
|
101
109
|
/**
|
|
102
110
|
* Add a table-level dependency edge (dependsOn/dependents) for FK relationships.
|