fivocell 1.0.0 → 1.0.2
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/LICENSE +202 -98
- package/README.md +418 -180
- package/dist/cli.js +698 -80
- package/dist/cli.js.map +1 -1
- package/dist/core/__tests__/ab-test-framework.test.d.ts +2 -0
- package/dist/core/__tests__/ab-test-framework.test.d.ts.map +1 -0
- package/dist/core/__tests__/ab-test-framework.test.js +43 -0
- package/dist/core/__tests__/ab-test-framework.test.js.map +1 -0
- package/dist/core/__tests__/ai-memory.test.d.ts +2 -0
- package/dist/core/__tests__/ai-memory.test.d.ts.map +1 -0
- package/dist/core/__tests__/ai-memory.test.js +143 -0
- package/dist/core/__tests__/ai-memory.test.js.map +1 -0
- package/dist/core/__tests__/ast-extractor.test.d.ts +2 -0
- package/dist/core/__tests__/ast-extractor.test.d.ts.map +1 -0
- package/dist/core/__tests__/ast-extractor.test.js +30 -0
- package/dist/core/__tests__/ast-extractor.test.js.map +1 -0
- package/dist/core/__tests__/build-failure-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/build-failure-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/build-failure-predictor.test.js +76 -0
- package/dist/core/__tests__/build-failure-predictor.test.js.map +1 -0
- package/dist/core/__tests__/chapter3-verify.test.d.ts +2 -0
- package/dist/core/__tests__/chapter3-verify.test.d.ts.map +1 -0
- package/dist/core/__tests__/chapter3-verify.test.js +315 -0
- package/dist/core/__tests__/chapter3-verify.test.js.map +1 -0
- package/dist/core/__tests__/chapter4-hostile.test.d.ts +11 -0
- package/dist/core/__tests__/chapter4-hostile.test.d.ts.map +1 -0
- package/dist/core/__tests__/chapter4-hostile.test.js +269 -0
- package/dist/core/__tests__/chapter4-hostile.test.js.map +1 -0
- package/dist/core/__tests__/chapter4-verify.test.d.ts +2 -0
- package/dist/core/__tests__/chapter4-verify.test.d.ts.map +1 -0
- package/dist/core/__tests__/chapter4-verify.test.js +349 -0
- package/dist/core/__tests__/chapter4-verify.test.js.map +1 -0
- package/dist/core/__tests__/chapter8-hostile.test.d.ts +2 -0
- package/dist/core/__tests__/chapter8-hostile.test.d.ts.map +1 -0
- package/dist/core/__tests__/chapter8-hostile.test.js +445 -0
- package/dist/core/__tests__/chapter8-hostile.test.js.map +1 -0
- package/dist/core/__tests__/chapter9-hostile.test.d.ts +2 -0
- package/dist/core/__tests__/chapter9-hostile.test.d.ts.map +1 -0
- package/dist/core/__tests__/chapter9-hostile.test.js +783 -0
- package/dist/core/__tests__/chapter9-hostile.test.js.map +1 -0
- package/dist/core/__tests__/circular-dependency-detector.test.d.ts +2 -0
- package/dist/core/__tests__/circular-dependency-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/circular-dependency-detector.test.js +55 -0
- package/dist/core/__tests__/circular-dependency-detector.test.js.map +1 -0
- package/dist/core/__tests__/community-full.test.d.ts +2 -0
- package/dist/core/__tests__/community-full.test.d.ts.map +1 -0
- package/dist/core/__tests__/community-full.test.js +70 -0
- package/dist/core/__tests__/community-full.test.js.map +1 -0
- package/dist/core/__tests__/community-live.test.d.ts +2 -0
- package/dist/core/__tests__/community-live.test.d.ts.map +1 -0
- package/dist/core/__tests__/community-live.test.js +67 -0
- package/dist/core/__tests__/community-live.test.js.map +1 -0
- package/dist/core/__tests__/complexity-analyzer.test.d.ts +2 -0
- package/dist/core/__tests__/complexity-analyzer.test.d.ts.map +1 -0
- package/dist/core/__tests__/complexity-analyzer.test.js +54 -0
- package/dist/core/__tests__/complexity-analyzer.test.js.map +1 -0
- package/dist/core/__tests__/config-attribution.test.d.ts +2 -0
- package/dist/core/__tests__/config-attribution.test.d.ts.map +1 -0
- package/dist/core/__tests__/config-attribution.test.js +45 -0
- package/dist/core/__tests__/config-attribution.test.js.map +1 -0
- package/dist/core/__tests__/conflict-detector.test.d.ts +2 -0
- package/dist/core/__tests__/conflict-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/conflict-detector.test.js +120 -0
- package/dist/core/__tests__/conflict-detector.test.js.map +1 -0
- package/dist/core/__tests__/context-restore.test.d.ts +2 -0
- package/dist/core/__tests__/context-restore.test.d.ts.map +1 -0
- package/dist/core/__tests__/context-restore.test.js +75 -0
- package/dist/core/__tests__/context-restore.test.js.map +1 -0
- package/dist/core/__tests__/convention-detector.test.d.ts +2 -0
- package/dist/core/__tests__/convention-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/convention-detector.test.js +97 -0
- package/dist/core/__tests__/convention-detector.test.js.map +1 -0
- package/dist/core/__tests__/cost-optimizer.test.d.ts +1 -0
- package/dist/core/__tests__/cost-optimizer.test.d.ts.map +1 -0
- package/dist/core/__tests__/cost-optimizer.test.js +92 -0
- package/dist/core/__tests__/cost-optimizer.test.js.map +1 -0
- package/dist/core/__tests__/cross-domain-projections.test.d.ts +2 -0
- package/dist/core/__tests__/cross-domain-projections.test.d.ts.map +1 -0
- package/dist/core/__tests__/cross-domain-projections.test.js +36 -0
- package/dist/core/__tests__/cross-domain-projections.test.js.map +1 -0
- package/dist/core/__tests__/cross-project-sync.test.d.ts +2 -0
- package/dist/core/__tests__/cross-project-sync.test.d.ts.map +1 -0
- package/dist/core/__tests__/cross-project-sync.test.js +67 -0
- package/dist/core/__tests__/cross-project-sync.test.js.map +1 -0
- package/dist/core/__tests__/dead-code-detector.test.d.ts +2 -0
- package/dist/core/__tests__/dead-code-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/dead-code-detector.test.js +41 -0
- package/dist/core/__tests__/dead-code-detector.test.js.map +1 -0
- package/dist/core/__tests__/dependency-health-checker.test.d.ts +2 -0
- package/dist/core/__tests__/dependency-health-checker.test.d.ts.map +1 -0
- package/dist/core/__tests__/dependency-health-checker.test.js +50 -0
- package/dist/core/__tests__/dependency-health-checker.test.js.map +1 -0
- package/dist/core/__tests__/duplication-detector.test.d.ts +2 -0
- package/dist/core/__tests__/duplication-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/duplication-detector.test.js +46 -0
- package/dist/core/__tests__/duplication-detector.test.js.map +1 -0
- package/dist/core/__tests__/error-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/error-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/error-predictor.test.js +65 -0
- package/dist/core/__tests__/error-predictor.test.js.map +1 -0
- package/dist/core/__tests__/explainability.test.d.ts +2 -0
- package/dist/core/__tests__/explainability.test.d.ts.map +1 -0
- package/dist/core/__tests__/explainability.test.js +112 -0
- package/dist/core/__tests__/explainability.test.js.map +1 -0
- package/dist/core/__tests__/failure-memory.test.d.ts +2 -0
- package/dist/core/__tests__/failure-memory.test.d.ts.map +1 -0
- package/dist/core/__tests__/failure-memory.test.js +124 -0
- package/dist/core/__tests__/failure-memory.test.js.map +1 -0
- package/dist/core/__tests__/git-branch-pregenerator.test.d.ts +2 -0
- package/dist/core/__tests__/git-branch-pregenerator.test.d.ts.map +1 -0
- package/dist/core/__tests__/git-branch-pregenerator.test.js +44 -0
- package/dist/core/__tests__/git-branch-pregenerator.test.js.map +1 -0
- package/dist/core/__tests__/handoff-detector.test.d.ts +2 -0
- package/dist/core/__tests__/handoff-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/handoff-detector.test.js +71 -0
- package/dist/core/__tests__/handoff-detector.test.js.map +1 -0
- package/dist/core/__tests__/interruption-recovery.test.d.ts +2 -0
- package/dist/core/__tests__/interruption-recovery.test.d.ts.map +1 -0
- package/dist/core/__tests__/interruption-recovery.test.js +66 -0
- package/dist/core/__tests__/interruption-recovery.test.js.map +1 -0
- package/dist/core/__tests__/knowledge-graph.test.d.ts +1 -0
- package/dist/core/__tests__/knowledge-graph.test.d.ts.map +1 -0
- package/dist/core/__tests__/knowledge-graph.test.js +124 -0
- package/dist/core/__tests__/knowledge-graph.test.js.map +1 -0
- package/dist/core/__tests__/knowledge-silo-detector.test.d.ts +2 -0
- package/dist/core/__tests__/knowledge-silo-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/knowledge-silo-detector.test.js +77 -0
- package/dist/core/__tests__/knowledge-silo-detector.test.js.map +1 -0
- package/dist/core/__tests__/language-switch-assistant.test.d.ts +2 -0
- package/dist/core/__tests__/language-switch-assistant.test.d.ts.map +1 -0
- package/dist/core/__tests__/language-switch-assistant.test.js +34 -0
- package/dist/core/__tests__/language-switch-assistant.test.js.map +1 -0
- package/dist/core/__tests__/marketplace.test.d.ts +2 -0
- package/dist/core/__tests__/marketplace.test.d.ts.map +1 -0
- package/dist/core/__tests__/marketplace.test.js +96 -0
- package/dist/core/__tests__/marketplace.test.js.map +1 -0
- package/dist/core/__tests__/merge-conflict-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/merge-conflict-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/merge-conflict-predictor.test.js +36 -0
- package/dist/core/__tests__/merge-conflict-predictor.test.js.map +1 -0
- package/dist/core/__tests__/next-action-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/next-action-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/next-action-predictor.test.js +57 -0
- package/dist/core/__tests__/next-action-predictor.test.js.map +1 -0
- package/dist/core/__tests__/offline-queue.test.d.ts +2 -0
- package/dist/core/__tests__/offline-queue.test.d.ts.map +1 -0
- package/dist/core/__tests__/offline-queue.test.js +84 -0
- package/dist/core/__tests__/offline-queue.test.js.map +1 -0
- package/dist/core/__tests__/organization-memory.test.d.ts +2 -0
- package/dist/core/__tests__/organization-memory.test.d.ts.map +1 -0
- package/dist/core/__tests__/organization-memory.test.js +89 -0
- package/dist/core/__tests__/organization-memory.test.js.map +1 -0
- package/dist/core/__tests__/pattern-utils.test.d.ts +2 -0
- package/dist/core/__tests__/pattern-utils.test.d.ts.map +1 -0
- package/dist/core/__tests__/pattern-utils.test.js +52 -0
- package/dist/core/__tests__/pattern-utils.test.js.map +1 -0
- package/dist/core/__tests__/performance-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/performance-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/performance-predictor.test.js +60 -0
- package/dist/core/__tests__/performance-predictor.test.js.map +1 -0
- package/dist/core/__tests__/playbook-generator.test.d.ts +2 -0
- package/dist/core/__tests__/playbook-generator.test.d.ts.map +1 -0
- package/dist/core/__tests__/playbook-generator.test.js +94 -0
- package/dist/core/__tests__/playbook-generator.test.js.map +1 -0
- package/dist/core/__tests__/pr-review-assistant.test.d.ts +2 -0
- package/dist/core/__tests__/pr-review-assistant.test.d.ts.map +1 -0
- package/dist/core/__tests__/pr-review-assistant.test.js +35 -0
- package/dist/core/__tests__/pr-review-assistant.test.js.map +1 -0
- package/dist/core/__tests__/privacy-manager.test.d.ts +2 -0
- package/dist/core/__tests__/privacy-manager.test.d.ts.map +1 -0
- package/dist/core/__tests__/privacy-manager.test.js +97 -0
- package/dist/core/__tests__/privacy-manager.test.js.map +1 -0
- package/dist/core/__tests__/project-dna.test.d.ts +2 -0
- package/dist/core/__tests__/project-dna.test.d.ts.map +1 -0
- package/dist/core/__tests__/project-dna.test.js +135 -0
- package/dist/core/__tests__/project-dna.test.js.map +1 -0
- package/dist/core/__tests__/regex-extractor.test.d.ts +2 -0
- package/dist/core/__tests__/regex-extractor.test.d.ts.map +1 -0
- package/dist/core/__tests__/regex-extractor.test.js +49 -0
- package/dist/core/__tests__/regex-extractor.test.js.map +1 -0
- package/dist/core/__tests__/reputation.test.d.ts +2 -0
- package/dist/core/__tests__/reputation.test.d.ts.map +1 -0
- package/dist/core/__tests__/reputation.test.js +100 -0
- package/dist/core/__tests__/reputation.test.js.map +1 -0
- package/dist/core/__tests__/security-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/security-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/security-predictor.test.js +60 -0
- package/dist/core/__tests__/security-predictor.test.js.map +1 -0
- package/dist/core/__tests__/signal-capture.test.d.ts +2 -0
- package/dist/core/__tests__/signal-capture.test.d.ts.map +1 -0
- package/dist/core/__tests__/signal-capture.test.js +98 -0
- package/dist/core/__tests__/signal-capture.test.js.map +1 -0
- package/dist/core/__tests__/solution-index.test.d.ts +2 -0
- package/dist/core/__tests__/solution-index.test.d.ts.map +1 -0
- package/dist/core/__tests__/solution-index.test.js +78 -0
- package/dist/core/__tests__/solution-index.test.js.map +1 -0
- package/dist/core/__tests__/standup-generator.test.d.ts +2 -0
- package/dist/core/__tests__/standup-generator.test.d.ts.map +1 -0
- package/dist/core/__tests__/standup-generator.test.js +46 -0
- package/dist/core/__tests__/standup-generator.test.js.map +1 -0
- package/dist/core/__tests__/team-composer.test.d.ts +2 -0
- package/dist/core/__tests__/team-composer.test.d.ts.map +1 -0
- package/dist/core/__tests__/team-composer.test.js +113 -0
- package/dist/core/__tests__/team-composer.test.js.map +1 -0
- package/dist/core/__tests__/test-anticipator.test.d.ts +2 -0
- package/dist/core/__tests__/test-anticipator.test.d.ts.map +1 -0
- package/dist/core/__tests__/test-anticipator.test.js +41 -0
- package/dist/core/__tests__/test-anticipator.test.js.map +1 -0
- package/dist/core/__tests__/time-saved.test.d.ts +1 -0
- package/dist/core/__tests__/time-saved.test.d.ts.map +1 -0
- package/dist/core/__tests__/time-saved.test.js +93 -0
- package/dist/core/__tests__/time-saved.test.js.map +1 -0
- package/dist/core/__tests__/validation-run.test.d.ts +7 -0
- package/dist/core/__tests__/validation-run.test.d.ts.map +1 -0
- package/dist/core/__tests__/validation-run.test.js +510 -0
- package/dist/core/__tests__/validation-run.test.js.map +1 -0
- package/dist/core/__tests__/workflow-outcome-graph.test.d.ts +2 -0
- package/dist/core/__tests__/workflow-outcome-graph.test.d.ts.map +1 -0
- package/dist/core/__tests__/workflow-outcome-graph.test.js +89 -0
- package/dist/core/__tests__/workflow-outcome-graph.test.js.map +1 -0
- package/dist/core/ai-memory.d.ts +84 -0
- package/dist/core/ai-memory.d.ts.map +1 -0
- package/dist/core/ai-memory.js +238 -0
- package/dist/core/ai-memory.js.map +1 -0
- package/dist/core/architecture-engine.d.ts +104 -0
- package/dist/core/architecture-engine.d.ts.map +1 -0
- package/dist/core/architecture-engine.js +216 -0
- package/dist/core/architecture-engine.js.map +1 -0
- package/dist/core/ast-differ.d.ts +15 -0
- package/dist/core/ast-differ.d.ts.map +1 -0
- package/dist/core/ast-differ.js +528 -0
- package/dist/core/ast-differ.js.map +1 -0
- package/dist/core/ast-extractor.d.ts +1 -1
- package/dist/core/ast-extractor.d.ts.map +1 -1
- package/dist/core/ast-extractor.js +7 -5
- package/dist/core/ast-extractor.js.map +1 -1
- package/dist/core/backend-engine.d.ts +40 -0
- package/dist/core/backend-engine.d.ts.map +1 -0
- package/dist/core/backend-engine.js +131 -0
- package/dist/core/backend-engine.js.map +1 -0
- package/dist/core/blind-spot-engine.d.ts +29 -0
- package/dist/core/blind-spot-engine.d.ts.map +1 -0
- package/dist/core/blind-spot-engine.js +579 -0
- package/dist/core/blind-spot-engine.js.map +1 -0
- package/dist/core/build-failure-predictor.d.ts +4 -0
- package/dist/core/build-failure-predictor.d.ts.map +1 -1
- package/dist/core/build-failure-predictor.js +111 -58
- package/dist/core/build-failure-predictor.js.map +1 -1
- package/dist/core/cell-store.d.ts +72 -0
- package/dist/core/cell-store.d.ts.map +1 -0
- package/dist/core/cell-store.js +171 -0
- package/dist/core/cell-store.js.map +1 -0
- package/dist/core/community-advanced-engine.d.ts +30 -0
- package/dist/core/community-advanced-engine.d.ts.map +1 -0
- package/dist/core/community-advanced-engine.js +103 -0
- package/dist/core/community-advanced-engine.js.map +1 -0
- package/dist/core/community-engine.d.ts +62 -0
- package/dist/core/community-engine.d.ts.map +1 -0
- package/dist/core/community-engine.js +194 -0
- package/dist/core/community-engine.js.map +1 -0
- package/dist/core/community-full.d.ts +2 -3
- package/dist/core/community-full.d.ts.map +1 -1
- package/dist/core/community-full.js +2 -5
- package/dist/core/community-full.js.map +1 -1
- package/dist/core/community-intelligence.d.ts +169 -0
- package/dist/core/community-intelligence.d.ts.map +1 -0
- package/dist/core/community-intelligence.js +527 -0
- package/dist/core/community-intelligence.js.map +1 -0
- package/dist/core/community-live.d.ts +1 -0
- package/dist/core/community-live.d.ts.map +1 -1
- package/dist/core/community-live.js +9 -6
- package/dist/core/community-live.js.map +1 -1
- package/dist/core/community-prior.d.ts +1 -0
- package/dist/core/community-prior.d.ts.map +1 -1
- package/dist/core/community-prior.js +18 -10
- package/dist/core/community-prior.js.map +1 -1
- package/dist/core/confidence-engine.d.ts +2 -3
- package/dist/core/confidence-engine.d.ts.map +1 -1
- package/dist/core/confidence-engine.js +29 -32
- package/dist/core/confidence-engine.js.map +1 -1
- package/dist/core/conflict-detector.js +1 -1
- package/dist/core/conflict-detector.js.map +1 -1
- package/dist/core/convention-detector.d.ts +37 -0
- package/dist/core/convention-detector.d.ts.map +1 -0
- package/dist/core/convention-detector.js +189 -0
- package/dist/core/convention-detector.js.map +1 -0
- package/dist/core/cost-optimizer.d.ts +78 -0
- package/dist/core/cost-optimizer.d.ts.map +1 -0
- package/dist/core/cost-optimizer.js +257 -0
- package/dist/core/cost-optimizer.js.map +1 -0
- package/dist/core/cross-domain-projections.js +2 -2
- package/dist/core/cross-layer-intelligence.d.ts +375 -0
- package/dist/core/cross-layer-intelligence.d.ts.map +1 -0
- package/dist/core/cross-layer-intelligence.js +690 -0
- package/dist/core/cross-layer-intelligence.js.map +1 -0
- package/dist/core/developer-profile.d.ts +6 -0
- package/dist/core/developer-profile.d.ts.map +1 -0
- package/dist/core/developer-profile.js +78 -0
- package/dist/core/developer-profile.js.map +1 -0
- package/dist/core/error-predictor.d.ts +5 -2
- package/dist/core/error-predictor.d.ts.map +1 -1
- package/dist/core/error-predictor.js +124 -40
- package/dist/core/error-predictor.js.map +1 -1
- package/dist/core/explainability.d.ts +33 -0
- package/dist/core/explainability.d.ts.map +1 -0
- package/dist/core/explainability.js +131 -0
- package/dist/core/explainability.js.map +1 -0
- package/dist/core/extraction-cascade.d.ts +19 -5
- package/dist/core/extraction-cascade.d.ts.map +1 -1
- package/dist/core/extraction-cascade.js +86 -15
- package/dist/core/extraction-cascade.js.map +1 -1
- package/dist/core/failure-memory.d.ts +38 -0
- package/dist/core/failure-memory.d.ts.map +1 -0
- package/dist/core/failure-memory.js +113 -0
- package/dist/core/failure-memory.js.map +1 -0
- package/dist/core/frontend-engine.d.ts +40 -0
- package/dist/core/frontend-engine.d.ts.map +1 -0
- package/dist/core/frontend-engine.js +129 -0
- package/dist/core/frontend-engine.js.map +1 -0
- package/dist/core/go-extractor.d.ts +5 -0
- package/dist/core/go-extractor.d.ts.map +1 -0
- package/dist/core/go-extractor.js +68 -0
- package/dist/core/go-extractor.js.map +1 -0
- package/dist/core/identity-resolver.d.ts.map +1 -1
- package/dist/core/identity-resolver.js +16 -31
- package/dist/core/identity-resolver.js.map +1 -1
- package/dist/core/knowledge-graph-engine.d.ts +62 -0
- package/dist/core/knowledge-graph-engine.d.ts.map +1 -0
- package/dist/core/knowledge-graph-engine.js +176 -0
- package/dist/core/knowledge-graph-engine.js.map +1 -0
- package/dist/core/knowledge-graph.d.ts +229 -0
- package/dist/core/knowledge-graph.d.ts.map +1 -0
- package/dist/core/knowledge-graph.js +713 -0
- package/dist/core/knowledge-graph.js.map +1 -0
- package/dist/core/language-switch-assistant.d.ts.map +1 -1
- package/dist/core/language-switch-assistant.js +4 -1
- package/dist/core/language-switch-assistant.js.map +1 -1
- package/dist/core/learning-layer.d.ts +11 -0
- package/dist/core/learning-layer.d.ts.map +1 -0
- package/dist/core/learning-layer.js +25 -0
- package/dist/core/learning-layer.js.map +1 -0
- package/dist/core/marketplace.d.ts +43 -0
- package/dist/core/marketplace.d.ts.map +1 -0
- package/dist/core/marketplace.js +133 -0
- package/dist/core/marketplace.js.map +1 -0
- package/dist/core/memory-store.d.ts +59 -0
- package/dist/core/memory-store.d.ts.map +1 -0
- package/dist/core/memory-store.js +151 -0
- package/dist/core/memory-store.js.map +1 -0
- package/dist/core/naming-engine.d.ts +43 -0
- package/dist/core/naming-engine.d.ts.map +1 -0
- package/dist/core/naming-engine.js +120 -0
- package/dist/core/naming-engine.js.map +1 -0
- package/dist/core/org-intelligence.d.ts +151 -0
- package/dist/core/org-intelligence.d.ts.map +1 -0
- package/dist/core/org-intelligence.js +490 -0
- package/dist/core/org-intelligence.js.map +1 -0
- package/dist/core/organization-memory.d.ts +34 -0
- package/dist/core/organization-memory.d.ts.map +1 -0
- package/dist/core/organization-memory.js +148 -0
- package/dist/core/organization-memory.js.map +1 -0
- package/dist/core/outcome-engine.d.ts +21 -0
- package/dist/core/outcome-engine.d.ts.map +1 -0
- package/dist/core/outcome-engine.js +220 -0
- package/dist/core/outcome-engine.js.map +1 -0
- package/dist/core/outcome-recorder.d.ts +34 -0
- package/dist/core/outcome-recorder.d.ts.map +1 -0
- package/dist/core/outcome-recorder.js +109 -0
- package/dist/core/outcome-recorder.js.map +1 -0
- package/dist/core/outcome-store.d.ts +21 -0
- package/dist/core/outcome-store.d.ts.map +1 -0
- package/dist/core/outcome-store.js +120 -0
- package/dist/core/outcome-store.js.map +1 -0
- package/dist/core/outcome-types.d.ts +64 -0
- package/dist/core/outcome-types.d.ts.map +1 -0
- package/dist/core/outcome-types.js +20 -0
- package/dist/core/outcome-types.js.map +1 -0
- package/dist/core/pattern-classifier.d.ts +11 -0
- package/dist/core/pattern-classifier.d.ts.map +1 -0
- package/dist/core/pattern-classifier.js +82 -0
- package/dist/core/pattern-classifier.js.map +1 -0
- package/dist/core/pattern-lifecycle.d.ts +8 -0
- package/dist/core/pattern-lifecycle.d.ts.map +1 -0
- package/dist/core/pattern-lifecycle.js +25 -0
- package/dist/core/pattern-lifecycle.js.map +1 -0
- package/dist/core/pattern-quality.d.ts +6 -0
- package/dist/core/pattern-quality.d.ts.map +1 -0
- package/dist/core/pattern-quality.js +45 -0
- package/dist/core/pattern-quality.js.map +1 -0
- package/dist/core/pattern-ranking.d.ts +8 -0
- package/dist/core/pattern-ranking.d.ts.map +1 -0
- package/dist/core/pattern-ranking.js +40 -0
- package/dist/core/pattern-ranking.js.map +1 -0
- package/dist/core/pattern-relationships.d.ts +16 -0
- package/dist/core/pattern-relationships.d.ts.map +1 -0
- package/dist/core/pattern-relationships.js +66 -0
- package/dist/core/pattern-relationships.js.map +1 -0
- package/dist/core/pattern-search.d.ts +25 -0
- package/dist/core/pattern-search.d.ts.map +1 -0
- package/dist/core/pattern-search.js +82 -0
- package/dist/core/pattern-search.js.map +1 -0
- package/dist/core/pattern-store.d.ts +18 -3
- package/dist/core/pattern-store.d.ts.map +1 -1
- package/dist/core/pattern-store.js +155 -54
- package/dist/core/pattern-store.js.map +1 -1
- package/dist/core/{enterprise-features.d.ts → pattern-utils.d.ts} +2 -4
- package/dist/core/pattern-utils.d.ts.map +1 -0
- package/dist/core/{enterprise-features.js → pattern-utils.js} +4 -24
- package/dist/core/pattern-utils.js.map +1 -0
- package/dist/core/pattern-validator.d.ts +14 -0
- package/dist/core/pattern-validator.d.ts.map +1 -0
- package/dist/core/pattern-validator.js +47 -0
- package/dist/core/pattern-validator.js.map +1 -0
- package/dist/core/performance-predictor.d.ts +4 -0
- package/dist/core/performance-predictor.d.ts.map +1 -1
- package/dist/core/performance-predictor.js +143 -38
- package/dist/core/performance-predictor.js.map +1 -1
- package/dist/core/platt-calibration.d.ts.map +1 -1
- package/dist/core/platt-calibration.js +5 -3
- package/dist/core/platt-calibration.js.map +1 -1
- package/dist/core/playbook-generator.d.ts +21 -0
- package/dist/core/playbook-generator.d.ts.map +1 -0
- package/dist/core/playbook-generator.js +161 -0
- package/dist/core/playbook-generator.js.map +1 -0
- package/dist/core/privacy-manager.d.ts +43 -0
- package/dist/core/privacy-manager.d.ts.map +1 -0
- package/dist/core/privacy-manager.js +131 -0
- package/dist/core/privacy-manager.js.map +1 -0
- package/dist/core/productivity-engine.d.ts +57 -0
- package/dist/core/productivity-engine.d.ts.map +1 -0
- package/dist/core/productivity-engine.js +138 -0
- package/dist/core/productivity-engine.js.map +1 -0
- package/dist/core/project-dna-types.d.ts +150 -0
- package/dist/core/project-dna-types.d.ts.map +1 -0
- package/dist/core/project-dna-types.js +3 -0
- package/dist/core/project-dna-types.js.map +1 -0
- package/dist/core/project-dna.d.ts +122 -0
- package/dist/core/project-dna.d.ts.map +1 -0
- package/dist/core/project-dna.js +922 -0
- package/dist/core/project-dna.js.map +1 -0
- package/dist/core/python-extractor.d.ts +5 -0
- package/dist/core/python-extractor.d.ts.map +1 -0
- package/dist/core/python-extractor.js +68 -0
- package/dist/core/python-extractor.js.map +1 -0
- package/dist/core/realtime-guardian.d.ts.map +1 -1
- package/dist/core/realtime-guardian.js +1 -3
- package/dist/core/realtime-guardian.js.map +1 -1
- package/dist/core/recommendation-engine.d.ts +9 -0
- package/dist/core/recommendation-engine.d.ts.map +1 -0
- package/dist/core/recommendation-engine.js +152 -0
- package/dist/core/recommendation-engine.js.map +1 -0
- package/dist/core/recommendation-store.d.ts +21 -0
- package/dist/core/recommendation-store.d.ts.map +1 -0
- package/dist/core/recommendation-store.js +125 -0
- package/dist/core/recommendation-store.js.map +1 -0
- package/dist/core/recommendation-types.d.ts +54 -0
- package/dist/core/recommendation-types.d.ts.map +1 -0
- package/dist/core/recommendation-types.js +3 -0
- package/dist/core/recommendation-types.js.map +1 -0
- package/dist/core/regex-extractor.js +1 -1
- package/dist/core/regex-extractor.js.map +1 -1
- package/dist/core/reputation.d.ts +42 -0
- package/dist/core/reputation.d.ts.map +1 -0
- package/dist/core/reputation.js +173 -0
- package/dist/core/reputation.js.map +1 -0
- package/dist/core/scale-tester.d.ts +2 -2
- package/dist/core/scale-tester.d.ts.map +1 -1
- package/dist/core/scale-tester.js +12 -1
- package/dist/core/scale-tester.js.map +1 -1
- package/dist/core/search-engine.d.ts +37 -0
- package/dist/core/search-engine.d.ts.map +1 -0
- package/dist/core/search-engine.js +223 -0
- package/dist/core/search-engine.js.map +1 -0
- package/dist/core/security-predictor.d.ts +2 -1
- package/dist/core/security-predictor.d.ts.map +1 -1
- package/dist/core/security-predictor.js +80 -30
- package/dist/core/security-predictor.js.map +1 -1
- package/dist/core/session-recovery.js +8 -8
- package/dist/core/session-recovery.js.map +1 -1
- package/dist/core/similarity-engine.d.ts +8 -0
- package/dist/core/similarity-engine.d.ts.map +1 -0
- package/dist/core/similarity-engine.js +74 -0
- package/dist/core/similarity-engine.js.map +1 -0
- package/dist/core/structure-engine.d.ts +34 -0
- package/dist/core/structure-engine.d.ts.map +1 -0
- package/dist/core/structure-engine.js +114 -0
- package/dist/core/structure-engine.js.map +1 -0
- package/dist/core/syntax-engine.d.ts +101 -0
- package/dist/core/syntax-engine.d.ts.map +1 -0
- package/dist/core/syntax-engine.js +342 -0
- package/dist/core/syntax-engine.js.map +1 -0
- package/dist/core/team-advanced-engine.d.ts +19 -0
- package/dist/core/team-advanced-engine.d.ts.map +1 -0
- package/dist/core/team-advanced-engine.js +91 -0
- package/dist/core/team-advanced-engine.js.map +1 -0
- package/dist/core/team-engine.d.ts +59 -0
- package/dist/core/team-engine.d.ts.map +1 -0
- package/dist/core/team-engine.js +141 -0
- package/dist/core/team-engine.js.map +1 -0
- package/dist/core/time-saved.d.ts +51 -0
- package/dist/core/time-saved.d.ts.map +1 -0
- package/dist/core/time-saved.js +97 -0
- package/dist/core/time-saved.js.map +1 -0
- package/dist/core/workflow-outcome-graph.d.ts +46 -0
- package/dist/core/workflow-outcome-graph.d.ts.map +1 -0
- package/dist/core/workflow-outcome-graph.js +168 -0
- package/dist/core/workflow-outcome-graph.js.map +1 -0
- package/dist/core/workflow-tracker.d.ts +36 -0
- package/dist/core/workflow-tracker.d.ts.map +1 -0
- package/dist/core/workflow-tracker.js +99 -0
- package/dist/core/workflow-tracker.js.map +1 -0
- package/dist/core/ws-client.d.ts +24 -0
- package/dist/core/ws-client.d.ts.map +1 -0
- package/dist/core/ws-client.js +203 -0
- package/dist/core/ws-client.js.map +1 -0
- package/dist/daemon/lifecycle.d.ts.map +1 -1
- package/dist/daemon/lifecycle.js +9 -10
- package/dist/daemon/lifecycle.js.map +1 -1
- package/dist/daemon/server.d.ts +4 -2
- package/dist/daemon/server.d.ts.map +1 -1
- package/dist/daemon/server.js +886 -73
- package/dist/daemon/server.js.map +1 -1
- package/dist/daemon/watchdog.js +2 -1
- package/dist/daemon/watchdog.js.map +1 -1
- package/dist/index.d.ts +21 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +37 -4
- package/dist/index.js.map +1 -1
- package/dist/store.d.ts +4 -0
- package/dist/store.d.ts.map +1 -0
- package/dist/store.js +47 -0
- package/dist/store.js.map +1 -0
- package/dist/types.d.ts +60 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +13 -2
- package/dist/types.js.map +1 -1
- package/dist/validation/quick-run.d.ts +7 -0
- package/dist/validation/quick-run.d.ts.map +1 -0
- package/dist/validation/quick-run.js +404 -0
- package/dist/validation/quick-run.js.map +1 -0
- package/package.json +87 -53
- package/CHANGELOG.md +0 -32
- package/CONTRIBUTING.md +0 -60
- package/dist/core/cell-pro.d.ts +0 -28
- package/dist/core/cell-pro.d.ts.map +0 -1
- package/dist/core/cell-pro.js +0 -70
- package/dist/core/cell-pro.js.map +0 -1
- package/dist/core/enterprise-features.d.ts.map +0 -1
- package/dist/core/enterprise-features.js.map +0 -1
- package/dist/core/enterprise.d.ts +0 -27
- package/dist/core/enterprise.d.ts.map +0 -1
- package/dist/core/enterprise.js +0 -41
- package/dist/core/enterprise.js.map +0 -1
- package/extensions/jetbrains/plugin.json +0 -9
- package/extensions/shell/copilot-sync.js +0 -59
- package/extensions/shell/install.sh +0 -38
- package/extensions/shell/watcher.js +0 -113
- package/extensions/vscode/.vscodeignore +0 -5
- package/extensions/vscode/dist/daemon-client.js +0 -94
- package/extensions/vscode/dist/diff-tracker.js +0 -94
- package/extensions/vscode/dist/extension.js +0 -100
- package/extensions/vscode/dist/status-bar.js +0 -70
- package/extensions/vscode/package-lock.json +0 -40
- package/extensions/vscode/package.json +0 -27
- package/packages/mcp-server/dist/server.d.ts +0 -2
- package/packages/mcp-server/dist/server.js +0 -213
- package/packages/mcp-server/package-lock.json +0 -970
- package/packages/mcp-server/package.json +0 -19
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.OutcomeStore = void 0;
|
|
37
|
+
const fs = __importStar(require("fs"));
|
|
38
|
+
const path = __importStar(require("path"));
|
|
39
|
+
class OutcomeStore {
|
|
40
|
+
events;
|
|
41
|
+
summaries;
|
|
42
|
+
storePath;
|
|
43
|
+
constructor(cellDir) {
|
|
44
|
+
this.events = new Map();
|
|
45
|
+
this.summaries = new Map();
|
|
46
|
+
this.storePath = path.join(cellDir, 'outcomes.json');
|
|
47
|
+
this.ensureDir(cellDir);
|
|
48
|
+
this.load();
|
|
49
|
+
}
|
|
50
|
+
addEvent(event) {
|
|
51
|
+
this.events.set(event.id, event);
|
|
52
|
+
}
|
|
53
|
+
getEvent(id) {
|
|
54
|
+
return this.events.get(id);
|
|
55
|
+
}
|
|
56
|
+
getEvents(patternId) {
|
|
57
|
+
const result = [];
|
|
58
|
+
for (const evt of this.events.values()) {
|
|
59
|
+
if (evt.patternId === patternId)
|
|
60
|
+
result.push(evt);
|
|
61
|
+
}
|
|
62
|
+
return result.sort((a, b) => a.timestamp - b.timestamp);
|
|
63
|
+
}
|
|
64
|
+
getAllEvents() {
|
|
65
|
+
return Array.from(this.events.values()).sort((a, b) => a.timestamp - b.timestamp);
|
|
66
|
+
}
|
|
67
|
+
getEventCount() {
|
|
68
|
+
return this.events.size;
|
|
69
|
+
}
|
|
70
|
+
addSummary(summary) {
|
|
71
|
+
this.summaries.set(summary.patternId, summary);
|
|
72
|
+
}
|
|
73
|
+
getSummary(patternId) {
|
|
74
|
+
return this.summaries.get(patternId);
|
|
75
|
+
}
|
|
76
|
+
getAllSummaries() {
|
|
77
|
+
return Array.from(this.summaries.values());
|
|
78
|
+
}
|
|
79
|
+
getSummaryCount() {
|
|
80
|
+
return this.summaries.size;
|
|
81
|
+
}
|
|
82
|
+
save() {
|
|
83
|
+
const storeData = {
|
|
84
|
+
events: Array.from(this.events.values()),
|
|
85
|
+
summaries: Object.fromEntries(this.summaries),
|
|
86
|
+
};
|
|
87
|
+
fs.writeFileSync(this.storePath, JSON.stringify(storeData, null, 2), 'utf-8');
|
|
88
|
+
}
|
|
89
|
+
clear() {
|
|
90
|
+
this.events.clear();
|
|
91
|
+
this.summaries.clear();
|
|
92
|
+
this.save();
|
|
93
|
+
}
|
|
94
|
+
load() {
|
|
95
|
+
if (!fs.existsSync(this.storePath))
|
|
96
|
+
return;
|
|
97
|
+
try {
|
|
98
|
+
const raw = fs.readFileSync(this.storePath, 'utf-8');
|
|
99
|
+
const data = JSON.parse(raw);
|
|
100
|
+
if (data.events)
|
|
101
|
+
for (const evt of data.events)
|
|
102
|
+
this.events.set(evt.id, evt);
|
|
103
|
+
if (data.summaries) {
|
|
104
|
+
for (const [key, val] of Object.entries(data.summaries)) {
|
|
105
|
+
this.summaries.set(key, val);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
this.events.clear();
|
|
111
|
+
this.summaries.clear();
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
ensureDir(dir) {
|
|
115
|
+
if (!fs.existsSync(dir))
|
|
116
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
exports.OutcomeStore = OutcomeStore;
|
|
120
|
+
//# sourceMappingURL=outcome-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outcome-store.js","sourceRoot":"","sources":["../../src/core/outcome-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
export type OutcomeEventType = 'PATTERN_USED' | 'PATTERN_ACCEPTED' | 'PATTERN_REJECTED' | 'PATTERN_SUCCESS' | 'PATTERN_FAILURE' | 'PATTERN_MODIFIED' | 'PATTERN_REPLACED';
|
|
2
|
+
export type Trend = 'rising' | 'stable' | 'declining' | 'dead';
|
|
3
|
+
export interface OutcomeEvent {
|
|
4
|
+
id: string;
|
|
5
|
+
patternId: string;
|
|
6
|
+
type: OutcomeEventType;
|
|
7
|
+
timestamp: number;
|
|
8
|
+
language?: string;
|
|
9
|
+
category?: string;
|
|
10
|
+
context?: string;
|
|
11
|
+
duration?: number;
|
|
12
|
+
result?: string;
|
|
13
|
+
failureType?: string;
|
|
14
|
+
failureReason?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface PatternOutcome {
|
|
17
|
+
patternId: string;
|
|
18
|
+
usageCount: number;
|
|
19
|
+
successCount: number;
|
|
20
|
+
failureCount: number;
|
|
21
|
+
acceptanceCount: number;
|
|
22
|
+
rejectionCount: number;
|
|
23
|
+
lastOutcome: OutcomeEventType | null;
|
|
24
|
+
lastSuccessTimestamp: number | null;
|
|
25
|
+
lastFailureTimestamp: number | null;
|
|
26
|
+
successRate: number;
|
|
27
|
+
failureRate: number;
|
|
28
|
+
acceptanceRate: number;
|
|
29
|
+
confidence: number;
|
|
30
|
+
trend: Trend;
|
|
31
|
+
health: number;
|
|
32
|
+
firstSeen: number;
|
|
33
|
+
lastSeen: number;
|
|
34
|
+
}
|
|
35
|
+
export interface LeaderboardEntry {
|
|
36
|
+
patternId: string;
|
|
37
|
+
score: number;
|
|
38
|
+
rank: number;
|
|
39
|
+
metrics: Record<string, number>;
|
|
40
|
+
}
|
|
41
|
+
export interface Leaderboard {
|
|
42
|
+
mostSuccessful: LeaderboardEntry[];
|
|
43
|
+
mostReliable: LeaderboardEntry[];
|
|
44
|
+
mostAccepted: LeaderboardEntry[];
|
|
45
|
+
fastestGrowing: LeaderboardEntry[];
|
|
46
|
+
mostFailed: LeaderboardEntry[];
|
|
47
|
+
mostRejected: LeaderboardEntry[];
|
|
48
|
+
generatedAt: number;
|
|
49
|
+
}
|
|
50
|
+
export interface OutcomeStoreData {
|
|
51
|
+
events: OutcomeEvent[];
|
|
52
|
+
summaries: Record<string, PatternOutcome>;
|
|
53
|
+
}
|
|
54
|
+
export declare function makeEvent(patternId: string, type: OutcomeEventType, opts?: {
|
|
55
|
+
language?: string;
|
|
56
|
+
category?: string;
|
|
57
|
+
context?: string;
|
|
58
|
+
duration?: number;
|
|
59
|
+
result?: string;
|
|
60
|
+
failureType?: string;
|
|
61
|
+
failureReason?: string;
|
|
62
|
+
timestamp?: number;
|
|
63
|
+
}): OutcomeEvent;
|
|
64
|
+
//# sourceMappingURL=outcome-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outcome-types.d.ts","sourceRoot":"","sources":["../../src/core/outcome-types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,gBAAgB,GACxB,cAAc,GACd,kBAAkB,GAClB,kBAAkB,GAClB,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,kBAAkB,CAAC;AAEvB,MAAM,MAAM,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,CAAC;AAE/D,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,gBAAgB,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,EAAE,gBAAgB,EAAE,CAAC;IACnC,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,cAAc,EAAE,gBAAgB,EAAE,CAAC;IACnC,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CAC3C;AAED,wBAAgB,SAAS,CACvB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,gBAAgB,EACtB,IAAI,CAAC,EAAE;IACL,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GACA,YAAY,CAcd"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.makeEvent = makeEvent;
|
|
4
|
+
const crypto_1 = require("crypto");
|
|
5
|
+
function makeEvent(patternId, type, opts) {
|
|
6
|
+
return {
|
|
7
|
+
id: (0, crypto_1.randomUUID)(),
|
|
8
|
+
patternId,
|
|
9
|
+
type,
|
|
10
|
+
timestamp: opts?.timestamp ?? Date.now(),
|
|
11
|
+
language: opts?.language,
|
|
12
|
+
category: opts?.category,
|
|
13
|
+
context: opts?.context,
|
|
14
|
+
duration: opts?.duration,
|
|
15
|
+
result: opts?.result,
|
|
16
|
+
failureType: opts?.failureType,
|
|
17
|
+
failureReason: opts?.failureReason,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=outcome-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outcome-types.js","sourceRoot":"","sources":["../../src/core/outcome-types.ts"],"names":[],"mappings":";;AAqEA,8BA2BC;AAhGD,mCAAoC;AAqEpC,SAAgB,SAAS,CACvB,SAAiB,EACjB,IAAsB,EACtB,IASC;IAED,OAAO;QACL,EAAE,EAAE,IAAA,mBAAU,GAAE;QAChB,SAAS;QACT,IAAI;QACJ,SAAS,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;QACxC,QAAQ,EAAE,IAAI,EAAE,QAAQ;QACxB,QAAQ,EAAE,IAAI,EAAE,QAAQ;QACxB,OAAO,EAAE,IAAI,EAAE,OAAO;QACtB,QAAQ,EAAE,IAAI,EAAE,QAAQ;QACxB,MAAM,EAAE,IAAI,EAAE,MAAM;QACpB,WAAW,EAAE,IAAI,EAAE,WAAW;QAC9B,aAAa,EAAE,IAAI,EAAE,aAAa;KACnC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ComplexityLevel, RiskLevel, PatternSource } from '../types';
|
|
2
|
+
export interface ClassificationResult {
|
|
3
|
+
language: string;
|
|
4
|
+
subcategory: string;
|
|
5
|
+
complexity: ComplexityLevel;
|
|
6
|
+
risk: RiskLevel;
|
|
7
|
+
source: PatternSource;
|
|
8
|
+
}
|
|
9
|
+
export declare function classifyPattern(category: string, from: string, to: string, language: string, source: PatternSource): ClassificationResult;
|
|
10
|
+
export declare function inferSource(stepUsed: string): PatternSource;
|
|
11
|
+
//# sourceMappingURL=pattern-classifier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-classifier.d.ts","sourceRoot":"","sources":["../../src/core/pattern-classifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,EAAe,MAAM,UAAU,CAAC;AAElF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,eAAe,CAAC;IAC5B,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,aAAa,CAAC;CACvB;AAyBD,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,aAAa,GACpB,oBAAoB,CAatB;AAiCD,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAQ3D"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.classifyPattern = classifyPattern;
|
|
4
|
+
exports.inferSource = inferSource;
|
|
5
|
+
const SUBCATEGORY_MAP = {
|
|
6
|
+
variable_declaration: ['let_to_const', 'var_to_let', 'type_inference', 'explicit_type'],
|
|
7
|
+
type_annotation: ['add_type', 'remove_type', 'change_type', 'union_type'],
|
|
8
|
+
modifier_change: ['public_private', 'readonly', 'static', 'async_export'],
|
|
9
|
+
import_change: ['named_import', 'default_import', 'namespace_import', 'dynamic_import'],
|
|
10
|
+
error_handling: ['try_catch', 'result_type', 'optional_chaining', 'null_check'],
|
|
11
|
+
function_style: ['arrow_function', 'async_function', 'generator', 'method_shorthand'],
|
|
12
|
+
string_style: ['template_literal', 'single_quotes', 'double_quotes', 'concatenation'],
|
|
13
|
+
null_safety: ['optional_chaining', 'null_coalescing', 'truthy_check', 'explicit_null'],
|
|
14
|
+
destructuring: ['object_destructure', 'array_destructure', 'rename_destructure', 'default_value'],
|
|
15
|
+
async_await: ['promise_to_await', 'async_function', 'promise_all', 'error_handling'],
|
|
16
|
+
structural: ['extract_function', 'inline_function', 'reorder', 'rename'],
|
|
17
|
+
testing: ['add_test', 'remove_test', 'update_test', 'mock_injection'],
|
|
18
|
+
naming: ['camel_case', 'snake_case', 'pascal_case', 'rename_variable'],
|
|
19
|
+
loop_style: ['for_to_forEach', 'forEach_to_map', 'for_to_reduce', 'while_to_for'],
|
|
20
|
+
debug_style: ['remove_console', 'add_logging', 'conditional_debug', 'comment_out'],
|
|
21
|
+
api_pattern: ['fetch_to_axios', 'callback_to_promise', 'error_handling', 'retry_logic'],
|
|
22
|
+
state_management: ['local_to_global', 'redux_pattern', 'context_api', 'recoil'],
|
|
23
|
+
security: ['sanitize_input', 'parameterize_query', 'escape_output', 'validate_input'],
|
|
24
|
+
performance: ['memoize', 'lazy_load', 'batch_updates', 'throttle_debounce'],
|
|
25
|
+
logging: ['error_logging', 'info_logging', 'structured_logging', 'debug_logging'],
|
|
26
|
+
};
|
|
27
|
+
function classifyPattern(category, from, to, language, source) {
|
|
28
|
+
const subcategories = SUBCATEGORY_MAP[category] || ['general'];
|
|
29
|
+
const subcategory = inferSubcategory(subcategories, from, to);
|
|
30
|
+
const complexity = inferComplexity(category, from, to);
|
|
31
|
+
const risk = inferRisk(category, from, to);
|
|
32
|
+
return {
|
|
33
|
+
language: language || 'unknown',
|
|
34
|
+
subcategory,
|
|
35
|
+
complexity,
|
|
36
|
+
risk,
|
|
37
|
+
source,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
function inferSubcategory(subcategories, from, to) {
|
|
41
|
+
for (const sub of subcategories) {
|
|
42
|
+
const keywords = sub.split('_');
|
|
43
|
+
const matchCount = keywords.filter((k) => from.toLowerCase().includes(k) || to.toLowerCase().includes(k)).length;
|
|
44
|
+
if (matchCount >= 2)
|
|
45
|
+
return sub;
|
|
46
|
+
}
|
|
47
|
+
if (from.includes('=>') || to.includes('=>'))
|
|
48
|
+
return 'arrow_function';
|
|
49
|
+
if (from.includes('try') || to.includes('try') || from.includes('catch') || to.includes('catch'))
|
|
50
|
+
return 'try_catch';
|
|
51
|
+
if (from.includes('await') || to.includes('await'))
|
|
52
|
+
return 'promise_to_await';
|
|
53
|
+
return subcategories[0];
|
|
54
|
+
}
|
|
55
|
+
function inferComplexity(category, from, to) {
|
|
56
|
+
const fromLen = from.length;
|
|
57
|
+
const toLen = to.length;
|
|
58
|
+
const changedLines = Math.abs(from.split('\n').length - to.split('\n').length);
|
|
59
|
+
if (changedLines > 5 || fromLen > 200 || toLen > 200)
|
|
60
|
+
return 'high';
|
|
61
|
+
if (changedLines > 2 || fromLen > 80 || toLen > 80)
|
|
62
|
+
return 'medium';
|
|
63
|
+
return 'low';
|
|
64
|
+
}
|
|
65
|
+
function inferRisk(category, from, to) {
|
|
66
|
+
const highRiskCategories = ['security', 'performance', 'error_handling', 'state_management'];
|
|
67
|
+
if (highRiskCategories.includes(category))
|
|
68
|
+
return 'high';
|
|
69
|
+
if (category === 'testing' || category === 'naming' || category === 'string_style')
|
|
70
|
+
return 'low';
|
|
71
|
+
return 'medium';
|
|
72
|
+
}
|
|
73
|
+
function inferSource(stepUsed) {
|
|
74
|
+
switch (stepUsed) {
|
|
75
|
+
case 'ast': return 'ast';
|
|
76
|
+
case 'regex': return 'regex';
|
|
77
|
+
case 'heuristic': return 'heuristic';
|
|
78
|
+
case 'combined': return 'ast';
|
|
79
|
+
default: return 'manual';
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=pattern-classifier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-classifier.js","sourceRoot":"","sources":["../../src/core/pattern-classifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PatternHistoryEntry } from '../types';
|
|
2
|
+
export declare class LifecycleTracker {
|
|
3
|
+
createEntry(event: PatternHistoryEntry['event'], details?: string): PatternHistoryEntry;
|
|
4
|
+
computeVersion(history: PatternHistoryEntry[]): number;
|
|
5
|
+
shouldDecay(lastSeen: number, maxIdleDays?: number): boolean;
|
|
6
|
+
shouldRevive(currentQuality: number, threshold?: number): boolean;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=pattern-lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-lifecycle.d.ts","sourceRoot":"","sources":["../../src/core/pattern-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,qBAAa,gBAAgB;IAC3B,WAAW,CACT,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,EACnC,OAAO,CAAC,EAAE,MAAM,GACf,mBAAmB;IAQtB,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,GAAG,MAAM;IAOtD,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,GAAE,MAAW,GAAG,OAAO;IAKhE,YAAY,CAAC,cAAc,EAAE,MAAM,EAAE,SAAS,GAAE,MAAW,GAAG,OAAO;CAGtE"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LifecycleTracker = void 0;
|
|
4
|
+
class LifecycleTracker {
|
|
5
|
+
createEntry(event, details) {
|
|
6
|
+
return {
|
|
7
|
+
timestamp: Date.now(),
|
|
8
|
+
event,
|
|
9
|
+
details,
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
computeVersion(history) {
|
|
13
|
+
const updateEvents = history.filter((h) => h.event === 'created' || h.event === 'updated' || h.event === 'accepted' || h.event === 'rejected');
|
|
14
|
+
return updateEvents.length;
|
|
15
|
+
}
|
|
16
|
+
shouldDecay(lastSeen, maxIdleDays = 30) {
|
|
17
|
+
const idleDays = (Date.now() - lastSeen) / (1000 * 60 * 60 * 24);
|
|
18
|
+
return idleDays > maxIdleDays;
|
|
19
|
+
}
|
|
20
|
+
shouldRevive(currentQuality, threshold = 30) {
|
|
21
|
+
return currentQuality < threshold;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.LifecycleTracker = LifecycleTracker;
|
|
25
|
+
//# sourceMappingURL=pattern-lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-lifecycle.js","sourceRoot":"","sources":["../../src/core/pattern-lifecycle.ts"],"names":[],"mappings":";;;AAEA,MAAa,gBAAgB;IAC3B,WAAW,CACT,KAAmC,EACnC,OAAgB;QAEhB,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,KAAK;YACL,OAAO;SACR,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,OAA8B;QAC3C,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CACjC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,UAAU,IAAI,CAAC,CAAC,KAAK,KAAK,UAAU,CAC1G,CAAC;QACF,OAAO,YAAY,CAAC,MAAM,CAAC;IAC7B,CAAC;IAED,WAAW,CAAC,QAAgB,EAAE,cAAsB,EAAE;QACpD,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QACjE,OAAO,QAAQ,GAAG,WAAW,CAAC;IAChC,CAAC;IAED,YAAY,CAAC,cAAsB,EAAE,YAAoB,EAAE;QACzD,OAAO,cAAc,GAAG,SAAS,CAAC;IACpC,CAAC;CACF;AA3BD,4CA2BC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PatternQuality, Pattern } from '../types';
|
|
2
|
+
export declare class QualityEngine {
|
|
3
|
+
compute(signals: Pattern['signals'], firstSeen: number, lastSeen: number, version: number): PatternQuality;
|
|
4
|
+
decay(quality: PatternQuality, daysSinceLastUpdate: number): PatternQuality;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=pattern-quality.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-quality.d.ts","sourceRoot":"","sources":["../../src/core/pattern-quality.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnD,qBAAa,aAAa;IACxB,OAAO,CACL,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,EAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,cAAc;IAkCjB,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,GAAG,cAAc;CAU5E"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.QualityEngine = void 0;
|
|
4
|
+
class QualityEngine {
|
|
5
|
+
compute(signals, firstSeen, lastSeen, version) {
|
|
6
|
+
const now = Date.now();
|
|
7
|
+
const ageDays = Math.max((now - firstSeen) / (1000 * 60 * 60 * 24), 1);
|
|
8
|
+
const daysSinceLastSignal = Math.max((now - lastSeen) / (1000 * 60 * 60 * 24), 0);
|
|
9
|
+
const total = Math.max(signals.total, 1);
|
|
10
|
+
const successRate = total > 0 ? signals.positive / total : 0;
|
|
11
|
+
const failureRate = total > 0 ? signals.negative / total : 0;
|
|
12
|
+
const acceptanceRate = total > 0 ? signals.positive / total : 0;
|
|
13
|
+
const reuseRate = Math.min(version / 10, 1);
|
|
14
|
+
const recencyFactor = Math.max(0, 1 - daysSinceLastSignal / 90);
|
|
15
|
+
const ageFactor = Math.min(ageDays / 30, 1);
|
|
16
|
+
const signalFactor = Math.min(total / 50, 1);
|
|
17
|
+
const score = Math.round(successRate * 30 +
|
|
18
|
+
reuseRate * 15 +
|
|
19
|
+
recencyFactor * 25 +
|
|
20
|
+
signalFactor * 15 +
|
|
21
|
+
acceptanceRate * 15);
|
|
22
|
+
return {
|
|
23
|
+
score: Math.min(score, 100),
|
|
24
|
+
reuseRate: Math.round(reuseRate * 1000) / 1000,
|
|
25
|
+
successRate: Math.round(successRate * 1000) / 1000,
|
|
26
|
+
failureRate: Math.round(failureRate * 1000) / 1000,
|
|
27
|
+
acceptanceRate: Math.round(acceptanceRate * 1000) / 1000,
|
|
28
|
+
daysSinceLastSignal: Math.round(daysSinceLastSignal * 10) / 10,
|
|
29
|
+
age: Math.round(ageDays),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
decay(quality, daysSinceLastUpdate) {
|
|
33
|
+
if (daysSinceLastUpdate <= 0)
|
|
34
|
+
return quality;
|
|
35
|
+
const decayFactor = Math.max(0, 1 - daysSinceLastUpdate * 0.01);
|
|
36
|
+
return {
|
|
37
|
+
...quality,
|
|
38
|
+
score: Math.round(quality.score * decayFactor),
|
|
39
|
+
daysSinceLastSignal: quality.daysSinceLastSignal + daysSinceLastUpdate,
|
|
40
|
+
age: quality.age + daysSinceLastUpdate,
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.QualityEngine = QualityEngine;
|
|
45
|
+
//# sourceMappingURL=pattern-quality.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-quality.js","sourceRoot":"","sources":["../../src/core/pattern-quality.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Pattern, PatternRanking } from '../types';
|
|
2
|
+
export interface RankedPattern extends Pattern {
|
|
3
|
+
ranking: PatternRanking;
|
|
4
|
+
}
|
|
5
|
+
export declare class RankingEngine {
|
|
6
|
+
rank(patterns: Pattern[]): RankedPattern[];
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=pattern-ranking.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-ranking.d.ts","sourceRoot":"","sources":["../../src/core/pattern-ranking.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAEnD,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,OAAO,EAAE,cAAc,CAAC;CACzB;AAED,qBAAa,aAAa;IACxB,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,aAAa,EAAE;CAwC3C"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RankingEngine = void 0;
|
|
4
|
+
class RankingEngine {
|
|
5
|
+
rank(patterns) {
|
|
6
|
+
const now = Date.now();
|
|
7
|
+
const scored = patterns.map((p) => {
|
|
8
|
+
const confidenceScore = (p.confidence?.mean || 0) * 100;
|
|
9
|
+
const qualityScore = p.quality?.score || 0;
|
|
10
|
+
const usageScore = Math.min((p.signals?.total || 0) * 2, 100);
|
|
11
|
+
const daysSinceSignal = Math.max((now - (p.signals?.lastSignal || now)) / (1000 * 60 * 60 * 24), 0);
|
|
12
|
+
const recencyScore = Math.max(0, 100 - daysSinceSignal * 2);
|
|
13
|
+
const acceptanceScore = Math.min(((p.signals?.positive || 0) / Math.max((p.signals?.total || 1), 1)) * 100, 100);
|
|
14
|
+
const score = Math.round(confidenceScore * 0.30 +
|
|
15
|
+
qualityScore * 0.25 +
|
|
16
|
+
usageScore * 0.15 +
|
|
17
|
+
recencyScore * 0.15 +
|
|
18
|
+
acceptanceScore * 0.15);
|
|
19
|
+
return {
|
|
20
|
+
...p,
|
|
21
|
+
ranking: {
|
|
22
|
+
score: Math.min(score, 100),
|
|
23
|
+
rank: 0,
|
|
24
|
+
factors: {
|
|
25
|
+
confidence: Math.round(confidenceScore),
|
|
26
|
+
quality: qualityScore,
|
|
27
|
+
usage: Math.round(usageScore),
|
|
28
|
+
recency: Math.round(recencyScore),
|
|
29
|
+
acceptance: Math.round(acceptanceScore),
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
});
|
|
34
|
+
scored.sort((a, b) => b.ranking.score - a.ranking.score);
|
|
35
|
+
scored.forEach((p, i) => { p.ranking.rank = i + 1; });
|
|
36
|
+
return scored;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.RankingEngine = RankingEngine;
|
|
40
|
+
//# sourceMappingURL=pattern-ranking.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-ranking.js","sourceRoot":"","sources":["../../src/core/pattern-ranking.ts"],"names":[],"mappings":";;;AAMA,MAAa,aAAa;IACxB,IAAI,CAAC,QAAmB;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAChC,MAAM,eAAe,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;YACxD,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YAC9D,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACpG,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,eAAe,GAAG,CAAC,CAAC,CAAC;YAC5D,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;YAEjH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CACtB,eAAe,GAAG,IAAI;gBACtB,YAAY,GAAG,IAAI;gBACnB,UAAU,GAAG,IAAI;gBACjB,YAAY,GAAG,IAAI;gBACnB,eAAe,GAAG,IAAI,CACvB,CAAC;YAEF,OAAO;gBACL,GAAG,CAAC;gBACJ,OAAO,EAAE;oBACP,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC;oBAC3B,IAAI,EAAE,CAAC;oBACP,OAAO,EAAE;wBACP,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;wBACvC,OAAO,EAAE,YAAY;wBACrB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;wBAC7B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;wBACjC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;qBACxC;iBACF;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEtD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAzCD,sCAyCC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { PatternRelationships } from '../types';
|
|
2
|
+
export interface RelationshipMatch {
|
|
3
|
+
patternId: string;
|
|
4
|
+
type: 'related' | 'conflicting' | 'complementary' | 'dependency';
|
|
5
|
+
strength: number;
|
|
6
|
+
}
|
|
7
|
+
export declare class RelationshipEngine {
|
|
8
|
+
buildRelationships(patternId: string, category: string, from: string, to: string, allPatterns: Array<{
|
|
9
|
+
patternId: string;
|
|
10
|
+
category: string;
|
|
11
|
+
from: string;
|
|
12
|
+
to: string;
|
|
13
|
+
}>): PatternRelationships;
|
|
14
|
+
private isDependency;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=pattern-relationships.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-relationships.d.ts","sourceRoot":"","sources":["../../src/core/pattern-relationships.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,SAAS,GAAG,aAAa,GAAG,eAAe,GAAG,YAAY,CAAC;IACjE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAwBD,qBAAa,kBAAkB;IAC7B,kBAAkB,CAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,WAAW,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,GACpF,oBAAoB;IAqCvB,OAAO,CAAC,YAAY;CASrB"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RelationshipEngine = void 0;
|
|
4
|
+
const RELATED_CATEGORIES = {
|
|
5
|
+
variable_declaration: ['type_annotation', 'modifier_change'],
|
|
6
|
+
type_annotation: ['variable_declaration', 'null_safety'],
|
|
7
|
+
error_handling: ['async_await', 'null_safety', 'logging'],
|
|
8
|
+
async_await: ['error_handling', 'function_style'],
|
|
9
|
+
function_style: ['async_await', 'structural'],
|
|
10
|
+
string_style: ['template_literal', 'destructuring'],
|
|
11
|
+
null_safety: ['error_handling', 'type_annotation'],
|
|
12
|
+
import_change: ['structural', 'modifier_change'],
|
|
13
|
+
testing: ['error_handling', 'performance'],
|
|
14
|
+
security: ['error_handling', 'testing'],
|
|
15
|
+
performance: ['testing', 'state_management'],
|
|
16
|
+
logging: ['error_handling', 'testing'],
|
|
17
|
+
};
|
|
18
|
+
const CONFLICTING_CATEGORIES = {
|
|
19
|
+
variable_declaration: ['variable_declaration'],
|
|
20
|
+
function_style: ['function_style'],
|
|
21
|
+
string_style: ['string_style'],
|
|
22
|
+
naming: ['naming'],
|
|
23
|
+
};
|
|
24
|
+
class RelationshipEngine {
|
|
25
|
+
buildRelationships(patternId, category, from, to, allPatterns) {
|
|
26
|
+
const related = [];
|
|
27
|
+
const conflicting = [];
|
|
28
|
+
const complementary = [];
|
|
29
|
+
const dependencies = [];
|
|
30
|
+
const relatedCats = RELATED_CATEGORIES[category] || [];
|
|
31
|
+
const conflictCats = CONFLICTING_CATEGORIES[category] || [];
|
|
32
|
+
for (const other of allPatterns) {
|
|
33
|
+
if (other.patternId === patternId)
|
|
34
|
+
continue;
|
|
35
|
+
if (relatedCats.includes(other.category)) {
|
|
36
|
+
related.push(other.patternId);
|
|
37
|
+
}
|
|
38
|
+
if (conflictCats.includes(other.category) && other.from === from && other.to !== to) {
|
|
39
|
+
conflicting.push(other.patternId);
|
|
40
|
+
}
|
|
41
|
+
if (other.category === category && other.from !== from && other.to === to) {
|
|
42
|
+
complementary.push(other.patternId);
|
|
43
|
+
}
|
|
44
|
+
if (this.isDependency(category, other.category)) {
|
|
45
|
+
dependencies.push(other.patternId);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return {
|
|
49
|
+
related: [...new Set(related)],
|
|
50
|
+
conflicting: [...new Set(conflicting)],
|
|
51
|
+
complementary: [...new Set(complementary)],
|
|
52
|
+
dependencies: [...new Set(dependencies)],
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
isDependency(catA, catB) {
|
|
56
|
+
const depMap = {
|
|
57
|
+
async_await: ['function_style', 'error_handling'],
|
|
58
|
+
error_handling: ['null_safety'],
|
|
59
|
+
destructuring: ['variable_declaration'],
|
|
60
|
+
testing: ['function_style', 'error_handling'],
|
|
61
|
+
};
|
|
62
|
+
return (depMap[catA] || []).includes(catB);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
exports.RelationshipEngine = RelationshipEngine;
|
|
66
|
+
//# sourceMappingURL=pattern-relationships.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-relationships.js","sourceRoot":"","sources":["../../src/core/pattern-relationships.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Pattern } from '../types';
|
|
2
|
+
export interface SearchQuery {
|
|
3
|
+
language?: string;
|
|
4
|
+
category?: string;
|
|
5
|
+
minConfidence?: number;
|
|
6
|
+
minQuality?: number;
|
|
7
|
+
maxRisk?: string;
|
|
8
|
+
complexity?: string;
|
|
9
|
+
minOutcome?: number;
|
|
10
|
+
text?: string;
|
|
11
|
+
limit?: number;
|
|
12
|
+
offset?: number;
|
|
13
|
+
sortBy?: 'confidence' | 'quality' | 'usage' | 'recency' | 'ranking';
|
|
14
|
+
sortOrder?: 'asc' | 'desc';
|
|
15
|
+
}
|
|
16
|
+
export interface SearchResult {
|
|
17
|
+
patterns: Pattern[];
|
|
18
|
+
total: number;
|
|
19
|
+
query: SearchQuery;
|
|
20
|
+
latencyMs: number;
|
|
21
|
+
}
|
|
22
|
+
export declare class PatternSearch {
|
|
23
|
+
search(patterns: Pattern[], query: SearchQuery): SearchResult;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=pattern-search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pattern-search.d.ts","sourceRoot":"","sources":["../../src/core/pattern-search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,UAAU,CAAC;AAEnD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;IACpE,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,WAAW,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,aAAa;IACxB,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,WAAW,GAAG,YAAY;CA6F9D"}
|