-
Notifications
You must be signed in to change notification settings - Fork 1
Add hgrp.pm/ProjectStatus.json, Windsurf and Cline rules #2
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
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello @dholzric, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
Summary of Changes
This pull request introduces a new Cline rule and a ProjectStatus.json file to automate project status updates. The rule triggers when the ProjectStatus.json file is changed, calculates the overall project completion percentage using a script, and commits/pushes the updated file. The ProjectStatus.json file provides a basic structure for tracking project tasks and their completion status.
Highlights
- New Cline Rule: Adds a Cline rule (
update-project-status-on-task-change.yaml) to automate project status updates based on changes tohgrp.pm/ProjectStatus.json. - Project Status Tracking: Introduces
hgrp.pm/ProjectStatus.jsonto track project tasks, their status, and overall project completion percentage. - Automated Updates: The Cline rule automatically calculates and updates the
overall_percent_donefield inProjectStatus.jsonwhen task statuses change.
Changelog
- .cline/rules/update-project-status-on-task-change.yaml
- Creates a new Cline rule to trigger on changes to
hgrp.pm/ProjectStatus.json(lines 1-5). - Configures a job to run locally (lines 8-9).
- Defines steps to calculate the overall project completion percentage using
scripts/updateProjectStatus.js(lines 11-12). - Includes steps to commit and push the updated
ProjectStatus.jsonfile (lines 13-19).
- Creates a new Cline rule to trigger on changes to
- hgrp.pm/ProjectStatus.json
- Creates a JSON file to store project information (lines 1-3).
- Defines the structure for tracking individual tasks, including their ID, title, status, and completion percentage (lines 4-22).
- Includes a field for storing the overall project completion percentage (lines 23-24).
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.
| Feature | Command | Description |
|---|---|---|
| Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
| Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
| Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
| Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
A JSON file's born,
Cline rules now keep it warm,
Status tracked with glee,
Automation's decree,
Progress blooms this morn.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
The pull request introduces automation for updating project status based on changes to the ProjectStatus.json file. The changes are straightforward, but there are a few areas that could be improved to enhance robustness and flexibility.
Summary of Findings
- Missing Error Handling: The script
scripts/updateProjectStatus.jsis executed without any error handling. If this script fails, the workflow will continue, potentially leading to incorrect project status updates. Consider adding error handling to ensure the workflow stops if the script fails. - Hardcoded Email and User: The
git configcommands use hardcoded email and user names. While this might be acceptable for a bot, it's generally better to use environment variables or a configuration file to manage these settings. This makes the configuration more flexible and easier to update. - Incomplete Automation: The automation only updates the
ProjectStatus.jsonfile. It does not handle the initial creation of the file or the addition of new tasks. Consider expanding the automation to handle these scenarios.
Merge Readiness
The pull request introduces basic automation, but it has some potential issues that should be addressed before merging. Specifically, the lack of error handling in the script execution and the hardcoded user/email configuration are concerning. I am unable to approve this pull request, and recommend that it not be merged until these issues are addressed.
Automated PR to add status tracking and automation rules.