reviewdog icon indicating copy to clipboard operation
reviewdog copied to clipboard

Reviewdog posts and deletes GitHub review comments with multiple runners

Open pietrodn opened this issue 5 months ago • 1 comments

Hi! I am checking my codebase that is composed of an API module (written in Python) and a backoffice frontend (written in TypeScript).

My reviewdog config file is:

runner:
  api-ruff-check:
    cmd: "cd api && poetry run ruff check -q --output-format=rdjson"
    format: rdjson
    level: error
    name: "ruff check (api)"

  backoffice-v2-lint:
    cmd: "cd backoffice-v2 && yarn run lint"
    format: eslint
    level: error
    name: "ESLint (backoffice-v2)"

I injected one linting error for each one of the linters to test the system.

On CircleCI I run the command:

./bin/reviewdog -reporter=github-pr-review -name=reviewdog -level=info

Locally:

reviewdog -guess -reporter=github-pr-review -log-level=debug

(I have set the GitHub token in the environment variable.)

I'm trying to run reviewdog locally but the same things happens on CircleCI:

  • if only one of the two runners is enabled, a PR comment is correctly posted.
  • if both runners are enabled in the .reviewdog.yml, the two GitHub review comments appear momentarily and then disappear. I can see them by leaving the PR page open, but as soon as I reload it they disappear...

This is really weird. When I see the comments, I see them as different code review batches, while they should be inside the same. Is each runner posting its own review comments.

My hypothesis (unverified) is that each runner is seeing each other's comments and deleting them.

pietrodn avatar Aug 30 '24 19:08 pietrodn