pr-agent/pr_agent/settings
zmeir 65bb70a1dd Added support for automatic review on push event
The new feature can be enabled via the new configuration `github_app.handle_push_event`. To avoid any unwanted side-effects, the current default of this configuration is set to `false`.

The high level flow (assuming the configuration is enabled):
1. receive push event from GitHub
2. extract branch and commits from event
3. find PR url for branch (currently does not support PRs from forks)
4. perform configured commands (e.g. `/describe`, `/review -i`)

The push event flow is guarded by a backlog queue so that multiple push events on the same branch won't trigger multiple duplicate runs of the PR-Agent commands.
Example timeline:
1. push 1 - start handling event
2. push 2 - waiting to be handled while push 1 event is still running
3. push 3 - event is dropped since handling it and handling push 2 is the same, so it is redundant
4. push 1 finished being handled
5. push 2 awakens from wait and continues handling (potentially reviewing the commits of both push 2 and push 3)

All of these options are configurable and can be enabled/disabled as per the user's desire.

Additional minor changes in this PR:
1. Created `DefaultDictWithTimeout` utility class to avoid too much boilerplate code in managing caches for outdated triggers.
2. Guard against running increment review when there are no new commits.
3. Minor styling changes for incremented review text.
2023-10-25 11:15:23 +03:00
..
.secrets_template.toml Merge remote-tracking branch 'origin/main' into fix_bitbucket_publish_description 2023-09-10 14:08:17 +03:00
configuration.toml Added support for automatic review on push event 2023-10-25 11:15:23 +03:00
ignore.toml Code comments for ignore.toml 2023-10-06 21:53:10 +11:00
language_extensions.toml Add docs editable blacklist of file extensions like sql, yaml... 2023-10-17 18:50:39 +03:00
pr_add_docs.toml prompts minor update 2023-10-05 08:17:37 +03:00
pr_code_suggestions_prompts.toml prompts minor update 2023-10-05 08:17:37 +03:00
pr_description_prompts.toml use_bullet_points 2023-10-19 10:45:42 +03:00
pr_information_from_user_prompts.toml commit_messages_str is used in all tools 2023-08-02 18:26:39 +03:00
pr_questions_prompts.toml commit_messages_str is used in all tools 2023-08-02 18:26:39 +03:00
pr_reviewer_prompts.toml - update readme 2023-10-19 09:16:20 +03:00
pr_sort_code_suggestions_prompts.toml extended improve 2023-08-21 18:17:34 +03:00
pr_update_changelog_prompts.toml prompts minor update 2023-10-05 08:17:37 +03:00