Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] [VDP] [Pipelines] Workflow automation-Code Review Assistance #1025

Closed
1 task done
YCK1130 opened this issue Jun 25, 2024 · 2 comments
Closed
1 task done

Comments

@YCK1130
Copy link

YCK1130 commented Jun 25, 2024

Is There an Existing Issue for This?

  • I have searched the existing issues

Where do you intend to apply this feature?

Instill Core, Instill Cloud

Is your Proposal Related to a Problem?

This is a sub-issue of #1022

User story

As an Engineering Manager

He/She wants a code review assistance tool that leverages Large Language Models (LLM) and other security tools

So that he/she can receive concise reports about file changes, identify important bugs or vulnerabilities quickly, and streamline the review process.

Background:

Engineering managers often face the challenge of reading through a large volume of file changes during code reviews. This can lead to frustration and the risk of missing critical bugs or security vulnerabilities. An efficient tool that uses advanced technologies to summarize changes and highlight key issues can significantly improve the review process.

Describe Your Proposed Solution

Basic Features:

  1. Concise Summarization:

    • The tool should utilize LLMs to generate concise and comprehensive summaries of file changes.
    • These summaries should highlight the most important changes, potential bugs, and security vulnerabilities.
  2. Automated Report Generation:

    • Automatically generate detailed reports based on the LLM’s analysis of the code changes.
    • Reports should be easy to understand and provide actionable insights.

Advanced Features:

  1. Developer Interaction:

    • Allow developers to respond to the automatically generated reports.
    • Developers can address concerns, provide explanations, or make necessary changes based on the feedback from the report.
  2. Streamlined Review Process:

    • Reduce the time spent on the review process by providing managers with a rough figure about the meaning and impact of code changes.
    • Enable quicker decision-making by presenting the most relevant information upfront.
  3. Security Integration:

    • Incorporate other security tools to ensure that potential vulnerabilities are flagged and addressed.
    • Ensure that the tool is continuously updated with the latest security protocols and bug detection algorithms.

Highlight the Benefits

Benefits:

  • Efficiency: The tool saves time for engineering managers by summarizing large volumes of file changes.
  • Accuracy: Reduces the risk of missing important bugs or vulnerabilities.
  • Responsiveness: Facilitates quicker responses from developers, leading to faster iterations and improvements.
  • Security: Enhances the overall security of the codebase by integrating advanced security tools.

Anything Else?

Scenario:

  1. Initial Review:

    • An engineering manager receives a notification about a new set of file changes.
    • The manager opens the tool and views a concise report generated by the LLM.
  2. Report Analysis:

    • The report highlights several key changes, potential bugs, and a security vulnerability.
    • The manager quickly understands the overall impact of the changes and identifies areas of concern.
  3. Developer Response:

    • The report is shared with the developers.
    • Developers review the report, provide explanations for the changes, and make necessary adjustments to address the identified issues.
  4. Final Review:

    • The manager reviews the updated report and confirms that all concerns have been addressed.
    • The code is approved, and the review process is completed efficiently.
Copy link

linear bot commented Jun 25, 2024

donch1989 pushed a commit to instill-ai/component that referenced this issue Jul 11, 2024
# Because

- We need a GitHub component to complete some development automation
tasks

# This commit

## Related Issue
instill-ai/instill-core#1025

## Todo
- [X] TASK_GET_ALL_PULL_REQUESTS: function to get all prs given owner
name and repository name.
- [X] TASK_GET_PULL_REQUEST: function to get a specific pr given owner
name, repository name, and pr number. (including file changes)
- [X] TASK_GET_REVIEW_COMMENT: get review comment inside a pull request
- [X] TASK_CREATE_REVIEW_COMMENT: create review comment inside a pull
request
- [X] TASK_GET_COMMIT: get commit messages and file changes
- [x] TASK_CREATE_ISSUE: post issue
- [x] TASK_GET_ALL_ISSUES: get all issues in a repo
- [x] TASK_GET_ISSUE: get an issue
- [x] TASK_CREATE_WEBHOOK: register webhook,
https://docs.github.com/en/webhooks/webhook-events-and-payloads
AmeliaCelline pushed a commit to AmeliaCelline/fork-component that referenced this issue Jul 15, 2024
- We need a GitHub component to complete some development automation
tasks

instill-ai/instill-core#1025

- [X] TASK_GET_ALL_PULL_REQUESTS: function to get all prs given owner
name and repository name.
- [X] TASK_GET_PULL_REQUEST: function to get a specific pr given owner
name, repository name, and pr number. (including file changes)
- [X] TASK_GET_REVIEW_COMMENT: get review comment inside a pull request
- [X] TASK_CREATE_REVIEW_COMMENT: create review comment inside a pull
request
- [X] TASK_GET_COMMIT: get commit messages and file changes
- [x] TASK_CREATE_ISSUE: post issue
- [x] TASK_GET_ALL_ISSUES: get all issues in a repo
- [x] TASK_GET_ISSUE: get an issue
- [x] TASK_CREATE_WEBHOOK: register webhook,
https://docs.github.com/en/webhooks/webhook-events-and-payloads
@chuang8511
Copy link
Member

I closed this because it has been done by GitHub component

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants