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 Request]: Reopen an issue if it corresponds to unresolved TODOs in the codebase. #19755

Open
seanlip opened this issue Mar 28, 2023 · 4 comments
Assignees
Labels
enhancement Label to indicate an issue is a feature/improvement Impact: High Blocks or significantly slows down a core workflow. Work: Medium The means to find the solution is clear, but it isn't at good-first-issue level yet.

Comments

@seanlip
Copy link
Member

seanlip commented Mar 28, 2023

Is your feature request related to a problem? Please describe.

The Oppia Android repo has a nice feature where GitHub Actions reopens an issue if there are unresolved TODOs left in the codebase, e.g. oppia/oppia-android#3016 (comment)

We should do this for Oppia Web as well, but I would suggest additionally having this as a check that runs on PRs that claim to fix an issue.

Describe the solution you'd like
When a PR gets linked to an issue on GitHub (e.g. through "Fix #XXX" in the title/description), a GitHub Actions workflow should do a scan to see whether there are any remaining unhandled TODOs left in the codebase, and leave a comment on the PR if there are.

When an issue is closed, the workflow should scan the codebase for TODOs corresponding to that issue, and reopen the issue if such TODOs are found (mentioning where these TODOs are in the code).

Describe alternatives you've considered
N/A

Additional context
We can probably just repurpose what's already written for Oppia Android.

Note: See also oppia/oppia-android#4930 which suggests a better system than Oppia Android's status quo for handling this (i.e. triggering the TodoCheck workflow on PR creation). See also oppia/oppia-android#5315 which tries to make it locally runnable.

@U8NWXD U8NWXD added the enhancement Label to indicate an issue is a feature/improvement label Mar 28, 2023
@gp201 gp201 added Impact: High Blocks or significantly slows down a core workflow. Work: Medium The means to find the solution is clear, but it isn't at good-first-issue level yet. labels Apr 3, 2023
@BenHenning
Copy link
Member

FYI: Oppia Android doesn't actually use Oppiabot for this functionality, it just reopens issues using the gh CLI tool via a GitHub Actions workflow: https://github.com/oppia/oppia-android/blob/4a14b415a4fba74a415e9fa4427d37a585a55569/.github/workflows/issue_checks.yml#L35.

@vojtechjelinek
Copy link
Member

@seanlip This is more complicated than expected as the GH Action workflow that Ben suggests uses Bazel script which would need to be rewritten to Python in order to be used in our web repo. I think this would take 1 or 2 persondays to implement.

@vojtechjelinek vojtechjelinek removed their assignment Jul 28, 2023
@jnvtnguyen
Copy link
Contributor

@seanlip This should be made using github workflows and not oppiabot right?

@seanlip
Copy link
Member Author

seanlip commented Feb 15, 2024

Yup, github workflows. Thanks! (I updated the description and am transferring this to oppia/oppia.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Label to indicate an issue is a feature/improvement Impact: High Blocks or significantly slows down a core workflow. Work: Medium The means to find the solution is clear, but it isn't at good-first-issue level yet.
Projects
Status: Todo
6 participants