driftdetect-cortex 0.9.41
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/README.md +75 -0
- package/dist/cache/index.d.ts +14 -0
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/index.js +14 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/cache/l1-memory.d.ts +39 -0
- package/dist/cache/l1-memory.d.ts.map +1 -0
- package/dist/cache/l1-memory.js +76 -0
- package/dist/cache/l1-memory.js.map +1 -0
- package/dist/cache/l2-index.d.ts +38 -0
- package/dist/cache/l2-index.d.ts.map +1 -0
- package/dist/cache/l2-index.js +65 -0
- package/dist/cache/l2-index.js.map +1 -0
- package/dist/cache/l3-shard.d.ts +40 -0
- package/dist/cache/l3-shard.d.ts.map +1 -0
- package/dist/cache/l3-shard.js +77 -0
- package/dist/cache/l3-shard.js.map +1 -0
- package/dist/cache/preloader.d.ts +24 -0
- package/dist/cache/preloader.d.ts.map +1 -0
- package/dist/cache/preloader.js +49 -0
- package/dist/cache/preloader.js.map +1 -0
- package/dist/causal/index.d.ts +15 -0
- package/dist/causal/index.d.ts.map +1 -0
- package/dist/causal/index.js +18 -0
- package/dist/causal/index.js.map +1 -0
- package/dist/causal/inference/engine.d.ts +91 -0
- package/dist/causal/inference/engine.d.ts.map +1 -0
- package/dist/causal/inference/engine.js +329 -0
- package/dist/causal/inference/engine.js.map +1 -0
- package/dist/causal/inference/entity.d.ts +66 -0
- package/dist/causal/inference/entity.d.ts.map +1 -0
- package/dist/causal/inference/entity.js +185 -0
- package/dist/causal/inference/entity.js.map +1 -0
- package/dist/causal/inference/explicit.d.ts +62 -0
- package/dist/causal/inference/explicit.d.ts.map +1 -0
- package/dist/causal/inference/explicit.js +244 -0
- package/dist/causal/inference/explicit.js.map +1 -0
- package/dist/causal/inference/index.d.ts +11 -0
- package/dist/causal/inference/index.d.ts.map +1 -0
- package/dist/causal/inference/index.js +11 -0
- package/dist/causal/inference/index.js.map +1 -0
- package/dist/causal/inference/semantic.d.ts +72 -0
- package/dist/causal/inference/semantic.d.ts.map +1 -0
- package/dist/causal/inference/semantic.js +213 -0
- package/dist/causal/inference/semantic.js.map +1 -0
- package/dist/causal/inference/temporal.d.ts +50 -0
- package/dist/causal/inference/temporal.d.ts.map +1 -0
- package/dist/causal/inference/temporal.js +104 -0
- package/dist/causal/inference/temporal.js.map +1 -0
- package/dist/causal/narrative/generator.d.ts +117 -0
- package/dist/causal/narrative/generator.d.ts.map +1 -0
- package/dist/causal/narrative/generator.js +253 -0
- package/dist/causal/narrative/generator.js.map +1 -0
- package/dist/causal/narrative/index.d.ts +8 -0
- package/dist/causal/narrative/index.d.ts.map +1 -0
- package/dist/causal/narrative/index.js +8 -0
- package/dist/causal/narrative/index.js.map +1 -0
- package/dist/causal/narrative/templates.d.ts +92 -0
- package/dist/causal/narrative/templates.d.ts.map +1 -0
- package/dist/causal/narrative/templates.js +190 -0
- package/dist/causal/narrative/templates.js.map +1 -0
- package/dist/causal/storage/index.d.ts +8 -0
- package/dist/causal/storage/index.d.ts.map +1 -0
- package/dist/causal/storage/index.js +8 -0
- package/dist/causal/storage/index.js.map +1 -0
- package/dist/causal/storage/interface.d.ts +108 -0
- package/dist/causal/storage/interface.d.ts.map +1 -0
- package/dist/causal/storage/interface.js +11 -0
- package/dist/causal/storage/interface.js.map +1 -0
- package/dist/causal/storage/sqlite.d.ts +133 -0
- package/dist/causal/storage/sqlite.d.ts.map +1 -0
- package/dist/causal/storage/sqlite.js +526 -0
- package/dist/causal/storage/sqlite.js.map +1 -0
- package/dist/causal/traversal/index.d.ts +9 -0
- package/dist/causal/traversal/index.d.ts.map +1 -0
- package/dist/causal/traversal/index.js +9 -0
- package/dist/causal/traversal/index.js.map +1 -0
- package/dist/causal/traversal/path-finder.d.ts +79 -0
- package/dist/causal/traversal/path-finder.d.ts.map +1 -0
- package/dist/causal/traversal/path-finder.js +246 -0
- package/dist/causal/traversal/path-finder.js.map +1 -0
- package/dist/causal/traversal/subgraph.d.ts +59 -0
- package/dist/causal/traversal/subgraph.d.ts.map +1 -0
- package/dist/causal/traversal/subgraph.js +226 -0
- package/dist/causal/traversal/subgraph.js.map +1 -0
- package/dist/causal/traversal/traverser.d.ts +53 -0
- package/dist/causal/traversal/traverser.d.ts.map +1 -0
- package/dist/causal/traversal/traverser.js +254 -0
- package/dist/causal/traversal/traverser.js.map +1 -0
- package/dist/compression/budget/estimator.d.ts +55 -0
- package/dist/compression/budget/estimator.d.ts.map +1 -0
- package/dist/compression/budget/estimator.js +204 -0
- package/dist/compression/budget/estimator.js.map +1 -0
- package/dist/compression/budget/index.d.ts +13 -0
- package/dist/compression/budget/index.d.ts.map +1 -0
- package/dist/compression/budget/index.js +11 -0
- package/dist/compression/budget/index.js.map +1 -0
- package/dist/compression/budget/manager-v2.d.ts +98 -0
- package/dist/compression/budget/manager-v2.d.ts.map +1 -0
- package/dist/compression/budget/manager-v2.js +211 -0
- package/dist/compression/budget/manager-v2.js.map +1 -0
- package/dist/compression/budget/packer.d.ts +88 -0
- package/dist/compression/budget/packer.d.ts.map +1 -0
- package/dist/compression/budget/packer.js +153 -0
- package/dist/compression/budget/packer.js.map +1 -0
- package/dist/compression/compressor/hierarchical.d.ts +76 -0
- package/dist/compression/compressor/hierarchical.d.ts.map +1 -0
- package/dist/compression/compressor/hierarchical.js +189 -0
- package/dist/compression/compressor/hierarchical.js.map +1 -0
- package/dist/compression/compressor/index.d.ts +13 -0
- package/dist/compression/compressor/index.d.ts.map +1 -0
- package/dist/compression/compressor/index.js +13 -0
- package/dist/compression/compressor/index.js.map +1 -0
- package/dist/compression/compressor/level-0.d.ts +47 -0
- package/dist/compression/compressor/level-0.d.ts.map +1 -0
- package/dist/compression/compressor/level-0.js +68 -0
- package/dist/compression/compressor/level-0.js.map +1 -0
- package/dist/compression/compressor/level-1.d.ts +60 -0
- package/dist/compression/compressor/level-1.d.ts.map +1 -0
- package/dist/compression/compressor/level-1.js +171 -0
- package/dist/compression/compressor/level-1.js.map +1 -0
- package/dist/compression/compressor/level-2.d.ts +72 -0
- package/dist/compression/compressor/level-2.d.ts.map +1 -0
- package/dist/compression/compressor/level-2.js +273 -0
- package/dist/compression/compressor/level-2.js.map +1 -0
- package/dist/compression/compressor/level-3.d.ts +68 -0
- package/dist/compression/compressor/level-3.d.ts.map +1 -0
- package/dist/compression/compressor/level-3.js +389 -0
- package/dist/compression/compressor/level-3.js.map +1 -0
- package/dist/compression/index.d.ts +16 -0
- package/dist/compression/index.d.ts.map +1 -0
- package/dist/compression/index.js +19 -0
- package/dist/compression/index.js.map +1 -0
- package/dist/compression/types.d.ts +10 -0
- package/dist/compression/types.d.ts.map +1 -0
- package/dist/compression/types.js +9 -0
- package/dist/compression/types.js.map +1 -0
- package/dist/consolidation/abstraction.d.ts +40 -0
- package/dist/consolidation/abstraction.d.ts.map +1 -0
- package/dist/consolidation/abstraction.js +80 -0
- package/dist/consolidation/abstraction.js.map +1 -0
- package/dist/consolidation/engine.d.ts +54 -0
- package/dist/consolidation/engine.d.ts.map +1 -0
- package/dist/consolidation/engine.js +88 -0
- package/dist/consolidation/engine.js.map +1 -0
- package/dist/consolidation/index.d.ts +18 -0
- package/dist/consolidation/index.d.ts.map +1 -0
- package/dist/consolidation/index.js +18 -0
- package/dist/consolidation/index.js.map +1 -0
- package/dist/consolidation/integration.d.ts +31 -0
- package/dist/consolidation/integration.d.ts.map +1 -0
- package/dist/consolidation/integration.js +105 -0
- package/dist/consolidation/integration.js.map +1 -0
- package/dist/consolidation/pruning.d.ts +34 -0
- package/dist/consolidation/pruning.d.ts.map +1 -0
- package/dist/consolidation/pruning.js +45 -0
- package/dist/consolidation/pruning.js.map +1 -0
- package/dist/consolidation/replay.d.ts +31 -0
- package/dist/consolidation/replay.d.ts.map +1 -0
- package/dist/consolidation/replay.js +36 -0
- package/dist/consolidation/replay.js.map +1 -0
- package/dist/consolidation/scheduler.d.ts +49 -0
- package/dist/consolidation/scheduler.d.ts.map +1 -0
- package/dist/consolidation/scheduler.js +77 -0
- package/dist/consolidation/scheduler.js.map +1 -0
- package/dist/consolidation/strengthening.d.ts +19 -0
- package/dist/consolidation/strengthening.d.ts.map +1 -0
- package/dist/consolidation/strengthening.js +38 -0
- package/dist/consolidation/strengthening.js.map +1 -0
- package/dist/cortex.d.ts +137 -0
- package/dist/cortex.d.ts.map +1 -0
- package/dist/cortex.js +241 -0
- package/dist/cortex.js.map +1 -0
- package/dist/decay/boosters.d.ts +23 -0
- package/dist/decay/boosters.d.ts.map +1 -0
- package/dist/decay/boosters.js +43 -0
- package/dist/decay/boosters.js.map +1 -0
- package/dist/decay/calculator.d.ts +41 -0
- package/dist/decay/calculator.d.ts.map +1 -0
- package/dist/decay/calculator.js +66 -0
- package/dist/decay/calculator.js.map +1 -0
- package/dist/decay/half-lives.d.ts +16 -0
- package/dist/decay/half-lives.d.ts.map +1 -0
- package/dist/decay/half-lives.js +35 -0
- package/dist/decay/half-lives.js.map +1 -0
- package/dist/decay/index.d.ts +15 -0
- package/dist/decay/index.d.ts.map +1 -0
- package/dist/decay/index.js +15 -0
- package/dist/decay/index.js.map +1 -0
- package/dist/embeddings/cache/index.d.ts +15 -0
- package/dist/embeddings/cache/index.d.ts.map +1 -0
- package/dist/embeddings/cache/index.js +15 -0
- package/dist/embeddings/cache/index.js.map +1 -0
- package/dist/embeddings/cache/l1-memory.d.ts +89 -0
- package/dist/embeddings/cache/l1-memory.d.ts.map +1 -0
- package/dist/embeddings/cache/l1-memory.js +168 -0
- package/dist/embeddings/cache/l1-memory.js.map +1 -0
- package/dist/embeddings/cache/l2-sqlite.d.ts +102 -0
- package/dist/embeddings/cache/l2-sqlite.d.ts.map +1 -0
- package/dist/embeddings/cache/l2-sqlite.js +308 -0
- package/dist/embeddings/cache/l2-sqlite.js.map +1 -0
- package/dist/embeddings/cache/l3-precomputed.d.ts +106 -0
- package/dist/embeddings/cache/l3-precomputed.d.ts.map +1 -0
- package/dist/embeddings/cache/l3-precomputed.js +270 -0
- package/dist/embeddings/cache/l3-precomputed.js.map +1 -0
- package/dist/embeddings/cache/manager.d.ts +150 -0
- package/dist/embeddings/cache/manager.d.ts.map +1 -0
- package/dist/embeddings/cache/manager.js +261 -0
- package/dist/embeddings/cache/manager.js.map +1 -0
- package/dist/embeddings/factory.d.ts +40 -0
- package/dist/embeddings/factory.d.ts.map +1 -0
- package/dist/embeddings/factory.js +89 -0
- package/dist/embeddings/factory.js.map +1 -0
- package/dist/embeddings/hybrid/embedder.d.ts +141 -0
- package/dist/embeddings/hybrid/embedder.d.ts.map +1 -0
- package/dist/embeddings/hybrid/embedder.js +231 -0
- package/dist/embeddings/hybrid/embedder.js.map +1 -0
- package/dist/embeddings/hybrid/fusion.d.ts +75 -0
- package/dist/embeddings/hybrid/fusion.d.ts.map +1 -0
- package/dist/embeddings/hybrid/fusion.js +230 -0
- package/dist/embeddings/hybrid/fusion.js.map +1 -0
- package/dist/embeddings/hybrid/index.d.ts +12 -0
- package/dist/embeddings/hybrid/index.d.ts.map +1 -0
- package/dist/embeddings/hybrid/index.js +12 -0
- package/dist/embeddings/hybrid/index.js.map +1 -0
- package/dist/embeddings/hybrid/weights.d.ts +78 -0
- package/dist/embeddings/hybrid/weights.d.ts.map +1 -0
- package/dist/embeddings/hybrid/weights.js +170 -0
- package/dist/embeddings/hybrid/weights.js.map +1 -0
- package/dist/embeddings/index.d.ts +20 -0
- package/dist/embeddings/index.d.ts.map +1 -0
- package/dist/embeddings/index.js +26 -0
- package/dist/embeddings/index.js.map +1 -0
- package/dist/embeddings/interface.d.ts +25 -0
- package/dist/embeddings/interface.d.ts.map +1 -0
- package/dist/embeddings/interface.js +7 -0
- package/dist/embeddings/interface.js.map +1 -0
- package/dist/embeddings/lexical/embedder.d.ts +85 -0
- package/dist/embeddings/lexical/embedder.d.ts.map +1 -0
- package/dist/embeddings/lexical/embedder.js +146 -0
- package/dist/embeddings/lexical/embedder.js.map +1 -0
- package/dist/embeddings/lexical/index.d.ts +12 -0
- package/dist/embeddings/lexical/index.d.ts.map +1 -0
- package/dist/embeddings/lexical/index.js +12 -0
- package/dist/embeddings/lexical/index.js.map +1 -0
- package/dist/embeddings/lexical/tfidf.d.ts +69 -0
- package/dist/embeddings/lexical/tfidf.d.ts.map +1 -0
- package/dist/embeddings/lexical/tfidf.js +274 -0
- package/dist/embeddings/lexical/tfidf.js.map +1 -0
- package/dist/embeddings/lexical/tokenizer.d.ts +71 -0
- package/dist/embeddings/lexical/tokenizer.d.ts.map +1 -0
- package/dist/embeddings/lexical/tokenizer.js +167 -0
- package/dist/embeddings/lexical/tokenizer.js.map +1 -0
- package/dist/embeddings/local.d.ts +35 -0
- package/dist/embeddings/local.d.ts.map +1 -0
- package/dist/embeddings/local.js +71 -0
- package/dist/embeddings/local.js.map +1 -0
- package/dist/embeddings/ollama.d.ts +35 -0
- package/dist/embeddings/ollama.d.ts.map +1 -0
- package/dist/embeddings/ollama.js +67 -0
- package/dist/embeddings/ollama.js.map +1 -0
- package/dist/embeddings/openai.d.ts +36 -0
- package/dist/embeddings/openai.d.ts.map +1 -0
- package/dist/embeddings/openai.js +92 -0
- package/dist/embeddings/openai.js.map +1 -0
- package/dist/embeddings/semantic/codebert.d.ts +88 -0
- package/dist/embeddings/semantic/codebert.d.ts.map +1 -0
- package/dist/embeddings/semantic/codebert.js +203 -0
- package/dist/embeddings/semantic/codebert.js.map +1 -0
- package/dist/embeddings/semantic/embedder.d.ts +86 -0
- package/dist/embeddings/semantic/embedder.d.ts.map +1 -0
- package/dist/embeddings/semantic/embedder.js +230 -0
- package/dist/embeddings/semantic/embedder.js.map +1 -0
- package/dist/embeddings/semantic/index.d.ts +12 -0
- package/dist/embeddings/semantic/index.d.ts.map +1 -0
- package/dist/embeddings/semantic/index.js +12 -0
- package/dist/embeddings/semantic/index.js.map +1 -0
- package/dist/embeddings/semantic/model-loader.d.ts +93 -0
- package/dist/embeddings/semantic/model-loader.d.ts.map +1 -0
- package/dist/embeddings/semantic/model-loader.js +194 -0
- package/dist/embeddings/semantic/model-loader.js.map +1 -0
- package/dist/embeddings/structural/ast-analyzer.d.ts +114 -0
- package/dist/embeddings/structural/ast-analyzer.d.ts.map +1 -0
- package/dist/embeddings/structural/ast-analyzer.js +308 -0
- package/dist/embeddings/structural/ast-analyzer.js.map +1 -0
- package/dist/embeddings/structural/embedder.d.ts +98 -0
- package/dist/embeddings/structural/embedder.d.ts.map +1 -0
- package/dist/embeddings/structural/embedder.js +186 -0
- package/dist/embeddings/structural/embedder.js.map +1 -0
- package/dist/embeddings/structural/feature-extractor.d.ts +77 -0
- package/dist/embeddings/structural/feature-extractor.d.ts.map +1 -0
- package/dist/embeddings/structural/feature-extractor.js +231 -0
- package/dist/embeddings/structural/feature-extractor.js.map +1 -0
- package/dist/embeddings/structural/index.d.ts +13 -0
- package/dist/embeddings/structural/index.d.ts.map +1 -0
- package/dist/embeddings/structural/index.js +13 -0
- package/dist/embeddings/structural/index.js.map +1 -0
- package/dist/embeddings/structural/pattern-classifier.d.ts +64 -0
- package/dist/embeddings/structural/pattern-classifier.d.ts.map +1 -0
- package/dist/embeddings/structural/pattern-classifier.js +340 -0
- package/dist/embeddings/structural/pattern-classifier.js.map +1 -0
- package/dist/generation/context/antipattern-gatherer.d.ts +62 -0
- package/dist/generation/context/antipattern-gatherer.d.ts.map +1 -0
- package/dist/generation/context/antipattern-gatherer.js +233 -0
- package/dist/generation/context/antipattern-gatherer.js.map +1 -0
- package/dist/generation/context/builder.d.ts +72 -0
- package/dist/generation/context/builder.d.ts.map +1 -0
- package/dist/generation/context/builder.js +152 -0
- package/dist/generation/context/builder.js.map +1 -0
- package/dist/generation/context/constraint-gatherer.d.ts +77 -0
- package/dist/generation/context/constraint-gatherer.d.ts.map +1 -0
- package/dist/generation/context/constraint-gatherer.js +297 -0
- package/dist/generation/context/constraint-gatherer.js.map +1 -0
- package/dist/generation/context/index.d.ts +18 -0
- package/dist/generation/context/index.d.ts.map +1 -0
- package/dist/generation/context/index.js +13 -0
- package/dist/generation/context/index.js.map +1 -0
- package/dist/generation/context/pattern-gatherer.d.ts +80 -0
- package/dist/generation/context/pattern-gatherer.d.ts.map +1 -0
- package/dist/generation/context/pattern-gatherer.js +281 -0
- package/dist/generation/context/pattern-gatherer.js.map +1 -0
- package/dist/generation/context/tribal-gatherer.d.ts +70 -0
- package/dist/generation/context/tribal-gatherer.d.ts.map +1 -0
- package/dist/generation/context/tribal-gatherer.js +253 -0
- package/dist/generation/context/tribal-gatherer.js.map +1 -0
- package/dist/generation/feedback/index.d.ts +11 -0
- package/dist/generation/feedback/index.d.ts.map +1 -0
- package/dist/generation/feedback/index.js +10 -0
- package/dist/generation/feedback/index.js.map +1 -0
- package/dist/generation/feedback/loop.d.ts +72 -0
- package/dist/generation/feedback/loop.d.ts.map +1 -0
- package/dist/generation/feedback/loop.js +123 -0
- package/dist/generation/feedback/loop.js.map +1 -0
- package/dist/generation/feedback/outcome-processor.d.ts +48 -0
- package/dist/generation/feedback/outcome-processor.d.ts.map +1 -0
- package/dist/generation/feedback/outcome-processor.js +127 -0
- package/dist/generation/feedback/outcome-processor.js.map +1 -0
- package/dist/generation/index.d.ts +19 -0
- package/dist/generation/index.d.ts.map +1 -0
- package/dist/generation/index.js +18 -0
- package/dist/generation/index.js.map +1 -0
- package/dist/generation/provenance/comment-generator.d.ts +89 -0
- package/dist/generation/provenance/comment-generator.d.ts.map +1 -0
- package/dist/generation/provenance/comment-generator.js +213 -0
- package/dist/generation/provenance/comment-generator.js.map +1 -0
- package/dist/generation/provenance/explanation-builder.d.ts +83 -0
- package/dist/generation/provenance/explanation-builder.d.ts.map +1 -0
- package/dist/generation/provenance/explanation-builder.js +237 -0
- package/dist/generation/provenance/explanation-builder.js.map +1 -0
- package/dist/generation/provenance/index.d.ts +13 -0
- package/dist/generation/provenance/index.d.ts.map +1 -0
- package/dist/generation/provenance/index.js +11 -0
- package/dist/generation/provenance/index.js.map +1 -0
- package/dist/generation/provenance/tracker.d.ts +74 -0
- package/dist/generation/provenance/tracker.d.ts.map +1 -0
- package/dist/generation/provenance/tracker.js +154 -0
- package/dist/generation/provenance/tracker.js.map +1 -0
- package/dist/generation/types.d.ts +9 -0
- package/dist/generation/types.d.ts.map +1 -0
- package/dist/generation/types.js +9 -0
- package/dist/generation/types.js.map +1 -0
- package/dist/generation/validation/antipattern-checker.d.ts +64 -0
- package/dist/generation/validation/antipattern-checker.d.ts.map +1 -0
- package/dist/generation/validation/antipattern-checker.js +201 -0
- package/dist/generation/validation/antipattern-checker.js.map +1 -0
- package/dist/generation/validation/index.d.ts +16 -0
- package/dist/generation/validation/index.d.ts.map +1 -0
- package/dist/generation/validation/index.js +12 -0
- package/dist/generation/validation/index.js.map +1 -0
- package/dist/generation/validation/pattern-checker.d.ts +66 -0
- package/dist/generation/validation/pattern-checker.d.ts.map +1 -0
- package/dist/generation/validation/pattern-checker.js +187 -0
- package/dist/generation/validation/pattern-checker.js.map +1 -0
- package/dist/generation/validation/tribal-checker.d.ts +62 -0
- package/dist/generation/validation/tribal-checker.d.ts.map +1 -0
- package/dist/generation/validation/tribal-checker.js +159 -0
- package/dist/generation/validation/tribal-checker.js.map +1 -0
- package/dist/generation/validation/validator.d.ts +90 -0
- package/dist/generation/validation/validator.d.ts.map +1 -0
- package/dist/generation/validation/validator.js +192 -0
- package/dist/generation/validation/validator.js.map +1 -0
- package/dist/index.d.ts +46 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +53 -0
- package/dist/index.js.map +1 -0
- package/dist/learning/active/candidate-selector.d.ts +84 -0
- package/dist/learning/active/candidate-selector.d.ts.map +1 -0
- package/dist/learning/active/candidate-selector.js +215 -0
- package/dist/learning/active/candidate-selector.js.map +1 -0
- package/dist/learning/active/index.d.ts +14 -0
- package/dist/learning/active/index.d.ts.map +1 -0
- package/dist/learning/active/index.js +14 -0
- package/dist/learning/active/index.js.map +1 -0
- package/dist/learning/active/loop.d.ts +119 -0
- package/dist/learning/active/loop.d.ts.map +1 -0
- package/dist/learning/active/loop.js +288 -0
- package/dist/learning/active/loop.js.map +1 -0
- package/dist/learning/active/prompt-generator.d.ts +90 -0
- package/dist/learning/active/prompt-generator.d.ts.map +1 -0
- package/dist/learning/active/prompt-generator.js +273 -0
- package/dist/learning/active/prompt-generator.js.map +1 -0
- package/dist/learning/analysis/analyzer.d.ts +66 -0
- package/dist/learning/analysis/analyzer.d.ts.map +1 -0
- package/dist/learning/analysis/analyzer.js +148 -0
- package/dist/learning/analysis/analyzer.js.map +1 -0
- package/dist/learning/analysis/categorizer.d.ts +78 -0
- package/dist/learning/analysis/categorizer.d.ts.map +1 -0
- package/dist/learning/analysis/categorizer.js +327 -0
- package/dist/learning/analysis/categorizer.js.map +1 -0
- package/dist/learning/analysis/diff-analyzer.d.ts +69 -0
- package/dist/learning/analysis/diff-analyzer.d.ts.map +1 -0
- package/dist/learning/analysis/diff-analyzer.js +333 -0
- package/dist/learning/analysis/diff-analyzer.js.map +1 -0
- package/dist/learning/analysis/index.d.ts +15 -0
- package/dist/learning/analysis/index.d.ts.map +1 -0
- package/dist/learning/analysis/index.js +15 -0
- package/dist/learning/analysis/index.js.map +1 -0
- package/dist/learning/analysis/principle-extractor.d.ts +93 -0
- package/dist/learning/analysis/principle-extractor.d.ts.map +1 -0
- package/dist/learning/analysis/principle-extractor.js +468 -0
- package/dist/learning/analysis/principle-extractor.js.map +1 -0
- package/dist/learning/confidence/calibrator.d.ts +93 -0
- package/dist/learning/confidence/calibrator.d.ts.map +1 -0
- package/dist/learning/confidence/calibrator.js +350 -0
- package/dist/learning/confidence/calibrator.js.map +1 -0
- package/dist/learning/confidence/decay-integrator.d.ts +95 -0
- package/dist/learning/confidence/decay-integrator.d.ts.map +1 -0
- package/dist/learning/confidence/decay-integrator.js +223 -0
- package/dist/learning/confidence/decay-integrator.js.map +1 -0
- package/dist/learning/confidence/index.d.ts +15 -0
- package/dist/learning/confidence/index.d.ts.map +1 -0
- package/dist/learning/confidence/index.js +15 -0
- package/dist/learning/confidence/index.js.map +1 -0
- package/dist/learning/confidence/metrics.d.ts +77 -0
- package/dist/learning/confidence/metrics.d.ts.map +1 -0
- package/dist/learning/confidence/metrics.js +168 -0
- package/dist/learning/confidence/metrics.js.map +1 -0
- package/dist/learning/correction-extractor.d.ts +89 -0
- package/dist/learning/correction-extractor.d.ts.map +1 -0
- package/dist/learning/correction-extractor.js +211 -0
- package/dist/learning/correction-extractor.js.map +1 -0
- package/dist/learning/fact-extractor.d.ts +20 -0
- package/dist/learning/fact-extractor.d.ts.map +1 -0
- package/dist/learning/fact-extractor.js +61 -0
- package/dist/learning/fact-extractor.js.map +1 -0
- package/dist/learning/factory/index.d.ts +15 -0
- package/dist/learning/factory/index.d.ts.map +1 -0
- package/dist/learning/factory/index.js +15 -0
- package/dist/learning/factory/index.js.map +1 -0
- package/dist/learning/factory/memory-factory.d.ts +76 -0
- package/dist/learning/factory/memory-factory.d.ts.map +1 -0
- package/dist/learning/factory/memory-factory.js +139 -0
- package/dist/learning/factory/memory-factory.js.map +1 -0
- package/dist/learning/factory/pattern-creator.d.ts +64 -0
- package/dist/learning/factory/pattern-creator.d.ts.map +1 -0
- package/dist/learning/factory/pattern-creator.js +271 -0
- package/dist/learning/factory/pattern-creator.js.map +1 -0
- package/dist/learning/factory/smell-creator.d.ts +67 -0
- package/dist/learning/factory/smell-creator.d.ts.map +1 -0
- package/dist/learning/factory/smell-creator.js +307 -0
- package/dist/learning/factory/smell-creator.js.map +1 -0
- package/dist/learning/factory/tribal-creator.d.ts +61 -0
- package/dist/learning/factory/tribal-creator.d.ts.map +1 -0
- package/dist/learning/factory/tribal-creator.js +228 -0
- package/dist/learning/factory/tribal-creator.js.map +1 -0
- package/dist/learning/index.d.ts +21 -0
- package/dist/learning/index.d.ts.map +1 -0
- package/dist/learning/index.js +26 -0
- package/dist/learning/index.js.map +1 -0
- package/dist/learning/outcome-tracker.d.ts +120 -0
- package/dist/learning/outcome-tracker.d.ts.map +1 -0
- package/dist/learning/outcome-tracker.js +297 -0
- package/dist/learning/outcome-tracker.js.map +1 -0
- package/dist/learning/preference-learner.d.ts +31 -0
- package/dist/learning/preference-learner.d.ts.map +1 -0
- package/dist/learning/preference-learner.js +60 -0
- package/dist/learning/preference-learner.js.map +1 -0
- package/dist/linking/constraint-linker.d.ts +30 -0
- package/dist/linking/constraint-linker.d.ts.map +1 -0
- package/dist/linking/constraint-linker.js +44 -0
- package/dist/linking/constraint-linker.js.map +1 -0
- package/dist/linking/decision-linker.d.ts +30 -0
- package/dist/linking/decision-linker.d.ts.map +1 -0
- package/dist/linking/decision-linker.js +45 -0
- package/dist/linking/decision-linker.js.map +1 -0
- package/dist/linking/file-linker.d.ts +27 -0
- package/dist/linking/file-linker.d.ts.map +1 -0
- package/dist/linking/file-linker.js +44 -0
- package/dist/linking/file-linker.js.map +1 -0
- package/dist/linking/function-linker.d.ts +30 -0
- package/dist/linking/function-linker.d.ts.map +1 -0
- package/dist/linking/function-linker.js +42 -0
- package/dist/linking/function-linker.js.map +1 -0
- package/dist/linking/index.d.ts +16 -0
- package/dist/linking/index.d.ts.map +1 -0
- package/dist/linking/index.js +16 -0
- package/dist/linking/index.js.map +1 -0
- package/dist/linking/pattern-linker.d.ts +30 -0
- package/dist/linking/pattern-linker.d.ts.map +1 -0
- package/dist/linking/pattern-linker.js +42 -0
- package/dist/linking/pattern-linker.js.map +1 -0
- package/dist/orchestrators/cortex-v2.d.ts +266 -0
- package/dist/orchestrators/cortex-v2.d.ts.map +1 -0
- package/dist/orchestrators/cortex-v2.js +395 -0
- package/dist/orchestrators/cortex-v2.js.map +1 -0
- package/dist/orchestrators/generation-orchestrator.d.ts +108 -0
- package/dist/orchestrators/generation-orchestrator.d.ts.map +1 -0
- package/dist/orchestrators/generation-orchestrator.js +313 -0
- package/dist/orchestrators/generation-orchestrator.js.map +1 -0
- package/dist/orchestrators/index.d.ts +16 -0
- package/dist/orchestrators/index.d.ts.map +1 -0
- package/dist/orchestrators/index.js +16 -0
- package/dist/orchestrators/index.js.map +1 -0
- package/dist/orchestrators/learning-orchestrator.d.ts +132 -0
- package/dist/orchestrators/learning-orchestrator.d.ts.map +1 -0
- package/dist/orchestrators/learning-orchestrator.js +346 -0
- package/dist/orchestrators/learning-orchestrator.js.map +1 -0
- package/dist/orchestrators/retrieval-orchestrator.d.ts +123 -0
- package/dist/orchestrators/retrieval-orchestrator.d.ts.map +1 -0
- package/dist/orchestrators/retrieval-orchestrator.js +319 -0
- package/dist/orchestrators/retrieval-orchestrator.js.map +1 -0
- package/dist/prediction/cache/index.d.ts +10 -0
- package/dist/prediction/cache/index.d.ts.map +1 -0
- package/dist/prediction/cache/index.js +10 -0
- package/dist/prediction/cache/index.js.map +1 -0
- package/dist/prediction/cache/prediction-cache.d.ts +97 -0
- package/dist/prediction/cache/prediction-cache.d.ts.map +1 -0
- package/dist/prediction/cache/prediction-cache.js +242 -0
- package/dist/prediction/cache/prediction-cache.js.map +1 -0
- package/dist/prediction/cache/preloader.d.ts +95 -0
- package/dist/prediction/cache/preloader.d.ts.map +1 -0
- package/dist/prediction/cache/preloader.js +192 -0
- package/dist/prediction/cache/preloader.js.map +1 -0
- package/dist/prediction/index.d.ts +21 -0
- package/dist/prediction/index.d.ts.map +1 -0
- package/dist/prediction/index.js +25 -0
- package/dist/prediction/index.js.map +1 -0
- package/dist/prediction/predictor/behavioral-predictor.d.ts +75 -0
- package/dist/prediction/predictor/behavioral-predictor.d.ts.map +1 -0
- package/dist/prediction/predictor/behavioral-predictor.js +273 -0
- package/dist/prediction/predictor/behavioral-predictor.js.map +1 -0
- package/dist/prediction/predictor/engine.d.ts +90 -0
- package/dist/prediction/predictor/engine.d.ts.map +1 -0
- package/dist/prediction/predictor/engine.js +210 -0
- package/dist/prediction/predictor/engine.js.map +1 -0
- package/dist/prediction/predictor/file-predictor.d.ts +69 -0
- package/dist/prediction/predictor/file-predictor.d.ts.map +1 -0
- package/dist/prediction/predictor/file-predictor.js +210 -0
- package/dist/prediction/predictor/file-predictor.js.map +1 -0
- package/dist/prediction/predictor/index.d.ts +13 -0
- package/dist/prediction/predictor/index.d.ts.map +1 -0
- package/dist/prediction/predictor/index.js +13 -0
- package/dist/prediction/predictor/index.js.map +1 -0
- package/dist/prediction/predictor/pattern-predictor.d.ts +65 -0
- package/dist/prediction/predictor/pattern-predictor.d.ts.map +1 -0
- package/dist/prediction/predictor/pattern-predictor.js +183 -0
- package/dist/prediction/predictor/pattern-predictor.js.map +1 -0
- package/dist/prediction/predictor/temporal-predictor.d.ts +98 -0
- package/dist/prediction/predictor/temporal-predictor.d.ts.map +1 -0
- package/dist/prediction/predictor/temporal-predictor.js +282 -0
- package/dist/prediction/predictor/temporal-predictor.js.map +1 -0
- package/dist/prediction/signals/behavioral-signals.d.ts +139 -0
- package/dist/prediction/signals/behavioral-signals.d.ts.map +1 -0
- package/dist/prediction/signals/behavioral-signals.js +402 -0
- package/dist/prediction/signals/behavioral-signals.js.map +1 -0
- package/dist/prediction/signals/file-signals.d.ts +53 -0
- package/dist/prediction/signals/file-signals.d.ts.map +1 -0
- package/dist/prediction/signals/file-signals.js +255 -0
- package/dist/prediction/signals/file-signals.js.map +1 -0
- package/dist/prediction/signals/gatherer.d.ts +113 -0
- package/dist/prediction/signals/gatherer.d.ts.map +1 -0
- package/dist/prediction/signals/gatherer.js +160 -0
- package/dist/prediction/signals/gatherer.js.map +1 -0
- package/dist/prediction/signals/git-signals.d.ts +98 -0
- package/dist/prediction/signals/git-signals.d.ts.map +1 -0
- package/dist/prediction/signals/git-signals.js +286 -0
- package/dist/prediction/signals/git-signals.js.map +1 -0
- package/dist/prediction/signals/index.d.ts +13 -0
- package/dist/prediction/signals/index.d.ts.map +1 -0
- package/dist/prediction/signals/index.js +13 -0
- package/dist/prediction/signals/index.js.map +1 -0
- package/dist/prediction/signals/temporal-signals.d.ts +81 -0
- package/dist/prediction/signals/temporal-signals.d.ts.map +1 -0
- package/dist/prediction/signals/temporal-signals.js +174 -0
- package/dist/prediction/signals/temporal-signals.js.map +1 -0
- package/dist/prediction/types.d.ts +10 -0
- package/dist/prediction/types.d.ts.map +1 -0
- package/dist/prediction/types.js +9 -0
- package/dist/prediction/types.js.map +1 -0
- package/dist/privacy/index.d.ts +12 -0
- package/dist/privacy/index.d.ts.map +1 -0
- package/dist/privacy/index.js +12 -0
- package/dist/privacy/index.js.map +1 -0
- package/dist/privacy/patterns.d.ts +30 -0
- package/dist/privacy/patterns.d.ts.map +1 -0
- package/dist/privacy/patterns.js +40 -0
- package/dist/privacy/patterns.js.map +1 -0
- package/dist/privacy/sanitizer.d.ts +35 -0
- package/dist/privacy/sanitizer.d.ts.map +1 -0
- package/dist/privacy/sanitizer.js +86 -0
- package/dist/privacy/sanitizer.js.map +1 -0
- package/dist/privacy/validator.d.ts +28 -0
- package/dist/privacy/validator.d.ts.map +1 -0
- package/dist/privacy/validator.js +40 -0
- package/dist/privacy/validator.js.map +1 -0
- package/dist/retrieval/budget.d.ts +26 -0
- package/dist/retrieval/budget.d.ts.map +1 -0
- package/dist/retrieval/budget.js +74 -0
- package/dist/retrieval/budget.js.map +1 -0
- package/dist/retrieval/compression.d.ts +52 -0
- package/dist/retrieval/compression.d.ts.map +1 -0
- package/dist/retrieval/compression.js +126 -0
- package/dist/retrieval/compression.js.map +1 -0
- package/dist/retrieval/engine.d.ts +112 -0
- package/dist/retrieval/engine.d.ts.map +1 -0
- package/dist/retrieval/engine.js +159 -0
- package/dist/retrieval/engine.js.map +1 -0
- package/dist/retrieval/index.d.ts +17 -0
- package/dist/retrieval/index.d.ts.map +1 -0
- package/dist/retrieval/index.js +17 -0
- package/dist/retrieval/index.js.map +1 -0
- package/dist/retrieval/ranking.d.ts +28 -0
- package/dist/retrieval/ranking.d.ts.map +1 -0
- package/dist/retrieval/ranking.js +42 -0
- package/dist/retrieval/ranking.js.map +1 -0
- package/dist/retrieval/scoring.d.ts +38 -0
- package/dist/retrieval/scoring.d.ts.map +1 -0
- package/dist/retrieval/scoring.js +101 -0
- package/dist/retrieval/scoring.js.map +1 -0
- package/dist/retrieval/weighting.d.ts +23 -0
- package/dist/retrieval/weighting.d.ts.map +1 -0
- package/dist/retrieval/weighting.js +96 -0
- package/dist/retrieval/weighting.js.map +1 -0
- package/dist/session/context/deduplicator.d.ts +88 -0
- package/dist/session/context/deduplicator.d.ts.map +1 -0
- package/dist/session/context/deduplicator.js +138 -0
- package/dist/session/context/deduplicator.js.map +1 -0
- package/dist/session/context/index.d.ts +11 -0
- package/dist/session/context/index.d.ts.map +1 -0
- package/dist/session/context/index.js +11 -0
- package/dist/session/context/index.js.map +1 -0
- package/dist/session/context/manager.d.ts +76 -0
- package/dist/session/context/manager.d.ts.map +1 -0
- package/dist/session/context/manager.js +271 -0
- package/dist/session/context/manager.js.map +1 -0
- package/dist/session/context/tracker.d.ts +105 -0
- package/dist/session/context/tracker.d.ts.map +1 -0
- package/dist/session/context/tracker.js +171 -0
- package/dist/session/context/tracker.js.map +1 -0
- package/dist/session/index.d.ts +13 -0
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +16 -0
- package/dist/session/index.js.map +1 -0
- package/dist/session/storage/index.d.ts +10 -0
- package/dist/session/storage/index.d.ts.map +1 -0
- package/dist/session/storage/index.js +9 -0
- package/dist/session/storage/index.js.map +1 -0
- package/dist/session/storage/interface.d.ts +64 -0
- package/dist/session/storage/interface.d.ts.map +1 -0
- package/dist/session/storage/interface.js +54 -0
- package/dist/session/storage/interface.js.map +1 -0
- package/dist/session/storage/sqlite.d.ts +66 -0
- package/dist/session/storage/sqlite.d.ts.map +1 -0
- package/dist/session/storage/sqlite.js +197 -0
- package/dist/session/storage/sqlite.js.map +1 -0
- package/dist/session/types.d.ts +10 -0
- package/dist/session/types.d.ts.map +1 -0
- package/dist/session/types.js +9 -0
- package/dist/session/types.js.map +1 -0
- package/dist/storage/factory.d.ts +35 -0
- package/dist/storage/factory.d.ts.map +1 -0
- package/dist/storage/factory.js +44 -0
- package/dist/storage/factory.js.map +1 -0
- package/dist/storage/index.d.ts +10 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +10 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/interface.d.ts +113 -0
- package/dist/storage/interface.d.ts.map +1 -0
- package/dist/storage/interface.js +9 -0
- package/dist/storage/interface.js.map +1 -0
- package/dist/storage/sqlite/client.d.ts +64 -0
- package/dist/storage/sqlite/client.d.ts.map +1 -0
- package/dist/storage/sqlite/client.js +94 -0
- package/dist/storage/sqlite/client.js.map +1 -0
- package/dist/storage/sqlite/index.d.ts +11 -0
- package/dist/storage/sqlite/index.d.ts.map +1 -0
- package/dist/storage/sqlite/index.js +11 -0
- package/dist/storage/sqlite/index.js.map +1 -0
- package/dist/storage/sqlite/migrations.d.ts +32 -0
- package/dist/storage/sqlite/migrations.d.ts.map +1 -0
- package/dist/storage/sqlite/migrations.js +198 -0
- package/dist/storage/sqlite/migrations.js.map +1 -0
- package/dist/storage/sqlite/queries.d.ts +106 -0
- package/dist/storage/sqlite/queries.d.ts.map +1 -0
- package/dist/storage/sqlite/queries.js +192 -0
- package/dist/storage/sqlite/queries.js.map +1 -0
- package/dist/storage/sqlite/schema.d.ts +24 -0
- package/dist/storage/sqlite/schema.d.ts.map +1 -0
- package/dist/storage/sqlite/schema.js +169 -0
- package/dist/storage/sqlite/schema.js.map +1 -0
- package/dist/storage/sqlite/storage.d.ts +148 -0
- package/dist/storage/sqlite/storage.d.ts.map +1 -0
- package/dist/storage/sqlite/storage.js +513 -0
- package/dist/storage/sqlite/storage.js.map +1 -0
- package/dist/types/bitemporal.d.ts +46 -0
- package/dist/types/bitemporal.d.ts.map +1 -0
- package/dist/types/bitemporal.js +13 -0
- package/dist/types/bitemporal.js.map +1 -0
- package/dist/types/causal.d.ts +189 -0
- package/dist/types/causal.d.ts.map +1 -0
- package/dist/types/causal.js +13 -0
- package/dist/types/causal.js.map +1 -0
- package/dist/types/citation.d.ts +37 -0
- package/dist/types/citation.d.ts.map +1 -0
- package/dist/types/citation.js +9 -0
- package/dist/types/citation.js.map +1 -0
- package/dist/types/code-smell.d.ts +67 -0
- package/dist/types/code-smell.d.ts.map +1 -0
- package/dist/types/code-smell.js +8 -0
- package/dist/types/code-smell.js.map +1 -0
- package/dist/types/compressed-memory.d.ts +196 -0
- package/dist/types/compressed-memory.d.ts.map +1 -0
- package/dist/types/compressed-memory.js +43 -0
- package/dist/types/compressed-memory.js.map +1 -0
- package/dist/types/constraint-override.d.ts +55 -0
- package/dist/types/constraint-override.d.ts.map +1 -0
- package/dist/types/constraint-override.js +8 -0
- package/dist/types/constraint-override.js.map +1 -0
- package/dist/types/core-memory.d.ts +80 -0
- package/dist/types/core-memory.d.ts.map +1 -0
- package/dist/types/core-memory.js +8 -0
- package/dist/types/core-memory.js.map +1 -0
- package/dist/types/decision-context.d.ts +44 -0
- package/dist/types/decision-context.d.ts.map +1 -0
- package/dist/types/decision-context.js +8 -0
- package/dist/types/decision-context.js.map +1 -0
- package/dist/types/episodic-memory.d.ts +70 -0
- package/dist/types/episodic-memory.d.ts.map +1 -0
- package/dist/types/episodic-memory.js +8 -0
- package/dist/types/episodic-memory.js.map +1 -0
- package/dist/types/generation-context.d.ts +306 -0
- package/dist/types/generation-context.d.ts.map +1 -0
- package/dist/types/generation-context.js +11 -0
- package/dist/types/generation-context.js.map +1 -0
- package/dist/types/index.d.ts +33 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +35 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/learning.d.ts +297 -0
- package/dist/types/learning.d.ts.map +1 -0
- package/dist/types/learning.js +13 -0
- package/dist/types/learning.js.map +1 -0
- package/dist/types/memory.d.ts +133 -0
- package/dist/types/memory.d.ts.map +1 -0
- package/dist/types/memory.js +14 -0
- package/dist/types/memory.js.map +1 -0
- package/dist/types/pattern-rationale.d.ts +49 -0
- package/dist/types/pattern-rationale.d.ts.map +1 -0
- package/dist/types/pattern-rationale.js +8 -0
- package/dist/types/pattern-rationale.js.map +1 -0
- package/dist/types/prediction.d.ts +239 -0
- package/dist/types/prediction.d.ts.map +1 -0
- package/dist/types/prediction.js +25 -0
- package/dist/types/prediction.js.map +1 -0
- package/dist/types/procedural-memory.d.ts +83 -0
- package/dist/types/procedural-memory.d.ts.map +1 -0
- package/dist/types/procedural-memory.js +9 -0
- package/dist/types/procedural-memory.js.map +1 -0
- package/dist/types/semantic-memory.d.ts +47 -0
- package/dist/types/semantic-memory.d.ts.map +1 -0
- package/dist/types/semantic-memory.js +8 -0
- package/dist/types/semantic-memory.js.map +1 -0
- package/dist/types/session-context.d.ts +175 -0
- package/dist/types/session-context.d.ts.map +1 -0
- package/dist/types/session-context.js +22 -0
- package/dist/types/session-context.js.map +1 -0
- package/dist/types/tribal-memory.d.ts +59 -0
- package/dist/types/tribal-memory.d.ts.map +1 -0
- package/dist/types/tribal-memory.js +9 -0
- package/dist/types/tribal-memory.js.map +1 -0
- package/dist/utils/hash.d.ts +19 -0
- package/dist/utils/hash.d.ts.map +1 -0
- package/dist/utils/hash.js +27 -0
- package/dist/utils/hash.js.map +1 -0
- package/dist/utils/id-generator.d.ts +40 -0
- package/dist/utils/id-generator.d.ts.map +1 -0
- package/dist/utils/id-generator.js +73 -0
- package/dist/utils/id-generator.js.map +1 -0
- package/dist/utils/index.d.ts +8 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +8 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/time.d.ts +28 -0
- package/dist/utils/time.d.ts.map +1 -0
- package/dist/utils/time.js +46 -0
- package/dist/utils/time.js.map +1 -0
- package/dist/utils/tokens.d.ts +23 -0
- package/dist/utils/tokens.d.ts.map +1 -0
- package/dist/utils/tokens.js +35 -0
- package/dist/utils/tokens.js.map +1 -0
- package/dist/validation/citation-validator.d.ts +30 -0
- package/dist/validation/citation-validator.d.ts.map +1 -0
- package/dist/validation/citation-validator.js +86 -0
- package/dist/validation/citation-validator.js.map +1 -0
- package/dist/validation/contradiction-detector.d.ts +33 -0
- package/dist/validation/contradiction-detector.d.ts.map +1 -0
- package/dist/validation/contradiction-detector.js +87 -0
- package/dist/validation/contradiction-detector.js.map +1 -0
- package/dist/validation/engine.d.ts +94 -0
- package/dist/validation/engine.d.ts.map +1 -0
- package/dist/validation/engine.js +170 -0
- package/dist/validation/engine.js.map +1 -0
- package/dist/validation/healing.d.ts +36 -0
- package/dist/validation/healing.d.ts.map +1 -0
- package/dist/validation/healing.js +88 -0
- package/dist/validation/healing.js.map +1 -0
- package/dist/validation/index.d.ts +18 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +18 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/pattern-alignment.d.ts +18 -0
- package/dist/validation/pattern-alignment.d.ts.map +1 -0
- package/dist/validation/pattern-alignment.js +58 -0
- package/dist/validation/pattern-alignment.js.map +1 -0
- package/dist/validation/temporal-validator.d.ts +22 -0
- package/dist/validation/temporal-validator.d.ts.map +1 -0
- package/dist/validation/temporal-validator.js +77 -0
- package/dist/validation/temporal-validator.js.map +1 -0
- package/dist/why/decision-context.d.ts +19 -0
- package/dist/why/decision-context.d.ts.map +1 -0
- package/dist/why/decision-context.js +38 -0
- package/dist/why/decision-context.js.map +1 -0
- package/dist/why/index.d.ts +12 -0
- package/dist/why/index.d.ts.map +1 -0
- package/dist/why/index.js +12 -0
- package/dist/why/index.js.map +1 -0
- package/dist/why/pattern-context.d.ts +19 -0
- package/dist/why/pattern-context.d.ts.map +1 -0
- package/dist/why/pattern-context.js +46 -0
- package/dist/why/pattern-context.js.map +1 -0
- package/dist/why/synthesizer.d.ts +59 -0
- package/dist/why/synthesizer.d.ts.map +1 -0
- package/dist/why/synthesizer.js +68 -0
- package/dist/why/synthesizer.js.map +1 -0
- package/dist/why/tribal-context.d.ts +19 -0
- package/dist/why/tribal-context.d.ts.map +1 -0
- package/dist/why/tribal-context.js +35 -0
- package/dist/why/tribal-context.js.map +1 -0
- package/dist/why/warning-aggregator.d.ts +16 -0
- package/dist/why/warning-aggregator.d.ts.map +1 -0
- package/dist/why/warning-aggregator.js +53 -0
- package/dist/why/warning-aggregator.js.map +1 -0
- package/package.json +93 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fact Extractor
|
|
3
|
+
*
|
|
4
|
+
* Extracts facts from episodic memories.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Fact extractor
|
|
8
|
+
*/
|
|
9
|
+
export class FactExtractor {
|
|
10
|
+
/**
|
|
11
|
+
* Extract facts from an episode
|
|
12
|
+
*/
|
|
13
|
+
extract(episode) {
|
|
14
|
+
const facts = [];
|
|
15
|
+
// Extract from user query
|
|
16
|
+
const queryFacts = this.extractFromQuery(episode.interaction.userQuery);
|
|
17
|
+
facts.push(...queryFacts);
|
|
18
|
+
// Extract from outcome
|
|
19
|
+
if (episode.interaction.outcome === 'rejected') {
|
|
20
|
+
facts.push({
|
|
21
|
+
fact: `User rejected response about ${episode.context.focus || 'unknown'}`,
|
|
22
|
+
confidence: 0.8,
|
|
23
|
+
type: 'correction',
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
return facts;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Extract facts from a user query
|
|
30
|
+
*/
|
|
31
|
+
extractFromQuery(query) {
|
|
32
|
+
const facts = [];
|
|
33
|
+
const lowerQuery = query.toLowerCase();
|
|
34
|
+
// Look for preference indicators
|
|
35
|
+
if (lowerQuery.includes('prefer') || lowerQuery.includes('like')) {
|
|
36
|
+
facts.push({
|
|
37
|
+
fact: query,
|
|
38
|
+
confidence: 0.7,
|
|
39
|
+
type: 'preference',
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
// Look for warnings
|
|
43
|
+
if (lowerQuery.includes('don\'t') || lowerQuery.includes('never') || lowerQuery.includes('avoid')) {
|
|
44
|
+
facts.push({
|
|
45
|
+
fact: query,
|
|
46
|
+
confidence: 0.8,
|
|
47
|
+
type: 'warning',
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
// Look for knowledge
|
|
51
|
+
if (lowerQuery.includes('always') || lowerQuery.includes('must') || lowerQuery.includes('should')) {
|
|
52
|
+
facts.push({
|
|
53
|
+
fact: query,
|
|
54
|
+
confidence: 0.7,
|
|
55
|
+
type: 'knowledge',
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
return facts;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=fact-extractor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fact-extractor.js","sourceRoot":"","sources":["../../src/learning/fact-extractor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,MAAM,OAAO,aAAa;IACxB;;OAEG;IACH,OAAO,CAAC,OAAuB;QAC7B,MAAM,KAAK,GAAoB,EAAE,CAAC;QAElC,0BAA0B;QAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACxE,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;QAE1B,uBAAuB;QACvB,IAAI,OAAO,CAAC,WAAW,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YAC/C,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,gCAAgC,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,EAAE;gBAC1E,UAAU,EAAE,GAAG;gBACf,IAAI,EAAE,YAAY;aACnB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,KAAa;QACpC,MAAM,KAAK,GAAoB,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAEvC,iCAAiC;QACjC,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACjE,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,KAAK;gBACX,UAAU,EAAE,GAAG;gBACf,IAAI,EAAE,YAAY;aACnB,CAAC,CAAC;QACL,CAAC;QAED,oBAAoB;QACpB,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAClG,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,KAAK;gBACX,UAAU,EAAE,GAAG;gBACf,IAAI,EAAE,SAAS;aAChB,CAAC,CAAC;QACL,CAAC;QAED,qBAAqB;QACrB,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClG,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,KAAK;gBACX,UAAU,EAAE,GAAG;gBACf,IAAI,EAAE,WAAW;aAClB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Factory Submodule
|
|
3
|
+
*
|
|
4
|
+
* Creates memories from analyzed corrections:
|
|
5
|
+
* - Tribal memories from institutional knowledge
|
|
6
|
+
* - Pattern rationale memories from pattern violations
|
|
7
|
+
* - Code smell memories from anti-patterns
|
|
8
|
+
*
|
|
9
|
+
* @module learning/factory
|
|
10
|
+
*/
|
|
11
|
+
export * from './tribal-creator.js';
|
|
12
|
+
export * from './pattern-creator.js';
|
|
13
|
+
export * from './smell-creator.js';
|
|
14
|
+
export * from './memory-factory.js';
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/learning/factory/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Factory Submodule
|
|
3
|
+
*
|
|
4
|
+
* Creates memories from analyzed corrections:
|
|
5
|
+
* - Tribal memories from institutional knowledge
|
|
6
|
+
* - Pattern rationale memories from pattern violations
|
|
7
|
+
* - Code smell memories from anti-patterns
|
|
8
|
+
*
|
|
9
|
+
* @module learning/factory
|
|
10
|
+
*/
|
|
11
|
+
export * from './tribal-creator.js';
|
|
12
|
+
export * from './pattern-creator.js';
|
|
13
|
+
export * from './smell-creator.js';
|
|
14
|
+
export * from './memory-factory.js';
|
|
15
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/learning/factory/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Learning Memory Factory
|
|
3
|
+
*
|
|
4
|
+
* Creates appropriate memories from analyzed corrections
|
|
5
|
+
* by delegating to specialized creators.
|
|
6
|
+
*
|
|
7
|
+
* @module learning/factory/memory-factory
|
|
8
|
+
*/
|
|
9
|
+
import type { Memory } from '../../types/memory.js';
|
|
10
|
+
import type { TribalMemory } from '../../types/tribal-memory.js';
|
|
11
|
+
import type { PatternRationaleMemory } from '../../types/pattern-rationale.js';
|
|
12
|
+
import type { CodeSmellMemory } from '../../types/code-smell.js';
|
|
13
|
+
import type { AnalyzedCorrection, CorrectionCategory } from '../../types/learning.js';
|
|
14
|
+
import type { IMemoryStorage } from '../../storage/interface.js';
|
|
15
|
+
import { TribalMemoryCreator, type MemoryCreator } from './tribal-creator.js';
|
|
16
|
+
import { PatternRationaleCreator } from './pattern-creator.js';
|
|
17
|
+
import { CodeSmellCreator } from './smell-creator.js';
|
|
18
|
+
/**
|
|
19
|
+
* Factory result
|
|
20
|
+
*/
|
|
21
|
+
export interface FactoryResult {
|
|
22
|
+
/** Created memory */
|
|
23
|
+
memory: Memory;
|
|
24
|
+
/** Memory type created */
|
|
25
|
+
memoryType: string;
|
|
26
|
+
/** Whether memory was stored */
|
|
27
|
+
stored: boolean;
|
|
28
|
+
/** Storage ID if stored */
|
|
29
|
+
storageId?: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Learning Memory Factory
|
|
33
|
+
*
|
|
34
|
+
* Creates memories from analyzed corrections using the appropriate
|
|
35
|
+
* specialized creator based on correction category.
|
|
36
|
+
*/
|
|
37
|
+
export declare class LearningMemoryFactory {
|
|
38
|
+
private storage?;
|
|
39
|
+
private tribalCreator;
|
|
40
|
+
private patternCreator;
|
|
41
|
+
private smellCreator;
|
|
42
|
+
constructor(tribalCreator?: TribalMemoryCreator, patternCreator?: PatternRationaleCreator, smellCreator?: CodeSmellCreator, storage?: IMemoryStorage | undefined);
|
|
43
|
+
/**
|
|
44
|
+
* Create a memory from an analyzed correction
|
|
45
|
+
*/
|
|
46
|
+
createFromCorrection(analysis: AnalyzedCorrection): Promise<FactoryResult>;
|
|
47
|
+
/**
|
|
48
|
+
* Create memories from multiple corrections
|
|
49
|
+
*/
|
|
50
|
+
createFromCorrections(analyses: AnalyzedCorrection[]): Promise<FactoryResult[]>;
|
|
51
|
+
/**
|
|
52
|
+
* Select the appropriate creator based on category
|
|
53
|
+
*/
|
|
54
|
+
selectCreator(category: CorrectionCategory): MemoryCreator<TribalMemory | PatternRationaleMemory | CodeSmellMemory>;
|
|
55
|
+
/**
|
|
56
|
+
* Create a tribal memory directly
|
|
57
|
+
*/
|
|
58
|
+
createTribalMemory(analysis: AnalyzedCorrection): TribalMemory;
|
|
59
|
+
/**
|
|
60
|
+
* Create a pattern rationale memory directly
|
|
61
|
+
*/
|
|
62
|
+
createPatternRationaleMemory(analysis: AnalyzedCorrection): PatternRationaleMemory;
|
|
63
|
+
/**
|
|
64
|
+
* Create a code smell memory directly
|
|
65
|
+
*/
|
|
66
|
+
createCodeSmellMemory(analysis: AnalyzedCorrection): CodeSmellMemory;
|
|
67
|
+
/**
|
|
68
|
+
* Get suggested memory type for a category
|
|
69
|
+
*/
|
|
70
|
+
getSuggestedType(category: CorrectionCategory): string;
|
|
71
|
+
/**
|
|
72
|
+
* Create factory with default dependencies
|
|
73
|
+
*/
|
|
74
|
+
static create(storage?: IMemoryStorage): LearningMemoryFactory;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=memory-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-factory.d.ts","sourceRoot":"","sources":["../../../src/learning/factory/memory-factory.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACtF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,qBAAa,qBAAqB;IAS9B,OAAO,CAAC,OAAO,CAAC;IARlB,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,YAAY,CAAmB;gBAGrC,aAAa,CAAC,EAAE,mBAAmB,EACnC,cAAc,CAAC,EAAE,uBAAuB,EACxC,YAAY,CAAC,EAAE,gBAAgB,EACvB,OAAO,CAAC,EAAE,cAAc,YAAA;IAOlC;;OAEG;IACG,oBAAoB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;IAiChF;;OAEG;IACG,qBAAqB,CACzB,QAAQ,EAAE,kBAAkB,EAAE,GAC7B,OAAO,CAAC,aAAa,EAAE,CAAC;IAW3B;;OAEG;IACH,aAAa,CACX,QAAQ,EAAE,kBAAkB,GAC3B,aAAa,CAAC,YAAY,GAAG,sBAAsB,GAAG,eAAe,CAAC;IA2BzE;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,YAAY;IAI9D;;OAEG;IACH,4BAA4B,CAAC,QAAQ,EAAE,kBAAkB,GAAG,sBAAsB;IAIlF;;OAEG;IACH,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,eAAe;IAIpE;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM;IAiBtD;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,qBAAqB;CAQ/D"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Learning Memory Factory
|
|
3
|
+
*
|
|
4
|
+
* Creates appropriate memories from analyzed corrections
|
|
5
|
+
* by delegating to specialized creators.
|
|
6
|
+
*
|
|
7
|
+
* @module learning/factory/memory-factory
|
|
8
|
+
*/
|
|
9
|
+
import { TribalMemoryCreator } from './tribal-creator.js';
|
|
10
|
+
import { PatternRationaleCreator } from './pattern-creator.js';
|
|
11
|
+
import { CodeSmellCreator } from './smell-creator.js';
|
|
12
|
+
/**
|
|
13
|
+
* Learning Memory Factory
|
|
14
|
+
*
|
|
15
|
+
* Creates memories from analyzed corrections using the appropriate
|
|
16
|
+
* specialized creator based on correction category.
|
|
17
|
+
*/
|
|
18
|
+
export class LearningMemoryFactory {
|
|
19
|
+
storage;
|
|
20
|
+
tribalCreator;
|
|
21
|
+
patternCreator;
|
|
22
|
+
smellCreator;
|
|
23
|
+
constructor(tribalCreator, patternCreator, smellCreator, storage) {
|
|
24
|
+
this.storage = storage;
|
|
25
|
+
this.tribalCreator = tribalCreator || new TribalMemoryCreator();
|
|
26
|
+
this.patternCreator = patternCreator || new PatternRationaleCreator();
|
|
27
|
+
this.smellCreator = smellCreator || new CodeSmellCreator();
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Create a memory from an analyzed correction
|
|
31
|
+
*/
|
|
32
|
+
async createFromCorrection(analysis) {
|
|
33
|
+
// Select appropriate creator
|
|
34
|
+
const creator = this.selectCreator(analysis.category);
|
|
35
|
+
// Create memory
|
|
36
|
+
const memory = creator.create(analysis);
|
|
37
|
+
// Store if storage is available
|
|
38
|
+
let stored = false;
|
|
39
|
+
let storageId;
|
|
40
|
+
if (this.storage) {
|
|
41
|
+
try {
|
|
42
|
+
storageId = await this.storage.create(memory);
|
|
43
|
+
stored = true;
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
console.error('Failed to store memory:', error);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
const result = {
|
|
50
|
+
memory,
|
|
51
|
+
memoryType: memory.type,
|
|
52
|
+
stored,
|
|
53
|
+
};
|
|
54
|
+
if (storageId) {
|
|
55
|
+
result.storageId = storageId;
|
|
56
|
+
}
|
|
57
|
+
return result;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Create memories from multiple corrections
|
|
61
|
+
*/
|
|
62
|
+
async createFromCorrections(analyses) {
|
|
63
|
+
const results = [];
|
|
64
|
+
for (const analysis of analyses) {
|
|
65
|
+
const result = await this.createFromCorrection(analysis);
|
|
66
|
+
results.push(result);
|
|
67
|
+
}
|
|
68
|
+
return results;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Select the appropriate creator based on category
|
|
72
|
+
*/
|
|
73
|
+
selectCreator(category) {
|
|
74
|
+
switch (category) {
|
|
75
|
+
// Tribal knowledge categories
|
|
76
|
+
case 'tribal_miss':
|
|
77
|
+
case 'style_preference':
|
|
78
|
+
case 'naming_convention':
|
|
79
|
+
return this.tribalCreator;
|
|
80
|
+
// Pattern rationale categories
|
|
81
|
+
case 'pattern_violation':
|
|
82
|
+
case 'architecture_mismatch':
|
|
83
|
+
case 'constraint_violation':
|
|
84
|
+
return this.patternCreator;
|
|
85
|
+
// Code smell categories
|
|
86
|
+
case 'security_issue':
|
|
87
|
+
case 'performance_issue':
|
|
88
|
+
case 'api_misuse':
|
|
89
|
+
return this.smellCreator;
|
|
90
|
+
// Default to tribal for uncategorized
|
|
91
|
+
case 'other':
|
|
92
|
+
default:
|
|
93
|
+
return this.tribalCreator;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Create a tribal memory directly
|
|
98
|
+
*/
|
|
99
|
+
createTribalMemory(analysis) {
|
|
100
|
+
return this.tribalCreator.create(analysis);
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Create a pattern rationale memory directly
|
|
104
|
+
*/
|
|
105
|
+
createPatternRationaleMemory(analysis) {
|
|
106
|
+
return this.patternCreator.create(analysis);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Create a code smell memory directly
|
|
110
|
+
*/
|
|
111
|
+
createCodeSmellMemory(analysis) {
|
|
112
|
+
return this.smellCreator.create(analysis);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Get suggested memory type for a category
|
|
116
|
+
*/
|
|
117
|
+
getSuggestedType(category) {
|
|
118
|
+
const typeMap = {
|
|
119
|
+
tribal_miss: 'tribal',
|
|
120
|
+
style_preference: 'tribal',
|
|
121
|
+
naming_convention: 'tribal',
|
|
122
|
+
pattern_violation: 'pattern_rationale',
|
|
123
|
+
architecture_mismatch: 'pattern_rationale',
|
|
124
|
+
constraint_violation: 'pattern_rationale',
|
|
125
|
+
security_issue: 'code_smell',
|
|
126
|
+
performance_issue: 'code_smell',
|
|
127
|
+
api_misuse: 'code_smell',
|
|
128
|
+
other: 'tribal',
|
|
129
|
+
};
|
|
130
|
+
return typeMap[category];
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Create factory with default dependencies
|
|
134
|
+
*/
|
|
135
|
+
static create(storage) {
|
|
136
|
+
return new LearningMemoryFactory(new TribalMemoryCreator(), new PatternRationaleCreator(), new CodeSmellCreator(), storage);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=memory-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-factory.js","sourceRoot":"","sources":["../../../src/learning/factory/memory-factory.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH,OAAO,EAAE,mBAAmB,EAAsB,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAgBtD;;;;;GAKG;AACH,MAAM,OAAO,qBAAqB;IAStB;IARF,aAAa,CAAsB;IACnC,cAAc,CAA0B;IACxC,YAAY,CAAmB;IAEvC,YACE,aAAmC,EACnC,cAAwC,EACxC,YAA+B,EACvB,OAAwB;QAAxB,YAAO,GAAP,OAAO,CAAiB;QAEhC,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,IAAI,mBAAmB,EAAE,CAAC;QAChE,IAAI,CAAC,cAAc,GAAG,cAAc,IAAI,IAAI,uBAAuB,EAAE,CAAC;QACtE,IAAI,CAAC,YAAY,GAAG,YAAY,IAAI,IAAI,gBAAgB,EAAE,CAAC;IAC7D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,QAA4B;QACrD,6BAA6B;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEtD,gBAAgB;QAChB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAExC,gCAAgC;QAChC,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,SAA6B,CAAC;QAElC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,CAAC;gBACH,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9C,MAAM,GAAG,IAAI,CAAC;YAChB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAkB;YAC5B,MAAM;YACN,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,MAAM;SACP,CAAC;QAEF,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;QAC/B,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB,CACzB,QAA8B;QAE9B,MAAM,OAAO,GAAoB,EAAE,CAAC;QAEpC,KAAK,MAAM,QAAQ,IAAI,QAAQ,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YACzD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvB,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,aAAa,CACX,QAA4B;QAE5B,QAAQ,QAAQ,EAAE,CAAC;YACjB,8BAA8B;YAC9B,KAAK,aAAa,CAAC;YACnB,KAAK,kBAAkB,CAAC;YACxB,KAAK,mBAAmB;gBACtB,OAAO,IAAI,CAAC,aAAa,CAAC;YAE5B,+BAA+B;YAC/B,KAAK,mBAAmB,CAAC;YACzB,KAAK,uBAAuB,CAAC;YAC7B,KAAK,sBAAsB;gBACzB,OAAO,IAAI,CAAC,cAAc,CAAC;YAE7B,wBAAwB;YACxB,KAAK,gBAAgB,CAAC;YACtB,KAAK,mBAAmB,CAAC;YACzB,KAAK,YAAY;gBACf,OAAO,IAAI,CAAC,YAAY,CAAC;YAE3B,sCAAsC;YACtC,KAAK,OAAO,CAAC;YACb;gBACE,OAAO,IAAI,CAAC,aAAa,CAAC;QAC9B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,QAA4B;QAC7C,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,4BAA4B,CAAC,QAA4B;QACvD,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,qBAAqB,CAAC,QAA4B;QAChD,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,QAA4B;QAC3C,MAAM,OAAO,GAAuC;YAClD,WAAW,EAAE,QAAQ;YACrB,gBAAgB,EAAE,QAAQ;YAC1B,iBAAiB,EAAE,QAAQ;YAC3B,iBAAiB,EAAE,mBAAmB;YACtC,qBAAqB,EAAE,mBAAmB;YAC1C,oBAAoB,EAAE,mBAAmB;YACzC,cAAc,EAAE,YAAY;YAC5B,iBAAiB,EAAE,YAAY;YAC/B,UAAU,EAAE,YAAY;YACxB,KAAK,EAAE,QAAQ;SAChB,CAAC;QAEF,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,OAAwB;QACpC,OAAO,IAAI,qBAAqB,CAC9B,IAAI,mBAAmB,EAAE,EACzB,IAAI,uBAAuB,EAAE,EAC7B,IAAI,gBAAgB,EAAE,EACtB,OAAO,CACR,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pattern Rationale Creator
|
|
3
|
+
*
|
|
4
|
+
* Creates pattern rationale memories from corrections that
|
|
5
|
+
* reveal why patterns exist or should be followed.
|
|
6
|
+
*
|
|
7
|
+
* @module learning/factory/pattern-creator
|
|
8
|
+
*/
|
|
9
|
+
import type { PatternRationaleMemory } from '../../types/pattern-rationale.js';
|
|
10
|
+
import type { AnalyzedCorrection } from '../../types/learning.js';
|
|
11
|
+
import type { MemoryCreator } from './tribal-creator.js';
|
|
12
|
+
/**
|
|
13
|
+
* Pattern Rationale Creator
|
|
14
|
+
*
|
|
15
|
+
* Creates pattern rationale memories from corrections that
|
|
16
|
+
* indicate pattern violations or architectural mismatches.
|
|
17
|
+
*/
|
|
18
|
+
export declare class PatternRationaleCreator implements MemoryCreator<PatternRationaleMemory> {
|
|
19
|
+
/**
|
|
20
|
+
* Create a pattern rationale memory from an analyzed correction
|
|
21
|
+
*/
|
|
22
|
+
create(analysis: AnalyzedCorrection): PatternRationaleMemory;
|
|
23
|
+
/**
|
|
24
|
+
* Find related pattern ID from analysis
|
|
25
|
+
*/
|
|
26
|
+
findRelatedPattern(analysis: AnalyzedCorrection): string | null;
|
|
27
|
+
/**
|
|
28
|
+
* Build the rationale from the analysis
|
|
29
|
+
*/
|
|
30
|
+
buildRationale(analysis: AnalyzedCorrection): string;
|
|
31
|
+
/**
|
|
32
|
+
* Infer pattern name from analysis
|
|
33
|
+
*/
|
|
34
|
+
private inferPatternName;
|
|
35
|
+
/**
|
|
36
|
+
* Infer pattern category from analysis
|
|
37
|
+
*/
|
|
38
|
+
private inferPatternCategory;
|
|
39
|
+
/**
|
|
40
|
+
* Extract business context from analysis
|
|
41
|
+
*/
|
|
42
|
+
private extractBusinessContext;
|
|
43
|
+
/**
|
|
44
|
+
* Extract technical context from analysis
|
|
45
|
+
*/
|
|
46
|
+
private extractTechnicalContext;
|
|
47
|
+
/**
|
|
48
|
+
* Extract rejected alternatives from analysis
|
|
49
|
+
*/
|
|
50
|
+
private extractAlternatives;
|
|
51
|
+
/**
|
|
52
|
+
* Extract tradeoffs from analysis
|
|
53
|
+
*/
|
|
54
|
+
private extractTradeoffs;
|
|
55
|
+
/**
|
|
56
|
+
* Generate a summary for the memory
|
|
57
|
+
*/
|
|
58
|
+
private generateSummary;
|
|
59
|
+
/**
|
|
60
|
+
* Determine importance based on analysis
|
|
61
|
+
*/
|
|
62
|
+
private determineImportance;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=pattern-creator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-creator.d.ts","sourceRoot":"","sources":["../../../src/learning/factory/pattern-creator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD;;;;;GAKG;AACH,qBAAa,uBAAwB,YAAW,aAAa,CAAC,sBAAsB,CAAC;IACnF;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,kBAAkB,GAAG,sBAAsB;IA2D5D;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI;IAW/D;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM;IAwBpD;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA6BxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAe5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAmB9B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAwB/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAuBxB;;OAEG;IACH,OAAO,CAAC,eAAe;IAUvB;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAuB5B"}
|
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pattern Rationale Creator
|
|
3
|
+
*
|
|
4
|
+
* Creates pattern rationale memories from corrections that
|
|
5
|
+
* reveal why patterns exist or should be followed.
|
|
6
|
+
*
|
|
7
|
+
* @module learning/factory/pattern-creator
|
|
8
|
+
*/
|
|
9
|
+
import { randomUUID } from 'crypto';
|
|
10
|
+
/**
|
|
11
|
+
* Pattern Rationale Creator
|
|
12
|
+
*
|
|
13
|
+
* Creates pattern rationale memories from corrections that
|
|
14
|
+
* indicate pattern violations or architectural mismatches.
|
|
15
|
+
*/
|
|
16
|
+
export class PatternRationaleCreator {
|
|
17
|
+
/**
|
|
18
|
+
* Create a pattern rationale memory from an analyzed correction
|
|
19
|
+
*/
|
|
20
|
+
create(analysis) {
|
|
21
|
+
const patternId = this.findRelatedPattern(analysis);
|
|
22
|
+
const patternName = this.inferPatternName(analysis);
|
|
23
|
+
const patternCategory = this.inferPatternCategory(analysis);
|
|
24
|
+
const rationale = this.buildRationale(analysis);
|
|
25
|
+
const businessContext = this.extractBusinessContext(analysis);
|
|
26
|
+
const technicalContext = this.extractTechnicalContext(analysis);
|
|
27
|
+
const alternativesRejected = this.extractAlternatives(analysis);
|
|
28
|
+
const tradeoffs = this.extractTradeoffs(analysis);
|
|
29
|
+
const now = new Date().toISOString();
|
|
30
|
+
const memory = {
|
|
31
|
+
id: randomUUID(),
|
|
32
|
+
type: 'pattern_rationale',
|
|
33
|
+
patternId: patternId ?? `inferred-${randomUUID().slice(0, 8)}`,
|
|
34
|
+
patternName,
|
|
35
|
+
patternCategory,
|
|
36
|
+
rationale,
|
|
37
|
+
summary: this.generateSummary(patternName, rationale),
|
|
38
|
+
confidence: analysis.principle.confidence,
|
|
39
|
+
importance: this.determineImportance(analysis),
|
|
40
|
+
transactionTime: {
|
|
41
|
+
recordedAt: now,
|
|
42
|
+
},
|
|
43
|
+
validTime: {
|
|
44
|
+
validFrom: now,
|
|
45
|
+
},
|
|
46
|
+
accessCount: 0,
|
|
47
|
+
createdAt: now,
|
|
48
|
+
updatedAt: now,
|
|
49
|
+
tags: [...analysis.principle.keywords, patternCategory],
|
|
50
|
+
};
|
|
51
|
+
// Add optional properties only if they have values
|
|
52
|
+
if (businessContext) {
|
|
53
|
+
memory.businessContext = businessContext;
|
|
54
|
+
}
|
|
55
|
+
if (technicalContext) {
|
|
56
|
+
memory.technicalContext = technicalContext;
|
|
57
|
+
}
|
|
58
|
+
if (alternativesRejected) {
|
|
59
|
+
memory.alternativesRejected = alternativesRejected;
|
|
60
|
+
}
|
|
61
|
+
if (tradeoffs) {
|
|
62
|
+
memory.tradeoffs = tradeoffs;
|
|
63
|
+
}
|
|
64
|
+
if (analysis.metadata?.filePath) {
|
|
65
|
+
memory.linkedFiles = [analysis.metadata.filePath];
|
|
66
|
+
}
|
|
67
|
+
if (patternId) {
|
|
68
|
+
memory.linkedPatterns = [patternId];
|
|
69
|
+
}
|
|
70
|
+
else if (analysis.metadata?.relatedPatterns) {
|
|
71
|
+
memory.linkedPatterns = analysis.metadata.relatedPatterns;
|
|
72
|
+
}
|
|
73
|
+
return memory;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Find related pattern ID from analysis
|
|
77
|
+
*/
|
|
78
|
+
findRelatedPattern(analysis) {
|
|
79
|
+
// Check metadata for related patterns
|
|
80
|
+
const firstPattern = analysis.metadata?.relatedPatterns?.[0];
|
|
81
|
+
if (firstPattern) {
|
|
82
|
+
return firstPattern;
|
|
83
|
+
}
|
|
84
|
+
// No pattern ID available
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Build the rationale from the analysis
|
|
89
|
+
*/
|
|
90
|
+
buildRationale(analysis) {
|
|
91
|
+
const parts = [];
|
|
92
|
+
// Start with the principle
|
|
93
|
+
parts.push(analysis.principle.statement);
|
|
94
|
+
// Add explanation if different
|
|
95
|
+
if (analysis.principle.explanation !== analysis.principle.statement) {
|
|
96
|
+
parts.push(analysis.principle.explanation);
|
|
97
|
+
}
|
|
98
|
+
// Add context from feedback
|
|
99
|
+
if (analysis.feedback.length > analysis.principle.statement.length) {
|
|
100
|
+
const additionalContext = analysis.feedback
|
|
101
|
+
.replace(analysis.principle.statement, '')
|
|
102
|
+
.trim();
|
|
103
|
+
if (additionalContext.length > 20) {
|
|
104
|
+
parts.push(additionalContext);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
return parts.join('\n\n');
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Infer pattern name from analysis
|
|
111
|
+
*/
|
|
112
|
+
inferPatternName(analysis) {
|
|
113
|
+
// Look for pattern names in feedback
|
|
114
|
+
const patternKeywords = [
|
|
115
|
+
'repository', 'factory', 'singleton', 'observer', 'strategy',
|
|
116
|
+
'decorator', 'adapter', 'facade', 'proxy', 'middleware',
|
|
117
|
+
'controller', 'service', 'model', 'view', 'presenter',
|
|
118
|
+
'barrel', 'module', 'component', 'hook', 'context',
|
|
119
|
+
];
|
|
120
|
+
const lowerFeedback = analysis.feedback.toLowerCase();
|
|
121
|
+
for (const pattern of patternKeywords) {
|
|
122
|
+
if (lowerFeedback.includes(pattern)) {
|
|
123
|
+
return pattern.charAt(0).toUpperCase() + pattern.slice(1) + ' Pattern';
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
// Generate name from category
|
|
127
|
+
const categoryNames = {
|
|
128
|
+
pattern_violation: 'Coding Pattern',
|
|
129
|
+
architecture_mismatch: 'Architecture Pattern',
|
|
130
|
+
api_misuse: 'API Usage Pattern',
|
|
131
|
+
naming_convention: 'Naming Pattern',
|
|
132
|
+
style_preference: 'Style Pattern',
|
|
133
|
+
};
|
|
134
|
+
return categoryNames[analysis.category] || 'Code Pattern';
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Infer pattern category from analysis
|
|
138
|
+
*/
|
|
139
|
+
inferPatternCategory(analysis) {
|
|
140
|
+
// Map correction category to pattern category
|
|
141
|
+
const categoryMap = {
|
|
142
|
+
pattern_violation: 'structural',
|
|
143
|
+
architecture_mismatch: 'structural',
|
|
144
|
+
api_misuse: 'api',
|
|
145
|
+
naming_convention: 'structural',
|
|
146
|
+
style_preference: 'styling',
|
|
147
|
+
security_issue: 'security',
|
|
148
|
+
performance_issue: 'performance',
|
|
149
|
+
};
|
|
150
|
+
return categoryMap[analysis.category] || 'structural';
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Extract business context from analysis
|
|
154
|
+
*/
|
|
155
|
+
extractBusinessContext(analysis) {
|
|
156
|
+
// Look for business-related phrases
|
|
157
|
+
const businessPatterns = [
|
|
158
|
+
/business\s+([^.!?]+)/gi,
|
|
159
|
+
/requirement[s]?\s+([^.!?]+)/gi,
|
|
160
|
+
/stakeholder[s]?\s+([^.!?]+)/gi,
|
|
161
|
+
/user[s]?\s+need[s]?\s+([^.!?]+)/gi,
|
|
162
|
+
];
|
|
163
|
+
for (const pattern of businessPatterns) {
|
|
164
|
+
const match = analysis.feedback.match(pattern);
|
|
165
|
+
if (match) {
|
|
166
|
+
return match[0];
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
return undefined;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Extract technical context from analysis
|
|
173
|
+
*/
|
|
174
|
+
extractTechnicalContext(analysis) {
|
|
175
|
+
// Look for technical explanations
|
|
176
|
+
const technicalPatterns = [
|
|
177
|
+
/because\s+([^.!?]+)/gi,
|
|
178
|
+
/since\s+([^.!?]+)/gi,
|
|
179
|
+
/due\s+to\s+([^.!?]+)/gi,
|
|
180
|
+
/technically\s+([^.!?]+)/gi,
|
|
181
|
+
];
|
|
182
|
+
for (const pattern of technicalPatterns) {
|
|
183
|
+
const match = analysis.feedback.match(pattern);
|
|
184
|
+
if (match) {
|
|
185
|
+
return match[0];
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
// Use diff summary if available
|
|
189
|
+
if (analysis.diff?.summary) {
|
|
190
|
+
return `Changes: ${analysis.diff.summary}`;
|
|
191
|
+
}
|
|
192
|
+
return undefined;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Extract rejected alternatives from analysis
|
|
196
|
+
*/
|
|
197
|
+
extractAlternatives(analysis) {
|
|
198
|
+
const alternatives = [];
|
|
199
|
+
// Look for "instead of" patterns
|
|
200
|
+
const alternativePatterns = [
|
|
201
|
+
/instead\s+of\s+([^.!?,]+)/gi,
|
|
202
|
+
/rather\s+than\s+([^.!?,]+)/gi,
|
|
203
|
+
/not\s+([^.!?,]+)/gi,
|
|
204
|
+
];
|
|
205
|
+
for (const pattern of alternativePatterns) {
|
|
206
|
+
const matches = analysis.feedback.matchAll(pattern);
|
|
207
|
+
for (const match of matches) {
|
|
208
|
+
if (match[1] && match[1].length > 5) {
|
|
209
|
+
alternatives.push(match[1].trim());
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
// Add original code as rejected alternative if we have corrected code
|
|
214
|
+
if (analysis.correctedCode && analysis.original) {
|
|
215
|
+
alternatives.push(`Original approach: ${analysis.original.slice(0, 100)}...`);
|
|
216
|
+
}
|
|
217
|
+
return alternatives.length > 0 ? alternatives : undefined;
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Extract tradeoffs from analysis
|
|
221
|
+
*/
|
|
222
|
+
extractTradeoffs(analysis) {
|
|
223
|
+
const tradeoffs = [];
|
|
224
|
+
// Look for tradeoff indicators
|
|
225
|
+
const tradeoffPatterns = [
|
|
226
|
+
/tradeoff[s]?\s*[:\s]+([^.!?]+)/gi,
|
|
227
|
+
/downside[s]?\s*[:\s]+([^.!?]+)/gi,
|
|
228
|
+
/however\s+([^.!?]+)/gi,
|
|
229
|
+
/but\s+([^.!?]+)/gi,
|
|
230
|
+
];
|
|
231
|
+
for (const pattern of tradeoffPatterns) {
|
|
232
|
+
const matches = analysis.feedback.matchAll(pattern);
|
|
233
|
+
for (const match of matches) {
|
|
234
|
+
if (match[1] && match[1].length > 10) {
|
|
235
|
+
tradeoffs.push(match[1].trim());
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
return tradeoffs.length > 0 ? tradeoffs : undefined;
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Generate a summary for the memory
|
|
243
|
+
*/
|
|
244
|
+
generateSummary(patternName, rationale) {
|
|
245
|
+
const shortRationale = rationale.split('\n')[0] ?? rationale;
|
|
246
|
+
if (shortRationale.length <= 80) {
|
|
247
|
+
return `[${patternName}] ${shortRationale}`;
|
|
248
|
+
}
|
|
249
|
+
return `[${patternName}] ${shortRationale.slice(0, 77)}...`;
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Determine importance based on analysis
|
|
253
|
+
*/
|
|
254
|
+
determineImportance(analysis) {
|
|
255
|
+
// Architecture and security patterns are high importance
|
|
256
|
+
if (analysis.category === 'architecture_mismatch' ||
|
|
257
|
+
analysis.category === 'security_issue') {
|
|
258
|
+
return 'high';
|
|
259
|
+
}
|
|
260
|
+
// Hard rules are high importance
|
|
261
|
+
if (analysis.principle.isHardRule) {
|
|
262
|
+
return 'high';
|
|
263
|
+
}
|
|
264
|
+
// High confidence principles are normal importance
|
|
265
|
+
if (analysis.principle.confidence > 0.7) {
|
|
266
|
+
return 'normal';
|
|
267
|
+
}
|
|
268
|
+
return 'low';
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
//# sourceMappingURL=pattern-creator.js.map
|