# Ported from alibaba/open-code-review (Apache-2.0):
#   internal/config/rules/rule_docs/default.md
#   at commit 89ec55b14442c9f2601fb55b5f554fb6fabbe2c7.
# OCR tool names were replaced with this workflow's read-only
# exploration language. See the NOTICE.md and LICENSE files
# in rules/builtin/ for attribution and license details.
version: 1

rules:
  - id: default
    description: "General review checklist for files no language- or format-specific built-in pack covers. The engine applies this pack only when no other built-in pack matches."
    match:
      paths:
        - "**"
    checks:
      - id: correctness
        category: correctness
        guidance: |
          Is the logic correct? Are there missing boundary conditions?
          Are exceptions handled properly?
          Is it thread-safe in concurrent scenarios?
      - id: security
        category: correctness
        guidance: |
          Are there security vulnerabilities such as SQL injection or XSS?
          Is sensitive information handled correctly?
          Is permission validation complete?
      - id: performance
        category: efficiency
        guidance: |
          Are there obvious performance issues (e.g., N+1 queries, unnecessary loops)?
          Are resources properly released?
      - id: maintainability
        category: conventions
        guidance: |
          Is the code clear and easy to understand?
          Do names accurately express intent?
          Does it follow the project’s existing code style and architecture patterns?
      - id: test-coverage
        category: test-coverage
        guidance: |
          Do critical logic paths have corresponding test cases?
          Do test cases cover boundary conditions?
