pull_request_rules:
  - name: warn on conflicts
    conditions:
      - -draft
      - -closed
      - -merged
      - conflict
    actions:
      comment:
        message: '@{{author}} this pull request is now in conflict 😩'
      label:
        add:
          - conflict
  - name: remove conflict label if not needed
    conditions:
      - -conflict
    actions:
      label:
        remove:
          - conflict
  - name: warn on needs-work
    conditions:
      - -draft
      - -closed
      - -merged
      - or:
          - check-failure=lint
          - check-failure=test-linux
          - check-failure=codecov/patch
          - check-failure=codecov/project
          - check-failure=snapshot
    actions:
      comment:
        message: '@{{author}} this pull request has failed checks 🛠'
      label:
        add:
          - needs-work
  - name: remove needs-work label if not needed
    conditions:
      - check-success=lint
      - check-success=test-linux
      - check-success=codecov/patch
      - check-success=codecov/project
      - check-success=snapshot
    actions:
      label:
        remove:
          - needs-work
  - name: Automatic maintainer assignment
    conditions:
      - '-approved-reviews-by=@nektos/act-maintainers'
      - -draft
      - -merged
      - -closed
      - -conflict
      - check-success=lint
      - check-success=test-linux
      - check-success=codecov/patch
      - check-success=codecov/project
      - check-success=snapshot
    actions:
      request_reviews:
        teams:
          - '@nektos/act-maintainers'
  - name: Automatic merge on approval
    conditions:
      - '#changes-requested-reviews-by=0'
      - or:
          - 'approved-reviews-by=@nektos/act-committers'
          - 'author~=^dependabot(|-preview)\[bot\]$'
          - and:
              - 'approved-reviews-by=@nektos/act-maintainers'
              - '#approved-reviews-by>=2'
      - -draft
      - -merged
      - -closed
      - check-success=lint
      - check-success=test-linux
      - check-success=codecov/patch
      - check-success=codecov/project
      - check-success=snapshot
    actions:
      queue:
        method: squash
        name: default
queue_rules:
  - name: default
    conditions:
      - check-success=lint
      - check-success=test-linux
      - check-success=codecov/patch
      - check-success=codecov/project
      - check-success=snapshot