codereview-aia 0.2.1 → 0.2.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/dist/index.js +0 -7
- package/dist/index.js.map +1 -1
- package/dist/runtime/api/batcher.d.ts +20 -0
- package/dist/runtime/api/batcher.js +52 -0
- package/dist/runtime/api/batcher.js.map +1 -0
- package/dist/runtime/api/edgeClient.d.ts +102 -0
- package/dist/runtime/api/edgeClient.js +162 -0
- package/dist/runtime/api/edgeClient.js.map +1 -0
- package/dist/runtime/api/index.d.ts +2 -0
- package/dist/runtime/api/index.js +9 -0
- package/dist/runtime/api/index.js.map +1 -0
- package/dist/runtime/cliEntry.js +24 -76
- package/dist/runtime/cliEntry.js.map +1 -1
- package/dist/runtime/errors.d.ts +13 -3
- package/dist/runtime/errors.js +31 -8
- package/dist/runtime/errors.js.map +1 -1
- package/dist/runtime/llm/index.d.ts +1 -0
- package/dist/runtime/llm/index.js +6 -0
- package/dist/runtime/llm/index.js.map +1 -0
- package/dist/runtime/llm/openRouterClient.d.ts +13 -0
- package/dist/runtime/llm/openRouterClient.js +187 -0
- package/dist/runtime/llm/openRouterClient.js.map +1 -0
- package/dist/runtime/phpFileResolver.d.ts +14 -0
- package/dist/runtime/phpFileResolver.js +231 -0
- package/dist/runtime/phpFileResolver.js.map +1 -0
- package/dist/runtime/phpcsParser.d.ts +10 -0
- package/dist/runtime/phpcsParser.js +35 -0
- package/dist/runtime/phpcsParser.js.map +1 -0
- package/dist/runtime/phpcsRunner.d.ts +32 -0
- package/dist/runtime/phpcsRunner.js +62 -0
- package/dist/runtime/phpcsRunner.js.map +1 -0
- package/dist/runtime/reportWriter.d.ts +17 -0
- package/dist/runtime/reportWriter.js +80 -0
- package/dist/runtime/reportWriter.js.map +1 -0
- package/dist/runtime/reviewPipeline.d.ts +14 -36
- package/dist/runtime/reviewPipeline.js +146 -199
- package/dist/runtime/reviewPipeline.js.map +1 -1
- package/dist/runtime/ui/RuntimeApp.js +23 -154
- package/dist/runtime/ui/RuntimeApp.js.map +1 -1
- package/dist/runtime/ui/screens/AuthScreen.d.ts +2 -3
- package/dist/runtime/ui/screens/AuthScreen.js +7 -53
- package/dist/runtime/ui/screens/AuthScreen.js.map +1 -1
- package/dist/runtime/ui/screens/ModeSelection.d.ts +1 -2
- package/dist/runtime/ui/screens/ModeSelection.js +14 -139
- package/dist/runtime/ui/screens/ModeSelection.js.map +1 -1
- package/dist/runtime/ui/screens/ProgressScreen.d.ts +5 -13
- package/dist/runtime/ui/screens/ProgressScreen.js +24 -61
- package/dist/runtime/ui/screens/ProgressScreen.js.map +1 -1
- package/dist/runtime/ui/screens/ResultsScreen.js +7 -17
- package/dist/runtime/ui/screens/ResultsScreen.js.map +1 -1
- package/package.json +3 -43
- package/dist/analysis/FindingsExtractor.d.ts +0 -105
- package/dist/analysis/FindingsExtractor.js +0 -363
- package/dist/analysis/FindingsExtractor.js.map +0 -1
- package/dist/analysis/ai-detection/analyzers/BaseAnalyzer.d.ts +0 -111
- package/dist/analysis/ai-detection/analyzers/BaseAnalyzer.js +0 -215
- package/dist/analysis/ai-detection/analyzers/BaseAnalyzer.js.map +0 -1
- package/dist/analysis/ai-detection/analyzers/DocumentationAnalyzer.d.ts +0 -142
- package/dist/analysis/ai-detection/analyzers/DocumentationAnalyzer.js +0 -503
- package/dist/analysis/ai-detection/analyzers/DocumentationAnalyzer.js.map +0 -1
- package/dist/analysis/ai-detection/analyzers/GitHistoryAnalyzer.d.ts +0 -88
- package/dist/analysis/ai-detection/analyzers/GitHistoryAnalyzer.js +0 -343
- package/dist/analysis/ai-detection/analyzers/GitHistoryAnalyzer.js.map +0 -1
- package/dist/analysis/ai-detection/core/AIDetectionEngine.d.ts +0 -104
- package/dist/analysis/ai-detection/core/AIDetectionEngine.js +0 -369
- package/dist/analysis/ai-detection/core/AIDetectionEngine.js.map +0 -1
- package/dist/analysis/ai-detection/types/DetectionTypes.d.ts +0 -364
- package/dist/analysis/ai-detection/types/DetectionTypes.js +0 -32
- package/dist/analysis/ai-detection/types/DetectionTypes.js.map +0 -1
- package/dist/analysis/ai-detection/utils/SubmissionConverter.d.ts +0 -97
- package/dist/analysis/ai-detection/utils/SubmissionConverter.js +0 -339
- package/dist/analysis/ai-detection/utils/SubmissionConverter.js.map +0 -1
- package/dist/analysis/context/ReviewContext.d.ts +0 -184
- package/dist/analysis/context/ReviewContext.js +0 -294
- package/dist/analysis/context/ReviewContext.js.map +0 -1
- package/dist/analysis/context/index.d.ts +0 -6
- package/dist/analysis/context/index.js +0 -23
- package/dist/analysis/context/index.js.map +0 -1
- package/dist/analysis/index.d.ts +0 -7
- package/dist/analysis/index.js +0 -24
- package/dist/analysis/index.js.map +0 -1
- package/dist/analysis/static/wpPhpcsRunner.d.ts +0 -11
- package/dist/analysis/static/wpPhpcsRunner.js +0 -219
- package/dist/analysis/static/wpPhpcsRunner.js.map +0 -1
- package/dist/analysis/tokens/TokenAnalysisFormatter.d.ts +0 -27
- package/dist/analysis/tokens/TokenAnalysisFormatter.js +0 -143
- package/dist/analysis/tokens/TokenAnalysisFormatter.js.map +0 -1
- package/dist/analysis/tokens/TokenAnalyzer.d.ts +0 -155
- package/dist/analysis/tokens/TokenAnalyzer.js +0 -502
- package/dist/analysis/tokens/TokenAnalyzer.js.map +0 -1
- package/dist/analysis/tokens/index.d.ts +0 -7
- package/dist/analysis/tokens/index.js +0 -24
- package/dist/analysis/tokens/index.js.map +0 -1
- package/dist/clients/base/abstractClient.d.ts +0 -99
- package/dist/clients/base/abstractClient.js +0 -98
- package/dist/clients/base/abstractClient.js.map +0 -1
- package/dist/clients/base/httpClient.d.ts +0 -24
- package/dist/clients/base/httpClient.js +0 -147
- package/dist/clients/base/httpClient.js.map +0 -1
- package/dist/clients/base/index.d.ts +0 -11
- package/dist/clients/base/index.js +0 -28
- package/dist/clients/base/index.js.map +0 -1
- package/dist/clients/base/modelDetection.d.ts +0 -41
- package/dist/clients/base/modelDetection.js +0 -88
- package/dist/clients/base/modelDetection.js.map +0 -1
- package/dist/clients/base/responseProcessor.d.ts +0 -45
- package/dist/clients/base/responseProcessor.js +0 -495
- package/dist/clients/base/responseProcessor.js.map +0 -1
- package/dist/clients/factory/clientFactory.d.ts +0 -23
- package/dist/clients/factory/clientFactory.js +0 -50
- package/dist/clients/factory/clientFactory.js.map +0 -1
- package/dist/clients/factory/index.d.ts +0 -7
- package/dist/clients/factory/index.js +0 -24
- package/dist/clients/factory/index.js.map +0 -1
- package/dist/clients/implementations/index.d.ts +0 -7
- package/dist/clients/implementations/index.js +0 -24
- package/dist/clients/implementations/index.js.map +0 -1
- package/dist/clients/implementations/openRouterClient.d.ts +0 -69
- package/dist/clients/implementations/openRouterClient.js +0 -294
- package/dist/clients/implementations/openRouterClient.js.map +0 -1
- package/dist/clients/openRouterClient.d.ts +0 -42
- package/dist/clients/openRouterClient.js +0 -580
- package/dist/clients/openRouterClient.js.map +0 -1
- package/dist/clients/openRouterClientWrapper.d.ts +0 -22
- package/dist/clients/openRouterClientWrapper.js +0 -64
- package/dist/clients/openRouterClientWrapper.js.map +0 -1
- package/dist/clients/utils/directoryStructure.d.ts +0 -14
- package/dist/clients/utils/directoryStructure.js +0 -48
- package/dist/clients/utils/directoryStructure.js.map +0 -1
- package/dist/clients/utils/index.d.ts +0 -10
- package/dist/clients/utils/index.js +0 -31
- package/dist/clients/utils/index.js.map +0 -1
- package/dist/clients/utils/languageDetection.d.ts +0 -13
- package/dist/clients/utils/languageDetection.js +0 -46
- package/dist/clients/utils/languageDetection.js.map +0 -1
- package/dist/clients/utils/promptFormatter.d.ts +0 -37
- package/dist/clients/utils/promptFormatter.js +0 -186
- package/dist/clients/utils/promptFormatter.js.map +0 -1
- package/dist/clients/utils/promptLoader.d.ts +0 -27
- package/dist/clients/utils/promptLoader.js +0 -49
- package/dist/clients/utils/promptLoader.js.map +0 -1
- package/dist/clients/utils/tokenCounter.d.ts +0 -81
- package/dist/clients/utils/tokenCounter.js +0 -184
- package/dist/clients/utils/tokenCounter.js.map +0 -1
- package/dist/core/ApiClientSelector.d.ts +0 -8
- package/dist/core/ApiClientSelector.js +0 -29
- package/dist/core/ApiClientSelector.js.map +0 -1
- package/dist/core/ConfigurationService.d.ts +0 -307
- package/dist/core/ConfigurationService.js +0 -516
- package/dist/core/ConfigurationService.js.map +0 -1
- package/dist/core/ConsolidationService.d.ts +0 -99
- package/dist/core/ConsolidationService.js +0 -341
- package/dist/core/ConsolidationService.js.map +0 -1
- package/dist/core/InteractiveDisplayManager.d.ts +0 -22
- package/dist/core/InteractiveDisplayManager.js +0 -70
- package/dist/core/InteractiveDisplayManager.js.map +0 -1
- package/dist/core/OutputManager.d.ts +0 -26
- package/dist/core/OutputManager.js +0 -217
- package/dist/core/OutputManager.js.map +0 -1
- package/dist/core/ReviewGenerator.d.ts +0 -13
- package/dist/core/ReviewGenerator.js +0 -102
- package/dist/core/ReviewGenerator.js.map +0 -1
- package/dist/core/fileDiscovery.d.ts +0 -35
- package/dist/core/fileDiscovery.js +0 -202
- package/dist/core/fileDiscovery.js.map +0 -1
- package/dist/core/handlers/EstimationHandler.d.ts +0 -18
- package/dist/core/handlers/EstimationHandler.js +0 -110
- package/dist/core/handlers/EstimationHandler.js.map +0 -1
- package/dist/core/handlers/FileProcessingHandler.d.ts +0 -31
- package/dist/core/handlers/FileProcessingHandler.js +0 -164
- package/dist/core/handlers/FileProcessingHandler.js.map +0 -1
- package/dist/core/handlers/OutputHandler.d.ts +0 -27
- package/dist/core/handlers/OutputHandler.js +0 -127
- package/dist/core/handlers/OutputHandler.js.map +0 -1
- package/dist/core/handlers/ReviewExecutor.d.ts +0 -32
- package/dist/core/handlers/ReviewExecutor.js +0 -111
- package/dist/core/handlers/ReviewExecutor.js.map +0 -1
- package/dist/core/reviewOrchestrator.d.ts +0 -24
- package/dist/core/reviewOrchestrator.js +0 -354
- package/dist/core/reviewOrchestrator.js.map +0 -1
- package/dist/core/utils/ModelInfoUtils.d.ts +0 -16
- package/dist/core/utils/ModelInfoUtils.js +0 -54
- package/dist/core/utils/ModelInfoUtils.js.map +0 -1
- package/dist/formatters/outputFormatter.d.ts +0 -31
- package/dist/formatters/outputFormatter.js +0 -65
- package/dist/formatters/outputFormatter.js.map +0 -1
- package/dist/formatters/utils/IssueFormatters.d.ts +0 -20
- package/dist/formatters/utils/IssueFormatters.js +0 -67
- package/dist/formatters/utils/IssueFormatters.js.map +0 -1
- package/dist/formatters/utils/JsonFormatter.d.ts +0 -13
- package/dist/formatters/utils/JsonFormatter.js +0 -57
- package/dist/formatters/utils/JsonFormatter.js.map +0 -1
- package/dist/formatters/utils/MarkdownFormatters.d.ts +0 -51
- package/dist/formatters/utils/MarkdownFormatters.js +0 -456
- package/dist/formatters/utils/MarkdownFormatters.js.map +0 -1
- package/dist/formatters/utils/MetadataFormatter.d.ts +0 -65
- package/dist/formatters/utils/MetadataFormatter.js +0 -219
- package/dist/formatters/utils/MetadataFormatter.js.map +0 -1
- package/dist/formatters/utils/ModelInfoExtractor.d.ts +0 -33
- package/dist/formatters/utils/ModelInfoExtractor.js +0 -111
- package/dist/formatters/utils/ModelInfoExtractor.js.map +0 -1
- package/dist/plugins/PluginInterface.d.ts +0 -44
- package/dist/plugins/PluginInterface.js +0 -9
- package/dist/plugins/PluginInterface.js.map +0 -1
- package/dist/plugins/PluginManager.d.ts +0 -51
- package/dist/plugins/PluginManager.js +0 -151
- package/dist/plugins/PluginManager.js.map +0 -1
- package/dist/prompts/PromptManager.d.ts +0 -30
- package/dist/prompts/PromptManager.js +0 -62
- package/dist/prompts/PromptManager.js.map +0 -1
- package/dist/prompts/cache/PromptCache.d.ts +0 -32
- package/dist/prompts/cache/PromptCache.js +0 -48
- package/dist/prompts/cache/PromptCache.js.map +0 -1
- package/dist/runtime/auth/service.d.ts +0 -2
- package/dist/runtime/auth/service.js +0 -41
- package/dist/runtime/auth/service.js.map +0 -1
- package/dist/runtime/auth/session.d.ts +0 -5
- package/dist/runtime/auth/session.js +0 -87
- package/dist/runtime/auth/session.js.map +0 -1
- package/dist/runtime/auth/types.d.ts +0 -9
- package/dist/runtime/auth/types.js +0 -3
- package/dist/runtime/auth/types.js.map +0 -1
- package/dist/runtime/fileCollector.d.ts +0 -14
- package/dist/runtime/fileCollector.js +0 -383
- package/dist/runtime/fileCollector.js.map +0 -1
- package/dist/runtime/manifest.d.ts +0 -1
- package/dist/runtime/manifest.js +0 -65
- package/dist/runtime/manifest.js.map +0 -1
- package/dist/runtime/openrouterProxy.d.ts +0 -4
- package/dist/runtime/openrouterProxy.js +0 -43
- package/dist/runtime/openrouterProxy.js.map +0 -1
- package/dist/runtime/preprod/batchStreamer.d.ts +0 -54
- package/dist/runtime/preprod/batchStreamer.js +0 -159
- package/dist/runtime/preprod/batchStreamer.js.map +0 -1
- package/dist/runtime/preprod/crEdgeServiceClient.d.ts +0 -30
- package/dist/runtime/preprod/crEdgeServiceClient.js +0 -133
- package/dist/runtime/preprod/crEdgeServiceClient.js.map +0 -1
- package/dist/runtime/preprod/progressTracker.d.ts +0 -21
- package/dist/runtime/preprod/progressTracker.js +0 -80
- package/dist/runtime/preprod/progressTracker.js.map +0 -1
- package/dist/runtime/preprod/webCheck.d.ts +0 -1
- package/dist/runtime/preprod/webCheck.js +0 -102
- package/dist/runtime/preprod/webCheck.js.map +0 -1
- package/dist/runtime/proxyConfig.d.ts +0 -6
- package/dist/runtime/proxyConfig.js +0 -86
- package/dist/runtime/proxyConfig.js.map +0 -1
- package/dist/runtime/proxyEnvironment.d.ts +0 -3
- package/dist/runtime/proxyEnvironment.js +0 -63
- package/dist/runtime/proxyEnvironment.js.map +0 -1
- package/dist/runtime/reportMerge.d.ts +0 -30
- package/dist/runtime/reportMerge.js +0 -70
- package/dist/runtime/reportMerge.js.map +0 -1
- package/dist/runtime/reporting/markdownReportBuilder.d.ts +0 -17
- package/dist/runtime/reporting/markdownReportBuilder.js +0 -154
- package/dist/runtime/reporting/markdownReportBuilder.js.map +0 -1
- package/dist/runtime/reporting/reportDataCollector.d.ts +0 -31
- package/dist/runtime/reporting/reportDataCollector.js +0 -170
- package/dist/runtime/reporting/reportDataCollector.js.map +0 -1
- package/dist/runtime/reporting/summaryGenerator.d.ts +0 -10
- package/dist/runtime/reporting/summaryGenerator.js +0 -67
- package/dist/runtime/reporting/summaryGenerator.js.map +0 -1
- package/dist/runtime/runAiCodeReview.d.ts +0 -36
- package/dist/runtime/runAiCodeReview.js +0 -409
- package/dist/runtime/runAiCodeReview.js.map +0 -1
- package/dist/runtime/runtimeConfig.d.ts +0 -4
- package/dist/runtime/runtimeConfig.js +0 -7
- package/dist/runtime/runtimeConfig.js.map +0 -1
- package/dist/strategies/ArchitecturalReviewStrategy.d.ts +0 -29
- package/dist/strategies/ArchitecturalReviewStrategy.js +0 -42
- package/dist/strategies/ArchitecturalReviewStrategy.js.map +0 -1
- package/dist/strategies/CodingTestReviewStrategy.d.ts +0 -194
- package/dist/strategies/CodingTestReviewStrategy.js +0 -681
- package/dist/strategies/CodingTestReviewStrategy.js.map +0 -1
- package/dist/strategies/ConsolidatedReviewStrategy.d.ts +0 -25
- package/dist/strategies/ConsolidatedReviewStrategy.js +0 -45
- package/dist/strategies/ConsolidatedReviewStrategy.js.map +0 -1
- package/dist/strategies/ExtractPatternsReviewStrategy.d.ts +0 -30
- package/dist/strategies/ExtractPatternsReviewStrategy.js +0 -51
- package/dist/strategies/ExtractPatternsReviewStrategy.js.map +0 -1
- package/dist/strategies/MultiPassReviewStrategy.d.ts +0 -86
- package/dist/strategies/MultiPassReviewStrategy.js +0 -590
- package/dist/strategies/MultiPassReviewStrategy.js.map +0 -1
- package/dist/strategies/ReviewStrategy.d.ts +0 -45
- package/dist/strategies/ReviewStrategy.js +0 -24
- package/dist/strategies/ReviewStrategy.js.map +0 -1
- package/dist/strategies/StrategyFactory.d.ts +0 -19
- package/dist/strategies/StrategyFactory.js +0 -72
- package/dist/strategies/StrategyFactory.js.map +0 -1
- package/dist/strategies/index.d.ts +0 -13
- package/dist/strategies/index.js +0 -30
- package/dist/strategies/index.js.map +0 -1
- package/dist/tokenizers/baseTokenizer.d.ts +0 -25
- package/dist/tokenizers/baseTokenizer.js +0 -48
- package/dist/tokenizers/baseTokenizer.js.map +0 -1
- package/dist/tokenizers/gptTokenizer.d.ts +0 -7
- package/dist/tokenizers/gptTokenizer.js +0 -28
- package/dist/tokenizers/gptTokenizer.js.map +0 -1
- package/dist/tokenizers/index.d.ts +0 -7
- package/dist/tokenizers/index.js +0 -24
- package/dist/tokenizers/index.js.map +0 -1
- package/dist/types/apiResponses.d.ts +0 -39
- package/dist/types/apiResponses.js +0 -9
- package/dist/types/apiResponses.js.map +0 -1
- package/dist/types/cli.d.ts +0 -22
- package/dist/types/cli.js +0 -3
- package/dist/types/cli.js.map +0 -1
- package/dist/types/common.d.ts +0 -22
- package/dist/types/common.js +0 -14
- package/dist/types/common.js.map +0 -1
- package/dist/types/configuration.d.ts +0 -682
- package/dist/types/configuration.js +0 -65
- package/dist/types/configuration.js.map +0 -1
- package/dist/types/review.d.ts +0 -318
- package/dist/types/review.js +0 -8
- package/dist/types/review.js.map +0 -1
- package/dist/types/reviewSchema.d.ts +0 -543
- package/dist/types/reviewSchema.js +0 -121
- package/dist/types/reviewSchema.js.map +0 -1
- package/dist/types/structuredReview.d.ts +0 -119
- package/dist/types/structuredReview.js +0 -6
- package/dist/types/structuredReview.js.map +0 -1
- package/dist/types/tokenAnalysis.d.ts +0 -44
- package/dist/types/tokenAnalysis.js +0 -4
- package/dist/types/tokenAnalysis.js.map +0 -1
- package/dist/utils/FileReader.d.ts +0 -33
- package/dist/utils/FileReader.js +0 -88
- package/dist/utils/FileReader.js.map +0 -1
- package/dist/utils/FileWriter.d.ts +0 -26
- package/dist/utils/FileWriter.js +0 -76
- package/dist/utils/FileWriter.js.map +0 -1
- package/dist/utils/PathGenerator.d.ts +0 -30
- package/dist/utils/PathGenerator.js +0 -82
- package/dist/utils/PathGenerator.js.map +0 -1
- package/dist/utils/api/apiUtils.d.ts +0 -3
- package/dist/utils/api/apiUtils.js +0 -20
- package/dist/utils/api/apiUtils.js.map +0 -1
- package/dist/utils/api/index.d.ts +0 -1
- package/dist/utils/api/index.js +0 -18
- package/dist/utils/api/index.js.map +0 -1
- package/dist/utils/apiErrorHandler.d.ts +0 -130
- package/dist/utils/apiErrorHandler.js +0 -256
- package/dist/utils/apiErrorHandler.js.map +0 -1
- package/dist/utils/ciDataCollector.d.ts +0 -51
- package/dist/utils/ciDataCollector.js +0 -197
- package/dist/utils/ciDataCollector.js.map +0 -1
- package/dist/utils/codingTestConfigLoader.d.ts +0 -66
- package/dist/utils/codingTestConfigLoader.js +0 -420
- package/dist/utils/codingTestConfigLoader.js.map +0 -1
- package/dist/utils/dependencies/aiDependencyAnalyzer.d.ts +0 -30
- package/dist/utils/dependencies/aiDependencyAnalyzer.js +0 -343
- package/dist/utils/dependencies/aiDependencyAnalyzer.js.map +0 -1
- package/dist/utils/detection/frameworkDetector.d.ts +0 -43
- package/dist/utils/detection/frameworkDetector.js +0 -850
- package/dist/utils/detection/frameworkDetector.js.map +0 -1
- package/dist/utils/detection/index.d.ts +0 -9
- package/dist/utils/detection/index.js +0 -28
- package/dist/utils/detection/index.js.map +0 -1
- package/dist/utils/detection/projectTypeDetector.d.ts +0 -27
- package/dist/utils/detection/projectTypeDetector.js +0 -469
- package/dist/utils/detection/projectTypeDetector.js.map +0 -1
- package/dist/utils/diagramGenerator.d.ts +0 -49
- package/dist/utils/diagramGenerator.js +0 -218
- package/dist/utils/diagramGenerator.js.map +0 -1
- package/dist/utils/errorLogger.d.ts +0 -24
- package/dist/utils/errorLogger.js +0 -59
- package/dist/utils/errorLogger.js.map +0 -1
- package/dist/utils/estimationUtils.d.ts +0 -139
- package/dist/utils/estimationUtils.js +0 -329
- package/dist/utils/estimationUtils.js.map +0 -1
- package/dist/utils/fileFilters.d.ts +0 -72
- package/dist/utils/fileFilters.js +0 -350
- package/dist/utils/fileFilters.js.map +0 -1
- package/dist/utils/fileSystem.d.ts +0 -22
- package/dist/utils/fileSystem.js +0 -45
- package/dist/utils/fileSystem.js.map +0 -1
- package/dist/utils/index.d.ts +0 -22
- package/dist/utils/index.js +0 -52
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/pathValidator.d.ts +0 -40
- package/dist/utils/pathValidator.js +0 -98
- package/dist/utils/pathValidator.js.map +0 -1
- package/dist/utils/priorityFilter.d.ts +0 -34
- package/dist/utils/priorityFilter.js +0 -54
- package/dist/utils/priorityFilter.js.map +0 -1
- package/dist/utils/projectDocs.d.ts +0 -47
- package/dist/utils/projectDocs.js +0 -158
- package/dist/utils/projectDocs.js.map +0 -1
- package/dist/utils/promptPaths.d.ts +0 -6
- package/dist/utils/promptPaths.js +0 -33
- package/dist/utils/promptPaths.js.map +0 -1
- package/dist/utils/promptTemplateManager.d.ts +0 -34
- package/dist/utils/promptTemplateManager.js +0 -141
- package/dist/utils/promptTemplateManager.js.map +0 -1
- package/dist/utils/review/consolidateReview.d.ts +0 -15
- package/dist/utils/review/consolidateReview.js +0 -481
- package/dist/utils/review/consolidateReview.js.map +0 -1
- package/dist/utils/review/fixDisplay.d.ts +0 -20
- package/dist/utils/review/fixDisplay.js +0 -84
- package/dist/utils/review/fixDisplay.js.map +0 -1
- package/dist/utils/review/fixImplementation.d.ts +0 -28
- package/dist/utils/review/fixImplementation.js +0 -60
- package/dist/utils/review/fixImplementation.js.map +0 -1
- package/dist/utils/review/index.d.ts +0 -13
- package/dist/utils/review/index.js +0 -50
- package/dist/utils/review/index.js.map +0 -1
- package/dist/utils/review/interactiveProcessing.d.ts +0 -25
- package/dist/utils/review/interactiveProcessing.js +0 -251
- package/dist/utils/review/interactiveProcessing.js.map +0 -1
- package/dist/utils/review/progressTracker.d.ts +0 -106
- package/dist/utils/review/progressTracker.js +0 -227
- package/dist/utils/review/progressTracker.js.map +0 -1
- package/dist/utils/review/reviewExtraction.d.ts +0 -31
- package/dist/utils/review/reviewExtraction.js +0 -324
- package/dist/utils/review/reviewExtraction.js.map +0 -1
- package/dist/utils/review/types.d.ts +0 -45
- package/dist/utils/review/types.js +0 -18
- package/dist/utils/review/types.js.map +0 -1
- package/dist/utils/reviewActionHandler.d.ts +0 -16
- package/dist/utils/reviewActionHandler.js +0 -34
- package/dist/utils/reviewActionHandler.js.map +0 -1
- package/dist/utils/reviewParser.d.ts +0 -34
- package/dist/utils/reviewParser.js +0 -218
- package/dist/utils/reviewParser.js.map +0 -1
- package/dist/utils/sanitizer.d.ts +0 -82
- package/dist/utils/sanitizer.js +0 -239
- package/dist/utils/sanitizer.js.map +0 -1
- package/dist/utils/smartFileSelector.d.ts +0 -50
- package/dist/utils/smartFileSelector.js +0 -261
- package/dist/utils/smartFileSelector.js.map +0 -1
- package/dist/utils/templateLoader.d.ts +0 -44
- package/dist/utils/templateLoader.js +0 -431
- package/dist/utils/templateLoader.js.map +0 -1
- package/dist/utils/treeGenerator.d.ts +0 -12
- package/dist/utils/treeGenerator.js +0 -133
- package/dist/utils/treeGenerator.js.map +0 -1
|
@@ -1,294 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* @fileoverview Review context for maintaining state between review passes.
|
|
4
|
-
*
|
|
5
|
-
* This module provides a class for maintaining context between multiple review passes.
|
|
6
|
-
* It stores information about the review, including file metadata, important code elements,
|
|
7
|
-
* and findings from previous passes.
|
|
8
|
-
*/
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.ReviewContext = exports.CodeElementType = void 0;
|
|
11
|
-
/**
|
|
12
|
-
* Type of code element tracked in the context
|
|
13
|
-
*/
|
|
14
|
-
var CodeElementType;
|
|
15
|
-
(function (CodeElementType) {
|
|
16
|
-
CodeElementType["Function"] = "function";
|
|
17
|
-
CodeElementType["Class"] = "class";
|
|
18
|
-
CodeElementType["Interface"] = "interface";
|
|
19
|
-
CodeElementType["Variable"] = "variable";
|
|
20
|
-
CodeElementType["Import"] = "import";
|
|
21
|
-
CodeElementType["ExportedItem"] = "exported";
|
|
22
|
-
CodeElementType["Component"] = "component";
|
|
23
|
-
CodeElementType["EntryPoint"] = "entryPoint";
|
|
24
|
-
})(CodeElementType || (exports.CodeElementType = CodeElementType = {}));
|
|
25
|
-
/**
|
|
26
|
-
* Context for multi-pass reviews
|
|
27
|
-
*/
|
|
28
|
-
class ReviewContext {
|
|
29
|
-
/** Project name */
|
|
30
|
-
projectName;
|
|
31
|
-
/** Review type */
|
|
32
|
-
reviewType;
|
|
33
|
-
/** All files involved in the review */
|
|
34
|
-
allFiles;
|
|
35
|
-
/** Current pass number */
|
|
36
|
-
currentPass;
|
|
37
|
-
/** Important code elements tracked across passes */
|
|
38
|
-
codeElements;
|
|
39
|
-
/** Findings from previous passes */
|
|
40
|
-
findings;
|
|
41
|
-
/** File summaries from previous passes */
|
|
42
|
-
fileSummaries;
|
|
43
|
-
/** General notes about the codebase */
|
|
44
|
-
generalNotes;
|
|
45
|
-
/** Timestamp when context was created */
|
|
46
|
-
createdAt;
|
|
47
|
-
/** Timestamp of last update */
|
|
48
|
-
updatedAt;
|
|
49
|
-
/**
|
|
50
|
-
* Create a new review context
|
|
51
|
-
* @param projectName Name of the project
|
|
52
|
-
* @param reviewType Type of review
|
|
53
|
-
* @param files Files involved in the review
|
|
54
|
-
*/
|
|
55
|
-
constructor(projectName, reviewType, files) {
|
|
56
|
-
this.projectName = projectName;
|
|
57
|
-
this.reviewType = reviewType;
|
|
58
|
-
this.allFiles = files.map((f) => f.path);
|
|
59
|
-
this.currentPass = 0;
|
|
60
|
-
this.codeElements = new Map();
|
|
61
|
-
this.findings = [];
|
|
62
|
-
this.fileSummaries = new Map();
|
|
63
|
-
this.generalNotes = [];
|
|
64
|
-
this.createdAt = new Date();
|
|
65
|
-
this.updatedAt = new Date();
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Start a new review pass
|
|
69
|
-
* @returns Updated pass number
|
|
70
|
-
*/
|
|
71
|
-
startPass() {
|
|
72
|
-
this.currentPass++;
|
|
73
|
-
this.updatedAt = new Date();
|
|
74
|
-
return this.currentPass;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Get the current pass number
|
|
78
|
-
* @returns Current pass number
|
|
79
|
-
*/
|
|
80
|
-
getCurrentPass() {
|
|
81
|
-
return this.currentPass;
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Add a code element to the context
|
|
85
|
-
* @param element Code element to add
|
|
86
|
-
*/
|
|
87
|
-
addCodeElement(element) {
|
|
88
|
-
const key = `${element.type}:${element.file}:${element.name}`;
|
|
89
|
-
this.codeElements.set(key, element);
|
|
90
|
-
this.updatedAt = new Date();
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Get all tracked code elements
|
|
94
|
-
* @returns Array of code elements
|
|
95
|
-
*/
|
|
96
|
-
getCodeElements() {
|
|
97
|
-
return Array.from(this.codeElements.values());
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Get code elements of a specific type
|
|
101
|
-
* @param type Type of code elements to get
|
|
102
|
-
* @returns Array of code elements of the specified type
|
|
103
|
-
*/
|
|
104
|
-
getCodeElementsByType(type) {
|
|
105
|
-
return this.getCodeElements().filter((el) => el.type === type);
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Get code elements in a specific file
|
|
109
|
-
* @param filePath Path of the file
|
|
110
|
-
* @returns Array of code elements in the file
|
|
111
|
-
*/
|
|
112
|
-
getCodeElementsInFile(filePath) {
|
|
113
|
-
return this.getCodeElements().filter((el) => el.file === filePath);
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Add a review finding
|
|
117
|
-
* @param finding Review finding to add
|
|
118
|
-
*/
|
|
119
|
-
addFinding(finding) {
|
|
120
|
-
this.findings.push({
|
|
121
|
-
...finding,
|
|
122
|
-
passNumber: this.currentPass,
|
|
123
|
-
});
|
|
124
|
-
this.updatedAt = new Date();
|
|
125
|
-
}
|
|
126
|
-
/**
|
|
127
|
-
* Get all findings
|
|
128
|
-
* @returns Array of all findings
|
|
129
|
-
*/
|
|
130
|
-
getFindings() {
|
|
131
|
-
return [...this.findings];
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Add or update a file summary
|
|
135
|
-
* @param summary File summary to add
|
|
136
|
-
*/
|
|
137
|
-
addFileSummary(summary) {
|
|
138
|
-
this.fileSummaries.set(summary.path, {
|
|
139
|
-
...summary,
|
|
140
|
-
passNumber: this.currentPass,
|
|
141
|
-
});
|
|
142
|
-
this.updatedAt = new Date();
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* Get summary for a specific file
|
|
146
|
-
* @param filePath Path of the file
|
|
147
|
-
* @returns File summary or undefined if not found
|
|
148
|
-
*/
|
|
149
|
-
getFileSummary(filePath) {
|
|
150
|
-
return this.fileSummaries.get(filePath);
|
|
151
|
-
}
|
|
152
|
-
/**
|
|
153
|
-
* Get summaries for all files
|
|
154
|
-
* @returns Array of file summaries
|
|
155
|
-
*/
|
|
156
|
-
getAllFileSummaries() {
|
|
157
|
-
return Array.from(this.fileSummaries.values());
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* Add a general note about the codebase
|
|
161
|
-
* @param note Note to add
|
|
162
|
-
*/
|
|
163
|
-
addGeneralNote(note) {
|
|
164
|
-
this.generalNotes.push(note);
|
|
165
|
-
this.updatedAt = new Date();
|
|
166
|
-
}
|
|
167
|
-
/**
|
|
168
|
-
* Get all general notes
|
|
169
|
-
* @returns Array of general notes
|
|
170
|
-
*/
|
|
171
|
-
getGeneralNotes() {
|
|
172
|
-
return [...this.generalNotes];
|
|
173
|
-
}
|
|
174
|
-
/**
|
|
175
|
-
* Generate a contextual prompt for the next pass
|
|
176
|
-
* @param files Files to include in the next pass
|
|
177
|
-
* @param maxContextLength Maximum length of context in characters
|
|
178
|
-
* @returns Formatted context string for inclusion in the next prompt
|
|
179
|
-
*/
|
|
180
|
-
generateNextPassContext(files, maxContextLength = 2000) {
|
|
181
|
-
let context = `
|
|
182
|
-
### Review Context (Pass ${this.currentPass})
|
|
183
|
-
|
|
184
|
-
Project: ${this.projectName}
|
|
185
|
-
Review Type: ${this.reviewType}
|
|
186
|
-
Files in this pass: ${files.length} / ${this.allFiles.length}
|
|
187
|
-
|
|
188
|
-
`;
|
|
189
|
-
// Add important findings from previous passes
|
|
190
|
-
const importantFindings = this.findings.sort((a, b) => b.severity - a.severity).slice(0, 5);
|
|
191
|
-
if (importantFindings.length > 0) {
|
|
192
|
-
context += '#### Key Findings from Previous Passes\n\n';
|
|
193
|
-
importantFindings.forEach((finding) => {
|
|
194
|
-
context += `- [${finding.type.toUpperCase()}] ${finding.description}${finding.file ? ` (in ${finding.file})` : ''}\n`;
|
|
195
|
-
});
|
|
196
|
-
context += '\n';
|
|
197
|
-
}
|
|
198
|
-
// Add summaries of files that are related but not in this pass
|
|
199
|
-
const relatedFiles = this.getAllFileSummaries()
|
|
200
|
-
.filter((summary) => !files.includes(summary.path))
|
|
201
|
-
.slice(0, 5);
|
|
202
|
-
if (relatedFiles.length > 0) {
|
|
203
|
-
context += '#### Related Files (Not in This Pass)\n\n';
|
|
204
|
-
relatedFiles.forEach((file) => {
|
|
205
|
-
context += `- ${file.path}: ${file.description}\n`;
|
|
206
|
-
if (file.keyElements.length > 0) {
|
|
207
|
-
context += ` Key elements: ${file.keyElements.join(', ')}\n`;
|
|
208
|
-
}
|
|
209
|
-
});
|
|
210
|
-
context += '\n';
|
|
211
|
-
}
|
|
212
|
-
// Add important code elements relevant to this pass
|
|
213
|
-
const relevantElements = this.getCodeElements()
|
|
214
|
-
.filter((el) => files.includes(el.file) || el.importance > 7)
|
|
215
|
-
.sort((a, b) => b.importance - a.importance)
|
|
216
|
-
.slice(0, 10);
|
|
217
|
-
if (relevantElements.length > 0) {
|
|
218
|
-
context += '#### Important Code Elements\n\n';
|
|
219
|
-
relevantElements.forEach((element) => {
|
|
220
|
-
context += `- ${element.type} \`${element.name}\`${element.signature ? `: ${element.signature}` : ''} (in ${element.file})\n`;
|
|
221
|
-
});
|
|
222
|
-
context += '\n';
|
|
223
|
-
}
|
|
224
|
-
// Add general notes
|
|
225
|
-
if (this.generalNotes.length > 0) {
|
|
226
|
-
context += '#### General Notes\n\n';
|
|
227
|
-
this.generalNotes.slice(0, 3).forEach((note) => {
|
|
228
|
-
context += `- ${note}\n`;
|
|
229
|
-
});
|
|
230
|
-
context += '\n';
|
|
231
|
-
}
|
|
232
|
-
// Truncate if too long
|
|
233
|
-
if (context.length > maxContextLength) {
|
|
234
|
-
context = `${context.substring(0, maxContextLength - 3)}...`;
|
|
235
|
-
}
|
|
236
|
-
return context;
|
|
237
|
-
}
|
|
238
|
-
/**
|
|
239
|
-
* Serialize the context to JSON
|
|
240
|
-
* @returns JSON representation of the context
|
|
241
|
-
*/
|
|
242
|
-
toJSON() {
|
|
243
|
-
return {
|
|
244
|
-
projectName: this.projectName,
|
|
245
|
-
reviewType: this.reviewType,
|
|
246
|
-
currentPass: this.currentPass,
|
|
247
|
-
codeElements: Array.from(this.codeElements.values()),
|
|
248
|
-
findings: this.findings,
|
|
249
|
-
fileSummaries: Array.from(this.fileSummaries.values()),
|
|
250
|
-
generalNotes: this.generalNotes,
|
|
251
|
-
createdAt: this.createdAt.toISOString(),
|
|
252
|
-
updatedAt: this.updatedAt.toISOString(),
|
|
253
|
-
};
|
|
254
|
-
}
|
|
255
|
-
/**
|
|
256
|
-
* Create a review context from JSON
|
|
257
|
-
* @param json JSON object
|
|
258
|
-
* @returns New ReviewContext instance
|
|
259
|
-
*/
|
|
260
|
-
static fromJSON(json) {
|
|
261
|
-
const context = new ReviewContext(json.projectName, json.reviewType, json.allFiles || []);
|
|
262
|
-
context.currentPass = json.currentPass || 0;
|
|
263
|
-
// Restore code elements
|
|
264
|
-
if (Array.isArray(json.codeElements)) {
|
|
265
|
-
json.codeElements.forEach((element) => {
|
|
266
|
-
context.addCodeElement(element);
|
|
267
|
-
});
|
|
268
|
-
}
|
|
269
|
-
// Restore findings
|
|
270
|
-
if (Array.isArray(json.findings)) {
|
|
271
|
-
context.findings = json.findings;
|
|
272
|
-
}
|
|
273
|
-
// Restore file summaries
|
|
274
|
-
if (Array.isArray(json.fileSummaries)) {
|
|
275
|
-
json.fileSummaries.forEach((summary) => {
|
|
276
|
-
context.fileSummaries.set(summary.path, summary);
|
|
277
|
-
});
|
|
278
|
-
}
|
|
279
|
-
// Restore general notes
|
|
280
|
-
if (Array.isArray(json.generalNotes)) {
|
|
281
|
-
context.generalNotes = json.generalNotes;
|
|
282
|
-
}
|
|
283
|
-
// Restore timestamps
|
|
284
|
-
if (json.createdAt) {
|
|
285
|
-
context.createdAt = new Date(json.createdAt);
|
|
286
|
-
}
|
|
287
|
-
if (json.updatedAt) {
|
|
288
|
-
context.updatedAt = new Date(json.updatedAt);
|
|
289
|
-
}
|
|
290
|
-
return context;
|
|
291
|
-
}
|
|
292
|
-
}
|
|
293
|
-
exports.ReviewContext = ReviewContext;
|
|
294
|
-
//# sourceMappingURL=ReviewContext.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ReviewContext.js","sourceRoot":"","sources":["../../../src/analysis/context/ReviewContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* @fileoverview Context management exports.
|
|
4
|
-
*
|
|
5
|
-
* This module exports all context management related functions and types.
|
|
6
|
-
*/
|
|
7
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
|
-
if (k2 === undefined) k2 = k;
|
|
9
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
10
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
11
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
12
|
-
}
|
|
13
|
-
Object.defineProperty(o, k2, desc);
|
|
14
|
-
}) : (function(o, m, k, k2) {
|
|
15
|
-
if (k2 === undefined) k2 = k;
|
|
16
|
-
o[k2] = m[k];
|
|
17
|
-
}));
|
|
18
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
19
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20
|
-
};
|
|
21
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
__exportStar(require("./ReviewContext"), exports);
|
|
23
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/analysis/context/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;AAEH,kDAAgC"}
|
package/dist/analysis/index.d.ts
DELETED
package/dist/analysis/index.js
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* @fileoverview Analysis module exports.
|
|
4
|
-
*
|
|
5
|
-
* This module exports all analysis related functions and types.
|
|
6
|
-
*/
|
|
7
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
|
-
if (k2 === undefined) k2 = k;
|
|
9
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
10
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
11
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
12
|
-
}
|
|
13
|
-
Object.defineProperty(o, k2, desc);
|
|
14
|
-
}) : (function(o, m, k, k2) {
|
|
15
|
-
if (k2 === undefined) k2 = k;
|
|
16
|
-
o[k2] = m[k];
|
|
17
|
-
}));
|
|
18
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
19
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20
|
-
};
|
|
21
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
__exportStar(require("./context"), exports);
|
|
23
|
-
__exportStar(require("./tokens"), exports);
|
|
24
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/analysis/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;AAEH,4CAA0B;AAC1B,2CAAyB"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { WordPressStandardsFinding, WordPressStandardsReport } from '../../types/review';
|
|
2
|
-
export interface WordPressPhpcsOptions {
|
|
3
|
-
enabled?: boolean;
|
|
4
|
-
phpcsPath?: string;
|
|
5
|
-
rulesetPath?: string;
|
|
6
|
-
testVersion?: string;
|
|
7
|
-
}
|
|
8
|
-
export declare function getCachedWordPressReport(projectRoot: string, files: string[], options: WordPressPhpcsOptions): Promise<WordPressStandardsReport>;
|
|
9
|
-
export declare function resetWordPressReportCache(): void;
|
|
10
|
-
export declare function summarizeWordPressReport(report: WordPressStandardsReport, limit?: number, projectRoot?: string): string;
|
|
11
|
-
export declare function formatWordPressFinding(finding: WordPressStandardsFinding, projectRoot: string): string;
|
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getCachedWordPressReport = getCachedWordPressReport;
|
|
7
|
-
exports.resetWordPressReportCache = resetWordPressReportCache;
|
|
8
|
-
exports.summarizeWordPressReport = summarizeWordPressReport;
|
|
9
|
-
exports.formatWordPressFinding = formatWordPressFinding;
|
|
10
|
-
const node_fs_1 = __importDefault(require("node:fs"));
|
|
11
|
-
const node_path_1 = __importDefault(require("node:path"));
|
|
12
|
-
const execa_1 = require("execa");
|
|
13
|
-
const logger_1 = __importDefault(require("../../utils/logger"));
|
|
14
|
-
const reportCache = new Map();
|
|
15
|
-
function resolveDefaultRuleset(projectRoot) {
|
|
16
|
-
// 1. Check for project-level configuration (phpcs.xml or phpcs.xml.dist)
|
|
17
|
-
const projectConfigCandidates = [
|
|
18
|
-
node_path_1.default.join(projectRoot, 'phpcs.xml'),
|
|
19
|
-
node_path_1.default.join(projectRoot, 'phpcs.xml.dist'),
|
|
20
|
-
];
|
|
21
|
-
for (const config of projectConfigCandidates) {
|
|
22
|
-
if (node_fs_1.default.existsSync(config)) {
|
|
23
|
-
logger_1.default.debug(`Found project-level PHPCS config: ${config}`);
|
|
24
|
-
return undefined; // Return undefined to let PHPCS auto-discover this
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
// 2. Check for WordPress Coding Standards in standard locations
|
|
28
|
-
const wpcsCandidates = [
|
|
29
|
-
node_path_1.default.resolve(projectRoot, '..', 'WordPress-Coding-Standards-develop', 'WordPress', 'ruleset.xml'),
|
|
30
|
-
node_path_1.default.resolve(projectRoot, 'WordPress-Coding-Standards-develop', 'WordPress', 'ruleset.xml'),
|
|
31
|
-
node_path_1.default.resolve(projectRoot, 'vendor', 'wp-coding-standards', 'wpcs', 'WordPress', 'ruleset.xml'),
|
|
32
|
-
];
|
|
33
|
-
for (const candidate of wpcsCandidates) {
|
|
34
|
-
if (node_fs_1.default.existsSync(candidate)) {
|
|
35
|
-
return candidate;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
return undefined;
|
|
39
|
-
}
|
|
40
|
-
function pickPhpcsBinary(customPath) {
|
|
41
|
-
if (customPath) {
|
|
42
|
-
return customPath;
|
|
43
|
-
}
|
|
44
|
-
if (process.env.PHPCS_BINARY) {
|
|
45
|
-
return process.env.PHPCS_BINARY;
|
|
46
|
-
}
|
|
47
|
-
return 'phpcs';
|
|
48
|
-
}
|
|
49
|
-
function filterPhpFiles(files) {
|
|
50
|
-
return files
|
|
51
|
-
.map((file) => node_path_1.default.resolve(file))
|
|
52
|
-
.filter((file) => /\.(php|phtml|inc|php5|php7)$/i.test(file));
|
|
53
|
-
}
|
|
54
|
-
async function executePhpcs(projectRoot, files, options) {
|
|
55
|
-
if (options.enabled === false) {
|
|
56
|
-
return {
|
|
57
|
-
status: 'skipped',
|
|
58
|
-
errors: 0,
|
|
59
|
-
warnings: 0,
|
|
60
|
-
findings: [],
|
|
61
|
-
reason: 'WordPress PHPCS disabled',
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
const phpFiles = filterPhpFiles(files);
|
|
65
|
-
if (phpFiles.length === 0) {
|
|
66
|
-
return {
|
|
67
|
-
status: 'skipped',
|
|
68
|
-
errors: 0,
|
|
69
|
-
warnings: 0,
|
|
70
|
-
findings: [],
|
|
71
|
-
reason: 'No PHP files provided for PHPCS scan',
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
const ruleset = options.rulesetPath || resolveDefaultRuleset(projectRoot);
|
|
75
|
-
// If ruleset is undefined here, it might mean we found a phpcs.xml, or we're relying on global config.
|
|
76
|
-
// We'll proceed and let PHPCS decide, unless we want to enforce a specific fallback.
|
|
77
|
-
const phpcsBinary = pickPhpcsBinary(options.phpcsPath);
|
|
78
|
-
// Base arguments
|
|
79
|
-
const baseArgs = [
|
|
80
|
-
'--report=json',
|
|
81
|
-
'--colors=false',
|
|
82
|
-
'--extensions=php,php5,inc,phtml',
|
|
83
|
-
];
|
|
84
|
-
if (ruleset) {
|
|
85
|
-
baseArgs.push(`--standard=${ruleset}`);
|
|
86
|
-
}
|
|
87
|
-
if (options.testVersion) {
|
|
88
|
-
baseArgs.push('--runtime-set', 'testVersion', options.testVersion);
|
|
89
|
-
}
|
|
90
|
-
// Batch processing to avoid E2BIG
|
|
91
|
-
const BATCH_SIZE = 50;
|
|
92
|
-
const allFindings = [];
|
|
93
|
-
let totalErrors = 0;
|
|
94
|
-
let totalWarnings = 0;
|
|
95
|
-
let hasFailure = false;
|
|
96
|
-
let failureReason = '';
|
|
97
|
-
for (let i = 0; i < phpFiles.length; i += BATCH_SIZE) {
|
|
98
|
-
const batch = phpFiles.slice(i, i + BATCH_SIZE);
|
|
99
|
-
const args = [...baseArgs, ...batch];
|
|
100
|
-
try {
|
|
101
|
-
const { stdout } = await (0, execa_1.execa)(phpcsBinary, args, {
|
|
102
|
-
cwd: projectRoot,
|
|
103
|
-
reject: false,
|
|
104
|
-
});
|
|
105
|
-
if (!stdout || stdout.trim().length === 0) {
|
|
106
|
-
continue;
|
|
107
|
-
}
|
|
108
|
-
// Robust JSON parsing: find the first '{' and last '}'
|
|
109
|
-
const jsonStart = stdout.indexOf('{');
|
|
110
|
-
const jsonEnd = stdout.lastIndexOf('}');
|
|
111
|
-
if (jsonStart === -1 || jsonEnd === -1) {
|
|
112
|
-
logger_1.default.warn('PHPCS output does not contain valid JSON');
|
|
113
|
-
continue;
|
|
114
|
-
}
|
|
115
|
-
const jsonStr = stdout.substring(jsonStart, jsonEnd + 1);
|
|
116
|
-
let parsed;
|
|
117
|
-
try {
|
|
118
|
-
parsed = JSON.parse(jsonStr);
|
|
119
|
-
}
|
|
120
|
-
catch (error) {
|
|
121
|
-
logger_1.default.warn(`Failed to parse PHPCS output batch ${i}: ${error instanceof Error ? error.message : String(error)}`);
|
|
122
|
-
continue;
|
|
123
|
-
}
|
|
124
|
-
if (parsed.totals) {
|
|
125
|
-
totalErrors += Number(parsed.totals.errors ?? 0);
|
|
126
|
-
totalWarnings += Number(parsed.totals.warnings ?? 0);
|
|
127
|
-
}
|
|
128
|
-
if (parsed.files) {
|
|
129
|
-
for (const [fileName, data] of Object.entries(parsed.files)) {
|
|
130
|
-
const messages = Array.isArray(data.messages) ? data.messages : [];
|
|
131
|
-
for (const message of messages) {
|
|
132
|
-
allFindings.push({
|
|
133
|
-
filePath: fileName,
|
|
134
|
-
line: message.line ?? 0,
|
|
135
|
-
column: message.column ?? 0,
|
|
136
|
-
type: message.type === 'ERROR' ? 'ERROR' : 'WARNING',
|
|
137
|
-
severity: Number(message.severity ?? 0),
|
|
138
|
-
message: message.message ?? 'Violation detected',
|
|
139
|
-
source: message.source ?? 'WordPress',
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
catch (error) {
|
|
146
|
-
hasFailure = true;
|
|
147
|
-
failureReason =
|
|
148
|
-
error instanceof Error && 'code' in error && error.code === 'ENOENT'
|
|
149
|
-
? `PHPCS binary not found (${phpcsBinary})`
|
|
150
|
-
: error instanceof Error
|
|
151
|
-
? error.message
|
|
152
|
-
: 'Unknown error running PHPCS';
|
|
153
|
-
// If binary is missing, abort immediately
|
|
154
|
-
if (failureReason.includes('binary not found')) {
|
|
155
|
-
return {
|
|
156
|
-
status: 'skipped',
|
|
157
|
-
errors: 0,
|
|
158
|
-
warnings: 0,
|
|
159
|
-
findings: [],
|
|
160
|
-
reason: failureReason,
|
|
161
|
-
};
|
|
162
|
-
}
|
|
163
|
-
logger_1.default.warn(`Error running PHPCS batch: ${failureReason}`);
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
if (hasFailure && allFindings.length === 0) {
|
|
167
|
-
return {
|
|
168
|
-
status: 'failed',
|
|
169
|
-
errors: 0,
|
|
170
|
-
warnings: 0,
|
|
171
|
-
findings: [],
|
|
172
|
-
reason: failureReason || 'PHPCS execution failed',
|
|
173
|
-
};
|
|
174
|
-
}
|
|
175
|
-
return {
|
|
176
|
-
status: 'ok',
|
|
177
|
-
errors: totalErrors,
|
|
178
|
-
warnings: totalWarnings,
|
|
179
|
-
findings: allFindings,
|
|
180
|
-
};
|
|
181
|
-
}
|
|
182
|
-
function getCachedWordPressReport(projectRoot, files, options) {
|
|
183
|
-
const cacheKey = `${projectRoot}|${options.rulesetPath || 'default'}|${options.phpcsPath || 'phpcs'}`;
|
|
184
|
-
if (!reportCache.has(cacheKey)) {
|
|
185
|
-
reportCache.set(cacheKey, executePhpcs(projectRoot, files, options));
|
|
186
|
-
}
|
|
187
|
-
return reportCache.get(cacheKey);
|
|
188
|
-
}
|
|
189
|
-
function resetWordPressReportCache() {
|
|
190
|
-
reportCache.clear();
|
|
191
|
-
}
|
|
192
|
-
function summarizeWordPressReport(report, limit = 5, projectRoot = process.cwd()) {
|
|
193
|
-
if (report.status === 'skipped') {
|
|
194
|
-
return `WordPress Coding Standards scan skipped: ${report.reason ?? 'not enabled'}`;
|
|
195
|
-
}
|
|
196
|
-
if (report.status === 'failed') {
|
|
197
|
-
return `WordPress Coding Standards scan failed: ${report.reason ?? 'unknown error'}`;
|
|
198
|
-
}
|
|
199
|
-
if (report.findings.length === 0) {
|
|
200
|
-
return 'WordPress Coding Standards scan passed with no issues.';
|
|
201
|
-
}
|
|
202
|
-
const lines = [
|
|
203
|
-
`WordPress Coding Standards: ${report.errors} error(s), ${report.warnings} warning(s).`,
|
|
204
|
-
];
|
|
205
|
-
const topFindings = report.findings.slice(0, limit);
|
|
206
|
-
for (const finding of topFindings) {
|
|
207
|
-
const rel = node_path_1.default.relative(projectRoot, finding.filePath);
|
|
208
|
-
lines.push(`- ${rel || finding.filePath}:${finding.line} [${finding.type}] ${finding.source} – ${finding.message}`);
|
|
209
|
-
}
|
|
210
|
-
if (report.findings.length > limit) {
|
|
211
|
-
lines.push(`- ...and ${report.findings.length - limit} more finding(s)`);
|
|
212
|
-
}
|
|
213
|
-
return lines.join('\n');
|
|
214
|
-
}
|
|
215
|
-
function formatWordPressFinding(finding, projectRoot) {
|
|
216
|
-
const rel = node_path_1.default.relative(projectRoot, finding.filePath);
|
|
217
|
-
return `- ${rel || finding.filePath}:${finding.line} [${finding.type}] ${finding.source} – ${finding.message}`;
|
|
218
|
-
}
|
|
219
|
-
//# sourceMappingURL=wpPhpcsRunner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wpPhpcsRunner.js","sourceRoot":"","sources":["../../../src/analysis/static/wpPhpcsRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview Formatter for token analysis results.
|
|
3
|
-
*
|
|
4
|
-
* This module provides utilities for formatting token analysis results into
|
|
5
|
-
* human-readable strings and other formats for display or logging.
|
|
6
|
-
*/
|
|
7
|
-
import type { FileTokenAnalysis, TokenAnalysisResult } from './TokenAnalyzer';
|
|
8
|
-
/**
|
|
9
|
-
* Format token analysis result as a human-readable string
|
|
10
|
-
* @param analysis Token analysis result
|
|
11
|
-
* @param modelName Name of the model used
|
|
12
|
-
* @param includedFiles Whether to include detailed file listing
|
|
13
|
-
* @returns Formatted string representation of the analysis
|
|
14
|
-
*/
|
|
15
|
-
export declare function formatTokenAnalysis(analysis: TokenAnalysisResult, modelName: string, includeFiles?: boolean): string;
|
|
16
|
-
/**
|
|
17
|
-
* Format token analysis result as JSON
|
|
18
|
-
* @param analysis Token analysis result
|
|
19
|
-
* @returns JSON string representation of the analysis
|
|
20
|
-
*/
|
|
21
|
-
export declare function formatTokenAnalysisAsJson(analysis: TokenAnalysisResult): string;
|
|
22
|
-
/**
|
|
23
|
-
* Format a single file token analysis as a string
|
|
24
|
-
* @param fileAnalysis File token analysis
|
|
25
|
-
* @returns Formatted string representation of the file analysis
|
|
26
|
-
*/
|
|
27
|
-
export declare function formatFileTokenAnalysis(fileAnalysis: FileTokenAnalysis): string;
|