@mocoto/mahoraga 0.14.8 → 0.14.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -4
- package/THIRD-PARTY-NOTICES.txt +482 -0
- package/dist/analysts/architects/analyst-structure.js +0 -3
- package/dist/analysts/architects/archetypes-custom.js +4 -69
- package/dist/analysts/architects/detector-archetypes.js +6 -44
- package/dist/analysts/architects/diagnostic-project.js +0 -3
- package/dist/analysts/architects/index.js +0 -4
- package/dist/analysts/architects/orchestrator-archetypes.js +0 -30
- package/dist/analysts/architects/signals-project-advanced.js +1 -32
- package/dist/analysts/architects/signals-project.js +0 -10
- package/dist/analysts/architects/strategist-structure.js +0 -40
- package/dist/analysts/azure-pipelines/analysts/analyst-azure.js +0 -7
- package/dist/analysts/azure-pipelines/corrections/autofix-engine.js +1 -2
- package/dist/analysts/azure-pipelines/corrections/correction-azure.js +0 -2
- package/dist/analysts/azure-pipelines/corrections/index.js +0 -1
- package/dist/analysts/azure-pipelines/detectors/detector-azure-performance.js +0 -9
- package/dist/analysts/azure-pipelines/detectors/detector-azure-security.js +0 -12
- package/dist/analysts/azure-pipelines/detectors/detector-azure-structure.js +1 -12
- package/dist/analysts/azure-pipelines/detectors/index.js +0 -1
- package/dist/analysts/azure-pipelines/index.js +0 -4
- package/dist/analysts/azure-pipelines/reports/generator-report-azure.js +0 -1
- package/dist/analysts/azure-pipelines/reports/index.js +0 -1
- package/dist/analysts/azure-pipelines/scorers/index.js +0 -1
- package/dist/analysts/azure-pipelines/scorers/scorer-azure.js +0 -5
- package/dist/analysts/circleci/analysts/analyst-circleci.js +0 -3
- package/dist/analysts/circleci/corrections/autofix-engine.js +1 -2
- package/dist/analysts/circleci/corrections/correction-circleci.js +0 -1
- package/dist/analysts/circleci/corrections/index.js +0 -1
- package/dist/analysts/circleci/detectors/detector-circleci-performance.js +0 -9
- package/dist/analysts/circleci/detectors/detector-circleci-security.js +0 -2
- package/dist/analysts/circleci/detectors/detector-circleci-structure.js +1 -10
- package/dist/analysts/circleci/detectors/index.js +0 -1
- package/dist/analysts/circleci/index.js +0 -4
- package/dist/analysts/circleci/reports/generator-report-circleci.js +0 -1
- package/dist/analysts/circleci/reports/index.js +0 -1
- package/dist/analysts/circleci/scorers/index.js +0 -1
- package/dist/analysts/circleci/scorers/scorer-circleci.js +0 -1
- package/dist/analysts/converters/converter-base.js +0 -4
- package/dist/analysts/converters/engines/converter-gha-to-gitlab.js +0 -15
- package/dist/analysts/converters/index.js +0 -7
- package/dist/analysts/corrections/analyst-quick-fixes.js +0 -3
- package/dist/analysts/corrections/analyst-scoring.js +0 -8
- package/dist/analysts/corrections/auto-fix-engine.js +0 -20
- package/dist/analysts/corrections/correction-aggregator-analyst.js +0 -2
- package/dist/analysts/corrections/corrector-structure.js +0 -5
- package/dist/analysts/corrections/fix-alias-imports.js +0 -1
- package/dist/analysts/corrections/fix-md-fences.js +0 -1
- package/dist/analysts/corrections/index.js +0 -3
- package/dist/analysts/corrections/map-reversion.js +3 -53
- package/dist/analysts/corrections/pruning.js +1 -3
- package/dist/analysts/corrections/quick-fixes/fix-any-to-proper-type.js +1 -30
- package/dist/analysts/corrections/quick-fixes/fix-unknown-to-specific-type.js +1 -22
- package/dist/analysts/corrections/quick-fixes/index.js +0 -4
- package/dist/analysts/corrections/reorganize-barrels.js +1 -30
- package/dist/analysts/corrections/rewrite-testes-aliases.js +0 -3
- package/dist/analysts/corrections/scoring-shared.js +1 -37
- package/dist/analysts/corrections/type-safety/context-analyzer.js +1 -96
- package/dist/analysts/corrections/type-safety/index.js +0 -5
- package/dist/analysts/corrections/type-safety/type-analyzer.js +0 -20
- package/dist/analysts/corrections/type-safety/type-creator.js +2 -49
- package/dist/analysts/corrections/type-safety/type-inference.js +1 -44
- package/dist/analysts/corrections/type-safety/type-validator.js +0 -33
- package/dist/analysts/corrections/type-safety/usage-analyzer.js +1 -47
- package/dist/analysts/css/analysts/analyst-css.js +1 -44
- package/dist/analysts/css/corrections/correction-css.js +0 -10
- package/dist/analysts/css/corrections/index.js +0 -1
- package/dist/analysts/css/detectors/detector-css-best-practices.js +0 -2
- package/dist/analysts/css/detectors/index.js +0 -1
- package/dist/analysts/css/index.js +0 -1
- package/dist/analysts/css/plugins/index.js +0 -1
- package/dist/analysts/css/plugins/plugin-registry.js +0 -1
- package/dist/analysts/css/scorers/index.js +0 -1
- package/dist/analysts/css/scorers/scorer-css.js +0 -2
- package/dist/analysts/css-in-js/analysts/analyst-css-in-js.js +1 -3
- package/dist/analysts/css-in-js/corrections/correction-css-in-js.js +0 -12
- package/dist/analysts/css-in-js/corrections/index.js +0 -1
- package/dist/analysts/css-in-js/detectors/detector-css-in-js-best-practices.js +0 -4
- package/dist/analysts/css-in-js/detectors/index.js +0 -1
- package/dist/analysts/css-in-js/index.js +0 -1
- package/dist/analysts/css-in-js/plugins/index.js +0 -1
- package/dist/analysts/css-in-js/plugins/plugin-registry.js +0 -1
- package/dist/analysts/css-in-js/scorers/index.js +0 -1
- package/dist/analysts/css-in-js/scorers/scorer-css-in-js.js +0 -4
- package/dist/analysts/css-in-js/shared.js +0 -3
- package/dist/analysts/detectors/detector-architecture.js +3 -66
- package/dist/analysts/detectors/detector-bugs-ml.js +0 -43
- package/dist/analysts/detectors/detector-code-fragile.js +1 -12
- package/dist/analysts/detectors/detector-dependencies.js +0 -38
- package/dist/analysts/detectors/detector-duplications.js +4 -22
- package/dist/analysts/detectors/detector-monorepo.js +0 -16
- package/dist/analysts/detectors/detector-performance.js +0 -18
- package/dist/analysts/detectors/detector-phantoms.js +1 -24
- package/dist/analysts/detectors/detector-recommendation-architecture.js +0 -26
- package/dist/analysts/detectors/detector-security.js +0 -48
- package/dist/analysts/detectors/detector-structure.js +1 -31
- package/dist/analysts/detectors/index.js +0 -4
- package/dist/analysts/github-actions/analysts/analyst-github-actions-security-hardening.js +0 -4
- package/dist/analysts/github-actions/analysts/analyst-github-actions.js +0 -59
- package/dist/analysts/github-actions/corrections/autofix-engine.js +0 -16
- package/dist/analysts/github-actions/corrections/correction-workflow.js +0 -10
- package/dist/analysts/github-actions/corrections/index.js +0 -1
- package/dist/analysts/github-actions/detectors/detector-dependencies-vulnerable.js +1 -26
- package/dist/analysts/github-actions/detectors/detector-workflow-accessibility.js +0 -8
- package/dist/analysts/github-actions/detectors/detector-workflow-compliance.js +0 -12
- package/dist/analysts/github-actions/detectors/detector-workflow-performance.js +0 -18
- package/dist/analysts/github-actions/detectors/detector-workflow-security.js +0 -13
- package/dist/analysts/github-actions/detectors/detector-workflow-structure.js +0 -23
- package/dist/analysts/github-actions/detectors/detector-workflow-trigger-unsafe.js +0 -29
- package/dist/analysts/github-actions/detectors/index.js +0 -1
- package/dist/analysts/github-actions/detectors/org-verified.js +16 -27
- package/dist/analysts/github-actions/index.js +0 -6
- package/dist/analysts/github-actions/reports/generator-report-github-actions.js +0 -6
- package/dist/analysts/github-actions/reports/index.js +0 -1
- package/dist/analysts/github-actions/scorers/index.js +0 -1
- package/dist/analysts/github-actions/scorers/scorer-workflow.js +0 -17
- package/dist/analysts/gitlab-ci/analysts/analyst-gitlab-ci.js +2 -16
- package/dist/analysts/gitlab-ci/corrections/autofix-engine.js +1 -2
- package/dist/analysts/gitlab-ci/corrections/correction-gitlab-ci.js +0 -2
- package/dist/analysts/gitlab-ci/corrections/index.js +0 -1
- package/dist/analysts/gitlab-ci/detectors/detector-gitlab-ci-performance.js +0 -13
- package/dist/analysts/gitlab-ci/detectors/detector-gitlab-ci-security.js +0 -14
- package/dist/analysts/gitlab-ci/detectors/detector-gitlab-ci-structure.js +1 -3
- package/dist/analysts/gitlab-ci/detectors/index.js +0 -1
- package/dist/analysts/gitlab-ci/index.js +0 -4
- package/dist/analysts/gitlab-ci/reports/generator-report-gitlab-ci.js +0 -1
- package/dist/analysts/gitlab-ci/reports/index.js +0 -1
- package/dist/analysts/gitlab-ci/scorers/index.js +0 -1
- package/dist/analysts/gitlab-ci/scorers/scorer-gitlab-ci.js +0 -1
- package/dist/analysts/go/analysts/analyst-best-practices.js +1 -8
- package/dist/analysts/go/analysts/analyst-concurrency.js +1 -7
- package/dist/analysts/go/analysts/analyst-go.js +1 -8
- package/dist/analysts/go/analysts/analyst-resources.js +1 -7
- package/dist/analysts/go/analysts/analyst-security.js +1 -5
- package/dist/analysts/go/analysts/index.js +0 -1
- package/dist/analysts/go/detectors/detector-conventions.js +1 -7
- package/dist/analysts/go/detectors/detector-errors-un-handled.js +1 -5
- package/dist/analysts/go/detectors/detector-vulnerabilities.js +1 -7
- package/dist/analysts/go/detectors/index.js +0 -1
- package/dist/analysts/go/index.js +0 -1
- package/dist/analysts/html/analysts/analyst-html.js +1 -3
- package/dist/analysts/html/corrections/correction-html.js +0 -10
- package/dist/analysts/html/corrections/index.js +0 -1
- package/dist/analysts/html/detectors/detector-html-accessibility.js +0 -13
- package/dist/analysts/html/detectors/detector-html.js +0 -46
- package/dist/analysts/html/detectors/index.js +0 -1
- package/dist/analysts/html/index.js +0 -6
- package/dist/analysts/html/scorers/index.js +0 -1
- package/dist/analysts/html/scorers/scorer-html.js +0 -18
- package/dist/analysts/jenkins/analysts/analyst-jenkins.js +0 -9
- package/dist/analysts/jenkins/corrections/autofix-engine.js +1 -2
- package/dist/analysts/jenkins/corrections/correction-jenkins.js +0 -2
- package/dist/analysts/jenkins/corrections/index.js +0 -1
- package/dist/analysts/jenkins/detectors/detector-jenkins-best-practices.js +0 -32
- package/dist/analysts/jenkins/detectors/detector-jenkins-security.js +0 -32
- package/dist/analysts/jenkins/detectors/detector-jenkins-structure.js +0 -32
- package/dist/analysts/jenkins/detectors/index.js +0 -1
- package/dist/analysts/jenkins/index.js +0 -4
- package/dist/analysts/jenkins/reports/generator-report-jenkins.js +0 -1
- package/dist/analysts/jenkins/reports/index.js +0 -1
- package/dist/analysts/jenkins/scorers/index.js +0 -1
- package/dist/analysts/jenkins/scorers/scorer-jenkins.js +0 -5
- package/dist/analysts/js-ts/analysts/analyst-commands-cli.js +0 -6
- package/dist/analysts/js-ts/analysts/analyst-patterns-usage.js +0 -9
- package/dist/analysts/js-ts/analysts/analyst-todo-comments.js +0 -5
- package/dist/analysts/js-ts/analysts/index.js +0 -4
- package/dist/analysts/js-ts/detectors/detector-anti-patterns-async.js +0 -16
- package/dist/analysts/js-ts/detectors/detector-constructions-syntactic.js +0 -15
- package/dist/analysts/js-ts/detectors/detector-context-smart.js +7 -68
- package/dist/analysts/js-ts/detectors/detector-interfaces-inline.js +0 -109
- package/dist/analysts/js-ts/detectors/detector-leaks-memory.js +1 -15
- package/dist/analysts/js-ts/detectors/detector-types-unsafe.js +0 -114
- package/dist/analysts/js-ts/detectors/index.js +0 -4
- package/dist/analysts/js-ts/index.js +0 -4
- package/dist/analysts/js-ts/registrar.js +0 -4
- package/dist/analysts/php/analysts/analyst-php.js +1 -19
- package/dist/analysts/php/corrections/index.js +0 -1
- package/dist/analysts/php/detectors/detector-php-best-practices.js +1 -12
- package/dist/analysts/php/detectors/detector-php-security.js +1 -13
- package/dist/analysts/php/detectors/index.js +0 -1
- package/dist/analysts/php/index.js +0 -1
- package/dist/analysts/php/scorers/index.js +0 -1
- package/dist/analysts/php/scorers/scorer-php.js +0 -5
- package/dist/analysts/plugins/analyst-formatter.js +1 -5
- package/dist/analysts/plugins/detector-documentation.js +1 -45
- package/dist/analysts/plugins/detector-markdown.js +0 -60
- package/dist/analysts/plugins/detector-node.js +0 -5
- package/dist/analysts/plugins/index.js +0 -20
- package/dist/analysts/python/analysts/analyst-python.js +1 -32
- package/dist/analysts/python/corrections/correction-python.js +0 -10
- package/dist/analysts/python/corrections/index.js +0 -1
- package/dist/analysts/python/detectors/detector-python-best-practices.js +0 -7
- package/dist/analysts/python/detectors/index.js +0 -1
- package/dist/analysts/python/index.js +0 -6
- package/dist/analysts/python/scorers/index.js +0 -1
- package/dist/analysts/python/scorers/scorer-python.js +0 -17
- package/dist/analysts/react/analysts/analyst-react-hooks.js +2 -51
- package/dist/analysts/react/analysts/analyst-react.js +1 -46
- package/dist/analysts/react/corrections/correction-react.js +0 -4
- package/dist/analysts/react/corrections/index.js +0 -1
- package/dist/analysts/react/detectors/detector-react-best-practices.js +0 -29
- package/dist/analysts/react/detectors/index.js +0 -1
- package/dist/analysts/react/index.js +0 -6
- package/dist/analysts/react/scorers/index.js +0 -1
- package/dist/analysts/react/scorers/scorer-react.js +0 -16
- package/dist/analysts/registry/autodiscovery.js +0 -15
- package/dist/analysts/registry/index.js +0 -4
- package/dist/analysts/registry/registry.js +0 -26
- package/dist/analysts/rust/analysts/analyst-best-practices.js +1 -15
- package/dist/analysts/rust/analysts/analyst-concurrency.js +1 -7
- package/dist/analysts/rust/analysts/analyst-memory.js +1 -7
- package/dist/analysts/rust/analysts/analyst-rust.js +1 -12
- package/dist/analysts/rust/analysts/analyst-security.js +1 -13
- package/dist/analysts/rust/analysts/index.js +0 -1
- package/dist/analysts/rust/detectors/detector-conventions.js +1 -7
- package/dist/analysts/rust/detectors/detector-errors-potential.js +1 -7
- package/dist/analysts/rust/detectors/detector-unsafe.js +1 -6
- package/dist/analysts/rust/detectors/index.js +0 -1
- package/dist/analysts/rust/index.js +0 -1
- package/dist/analysts/scorers/index.js +0 -4
- package/dist/analysts/scorers/scorer.js +2 -39
- package/dist/analysts/shell/analysts/analyst-shell.js +0 -22
- package/dist/analysts/shell/corrections/correction-shell.js +0 -13
- package/dist/analysts/shell/corrections/index.js +0 -1
- package/dist/analysts/shell/detectors/detector-shell-security.js +0 -43
- package/dist/analysts/shell/detectors/index.js +0 -1
- package/dist/analysts/shell/index.js +0 -6
- package/dist/analysts/shell/scorers/index.js +0 -1
- package/dist/analysts/shell/scorers/scorer-shell.js +0 -47
- package/dist/analysts/sql/analysts/analyst-sql.js +0 -12
- package/dist/analysts/sql/corrections/correction-sql.js +0 -10
- package/dist/analysts/sql/corrections/index.js +0 -1
- package/dist/analysts/sql/detectors/detector-sql-best-practices.js +0 -7
- package/dist/analysts/sql/detectors/detector-sql.js +0 -51
- package/dist/analysts/sql/detectors/index.js +0 -1
- package/dist/analysts/sql/index.js +0 -6
- package/dist/analysts/sql/scorers/index.js +0 -1
- package/dist/analysts/sql/scorers/scorer-sql.js +0 -32
- package/dist/analysts/strategists/archetypes-defs.js +11 -20
- package/dist/analysts/strategists/index.js +0 -4
- package/dist/analysts/strategists/operator-structure.js +2 -14
- package/dist/analysts/strategists/suggestions-contextuais.js +2 -26
- package/dist/analysts/svg/analysts/analyst-svg.js +1 -8
- package/dist/analysts/svg/corrections/correction-svg.js +0 -10
- package/dist/analysts/svg/corrections/index.js +0 -1
- package/dist/analysts/svg/detectors/detector-svg-security.js +0 -28
- package/dist/analysts/svg/detectors/index.js +0 -1
- package/dist/analysts/svg/index.js +0 -6
- package/dist/analysts/svg/scorers/index.js +0 -1
- package/dist/analysts/svg/scorers/scorer-svg.js +0 -35
- package/dist/analysts/tailwind/analysts/analyst-tailwind.js +1 -3
- package/dist/analysts/tailwind/corrections/correction-tailwind.js +0 -2
- package/dist/analysts/tailwind/corrections/index.js +0 -1
- package/dist/analysts/tailwind/detectors/detector-tailwind-best-practices.js +0 -2
- package/dist/analysts/tailwind/detectors/index.js +0 -1
- package/dist/analysts/tailwind/index.js +0 -1
- package/dist/analysts/tailwind/plugins/index.js +0 -1
- package/dist/analysts/tailwind/plugins/plugin-registry.js +0 -1
- package/dist/analysts/tailwind/scorers/index.js +0 -1
- package/dist/analysts/tailwind/scorers/scorer-tailwind.js +0 -1
- package/dist/analysts/xml/analysts/analyst-xml.js +1 -20
- package/dist/analysts/xml/corrections/correction-xml.js +0 -11
- package/dist/analysts/xml/corrections/index.js +0 -1
- package/dist/analysts/xml/detectors/detector-xml-security.js +0 -20
- package/dist/analysts/xml/detectors/detector-xml.js +0 -7
- package/dist/analysts/xml/detectors/index.js +0 -1
- package/dist/analysts/xml/index.js +0 -6
- package/dist/analysts/xml/scorers/index.js +0 -1
- package/dist/analysts/xml/scorers/scorer-xml.js +0 -31
- package/dist/app/github.js +0 -1
- package/dist/bin/index.js +1 -22
- package/dist/caretakers/caretaker-imports.js +1 -57
- package/dist/caretakers/imports-barrel.js +0 -1
- package/dist/caretakers/imports.js +0 -7
- package/dist/caretakers/map-reversion.js +0 -1
- package/dist/caretakers/pruning.js +0 -1
- package/dist/caretakers/scoring.js +0 -1
- package/dist/cli/commands/command-analysts.js +1 -4
- package/dist/cli/commands/command-azure.js +0 -7
- package/dist/cli/commands/command-barrels.js +0 -2
- package/dist/cli/commands/command-circleci.js +0 -7
- package/dist/cli/commands/command-compliance.js +0 -2
- package/dist/cli/commands/command-convert.js +0 -7
- package/dist/cli/commands/command-diagnose.js +1 -6
- package/dist/cli/commands/command-fix-types.js +0 -3
- package/dist/cli/commands/command-format.js +1 -9
- package/dist/cli/commands/command-formatters.js +0 -2
- package/dist/cli/commands/command-github-actions.js +1 -3
- package/dist/cli/commands/command-gitlab-ci.js +0 -7
- package/dist/cli/commands/command-guardian.js +1 -5
- package/dist/cli/commands/command-imports.js +0 -4
- package/dist/cli/commands/command-jenkins.js +0 -7
- package/dist/cli/commands/command-licenses.js +0 -8
- package/dist/cli/commands/command-marketplace.js +0 -2
- package/dist/cli/commands/command-metrics.js +0 -4
- package/dist/cli/commands/command-names.js +0 -6
- package/dist/cli/commands/command-optimize-svg.js +0 -5
- package/dist/cli/commands/command-perf.js +1 -7
- package/dist/cli/commands/command-plugins.js +0 -6
- package/dist/cli/commands/command-prune.js +0 -8
- package/dist/cli/commands/command-reverter.js +1 -5
- package/dist/cli/commands/command-update.js +0 -3
- package/dist/cli/commands/commands.js +0 -6
- package/dist/cli/commands/index.js +0 -13
- package/dist/cli/diagnostic/auto-fix.js +1 -3
- package/dist/cli/diagnostic/exporters/compliance-exporter.js +0 -1
- package/dist/cli/diagnostic/exporters/index.js +0 -4
- package/dist/cli/diagnostic/exporters/json-exporter.js +0 -54
- package/dist/cli/diagnostic/exporters/markdown-exporter.js +2 -27
- package/dist/cli/diagnostic/exporters/sharded-exporter.js +0 -35
- package/dist/cli/diagnostic/exporters/svg-optimization-exporter.js +0 -4
- package/dist/cli/diagnostic/filters.js +1 -76
- package/dist/cli/diagnostic/handlers/archetype-handler.js +1 -42
- package/dist/cli/diagnostic/handlers/auto-fix-handler.js +2 -49
- package/dist/cli/diagnostic/handlers/guardian-handler.js +2 -26
- package/dist/cli/diagnostic/handlers/index.js +0 -4
- package/dist/cli/diagnostic/index.js +0 -4
- package/dist/cli/diagnostic/normalize-occurrences-json.js +0 -3
- package/dist/cli/diagnostic/options-diagnose.js +0 -3
- package/dist/cli/diagnostic/processing-diagnostic.js +10 -13
- package/dist/cli/diagnostic/processing-helpers.js +0 -2
- package/dist/cli/handlers/command-vulnerabilities.js +0 -2
- package/dist/cli/handlers/fix-types-exporter.js +0 -36
- package/dist/cli/handlers/guardian-exporter.js +0 -31
- package/dist/cli/handlers/index.js +0 -4
- package/dist/cli/handlers/pruning-exporter.js +0 -24
- package/dist/cli/helpers/display-frame.js +0 -42
- package/dist/cli/helpers/exit-codes.js +0 -3
- package/dist/cli/helpers/flags-helpers.js +0 -20
- package/dist/cli/helpers/get-files-src.js +0 -7
- package/dist/cli/helpers/index.js +0 -4
- package/dist/cli/helpers/pattern-helpers.js +0 -42
- package/dist/cli/options/flags-validator.js +4 -43
- package/dist/cli/options/index.js +0 -4
- package/dist/core/config/auto/auto-fix-config.js +0 -7
- package/dist/core/config/auto/fix-config.js +0 -9
- package/dist/core/config/auto/index.js +0 -4
- package/dist/core/config/auto/validation.js +0 -39
- package/dist/core/config/chalk-safe.js +1 -15
- package/dist/core/config/config.js +21 -41
- package/dist/core/config/configuracao-scoring.js +1 -22
- package/dist/core/config/conventions.js +0 -19
- package/dist/core/config/excludes-padrao.js +2 -55
- package/dist/core/config/filters.js +0 -1
- package/dist/core/config/format.js +0 -7
- package/dist/core/config/include-exclude.js +0 -6
- package/dist/core/config/index.js +0 -1
- package/dist/core/config/limites.js +0 -10
- package/dist/core/config/paths.js +0 -7
- package/dist/core/config/security.js +0 -35
- package/dist/core/config/traverse.js +0 -2
- package/dist/core/corrections/auto-fix.js +0 -4
- package/dist/core/execution/ambiente.js +0 -1
- package/dist/core/execution/analysis-cache.js +0 -32
- package/dist/core/execution/ast-cache.js +1 -32
- package/dist/core/execution/executor.js +7 -43
- package/dist/core/execution/fix-001.js +0 -13
- package/dist/core/execution/index.js +0 -4
- package/dist/core/execution/inquisitor.js +15 -22
- package/dist/core/execution/linguagens.js +0 -1
- package/dist/core/execution/parse-errors.js +0 -1
- package/dist/core/execution/registry.js +0 -4
- package/dist/core/execution/results.js +0 -1
- package/dist/core/execution/scanner.js +7 -39
- package/dist/core/execution/schema.js +0 -5
- package/dist/core/execution/structure-json.js +0 -1
- package/dist/core/execution/workers.js +0 -4
- package/dist/core/formatters/index.js +0 -1
- package/dist/core/formatters/registro-builtin.js +4 -9
- package/dist/core/formatters/registry.js +0 -4
- package/dist/core/index.js +0 -4
- package/dist/core/messages/en/analysts/analyst-commands-cli-messages.js +0 -6
- package/dist/core/messages/en/analysts/analyst-github-actions-messages.js +0 -5
- package/dist/core/messages/en/analysts/analyst-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/en/analysts/analyst-patterns-usage-messages.js +0 -1
- package/dist/core/messages/en/analysts/analyst-shell-messages.js +0 -6
- package/dist/core/messages/en/analysts/analyst-todo-comments-messages.js +0 -1
- package/dist/core/messages/en/analysts/archetypes-defs-messages.js +0 -1
- package/dist/core/messages/en/analysts/archetypes-extra-messages.js +0 -3
- package/dist/core/messages/en/analysts/corrector-structure-extra-messages.js +0 -3
- package/dist/core/messages/en/analysts/detector-aggregates-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-architecture-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-bugs-ml-messages.js +0 -2
- package/dist/core/messages/en/analysts/detector-clean-arch-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-code-fragile-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-constructions-syntactic-messages.js +0 -2
- package/dist/core/messages/en/analysts/detector-context-extra-messages.js +0 -3
- package/dist/core/messages/en/analysts/detector-css-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-dependencies-messages.js +0 -7
- package/dist/core/messages/en/analysts/detector-distributed-arch-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-html-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-interfaces-inline-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-jenkins-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-js-ts-messages.js +0 -2
- package/dist/core/messages/en/analysts/detector-python-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-react-messages.js +0 -4
- package/dist/core/messages/en/analysts/detector-shell-messages.js +0 -6
- package/dist/core/messages/en/analysts/detector-sql-messages.js +0 -7
- package/dist/core/messages/en/analysts/detector-structure-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-svg-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-tailwind-messages.js +0 -1
- package/dist/core/messages/en/analysts/detector-xml-messages.js +0 -1
- package/dist/core/messages/en/analysts/index.js +0 -4
- package/dist/core/messages/en/analysts/map-reversion-extra-messages.js +0 -5
- package/dist/core/messages/en/analysts/report-azure-messages.js +0 -5
- package/dist/core/messages/en/analysts/report-circleci-messages.js +0 -5
- package/dist/core/messages/en/analysts/report-github-actions-messages.js +0 -1
- package/dist/core/messages/en/analysts/report-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/en/analysts/report-jenkins-messages.js +0 -1
- package/dist/core/messages/en/analysts/scorer-messages.js +0 -1
- package/dist/core/messages/en/caretakers/caretaker-messages.js +1 -49
- package/dist/core/messages/en/caretakers/index.js +0 -4
- package/dist/core/messages/en/cli/cli-archetype-handler-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-auto-fix-handler-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-bin-index.js +0 -1
- package/dist/core/messages/en/cli/cli-bin-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-analysts-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-azure-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-barrels-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-circleci-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-compliance-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-convert-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-diagnose-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-fix-types-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-format-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-github-actions-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-guardian-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-imports-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-jenkins-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-licenses-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-marketplace-messages.js +0 -2
- package/dist/core/messages/en/cli/cli-command-metrics-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-names-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-optimize-svg-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-perf-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-plugins-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-prune-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-restructure-extra-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-restructure-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-reverter-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-update-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-command-vulnerabilities-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-display-frame-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-exporters-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-flags-validator-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-options-diagnose-messages.js +0 -1
- package/dist/core/messages/en/cli/cli-processing-diagnostic-messages.js +0 -8
- package/dist/core/messages/en/cli/cli-processing-extra-messages.js +0 -1
- package/dist/core/messages/en/cli/index.js +0 -4
- package/dist/core/messages/en/core/correcoes-messages.js +0 -39
- package/dist/core/messages/en/core/diagnostic-messages.js +5 -59
- package/dist/core/messages/en/core/excecoes-messages.js +1 -18
- package/dist/core/messages/en/core/executor-extra-messages.js +0 -3
- package/dist/core/messages/en/core/fix-types-messages.js +0 -62
- package/dist/core/messages/en/core/formatters-messages.js +1 -2
- package/dist/core/messages/en/core/index.js +0 -4
- package/dist/core/messages/en/core/inquisitor-extra-messages.js +0 -3
- package/dist/core/messages/en/core/inquisitor-messages.js +0 -6
- package/dist/core/messages/en/core/parser-extra-messages.js +0 -3
- package/dist/core/messages/en/core/plugin-messages.js +0 -48
- package/dist/core/messages/en/github/github-app-messages.js +0 -1
- package/dist/core/messages/en/github/github-push-report-messages.js +1 -2
- package/dist/core/messages/en/github/github-repo-downloader-messages.js +0 -1
- package/dist/core/messages/en/github/github-webhook-messages.js +0 -1
- package/dist/core/messages/en/github/index.js +0 -1
- package/dist/core/messages/en/guardian/guardian-messages.js +0 -1
- package/dist/core/messages/en/guardian/index.js +0 -4
- package/dist/core/messages/en/guardian/watcher-hidden-messages.js +0 -3
- package/dist/core/messages/en/index.js +0 -4
- package/dist/core/messages/en/licenses/index.js +0 -4
- package/dist/core/messages/en/licenses/licenses-messages.js +0 -3
- package/dist/core/messages/en/log/index.js +0 -4
- package/dist/core/messages/en/log/log-engine.js +0 -5
- package/dist/core/messages/en/log/log-helper.js +0 -72
- package/dist/core/messages/en/log/log-messages.js +1 -19
- package/dist/core/messages/en/log/log.js +7 -47
- package/dist/core/messages/en/reports/index.js +0 -4
- package/dist/core/messages/en/reports/json-messages.js +0 -23
- package/dist/core/messages/en/reports/report-async-patterns-messages.js +0 -3
- package/dist/core/messages/en/reports/report-caretaker-health-messages.js +0 -3
- package/dist/core/messages/en/reports/report-messages.js +0 -27
- package/dist/core/messages/en/reports/report-templates.js +0 -34
- package/dist/core/messages/en/reports/streaming-report-messages.js +0 -1
- package/dist/core/messages/en/shared/index.js +0 -4
- package/dist/core/messages/en/shared/marketplace-messages.js +0 -1
- package/dist/core/messages/en/shared/plugin-core-messages.js +0 -3
- package/dist/core/messages/en/shared/plugin-registry-messages.js +0 -3
- package/dist/core/messages/en/shared/shared-common-messages.js +0 -1
- package/dist/core/messages/en/shared/stylelint-messages.js +0 -1
- package/dist/core/messages/en/ui/filter-config.js +0 -28
- package/dist/core/messages/en/ui/index.js +0 -4
- package/dist/core/messages/en/ui/suggestions-contextuais-messages.js +0 -7
- package/dist/core/messages/en/ui/suggestions.js +0 -53
- package/dist/core/messages/i18n-system.js +2 -24
- package/dist/core/messages/index.js +2 -29
- package/dist/core/messages/ja/analysts/analyst-commands-cli-messages.js +0 -7
- package/dist/core/messages/ja/analysts/analyst-github-actions-messages.js +0 -6
- package/dist/core/messages/ja/analysts/analyst-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/ja/analysts/analyst-patterns-usage-messages.js +0 -1
- package/dist/core/messages/ja/analysts/analyst-shell-messages.js +0 -6
- package/dist/core/messages/ja/analysts/analyst-todo-comments-messages.js +0 -1
- package/dist/core/messages/ja/analysts/archetypes-defs-messages.js +0 -1
- package/dist/core/messages/ja/analysts/archetypes-extra-messages.js +0 -3
- package/dist/core/messages/ja/analysts/corrector-structure-extra-messages.js +0 -3
- package/dist/core/messages/ja/analysts/detector-aggregates-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-architecture-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-bugs-ml-messages.js +0 -2
- package/dist/core/messages/ja/analysts/detector-clean-arch-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-code-fragile-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-constructions-syntactic-messages.js +0 -2
- package/dist/core/messages/ja/analysts/detector-context-extra-messages.js +0 -3
- package/dist/core/messages/ja/analysts/detector-css-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-dependencies-messages.js +0 -8
- package/dist/core/messages/ja/analysts/detector-distributed-arch-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-html-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-interfaces-inline-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-jenkins-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-js-ts-messages.js +0 -2
- package/dist/core/messages/ja/analysts/detector-python-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-react-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-shell-messages.js +0 -6
- package/dist/core/messages/ja/analysts/detector-sql-messages.js +0 -7
- package/dist/core/messages/ja/analysts/detector-structure-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-svg-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-tailwind-messages.js +0 -1
- package/dist/core/messages/ja/analysts/detector-xml-messages.js +0 -1
- package/dist/core/messages/ja/analysts/index.js +0 -4
- package/dist/core/messages/ja/analysts/map-reversion-extra-messages.js +0 -3
- package/dist/core/messages/ja/analysts/report-azure-messages.js +0 -5
- package/dist/core/messages/ja/analysts/report-circleci-messages.js +0 -5
- package/dist/core/messages/ja/analysts/report-github-actions-messages.js +0 -1
- package/dist/core/messages/ja/analysts/report-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/ja/analysts/report-jenkins-messages.js +0 -1
- package/dist/core/messages/ja/analysts/scorer-messages.js +0 -1
- package/dist/core/messages/ja/caretakers/caretaker-messages.js +1 -49
- package/dist/core/messages/ja/caretakers/index.js +0 -4
- package/dist/core/messages/ja/cli/cli-archetype-handler-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-auto-fix-handler-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-bin-index.js +0 -1
- package/dist/core/messages/ja/cli/cli-bin-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-analysts-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-azure-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-barrels-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-circleci-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-compliance-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-convert-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-diagnose-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-fix-types-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-format-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-github-actions-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-guardian-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-imports-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-jenkins-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-licenses-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-marketplace-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-metrics-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-names-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-optimize-svg-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-perf-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-plugins-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-prune-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-restructure-extra-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-restructure-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-reverter-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-update-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-command-vulnerabilities-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-display-frame-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-exporters-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-flags-validator-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-options-diagnose-messages.js +0 -1
- package/dist/core/messages/ja/cli/cli-processing-diagnostic-messages.js +0 -8
- package/dist/core/messages/ja/cli/cli-processing-extra-messages.js +0 -1
- package/dist/core/messages/ja/cli/index.js +0 -4
- package/dist/core/messages/ja/core/correcoes-messages.js +0 -39
- package/dist/core/messages/ja/core/diagnostic-messages.js +5 -59
- package/dist/core/messages/ja/core/excecoes-messages.js +1 -18
- package/dist/core/messages/ja/core/executor-extra-messages.js +0 -3
- package/dist/core/messages/ja/core/fix-types-messages.js +0 -62
- package/dist/core/messages/ja/core/formatters-messages.js +1 -2
- package/dist/core/messages/ja/core/index.js +0 -4
- package/dist/core/messages/ja/core/inquisitor-extra-messages.js +0 -3
- package/dist/core/messages/ja/core/inquisitor-messages.js +0 -6
- package/dist/core/messages/ja/core/parser-extra-messages.js +0 -3
- package/dist/core/messages/ja/core/plugin-messages.js +0 -44
- package/dist/core/messages/ja/github/github-app-messages.js +0 -1
- package/dist/core/messages/ja/github/github-push-report-messages.js +1 -2
- package/dist/core/messages/ja/github/github-repo-downloader-messages.js +0 -1
- package/dist/core/messages/ja/github/github-webhook-messages.js +0 -1
- package/dist/core/messages/ja/github/index.js +0 -1
- package/dist/core/messages/ja/guardian/guardian-messages.js +0 -1
- package/dist/core/messages/ja/guardian/index.js +0 -4
- package/dist/core/messages/ja/index.js +0 -4
- package/dist/core/messages/ja/licenses/index.js +0 -4
- package/dist/core/messages/ja/licenses/licenses-messages.js +0 -3
- package/dist/core/messages/ja/log/index.js +0 -4
- package/dist/core/messages/ja/log/log-engine.js +0 -5
- package/dist/core/messages/ja/log/log-helper.js +0 -72
- package/dist/core/messages/ja/log/log-messages.js +1 -19
- package/dist/core/messages/ja/log/log.js +7 -47
- package/dist/core/messages/ja/reports/index.js +0 -4
- package/dist/core/messages/ja/reports/json-messages.js +0 -23
- package/dist/core/messages/ja/reports/report-async-patterns-messages.js +0 -3
- package/dist/core/messages/ja/reports/report-caretaker-health-messages.js +0 -3
- package/dist/core/messages/ja/reports/report-messages.js +0 -27
- package/dist/core/messages/ja/reports/report-templates.js +0 -34
- package/dist/core/messages/ja/reports/streaming-report-messages.js +0 -1
- package/dist/core/messages/ja/shared/index.js +0 -4
- package/dist/core/messages/ja/shared/marketplace-messages.js +0 -1
- package/dist/core/messages/ja/shared/plugin-core-messages.js +0 -3
- package/dist/core/messages/ja/shared/plugin-registry-messages.js +0 -3
- package/dist/core/messages/ja/shared/shared-common-messages.js +0 -1
- package/dist/core/messages/ja/shared/stylelint-messages.js +0 -1
- package/dist/core/messages/ja/ui/filter-config.js +0 -28
- package/dist/core/messages/ja/ui/index.js +0 -4
- package/dist/core/messages/ja/ui/suggestions-contextuais-messages.js +0 -7
- package/dist/core/messages/ja/ui/suggestions.js +0 -53
- package/dist/core/messages/log.js +0 -8
- package/dist/core/messages/message-structure-types.js +0 -4
- package/dist/core/messages/pt/analysts/analyst-commands-cli-messages.js +0 -7
- package/dist/core/messages/pt/analysts/analyst-github-actions-messages.js +0 -5
- package/dist/core/messages/pt/analysts/analyst-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/pt/analysts/analyst-patterns-usage-messages.js +0 -1
- package/dist/core/messages/pt/analysts/analyst-shell-messages.js +0 -6
- package/dist/core/messages/pt/analysts/analyst-todo-comments-messages.js +0 -1
- package/dist/core/messages/pt/analysts/archetypes-defs-messages.js +0 -1
- package/dist/core/messages/pt/analysts/archetypes-extra-messages.js +0 -3
- package/dist/core/messages/pt/analysts/corrector-structure-extra-messages.js +0 -3
- package/dist/core/messages/pt/analysts/detector-aggregates-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-architecture-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-bugs-ml-messages.js +0 -2
- package/dist/core/messages/pt/analysts/detector-clean-arch-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-code-fragile-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-constructions-syntactic-messages.js +0 -2
- package/dist/core/messages/pt/analysts/detector-context-extra-messages.js +0 -3
- package/dist/core/messages/pt/analysts/detector-css-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-dependencies-messages.js +0 -7
- package/dist/core/messages/pt/analysts/detector-distributed-arch-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-html-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-interfaces-inline-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-jenkins-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-js-ts-messages.js +0 -2
- package/dist/core/messages/pt/analysts/detector-python-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-react-messages.js +0 -4
- package/dist/core/messages/pt/analysts/detector-shell-messages.js +0 -6
- package/dist/core/messages/pt/analysts/detector-sql-messages.js +0 -7
- package/dist/core/messages/pt/analysts/detector-structure-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-svg-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-tailwind-messages.js +0 -1
- package/dist/core/messages/pt/analysts/detector-xml-messages.js +0 -1
- package/dist/core/messages/pt/analysts/index.js +0 -4
- package/dist/core/messages/pt/analysts/map-reversion-extra-messages.js +0 -3
- package/dist/core/messages/pt/analysts/report-azure-messages.js +0 -5
- package/dist/core/messages/pt/analysts/report-circleci-messages.js +0 -5
- package/dist/core/messages/pt/analysts/report-github-actions-messages.js +0 -1
- package/dist/core/messages/pt/analysts/report-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/pt/analysts/report-jenkins-messages.js +0 -1
- package/dist/core/messages/pt/analysts/scorer-messages.js +0 -1
- package/dist/core/messages/pt/caretakers/caretaker-messages.js +1 -49
- package/dist/core/messages/pt/caretakers/index.js +0 -4
- package/dist/core/messages/pt/cli/cli-archetype-handler-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-auto-fix-handler-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-bin-index.js +0 -1
- package/dist/core/messages/pt/cli/cli-bin-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-analysts-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-azure-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-barrels-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-circleci-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-compliance-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-convert-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-diagnose-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-fix-types-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-format-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-github-actions-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-guardian-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-imports-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-jenkins-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-licenses-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-marketplace-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-metrics-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-names-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-optimize-svg-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-perf-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-plugins-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-prune-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-restructure-extra-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-restructure-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-reverter-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-update-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-command-vulnerabilities-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-display-frame-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-exporters-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-flags-validator-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-options-diagnose-messages.js +0 -1
- package/dist/core/messages/pt/cli/cli-processing-diagnostic-messages.js +0 -8
- package/dist/core/messages/pt/cli/cli-processing-extra-messages.js +0 -1
- package/dist/core/messages/pt/cli/index.js +0 -4
- package/dist/core/messages/pt/core/correcoes-messages.js +0 -39
- package/dist/core/messages/pt/core/diagnostic-messages.js +5 -59
- package/dist/core/messages/pt/core/excecoes-messages.js +1 -18
- package/dist/core/messages/pt/core/executor-extra-messages.js +0 -3
- package/dist/core/messages/pt/core/fix-types-messages.js +0 -62
- package/dist/core/messages/pt/core/formatters-messages.js +1 -2
- package/dist/core/messages/pt/core/index.js +0 -4
- package/dist/core/messages/pt/core/inquisitor-extra-messages.js +0 -3
- package/dist/core/messages/pt/core/inquisitor-messages.js +0 -6
- package/dist/core/messages/pt/core/parser-extra-messages.js +0 -3
- package/dist/core/messages/pt/core/plugin-messages.js +0 -48
- package/dist/core/messages/pt/github/github-app-messages.js +0 -1
- package/dist/core/messages/pt/github/github-push-report-messages.js +1 -2
- package/dist/core/messages/pt/github/github-repo-downloader-messages.js +0 -1
- package/dist/core/messages/pt/github/github-webhook-messages.js +0 -1
- package/dist/core/messages/pt/github/index.js +0 -1
- package/dist/core/messages/pt/guardian/guardian-messages.js +0 -1
- package/dist/core/messages/pt/guardian/index.js +0 -4
- package/dist/core/messages/pt/guardian/watcher-hidden-messages.js +0 -3
- package/dist/core/messages/pt/index.js +0 -4
- package/dist/core/messages/pt/licenses/index.js +0 -4
- package/dist/core/messages/pt/licenses/licenses-messages.js +0 -3
- package/dist/core/messages/pt/log/index.js +0 -4
- package/dist/core/messages/pt/log/log-engine.js +2 -48
- package/dist/core/messages/pt/log/log-helper.js +0 -72
- package/dist/core/messages/pt/log/log-messages.js +1 -19
- package/dist/core/messages/pt/log/log.js +7 -47
- package/dist/core/messages/pt/reports/index.js +0 -4
- package/dist/core/messages/pt/reports/json-messages.js +0 -24
- package/dist/core/messages/pt/reports/report-async-patterns-messages.js +0 -3
- package/dist/core/messages/pt/reports/report-caretaker-health-messages.js +0 -3
- package/dist/core/messages/pt/reports/report-messages.js +0 -27
- package/dist/core/messages/pt/reports/report-templates.js +0 -34
- package/dist/core/messages/pt/reports/streaming-report-messages.js +0 -1
- package/dist/core/messages/pt/shared/index.js +0 -4
- package/dist/core/messages/pt/shared/marketplace-messages.js +0 -1
- package/dist/core/messages/pt/shared/plugin-core-messages.js +0 -3
- package/dist/core/messages/pt/shared/plugin-registry-messages.js +0 -3
- package/dist/core/messages/pt/shared/shared-common-messages.js +0 -1
- package/dist/core/messages/pt/shared/stylelint-messages.js +0 -1
- package/dist/core/messages/pt/ui/filter-config.js +0 -28
- package/dist/core/messages/pt/ui/index.js +0 -4
- package/dist/core/messages/pt/ui/suggestions-contextuais-messages.js +0 -7
- package/dist/core/messages/pt/ui/suggestions.js +0 -53
- package/dist/core/messages/shared/icons.js +0 -56
- package/dist/core/messages/shared/index.js +0 -4
- package/dist/core/messages/zh/analysts/analyst-commands-cli-messages.js +0 -6
- package/dist/core/messages/zh/analysts/analyst-github-actions-messages.js +0 -5
- package/dist/core/messages/zh/analysts/analyst-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/zh/analysts/analyst-patterns-usage-messages.js +0 -1
- package/dist/core/messages/zh/analysts/analyst-shell-messages.js +0 -6
- package/dist/core/messages/zh/analysts/analyst-todo-comments-messages.js +0 -1
- package/dist/core/messages/zh/analysts/archetypes-defs-messages.js +0 -1
- package/dist/core/messages/zh/analysts/archetypes-extra-messages.js +0 -3
- package/dist/core/messages/zh/analysts/detector-aggregates-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-architecture-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-bugs-ml-messages.js +0 -2
- package/dist/core/messages/zh/analysts/detector-clean-arch-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-code-fragile-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-constructions-syntactic-messages.js +0 -2
- package/dist/core/messages/zh/analysts/detector-context-extra-messages.js +0 -3
- package/dist/core/messages/zh/analysts/detector-css-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-dependencies-messages.js +0 -7
- package/dist/core/messages/zh/analysts/detector-distributed-arch-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-html-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-interfaces-inline-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-jenkins-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-js-ts-messages.js +0 -2
- package/dist/core/messages/zh/analysts/detector-python-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-react-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-shell-messages.js +0 -6
- package/dist/core/messages/zh/analysts/detector-sql-messages.js +0 -7
- package/dist/core/messages/zh/analysts/detector-structure-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-svg-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-tailwind-messages.js +0 -1
- package/dist/core/messages/zh/analysts/detector-xml-messages.js +0 -1
- package/dist/core/messages/zh/analysts/index.js +0 -4
- package/dist/core/messages/zh/analysts/map-reversion-extra-messages.js +0 -3
- package/dist/core/messages/zh/analysts/report-azure-messages.js +0 -5
- package/dist/core/messages/zh/analysts/report-circleci-messages.js +0 -5
- package/dist/core/messages/zh/analysts/report-github-actions-messages.js +0 -1
- package/dist/core/messages/zh/analysts/report-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/zh/analysts/report-jenkins-messages.js +0 -1
- package/dist/core/messages/zh/analysts/scorer-messages.js +0 -1
- package/dist/core/messages/zh/caretakers/caretaker-messages.js +1 -49
- package/dist/core/messages/zh/caretakers/index.js +0 -4
- package/dist/core/messages/zh/cli/cli-archetype-handler-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-auto-fix-handler-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-bin-index.js +0 -1
- package/dist/core/messages/zh/cli/cli-bin-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-analysts-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-azure-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-barrels-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-circleci-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-compliance-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-convert-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-diagnose-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-fix-types-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-format-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-github-actions-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-gitlab-ci-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-guardian-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-imports-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-jenkins-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-licenses-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-marketplace-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-metrics-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-names-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-optimize-svg-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-perf-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-plugins-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-prune-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-restructure-extra-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-restructure-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-reverter-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-update-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-command-vulnerabilities-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-display-frame-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-exporters-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-flags-validator-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-options-diagnose-messages.js +0 -1
- package/dist/core/messages/zh/cli/cli-processing-diagnostic-messages.js +0 -8
- package/dist/core/messages/zh/cli/cli-processing-extra-messages.js +0 -1
- package/dist/core/messages/zh/cli/index.js +0 -4
- package/dist/core/messages/zh/core/correcoes-messages.js +0 -39
- package/dist/core/messages/zh/core/diagnostic-messages.js +5 -59
- package/dist/core/messages/zh/core/excecoes-messages.js +1 -18
- package/dist/core/messages/zh/core/executor-extra-messages.js +0 -3
- package/dist/core/messages/zh/core/fix-types-messages.js +0 -62
- package/dist/core/messages/zh/core/formatters-messages.js +1 -2
- package/dist/core/messages/zh/core/index.js +0 -4
- package/dist/core/messages/zh/core/inquisitor-extra-messages.js +0 -3
- package/dist/core/messages/zh/core/inquisitor-messages.js +0 -6
- package/dist/core/messages/zh/core/parser-extra-messages.js +0 -3
- package/dist/core/messages/zh/core/plugin-messages.js +0 -44
- package/dist/core/messages/zh/github/github-app-messages.js +0 -1
- package/dist/core/messages/zh/github/github-push-report-messages.js +1 -2
- package/dist/core/messages/zh/github/github-repo-downloader-messages.js +0 -1
- package/dist/core/messages/zh/github/github-webhook-messages.js +0 -1
- package/dist/core/messages/zh/github/index.js +0 -1
- package/dist/core/messages/zh/guardian/guardian-messages.js +0 -1
- package/dist/core/messages/zh/guardian/index.js +0 -4
- package/dist/core/messages/zh/index.js +0 -4
- package/dist/core/messages/zh/licenses/index.js +0 -4
- package/dist/core/messages/zh/licenses/licenses-messages.js +0 -3
- package/dist/core/messages/zh/log/index.js +0 -4
- package/dist/core/messages/zh/log/log-engine.js +0 -5
- package/dist/core/messages/zh/log/log-helper.js +0 -72
- package/dist/core/messages/zh/log/log-messages.js +1 -19
- package/dist/core/messages/zh/log/log.js +7 -47
- package/dist/core/messages/zh/reports/index.js +0 -4
- package/dist/core/messages/zh/reports/json-messages.js +0 -23
- package/dist/core/messages/zh/reports/report-async-patterns-messages.js +0 -3
- package/dist/core/messages/zh/reports/report-caretaker-health-messages.js +0 -3
- package/dist/core/messages/zh/reports/report-messages.js +0 -27
- package/dist/core/messages/zh/reports/report-templates.js +0 -34
- package/dist/core/messages/zh/reports/streaming-report-messages.js +0 -1
- package/dist/core/messages/zh/shared/index.js +0 -4
- package/dist/core/messages/zh/shared/marketplace-messages.js +0 -1
- package/dist/core/messages/zh/shared/plugin-core-messages.js +0 -3
- package/dist/core/messages/zh/shared/plugin-registry-messages.js +0 -3
- package/dist/core/messages/zh/shared/shared-common-messages.js +0 -1
- package/dist/core/messages/zh/shared/stylelint-messages.js +0 -1
- package/dist/core/messages/zh/ui/filter-config.js +0 -28
- package/dist/core/messages/zh/ui/index.js +0 -4
- package/dist/core/messages/zh/ui/suggestions-contextuais-messages.js +0 -7
- package/dist/core/messages/zh/ui/suggestions.js +0 -53
- package/dist/core/messages.js +0 -5
- package/dist/core/parsing/babel-narrow.js +0 -1
- package/dist/core/parsing/filters.js +0 -8
- package/dist/core/parsing/index.js +0 -4
- package/dist/core/parsing/langs/css.js +0 -2
- package/dist/core/parsing/langs/go.js +0 -2
- package/dist/core/parsing/langs/html.js +0 -3
- package/dist/core/parsing/langs/index.js +0 -1
- package/dist/core/parsing/langs/json.js +0 -3
- package/dist/core/parsing/langs/markdown.js +0 -2
- package/dist/core/parsing/langs/php.js +0 -3
- package/dist/core/parsing/langs/python.js +0 -3
- package/dist/core/parsing/langs/rust.js +0 -3
- package/dist/core/parsing/langs/scss.js +0 -3
- package/dist/core/parsing/langs/shell.js +0 -3
- package/dist/core/parsing/langs/text.js +0 -1
- package/dist/core/parsing/langs/typescript.js +0 -11
- package/dist/core/parsing/langs/vue.js +0 -2
- package/dist/core/parsing/langs/xml.js +0 -1
- package/dist/core/parsing/langs/yaml.js +0 -1
- package/dist/core/parsing/parser.js +0 -3
- package/dist/core/parsing/plugins.js +0 -1
- package/dist/core/parsing/utils.js +0 -4
- package/dist/core/registry/file-registry.js +4 -86
- package/dist/core/registry/index.js +0 -4
- package/dist/core/registry/paths.js +20 -86
- package/dist/core/reporting/default-reporter.js +0 -9
- package/dist/core/reporting/index.js +0 -4
- package/dist/core/runtime/index.js +0 -4
- package/dist/core/runtime/node-adapter.js +0 -4
- package/dist/core/runtime.js +0 -1
- package/dist/core/schema/index.js +0 -4
- package/dist/core/schema/version.js +0 -40
- package/dist/core/utils/chalk.js +0 -1
- package/dist/core/utils/exec-safe.js +0 -39
- package/dist/core/utils/import-safe.js +0 -2
- package/dist/core/utils/index.js +0 -4
- package/dist/core/workers/index.js +0 -4
- package/dist/core/workers/worker-executor.js +0 -13
- package/dist/core/workers/worker-pool.js +0 -0
- package/dist/guardian/baseline.js +0 -8
- package/dist/guardian/constants.js +5 -23
- package/dist/guardian/diff.js +3 -11
- package/dist/guardian/gpg.js +0 -1
- package/dist/guardian/hash.js +0 -11
- package/dist/guardian/index.js +0 -4
- package/dist/guardian/integrity.js +0 -1
- package/dist/guardian/records.js +0 -8
- package/dist/guardian/result.js +0 -13
- package/dist/guardian/sentinel.js +0 -8
- package/dist/guardian/snapshot.js +0 -1
- package/dist/guardian/verifier.js +0 -9
- package/dist/guardian/watcher-hidden.js +0 -2
- package/dist/lib/api.js +0 -1
- package/dist/licenses/disclaimer.js +0 -2
- package/dist/licenses/fs-utils.js +0 -14
- package/dist/licenses/generate-notices.js +0 -3
- package/dist/licenses/header-options.js +0 -1
- package/dist/licenses/index.js +0 -4
- package/dist/licenses/licenses.js +0 -4
- package/dist/licenses/normalizer.js +0 -11
- package/dist/licenses/scanner.js +0 -4
- package/dist/node.loader.js +0 -17
- package/dist/reports/advisor-mahoraga.js +19 -2
- package/dist/reports/advisor.js +0 -4
- package/dist/reports/analise-async-patterns.js +0 -35
- package/dist/reports/async-analysis.js +0 -7
- package/dist/reports/compliance/index.js +0 -1
- package/dist/reports/compliance/iso-mapping.js +0 -1
- package/dist/reports/compliance/soc2-mapping.js +0 -1
- package/dist/reports/compliance.js +0 -1
- package/dist/reports/filter-smart.js +4 -48
- package/dist/reports/fragmentation.js +0 -5
- package/dist/reports/generator-report.js +0 -11
- package/dist/reports/index.js +0 -5
- package/dist/reports/processing.js +0 -4
- package/dist/reports/reader.js +0 -5
- package/dist/reports/report-archetypes.js +1 -11
- package/dist/reports/report-caretaker-health.js +0 -6
- package/dist/reports/report-patterns-usage.js +0 -5
- package/dist/reports/report-pruning.js +0 -1
- package/dist/reports/report-structure.js +0 -1
- package/dist/reports/report-type-definitions.js +0 -6
- package/dist/reports/streaming-report.js +0 -1
- package/dist/reports/streaming.js +0 -1
- package/dist/reports/structure.js +0 -4
- package/dist/scripts/index.js +0 -1
- package/dist/scripts/migrar-aliases.js +0 -1
- package/dist/shared/context-project.js +2 -34
- package/dist/shared/data-processing/fragment-report.js +1 -13
- package/dist/shared/data-processing/index.js +0 -4
- package/dist/shared/data-processing/json.js +0 -40
- package/dist/shared/data-processing/occurrences.js +0 -14
- package/dist/shared/formatters/code-min-formatter.js +0 -6
- package/dist/shared/formatters/core/formatter-registry.js +0 -11
- package/dist/shared/formatters/core/syntax-map.js +0 -13
- package/dist/shared/formatters/engines/prettier.js +1 -4
- package/dist/shared/formatters/engines/stylelint.js +0 -17
- package/dist/shared/formatters/engines/svgs.js +0 -16
- package/dist/shared/formatters/formatter.js +1 -6
- package/dist/shared/formatters/formatters/code.js +0 -18
- package/dist/shared/formatters/formatters/commons.js +0 -20
- package/dist/shared/formatters/formatters/css.js +0 -58
- package/dist/shared/formatters/formatters/dockerfile.js +0 -19
- package/dist/shared/formatters/formatters/dotfiles.js +0 -25
- package/dist/shared/formatters/formatters/go.js +0 -25
- package/dist/shared/formatters/formatters/html.js +0 -36
- package/dist/shared/formatters/formatters/json.js +0 -18
- package/dist/shared/formatters/formatters/markdown.js +0 -30
- package/dist/shared/formatters/formatters/properties.js +0 -25
- package/dist/shared/formatters/formatters/shell.js +1 -55
- package/dist/shared/formatters/formatters/sql.js +0 -28
- package/dist/shared/formatters/formatters/svg.js +0 -5
- package/dist/shared/formatters/formatters/toml.js +0 -25
- package/dist/shared/formatters/formatters/xml.js +0 -5
- package/dist/shared/formatters/formatters/yaml.js +1 -26
- package/dist/shared/formatters/index.js +0 -8
- package/dist/shared/helpers/analyst-wrapper.js +0 -13
- package/dist/shared/helpers/ast-visitor-utils.js +0 -8
- package/dist/shared/helpers/context-utils.js +1 -19
- package/dist/shared/helpers/detectors-common.js +0 -23
- package/dist/shared/helpers/framework-detector.js +0 -11
- package/dist/shared/helpers/fs.js +0 -4
- package/dist/shared/helpers/group.js +0 -4
- package/dist/shared/helpers/helpers-analysts.js +0 -8
- package/dist/shared/helpers/imports.js +0 -39
- package/dist/shared/helpers/json-mode.js +0 -21
- package/dist/shared/helpers/json.js +0 -20
- package/dist/shared/helpers/line-lookup.js +0 -6
- package/dist/shared/helpers/lines.js +0 -4
- package/dist/shared/helpers/magic-constants-whitelist.js +0 -30
- package/dist/shared/helpers/masking.js +0 -68
- package/dist/shared/helpers/occurrences.js +0 -5
- package/dist/shared/helpers/path.js +0 -4
- package/dist/shared/helpers/pool.js +0 -4
- package/dist/shared/helpers/reader-report.js +0 -25
- package/dist/shared/helpers/rule-config.js +1 -38
- package/dist/shared/helpers/structural-hash.js +0 -21
- package/dist/shared/helpers/structure.js +0 -23
- package/dist/shared/helpers/suppressao.js +2 -39
- package/dist/shared/helpers.js +0 -4
- package/dist/shared/impar.js +0 -1
- package/dist/shared/imports.js +0 -5
- package/dist/shared/index.js +0 -4
- package/dist/shared/marketplace/index.js +0 -1
- package/dist/shared/marketplace/registry.js +2 -3
- package/dist/shared/marketplace/remote.js +0 -2
- package/dist/shared/marketplace/versionamento.js +0 -7
- package/dist/shared/memory.js +0 -13
- package/dist/shared/persistence/index.js +0 -4
- package/dist/shared/persistence/persistence.js +1 -43
- package/dist/shared/persistence.js +0 -6
- package/dist/shared/plugins/core-plugin.js +0 -1
- package/dist/shared/plugins/init.js +0 -15
- package/dist/shared/plugins/registry.js +3 -78
- package/dist/shared/structure.js +0 -5
- package/dist/shared/stylelint.js +0 -4
- package/dist/shared/validation/index.js +0 -4
- package/dist/shared/validation/validation.js +1 -27
- package/dist/shared/validation.js +0 -23
- package/dist/shared/vitest-alias.js +0 -4
- package/dist/types/analysts/azure-pipelines.js +0 -1
- package/dist/types/analysts/circleci.js +0 -1
- package/dist/types/analysts/context.js +0 -5
- package/dist/types/analysts/corrections/reorganize-barrels.js +0 -1
- package/dist/types/analysts/corrections/type-safety.js +0 -5
- package/dist/types/analysts/corrections.js +0 -5
- package/dist/types/analysts/css-in-js.js +0 -1
- package/dist/types/analysts/detectors.js +0 -1
- package/dist/types/analysts/dynamic-modules.js +0 -1
- package/dist/types/analysts/github-actions-plugins.js +0 -1
- package/dist/types/analysts/github-actions-reports.js +0 -4
- package/dist/types/analysts/gitlab-ci.js +0 -1
- package/dist/types/analysts/handlers.js +0 -1
- package/dist/types/analysts/index.js +0 -12
- package/dist/types/analysts/jenkins.js +0 -1
- package/dist/types/analysts/markdown.js +0 -7
- package/dist/types/analysts/metrics.js +0 -1
- package/dist/types/analysts/plugins.js +0 -1
- package/dist/types/analysts/scoring.js +0 -1
- package/dist/types/analysts/strategists.js +0 -1
- package/dist/types/analysts/svg-plugins.js +0 -1
- package/dist/types/analysts/tailwind-correction.js +0 -1
- package/dist/types/common/analysts.js +0 -7
- package/dist/types/common/file-entries.js +0 -1
- package/dist/types/common/index.js +0 -4
- package/dist/types/common/marketplace.js +0 -1
- package/dist/types/common/occurrences.js +0 -3
- package/dist/types/common/package-json.js +0 -1
- package/dist/types/common/utils.js +0 -4
- package/dist/types/guardian/result.js +0 -11
- package/dist/types/processing/commands.js +0 -4
- package/dist/types/processing/diagnostic-handlers.js +0 -4
- package/dist/types/processing/diagnostic.js +0 -6
- package/dist/types/processing/display.js +0 -17
- package/dist/types/processing/exporters.js +0 -4
- package/dist/types/processing/filters.js +1 -27
- package/dist/types/processing/formatters.js +0 -1
- package/dist/types/processing/handlers.js +0 -4
- package/dist/types/processing/index.js +0 -4
- package/dist/types/processing/log-extensions.js +0 -4
- package/dist/types/processing/metrics-analysts.js +0 -1
- package/dist/types/processing/metrics.js +0 -1
- package/dist/types/processing/options.js +0 -4
- package/dist/types/processing/processing-diagnostic.js +0 -1
- package/dist/types/project/context.js +0 -5
- package/dist/types/project/detection.js +0 -1
- package/dist/types/project/index.js +0 -4
- package/dist/types/reports/processing.js +0 -5
- package/dist/types/shared/validation.js +0 -13
- package/dist/types/structure/archetypes.js +0 -1
- package/dist/types/structure/index.js +0 -4
- package/dist/types/structure/plano-structure.js +0 -2
- package/dist/vulnerabilities/index.js +0 -1
- package/dist/vulnerabilities/npm-audit.js +0 -1
- package/dist/vulnerabilities/scanner.js +0 -2
- package/dist/vulnerabilities/vulnerabilities.js +0 -1
- package/package.json +6 -14
- package/dist/bin/cli-bootstrap.js +0 -241
- package/dist/reports/advisor-sukuna.js +0 -23
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
// @mahoraga-disable ml-deep-nesting
|
|
2
|
-
// SPDX-License-Identifier: MIT
|
|
3
1
|
import { messages } from '../../../core/messages/index.js';
|
|
4
2
|
import { splitLines } from '../../../shared/helpers/index.js';
|
|
5
3
|
import { criarOcorrencia } from '../../../types/index.js';
|
|
6
|
-
// ─── Plugin Registration System ───────────────────────────────────────────────
|
|
7
4
|
const detectoresRegistrados = [];
|
|
8
5
|
export function registrarDetectorShell(detector) {
|
|
9
6
|
detectoresRegistrados.push(detector);
|
|
@@ -24,8 +21,6 @@ export const detectorShellSecurity = {
|
|
|
24
21
|
const linhas = splitLines(src);
|
|
25
22
|
const _srcCompleto = src.toLowerCase();
|
|
26
23
|
const shebang = linhas.length > 0 ? linhas[0] : '';
|
|
27
|
-
// ── Security ────────────────────────────────────────────────────────────────
|
|
28
|
-
// Shebang
|
|
29
24
|
if (linhas.length > 0 && !shebang.startsWith('#!')) {
|
|
30
25
|
ocorrencias.push(criarOcorrencia({
|
|
31
26
|
tipo: 'shell-missing-shebang',
|
|
@@ -36,7 +31,6 @@ export const detectorShellSecurity = {
|
|
|
36
31
|
sugestao: messages.DetectorShellMensagens.missingShebangSugestao
|
|
37
32
|
}));
|
|
38
33
|
}
|
|
39
|
-
// set -e / pipefail
|
|
40
34
|
if (!/set\s+(-e|-o\s+pipefail)/.test(src)) {
|
|
41
35
|
ocorrencias.push(criarOcorrencia({
|
|
42
36
|
tipo: 'shell-missing-set-e',
|
|
@@ -47,7 +41,6 @@ export const detectorShellSecurity = {
|
|
|
47
41
|
sugestao: messages.DetectorShellMensagens.missingSetESugestao
|
|
48
42
|
}));
|
|
49
43
|
}
|
|
50
|
-
// pipefail only (set -e present, -o pipefail missing)
|
|
51
44
|
if (/set\s+-e/.test(src) && !/set\s+-o\s+pipefail/.test(src)) {
|
|
52
45
|
ocorrencias.push(criarOcorrencia({
|
|
53
46
|
tipo: 'shell-unsafe-pipefail',
|
|
@@ -58,7 +51,6 @@ export const detectorShellSecurity = {
|
|
|
58
51
|
sugestao: messages.DetectorShellMensagens.unsafePipefailSugestao
|
|
59
52
|
}));
|
|
60
53
|
}
|
|
61
|
-
// set -u (treat unset variables as error)
|
|
62
54
|
if (!/set\s+-u/.test(src)) {
|
|
63
55
|
ocorrencias.push(criarOcorrencia({
|
|
64
56
|
tipo: 'shell-missing-set-u',
|
|
@@ -69,7 +61,6 @@ export const detectorShellSecurity = {
|
|
|
69
61
|
sugestao: messages.DetectorShellMensagens.missingSetUSugestao
|
|
70
62
|
}));
|
|
71
63
|
}
|
|
72
|
-
// IFS=$'\n\t'
|
|
73
64
|
if (!/IFS=/.test(src)) {
|
|
74
65
|
ocorrencias.push(criarOcorrencia({
|
|
75
66
|
tipo: 'shell-missing-ifs',
|
|
@@ -80,7 +71,6 @@ export const detectorShellSecurity = {
|
|
|
80
71
|
sugestao: messages.DetectorShellMensagens.missingIsoSugestao
|
|
81
72
|
}));
|
|
82
73
|
}
|
|
83
|
-
// Trap handler
|
|
84
74
|
if (!/\btrap\s+/.test(src)) {
|
|
85
75
|
ocorrencias.push(criarOcorrencia({
|
|
86
76
|
tipo: 'shell-missing-trap',
|
|
@@ -91,7 +81,6 @@ export const detectorShellSecurity = {
|
|
|
91
81
|
sugestao: messages.DetectorShellMensagens.missingTrapSugestao
|
|
92
82
|
}));
|
|
93
83
|
}
|
|
94
|
-
// Main function pattern
|
|
95
84
|
if (!/main\s*\(\s*\)/.test(src) && !/^main\s*\(/m.test(src)) {
|
|
96
85
|
ocorrencias.push(criarOcorrencia({
|
|
97
86
|
tipo: 'shell-missing-main-fn',
|
|
@@ -102,7 +91,6 @@ export const detectorShellSecurity = {
|
|
|
102
91
|
sugestao: messages.DetectorShellMensagens.missingMainFnSugestao
|
|
103
92
|
}));
|
|
104
93
|
}
|
|
105
|
-
// Hardcoded paths without command -v
|
|
106
94
|
if (/(\/usr\/bin\/|\/bin\/|\/usr\/local\/bin\/)/.test(src) && !/command\s+-v/.test(src)) {
|
|
107
95
|
ocorrencias.push(criarOcorrencia({
|
|
108
96
|
tipo: 'shell-missing-command-v',
|
|
@@ -113,7 +101,6 @@ export const detectorShellSecurity = {
|
|
|
113
101
|
sugestao: messages.DetectorShellMensagens.missingCommandVSugestao
|
|
114
102
|
}));
|
|
115
103
|
}
|
|
116
|
-
// DEBUG mode
|
|
117
104
|
if (!/\$\{DEBUG[^}]*\}/.test(src) && !/\$DEBUG\b/.test(src)) {
|
|
118
105
|
ocorrencias.push(criarOcorrencia({
|
|
119
106
|
tipo: 'shell-missing-debug-mode',
|
|
@@ -124,7 +111,6 @@ export const detectorShellSecurity = {
|
|
|
124
111
|
sugestao: messages.DetectorShellMensagens.missingDebugModeSugestao
|
|
125
112
|
}));
|
|
126
113
|
}
|
|
127
|
-
// Input validation
|
|
128
114
|
if (/\$[0-9@*]/.test(src) && !/\[\[ -z "\$[0-9@*]/.test(src) && !/\[ -z "\$[0-9@*]/.test(src)) {
|
|
129
115
|
ocorrencias.push(criarOcorrencia({
|
|
130
116
|
tipo: 'shell-missing-input-validation',
|
|
@@ -135,7 +121,6 @@ export const detectorShellSecurity = {
|
|
|
135
121
|
sugestao: messages.DetectorShellMensagens.missingInputValidationSugestao
|
|
136
122
|
}));
|
|
137
123
|
}
|
|
138
|
-
// ShellCheck recommendation (only if script is non-trivial)
|
|
139
124
|
if (linhas.length > 10 && !src.includes('shellcheck')) {
|
|
140
125
|
ocorrencias.push(criarOcorrencia({
|
|
141
126
|
tipo: 'shellcheck-recommended',
|
|
@@ -153,7 +138,6 @@ export const detectorShellSecurity = {
|
|
|
153
138
|
if (linhaTrim.startsWith('#')) {
|
|
154
139
|
return;
|
|
155
140
|
}
|
|
156
|
-
// ── Security: eval ──────────────────────────────────────────────────────
|
|
157
141
|
if (/\beval\s+/.test(linha)) {
|
|
158
142
|
ocorrencias.push(criarOcorrencia({
|
|
159
143
|
tipo: 'shell-eval-usage',
|
|
@@ -164,7 +148,6 @@ export const detectorShellSecurity = {
|
|
|
164
148
|
sugestao: messages.DetectorShellMensagens.evalUsageSugestao
|
|
165
149
|
}));
|
|
166
150
|
}
|
|
167
|
-
// ── Security: rm -rf / ───────────────────────────────────────────────────
|
|
168
151
|
if (/\brm\s+-rf\s+\/(\s|$)/.test(linha)) {
|
|
169
152
|
ocorrencias.push(criarOcorrencia({
|
|
170
153
|
tipo: 'shell-rm-rf-root',
|
|
@@ -175,7 +158,6 @@ export const detectorShellSecurity = {
|
|
|
175
158
|
sugestao: messages.DetectorShellMensagens.rmRfRootSugestao
|
|
176
159
|
}));
|
|
177
160
|
}
|
|
178
|
-
// ── Security: curl|sh ──────────────────────────────────────────────────
|
|
179
161
|
if (/(curl|wget).*\|\s*(ba)?sh/.test(linha)) {
|
|
180
162
|
ocorrencias.push(criarOcorrencia({
|
|
181
163
|
tipo: 'shell-curl-pipe-sh',
|
|
@@ -186,7 +168,6 @@ export const detectorShellSecurity = {
|
|
|
186
168
|
sugestao: messages.DetectorShellMensagens.curlPipeShSugestao
|
|
187
169
|
}));
|
|
188
170
|
}
|
|
189
|
-
// ── Security: Hardcoded credentials ────────────────────────────────────
|
|
190
171
|
if (/\b(password|pass|secret|token)\b\s*=\s*['"].*['"]/i.test(linha)) {
|
|
191
172
|
ocorrencias.push(criarOcorrencia({
|
|
192
173
|
tipo: 'shell-hardcoded-password',
|
|
@@ -197,7 +178,6 @@ export const detectorShellSecurity = {
|
|
|
197
178
|
sugestao: messages.DetectorShellMensagens.hardcodedPasswordSugestao
|
|
198
179
|
}));
|
|
199
180
|
}
|
|
200
|
-
// ── Security: Unquoted variables ────────────────────────────────────────
|
|
201
181
|
if (/\b(echo|ls|cd|rm|cp|mv)\s+.*\$\w+/.test(linha) && !/["'].*\$\w+.*["']/.test(linha)) {
|
|
202
182
|
ocorrencias.push(criarOcorrencia({
|
|
203
183
|
tipo: 'shell-unquoted-variable',
|
|
@@ -208,7 +188,6 @@ export const detectorShellSecurity = {
|
|
|
208
188
|
sugestao: messages.DetectorShellMensagens.unquotedVariableSugestao
|
|
209
189
|
}));
|
|
210
190
|
}
|
|
211
|
-
// ── Security: sudo ──────────────────────────────────────────────────────
|
|
212
191
|
if (/\bsudo\s+/.test(linha) && !relPath.includes('setup') && !relPath.includes('install')) {
|
|
213
192
|
ocorrencias.push(criarOcorrencia({
|
|
214
193
|
tipo: 'shell-sudo-usage',
|
|
@@ -219,7 +198,6 @@ export const detectorShellSecurity = {
|
|
|
219
198
|
sugestao: messages.DetectorShellMensagens.sudoUsageSugestao
|
|
220
199
|
}));
|
|
221
200
|
}
|
|
222
|
-
// ── Security: cd without check ──────────────────────────────────────────
|
|
223
201
|
if (/^\s*cd\s+\S+/.test(linha) && !/cd\s+\S+\s*(;|&&|\|\|)/.test(linha) && !linha.includes('|| exit') && !linha.includes('|| return') && !linha.includes('|| true')) {
|
|
224
202
|
ocorrencias.push(criarOcorrencia({
|
|
225
203
|
tipo: 'shell-cd-without-check',
|
|
@@ -230,7 +208,6 @@ export const detectorShellSecurity = {
|
|
|
230
208
|
sugestao: messages.DetectorShellMensagens.unsafeCdWithoutCheckSugestao
|
|
231
209
|
}));
|
|
232
210
|
}
|
|
233
|
-
// ── Security: /tmp without mktemp ───────────────────────────────────────
|
|
234
211
|
if (/["']\/tmp\/\w+\.\w+["']/.test(linha) || />\s*\/tmp\/\w+/.test(linha)) {
|
|
235
212
|
ocorrencias.push(criarOcorrencia({
|
|
236
213
|
tipo: 'shell-unsafe-tmp-file',
|
|
@@ -241,7 +218,6 @@ export const detectorShellSecurity = {
|
|
|
241
218
|
sugestao: messages.DetectorShellMensagens.unsafeTmpFileSugestao
|
|
242
219
|
}));
|
|
243
220
|
}
|
|
244
|
-
// ── Security: Insecure permissions ──────────────────────────────────────
|
|
245
221
|
if (/\bchmod\s+777\b/.test(linha) || /\bumask\s+000\b/.test(linha)) {
|
|
246
222
|
ocorrencias.push(criarOcorrencia({
|
|
247
223
|
tipo: 'shell-insecure-permissions',
|
|
@@ -252,7 +228,6 @@ export const detectorShellSecurity = {
|
|
|
252
228
|
sugestao: messages.DetectorShellMensagens.insecurePermissionsSugestao
|
|
253
229
|
}));
|
|
254
230
|
}
|
|
255
|
-
// ── Security: Dangerous flags ──────────────────────────────────────────
|
|
256
231
|
if (/\bchown\s+-R\s+\//.test(linha) || /\brm\s+-rf\s+\/\*/.test(linha)) {
|
|
257
232
|
ocorrencias.push(criarOcorrencia({
|
|
258
233
|
tipo: 'shell-dangerous-flags',
|
|
@@ -263,7 +238,6 @@ export const detectorShellSecurity = {
|
|
|
263
238
|
sugestao: messages.DetectorShellMensagens.dangerousFlagsSugestao
|
|
264
239
|
}));
|
|
265
240
|
}
|
|
266
|
-
// ── Security: read without -r ──────────────────────────────────────────
|
|
267
241
|
if (/^\s*read\s+(?!-r)/.test(linha) && /^\s*read\s+\w+/.test(linha)) {
|
|
268
242
|
ocorrencias.push(criarOcorrencia({
|
|
269
243
|
tipo: 'shell-read-without-r',
|
|
@@ -274,9 +248,7 @@ export const detectorShellSecurity = {
|
|
|
274
248
|
sugestao: messages.DetectorShellMensagens.unsafeReadWithoutRSugestao
|
|
275
249
|
}));
|
|
276
250
|
}
|
|
277
|
-
// ── Best Practices: Missing local in function ────────────────────────────
|
|
278
251
|
if (/^\s*\w+\s*\(\)\s*\{/.test(linha) || (/^\s*function\s+\w+\s*\{/.test(linha) && linhas.slice(index + 1).some(l => /^\s*local\s+\w+/.test(l)))) {
|
|
279
|
-
// Check if next lines have variables without local
|
|
280
252
|
const _inFunc = true;
|
|
281
253
|
let braceCount = 0;
|
|
282
254
|
for (let j = index + 1; j < Math.min(index + 30, linhas.length); j++) {
|
|
@@ -305,7 +277,6 @@ export const detectorShellSecurity = {
|
|
|
305
277
|
}
|
|
306
278
|
}
|
|
307
279
|
}
|
|
308
|
-
// ── Best Practices: Local var with UPPERCASE ────────────────────────────
|
|
309
280
|
if (/^\s*local\s+[A-Z_]+\w*=/.test(linha)) {
|
|
310
281
|
ocorrencias.push(criarOcorrencia({
|
|
311
282
|
tipo: 'shell-uppercase-local-var',
|
|
@@ -316,7 +287,6 @@ export const detectorShellSecurity = {
|
|
|
316
287
|
sugestao: messages.DetectorShellMensagens.uppercaseLocalVarSugestao
|
|
317
288
|
}));
|
|
318
289
|
}
|
|
319
|
-
// ── Best Practices: Backtick command substitution ──────────────────────
|
|
320
290
|
if (/`[^`]+`/.test(linha)) {
|
|
321
291
|
ocorrencias.push(criarOcorrencia({
|
|
322
292
|
tipo: 'shell-backtick-cmd-sub',
|
|
@@ -327,7 +297,6 @@ export const detectorShellSecurity = {
|
|
|
327
297
|
sugestao: messages.DetectorShellMensagens.backtickCmdSubSugestao
|
|
328
298
|
}));
|
|
329
299
|
}
|
|
330
|
-
// ── Best Practices: [ vs [[ (only in Bash scripts) ─────────────────────
|
|
331
300
|
if (!isSh && /^\s*\[[^\]]+\]/.test(linha) && !/^\s*\[\[/.test(linha) && !linha.includes('"$') && !/\[\s*-[a-z]\s+\S+\s*\]/.test(linha)) {
|
|
332
301
|
ocorrencias.push(criarOcorrencia({
|
|
333
302
|
tipo: 'shell-double-bracket-missing',
|
|
@@ -338,7 +307,6 @@ export const detectorShellSecurity = {
|
|
|
338
307
|
sugestao: messages.DetectorShellMensagens.doubleBracketMissingSugestao
|
|
339
308
|
}));
|
|
340
309
|
}
|
|
341
|
-
// ── Best Practices: let / expr vs $(( )) ────────────────────────────────
|
|
342
310
|
if (/^\s*let\s+/.test(linha) || /^\s*expr\s+/.test(linha)) {
|
|
343
311
|
ocorrencias.push(criarOcorrencia({
|
|
344
312
|
tipo: 'shell-unsafe-arithmetic-eval',
|
|
@@ -349,7 +317,6 @@ export const detectorShellSecurity = {
|
|
|
349
317
|
sugestao: messages.DetectorShellMensagens.unsafeArithmeticEvalSugestao
|
|
350
318
|
}));
|
|
351
319
|
}
|
|
352
|
-
// ── Best Practices: function keyword ────────────────────────────────────
|
|
353
320
|
if (/^\s*function\s+\w+\s*(\{|\(|$)/.test(linha)) {
|
|
354
321
|
ocorrencias.push(criarOcorrencia({
|
|
355
322
|
tipo: 'shell-function-decl-style',
|
|
@@ -360,7 +327,6 @@ export const detectorShellSecurity = {
|
|
|
360
327
|
sugestao: messages.DetectorShellMensagens.functionDeclStyleSugestao
|
|
361
328
|
}));
|
|
362
329
|
}
|
|
363
|
-
// ── Best Practices: Case without default ────────────────────────────────
|
|
364
330
|
if (/^\s*case\s+.+\s+in/.test(linha)) {
|
|
365
331
|
let hasDefault = false;
|
|
366
332
|
for (let j = index + 1; j < linhas.length; j++) {
|
|
@@ -384,7 +350,6 @@ export const detectorShellSecurity = {
|
|
|
384
350
|
}));
|
|
385
351
|
}
|
|
386
352
|
}
|
|
387
|
-
// ── Best Practices: Empty then/else block ───────────────────────────────
|
|
388
353
|
if (/\bthen\s*$/.test(linha) || /\belse\s*$/.test(linha)) {
|
|
389
354
|
let empty = false;
|
|
390
355
|
for (let j = index + 1; j < Math.min(index + 5, linhas.length); j++) {
|
|
@@ -408,7 +373,6 @@ export const detectorShellSecurity = {
|
|
|
408
373
|
}));
|
|
409
374
|
}
|
|
410
375
|
}
|
|
411
|
-
// ── Portability: Bashism in sh script ──────────────────────────────────
|
|
412
376
|
if (isSh) {
|
|
413
377
|
if (/^\s*function\s/.test(linha) || /\[\[/.test(linha) || /<\<\</.test(linha) || /\$\{.*\/\/.*\}/.test(linha) || /\$\{.*,.*\}/.test(linha) || /\$\{!/.test(linha) || /shopt\s/.test(linha)) {
|
|
414
378
|
ocorrencias.push(criarOcorrencia({
|
|
@@ -421,7 +385,6 @@ export const detectorShellSecurity = {
|
|
|
421
385
|
}));
|
|
422
386
|
}
|
|
423
387
|
}
|
|
424
|
-
// ── Portability: Platform-specific path ─────────────────────────────────
|
|
425
388
|
if (/\/(usr\/bin|usr\/local\/bin|bin|sbin)\//.test(linha) && !linha.startsWith('#')) {
|
|
426
389
|
ocorrencias.push(criarOcorrencia({
|
|
427
390
|
tipo: 'shell-platform-specific-path',
|
|
@@ -432,7 +395,6 @@ export const detectorShellSecurity = {
|
|
|
432
395
|
sugestao: messages.DetectorShellMensagens.platformSpecificPathSugestao
|
|
433
396
|
}));
|
|
434
397
|
}
|
|
435
|
-
// ── Portability: Unquoted array expansion ──────────────────────────────
|
|
436
398
|
if (/\$\{\w+\[@\]\}/.test(linha) && !/["'].*\$\{\w+\[@\]\}.*["']/.test(linha)) {
|
|
437
399
|
ocorrencias.push(criarOcorrencia({
|
|
438
400
|
tipo: 'shell-missing-quote-arrays',
|
|
@@ -443,7 +405,6 @@ export const detectorShellSecurity = {
|
|
|
443
405
|
sugestao: messages.DetectorShellMensagens.missingQuoteArraysSugestao
|
|
444
406
|
}));
|
|
445
407
|
}
|
|
446
|
-
// ── Performance: Useless cat ──────────────────────────────────────────
|
|
447
408
|
if (/\bcat\s+\S+\s*\|\s*/.test(linha) && !/\bcat\s+.*\|cat\b/.test(linha)) {
|
|
448
409
|
ocorrencias.push(criarOcorrencia({
|
|
449
410
|
tipo: 'shell-useless-cat',
|
|
@@ -454,7 +415,6 @@ export const detectorShellSecurity = {
|
|
|
454
415
|
sugestao: messages.DetectorShellMensagens.uselessCatSugestao
|
|
455
416
|
}));
|
|
456
417
|
}
|
|
457
|
-
// ── Performance: Loop over ls ──────────────────────────────────────────
|
|
458
418
|
if (/for\s+\w+\s+in\s+\$\(ls\)/.test(linha) || /for\s+\w+\s+in\s+`ls`/.test(linha)) {
|
|
459
419
|
ocorrencias.push(criarOcorrencia({
|
|
460
420
|
tipo: 'shell-loop-over-command-output',
|
|
@@ -465,7 +425,6 @@ export const detectorShellSecurity = {
|
|
|
465
425
|
sugestao: messages.DetectorShellMensagens.loopOverCommandOutputSugestao
|
|
466
426
|
}));
|
|
467
427
|
}
|
|
468
|
-
// ── Performance: Temp file could be pipe ───────────────────────────────
|
|
469
428
|
if (/>\s*\S+\.tmp\b/.test(linha) && /<\s*\S+\.tmp\b/.test(linha)) {
|
|
470
429
|
ocorrencias.push(criarOcorrencia({
|
|
471
430
|
tipo: 'shell-pipe-over-tempfile',
|
|
@@ -477,7 +436,6 @@ export const detectorShellSecurity = {
|
|
|
477
436
|
}));
|
|
478
437
|
}
|
|
479
438
|
});
|
|
480
|
-
// Run registered plugin detectors
|
|
481
439
|
for (const detector of detectoresRegistrados) {
|
|
482
440
|
try {
|
|
483
441
|
const resultado = await detector.testar(src, { relPath, linhas });
|
|
@@ -486,7 +444,6 @@ export const detectorShellSecurity = {
|
|
|
486
444
|
}
|
|
487
445
|
}
|
|
488
446
|
catch {
|
|
489
|
-
// Silently skip plugin errors
|
|
490
447
|
}
|
|
491
448
|
}
|
|
492
449
|
return ocorrencias;
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
// SPDX-License-Identifier: MIT
|
|
2
|
-
/**
|
|
3
|
-
* [BUSCA] Analistas de Shell Script
|
|
4
|
-
*
|
|
5
|
-
* Analisa scripts Shell em busca de comandos perigosos, insegurança e falta de boas práticas.
|
|
6
|
-
*/
|
|
7
1
|
export * from './analysts/analyst-shell.js';
|
|
8
2
|
export * from './corrections/index.js';
|
|
9
3
|
export * from './detectors/index.js';
|
|
@@ -1,15 +1,3 @@
|
|
|
1
|
-
// @mahoraga-disable ml-deep-nesting
|
|
2
|
-
// SPDX-License-Identifier: MIT
|
|
3
|
-
/**
|
|
4
|
-
* [GRAFICO] Pontuador de qualidade Shell Script
|
|
5
|
-
*
|
|
6
|
-
* Avalia a qualidade do Shell baseado em:
|
|
7
|
-
* - Segurança
|
|
8
|
-
* - Error handling
|
|
9
|
-
* - Boas práticas
|
|
10
|
-
* - Portabilidade
|
|
11
|
-
* - Performance
|
|
12
|
-
*/
|
|
13
1
|
import { splitLines } from '../../../shared/helpers/index.js';
|
|
14
2
|
export function pontuarShell(src, _relPath) {
|
|
15
3
|
let score = 0;
|
|
@@ -18,7 +6,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
18
6
|
const strengths = [];
|
|
19
7
|
const linhas = splitLines(src);
|
|
20
8
|
const srcCompleto = src;
|
|
21
|
-
// Shebang (10 pontos)
|
|
22
9
|
if (linhas.length > 0 && linhas[0].startsWith('#!')) {
|
|
23
10
|
score += 10;
|
|
24
11
|
strengths.push('Shebang presente');
|
|
@@ -26,7 +13,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
26
13
|
else {
|
|
27
14
|
issues.push('Shebang ausente');
|
|
28
15
|
}
|
|
29
|
-
// set -e / pipefail (15 pontos)
|
|
30
16
|
if (/set\s+(-e|-o\s+pipefail)/.test(srcCompleto)) {
|
|
31
17
|
score += 15;
|
|
32
18
|
strengths.push('Error handling configurado');
|
|
@@ -34,7 +20,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
34
20
|
else {
|
|
35
21
|
issues.push('Sem set -e / pipefail');
|
|
36
22
|
}
|
|
37
|
-
// set -u (10 pontos)
|
|
38
23
|
if (/set\s+-u/.test(srcCompleto)) {
|
|
39
24
|
score += 10;
|
|
40
25
|
strengths.push('Strict mode (set -u)');
|
|
@@ -42,7 +27,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
42
27
|
else {
|
|
43
28
|
issues.push('Sem set -u');
|
|
44
29
|
}
|
|
45
|
-
// IFS (5 pontos)
|
|
46
30
|
if (/IFS=/.test(srcCompleto)) {
|
|
47
31
|
score += 5;
|
|
48
32
|
strengths.push('IFS configurado');
|
|
@@ -50,7 +34,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
50
34
|
else {
|
|
51
35
|
issues.push('Sem IFS');
|
|
52
36
|
}
|
|
53
|
-
// trap handler (10 pontos)
|
|
54
37
|
if (/\btrap\s+/.test(srcCompleto)) {
|
|
55
38
|
score += 10;
|
|
56
39
|
strengths.push('Cleanup handler presente');
|
|
@@ -58,7 +41,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
58
41
|
else {
|
|
59
42
|
issues.push('Sem trap handler');
|
|
60
43
|
}
|
|
61
|
-
// No eval (15 pontos)
|
|
62
44
|
if (!/\beval\s+/.test(srcCompleto)) {
|
|
63
45
|
score += 15;
|
|
64
46
|
strengths.push('Sem eval');
|
|
@@ -66,7 +48,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
66
48
|
else {
|
|
67
49
|
issues.push('eval detectado');
|
|
68
50
|
}
|
|
69
|
-
// No curl|sh (10 pontos)
|
|
70
51
|
if (!/(curl|wget).*\|\s*(ba)?sh/.test(srcCompleto)) {
|
|
71
52
|
score += 10;
|
|
72
53
|
strengths.push('Sem curl|sh');
|
|
@@ -74,7 +55,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
74
55
|
else {
|
|
75
56
|
issues.push('curl|sh detectado');
|
|
76
57
|
}
|
|
77
|
-
// No hardcoded passwords (10 pontos)
|
|
78
58
|
const hardcodedPasswords = (srcCompleto.match(/\b(password|pass|secret|token)\b\s*=\s*['"]/gi) ?? []).length;
|
|
79
59
|
if (hardcodedPasswords === 0) {
|
|
80
60
|
score += 10;
|
|
@@ -83,7 +63,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
83
63
|
else {
|
|
84
64
|
issues.push(`${hardcodedPasswords} senha(s) hardcoded`);
|
|
85
65
|
}
|
|
86
|
-
// Quoted variables (10 pontos)
|
|
87
66
|
const unquotedVars = (srcCompleto.match(/\b(echo|ls|cd|rm|cp|mv)\s+.*\$\w+/g) ?? []).filter(linha => !/["'].*\$\w+.*["']/.test(linha)).length;
|
|
88
67
|
if (unquotedVars === 0) {
|
|
89
68
|
score += 10;
|
|
@@ -93,7 +72,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
93
72
|
score += Math.max(0, 10 - unquotedVars * 3);
|
|
94
73
|
issues.push(`${unquotedVars} variável(is) sem aspas`);
|
|
95
74
|
}
|
|
96
|
-
// No rm -rf / (10 pontos)
|
|
97
75
|
if (!/\brm\s+-rf\s+\/(\s|$)/.test(srcCompleto)) {
|
|
98
76
|
score += 10;
|
|
99
77
|
strengths.push('Sem rm -rf /');
|
|
@@ -101,8 +79,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
101
79
|
else {
|
|
102
80
|
issues.push('rm -rf / detectado!');
|
|
103
81
|
}
|
|
104
|
-
// ── Security (enhanced) ──────────────────────────────────────────────────
|
|
105
|
-
// cd with check (5 pontos)
|
|
106
82
|
const cds = srcCompleto.match(/^\s*cd\s+\S+/gm) ?? [];
|
|
107
83
|
const cdsChecked = cds.filter(c => /cd\s+\S+\s*(;|&&|\|\|)/.test(c) || c.includes('|| exit') || c.includes('|| return')).length;
|
|
108
84
|
if (cds.length === 0 || cdsChecked === cds.length) {
|
|
@@ -112,7 +88,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
112
88
|
else {
|
|
113
89
|
issues.push(`${cds.length - cdsChecked} cd(s) sem verificação`);
|
|
114
90
|
}
|
|
115
|
-
// mktemp usage (5 pontos)
|
|
116
91
|
if (/\bmktemp\b/.test(srcCompleto) || !/\/tmp\/\w+\.\w+/.test(srcCompleto)) {
|
|
117
92
|
score += 5;
|
|
118
93
|
strengths.push('Sem arquivos tmp inseguros');
|
|
@@ -120,7 +95,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
120
95
|
else {
|
|
121
96
|
issues.push('Uso inseguro de /tmp');
|
|
122
97
|
}
|
|
123
|
-
// Permissions (5 pontos)
|
|
124
98
|
if (!/\bchmod\s+777\b/.test(srcCompleto) && !/\bumask\s+000\b/.test(srcCompleto)) {
|
|
125
99
|
score += 5;
|
|
126
100
|
strengths.push('Permissões seguras');
|
|
@@ -128,7 +102,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
128
102
|
else {
|
|
129
103
|
issues.push('Permissões inseguras (chmod 777/umask 000)');
|
|
130
104
|
}
|
|
131
|
-
// read -r (5 pontos)
|
|
132
105
|
const reads = srcCompleto.match(/^\s*read\s+/gm) ?? [];
|
|
133
106
|
const readsWithR = reads.filter(r => /^\s*read\s+-r/.test(r)).length;
|
|
134
107
|
if (reads.length === 0 || readsWithR === reads.length) {
|
|
@@ -138,8 +111,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
138
111
|
else {
|
|
139
112
|
issues.push(`${reads.length - readsWithR} read(s) sem -r`);
|
|
140
113
|
}
|
|
141
|
-
// ── Best Practices ───────────────────────────────────────────────────────
|
|
142
|
-
// local variables (10 pontos)
|
|
143
114
|
const functions = (srcCompleto.match(/(\w+)\s*\(\s*\)/g) ?? []).length;
|
|
144
115
|
const locals = (srcCompleto.match(/\blocal\s+/g) ?? []).length;
|
|
145
116
|
if (functions === 0 || locals >= functions) {
|
|
@@ -150,7 +121,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
150
121
|
score += Math.max(0, 10 - (functions - locals) * 3);
|
|
151
122
|
issues.push(`${functions - locals} função(ões) sem local variables`);
|
|
152
123
|
}
|
|
153
|
-
// No backticks (5 pontos)
|
|
154
124
|
if (!/`[^`]+`/.test(srcCompleto)) {
|
|
155
125
|
score += 5;
|
|
156
126
|
strengths.push('Sem crases');
|
|
@@ -158,7 +128,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
158
128
|
else {
|
|
159
129
|
issues.push('Substituição com crases');
|
|
160
130
|
}
|
|
161
|
-
// [[ instead of [ (5 pontos)
|
|
162
131
|
if (!/^\s*\[[^\]]+\]/.test(srcCompleto) || /\[\[/.test(srcCompleto)) {
|
|
163
132
|
score += 5;
|
|
164
133
|
strengths.push('Uso de [[ para testes');
|
|
@@ -166,7 +135,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
166
135
|
else {
|
|
167
136
|
issues.push('[ usado em vez de [[');
|
|
168
137
|
}
|
|
169
|
-
// $(( )) for arithmetic (5 pontos)
|
|
170
138
|
if (!/\blet\s+/.test(srcCompleto) && !/^\s*expr\s+/.test(srcCompleto)) {
|
|
171
139
|
score += 5;
|
|
172
140
|
strengths.push('Uso de $(( )) para aritmética');
|
|
@@ -174,7 +142,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
174
142
|
else {
|
|
175
143
|
issues.push('let/expr usado em vez de $(( ))');
|
|
176
144
|
}
|
|
177
|
-
// POSIX function style (5 pontos)
|
|
178
145
|
if (!/^\s*function\s+\w+\s*\{/.test(srcCompleto)) {
|
|
179
146
|
score += 5;
|
|
180
147
|
strengths.push('Sintaxe POSIX de função');
|
|
@@ -182,8 +149,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
182
149
|
else {
|
|
183
150
|
issues.push('Palavra-chave function usada');
|
|
184
151
|
}
|
|
185
|
-
// ── Portability ──────────────────────────────────────────────────────────
|
|
186
|
-
// No bashisms in sh scripts (10 pontos)
|
|
187
152
|
const shebang = linhas.length > 0 ? linhas[0] : '';
|
|
188
153
|
if (!/\/bin\/sh(\s|$)/.test(shebang) || !/\b(function|\[\[|<<<|shopt)\b/.test(srcCompleto)) {
|
|
189
154
|
score += 10;
|
|
@@ -192,7 +157,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
192
157
|
else {
|
|
193
158
|
issues.push('Bashisms em script sh');
|
|
194
159
|
}
|
|
195
|
-
// command -v for paths (5 pontos)
|
|
196
160
|
const hardPaths = (srcCompleto.match(/\/(usr\/bin|usr\/local\/bin|bin|sbin)\//g) ?? []).length;
|
|
197
161
|
if (hardPaths === 0) {
|
|
198
162
|
score += 5;
|
|
@@ -202,7 +166,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
202
166
|
score += Math.max(0, 5 - hardPaths);
|
|
203
167
|
issues.push(`${hardPaths} caminho(s) de plataforma fixos`);
|
|
204
168
|
}
|
|
205
|
-
// Quoted array expansion (5 pontos)
|
|
206
169
|
if (!/\$\{\w+\[@\]\}/.test(srcCompleto) || /"\$\{\w+\[@\]\}"/.test(srcCompleto)) {
|
|
207
170
|
score += 5;
|
|
208
171
|
strengths.push('Arrays com aspas');
|
|
@@ -210,8 +173,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
210
173
|
else {
|
|
211
174
|
issues.push('Expansão de array sem aspas');
|
|
212
175
|
}
|
|
213
|
-
// ── Performance ─────────────────────────────────────────────────────────
|
|
214
|
-
// No useless cat (5 pontos)
|
|
215
176
|
if (!/\bcat\s+\S+\s*\|\s*/.test(srcCompleto)) {
|
|
216
177
|
score += 5;
|
|
217
178
|
strengths.push('Sem cat inútil');
|
|
@@ -219,7 +180,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
219
180
|
else {
|
|
220
181
|
issues.push('cat | command detectado');
|
|
221
182
|
}
|
|
222
|
-
// No loop over ls (5 pontos)
|
|
223
183
|
if (!/for\s+\w+\s+in\s+\$\(ls\)/.test(srcCompleto) && !/for\s+\w+\s+in\s+`ls`/.test(srcCompleto)) {
|
|
224
184
|
score += 5;
|
|
225
185
|
strengths.push('Glob em vez de ls');
|
|
@@ -227,7 +187,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
227
187
|
else {
|
|
228
188
|
issues.push('Loop sobre ls');
|
|
229
189
|
}
|
|
230
|
-
// Pipes instead of temp files (5 pontos)
|
|
231
190
|
if (/>\s*\S+\.tmp\b/.test(srcCompleto) && /<\s*\S+\.tmp\b/.test(srcCompleto)) {
|
|
232
191
|
issues.push('Arquivo tmp usado em vez de pipe');
|
|
233
192
|
}
|
|
@@ -235,7 +194,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
235
194
|
score += 5;
|
|
236
195
|
strengths.push('Pipes em vez de tmp files');
|
|
237
196
|
}
|
|
238
|
-
// Sudo score (5 pontos)
|
|
239
197
|
if (!/\bsudo\s+/.test(srcCompleto)) {
|
|
240
198
|
score += 5;
|
|
241
199
|
strengths.push('Sem sudo');
|
|
@@ -243,8 +201,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
243
201
|
else {
|
|
244
202
|
issues.push('sudo detectado');
|
|
245
203
|
}
|
|
246
|
-
// ── Modern Bash (2026) ──────────────────────────────────────────
|
|
247
|
-
// main function pattern (5 pontos)
|
|
248
204
|
if (/main\s*\(\s*\)/.test(srcCompleto)) {
|
|
249
205
|
score += 5;
|
|
250
206
|
strengths.push('Função main presente');
|
|
@@ -252,7 +208,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
252
208
|
else {
|
|
253
209
|
issues.push('Sem padrão de função main');
|
|
254
210
|
}
|
|
255
|
-
// command -v usage (5 pontos)
|
|
256
211
|
if (hardPaths === 0 || /command\s+-v/.test(srcCompleto)) {
|
|
257
212
|
score += 5;
|
|
258
213
|
strengths.push('Uso de command -v');
|
|
@@ -260,7 +215,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
260
215
|
else {
|
|
261
216
|
issues.push('Caminhos fixos sem command -v');
|
|
262
217
|
}
|
|
263
|
-
// DEBUG mode (5 pontos)
|
|
264
218
|
if (/\$\{DEBUG[^}]*\}/.test(srcCompleto) || /\$DEBUG\b/.test(srcCompleto)) {
|
|
265
219
|
score += 5;
|
|
266
220
|
strengths.push('Modo debug presente');
|
|
@@ -268,7 +222,6 @@ export function pontuarShell(src, _relPath) {
|
|
|
268
222
|
else {
|
|
269
223
|
issues.push('Sem modo debug');
|
|
270
224
|
}
|
|
271
|
-
// Input validation (5 pontos)
|
|
272
225
|
if (/\[\[ -z "\$[0-9@*]/.test(srcCompleto) || /\[ -z "\$[0-9@*]/.test(srcCompleto)) {
|
|
273
226
|
score += 5;
|
|
274
227
|
strengths.push('Validação de input');
|
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
import { criarAnalista, criarOcorrencia } from '../../../types/index.js';
|
|
2
|
-
/**
|
|
3
|
-
* Analista de SQL
|
|
4
|
-
* Detecta práticas inseguras, problemas de performance e má organização em arquivos SQL.
|
|
5
|
-
*/
|
|
6
2
|
export const analistaSql = criarAnalista({
|
|
7
3
|
nome: 'analista-sql',
|
|
8
4
|
categoria: 'database',
|
|
@@ -14,11 +10,9 @@ export const analistaSql = criarAnalista({
|
|
|
14
10
|
linhas.forEach((linha, index) => {
|
|
15
11
|
const numeroLinha = index + 1;
|
|
16
12
|
const linhaTrim = linha.trim().toLowerCase();
|
|
17
|
-
// 1. DELETE/UPDATE sem WHERE (Crítico)
|
|
18
13
|
if ((linhaTrim.startsWith('delete ') || linhaTrim.startsWith('update ')) &&
|
|
19
14
|
!linhaTrim.includes('where') &&
|
|
20
15
|
!linha.includes('--') && !linha.includes('/*')) {
|
|
21
|
-
// Verificar se o WHERE está na próxima linha (heurística simples)
|
|
22
16
|
const proximaLinha = linhas[index + 1]?.trim().toLowerCase() || '';
|
|
23
17
|
if (!proximaLinha.includes('where')) {
|
|
24
18
|
ocorrencias.push(criarOcorrencia({
|
|
@@ -31,7 +25,6 @@ export const analistaSql = criarAnalista({
|
|
|
31
25
|
}));
|
|
32
26
|
}
|
|
33
27
|
}
|
|
34
|
-
// 2. SELECT * (Performance/Manutenibilidade)
|
|
35
28
|
if (/\bselect\s+\*\s+from\b/i.test(linha)) {
|
|
36
29
|
ocorrencias.push(criarOcorrencia({
|
|
37
30
|
tipo: 'problema-performance',
|
|
@@ -42,7 +35,6 @@ export const analistaSql = criarAnalista({
|
|
|
42
35
|
sugestao: 'Liste explicitamente as colunas necessárias.'
|
|
43
36
|
}));
|
|
44
37
|
}
|
|
45
|
-
// 3. Senhas ou segredos em scripts (Segurança)
|
|
46
38
|
if (/\b(password|senha|secret|key|token|credential)\b\s*[:=]\s*['"].*['"]/i.test(linha) ||
|
|
47
39
|
/identified\s+by\s+['"].*['"]/i.test(linha)) {
|
|
48
40
|
ocorrencias.push(criarOcorrencia({
|
|
@@ -54,7 +46,6 @@ export const analistaSql = criarAnalista({
|
|
|
54
46
|
sugestao: 'Utilize variáveis de ambiente ou sistemas de gerenciamento de segredos.'
|
|
55
47
|
}));
|
|
56
48
|
}
|
|
57
|
-
// 4. Injeção de SQL via strings concatenadas (se for template ou arquivo de migração dinâmico)
|
|
58
49
|
if (/\s\+\s*['"`].*['"`]/.test(linha) && /select|insert|update|delete/i.test(linha)) {
|
|
59
50
|
ocorrencias.push(criarOcorrencia({
|
|
60
51
|
tipo: 'sql-injection',
|
|
@@ -65,7 +56,6 @@ export const analistaSql = criarAnalista({
|
|
|
65
56
|
sugestao: 'Utilize consultas parametrizadas ou placeholders.'
|
|
66
57
|
}));
|
|
67
58
|
}
|
|
68
|
-
// 5. Tabelas temporárias ou globais sem DROP prévio (Boas Práticas)
|
|
69
59
|
if (/create\s+(table|procedure|view)\s+\w+/i.test(linha) && !/if\s+not\s+exists/i.test(linha)) {
|
|
70
60
|
ocorrencias.push(criarOcorrencia({
|
|
71
61
|
tipo: 'codigo-fragil',
|
|
@@ -76,7 +66,6 @@ export const analistaSql = criarAnalista({
|
|
|
76
66
|
sugestao: 'Utilize "CREATE TABLE IF NOT EXISTS ..." para maior idempotência.'
|
|
77
67
|
}));
|
|
78
68
|
}
|
|
79
|
-
// 6. TRUNCATE TABLE (Risco)
|
|
80
69
|
if (/\btruncate\s+table\b/i.test(linha)) {
|
|
81
70
|
ocorrencias.push(criarOcorrencia({
|
|
82
71
|
tipo: 'vulnerabilidade-seguranca',
|
|
@@ -87,7 +76,6 @@ export const analistaSql = criarAnalista({
|
|
|
87
76
|
sugestao: 'Certifique-se de que a limpeza total é intencional e prefira DELETE com WHERE se precisar de reversibilidade.'
|
|
88
77
|
}));
|
|
89
78
|
}
|
|
90
|
-
// 7. Uso de tipos obsoletos (ex: VARCHAR sem tamanho, TEXT para colunas pequenas)
|
|
91
79
|
if (/\bvarchar\b\s*(\(|\s|$)/i.test(linha) && !/\bvarchar\(\d+\)/i.test(linha)) {
|
|
92
80
|
ocorrencias.push(criarOcorrencia({
|
|
93
81
|
tipo: 'codigo-fragil',
|
|
@@ -1,13 +1,3 @@
|
|
|
1
|
-
// @mahoraga-disable ml-deep-nesting
|
|
2
|
-
// SPDX-License-Identifier: MIT
|
|
3
|
-
/**
|
|
4
|
-
* [CHAVE-INGLESA] Correções automáticas para SQL
|
|
5
|
-
*
|
|
6
|
-
* Fornece correções sugeridas para problemas comuns em SQL:
|
|
7
|
-
* - SELECT * → colunas explícitas
|
|
8
|
-
* - DELETE/UPDATE sem WHERE → adicionar WHERE
|
|
9
|
-
* - VARCHAR sem tamanho → definir tamanho
|
|
10
|
-
*/
|
|
11
1
|
import { messages } from '../../../core/messages/index.js';
|
|
12
2
|
import { splitLines } from '../../../shared/helpers/index.js';
|
|
13
3
|
import { criarOcorrencia } from '../../../types/index.js';
|
|
@@ -1,8 +1 @@
|
|
|
1
|
-
// SPDX-License-Identifier: MIT
|
|
2
|
-
/**
|
|
3
|
-
* [BUSCA] Detector de boas práticas SQL (backward compat)
|
|
4
|
-
*
|
|
5
|
-
* Re-exporta do novo detector abrangente.
|
|
6
|
-
* @deprecated Use './detector-sql.js' diretamente.
|
|
7
|
-
*/
|
|
8
1
|
export { detectorSql, detectorSqlBestPractices, obterDetectoresSql, registrarDetectorSql, } from './detector-sql.js';
|