docs/update-structure-documentation #3

Merged
Latte merged 2 commits from docs/update-structure-documentation into dev 2025-12-31 08:42:51 +00:00
3 changed files with 170 additions and 86 deletions
Showing only changes of commit d8530611a0 - Show all commits
+49 -30
View File
@@ -1,42 +1,61 @@
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
name: AI Chat (Bartender)
# WORKFLOW ROUTING:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
# This workflow handles FREE-FORM questions/chat (no specific command)
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
# Other workflows: ai-issue-triage.yml (@codebot triage), ai-comment-reply.yml (specific commands)
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
# This is the FALLBACK for any @codebot mention that isn't a known command
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
on:
issue_comment:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
types: [created]
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
issue_comment:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
types: [created]
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
# CUSTOMIZE YOUR BOT NAME:
# Change '@ai-bot' below to match your config.yml mention_prefix
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
# Change '@codebot' in all conditions below to match your config.yml mention_prefix
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
# Examples: '@bartender', '@uni', '@joey', '@codebot'
jobs:
ai-chat:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
# Only run if comment mentions the bot
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
if: contains(github.event.comment.body, '@codebot') # <-- Change this to your bot name
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
runs-on: ubuntu-latest
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
steps:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
- uses: actions/checkout@v4
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
ai-chat:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
# Only run if comment mentions the bot but NOT a specific command
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
# This prevents duplicate runs with ai-comment-reply.yml and ai-issue-triage.yml
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
# CRITICAL: Ignore bot's own comments to prevent infinite loops (bot username: Bartender)
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
if: |
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
github.event.comment.user.login != 'Bartender' &&
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
contains(github.event.comment.body, '@codebot') &&
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
!contains(github.event.comment.body, '@codebot triage') &&
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
!contains(github.event.comment.body, '@codebot help') &&
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
!contains(github.event.comment.body, '@codebot explain') &&
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
!contains(github.event.comment.body, '@codebot suggest') &&
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
!contains(github.event.comment.body, '@codebot security') &&
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
!contains(github.event.comment.body, '@codebot summarize') &&
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
!contains(github.event.comment.body, '@codebot changelog') &&
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
!contains(github.event.comment.body, '@codebot explain-diff') &&
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
!contains(github.event.comment.body, '@codebot review-again') &&
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
!contains(github.event.comment.body, '@codebot setup-labels')
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
runs-on: ubuntu-latest
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
steps:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
- uses: actions/checkout@v4
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
- uses: actions/checkout@v4
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
with:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
repository: Hiddenden/openrabbit
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
path: .ai-review
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
token: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
- uses: actions/checkout@v4
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
with:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
repository: Hiddenden/openrabbit
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
path: .ai-review
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
token: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
- uses: actions/setup-python@v5
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
with:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
python-version: "3.11"
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
- uses: actions/setup-python@v5
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
with:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
python-version: "3.11"
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
- run: pip install requests pyyaml
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
- run: pip install requests pyyaml
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
- name: Run AI Chat
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
env:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
AI_REVIEW_TOKEN: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
AI_REVIEW_REPO: ${{ gitea.repository }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
AI_REVIEW_API_URL: https://git.hiddenden.cafe/api/v1
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
OLLAMA_HOST: ${{ secrets.OLLAMA_HOST }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
SEARXNG_URL: ${{ secrets.SEARXNG_URL }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
run: |
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
cd .ai-review/tools/ai-review
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
python main.py comment ${{ gitea.repository }} ${{ gitea.event.issue.number }} "${{ gitea.event.comment.body }}"
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
- name: Run AI Chat
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
env:
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
AI_REVIEW_TOKEN: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
AI_REVIEW_REPO: ${{ gitea.repository }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
AI_REVIEW_API_URL: https://git.hiddenden.cafe/api/v1
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
OLLAMA_HOST: ${{ secrets.OLLAMA_HOST }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
SEARXNG_URL: ${{ secrets.SEARXNG_URL }}
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
run: |
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
cd .ai-review/tools/ai-review
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
python main.py comment ${{ gitea.repository }} ${{ gitea.event.issue.number }} "${{ gitea.event.comment.body }}"
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
Review

[LOW] Maintainability

The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions.

Recommendation: Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.

**[LOW] Maintainability** The 'if' condition for filtering comments in the ai-chat workflow is very long and repetitive, checking for many negated contains() conditions. **Recommendation:** Consider defining a reusable expression or using a more maintainable approach (e.g., a list of commands to exclude) if supported by the workflow engine to reduce duplication and improve clarity.
Review

[LOW] Readability

The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion.

Recommendation: Remove duplicate checkout steps to simplify the workflow steps.

**[LOW] Readability** The workflow uses multiple 'uses: actions/checkout@v4' steps nested under each other, which is redundant and may cause confusion. **Recommendation:** Remove duplicate checkout steps to simplify the workflow steps.
+86 -29
View File
@@ -1,41 +1,98 @@
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
name: AI Comment Reply
# WORKFLOW ROUTING:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# This workflow handles SPECIFIC commands: help, explain, suggest, security, summarize, changelog, explain-diff, review-again, setup-labels
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# Other workflows: ai-issue-triage.yml (@codebot triage), ai-chat.yml (free-form questions)
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
on:
issue_comment:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
types: [created]
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
issue_comment:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
types: [created]
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# CUSTOMIZE YOUR BOT NAME:
# Change '@ai-bot' below to match your config.yml mention_prefix
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# Change '@codebot' in the 'if' condition below to match your config.yml mention_prefix
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# Examples: '@bartender', '@uni', '@joey', '@codebot'
jobs:
ai-reply:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
runs-on: ubuntu-latest
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
if: contains(github.event.comment.body, '@codebot') # <-- Change this to your bot name
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
steps:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
- uses: actions/checkout@v4
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
ai-reply:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
runs-on: ubuntu-latest
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# Only run for specific commands (not free-form chat or triage)
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# This prevents duplicate runs with ai-chat.yml and ai-issue-triage.yml
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# CRITICAL: Ignore bot's own comments to prevent infinite loops (bot username: Bartender)
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
if: |
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
github.event.comment.user.login != 'Bartender' &&
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
(contains(github.event.comment.body, '@codebot help') ||
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
contains(github.event.comment.body, '@codebot explain') ||
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
contains(github.event.comment.body, '@codebot suggest') ||
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
contains(github.event.comment.body, '@codebot security') ||
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
contains(github.event.comment.body, '@codebot summarize') ||
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
contains(github.event.comment.body, '@codebot changelog') ||
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
contains(github.event.comment.body, '@codebot explain-diff') ||
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
contains(github.event.comment.body, '@codebot review-again') ||
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
contains(github.event.comment.body, '@codebot setup-labels'))
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
steps:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
- uses: actions/checkout@v4
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
- uses: actions/checkout@v4
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
with:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
repository: Hiddenden/openrabbit
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
path: .ai-review
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
token: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
- uses: actions/checkout@v4
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
with:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
repository: Hiddenden/openrabbit
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
path: .ai-review
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
token: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
- uses: actions/setup-python@v5
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
with:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
python-version: "3.11"
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
- uses: actions/setup-python@v5
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
with:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
python-version: "3.11"
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
- run: pip install requests pyyaml
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
- run: pip install requests pyyaml
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
- name: Run AI Comment Response
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
env:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
AI_REVIEW_TOKEN: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
AI_REVIEW_REPO: ${{ gitea.repository }}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
AI_REVIEW_API_URL: https://git.hiddenden.cafe/api/v1
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
OLLAMA_HOST: ${{ secrets.OLLAMA_HOST }}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
run: |
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
cd .ai-review/tools/ai-review
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
python main.py comment ${{ gitea.repository }} ${{ gitea.event.issue.number }} \
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
"${{ gitea.event.comment.body }}"
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
- name: Run AI Comment Response
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
env:
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
AI_REVIEW_TOKEN: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
AI_REVIEW_API_URL: https://git.hiddenden.cafe/api/v1
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
OLLAMA_HOST: ${{ secrets.OLLAMA_HOST }}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
run: |
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
cd .ai-review/tools/ai-review
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# Determine if this is a PR or issue comment
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
IS_PR="${{ gitea.event.issue.pull_request != null }}"
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
REPO="${{ gitea.repository }}"
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
ISSUE_NUMBER="${{ gitea.event.issue.number }}"
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# Validate inputs
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
if [ -z "$REPO" ] || [ -z "$ISSUE_NUMBER" ]; then
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
echo "Error: Missing required parameters"
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
exit 1
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
fi
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# Validate repository format (owner/repo)
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
if ! echo "$REPO" | grep -qE '^[a-zA-Z0-9_-]+/[a-zA-Z0-9_-]+$'; then
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
echo "Error: Invalid repository format: $REPO"
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
exit 1
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
fi
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
if [ "$IS_PR" = "true" ]; then
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# This is a PR comment - use safe dispatch with minimal event data
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# Build minimal event payload (does not include sensitive user data)
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
EVENT_DATA=$(cat <<EOF
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
{
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
"action": "created",
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
"issue": {
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
"number": ${{ gitea.event.issue.number }},
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
"pull_request": {}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
},
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
"comment": {
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
"id": ${{ gitea.event.comment.id }},
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
"body": $(echo '${{ gitea.event.comment.body }}' | jq -Rs .)
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
}
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
EOF
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
)
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# Use safe dispatch utility
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
python utils/safe_dispatch.py issue_comment "$REPO" "$EVENT_DATA"
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
else
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
# This is an issue comment - use the comment command
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
COMMENT_BODY='${{ gitea.event.comment.body }}'
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
python main.py comment "$REPO" "$ISSUE_NUMBER" "$COMMENT_BODY"
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
fi
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
Review

[LOW] Maintainability

The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain.

Recommendation: Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.

**[LOW] Maintainability** The shell script embedded in the workflow uses multiple environment variables and inline JSON construction with bash heredoc and jq. This approach is somewhat complex and could be fragile or hard to maintain. **Recommendation:** Consider moving the event data construction and dispatch logic into a dedicated script file within the repository to improve readability, testability, and maintainability.
Review

[LOW] Security

The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled.

Recommendation: Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.

**[LOW] Security** The workflow uses environment variables for multiple API keys and tokens, which is good practice. However, the inline shell script uses unescaped user input (comment body) when constructing JSON, which could potentially cause injection issues if not properly handled. **Recommendation:** Ensure that the comment body is properly escaped and sanitized before being passed to the Python scripts. Using jq -Rs . is a good step, but verify that downstream Python code safely handles this input.
Review

[LOW] Readability

The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops.

Recommendation: Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.

**[LOW] Readability** The workflow uses a hardcoded bot username 'Bartender' in multiple places to prevent infinite loops. **Recommendation:** Consider defining the bot username as a reusable variable or secret to avoid duplication and ease future changes.
+35 -27
View File
@@ -1,36 +1,44 @@
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
name: AI Issue Triage
# WORKFLOW ROUTING:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
# This workflow handles ONLY the 'triage' command
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
# Other workflows: ai-comment-reply.yml (specific commands), ai-chat.yml (free-form questions)
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
on:
issues:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
types: [opened, labeled]
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
issue_comment:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
types: [created]
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
jobs:
ai-triage:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
runs-on: ubuntu-latest
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
steps:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
- uses: actions/checkout@v4
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
ai-triage:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
runs-on: ubuntu-latest
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
# Only run if comment contains @codebot triage
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
# CRITICAL: Ignore bot's own comments to prevent infinite loops (bot username: Bartender)
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
if: |
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
github.event.comment.user.login != 'Bartender' &&
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
contains(github.event.comment.body, '@codebot triage')
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
steps:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
- uses: actions/checkout@v4
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
- uses: actions/checkout@v4
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
with:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
repository: Hiddenden/openrabbit
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
path: .ai-review
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
token: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
- uses: actions/checkout@v4
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
with:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
repository: Hiddenden/openrabbit
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
path: .ai-review
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
token: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
- uses: actions/setup-python@v5
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
with:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
python-version: "3.11"
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
- uses: actions/setup-python@v5
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
with:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
python-version: "3.11"
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
- run: pip install requests pyyaml
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
- run: pip install requests pyyaml
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
- name: Run AI Issue Triage
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
env:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
AI_REVIEW_TOKEN: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
AI_REVIEW_REPO: ${{ gitea.repository }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
AI_REVIEW_API_URL: https://git.hiddenden.cafe/api/v1
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
OLLAMA_HOST: ${{ secrets.OLLAMA_HOST }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
run: |
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
cd .ai-review/tools/ai-review
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
python main.py issue ${{ gitea.repository }} ${{ gitea.event.issue.number }} \
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
--title "${{ gitea.event.issue.title }}"
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
- name: Run AI Issue Triage
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
env:
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
AI_REVIEW_TOKEN: ${{ secrets.AI_REVIEW_TOKEN }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
AI_REVIEW_REPO: ${{ gitea.repository }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
AI_REVIEW_API_URL: https://git.hiddenden.cafe/api/v1
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
OLLAMA_HOST: ${{ secrets.OLLAMA_HOST }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
run: |
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
cd .ai-review/tools/ai-review
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
python main.py issue ${{ gitea.repository }} ${{ gitea.event.issue.number }}
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.
Review

[LOW] Correctness

The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs.

Recommendation: Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.

**[LOW] Correctness** The ai-issue-triage workflow was changed from triggering on 'issues' events (opened, labeled) to 'issue_comment' events with a filter on '@codebot triage' command. This is a behavior change that may affect when triage runs. **Recommendation:** Confirm that this change is intentional and that triage should only run on comments with the triage command, not on issue open or label events. Update documentation accordingly.