driftdetect-core 0.4.6 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/call-graph/extractors/csharp-data-access-extractor.d.ts +8 -0
- package/dist/call-graph/extractors/csharp-data-access-extractor.d.ts.map +1 -1
- package/dist/call-graph/extractors/csharp-data-access-extractor.js +8 -0
- package/dist/call-graph/extractors/csharp-data-access-extractor.js.map +1 -1
- package/dist/call-graph/extractors/csharp-extractor.d.ts +35 -0
- package/dist/call-graph/extractors/csharp-extractor.d.ts.map +1 -1
- package/dist/call-graph/extractors/csharp-extractor.js +362 -4
- package/dist/call-graph/extractors/csharp-extractor.js.map +1 -1
- package/dist/call-graph/extractors/csharp-hybrid-extractor.d.ts +37 -0
- package/dist/call-graph/extractors/csharp-hybrid-extractor.d.ts.map +1 -0
- package/dist/call-graph/extractors/csharp-hybrid-extractor.js +408 -0
- package/dist/call-graph/extractors/csharp-hybrid-extractor.js.map +1 -0
- package/dist/call-graph/extractors/hybrid-extractor-base.d.ts +102 -0
- package/dist/call-graph/extractors/hybrid-extractor-base.d.ts.map +1 -0
- package/dist/call-graph/extractors/hybrid-extractor-base.js +289 -0
- package/dist/call-graph/extractors/hybrid-extractor-base.js.map +1 -0
- package/dist/call-graph/extractors/index.d.ts +17 -13
- package/dist/call-graph/extractors/index.d.ts.map +1 -1
- package/dist/call-graph/extractors/index.js +24 -23
- package/dist/call-graph/extractors/index.js.map +1 -1
- package/dist/call-graph/extractors/java-data-access-extractor.d.ts +8 -0
- package/dist/call-graph/extractors/java-data-access-extractor.d.ts.map +1 -1
- package/dist/call-graph/extractors/java-data-access-extractor.js +8 -0
- package/dist/call-graph/extractors/java-data-access-extractor.js.map +1 -1
- package/dist/call-graph/extractors/java-extractor.d.ts +15 -0
- package/dist/call-graph/extractors/java-extractor.d.ts.map +1 -1
- package/dist/call-graph/extractors/java-extractor.js +120 -4
- package/dist/call-graph/extractors/java-extractor.js.map +1 -1
- package/dist/call-graph/extractors/java-hybrid-extractor.d.ts +36 -0
- package/dist/call-graph/extractors/java-hybrid-extractor.d.ts.map +1 -0
- package/dist/call-graph/extractors/java-hybrid-extractor.js +426 -0
- package/dist/call-graph/extractors/java-hybrid-extractor.js.map +1 -0
- package/dist/call-graph/extractors/php-data-access-extractor.d.ts +8 -0
- package/dist/call-graph/extractors/php-data-access-extractor.d.ts.map +1 -1
- package/dist/call-graph/extractors/php-data-access-extractor.js +8 -0
- package/dist/call-graph/extractors/php-data-access-extractor.js.map +1 -1
- package/dist/call-graph/extractors/php-extractor.d.ts +48 -1
- package/dist/call-graph/extractors/php-extractor.d.ts.map +1 -1
- package/dist/call-graph/extractors/php-extractor.js +460 -6
- package/dist/call-graph/extractors/php-extractor.js.map +1 -1
- package/dist/call-graph/extractors/php-hybrid-extractor.d.ts +35 -0
- package/dist/call-graph/extractors/php-hybrid-extractor.d.ts.map +1 -0
- package/dist/call-graph/extractors/php-hybrid-extractor.js +393 -0
- package/dist/call-graph/extractors/php-hybrid-extractor.js.map +1 -0
- package/dist/call-graph/extractors/python-data-access-extractor.d.ts +8 -0
- package/dist/call-graph/extractors/python-data-access-extractor.d.ts.map +1 -1
- package/dist/call-graph/extractors/python-data-access-extractor.js +8 -0
- package/dist/call-graph/extractors/python-data-access-extractor.js.map +1 -1
- package/dist/call-graph/extractors/python-hybrid-extractor.d.ts +85 -0
- package/dist/call-graph/extractors/python-hybrid-extractor.d.ts.map +1 -0
- package/dist/call-graph/extractors/python-hybrid-extractor.js +462 -0
- package/dist/call-graph/extractors/python-hybrid-extractor.js.map +1 -0
- package/dist/call-graph/extractors/regex/base-regex-extractor.d.ts +154 -0
- package/dist/call-graph/extractors/regex/base-regex-extractor.d.ts.map +1 -0
- package/dist/call-graph/extractors/regex/base-regex-extractor.js +346 -0
- package/dist/call-graph/extractors/regex/base-regex-extractor.js.map +1 -0
- package/dist/call-graph/extractors/regex/csharp-regex.d.ts +34 -0
- package/dist/call-graph/extractors/regex/csharp-regex.d.ts.map +1 -0
- package/dist/call-graph/extractors/regex/csharp-regex.js +393 -0
- package/dist/call-graph/extractors/regex/csharp-regex.js.map +1 -0
- package/dist/call-graph/extractors/regex/index.d.ts +25 -0
- package/dist/call-graph/extractors/regex/index.d.ts.map +1 -0
- package/dist/call-graph/extractors/regex/index.js +66 -0
- package/dist/call-graph/extractors/regex/index.js.map +1 -0
- package/dist/call-graph/extractors/regex/java-regex.d.ts +34 -0
- package/dist/call-graph/extractors/regex/java-regex.d.ts.map +1 -0
- package/dist/call-graph/extractors/regex/java-regex.js +327 -0
- package/dist/call-graph/extractors/regex/java-regex.js.map +1 -0
- package/dist/call-graph/extractors/regex/php-regex.d.ts +30 -0
- package/dist/call-graph/extractors/regex/php-regex.d.ts.map +1 -0
- package/dist/call-graph/extractors/regex/php-regex.js +333 -0
- package/dist/call-graph/extractors/regex/php-regex.js.map +1 -0
- package/dist/call-graph/extractors/regex/python-regex.d.ts +46 -0
- package/dist/call-graph/extractors/regex/python-regex.d.ts.map +1 -0
- package/dist/call-graph/extractors/regex/python-regex.js +380 -0
- package/dist/call-graph/extractors/regex/python-regex.js.map +1 -0
- package/dist/call-graph/extractors/regex/typescript-regex.d.ts +27 -0
- package/dist/call-graph/extractors/regex/typescript-regex.d.ts.map +1 -0
- package/dist/call-graph/extractors/regex/typescript-regex.js +349 -0
- package/dist/call-graph/extractors/regex/typescript-regex.js.map +1 -0
- package/dist/call-graph/extractors/semantic-data-access-scanner.d.ts +7 -0
- package/dist/call-graph/extractors/semantic-data-access-scanner.d.ts.map +1 -1
- package/dist/call-graph/extractors/semantic-data-access-scanner.js +7 -0
- package/dist/call-graph/extractors/semantic-data-access-scanner.js.map +1 -1
- package/dist/call-graph/extractors/types.d.ts +111 -0
- package/dist/call-graph/extractors/types.d.ts.map +1 -0
- package/dist/call-graph/extractors/types.js +68 -0
- package/dist/call-graph/extractors/types.js.map +1 -0
- package/dist/call-graph/extractors/typescript-data-access-extractor.d.ts +8 -0
- package/dist/call-graph/extractors/typescript-data-access-extractor.d.ts.map +1 -1
- package/dist/call-graph/extractors/typescript-data-access-extractor.js +8 -0
- package/dist/call-graph/extractors/typescript-data-access-extractor.js.map +1 -1
- package/dist/call-graph/extractors/typescript-hybrid-extractor.d.ts +116 -0
- package/dist/call-graph/extractors/typescript-hybrid-extractor.d.ts.map +1 -0
- package/dist/call-graph/extractors/typescript-hybrid-extractor.js +635 -0
- package/dist/call-graph/extractors/typescript-hybrid-extractor.js.map +1 -0
- package/dist/error-handling/error-handling-analyzer.d.ts +73 -0
- package/dist/error-handling/error-handling-analyzer.d.ts.map +1 -0
- package/dist/error-handling/error-handling-analyzer.js +706 -0
- package/dist/error-handling/error-handling-analyzer.js.map +1 -0
- package/dist/error-handling/index.d.ts +8 -0
- package/dist/error-handling/index.d.ts.map +1 -0
- package/dist/error-handling/index.js +8 -0
- package/dist/error-handling/index.js.map +1 -0
- package/dist/error-handling/types.d.ts +307 -0
- package/dist/error-handling/types.d.ts.map +1 -0
- package/dist/error-handling/types.js +7 -0
- package/dist/error-handling/types.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +29 -0
- package/dist/index.js.map +1 -1
- package/dist/lake/pattern-shard-store.d.ts +6 -0
- package/dist/lake/pattern-shard-store.d.ts.map +1 -1
- package/dist/lake/pattern-shard-store.js +6 -0
- package/dist/lake/pattern-shard-store.js.map +1 -1
- package/dist/module-coupling/coupling-analyzer.d.ts +73 -0
- package/dist/module-coupling/coupling-analyzer.d.ts.map +1 -0
- package/dist/module-coupling/coupling-analyzer.js +668 -0
- package/dist/module-coupling/coupling-analyzer.js.map +1 -0
- package/dist/module-coupling/index.d.ts +9 -0
- package/dist/module-coupling/index.d.ts.map +1 -0
- package/dist/module-coupling/index.js +9 -0
- package/dist/module-coupling/index.js.map +1 -0
- package/dist/module-coupling/types.d.ts +273 -0
- package/dist/module-coupling/types.d.ts.map +1 -0
- package/dist/module-coupling/types.js +8 -0
- package/dist/module-coupling/types.js.map +1 -0
- package/dist/patterns/adapters/index.d.ts +11 -0
- package/dist/patterns/adapters/index.d.ts.map +1 -0
- package/dist/patterns/adapters/index.js +11 -0
- package/dist/patterns/adapters/index.js.map +1 -0
- package/dist/patterns/adapters/pattern-store-adapter.d.ts +59 -0
- package/dist/patterns/adapters/pattern-store-adapter.d.ts.map +1 -0
- package/dist/patterns/adapters/pattern-store-adapter.js +468 -0
- package/dist/patterns/adapters/pattern-store-adapter.js.map +1 -0
- package/dist/patterns/adapters/service-factory.d.ts +40 -0
- package/dist/patterns/adapters/service-factory.d.ts.map +1 -0
- package/dist/patterns/adapters/service-factory.js +144 -0
- package/dist/patterns/adapters/service-factory.js.map +1 -0
- package/dist/patterns/errors.d.ts +32 -0
- package/dist/patterns/errors.d.ts.map +1 -0
- package/dist/patterns/errors.js +45 -0
- package/dist/patterns/errors.js.map +1 -0
- package/dist/patterns/impl/cached-repository.d.ts +79 -0
- package/dist/patterns/impl/cached-repository.d.ts.map +1 -0
- package/dist/patterns/impl/cached-repository.js +296 -0
- package/dist/patterns/impl/cached-repository.js.map +1 -0
- package/dist/patterns/impl/file-repository.d.ts +75 -0
- package/dist/patterns/impl/file-repository.d.ts.map +1 -0
- package/dist/patterns/impl/file-repository.js +507 -0
- package/dist/patterns/impl/file-repository.js.map +1 -0
- package/dist/patterns/impl/index.d.ts +16 -0
- package/dist/patterns/impl/index.d.ts.map +1 -0
- package/dist/patterns/impl/index.js +21 -0
- package/dist/patterns/impl/index.js.map +1 -0
- package/dist/patterns/impl/memory-repository.d.ts +56 -0
- package/dist/patterns/impl/memory-repository.d.ts.map +1 -0
- package/dist/patterns/impl/memory-repository.js +323 -0
- package/dist/patterns/impl/memory-repository.js.map +1 -0
- package/dist/patterns/impl/pattern-service.d.ts +52 -0
- package/dist/patterns/impl/pattern-service.d.ts.map +1 -0
- package/dist/patterns/impl/pattern-service.js +382 -0
- package/dist/patterns/impl/pattern-service.js.map +1 -0
- package/dist/patterns/impl/repository-factory.d.ts +44 -0
- package/dist/patterns/impl/repository-factory.d.ts.map +1 -0
- package/dist/patterns/impl/repository-factory.js +140 -0
- package/dist/patterns/impl/repository-factory.js.map +1 -0
- package/dist/patterns/impl/unified-file-repository.d.ts +111 -0
- package/dist/patterns/impl/unified-file-repository.d.ts.map +1 -0
- package/dist/patterns/impl/unified-file-repository.js +677 -0
- package/dist/patterns/impl/unified-file-repository.js.map +1 -0
- package/dist/patterns/index.d.ts +23 -0
- package/dist/patterns/index.d.ts.map +1 -0
- package/dist/patterns/index.js +41 -0
- package/dist/patterns/index.js.map +1 -0
- package/dist/patterns/repository.d.ts +241 -0
- package/dist/patterns/repository.d.ts.map +1 -0
- package/dist/patterns/repository.js +23 -0
- package/dist/patterns/repository.js.map +1 -0
- package/dist/patterns/service.d.ts +245 -0
- package/dist/patterns/service.d.ts.map +1 -0
- package/dist/patterns/service.js +25 -0
- package/dist/patterns/service.js.map +1 -0
- package/dist/patterns/types.d.ts +227 -0
- package/dist/patterns/types.d.ts.map +1 -0
- package/dist/patterns/types.js +117 -0
- package/dist/patterns/types.js.map +1 -0
- package/dist/store/pattern-store.d.ts +6 -0
- package/dist/store/pattern-store.d.ts.map +1 -1
- package/dist/store/pattern-store.js +6 -0
- package/dist/store/pattern-store.js.map +1 -1
- package/dist/test-topology/extractors/base-test-extractor.d.ts +89 -0
- package/dist/test-topology/extractors/base-test-extractor.d.ts.map +1 -0
- package/dist/test-topology/extractors/base-test-extractor.js +187 -0
- package/dist/test-topology/extractors/base-test-extractor.js.map +1 -0
- package/dist/test-topology/extractors/csharp-test-extractor.d.ts +23 -0
- package/dist/test-topology/extractors/csharp-test-extractor.d.ts.map +1 -0
- package/dist/test-topology/extractors/csharp-test-extractor.js +367 -0
- package/dist/test-topology/extractors/csharp-test-extractor.js.map +1 -0
- package/dist/test-topology/extractors/index.d.ts +12 -0
- package/dist/test-topology/extractors/index.d.ts.map +1 -0
- package/dist/test-topology/extractors/index.js +12 -0
- package/dist/test-topology/extractors/index.js.map +1 -0
- package/dist/test-topology/extractors/java-test-extractor.d.ts +20 -0
- package/dist/test-topology/extractors/java-test-extractor.d.ts.map +1 -0
- package/dist/test-topology/extractors/java-test-extractor.js +275 -0
- package/dist/test-topology/extractors/java-test-extractor.js.map +1 -0
- package/dist/test-topology/extractors/php-test-extractor.d.ts +24 -0
- package/dist/test-topology/extractors/php-test-extractor.d.ts.map +1 -0
- package/dist/test-topology/extractors/php-test-extractor.js +409 -0
- package/dist/test-topology/extractors/php-test-extractor.js.map +1 -0
- package/dist/test-topology/extractors/python-test-extractor.d.ts +23 -0
- package/dist/test-topology/extractors/python-test-extractor.d.ts.map +1 -0
- package/dist/test-topology/extractors/python-test-extractor.js +342 -0
- package/dist/test-topology/extractors/python-test-extractor.js.map +1 -0
- package/dist/test-topology/extractors/regex/csharp-test-regex.d.ts +51 -0
- package/dist/test-topology/extractors/regex/csharp-test-regex.d.ts.map +1 -0
- package/dist/test-topology/extractors/regex/csharp-test-regex.js +383 -0
- package/dist/test-topology/extractors/regex/csharp-test-regex.js.map +1 -0
- package/dist/test-topology/extractors/regex/index.d.ts +18 -0
- package/dist/test-topology/extractors/regex/index.d.ts.map +1 -0
- package/dist/test-topology/extractors/regex/index.js +43 -0
- package/dist/test-topology/extractors/regex/index.js.map +1 -0
- package/dist/test-topology/extractors/regex/java-test-regex.d.ts +50 -0
- package/dist/test-topology/extractors/regex/java-test-regex.d.ts.map +1 -0
- package/dist/test-topology/extractors/regex/java-test-regex.js +370 -0
- package/dist/test-topology/extractors/regex/java-test-regex.js.map +1 -0
- package/dist/test-topology/extractors/regex/php-test-regex.d.ts +56 -0
- package/dist/test-topology/extractors/regex/php-test-regex.d.ts.map +1 -0
- package/dist/test-topology/extractors/regex/php-test-regex.js +503 -0
- package/dist/test-topology/extractors/regex/php-test-regex.js.map +1 -0
- package/dist/test-topology/extractors/regex/python-test-regex.d.ts +57 -0
- package/dist/test-topology/extractors/regex/python-test-regex.d.ts.map +1 -0
- package/dist/test-topology/extractors/regex/python-test-regex.js +381 -0
- package/dist/test-topology/extractors/regex/python-test-regex.js.map +1 -0
- package/dist/test-topology/extractors/regex/typescript-test-regex.d.ts +60 -0
- package/dist/test-topology/extractors/regex/typescript-test-regex.d.ts.map +1 -0
- package/dist/test-topology/extractors/regex/typescript-test-regex.js +368 -0
- package/dist/test-topology/extractors/regex/typescript-test-regex.js.map +1 -0
- package/dist/test-topology/extractors/typescript-test-extractor.d.ts +24 -0
- package/dist/test-topology/extractors/typescript-test-extractor.d.ts.map +1 -0
- package/dist/test-topology/extractors/typescript-test-extractor.js +266 -0
- package/dist/test-topology/extractors/typescript-test-extractor.js.map +1 -0
- package/dist/test-topology/hybrid-test-topology-analyzer.d.ts +98 -0
- package/dist/test-topology/hybrid-test-topology-analyzer.d.ts.map +1 -0
- package/dist/test-topology/hybrid-test-topology-analyzer.js +555 -0
- package/dist/test-topology/hybrid-test-topology-analyzer.js.map +1 -0
- package/dist/test-topology/index.d.ts +16 -0
- package/dist/test-topology/index.d.ts.map +1 -0
- package/dist/test-topology/index.js +19 -0
- package/dist/test-topology/index.js.map +1 -0
- package/dist/test-topology/test-topology-analyzer.d.ts +85 -0
- package/dist/test-topology/test-topology-analyzer.d.ts.map +1 -0
- package/dist/test-topology/test-topology-analyzer.js +538 -0
- package/dist/test-topology/test-topology-analyzer.js.map +1 -0
- package/dist/test-topology/types.d.ts +300 -0
- package/dist/test-topology/types.d.ts.map +1 -0
- package/dist/test-topology/types.js +7 -0
- package/dist/test-topology/types.js.map +1 -0
- package/dist/wrappers/clustering/clusterer.d.ts +43 -0
- package/dist/wrappers/clustering/clusterer.d.ts.map +1 -0
- package/dist/wrappers/clustering/clusterer.js +374 -0
- package/dist/wrappers/clustering/clusterer.js.map +1 -0
- package/dist/wrappers/clustering/exclusions.d.ts +47 -0
- package/dist/wrappers/clustering/exclusions.d.ts.map +1 -0
- package/dist/wrappers/clustering/exclusions.js +318 -0
- package/dist/wrappers/clustering/exclusions.js.map +1 -0
- package/dist/wrappers/clustering/index.d.ts +6 -0
- package/dist/wrappers/clustering/index.d.ts.map +1 -0
- package/dist/wrappers/clustering/index.js +6 -0
- package/dist/wrappers/clustering/index.js.map +1 -0
- package/dist/wrappers/detection/detector.d.ts +69 -0
- package/dist/wrappers/detection/detector.d.ts.map +1 -0
- package/dist/wrappers/detection/detector.js +279 -0
- package/dist/wrappers/detection/detector.js.map +1 -0
- package/dist/wrappers/detection/index.d.ts +5 -0
- package/dist/wrappers/detection/index.d.ts.map +1 -0
- package/dist/wrappers/detection/index.js +5 -0
- package/dist/wrappers/detection/index.js.map +1 -0
- package/dist/wrappers/export/index.d.ts +5 -0
- package/dist/wrappers/export/index.d.ts.map +1 -0
- package/dist/wrappers/export/index.js +5 -0
- package/dist/wrappers/export/index.js.map +1 -0
- package/dist/wrappers/export/json.d.ts +127 -0
- package/dist/wrappers/export/json.d.ts.map +1 -0
- package/dist/wrappers/export/json.js +160 -0
- package/dist/wrappers/export/json.js.map +1 -0
- package/dist/wrappers/index.d.ts +56 -0
- package/dist/wrappers/index.d.ts.map +1 -0
- package/dist/wrappers/index.js +159 -0
- package/dist/wrappers/index.js.map +1 -0
- package/dist/wrappers/integration/adapter.d.ts +52 -0
- package/dist/wrappers/integration/adapter.d.ts.map +1 -0
- package/dist/wrappers/integration/adapter.js +209 -0
- package/dist/wrappers/integration/adapter.js.map +1 -0
- package/dist/wrappers/integration/index.d.ts +9 -0
- package/dist/wrappers/integration/index.d.ts.map +1 -0
- package/dist/wrappers/integration/index.js +12 -0
- package/dist/wrappers/integration/index.js.map +1 -0
- package/dist/wrappers/integration/pattern-adapter.d.ts +52 -0
- package/dist/wrappers/integration/pattern-adapter.d.ts.map +1 -0
- package/dist/wrappers/integration/pattern-adapter.js +192 -0
- package/dist/wrappers/integration/pattern-adapter.js.map +1 -0
- package/dist/wrappers/integration/scanner.d.ts +85 -0
- package/dist/wrappers/integration/scanner.d.ts.map +1 -0
- package/dist/wrappers/integration/scanner.js +367 -0
- package/dist/wrappers/integration/scanner.js.map +1 -0
- package/dist/wrappers/primitives/discovery.d.ts +57 -0
- package/dist/wrappers/primitives/discovery.d.ts.map +1 -0
- package/dist/wrappers/primitives/discovery.js +389 -0
- package/dist/wrappers/primitives/discovery.js.map +1 -0
- package/dist/wrappers/primitives/index.d.ts +6 -0
- package/dist/wrappers/primitives/index.d.ts.map +1 -0
- package/dist/wrappers/primitives/index.js +6 -0
- package/dist/wrappers/primitives/index.js.map +1 -0
- package/dist/wrappers/primitives/registry.d.ts +63 -0
- package/dist/wrappers/primitives/registry.d.ts.map +1 -0
- package/dist/wrappers/primitives/registry.js +447 -0
- package/dist/wrappers/primitives/registry.js.map +1 -0
- package/dist/wrappers/types.d.ts +137 -0
- package/dist/wrappers/types.d.ts.map +1 -0
- package/dist/wrappers/types.js +7 -0
- package/dist/wrappers/types.js.map +1 -0
- package/package.json +5 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unified-file-repository.js","sourceRoot":"","sources":["../../../src/patterns/impl/unified-file-repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified Pattern System
|
|
3
|
+
*
|
|
4
|
+
* This module provides the consolidated pattern system for Drift.
|
|
5
|
+
* It includes:
|
|
6
|
+
* - Unified Pattern type (single source of truth)
|
|
7
|
+
* - IPatternRepository interface (storage abstraction)
|
|
8
|
+
* - IPatternService interface (consumer API)
|
|
9
|
+
* - Multiple repository implementations (file, memory, cached)
|
|
10
|
+
*
|
|
11
|
+
* @module patterns
|
|
12
|
+
* @see PATTERN-SYSTEM-CONSOLIDATION.md
|
|
13
|
+
*/
|
|
14
|
+
export type { Pattern, PatternCategory, PatternStatus, ConfidenceLevel, Severity, DetectionMethod, PatternLocation, OutlierLocation, PatternMetadata, DetectorConfig, PatternSummary, CreatePatternInput, } from './types.js';
|
|
15
|
+
export { PATTERN_CATEGORIES, VALID_STATUS_TRANSITIONS, CONFIDENCE_THRESHOLDS, SEVERITY_ORDER, computeConfidenceLevel, toPatternSummary, createPattern, } from './types.js';
|
|
16
|
+
export type { IPatternRepository, PatternFilter, PatternSort, PatternPagination, PatternQueryOptions, PatternQueryResult, PatternRepositoryEventType, PatternRepositoryEventHandler, PatternRepositoryConfig, } from './repository.js';
|
|
17
|
+
export { DEFAULT_REPOSITORY_CONFIG } from './repository.js';
|
|
18
|
+
export type { IPatternService, PatternSystemStatus, CategorySummary, PatternWithExamples, CodeExample, ListOptions, PaginatedResult, SearchOptions, PatternServiceConfig, } from './service.js';
|
|
19
|
+
export { DEFAULT_SERVICE_CONFIG } from './service.js';
|
|
20
|
+
export { FilePatternRepository, PatternNotFoundError, InvalidStatusTransitionError, PatternAlreadyExistsError, UnifiedFilePatternRepository, createUnifiedFilePatternRepository, createPatternRepository, createPatternRepositorySync, detectStorageFormat, InMemoryPatternRepository, CachedPatternRepository, PatternService, createPatternService, } from './impl/index.js';
|
|
21
|
+
export type { UnifiedRepositoryConfig, StorageFormat, RepositoryFactoryConfig, } from './impl/index.js';
|
|
22
|
+
export { PatternStoreAdapter, createPatternStoreAdapter, createPatternServiceFromStore, } from './adapters/index.js';
|
|
23
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/patterns/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,YAAY,EAEV,OAAO,EACP,eAAe,EACf,aAAa,EACb,eAAe,EACf,QAAQ,EACR,eAAe,EAGf,eAAe,EACf,eAAe,EAGf,eAAe,EACf,cAAc,EAGd,cAAc,EAGd,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAEL,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,cAAc,EAGd,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,GACd,MAAM,YAAY,CAAC;AAMpB,YAAY,EAEV,kBAAkB,EAGlB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAGlB,0BAA0B,EAC1B,6BAA6B,EAG7B,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAM5D,YAAY,EAEV,eAAe,EAGf,mBAAmB,EACnB,eAAe,EAGf,mBAAmB,EACnB,WAAW,EAGX,WAAW,EACX,eAAe,EACf,aAAa,EAGb,oBAAoB,GACrB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAMtD,OAAO,EAEL,qBAAqB,EACrB,oBAAoB,EACpB,4BAA4B,EAC5B,yBAAyB,EAGzB,4BAA4B,EAC5B,kCAAkC,EAGlC,uBAAuB,EACvB,2BAA2B,EAC3B,mBAAmB,EAGnB,yBAAyB,EAGzB,uBAAuB,EAGvB,cAAc,EACd,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,uBAAuB,EACvB,aAAa,EACb,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AAMzB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,6BAA6B,GAC9B,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified Pattern System
|
|
3
|
+
*
|
|
4
|
+
* This module provides the consolidated pattern system for Drift.
|
|
5
|
+
* It includes:
|
|
6
|
+
* - Unified Pattern type (single source of truth)
|
|
7
|
+
* - IPatternRepository interface (storage abstraction)
|
|
8
|
+
* - IPatternService interface (consumer API)
|
|
9
|
+
* - Multiple repository implementations (file, memory, cached)
|
|
10
|
+
*
|
|
11
|
+
* @module patterns
|
|
12
|
+
* @see PATTERN-SYSTEM-CONSOLIDATION.md
|
|
13
|
+
*/
|
|
14
|
+
export {
|
|
15
|
+
// Constants
|
|
16
|
+
PATTERN_CATEGORIES, VALID_STATUS_TRANSITIONS, CONFIDENCE_THRESHOLDS, SEVERITY_ORDER,
|
|
17
|
+
// Utility functions
|
|
18
|
+
computeConfidenceLevel, toPatternSummary, createPattern, } from './types.js';
|
|
19
|
+
export { DEFAULT_REPOSITORY_CONFIG } from './repository.js';
|
|
20
|
+
export { DEFAULT_SERVICE_CONFIG } from './service.js';
|
|
21
|
+
// ============================================================================
|
|
22
|
+
// Implementations
|
|
23
|
+
// ============================================================================
|
|
24
|
+
export {
|
|
25
|
+
// File repository (legacy - deprecated)
|
|
26
|
+
FilePatternRepository, PatternNotFoundError, InvalidStatusTransitionError, PatternAlreadyExistsError,
|
|
27
|
+
// Unified file repository (P3 - recommended)
|
|
28
|
+
UnifiedFilePatternRepository, createUnifiedFilePatternRepository,
|
|
29
|
+
// Repository factory (auto-detects format - recommended)
|
|
30
|
+
createPatternRepository, createPatternRepositorySync, detectStorageFormat,
|
|
31
|
+
// Memory repository
|
|
32
|
+
InMemoryPatternRepository,
|
|
33
|
+
// Cached repository
|
|
34
|
+
CachedPatternRepository,
|
|
35
|
+
// Pattern service
|
|
36
|
+
PatternService, createPatternService, } from './impl/index.js';
|
|
37
|
+
// ============================================================================
|
|
38
|
+
// Adapters (for backward compatibility)
|
|
39
|
+
// ============================================================================
|
|
40
|
+
export { PatternStoreAdapter, createPatternStoreAdapter, createPatternServiceFromStore, } from './adapters/index.js';
|
|
41
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/patterns/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AA8BH,OAAO;AACL,YAAY;AACZ,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,cAAc;AAEd,oBAAoB;AACpB,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,GACd,MAAM,YAAY,CAAC;AAyBpB,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AA2B5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,OAAO;AACL,wCAAwC;AACxC,qBAAqB,EACrB,oBAAoB,EACpB,4BAA4B,EAC5B,yBAAyB;AAEzB,6CAA6C;AAC7C,4BAA4B,EAC5B,kCAAkC;AAElC,yDAAyD;AACzD,uBAAuB,EACvB,2BAA2B,EAC3B,mBAAmB;AAEnB,oBAAoB;AACpB,yBAAyB;AAEzB,oBAAoB;AACpB,uBAAuB;AAEvB,kBAAkB;AAClB,cAAc,EACd,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAQzB,+EAA+E;AAC/E,wCAAwC;AACxC,+EAA+E;AAE/E,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,6BAA6B,GAC9B,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pattern Repository Interface
|
|
3
|
+
*
|
|
4
|
+
* Defines the storage abstraction layer for patterns. All pattern storage
|
|
5
|
+
* implementations must implement this interface, enabling:
|
|
6
|
+
* - Swappable storage backends (file, sharded, in-memory, etc.)
|
|
7
|
+
* - Consistent API for all consumers
|
|
8
|
+
* - Easy testing with mock implementations
|
|
9
|
+
* - Caching decorators
|
|
10
|
+
*
|
|
11
|
+
* @module patterns/repository
|
|
12
|
+
* @see PATTERN-SYSTEM-CONSOLIDATION.md
|
|
13
|
+
*/
|
|
14
|
+
import type { Pattern, PatternCategory, PatternStatus, ConfidenceLevel, Severity, PatternSummary } from './types.js';
|
|
15
|
+
/**
|
|
16
|
+
* Filter options for pattern queries
|
|
17
|
+
*/
|
|
18
|
+
export interface PatternFilter {
|
|
19
|
+
/** Filter by pattern IDs */
|
|
20
|
+
ids?: string[] | undefined;
|
|
21
|
+
/** Filter by categories */
|
|
22
|
+
categories?: PatternCategory[] | undefined;
|
|
23
|
+
/** Filter by statuses */
|
|
24
|
+
statuses?: PatternStatus[] | undefined;
|
|
25
|
+
/** Filter by minimum confidence score */
|
|
26
|
+
minConfidence?: number | undefined;
|
|
27
|
+
/** Filter by maximum confidence score */
|
|
28
|
+
maxConfidence?: number | undefined;
|
|
29
|
+
/** Filter by confidence levels */
|
|
30
|
+
confidenceLevels?: ConfidenceLevel[] | undefined;
|
|
31
|
+
/** Filter by severities */
|
|
32
|
+
severities?: Severity[] | undefined;
|
|
33
|
+
/** Filter by files (patterns that have locations in any of these files) */
|
|
34
|
+
files?: string[] | undefined;
|
|
35
|
+
/** Filter patterns with outliers */
|
|
36
|
+
hasOutliers?: boolean | undefined;
|
|
37
|
+
/** Filter by tags */
|
|
38
|
+
tags?: string[] | undefined;
|
|
39
|
+
/** Search in name and description */
|
|
40
|
+
search?: string | undefined;
|
|
41
|
+
/** Filter by date range (firstSeen after) */
|
|
42
|
+
createdAfter?: Date | undefined;
|
|
43
|
+
/** Filter by date range (firstSeen before) */
|
|
44
|
+
createdBefore?: Date | undefined;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Sort options for pattern queries
|
|
48
|
+
*/
|
|
49
|
+
export interface PatternSort {
|
|
50
|
+
/** Field to sort by */
|
|
51
|
+
field: 'name' | 'confidence' | 'severity' | 'firstSeen' | 'lastSeen' | 'locationCount';
|
|
52
|
+
/** Sort direction */
|
|
53
|
+
direction: 'asc' | 'desc';
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Pagination options
|
|
57
|
+
*/
|
|
58
|
+
export interface PatternPagination {
|
|
59
|
+
/** Number of results to skip */
|
|
60
|
+
offset: number;
|
|
61
|
+
/** Maximum number of results to return */
|
|
62
|
+
limit: number;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Complete query options
|
|
66
|
+
*/
|
|
67
|
+
export interface PatternQueryOptions {
|
|
68
|
+
/** Filter criteria */
|
|
69
|
+
filter?: PatternFilter | undefined;
|
|
70
|
+
/** Sort options */
|
|
71
|
+
sort?: PatternSort | undefined;
|
|
72
|
+
/** Pagination options */
|
|
73
|
+
pagination?: PatternPagination | undefined;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Result of a pattern query
|
|
77
|
+
*/
|
|
78
|
+
export interface PatternQueryResult {
|
|
79
|
+
/** Matching patterns */
|
|
80
|
+
patterns: Pattern[];
|
|
81
|
+
/** Total count (before pagination) */
|
|
82
|
+
total: number;
|
|
83
|
+
/** Whether there are more results */
|
|
84
|
+
hasMore: boolean;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Pattern repository event types
|
|
88
|
+
*/
|
|
89
|
+
export type PatternRepositoryEventType = 'pattern:added' | 'pattern:updated' | 'pattern:deleted' | 'pattern:approved' | 'pattern:ignored' | 'patterns:loaded' | 'patterns:saved';
|
|
90
|
+
/**
|
|
91
|
+
* Pattern repository event handler
|
|
92
|
+
*/
|
|
93
|
+
export type PatternRepositoryEventHandler = (pattern?: Pattern, metadata?: Record<string, unknown>) => void;
|
|
94
|
+
/**
|
|
95
|
+
* Pattern Repository Interface
|
|
96
|
+
*
|
|
97
|
+
* Defines the contract for pattern storage implementations.
|
|
98
|
+
* All storage backends (file, sharded, in-memory, cached) must implement this interface.
|
|
99
|
+
*/
|
|
100
|
+
export interface IPatternRepository {
|
|
101
|
+
/**
|
|
102
|
+
* Initialize the repository.
|
|
103
|
+
* Creates necessary directories/structures and loads existing data.
|
|
104
|
+
*/
|
|
105
|
+
initialize(): Promise<void>;
|
|
106
|
+
/**
|
|
107
|
+
* Close the repository and release resources.
|
|
108
|
+
*/
|
|
109
|
+
close(): Promise<void>;
|
|
110
|
+
/**
|
|
111
|
+
* Add a new pattern to the repository.
|
|
112
|
+
* @param pattern The pattern to add
|
|
113
|
+
* @throws If pattern with same ID already exists
|
|
114
|
+
*/
|
|
115
|
+
add(pattern: Pattern): Promise<void>;
|
|
116
|
+
/**
|
|
117
|
+
* Add multiple patterns to the repository.
|
|
118
|
+
* @param patterns The patterns to add
|
|
119
|
+
*/
|
|
120
|
+
addMany(patterns: Pattern[]): Promise<void>;
|
|
121
|
+
/**
|
|
122
|
+
* Get a pattern by ID.
|
|
123
|
+
* @param id The pattern ID
|
|
124
|
+
* @returns The pattern or null if not found
|
|
125
|
+
*/
|
|
126
|
+
get(id: string): Promise<Pattern | null>;
|
|
127
|
+
/**
|
|
128
|
+
* Update an existing pattern.
|
|
129
|
+
* @param id The pattern ID
|
|
130
|
+
* @param updates Partial pattern updates
|
|
131
|
+
* @returns The updated pattern
|
|
132
|
+
* @throws If pattern not found
|
|
133
|
+
*/
|
|
134
|
+
update(id: string, updates: Partial<Pattern>): Promise<Pattern>;
|
|
135
|
+
/**
|
|
136
|
+
* Delete a pattern by ID.
|
|
137
|
+
* @param id The pattern ID
|
|
138
|
+
* @returns True if deleted, false if not found
|
|
139
|
+
*/
|
|
140
|
+
delete(id: string): Promise<boolean>;
|
|
141
|
+
/**
|
|
142
|
+
* Query patterns with filtering, sorting, and pagination.
|
|
143
|
+
* @param options Query options
|
|
144
|
+
* @returns Query result with patterns and metadata
|
|
145
|
+
*/
|
|
146
|
+
query(options: PatternQueryOptions): Promise<PatternQueryResult>;
|
|
147
|
+
/**
|
|
148
|
+
* Get all patterns in a category.
|
|
149
|
+
* @param category The category to filter by
|
|
150
|
+
* @returns Patterns in the category
|
|
151
|
+
*/
|
|
152
|
+
getByCategory(category: PatternCategory): Promise<Pattern[]>;
|
|
153
|
+
/**
|
|
154
|
+
* Get all patterns with a specific status.
|
|
155
|
+
* @param status The status to filter by
|
|
156
|
+
* @returns Patterns with the status
|
|
157
|
+
*/
|
|
158
|
+
getByStatus(status: PatternStatus): Promise<Pattern[]>;
|
|
159
|
+
/**
|
|
160
|
+
* Get all patterns that have locations in a specific file.
|
|
161
|
+
* @param file The file path to filter by
|
|
162
|
+
* @returns Patterns with locations in the file
|
|
163
|
+
*/
|
|
164
|
+
getByFile(file: string): Promise<Pattern[]>;
|
|
165
|
+
/**
|
|
166
|
+
* Get all patterns.
|
|
167
|
+
* @returns All patterns in the repository
|
|
168
|
+
*/
|
|
169
|
+
getAll(): Promise<Pattern[]>;
|
|
170
|
+
/**
|
|
171
|
+
* Count patterns matching a filter.
|
|
172
|
+
* @param filter Optional filter criteria
|
|
173
|
+
* @returns Count of matching patterns
|
|
174
|
+
*/
|
|
175
|
+
count(filter?: PatternFilter): Promise<number>;
|
|
176
|
+
/**
|
|
177
|
+
* Approve a pattern.
|
|
178
|
+
* @param id The pattern ID
|
|
179
|
+
* @param approvedBy Optional user who approved
|
|
180
|
+
* @returns The updated pattern
|
|
181
|
+
* @throws If pattern not found or invalid transition
|
|
182
|
+
*/
|
|
183
|
+
approve(id: string, approvedBy?: string): Promise<Pattern>;
|
|
184
|
+
/**
|
|
185
|
+
* Ignore a pattern.
|
|
186
|
+
* @param id The pattern ID
|
|
187
|
+
* @returns The updated pattern
|
|
188
|
+
* @throws If pattern not found or invalid transition
|
|
189
|
+
*/
|
|
190
|
+
ignore(id: string): Promise<Pattern>;
|
|
191
|
+
/**
|
|
192
|
+
* Save all pending changes to persistent storage.
|
|
193
|
+
*/
|
|
194
|
+
saveAll(): Promise<void>;
|
|
195
|
+
/**
|
|
196
|
+
* Clear all patterns from the repository.
|
|
197
|
+
*/
|
|
198
|
+
clear(): Promise<void>;
|
|
199
|
+
/**
|
|
200
|
+
* Subscribe to repository events.
|
|
201
|
+
* @param event The event type
|
|
202
|
+
* @param handler The event handler
|
|
203
|
+
*/
|
|
204
|
+
on(event: PatternRepositoryEventType, handler: PatternRepositoryEventHandler): void;
|
|
205
|
+
/**
|
|
206
|
+
* Unsubscribe from repository events.
|
|
207
|
+
* @param event The event type
|
|
208
|
+
* @param handler The event handler
|
|
209
|
+
*/
|
|
210
|
+
off(event: PatternRepositoryEventType, handler: PatternRepositoryEventHandler): void;
|
|
211
|
+
/**
|
|
212
|
+
* Check if a pattern exists.
|
|
213
|
+
* @param id The pattern ID
|
|
214
|
+
* @returns True if exists
|
|
215
|
+
*/
|
|
216
|
+
exists(id: string): Promise<boolean>;
|
|
217
|
+
/**
|
|
218
|
+
* Get pattern summaries (lightweight listing).
|
|
219
|
+
* @param options Query options
|
|
220
|
+
* @returns Pattern summaries
|
|
221
|
+
*/
|
|
222
|
+
getSummaries(options?: PatternQueryOptions): Promise<PatternSummary[]>;
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Base configuration for pattern repositories
|
|
226
|
+
*/
|
|
227
|
+
export interface PatternRepositoryConfig {
|
|
228
|
+
/** Root directory for storage */
|
|
229
|
+
rootDir: string;
|
|
230
|
+
/** Enable auto-save on changes */
|
|
231
|
+
autoSave?: boolean;
|
|
232
|
+
/** Auto-save debounce delay in milliseconds */
|
|
233
|
+
autoSaveDelayMs?: number;
|
|
234
|
+
/** Enable schema validation */
|
|
235
|
+
validateSchema?: boolean;
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Default repository configuration
|
|
239
|
+
*/
|
|
240
|
+
export declare const DEFAULT_REPOSITORY_CONFIG: Required<PatternRepositoryConfig>;
|
|
241
|
+
//# sourceMappingURL=repository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../src/patterns/repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pattern Repository Interface
|
|
3
|
+
*
|
|
4
|
+
* Defines the storage abstraction layer for patterns. All pattern storage
|
|
5
|
+
* implementations must implement this interface, enabling:
|
|
6
|
+
* - Swappable storage backends (file, sharded, in-memory, etc.)
|
|
7
|
+
* - Consistent API for all consumers
|
|
8
|
+
* - Easy testing with mock implementations
|
|
9
|
+
* - Caching decorators
|
|
10
|
+
*
|
|
11
|
+
* @module patterns/repository
|
|
12
|
+
* @see PATTERN-SYSTEM-CONSOLIDATION.md
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Default repository configuration
|
|
16
|
+
*/
|
|
17
|
+
export const DEFAULT_REPOSITORY_CONFIG = {
|
|
18
|
+
rootDir: '.',
|
|
19
|
+
autoSave: true,
|
|
20
|
+
autoSaveDelayMs: 1000,
|
|
21
|
+
validateSchema: true,
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=repository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repository.js","sourceRoot":"","sources":["../../src/patterns/repository.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAgUH;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAsC;IAC1E,OAAO,EAAE,GAAG;IACZ,QAAQ,EAAE,IAAI;IACd,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,IAAI;CACrB,CAAC"}
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pattern Service Interface
|
|
3
|
+
*
|
|
4
|
+
* Defines the consumer-facing API for pattern operations. This is the
|
|
5
|
+
* recommended interface for all consumers (MCP tools, CLI, Dashboard).
|
|
6
|
+
*
|
|
7
|
+
* The service layer provides:
|
|
8
|
+
* - Higher-level operations than the repository
|
|
9
|
+
* - Business logic (validation, enrichment)
|
|
10
|
+
* - Caching integration
|
|
11
|
+
* - Metrics collection
|
|
12
|
+
*
|
|
13
|
+
* @module patterns/service
|
|
14
|
+
* @see PATTERN-SYSTEM-CONSOLIDATION.md
|
|
15
|
+
*/
|
|
16
|
+
import type { Pattern, PatternCategory, PatternStatus, ConfidenceLevel, PatternSummary } from './types.js';
|
|
17
|
+
import type { PatternQueryOptions, PatternQueryResult } from './repository.js';
|
|
18
|
+
/**
|
|
19
|
+
* Overall pattern system status
|
|
20
|
+
*/
|
|
21
|
+
export interface PatternSystemStatus {
|
|
22
|
+
/** Total number of patterns */
|
|
23
|
+
totalPatterns: number;
|
|
24
|
+
/** Patterns by status */
|
|
25
|
+
byStatus: Record<PatternStatus, number>;
|
|
26
|
+
/** Patterns by category */
|
|
27
|
+
byCategory: Record<PatternCategory, number>;
|
|
28
|
+
/** Patterns by confidence level */
|
|
29
|
+
byConfidence: Record<ConfidenceLevel, number>;
|
|
30
|
+
/** Last scan timestamp */
|
|
31
|
+
lastScanAt: Date | null;
|
|
32
|
+
/** Overall health score (0-100) */
|
|
33
|
+
healthScore: number;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Category summary for exploration
|
|
37
|
+
*/
|
|
38
|
+
export interface CategorySummary {
|
|
39
|
+
/** Category name */
|
|
40
|
+
category: PatternCategory;
|
|
41
|
+
/** Total patterns in category */
|
|
42
|
+
count: number;
|
|
43
|
+
/** Approved patterns */
|
|
44
|
+
approvedCount: number;
|
|
45
|
+
/** Discovered patterns */
|
|
46
|
+
discoveredCount: number;
|
|
47
|
+
/** High confidence patterns */
|
|
48
|
+
highConfidenceCount: number;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Code example from a pattern location
|
|
52
|
+
*/
|
|
53
|
+
export interface CodeExample {
|
|
54
|
+
/** File path */
|
|
55
|
+
file: string;
|
|
56
|
+
/** Start line */
|
|
57
|
+
startLine: number;
|
|
58
|
+
/** End line */
|
|
59
|
+
endLine: number;
|
|
60
|
+
/** Code content */
|
|
61
|
+
code: string;
|
|
62
|
+
/** Programming language */
|
|
63
|
+
language: string;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Pattern with enriched code examples
|
|
67
|
+
*/
|
|
68
|
+
export interface PatternWithExamples extends Pattern {
|
|
69
|
+
/** Code examples from pattern locations */
|
|
70
|
+
codeExamples: CodeExample[];
|
|
71
|
+
/** Related patterns */
|
|
72
|
+
relatedPatterns: PatternSummary[];
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Options for listing patterns
|
|
76
|
+
*/
|
|
77
|
+
export interface ListOptions {
|
|
78
|
+
/** Number of results to skip */
|
|
79
|
+
offset?: number;
|
|
80
|
+
/** Maximum number of results */
|
|
81
|
+
limit?: number;
|
|
82
|
+
/** Sort field */
|
|
83
|
+
sortBy?: 'name' | 'confidence' | 'severity' | 'firstSeen' | 'lastSeen' | 'locationCount';
|
|
84
|
+
/** Sort direction */
|
|
85
|
+
sortDirection?: 'asc' | 'desc';
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Paginated result
|
|
89
|
+
*/
|
|
90
|
+
export interface PaginatedResult<T> {
|
|
91
|
+
/** Items in this page */
|
|
92
|
+
items: T[];
|
|
93
|
+
/** Total count */
|
|
94
|
+
total: number;
|
|
95
|
+
/** Whether there are more results */
|
|
96
|
+
hasMore: boolean;
|
|
97
|
+
/** Current offset */
|
|
98
|
+
offset: number;
|
|
99
|
+
/** Current limit */
|
|
100
|
+
limit: number;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Search options
|
|
104
|
+
*/
|
|
105
|
+
export interface SearchOptions {
|
|
106
|
+
/** Categories to search in */
|
|
107
|
+
categories?: PatternCategory[];
|
|
108
|
+
/** Statuses to include */
|
|
109
|
+
statuses?: PatternStatus[];
|
|
110
|
+
/** Minimum confidence */
|
|
111
|
+
minConfidence?: number;
|
|
112
|
+
/** Maximum results */
|
|
113
|
+
limit?: number;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Pattern Service Interface
|
|
117
|
+
*
|
|
118
|
+
* High-level API for pattern operations. All consumers should use this
|
|
119
|
+
* interface instead of directly accessing the repository.
|
|
120
|
+
*/
|
|
121
|
+
export interface IPatternService {
|
|
122
|
+
/**
|
|
123
|
+
* Get overall pattern system status.
|
|
124
|
+
* Optimized for instant response.
|
|
125
|
+
*/
|
|
126
|
+
getStatus(): Promise<PatternSystemStatus>;
|
|
127
|
+
/**
|
|
128
|
+
* Get category summaries.
|
|
129
|
+
* Optimized for instant response.
|
|
130
|
+
*/
|
|
131
|
+
getCategories(): Promise<CategorySummary[]>;
|
|
132
|
+
/**
|
|
133
|
+
* List patterns with pagination.
|
|
134
|
+
* @param options List options
|
|
135
|
+
*/
|
|
136
|
+
listPatterns(options?: ListOptions): Promise<PaginatedResult<PatternSummary>>;
|
|
137
|
+
/**
|
|
138
|
+
* List patterns in a category.
|
|
139
|
+
* @param category The category
|
|
140
|
+
* @param options List options
|
|
141
|
+
*/
|
|
142
|
+
listByCategory(category: PatternCategory, options?: ListOptions): Promise<PaginatedResult<PatternSummary>>;
|
|
143
|
+
/**
|
|
144
|
+
* List patterns with a specific status.
|
|
145
|
+
* @param status The status
|
|
146
|
+
* @param options List options
|
|
147
|
+
*/
|
|
148
|
+
listByStatus(status: PatternStatus, options?: ListOptions): Promise<PaginatedResult<PatternSummary>>;
|
|
149
|
+
/**
|
|
150
|
+
* Get a pattern by ID.
|
|
151
|
+
* @param id The pattern ID
|
|
152
|
+
*/
|
|
153
|
+
getPattern(id: string): Promise<Pattern | null>;
|
|
154
|
+
/**
|
|
155
|
+
* Get a pattern with code examples.
|
|
156
|
+
* @param id The pattern ID
|
|
157
|
+
* @param maxExamples Maximum examples to include
|
|
158
|
+
*/
|
|
159
|
+
getPatternWithExamples(id: string, maxExamples?: number): Promise<PatternWithExamples | null>;
|
|
160
|
+
/**
|
|
161
|
+
* Get patterns in a specific file.
|
|
162
|
+
* @param file The file path
|
|
163
|
+
*/
|
|
164
|
+
getPatternsByFile(file: string): Promise<Pattern[]>;
|
|
165
|
+
/**
|
|
166
|
+
* Approve a pattern.
|
|
167
|
+
* @param id The pattern ID
|
|
168
|
+
* @param approvedBy Optional user who approved
|
|
169
|
+
*/
|
|
170
|
+
approvePattern(id: string, approvedBy?: string): Promise<Pattern>;
|
|
171
|
+
/**
|
|
172
|
+
* Ignore a pattern.
|
|
173
|
+
* @param id The pattern ID
|
|
174
|
+
*/
|
|
175
|
+
ignorePattern(id: string): Promise<Pattern>;
|
|
176
|
+
/**
|
|
177
|
+
* Approve multiple patterns.
|
|
178
|
+
* @param ids The pattern IDs
|
|
179
|
+
* @param approvedBy Optional user who approved
|
|
180
|
+
*/
|
|
181
|
+
approveMany(ids: string[], approvedBy?: string): Promise<Pattern[]>;
|
|
182
|
+
/**
|
|
183
|
+
* Ignore multiple patterns.
|
|
184
|
+
* @param ids The pattern IDs
|
|
185
|
+
*/
|
|
186
|
+
ignoreMany(ids: string[]): Promise<Pattern[]>;
|
|
187
|
+
/**
|
|
188
|
+
* Search patterns by name/description.
|
|
189
|
+
* @param query Search query
|
|
190
|
+
* @param options Search options
|
|
191
|
+
*/
|
|
192
|
+
search(query: string, options?: SearchOptions): Promise<PatternSummary[]>;
|
|
193
|
+
/**
|
|
194
|
+
* Execute a custom query.
|
|
195
|
+
* @param options Query options
|
|
196
|
+
*/
|
|
197
|
+
query(options: PatternQueryOptions): Promise<PatternQueryResult>;
|
|
198
|
+
/**
|
|
199
|
+
* Add a new pattern.
|
|
200
|
+
* @param pattern The pattern to add
|
|
201
|
+
*/
|
|
202
|
+
addPattern(pattern: Pattern): Promise<void>;
|
|
203
|
+
/**
|
|
204
|
+
* Add multiple patterns.
|
|
205
|
+
* @param patterns The patterns to add
|
|
206
|
+
*/
|
|
207
|
+
addPatterns(patterns: Pattern[]): Promise<void>;
|
|
208
|
+
/**
|
|
209
|
+
* Update an existing pattern.
|
|
210
|
+
* @param id The pattern ID
|
|
211
|
+
* @param updates Partial pattern updates
|
|
212
|
+
*/
|
|
213
|
+
updatePattern(id: string, updates: Partial<Pattern>): Promise<Pattern>;
|
|
214
|
+
/**
|
|
215
|
+
* Delete a pattern.
|
|
216
|
+
* @param id The pattern ID
|
|
217
|
+
*/
|
|
218
|
+
deletePattern(id: string): Promise<boolean>;
|
|
219
|
+
/**
|
|
220
|
+
* Save all pending changes.
|
|
221
|
+
*/
|
|
222
|
+
save(): Promise<void>;
|
|
223
|
+
/**
|
|
224
|
+
* Clear all patterns.
|
|
225
|
+
*/
|
|
226
|
+
clear(): Promise<void>;
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Pattern service configuration
|
|
230
|
+
*/
|
|
231
|
+
export interface PatternServiceConfig {
|
|
232
|
+
/** Enable caching */
|
|
233
|
+
enableCache?: boolean;
|
|
234
|
+
/** Cache TTL in milliseconds */
|
|
235
|
+
cacheTtlMs?: number;
|
|
236
|
+
/** Enable metrics collection */
|
|
237
|
+
enableMetrics?: boolean;
|
|
238
|
+
/** Context lines for code examples */
|
|
239
|
+
codeExampleContextLines?: number;
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Default service configuration
|
|
243
|
+
*/
|
|
244
|
+
export declare const DEFAULT_SERVICE_CONFIG: Required<PatternServiceConfig>;
|
|
245
|
+
//# sourceMappingURL=service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/patterns/service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,eAAe,EACf,aAAa,EACb,eAAe,EACf,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAM/E;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,+BAA+B;IAC/B,aAAa,EAAE,MAAM,CAAC;IAEtB,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,UAAU,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IAE5C,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IAE9C,0BAA0B;IAC1B,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IAExB,mCAAmC;IACnC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,oBAAoB;IACpB,QAAQ,EAAE,eAAe,CAAC;IAE1B,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IAEd,wBAAwB;IACxB,aAAa,EAAE,MAAM,CAAC;IAEtB,0BAA0B;IAC1B,eAAe,EAAE,MAAM,CAAC;IAExB,+BAA+B;IAC/B,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAMD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,gBAAgB;IAChB,IAAI,EAAE,MAAM,CAAC;IAEb,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAElB,eAAe;IACf,OAAO,EAAE,MAAM,CAAC;IAEhB,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IAEb,2BAA2B;IAC3B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,OAAO;IAClD,2CAA2C;IAC3C,YAAY,EAAE,WAAW,EAAE,CAAC;IAE5B,uBAAuB;IACvB,eAAe,EAAE,cAAc,EAAE,CAAC;CACnC;AAMD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,iBAAiB;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,eAAe,CAAC;IAEzF,qBAAqB;IACrB,aAAa,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,yBAAyB;IACzB,KAAK,EAAE,CAAC,EAAE,CAAC;IAEX,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC;IAEd,qCAAqC;IACrC,OAAO,EAAE,OAAO,CAAC;IAEjB,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IAEf,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,8BAA8B;IAC9B,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;IAE/B,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAE3B,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAG9B;;;OAGG;IACH,SAAS,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAE1C;;;OAGG;IACH,aAAa,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAI5C;;;OAGG;IACH,YAAY,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,CAAC;IAE9E;;;;OAIG;IACH,cAAc,CACZ,QAAQ,EAAE,eAAe,EACzB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,CAAC;IAE5C;;;;OAIG;IACH,YAAY,CACV,MAAM,EAAE,aAAa,EACrB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,CAAC;IAI5C;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAEhD;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IAE9F;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAIpD;;;;OAIG;IACH,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAElE;;;OAGG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5C;;;;OAIG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAEpE;;;OAGG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAI9C;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAI1E;;;OAGG;IACH,KAAK,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAIjE;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5C;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD;;;;OAIG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvE;;;OAGG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5C;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAMD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,qBAAqB;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,gCAAgC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,gCAAgC;IAChC,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,sCAAsC;IACtC,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAAC,oBAAoB,CAKjE,CAAC"}
|