@sun-asterisk/sunlint 1.2.2 โ†’ 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/CHANGELOG.md +40 -1
  2. package/CONTRIBUTING.md +533 -70
  3. package/README.md +16 -2
  4. package/config/engines/engines-enhanced.json +86 -0
  5. package/config/engines/semantic-config.json +114 -0
  6. package/config/eslint-rule-mapping.json +50 -38
  7. package/config/rules/enhanced-rules-registry.json +2503 -0
  8. package/config/rules/rules-registry-generated.json +785 -837
  9. package/core/adapters/sunlint-rule-adapter.js +25 -30
  10. package/core/analysis-orchestrator.js +42 -2
  11. package/core/categories.js +52 -0
  12. package/core/category-constants.js +39 -0
  13. package/core/cli-action-handler.js +32 -5
  14. package/core/config-manager.js +111 -0
  15. package/core/config-merger.js +61 -0
  16. package/core/constants/categories.js +168 -0
  17. package/core/constants/defaults.js +165 -0
  18. package/core/constants/engines.js +185 -0
  19. package/core/constants/index.js +30 -0
  20. package/core/constants/rules.js +215 -0
  21. package/core/file-targeting-service.js +128 -7
  22. package/core/interfaces/rule-plugin.interface.js +207 -0
  23. package/core/plugin-manager.js +448 -0
  24. package/core/rule-selection-service.js +42 -15
  25. package/core/semantic-engine.js +560 -0
  26. package/core/semantic-rule-base.js +433 -0
  27. package/core/unified-rule-registry.js +484 -0
  28. package/docs/CONSTANTS-ARCHITECTURE.md +288 -0
  29. package/engines/core/base-engine.js +249 -0
  30. package/engines/engine-factory.js +275 -0
  31. package/engines/eslint-engine.js +171 -19
  32. package/engines/heuristic-engine.js +511 -78
  33. package/integrations/eslint/plugin/index.js +27 -27
  34. package/package.json +10 -6
  35. package/rules/common/C003_no_vague_abbreviations/analyzer.js +1 -1
  36. package/rules/common/C029_catch_block_logging/analyzer.js +17 -5
  37. package/rules/common/C047_no_duplicate_retry_logic/c047-semantic-rule.js +278 -0
  38. package/rules/common/C047_no_duplicate_retry_logic/symbol-analyzer-enhanced.js +968 -0
  39. package/rules/common/C047_no_duplicate_retry_logic/symbol-config.json +71 -0
  40. package/rules/index.js +7 -0
  41. package/scripts/category-manager.js +150 -0
  42. package/scripts/generate-rules-registry.js +88 -0
  43. package/scripts/migrate-rule-registry.js +157 -0
  44. package/scripts/validate-system.js +48 -0
  45. package/.sunlint.json +0 -35
  46. package/config/README.md +0 -88
  47. package/config/engines/eslint-rule-mapping.json +0 -74
  48. package/config/schemas/sunlint-schema.json +0 -0
  49. package/config/testing/test-s005-working.ts +0 -22
  50. package/core/multi-rule-runner.js +0 -0
  51. package/engines/tree-sitter-parser.js +0 -0
  52. package/engines/universal-ast-engine.js +0 -0
  53. package/rules/common/C029_catch_block_logging/analyzer-backup.js +0 -426
  54. package/rules/common/C029_catch_block_logging/analyzer-fixed.js +0 -130
  55. package/rules/common/C029_catch_block_logging/analyzer-multi-tech.js +0 -487
  56. package/rules/common/C029_catch_block_logging/analyzer-simple.js +0 -110
  57. package/rules/common/C029_catch_block_logging/ast-analyzer-backup.js +0 -441
  58. package/rules/common/C029_catch_block_logging/ast-analyzer-new.js +0 -127
  59. package/rules/common/C029_catch_block_logging/ast-analyzer.js +0 -133
  60. package/rules/common/C029_catch_block_logging/cfg-analyzer.js +0 -408
  61. package/rules/common/C029_catch_block_logging/dataflow-analyzer.js +0 -454
  62. package/rules/common/C029_catch_block_logging/multi-language-ast-engine.js +0 -700
  63. package/rules/common/C029_catch_block_logging/pattern-learning-analyzer.js +0 -568
  64. package/rules/common/C029_catch_block_logging/semantic-analyzer.js +0 -459
package/CHANGELOG.md CHANGED
@@ -2,7 +2,46 @@
2
2
 
3
3
  ---
4
4
 
5
- ## ๐Ÿ”ฅ **v1.2.0 - Architecture Refactor (In Development)**
5
+ ## ๏ฟฝ **v1.3.0 - Enhanced Engine Architecture (August 13, 2025)**
6
+
7
+ **Release Date**: August 13, 2025
8
+ **Type**: Major Engine Enhancement & Rule Mapping Improvements
9
+
10
+ ### ๐Ÿ—๏ธ **Engine Architecture Enhancements**
11
+
12
+ #### **Strict Engine Mode vs Fallback Mode**
13
+ - **NEW**: `--engine=eslint` strict mode - only runs specified engine, skips unsupported rules
14
+ - **NEW**: Auto fallback mode when no engine specified (ESLint โ†’ Heuristic โ†’ OpenAI)
15
+ - **IMPROVED**: Enhanced orchestrator with requestedEngine support
16
+ - **FIXED**: TypeScript ESLint rules requiring type information removed from mapping
17
+
18
+ #### **ESLint Integration Improvements**
19
+ - **FIXED**: Removed type-dependent rules: `@typescript-eslint/strict-boolean-expressions`, `@typescript-eslint/no-floating-promises`, `@typescript-eslint/prefer-readonly`
20
+ - **UPDATED**: ESLint rule mapping cleanup for better stability
21
+ - **ENHANCED**: Graceful handling of missing ESLint plugins
22
+ - **ADDED**: Support for `eslint-plugin-import` in dependencies documentation
23
+
24
+ #### **Rule System Enhancements**
25
+ - **IMPROVED**: Rule skip logic with detailed reporting
26
+ - **ENHANCED**: Engine-specific rule filtering and compatibility
27
+ - **FIXED**: ESLint engine stability issues with TypeScript projects
28
+ - **UPDATED**: Documentation to reflect current architecture
29
+
30
+ ### ๐Ÿ“š **Documentation Updates**
31
+ - **UPDATED**: README.md with complete dependency information
32
+ - **UPDATED**: CONTRIBUTING.md to match current architecture
33
+ - **REMOVED**: Outdated documentation files (REFACTOR_PLAN.md, RULE_MIGRATION_SUMMARY.md, etc.)
34
+ - **ENHANCED**: Clear setup instructions for TypeScript projects
35
+
36
+ ### ๐Ÿงน **Cleanup & Maintenance**
37
+ - **REMOVED**: Deprecated documentation files
38
+ - **REMOVED**: Temporary test files and cache files
39
+ - **UPDATED**: Package version to 1.3.0
40
+ - **IMPROVED**: File structure organization
41
+
42
+ ---
43
+
44
+ ## ๐Ÿ”ฅ **v1.2.0 - Architecture Refactor (July 30, 2025)**
6
45
 
7
46
  **Release Date**: July 30, 2025
8
47
  **Type**: Major Architecture Update (Adapter Pattern Implementation)